JavaGenes: Evolving Graphs Al Globus, Veridian MRJ Technology Solutions, Inc. [email protected] http://www.nas.nasa.gov/~globus/home.html John Lawton, UCSC Todd Wipke, UCSC Sean Atsatt, Sierra Imaging,Inc.
Download ReportTranscript JavaGenes: Evolving Graphs Al Globus, Veridian MRJ Technology Solutions, Inc. [email protected] http://www.nas.nasa.gov/~globus/home.html John Lawton, UCSC Todd Wipke, UCSC Sean Atsatt, Sierra Imaging,Inc.
JavaGenes: Evolving Graphs Al Globus, Veridian MRJ Technology Solutions, Inc. [email protected] http://www.nas.nasa.gov/~globus/home.html John Lawton, UCSC Todd Wipke, UCSC Sean Atsatt, Sierra Imaging,Inc. Crossover Strings abcd wxyz abcd wxyz abyz wxcd Trees Graphs Graph Crossover Rip Two Parents Apart Combine into a Child Molecule Fitness Function All-pairs-shortest-path (APSP) distance • Assign extended types to each atom = (element, |single bonds|, |double bonds|, |triple bonds|) • Find shortest bond path between each pair of atoms • Create bag with one item per pair of atoms – item = (type1, type2, path length) – bag = set with repeated items • Tanimoto distance = |intersection| / |union| Evolving Molecules size median shortest failures(%) benzene purine 100 100 3 51 0 6 0 0 N N N N cubane 100 30 4 0 O N diazepam 200 NA 453 71 N Cl cholesterol 200 NA 1414 74 O O O morphine 200 NA 9769 97 O N Circuits Directed graphs More node types (and, nand, or, nor, xor, nxor, plus initial 0 or 1 for each type) Exactly one input and one output node per graph Crossover generates unconnected circuits on very rare occasion Fitness function: number of right answers on 100 randomly generated inputs • Serial logic (one bit input and output at each step) • Logic simulator assumes all devices require unit time Circuits name size median shortest delay 600 18 6 13 parity 600 21 0 6 NA NA 100 add 200 failures(%) Conclusions Evolving graphs using genetic operators is possible Molecules and circuits have been evolved Molecular evolution is reasonably successful Non-trivial circuits have yet to be evolved This is a new technique that will require substantial refinement • open source in the near future Where self-assembly problems can be cast as graphs JavaGenes may be of some utility