CS541 Artificial Intelligence Lecture I: Introduction and Intelligent Agent Self-introduction Prof. Gang Hua 华刚 Associate Professor in Computer Science Stevens Institute of Technology Research Staff Member (07/2010—08/2011) IBM T J. Watson Research Center Senior Researcher (08/2009—07/2010) Nokia Research Center Hollywood Scientist (07/2006—08/2009) Microsoft Live Labs Research Ph.D. in ECE, Northwestern University, 06/2006 Course Information (1) CS541 Artificial Intelligence Term: Fall 2012 Instructor: Prof. Gang Hua Class time: Wednesday 6:15pm—8:40pm Location: Babbio Center/Room 210 Office Hour: Wednesday 4:00pm—5:00pm by appointment Office: Lieb/Room305 Course Assistant:Yizhou Lin Course Website: http://www.cs.stevens.edu/~ghua/ghweb/ cs541_artificial_intelligence_fall_2012.htm Course Information (2) Text Book: Stuart Russell and Peter Norvig, “Artificial Intelligence: A Modern Approach”, Third Edition, Prentice Hall, December 11, 2009 (Required) Grading: Class Participation: 10% 5 Homework: 50% (including a midterm project) Final Project & Presentation: 40% Schedule Week Date Topic Reading Homework** 1 08/29/2012 Introduction & Intelligent Agent Ch 1 & 2 N/A 2 09/05/2012 Search: search strategy and heuristic search Ch 3 & 4s HW1 (Search) 3 09/12/2012 Search: Constraint Satisfaction & Adversarial Search Ch 4s & 5 & 6 Teaming Due 4 09/19/2012 Logic: Logic Agent & First Order Logic Ch 7 & 8s HW1 due, Midterm Project (Game) 5 09/26/2012 Logic: Inference on First Order Logic Ch 8s & 9 6 10/03/2012 No class 7 10/10/2012 Uncertainty and Bayesian Network 8 10/17/2012 Midterm Presentation 9 10/24/2012 Inference in Baysian Network Ch 14s 10 10/31/2012 Probabilistic Reasoning over Time Ch 15 11 11/07/2012 Machine Learning 12 11/14/2012 Markov Decision Process Ch 18 & 20 13 11/21/2012 No class Ch 16 14 11/29/2012 Reinforcement learning Ch 21 15 12/05/2012 Final Project Presentation Ch 13 & Ch14s HW2 (Logic) Midterm Project Due HW2 Due, HW3 (Probabilistic Reasoning) HW3 due, HW4 (Probabilistic Reasoning Over Time) HW4 due Final Project Due Rules Need to be absent from class? Late submission of homework? 1 point per class: please send notification and justification at least 2 days before the class The maximum grade you can get from your late homework decreases 50% per day Zero tolerance on plagiarism!! You receive zero grade Introduction & Intelligent Agent Prof. Gang Hua Department of Computer Science Stevens Institute of Technology ghua@stevens.edu Introduction to Artificial Intelligence Chapter 1 What is AI? Systems thinking humanly Systems thinking rationally Systems acting humanly Systems acting rationally Acting humanly: Turing Test Turing (1950) "Computing machinery and intelligence": "Can machines think?" "Can machines behave intelligently?" Operational test for intelligent behavior: the Imitation Game Predicted that by 2000, a machine might have a 30% chance of fooling a layperson for 5 minutes Anticipated all major arguments against AI in following 50 years Suggested major components of AI: knowledge, reasoning, language understanding, learning, Total Turing test: adding vision and robotics Problem: Turing test is not reproducible, constructive, or amenable to mathematical analysis Thinking humanly: cognitive modeling 1960 "cognitive revolution": information-processing psychology replaced prevailing orthodoxy of behaviorism Requires scientific theories of internal activities of the brain What levels of abstraction? "Knowledge" or "circuits"? How to validate? Requires Predicting and testing behavior of human subjects (top-down) Direct identification from neurological data (bottom-up) Both approaches (roughly, Cognitive Science and Cognitive Neuroscience) are now distinct from AI Both share one principal direction with AI: The available theories do not explain anything resembling human-level general intelligence Thinking rationally: "laws of thought" Aristotle: what are correct arguments/thought processes? Several Greek schools developed various forms of logic: notation and rules of derivation for thoughts; They may or may not have proceeded to the idea of mechanization Direct line through mathematics and philosophy to modern AI Problems: Not all intelligent behavior is mediated by logical deliberation What is the purpose of thinking? What thoughts should I have out of all the thoughts (logical or otherwise) that I could have? Acting rationally: rational agent Rational behavior: doing the right thing The right thing: that which is expected to maximize goal achievement, given the available information Doesn't necessarily involve thinking – e.g., blinking reflex – but thinking should be in the service of rational action Aristotle (Nicomachean Ethics): Every art and every inquiry, and similarly every action and pursuit, is thought to aim at some good Rational agents An agent is an entity that perceives and acts This course is about designing rational agents Abstractly, an agent is a function from percept histories to actions: For any given class of environments and tasks, we seek the agent (or class of agents) with the best performance Caveat: computational limitations make perfect rationality unachievable design best program for given machine resources AI prehistory Philosophy Mathematics Building fast computers Control theory Phenomena of perception and motor control, experimental techniques Computer engineering Physical substrate for mental activity Psychology Utility, decision theory Neuroscience Formal representation and proof algorithms, computation, (un)decidability, (in)tractability, probability Economics Logic, methods of reasoning, mind as physical system, foundations of learning, language, rationality Design systems that maximize an objective function over time Linguistics knowledge representation, grammar Abridged history of AI 1943 1950 1956 1952—69 1950s 1965 1966—74 1969—79 1980—88 1988—93 1985—95 1988— 1995— 2003— McCulloch & Pitts: Boolean circuit model of brain Turing's "Computing Machinery and Intelligence" Dartmouth meeting: "Artificial Intelligence" adopted Look, Ma, no hands! Early AI programs, including Samuel's checkers program, Newell & Simon's Logic Theorist, Gelernter's Geometry Engine Robinson's complete algorithm for logical reasoning AI discovers computational complexity Neural network research almost disappears Early development of knowledge-based systems Expert systems industry boom Expert systems industry busts: "AI Winter" Neural networks return to popularity Resurgence of probability; AI becomes science The emergence of intelligent agents Human-level AI back on the agenda State of the art Deep Blue defeated the reigning world chess champion Garry Kasparov in 1997 Proved a mathematical conjecture (Robbins conjecture) unsolved for decades No hands across America (driving autonomously 98% of the time from Pittsburgh to San Diego) During the 1991 Gulf War, US forces deployed an AI logistics planning and scheduling program that involved up to 50,000 vehicles, cargo, and people NASA's on-board autonomous planning program controlled the scheduling of operations for a spacecraft Proverb solves crossword puzzles better than most humans iRobot corporated in 2000: Roomba & Scooba Google cars automatically are driving in the city to collect stree-tview images Watson whips Brad Rutter and Ken Jennings in Jeopardy in 2011! DeepBlue & Watson (DeepQA) DeepBlue Watson (DeepQA) Intelligent Agent Chapter 2 Outline Agents and environments Rationality: what is a rational agent? PEAS (Performance measure, Environment, Actuators, Sensors) Environment types Agent types Agents An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through actuators Human agent: eyes, ears, and other organs for sensors; hands, legs, mouth, and other body parts for actuators Robotic agent: cameras and infrared range finders for sensors; various motors for actuators Agents and environments The agent function maps from percept histories to actions: The agent program runs on the physical architecture to produce f agent = architecture + program Vacuum-cleaner world Percepts: location and contents, e.g., [A,Dirty] Actions: Left, Right, Suck, NoOp Rational agents (1) An agent should strive to "do the right thing", based on what it can perceive and the actions it can perform. The right action is the one that will cause the agent to be most successful Performance measure: An objective criterion for success of an agent's behavior E.g., performance measure of a vacuum-cleaner agent could be: Amount of dirt cleaned up in time T? Amount of dirt cleaned up minus the amount of electricity consumed in time T? Amount of time taken to clean a fixed region? Rational agents (2) Rational Agent: For each possible percept sequence, a rational agent should select an action that is expected to maximize its performance measure, given the evidence provided by the percept sequence and whatever built-in knowledge the agent has. Rational agents (3) Rationality is distinct from omniscience (all-knowing with infinite knowledge) Agents can perform actions in order to modify future percepts so as to obtain useful information (information gathering, exploration) An agent is autonomous if its behavior is determined by its own experience (with ability to learn and adapt) PEAS (1) PEAS: Performance measure, Environment, Actuators, Sensors To design a rational agent, we must first specify the task environment Consider, e.g., the task of designing an automated taxi driver: Performance measure?? Environment?? Actuators?? Sensors?? PEAS (2) To design a rational agent, we must first specify the task environment Consider, e.g., the task of designing an automated taxi driver: Performance measure: Safe, fast, legal, comfortable trip, maximize profits Environment: Roads, other traffic, pedestrians, customers Actuators: Steering wheel, accelerator, brake, signal, horn Sensors: Cameras, sonar, speedometer, GPS, odometer, engine sensors, keyboard PEAS (3) Agent: Internet shopping agent Performance measure: price, quality, appropriateness, efficiency Environment: current and future WWW sites, vendors, shippers Actuators: display to user, follow URL, fill in form Sensors: HTML pages (text, graphics, scripts) PEAS (4) Agent: Part-picking robot Performance measure: Percentage of parts in correct bins Environment: Conveyor belt with parts, bins Actuators: Jointed arm and hand Sensors: Camera, joint angle sensors PEAS (5) Agent: Interactive English tutor Performance measure: Maximize student's score on test Environment: Set of students Actuators: Screen display (exercises, suggestions, corrections) Sensors: Keyboard Environment types (1) Fully observable (vs. partially observable): An agent's sensors give it access to the complete state of the environment at each point in time. Deterministic (vs. stochastic): The next state of the environment is completely determined by the current state and the action executed by the agent. (If the environment is deterministic except for the actions of other agents, then the environment is strategic) Episodic (vs. sequential): The agent's experience is divided into atomic "episodes" (each episode consists of the agent perceiving and then performing a single action), and the choice of action in each episode depends only on the episode itself. Environment types (2) Static (vs. dynamic): The environment is unchanged while an agent is deliberating. (The environment is semidynamic if the environment itself does not change with the passage of time but the agent's performance score does) Discrete (vs. continuous): A limited number of distinct, clearly defined percepts and actions. Single agent (vs. multiagent): An agent operating by itself in an environment. Environment types (3) Solitaire Backgammon Internet Shopping Taxi Observable? Yes Yes No No Deterministic? Yes No Partly No Episodic? No No No No Static? Yes Semi Semi No Discrete? Yes Yes Yes No Single Agent? Yes No Yes (except auction) No The environment type largely determines the agent design The real world is (of course) partially observable, stochastic, sequential, dynamic, continuous, multi-agent Agent functions and programs An agent is completely specified by the agent function mapping percept sequences to actions One agent function (or a small equivalence class) is rational Aim: find a way to implement the rational agent function concisely Table-lookup agent Drawbacks: Huge table Take a long time to build the table No autonomy Even with learning, need a long time to learn the table A vacuum-cleaner agent What is the right function? Can it be implemented in a small agent program? Agent types Four basic types (with increasing generality): Simple reflex agents Model-based reflex agents Goal-based agents Utility-based agents All of them can be transformed into learning agent Simple reflex agents The action to be selected only depends on the most recent percept, not a sequence These agents are stateless devices which do not have memory of past world states Model-based reflex agents Have internal state which is used to keep track of past states of the world Can assist an agent deal with some of the unobserved aspects of the current state Goal-based agents Agent can act differently depending on what the final state should look like E.g., automated taxi driver will act differently depending on where the passenger wants to go Utility-based agents An agent's utility function is an internalization of the external performance measure They may differ if the environment is not completely observable or deterministic Learning agents Learning agent cuts across all of the other types of agents: any kind of agent can learn iRobot Roomba Demo Summary Agents interact with environments through actuators and sensors The agent function describes what the agent does in all circumstances The performance measure evaluates the environment sequence A perfectly rational agent maximizes expected performance Agent programs implement (some) agent functions PEAS descriptions define task environments Environments are categorized along several dimensions: Observable? Deterministic? Episodic? Static? Discrete? Single-agent? Several basic agent architectures exist: Reflex, Reflex with state, goal-based, utility-based Candidate projects Midterm Project: Mastermind (midterm) http://en.wikipedia.org/wiki/Mastermind_%28board_game%29 Final Projects: Reversi (Othello) http://en.wikipedia.org/wiki/Reversi