Artificial WINtelligence By: Jamaal Alleyne, C. Barrett Ames, Daniel Sullivan
Problem Statement & Motivation Problem Statement Project Scope Project Objective Deliverables Behaviors Technical Requirements Limitations & Constraints
Input/Output Specification 0 = Game Initialization (followed by 3+Nx*Ny Integers) – Total Time available – Board Size – List of cell Status Numbers 1 = Request Move (followed by 1 integer) – Remaining time 2 = Opponent Move – Start Cell – End Cell 3 = Error 4 = End Game Input (Managed Via stdin)Output (Managed Via stdout) 0 = Move (followed by 3+2NIntegers) – Number of Hops – Start Cell Coordinates – If N>1, list coordinates of N-1 intermediate cells – End Cell Coordinate
Background Reading Artificial Intelligence: A Modern Approach Stuart RusselPeter Norvig
General Approach Where’s The AI? Adversarial Search Minimax algorithm Alpha-Beta pruning Real-Time Imperfect Decisions Reinforcement Learning Passive Learn utility functions for minimax
System Architecture Input System – Data Structure, API Learning System – Dependent Goal System – Build correct plans, dependent Output System – Independent, API
Evaluation Plans “Toy” Task: successfully move pieces to the other side of the board “Hard” Task: defeat a human player Possible evaluation metrics include the degree of grouping, efficiency measured as the number of jumps, and the number of moves needed to reach the goal state
Schedule Agile Programming – Individual sections due by Sunday September 11 th 1:00pm – Presentation and revisions done by Monday September 12 th 10:00pm – Preliminary proposal due September 13th 2011revisions done by Thursday September 15th at 10:00pm – Final proposal due September 16th 2011 – Agree upon API for I/O September 20 th – Create data structure using built-ins for java September 23 rd 10:00pm – Create output action functions with unit tests - Sept 23 rd 10:00pm – Create Opening moves system with unit tests - Sept 23 rd 10:00pm – Internal Code review / Performance Tests