Case Injected Genetic Algorithms Sushil J. Louis Genetic Algorithm Systems Lab (gaslab) University of Nevada, Reno
Collaborators Vinod Gandikota Igor Golovkin Xiaohua Liu Andrew Murray Rikun Tang Indira Vinjamuri Yongmian Zhang
Outline Motivation What is the technique? Genetic Algorithm and Case-Based Reasoning Is it useful? Combinational Logic Design Strike Force Asset Allocation TSP Scheduling Conclusions
Genetic Algorithm Non-Deterministic, Parallel, Search Poorly understood problems Evaluate, Select, Recombine Population based search Population member encodes candidate solution Building blocks combine to make progress More resistant to local optima Iterative, requiring many evaluations
Motivation Deployed systems are expected to confront and solve many problems over their lifetime How can we increase genetic algorithm performance with experience? Provide GA with a memory
Case-Based Reasoning When confronted by a new problem, adapt similar (already solved) problem’s solution to solve new problem CBR Associative Memory + Adaptation CBR: Indexing (on problem similarity) and adaptation are domain dependent
Case Injected Genetic AlgoRithm Combine genetic search with case-based reasoning Case-base provides memory Genetic algorithm provides adaptation Genetic algorithm generates cases Any member of the GA’s population is a case
System
Related work Seeding:Koza, Greffensttette, Ramsey, Louis Lifelong learning: Thrun Key Differences Store and reuse intermediate solutions Solve sequences of similar problems
Combinational Logic Design An example of configuration design Given a function and a target technology to work with design an artifact that performs this function subject to constraints Target technology: Logic gates Function: Parity checking Constraints: 2-D gate array
Encoding
Encoding
Parity Input3-bit Parity3-1 problem
Problem similarity
Lessons Storing and Injecting solutions may not improve solution quality Storing and Injecting partial solutions does lead to improved quality
OSSP Performance
Which cases to inject? Problem distance metric (Louis ‘97) Domain dependent Solution distance metric Genetic algorithm encodings Binary – hamming distance Real – euclidean distance Permutation – longest common substring …
Solution Similarity
Periodic Injection Strategies Closest to best Furthest from worst Probabilistic closest to best Probabilistic furthest from worst Randomly choose a case from case-base Create random individual
Setup 50, 6-bit combinational logic design problems Randomly select and flip bits in parity output to define logic function Compare performance Quality of final design solution (correct output) Time to this final solution (in generations)
Parameters Population size: 30 No of generations: 30 CHC (elitist) selection Scaling factor: 1.05 Prob. Crossover: 0.95 Prob. Mutation: 0.05 Store best individual every generation Inject every 5 generations (2^5 = 32) Inject 3 cases (10%) Multiple injection strategies Averages over 10 runs
Problem distribution
Performance - Quality
Performance - Time
Injection Strategies
Solution distribution
Strike force asset allocation Allocate platforms to targets Dynamic Changing target priority Battlefield conditions Popup Weather …
Factors in allocation Pilot proficiency Asset suitability Priority Risk Route Other assets (SEAD) Weather
Maximize mission success Binary encoding Platform to multiple targets Target can have multiple platforms Dynamic battle-space Strong time constraints
Setup 50 problems. 10 platforms, 40 assets, 10 targets Each platform could be allocated to two targets Problems varied in risk matrix Popsize=80, Generations=80, Pc=1.0, Pm=0.05, probabilistic closest to best, injection period=9, injection % = 10% of popsize
Results
TSP Find the shortest route that visits every city exactly once (except for start city) Permutation encoding. Ex: Similarity metric: Longest common subsequence (Cormen et al, Introduction to Algorithms) 50 problems, move city locations
TSP performance
Scheduling Job shop scheduling problems Permutation encoding (Fang) Similarity metric: Longest common subsequence (Cormen et al, Introduction to Algorithms) 50 problems, change task lengths
JSSP Performance (10x10)
JSSP Performance (15x15)
Summary Case Injected Genetic AlgoRithm: A hybrid system that combines genetic algorithms with a case-based memory Defined problem-similarity and solution- similarity metrics Defined performance metrics and showed empirically that CIGAR learns to increase performance for sequences of similar problems
Conclusions Case Injected Genetic AlgoRithm is a viable system for increasing performance with experience. Improving one or both of Quality of solution found – highest fitness individual Number of generations needed to find this solution Repeated injection based on similarity Syntactic similarity measures suffice Hamming distance Longest Common Sub-string for permutation encoding
Implications Implications for system design Increases performance with experience Generates cases during problem solving Long term navigable store of expertise Problem analysis by analyzing case-base