fiddled filter design

I don't think any evolutionary scientist would disagree with that.

Cheers

--
Clive
Reply to
Clive Arthur
Loading thread data ...

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

Reply to
bitrex

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
Reply to
Carl

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.

Reply to
bitrex

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!
Reply to
Tom Gardner

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.

Reply to
bitrex

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

Reply to
bitrex

Meant to say "the fact they can work well", rather

Reply to
bitrex

Most organisms *do* go extinct; very few survive.

Reply to
Tom Gardner

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:

formatting link

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

Reply to
<698839253X6D445TD

On a sunny day (Fri, 9 Nov 2018 17:19:39 +0000) it happened Clive Arthur wrote in :

I found this interesting:

formatting link

Reply to
<698839253X6D445TD

"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: *

formatting link
* * Bugs: * converted from Fortran, and no attempt has been made of hiding the fact * the user interface is pretty dismal, the error handling horrible, but * at least you should get your moneys worth */ Should be on the web somewhere,

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

Reply to
Jan Panteltje

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. <

formatting link
>

cheers, Gerhard

Reply to
Gerhard Hoffmann

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
Reply to
Phil Hobbs

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
Reply to
Phil Hobbs

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
Reply to
Phil Hobbs

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

Reply to
Gerhard Hoffmann

Now you're thinking like a high-end audio designer! That's the spirit!

Reply to
bitrex

I worked in sales prior to working in engineering. "Sales prevention" is a frowned-upon activity!

Reply to
bitrex

I was just going to ask where I might read about them. Google got me nowhere. Any suggestions?

NT

Reply to
tabbypurr

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.