Genetic Algorithm for Parameter Optimization Skyler Weaver Objective: to implement a Genetic Algorithm into myspice to allow parameter optimization of multiple parameters and multiple goal specifications.
Introduction Optimization allows you to set circuit outputs and solve for parameters Circuit outputs are “goals” Many optimization routines require a good initial guess –Many local minima –Slow gradient F(x1,x2,x3,…) Genetic Algorithm doesn’t have this problem!!!
Choose variables Create population of randomized parameters Determine fitness of individuals and rank them Solution? “mate” fittest individuals to create new population Mutate new population Solution found The concept
The approach Bit array represents “DNA” : RRRR CCCC LLLL FFMF MFMF FMMM } crossover } mutation Get values for R, C, L and run simulation father mother
Does it work? Successful sexual crossover Positive mutation occurred Vdd supply Vsig in div 0 1 R1 supply div ~ R2 div 0 ~ R3 in out ~ L1 supply out ~ 1e-6 1e-3 C1 out 0 ~ 1e-12 1e-9 ~ DC div 0.5 ~ DC Vdd ~ AC out 0.5 1e6 ~ AC out 0.4 2e6 DC Goals: dc[3] = ( ) 100.0% dc[5] = ( ) 100.0% AC Goals: ac[4] = Hz ac[4] = Hz R1 supply div R2 div R3 in out Vdd supply Vsig in div C1 out pF L1 supply out uH