Automatic Synthesis Using Genetic Programming of Improved PID Tuning Rules Matthew J. Streeter Genetic Programming, Inc. Mountain View, California

Slides:



Advertisements
Similar presentations
CHE 185 – PROCESS CONTROL AND DYNAMICS
Advertisements

Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Genetic Programming 김용덕 Page 2 Contents What is Genetic Programming? Difference between GP and GA Flowchart for GP Structures in GP.
280 SYSTEM IDENTIFICATION The System Identification Problem is to estimate a model of a system based on input-output data. Basic Configuration continuous.
Control System Design Based on Frequency Response Analysis
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
1 Incremental Evolution of Autonomous Controllers for Unmanned Aerial Vehicles using Multi-objective Genetic Programming Gregory J. Barlow, Choong K. Oh,
Iterative Refinement of Computational Circuits using Genetic Programming Matthew J. Streeter Genetic Programming Inc. Mountain View, California
Learning to Advertise. Introduction Advertising on the Internet = $$$ –Especially search advertising and web page advertising Problem: –Selecting ads.
Early work in intelligent systems Alan Turing (1912 – 1954) Arthur Samuel ( )
Design of Autonomous Navigation Controllers for Unmanned Aerial Vehicles using Multi-objective Genetic Programming Gregory J. Barlow March 19, 2004.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Genetic Art. Network Record Using Network Information Chicago Evanston ParisMoscow.
Process Control Instrumentation II
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Khaled Rasheed Computer Science Dept. University of Georgia
Genetic Programming Dinesh Dharme Prateek Srivastav Pankhil Chheda
Genetic Programming.
Slides are based on Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming n Evolution.
Initial Value Problem: Find y=f(x) if y’ = f(x,y) at y(a)=b (1) Closed-form solution: explicit formula -y’ = y at y(0)=1 (Separable) Ans: y = e^x (2)
Problems Premature Convergence Lack of genetic diversity Selection noise or variance Destructive effects of genetic operators Cloning Introns and Bloat.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Solving the Concave Cost Supply Scheduling Problem Xia Wang, Univ. of Maryland Bruce Golden, Univ. of Maryland Edward Wasil, American Univ. Presented at.
© Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Evolution strategies Evolution.
Automatically Defined Functions Used to evolve modular programs Architecture implemented by Koza Architecture implemented by Bruce Function calls A critical.
Warm-up Activity 1. How many frames are in a Pixar animated movie such as The Incredibles?
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
The Generational Control Model This is the control model that is traditionally used by GP systems. There are a distinct number of generations performed.
Applying Genetic Algorithm to the Knapsack Problem Qi Su ECE 539 Spring 2001 Course Project.
GENETIC ALGORITHMS.  Genetic algorithms are a form of local search that use methods based on evolution to make small changes to a popula- tion of chromosomes.
G ENETIC P ROGRAMMING Ranga Rodrigo March 17,
Artificial Intelligence Chapter 4. Machine Evolution.
PID Controller Design and
Routine Duplication of Post-2000 Patented Inventions by Means of Genetic Programming Matthew J. Streeter Genetic Programming, Inc. Martin.
Automatic Synthesis Using Genetic Programming of Both the Topology and Sizing for Five Post-2000 Patented Analog and Mixed Analog-Digital Circuits Matthew.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Genetic Programming Part 2 Jay Shaffstall. Genetic Programming Review of Part 1 Program graphing Program breeding Program mutation Fitness functions Development.
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Intelligent controller design based on gain and phase margin specifications Daniel Czarkowski  and Tom O’Mahony* Advanced Control Group, Department of.
Automatic Synthesis Using Genetic Programming of an Improved General-Purpose Controller for Industrially Representative Plants Martin A. Keane Econometrics,
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
2/29/20121 Optimizing LCLS2 taper profile with genetic algorithms: preliminary results X. Huang, J. Wu, T. Raubenhaimer, Y. Jiao, S. Spampinati, A. Mandlekar,
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
Alice E. Smith and Mehmet Gulsen Department of Industrial Engineering
Introduction Genetic programming falls into the category of evolutionary algorithms. Genetic algorithms vs. genetic programming. Concept developed by John.
Genetic Programming Using Simulated Natural Selection to Automatically Write Programs.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Genetic Programming. What is Genetic Programming? GP for Symbolic Regression Other Representations for GP Example of GP for Knowledge Discovery Outline.
Evolving Recursive Algorithms The SRF function Automatically defined recursions (ADRs) The recur operator Dealing with infinite and time-consuming recursions.
Chapter 12 Case Studies Part B. Control System Design.
Genetic Algorithm (Knapsack Problem)
Using GA’s to Solve Problems
Genetic Algorithms.
Selected Topics in CI I Genetic Programming Dr. Widodo Budiharto 2014.
Introduction Genetic programming falls into the category of evolutionary algorithms. Genetic algorithms vs. genetic programming. Concept developed by John.
Bulgarian Academy of Sciences
Evolution strategies and genetic programming
An evolutionary approach to solving complex problems
CS621: Artificial Intelligence
Basics of Genetic Algorithms (MidTerm – only in RED material)
Artificial Intelligence Chapter 4. Machine Evolution
Basics of Genetic Algorithms
Artificial Intelligence Chapter 4. Machine Evolution
Boltzmann Machine (BM) (§6.4)
PID Controller Design and
Beyond Classical Search
Controller Tuning Relations
Presentation transcript:

Automatic Synthesis Using Genetic Programming of Improved PID Tuning Rules Matthew J. Streeter Genetic Programming, Inc. Mountain View, California Martin A. Keane Econometrics, Inc. Chicago, Illinois John R. Koza Stanford University Stanford, California ICONS 2003, Faro Portugal, April 8-11

Outline Overview of Genetic Programming (GP) Controller Synthesis using GP Improved PID Tuning Rules

Overview of Genetic Programming (GP)

Overview of GP Breed computer programs to solve problems Programs represented as trees in style of LISP language Programs can create anything (e.g., controller, equation, controller+equations)

Pseudo-code for GP 1) Create initial random population 2) Evaluate fitness 3) Select fitter individuals to reproduce 4) Apply reproduction operations (crossover, mutation) to create new population 5) Return to 2 and repeat until solution found

Random initial population Function set: {+, *, /, -} Terminal set: {A, B, C} (1) Choose “+”(2) Choose “*”(3-5) Choose “A”, “B”, “C”

Fitness evaluation 4 random equations shown Fitness is shaded area Target curve ( x 2 +x+1 )

Crossover Subtrees are swapped to create offspring Picked subtree Parents Offspring Picked subtree

Controller Synthesis Using GP Program tree directly represents control block diagram Special functions for internal feedback / takeoff points Fitness measured in terms of ITAE, sensitivity, stability

Control problems solved Control of two and three lag plants, non- minimal phase plant, three lag plant w/ 5 second delay Parameterized controllers for three lag plant with variable internal gain,... Parameterized controllers for broad families of plants

Improved PID Tuning Rules

Basis for Comparison: the Åström- Hägglund controller Applied dominant pole design to 16 plants from 4 representative families of plants Used curve-fitting to obtain generalized solution Equations are expressed in terms of ultimate gain (K u ) and ultimate period (T u )

The Åström-Hägglund controller Equation 1 (b): Equation 2 (K p ) : Equation 3 (K i ): Equation 4 (K d ):

Experiment 1: Evolving tuning rules from scratch 4-branch program representing 4 equations (for K, K i, K d, and b) in terms of K u & T u Different from other GP work in that we are evolving tuning, not topology Fitness in terms of ITAE, sensitivity, stability

Function & terminal sets Function set: {+, *, -, /, EXP, LOG, POW} Terminal set: {KU, TU,  }

Fitness measure ITAE penalty for setpoint & disturbance rejection Penalty for minimum sensor noise attenuation (sensitivity) Penalty for maximum sensitivity to noise (stability) Evaluation on 30 plants (superset of A-H’s 16 plants) Controllers simulated using SPICE

Reference signal Disturbance signal Six combinations of reference and disturbance signal heights Penalty is given by: B and C are normalizing factors Fitness measure: ITAE penalty

Fitness measure: stability penalty 0 reference signal, 1 V noise signal Maximum sensitivity is maximum amplitude of noise signal + plant response Penalty is 0 if M s < 1.5 2(M s -1.5) if 1.5  M s  (M s -1.0) is M s > 2.0

Fitness measure: sensitivity penalty 0 reference signal, 1 V noise signal A min is minimum attenuation of plant response Penalty is 0 if A min > 40 db (40-A min )/10 if 20 db  A min  40 db 2+(20-A min ) if A min < 20 db

Experimental setup 1000 node Beowulf cluster with 350 MHz Pentium II processors Island model with asynchronous subpopulations Population size: 100,000 70% crossover, 20% constant mutation, 9% cloning, 1% subtree mutation

Åström-Hägglund equations KKiKi KdKd b

Evolved equations KKiKi KdKd b

Experiment 1: Conclusions Evolved tuning rules are better on average than A-H, but not uniformly better Dominant pole design provides optimal solution for individual plants Maybe we can improve on A-H curve- fitting

Experiment 2: Evolving increments to A-H equations Same program structure, fitness measure, etc. Values of evolved equations are now added to A-H equations

Evolved adjustments to A-H equations KKiKi KdKd b

Results 91.6% of setpoint ITAE of Åström- Hägglund (89.7% out-of-sample) 96.2% of disturbance rejection ITAE of A-H (95.6% OOS) 99.5% of 1/(minimum attenuation) of A-H (99.5% OOS) 98.5% of maximum sensitivity of A-H (98.5% OOS)

Conclusions Evolved controller is slightly better than Åström-Hägglund Not much room for improvement (in terms of our fitness measure) with PID topology We have gotten better results evolving tuning+topology (also bootstrapping on A-H)