380 likes | 737 Views
159.302. Dr. Napoleon H. Reyes, Ph.D. Computer Science. Artificial Intelligence. Institute of Information and Mathematical Sciences. Rm. 2.56 QA, IIMS, Albany Campus or IIMS Lab 7. email: n.h.reyes@massey.ac.nz Tel. No.: 64 9 4140800 x 9512 / 41572 Fax No.: 64 9 441 8181.
E N D
159.302 Dr. Napoleon H. Reyes, Ph.D. Computer Science Artificial Intelligence Institute of Information and Mathematical Sciences Rm. 2.56 QA, IIMS, Albany Campus or IIMS Lab 7 email: n.h.reyes@massey.ac.nz Tel. No.: 64 9 4140800 x 9512 / 41572 Fax No.: 64 9 441 8181 • Lectures: • Monday 12pm – 1pm AT8 • Thursday 12pm – 1pm AT8 • Friday 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 Topics for Discussion Learning Outcomes Texts and Course 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 Course Overview Step-by-Step Algorithm Details 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: Learning Outcomes Understand the concepts and theories behind AI technologies 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. Assessment Late assignments will be penalized 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. Assessment Students in a team have the authority (in consultation with the lecturer) to "expel" any member that does not meet obligations . 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 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 Course Schedule
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 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 Course Schedule
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 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) Course Schedule
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. *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 Course Schedule
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 second-order differential equation that describes cart motion as a function of pole position and velocity: Input: x, v, theta, angular velocity Output: Force, direction
Fuzzy Rules Fuzzy rule base and the corresponding FAMM for the velocity and position vectors of the inverted pendulum-balancing problem • 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 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. 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. Input: x, v, theta, angular velocity 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: The A* Algorithm Path Planning Layer Next Waypoint Fuzzy System 1 Fuzzy System 1:Target Pursuit Target Pursuit Adjusted Angle Central Control Fuzzy System 2: Speed Control for Target Pursuit Fuzzy System 2 Adjusted Speed ObstacleDistance < MaxDistanceTolerance and closer than Target N Y Fuzzy System 3: Obstacle Avoidance Fuzzy System 3 Obstacle Avoidance Adjusted Angle Fuzzy System 4 Fuzzy System 4: Speed Control for Obstacle Avoidance Adjusted Speed Actuators
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
Hybrid Fuzzy A* 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 n =10 c = 230 -1 = 1,073,741,823
Simple GA Example Fitness Function or Objective Function • Function to evaluate: • coeff – chosen to normalize the x parameter when a bit string of length lchrom =30 is chosen. • Since the x value has been normalized, the max. value of the function will be: when for the case when lchrom=30
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, one-at-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.
Simple GA Implementation Initial population of chromosomes Offspring Population Calculate fitness value Solution Found? Evolutionary operations No Yes Stop
Identifying Colour Objects FIRA RoboWorld Congress & CIRAS 2005 with Fuzzy Colour Contrast Fusion
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 2D Digital Image Camera Frame Grabber 3D Scene Optics (Lens) Firewire camera Image Sensors CID (Charge Injection Device) CCD (Charge Coupled Device) PDA (Photo Diode Array) Emmitted light * 2-D Intensity Image Continuous 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 Dark Other Factors: Lens focus Bright Object rotation Dim Quantum electrical effects Shadows 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