Re: design of analog circuits using genetic algorithm



On Thu, 13 Mar 2008 10:45:06 -0500, Phil Hobbs
<pcdhSpamMeSenseless@xxxxxxxxxx> wrote:

Martin Brown wrote:
In message <04tdt3196l9ufhhuapfkum7dl6r0mdb4dq@xxxxxxx>, John Larkin
<jjlarkin@highNOTlan
dTHIStechnologyPART.com> writes
On Tue, 11 Mar 2008 12:05:24 -0700, "Joel Koltner"
<zapwireDASHgroups@xxxxxxxxx> wrote:

"John Larkin" <jjlarkin@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:0cldt3hl9rrp0llh7hp7l79lk58jibvna9@xxxxxxxxxx
People, mostly academics, keep trying this. As far as I know, it
doesn't work. Understanding electronics is still better than random
fiddling; the solution spaces, first for a topology and then for
values, is just too big.
I believe you were the one telling us you're personally much more than just a
giant genetic algorithm yourself though, right, John? :-)
Somehow a few trillion neurons work better than a few thousand lines
of code. Maybe some day computers will be better than people for
circuit design, like they are now for chess. But chess has rules.

And so does circuit design. Although the intuitive creative step to
define the overall circuit architecture is still well
beyond modern computation power optimising component values in an
existing design is now quite
practicable even on a PC given enough time.
I agree with you, although I will point out for the benefit of the O.P. that
using optimizers (genetic algorithms or more traditional ones) to *tweak*
component values once you have a decent toplogy and reasonably sane starting
values is quite common and successful.
Have you done genetic optimization of circuit values? I guess you'd
first have to come up with a scoring system that defines "best" (like,
for a voltage regulator, something that includes line reg, load reg,
tc, transient response, standard value parts, cost? Then wrap around
that a simulator, then wrap around that the random value diddler and
genetic selection stuff. I can see that diverging fast. Or rather,
diverging slow. It's easy to get lost in a 17-dimensional space.

17 dimensions is no real challenge to modern optimisers.

No modern least squares (or 1-Norm) optimiser should ever diverge (and
that was true of the good ones even a couple of decades ago). What
tends to happen is that they get trapped in steep diagonal valleys or
at local minima and never find the true global optimum. The solution
should never be worse than the initial guess.

Simplex isn't too bad if you already have some idea of how big a range
of parameter space you have to cover. Conjugate gradients will handle
the most difficult problems fairly well given a suitable starting
point and something like simulated annealing is about as good as it
gets for global optimisation irrespective of the initial starting
point. Genetic algorithms are similar to the latter, but rely on an
ensemble of simulations with parameters that are allowed to breed
according to their success rating. They are harder to make work than
simulated annealing codes though fun to watch on toy problems. I
reckon simulated annealing is easier to use than GA. YMMV.
Even intelligent diddling and simulation, for something simple like a
filter, can easily become a horror.

It should not be if you know how the free parameters are inter
related. Filter design is one case where diddling individual
parameters in a naive 1-D optimal search strategy will almost never
get you what you want. There are specialised codes around for optimal
filter design.
I sometines do brute-force numerical searches for things like crystal
frequencies and divisors that satisfy some number of requirements.
That's not so much genetic as just trying a bazillion possible values
in some nested FOR loops.

There is probably a faster way to do that but if it is fast enough
then fine.

Regards,
--
Martin Brown

*Seventeen dimensions* is no problem? Riiight. That is, assuming you're
doing a linear or nearly linear optimization, or you start with a decent
guess. For more general problems with lots of 15-dimensional flat spots and
local minima, you could be there for awhile, even with an exaflop machine.

Cheers,

Phil Hobbs

We make one VME board that has 1100 parts, including two FPGAs and a
uP running a few thousand lines of code. Machine-optimize that!

But "start with a decent guess" is 99.99999% of the problem in
electronic design.

John

.



Relevant Pages

  • Re: design of analog circuits using genetic algorithm
    ... And so does circuit design. ... beyond modern computation power optimising component values in an ... using optimizers (genetic algorithms or more traditional ones) to *tweak* ... simulated annealing codes though fun to watch on toy problems. ...
    (sci.electronics.design)
  • Re: design of analog circuits using genetic algorithm
    ... using optimizers (genetic algorithms or more traditional ones) to *tweak* ... simulated annealing codes though fun to watch on toy problems. ... Filter design is one case where diddling individual ... doing a linear or nearly linear optimization, or you start with a decent guess. ...
    (sci.electronics.design)
  • Re: Adaptive learning CPU
    ... under section 12 "Applications" there is this little baby ... Automated design, including research on composite material design ... Learning fuzzy rule base using genetic algorithms. ... Mobile communications infrastructure optimization. ...
    (talk.origins)
  • Re: My take on ARC
    ... > One of the premises of ARC's design is that speed doesn't matter because ... > doesn't matter if you're not doing production work. ... programmer or operator productivity. ... other hand has had very little optimization over the years. ...
    (comp.lang.lisp)
  • Re: Evolution Stinks, or... The Nose KNOWS!
    ... Engineers have used genetic algorithms that have designed ... than deliberate design. ... but may be trapped there and thus have problems reaching global maxima. ... populations off local optima. ...
    (talk.origins)