IntroToAI_2_2_2012

advertisement
Intro to
Search-Based
Artificial Intelligence
Daniel Tauritz, Ph.D.
Associate Professor of Computer Science
Director, Natural Computation Laboratory
Missouri S&T
Intro to AI
• Thinking Humanly (Cognitive
Modeling)
• Acting Humanly (Turing Test)
• Thinking Rationally (Logic)
• Acting Rationally (Optimizing
Utility Function)
Algorithm
An algorithm is a sequence of
well-defined instructions that
can be executed in a finite
amount of time in order to
solve some problem.
Optimization Algorithm
An optimization algorithm is an
algorithm which takes as input
a solution space, an objective
function which maps each
point in the solution space to a
linearly ordered set, and a
desired goal element in the set.
Stochastic Algorithm
A stochastic algorithm is an
algorithm which when
executed multiple times with
the same input, produces
different outputs drawn from
some underlying probability
distribution.
Evolutionary Algorithm
A stochastic optimization
algorithm inspired by genetics
and natural evolution theory.
Problem
Description
Evolutionary
Problem Solving
Population
Initialization
Strategy
Parameters
Fitness Evaluation
Problem Specific
Black Box
Reproduction
Evolutionary
Cycle
Competition
no
Termination
Criteria Met?
yes
Fitness Evaluation
Solution
Deriving Gas-Phase Exposure
History through Computationally
Evolved Inverse Diffusion Analysis
• Joshua M. Eads
•
Undergraduate in Computer Science
• Daniel Tauritz
•
Associate Professor of Computer Science
• Glenn Morrison
•
Associate Professor of Environmental Engineering
• Ekaterina Smorodkina
•
Former Ph.D. Student in Computer Science
Introduction
Find Contaminants
and Fix Issues
Examine Indoor
Exposure History
Unexplained
Sickness
Background
• Indoor air pollution top five
•
•
•
environmental health risks
$160 billion could be saved every year
by improving indoor air quality
Current exposure history is inadequate
A reliable method is needed to determine
past contamination levels and times
Problem Statement
•A forward diffusion differential equation
predicts concentration in materials after
exposure
•An inverse diffusion equation finds the timing
and intensity of previous gas contamination
•Knowledge of early exposures would greatly
strengthen epidemiological conclusions
Gas-phase concentration history and
material absorption
Concentration in solid
Concentration in gas
Gas-phase concentration history 
material phase concentration profile
0
Elapsed time
0
x or distance into solid (m)
Proposed Solution
•Use Genetic
Programming (GP)
as a directed search
for inverse equation
•Fitness based on
x^5x^2
+ x^4
- tan(y) / pi
+
sin(x)
sin(cos(x+y)^2)
sin(x+y) + e^(x^2)
5x^2 + 12x - 4
x^2 - sin(x)
X +
Sin
/
forward equation
?
Related Research
• It has been proven that the inverse
•
•
equation exists
Symbolic regression with GP has
successfully found both differential
equations and inverse functions
Similar inverse problems in
thermodynamics and geothermal
research have been solved
Interdisciplinary Work
• Collaboration between
Environmental Engineering,
Computer Science, and Math
Parent
Selection
Candidate
Solutions
Competition
Population
Reproduction
Fitness
Genetic Programming Algorithm
Forward
Diffusion
Equation
Genetic Programming Background
+
Y = X^2 + Sin( X * Pi )
Si
n
*
X
X
*
X
Pi
Summary
• Ability to characterize exposure
history will enhance ability to assess
health risks of chemical exposure
A Coevolutionary Arms-Race
Methodology for Improving
Electric Power Transmission
System Reliability
Delivery Problems
• Transmission Grid Expansion Hampered
– Social, environmental, and
economic constraints
• Transmission Grid Already “Stressed”
– Already carrying more than intended
– Dramatic increase in incidence reports
The Grid
The Grid: Failure
The Grid: Redistribution
The Grid: A Cascade
The Grid: Redistribution
The Grid: Unsatisfiable
The Grid: Unsatisfiable
Failure Summary
• Failure spreads relatively quickly
– Too quickly for conventional control
• Cascade may be avoidable
– Utilize unused capacities
(Flow compensation)
• Unsatisfiable condition may be avoidable
– Better power flow control to reduce severity
Measuring hardening performance
• In practice: evaluate over a representative
sampling of scenarios
• Sampling approaches
– Pruned Exhaustive (e.g., n-1 security index in
power systems)
– Monte Carlo
– Intelligent adversary
Intelligent Adversary
• Game Theoretic: Two-player game of
defenders & attackers
• Dependent search spaces: grid hardening
space (defenders) & scenario space (attackers)
• Computational methods for dependent search:
– Iterative approach
– Competitive Coevolution approach
– Generalized Co-Optimization approach
Competitive Coevolution
• Type of Evolutionary Algorithm where
solution quality is dependent on other
solutions
• For two-player games an arms-race is
created by having two opposing
populations of solutions where solution
quality is inversely dependent on solutions
in the opposing population
Co-Optimization
• Generalization of Coevolution
• Evolutionary principles are replaced by
arbitrary black-box optimization techniques
• Allows matching of interactive problem
domains to optimization techniques
Summary of methodology
• Improve grid robustness by creating an
arms-race between hardenings (defenders)
and fault scenarios (attackers) through the
use of Co-Optimization
• Hardenings are evolved to minimize
economic loss
• Fault scenarios are evolved to maximize
economic loss
• Stair stepping of ability
Advanced Power Transmission
System with Distributed Power
Electronics Devices - Case Study
• Hardenings: Unified Power Flow Controller
(UPFC) placements
– Control power flow through transmission lines
– UPFCs are a powerful type of Flexible AC
Transmission System (FACTS) device
• Fault scenarios: line outages
FACTS Interaction Laboratory
UPFC
Simulation
Engine
HIL Line
Social & Ethical Implications
• Grid really improved?
– Margins versus profits
– New weaknesses introduced
• Who decides delivery priorities?
• Can this research be misused?
Coevolutionary Automated
Software Correction (CASC)
ISC Sponsored Project
Ph.D. student: Josh Wilkerson
Objective:
Find a way to automate
the process of software testing and
correction.
Approach: Create Coevolutionary
Automated Software Correction (CASC)
system which will take a software artifact
as input and produce a corrected version
of the software artifact as output.
Coevolutionary Cycle
Population Initialization
Population Initialization
Population Initialization
Population Initialization
Initial Evaluation
Initial Evaluation
Reproduction Phase
Reproduction Phase
Reproduction Phase
Evaluation Phase
Evaluation Phase
Competition Phase
Competition Phase
Termination
Termination
Download