Artificial Intelligence

Download Report

Transcript Artificial Intelligence

159.302
Dr. Napoleon H. Reyes, Ph.D.
Computer Science
Institute of Information and Mathematical Sciences
Artificial Intelligence
Rm. 2.56 QA, IIMS, Albany Campus or IIMS Lab 7
email: [email protected]
Tel. No.: 64 9 4140800 x 9512 / 41572
Fax No.: 64 9 441 8181
Lectures:
Monday
Thursday
Friday
12pm – 1pm AT8
12pm – 1pm AT8
12pm – 1pm AT5
Office hours: after
lectures (QA2.56 or
IIMS Lab 7)
http://www.massey.ac.nz/~nhreyes/Massey/159302.html
Pre-requisites
Course Overview
Learning Outcomes
Topics
Discussion
Texts and
Coursefor
Material
Assessment
Course Schedule
AI Demonstrations
Note:
If a student cannot attend lectures/tutorials it is
the student’s responsibility to find out what
was discussed in lectures / tutorials
(possible changes to assignments, questions
& answers).
Student Responsibility
*
To take this course you must have passed 159.201 since
C or C++ knowledge is required to complete the
assignments
Pre-requisites
Teaching Approach
Discussion of the Theoretical Framework
Step-by-Step Algorithm Details
Course Overview
Application to real-world problems
Simulations (A Graphics Engine will be provided to make learning AI
more fun)
On successful completion of the course, the students should be able
to:
Understand the concepts and theories behind AI
technologies
Learning Outcomes
Learn how to apply AI techniques to different problems
Implement selected AI algorithms
Main text book
Russell S. and Norvig P., Artificial Intelligence A Modern
Approach, 3rd Ed, Prentice Hall 2009
ISBN-13: 9780136042594
Texts and Course Material
Other References
MIT OpenCourseWare
Neural Network and Fuzzy Logic Applications in C/C++ by Stephen
T. Welstead
Artificial Intelligence: Structures and Strategies for Complex
Problem Solving by George F Luger
2 assignments: 40%
Final Exam (3 hours): 60%
Assessment
To pass, students have to obtain a cumulative assessment score
greater than or equal to 50%.
Deadline: Deadlines for assignments will be given when
assignments are distributed. You will be given 4 weeks to
complete each assignment
Penalty: Late submissions (up to 1 week) will be penalised by 10%.
Program solutions that do not compile or do not run in our
laboratories get 0 marks.
Late assignments will be penalized
Assessment
Assignments may be completed in groups
all members of the group should be named in the source file of
each assignment, including the contribution of each member.
All submitted assignments will have to be accompanied by a short
documentation as well.
There can be at most 3 members in a group.
Each group member will receive the same grade.
Students in a team have the authority (in consultation with the
lecturer) to "expel" any member that does not meet obligations .
Assessment
The collaboration is limited only to members within each group.
It is a student responsibility to check their assignment marks and
notify in writing any errors they might find no later than 10 days
after the day the marks were made available.
Week 1.
• Introduction (chap 1), Philosophical Issues (chap 26 & 27), Intelligent Agents (chap 2).
• Film viewing
• Tutorial: Simulation Essentials for the assignments
Week 2. Introduction to Search
• Background and Motivation
• Examples of Graphs
• Problem Solving Paradigm
• Graph Search as Tree Search
• Terminologies
• Classes of Search
Course Schedule
Week 3. Search Strategies
• Issues of Implementing the Search Strategies
• Cost and Performance
• Any-Path Search (Uninformed and Informed, Using the Visited List)
• Depth-First Algorithm
• Breadth-First Algorithm
• Best-First Search Algorithm
Week 4. Any-Path Search Examples
• Depth-First Algorithm
• Breadth-First Algorithm
• Best-First Search Algorithm
• Tutorial: Problem Solving: Any-Path Search Algorithms
Week 5. Optimal Search: Part 1
• Optimal Uninformed Search
• Uniform Cost Search
• Why not a Visited List?
• Implementing Optimal Search Strategies
• Optimal Informed Search
• The A* Algorithm, Heuristics, Using the Strict Expanded List)
• Tutorial: Problem Solving: Optimal Search Algorithms
Course Schedule
Week 6. Optimal Search: Part 2
• The A* and Expanded List
• Uniform Cost and Strict Expanded List
• Consistency
• Optimality and Worst Case Complexity
• Tutorial: Problem Solving: Optimal Search Algorithms
Week 7. Fuzzy Logic
 Fuzzification, Defuzzification, Fuzzy logic operators, Fuzzy Inference Systems,
Fuzzy Control Systems
 Inverted Pendulum Problem, Robot Navigation, Colour Object Recognition
Week 8. Machine Learning
 Neural Networks
 Pattern Recognition
Course Schedule
Week 9. Constraint Satisfaction Problems and Games: Part 1
 Binary CSP
 Constraints
 Constraint Propagation (Arc Consistency)
 Constraint Propagation Example
 Backtracking and Constraint Propagation
 Backtracking with Forward Checking (BT-FC)
Week 10. Constraint Satisfaction Problems and Games: Part 2
• BT-FC with Dynamic Ordering
• Incremental Repair
• Introduction to Games
• Board Games and Search
• Alpha-Beta Pruning
• Practical Matters
• Tutorial: Problem Solving: Minimax, Alpha Beta Pruning.
Course Schedule
*Week 11. Propositional Logic & First Order Logic
• Syntax, Semantics, Proof System, Sentences
• Semantic Rules
• Satisfiability
• Satisfiability Problems
• Propositional Logic Proof
• Natural Deduction, Proof Systems, Conjunctive Normal Form, Propositional Resolution
• Natural Language Processing
Week 11. Alternatively, Genetic Algorithms + Propositional Logic could be taught.
Week 12. Review for Finals
Demonstrations
Search Algorithms (Tree Search + Heuristics)
Sample application: 8-Puzzle
Fuzzy Logic – based on how we humans think
Sample applications: Robot Navigation, Inverted Pendulum
Neural Network – based on the architecture of the brain
Sample application: pattern recognition
Genetic Algorithm – based on theory of evolution
Sample application: optimisation
Assignment #1
C:\Core\Massey Papers\159302\Assignments 2008\Assign #1 - 2008\8 Puzzle - beta v.3.0
Control System: Inverted Pendulum
Problem
Otherwise known as Broom-Balancing Problem
The mathematical
solution uses a secondorder differential
equation that describes
cart motion as a
function of pole position
and velocity:
 2

 2

m
(
x

l
sin

)
l
cos


m
(
l
cos

)



l sin   mgl sin 
2
2
 t

 t

Input:
x, v, theta, angular velocity
Output: Force, direction
Fuzzy Rules
Fuzzy rule base and the corresponding FAMM for the velocity
vectors of the inverted pendulum-balancing problem
1.
2.
3.
4.
5.
6.
7.
8.
9.
and position
IF cart is on the left AND cart is going left THEN largely push cart to the right
IF cart is on the left AND cart is not moving THEN slightly push cart to the right
IF cart is on the left AND cart is going right THEN don’t push cart
IF cart is centered AND cart is going left THEN slightly push cart to the right
IF cart is centered AND cart is not moving THEN don’t push cart
IF cart is centered AND cart is going right THEN slightly push cart to the left
IF cart is on the right AND cart is going left THEN don’t push cart
IF cart is on the right AND cart is not moving THEN push cart to the left
IF cart is on the right AND cart is going right THEN largely push cart to the left
Fuzzy Control System
Inverted Pendulum Problem
If the cart is too near the end of the path, then
regardless of the state of the broom angle push the cart
towards the other end.
If the broom angle is too big or changing too quickly, then
regardless of the location of the cart on the cart path, push the
cart towards the direction it is leaning to.

X
X’
Input:
N
ZE
P
N
PL
ZE
ZE
ZE
ZE
ZE
ZE
P
ZE
ZE
NL
x, v, theta, angular velocity
’
N
ZE
P
N
NL
NM
ZE
ZE
NM
ZE
PM
P
ZE
PM
PL
Output: Force, direction
Robot Navigation
Obstacle Avoidance, Target Pursuit, Opponent Evasion
Input:
Multiple Obstacles:
x, y, angle
Target’s x, y, angle
Output: Robot angle, speed
Cascade of Fuzzy Systems
Multiple Fuzzy Systems employ the various robot behaviours
Path planning Layer:
Path
Layer
The Planning
A* Algorithm
Next Waypoint
Fuzzy Target
SystemPursuit
1
Fuzzy System 1:
Adjusted Angle
Central
Control
Fuzzy System 2:
Fuzzy
System
Speed
Control
for 2Target Pursuit
Target
Pursuit
Adjusted Speed
ObstacleDistance <
MaxDistanceTolerance
and closer than Target
N
Y
Obstacle
Avoidance
Fuzzy
System
3
Fuzzy System 3:
Adjusted Angle
Fuzzy System 4:
Speed
FuzzyControl
Systemfor
4 Obstacle
Avoidance
Adjusted Speed
Actuators
Obstacle
Avoidance
Hybrid Fuzzy A*
Input:
Obstacles’ x, y, angle
Target’s x, y, angle
Output: Robot angle, speed
C:\Core\Massey Papers\159302\Assignments 2008\Assign #2 - 2008\Robot Navigation - v.9.4 - FL-AStar
Simulations
3-D Hybrid Fuzzy A* Navigation System
Cascade of Fuzzy Systems
Nature as Problem Solver
• Beauty-of-nature
argument
• How Life Learned to Live
(Tributsch, 1982, MIT
Press)
• Example: Nature as
structural engineer
Genetic Algorithm
• Let’s see the
demonstration for
a GA that
maximizes the
function
 x
f ( x)   
c
n
n =10
c = 230 -1 = 1,073,741,823
25
Simple GA Example
• Function to evaluate:
10
 x 
f ( x)  

 coeff 
Fitness Function
or Objective
Function
• coeff – chosen to normalize the x parameter when a bit string of length
lchrom =30 is chosen.
coeff  230  1
• Since the x value has been normalized, the max. value of the function will
be:
f ( x)  1.0
when
x  230  1 for the case when lchrom=30
26
Test Problem Characteristics
• With a string length=30, the search space is
much larger, and random walk or enumeration
should not be so profitable.
• There are 230=1.07(1010) points.
With over 1.07 billion points in the space, oneat-a-time methods are unlikely to do very much
very quickly.
Also, only 1.05 percent of the points have a
value greater than 0.9.
27
Simple GA Implementation
Initial population of chromosomes
Offspring
Population
Calculate fitness value
Evolutionary
operations
No
Solution
Found?
Yes
Stop
28
Identifying Colour Objects
with
Robot Soccer Set-up
IIMS Lab 7
Overhead
Camera
Fluorescent lamps
Colour objects
www.Fira.net
Exploratory environment is indoor – room totally obstructed from sunlight
Multiple monochromatic light sources – fluorescent / fluoride lamps
*
Colour Object Recognition (Recognition speed: < 33ms)
Machine Vision System
HARDWARE OUTLINE
3D Scene
Camera
Frame Grabber
2D Digital
Image
Optics
Firewire
(Lens) camera
Image Sensors
CID (Charge Injection Device)
CCD (Charge Coupled Device)
PDA (Photo Diode Array)
*
Emmitted light
2-D Intensity
Continuous
Image charge signal
Colour as the machine sees it
Colour constancy is inherent in us humans, but not in cameras.
Yellow object turns
pale under strong
white illumination
Color is not captured by the
camera as we humans see it.
A Green object tends to appear
more as a whitish yellow object
under bright white illumination.
Illumination Conditions
Colour objects traversing the field under spatially varying
illumination intensities
Other Factors:
Dark
Lens focus
Object rotation
Quantum electrical effects
Shadows
Bright
Dim
Presence of similar colours
*
We need to automatically compensate for the
effects of varying illumination intensities in
the scene of traversal
Recent Developments
Experiments performed at IIMS Lab 7
To some extent,
the algorithm can
see in the dark
Applying the colour contrast operations to compensate for the effects of glare,
hue and saturation drifting also allows for colour correction
Recent Developments
Experiments performed at IIMS Lab 7
PINK colour patches can be amplified to revert back close to its original colour
*
Robots in action
The Fuzzy Vision algorithm employed in the
game…
Robots in Massey (QA 2.42)
Old system
C:\Core\Research\Conferences\ICONIP08