Transcript Slide 1

GA/ICA Workshop
Carla Benatti
3/15/2012
C. Benatti, 3/15/2012, Slide 1
Proposed Thesis Project
• Tuning a Beam Line
LB source,
L-line at ReA3
– Model/design of system provides
nominal values for tune
– Operators adjust each element
individually to optimize tune
– Slow process, room for improvement
• Tuning Algorithm and Optimizer
– Develop new, fast, tuning algorithm
– Using neural networks, genetic
algorithms possibly
– Model Independent Analysis
COSY Envelope tracking calculation
• Benchmark code at ReA3
– Design experiment to test optimizer
– Compare results with tuning “by hand”
– User friendly application, possibly GUI
LB004
LB006
L051
L054
L057
L061
C. Benatti, 3/15/2012, Slide 2
Artificial Neural Network (ANN)
•
Neural Network Summary
–
–
–
–
–
•
Attempts to simulate the functionality of
the brain in a mathematical model
Ideal for modeling complex relationships
between inputs and outputs as a “black
box” solver
Ability to learn, discern patterns, model
nonlinear data
Reliability of prediction
Many different models already
developed for finding local and global
minimum for optimization
Neural Network Programming
–
–
–
–
Neuron receives weighted input
If above threshold, generates output
through nonlinear function
Connecting single neurons together
creates a neural network
Learning, training: get ANN to give a
desired output, supervised or
unsupervised learning (GA example)
Perceptron
x1
w1
x2
w2
y = Output
w = Weights
x = Inputs
b = Threshold
φ = Non-linear
Function
y
wN
Neuron
N
y = φ(∑wi xi _ b)
xN
i =1
Multilayer Perceptron
Hidden layer(s)
Input layer
1
Output layer
1
x1
2
2
x2
3
k
xN
wN
m
•
•
•
Basic ANN
example
Hierarchical
structure
Feed-forward
network
Neuron
C. Benatti, 3/15/2012, Slide 3
Genetic Algorithms
•
•
•
•
Machine learning technique
Effective tool to deal with complex
problems by evolving creative and
competitive solutions
Genetic Algorithms search for the
optimal set of weights, thresholds for
neurons
Crossover is the most used search
operator in Genetic Programming
Create Chromosomes of Initial Population
Express Chromosomes
(0.3, -0.8, -0.2, 0.6, 0.1, -0.1, 0.4, 0.5)
Evaluate Fitness
Terminate
Iterate or
Terminate?
End
Iterate
Elitism
Keep Best Programs
Genetic Modification Examples
Select Programs
Replication
Parents
(0.3, -0.8, -0.2, 0.6, 0.1, -0.1, 0.4, 0.5)
(0.7, 0.4, -0.9, 0.3, -0.2, 0.5, -0.4, 0.1)
Crossover
(0.7, 0.4, -0.9, 0.6, 0.1, -0.1, 0.4, 0.5)
Reproduction
Mutation
Genetic Modification
(0.7, 0.4, -0.9, 0.6, 0.1, -0.3, 0.4, 0.5)
Prepare New Chromosomes of Next Generation
http://www.ai-junkie.com/ann/evolved/nnt7.html
C. Benatti, 3/15/2012, Slide 4
SmartSweepers Tutorial Code
• NeuralNet.m
• NeuralNet_CalculateOutput.m
• Genetic_Algorithm.m
Best Fitness
Average Fitness
http://www.ai-junkie.com/ann/
C. Benatti, 3/15/2012, Slide 5
http://www.ai-junkie.com/index.html
• Good source for first time learning about
genetic algorithms and neural networks
• Explains concepts in “plain English”
• Goes through some coding examples to play
with crossover/mutation parameters
C. Benatti, 3/15/2012, Slide 6