A Genetic Algorithm for Designing Materials

A Genetic Algorithm for
Designing Materials:
Gene A. Tagliarini
Edward W. Page
M. Rene Surgi
The Problem:
• Design materials
having desirable
physical properties
• Limit the number of
materials assessed in
the laboratory
Key Technologies:
• Group additivity models from
computational chemistry
– Reid, Prausnitz, Poling
– Joback
• Genetic algorithms
– Holland, Goldberg, DeJong, Davis
– Adelsberger
What is a Genetic Algorithm?
• A genetic algorithm is
a search method that
functions analogously
to an evolutionary
process in a biological
system.
• They are often used to
find solutions to
optimization problems
Sample Applications:
•
•
•
•
•
•
Scheduling
Resource allocation
VLSI module placement
Machine learning
Signal processing filter design
Rocket nozzle design
Advantages of Genetic
Algorithms
• Do not require strong mathematical
properties of the objective function
• Solutions--of varying quality--are always
available
• Independent operations are amenable to
parallel implementation
• Uncomplicated and therefore, robust
Components of a Genetic
Algorithm:
• A representation for possible solutions
– Chromosomes, genes, and population
– Fitness function
• Operators
– “Artificial” selection
– Crossover and recombination
– Mutation
Genetic Algorithm Pseudo-code:
• Randomly create a population of solutions
• Until a satisfactory solution emerges or the
“end of time”
–
–
–
–
Using the fitness measures, select (two) parents
Generate offspring
Mutate
Update the population
Example 1: Maximizing an
Unsigned Binary Value
Population
0
1
1
0
0
0
1
1
1
0
0
0
1
1
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
1
1
0
Example 1 (Continued):
A Fitness Function
Individual
0
1
1
0
0
7
0
Fitness   d i * 2
i 0
1
i
1
Fitness Measure
99
Example 1 (Continued): Measure
the Fitness of Each Individual
Population
Fitness Measure
0
1
1
0
0
0
1
1
99
1
0
0
0
1
1
0
0
140
1
0
1
0
1
0
0
1
169
0
0
0
0
0
1
1
0
6
Example 1 (Continued):
“Artificial” Selection
Population
Fitness Measure
0
1
1
0
0
0
1
1
99
1
0
0
0
1
1
0
0
140
• A random process
• Favors “fit” individuals
• Some individuals may be totally overlooked
Example 1 (Continued):
Crossover and Recombination
Parent 1; Fitness = 140
1
0
0
0
1
1
1
0
0
1
Parent 2; Fitness = 99
0
0
0
0
1
0
1
1
Offspring; Fitness = 163
0
1
0
0
1
1
Example 1 (Continued):
Mutation
Fitness = 163
1
0
1
0
0
0
1
1
1
0
1
1
0
0
1
0
Fitness after mutation = 178
Example 2: Traveling
Salesperson Problem
A
B
C
D
E
G
F
H
Example 2 (Continued):
Traveling Salesperson Problem
A
B
C
D
E
G
F
H
Example 2 (Continued):
Traveling Salesperson Problem
Population
A
G
C
D
B
D
H
C
C
A
B
H
F
H
F
E
H
E
A
G
G
C
G
B
E
F
D
F
D
A
B
C
B
E
A
E
D
G
F
H
Example 2 (Continued): Order
Sensitive Crossover #1
Parent 1
A
B
C
F
Parent 2
H
G
E
D
A
B
C
F
G
G
D
D
A
H
H
E
E
C
F
Offspring
B
Example 2 (Continued): Order
Sensitive Crossover #2
Parent 1
Parent 2
A
B
C
F
H
G
E
D
C
H
B
D
E
A
F
G
A
B
B
D
E
A
E
D
C
H
C
F
H
G
F
G
G
C
B
D
E
A
H
F
B
E
C
F
H
G
D
A
Example 2 (Continued): Order
Sensitive Crossover #2
Parent 1
Parent 2
A
B
C
F
H
G
E
D
G
D
A
H
E
C
F
B
A
B
A
H
E
C
E
D
G
D
C
F
H
G
F
B
C
B
A
F
E
G
H
D
C
D
A
F
E
G
H
B
Example 3: Designing Materials
• Individual chemicals
and chemical
fragments contribute
to the properties of a
molecule
• Propose fragments
likely to produce
molecules having
desirable properties
Example 3 (Continued):
Property Parameters
Tc  Tb (0.584  0.965 qi  i Tc  (  qi  i Tc ) 2 ) 1
i
i
Pc  (0.113  0.0032n A   qi  i Pc ) 2
Vc  17.5   qi  iVc
i
T f  122   qi  i T f
i
Tb  198   qi  i Tb
i
i
Example 3 (Continued):
Fitness Function
S   ( D p  J p ) 2  penalty
p
• Dp is the desired property value
• Jp is the predicted property value
• p  {Tc, Pc, Vc, Tb, Tf }
Example 3 (Continued): Joback
Group Additivity Constants
T c
-CH3 0.0141
-CH2- 0.0189
-CH< 0.0164
>C< 0.0067
=CH2 0.0113
...
...
Pc
-0.001
0.0000
0.0020
0.0043
-0.003
...
V c
65
56
41
27
56
...
Tb
Tf
23.58 -5.10
22.88 11.27
21.74 12.64
18.25 46.43
18.18 -4.32
...
...
-CH2-
-CH<
>C<
=CH2
=CH-
=C<
=C=
CH
C-
-F
-Cl
-Br
-I
Individual
-CH3
Example 3 (Continued):
Representation of Solutions
3
1
0
2
1
1
2
2
1
1
0
1
1
1
CH3 CH3
CH3
CH2
C
C
CH
C
CH2 CH
Cl
C
Br
C
C
C
I
Example 3 (Continued): Sample
Results
CH3
F
F
C
CH
F
F
F
F
C
F
CH
C
F
Maximum error of 2.36%
Maximum error of 3.65%
was in Tc
was in Tf
F
Conclusions
• Genetic algorithms provide a robust tool for
finding solutions to search and optimization
problems.
• Genetic algorithms can be used to propose
materials with specific properties.
• The quality of the underlying model
strongly influences the outcome of genetic
algorithm searches
Related and Ongoing Work
• Resource allocations in the weapon-totarget assignment problem
• Design wavelets and “super-wavelets” to
highlight salient signatory features in sonar
signals as well as SAR and thermal
imagery.