I don't think any evolutionary scientist would disagree with that.
Cheers
I don't think any evolutionary scientist would disagree with that.
Cheers
-- Clive
I'm perfectly fine with some "why things are" questions remaining unanswerable by science, either for just the near future or for always. It will likely always be so
Back in the early 80's when FT's were slow and expensive I spent some time trying out different digital filters for targeted analysis on FT infrared and FT mass spectrometers coupled to gas chromatography so the data sets were pretty large for the time 2D arrays to see if I could get anything useful. There is a book, Programs for Digital Signal Processing, put out by the IEEE in the late 70's that had some programs for filter design that I tried. These are all in Fortran, or course, but I think there was a later version in C or you could use f2c. Anyway, one program used something called the Remez exchange algorithm that let you specify arbitrary pass and stop bands with arbitrary gain in each band, and then it would do a trial and error search to find the optimum FIR coefficients to best match the target. It sounds an awful lot like John's "fiddling", so maybe take a look at it and see if it could be the foundation for a program to do your constrained fiddling.
-- Regards, Carl Ijames
They're also not the only biologically-inspired optimization game in town, there are many types of biologically-inspired algorithms, some which perform better looking at the global space and others which are better at refinement.
No law anywhere that says you can't employ a hybrid strategy using something like a stochastic/Monte Carlo simulation to find the likely domain of a local optimum and then use an evolutionary algorithm to hone in on it.
Random variation is a /sufficient/ mechanism. Postulating more runs against Occam's Razor.
Now there may be alternative mechanisms, but it is necessary to define them and then to show that they do explain something that random mutation can't.
Ah. Magic. Or something that is (currently) indistinguishable from magic.
Why not claim that Maxwell's daemons are responsible for electronic circuit's behaviour :)
Ah yes, Lamarckian inheritance.
It currently looks like the plain-vanilla genetic inheritance mechanisms are too simplistic. I'll mention epigenetics, without really understanding it.
However none of the "new mechanisms" require the addition of greybeards, FSMs[1], or things that have made Fritjof Capra (in)famous.
[1] No, not finite state machines!
A "nature inspired" algorithm I'd love to try to see if it's suitable for that type of filter design problem is the flocking/swarm algorithm:
Not sure if that's been done before.
Of course. The thrust of my original post was that the fact toy models of natural selection operating to design a filter is one of those things that might sometimes lead a former "evolution-skeptic" to believe similar techniques could be deployed to "engineer" the perfect human. Which is nonsense
Meant to say "the fact they can work well", rather
Most organisms *do* go extinct; very few survive.
On a sunny day (Fri, 09 Nov 2018 09:19:34 -0800) it happened John Larkin wrote in :
If it is one phase, and < 80 VA, stick a raspberry in your box, make it autostart sgen sending the 400 Hz to an amp like this:
I have this amp now for ? well you see how old the monitor is... enough for your 30 VA. Then you can have it play music too, connect to the internet shh to it, remote service it, send software updates, etc etc.
Box can be very small, how much bigger depends on the step up transformer. A raspberry pi (board) takes very little space, has stereo out, and uses hardly any power. You do get about a minute of so boot-up time. Oh and it has HDMI out and WiFi too these days.
sgen sgen Ver. 2.3.10 (May 2008) Digital Signal Generator Usage: 1: sgen [flags] waveform freq waveform is sine cosine square triangle sawtooth pulse noise off 2: sgen [flags] sin|cos freq [phase] sin/cos has extra phase param (def. is 0 degrees) 3: sgen [flags] pulse freq [Mark/Space] pulse has extra param Mark/Space % - def. is 10 (%) Defaults: output continuously to /dev/dsp, 22050 samples/sec, mono, 16 bit samples if possible, else 8 bit. Default Config files are ".siggen.conf", "$(HOME)/.siggen.conf" and "/etc/siggen.conf", searched in that order. flags: -f,-a force overwrite/append of/to file -o file write digital sample to file ('-' is stdout) -w file as '-o' but written as a wave file -C file use file as local configuration file -s samples generate with samplerate of samples/sec -v be verbose. -8/-16 or -b 8|16 force 8 bit or 16 bit mode. -1,-2a mono (def) or stereo in antiphase -A n scale samples by n/100, def. n is 100 -t N|Nm play for N secs or Nm millisecs -x10|-x100 scale freqs down by factor of 10/100 allows freqs to 0.1/0.01 of a hertz. ~ # sgen -s 48000 sine 400
On a sunny day (Fri, 9 Nov 2018 17:19:39 +0000) it happened Clive Arthur wrote in :
I found this interesting:
"Carl" wrote
There is Remez for Linux in C, I have it, thse source, it says: /* TAB P VER 068 $Id: remez.c,v 1.3 1998/06/15 09:04:37 egil Exp $ * * Remez exchange algorithm * * the core of this program is converted from * an original Fortran source. see below for details. * * adaption for the PC and addition of FFT by: * egil kvaleberg * husebybakken 14a * 0379 oslo, norway * Email: * snipped-for-privacy@kvaleberg.no * Web: *
OTOH you could use 'sox' it has some nice filtering and many other audio options. Example of a whole lot of very narrow band-stop filters in the audio range in series to remove specific tones from the audio spectrum, and record the result as mp3:
rtl_fm -d $device_nr -F 9 -M fm -f 430125000 -p $correction -s 44.1k -r 44.1k -l $squelch | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc 250-4k | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 40 1020-980 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 1290-1220 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 1500-1400 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 1680-1620 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 1880-1820 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 2080-2020 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 2280-2220 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 2480-2420 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 2680-2620 | \ sox -t raw -r 44.1k -e signed-integer -b 16 -c 1 - -t raw - sinc -t 60 2880-2820 | \ /root/compile/pantel/xpequ/xpequ -i - -z 44100 -c 1 -b 16 -o - -s | \ lame -r -s 44.1 --bitwidth 16 -m m - - | \ tee -a /mnt/sda1/test.mp3 | \ mpg123 -
Audio processing is so simple in Linux. The first sox line is a bandpass 250 Hz to 4000 Hz, the second sox line is a band-reject 980 to 1020 Hz, etc, those all have 60 dB rejection, sync filters.
man sox
Am 09.11.18 um 19:07 schrieb Jan Panteltje:
IIRC, the original published Fortran version had a bug in the dimensions of an array. (too small)
I corrected that when I compiled it on our VAX. Sources are long lost, but others should have found that also.
I used the coefficients for my first FIR filter. <
cheers, Gerhard
Tuning LC ladder filters isn't hard if you know the trick, which is to get the right number of bumps spread out over the right bandwidth, and then adjust for flatness and good skirts. You want to measure the return loss for passband shape and the insertion loss for the skirts.
The fatal flaw is to tweak it up nicely at a bit too narrow a bandwidth. If you do that, start over. The true solution probably isn't even nearby.
Cheers
Phil Hobbs
-- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com
I have that book, and have used several of the routines. There's a matching one with collected papers. IIRC the optimal FIR filter program is by Parks & McClellan--it's a good one.
Cheers
Phil Hobbs
-- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com
I wrote something like that for my big-iron 3D EM simulator, for designing waveguide-coupled nanoantennas with a plasmonic travelling-wave region. It can optimize any parameter the simulator knows about: shapes, materials, simulation geometry, illumination, ....
I wouldn't have been able to get technologically-interesting quantum efficiency without it.
It's not a genetic algorithm, just good old Nelder-Mead downhill simplex (Numerical Recipes calls theirs 'amoeba').
Cheers
Phil Hobbs
-- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com
Am 09.11.18 um 19:36 schrieb Phil Hobbs:
The trick is to tell Eagleware/Agilent/Keysight Genesys what you want and let it run. You can tune the filters also in real time in the computer or ask the optimizer for kinky shapes.
cheers, Gerhard
Now you're thinking like a high-end audio designer! That's the spirit!
I worked in sales prior to working in engineering. "Sales prevention" is a frowned-upon activity!
I was just going to ask where I might read about them. Google got me nowhere. Any suggestions?
NT
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.