Population Based Optimization for Variable Operating Points Alan L. Jennings & Ra úl Ordóñez, ajennings1ajennings1, Electrical and Computer Engineering University of Dayton MethodExamples ConclusionIntroduction Monday, June 6 th, 2011CEC2011-#2741
The Challenge As a desired parameter changes, Smoothly change other parameters in real-time, While maintaining local optimality. The Solution Global search/optimization of input space, To form inverse functions in the output space, Using particles and clusters. 2 MethodExamples ConclusionIntroduction Change Y One dimension Adjust X Many dimensions Smoothly and quickly Maintain Optimality Monday, June 6 th, 2011CEC2011-#274
Problem Statement Find continuous functions x*= h i (y d ) Such that, J=g(x*) is local minimum y d =f(x*) over an interval of y d. Assumptions Compact set in x g & f are C 1, deterministic and time invariant Change in x is easy to implement Adequately scaled Regions larger than a point where ∇ f=0 can result in open domain of h i 3 MethodExamples ConclusionIntroduction Monday, June 6 th, 2011CEC2011-#274
Example Problems Thermostat Combining generators Optimal control trajectory Linear, SISO system 4 MethodExamples ConclusionIntroduction Input: Set pointOutput: TemperatureCost: Energy Monday, June 6 th, 2011CEC2011-#274 Input: Servo positions nodes in time Output: Crawl distance, Jump height, …. Cost: Energy, Max Torque, Profile Height,… This method is different from Nominal operating point Pareto-Optimal Front
Method Overview Neural Networks Universal Approximators Converge in the gradient Simple to get gradient Swarm Optimization Agents cover n space Simple motions Allow for clusters Spline Interpolation Use known optimal points of clusters 5 MethodExamples ConclusionIntroduction Surrogate Function Creation Sample Function Train Network Validate Network Swarm Optimization Initialize Population Move Agents: lower g(x), keep f(x) Check for removal/ settling conditions Form clusters Execution Select cluster h i Get y d Evaluate h i Move x to x* Swarm Optimization Execution Monday, June 6 th, 2011CEC2011-#274
Particle Motion Output gradient Move in null space Cost gradient Move opposite (in null space) Saturation All gradients saturate If gradients are large -> fixed step length If a gradient is small -> step size diminishes Boundary constraint reduces step length Minimum step for settling Remove particles close to another Quickly reduces population size 6 MethodExamples ConclusionIntroduction Output Cost Step Monday, June 6 th, 2011CEC2011-#274
Cluster Formation Form cluster from settled particle Ascend/Descend Output Form new point Apply gradient descent End Cluster conditions Particle doesn’t settle Output decreases / increases Settles too far away / close 7 MethodExamples ConclusionIntroduction Monday, June 6 th, 2011CEC2011-#274
Simple Example Combination of generators Output: Total power out Cost: Quadratic function Expected result Each does half the load 8 MethodExamples ConclusionIntroduction Monday, June 6 th, 2011CEC2011-#274
Complex Examples Combination of functions Multiple extremum Saddle points 2-dim for verification Expected result Clusters between output extremum 9 MethodExamples ConclusionIntroduction Quadratic Cost Linear/Quadratic Cost Periodic Cost Quadratic Cost Monday, June 6 th, 2011CEC2011-#274
Cluster Evaluation Verify Output Accuracy Plot Actual vs Desired for test points Verify Optimality Generate neighbors Plot cost vs output Subtract expected cost 10 MethodExamples ConclusionIntroduction Cluster 1 Test Cluster 2 Test Monday, June 6 th, 2011CEC2011-#274
5 Dim, ill scaled example 5 different generators Order of magnitude difference of gradient Used exact NN to eliminate that source or error Resulted in single cluster that balanced the incremental cost of all generators 0.1% full range accuracy
Failure Methods `Kill distance’ may end other bifurcation branches Cluster ends prematurely Global optimization parameters insufficient Corners in clusters can impair cubic interpolation Piecewise cubic can make interpolant monotonic Difficult to verify in high dimensions Testing cluster is reasonably simple 12 MethodExamples ConclusionIntroduction Possible bifurcations, direction dependent Corners in cluster interfere with interpolation Gradient goes to zero, ends cluster Monday, June 6 th, 2011CEC2011-#274
Questions or Comments? Global search, using particles & clusters, to find optimal, continuous output-inverse functions. _____________________________________________________________ Tested to work on many difficult combinations. _____________________________________________________________ Future: apply to developmental/ resolution increasing control 13 MethodExamples ConclusionIntroduction Monday, June 6 th, 2011CEC2011-#274