Intelligent Agents CPS 4801-01 Outline • Agents and environments • PEAS (Performance measure, Environment, Actuators, Sensors) • Environment types • Agent types Agents • An AI program = An intelligent Agent • An agent is anything that can be viewed as perceiving its environment though sensors and acting upon that environment though actuators. • Perception-Action Cycle Application of Intelligent Agents • AI has successfully been used in o Finance? o Robotics? o Games? o Medicine? o The Web? AI in Finance Trading Agent Rates News Stock Market Bonds Commodities Market Trades AI in Robotics Robot Cameras Microphones Touch Environment Motors: wheels, legs, arms, grippers Voice • Physical actuators AI in Games • Chess game Game Agent Your moves You Its own moves • Characters in games AI in Medicine Diagnostic Agent Vital Signals: blood pressures, heart signals Diagnostics You Doctor • Simple Diagnostic Expert System: • http://familydoctor.org/familydoctor/en/healthtools/search-by-symptom.html AI and the Web Crawler Web Pages World Wide Web DB Query You • Percept: the agent’s perceptual inputs at any given instant • Percept Sequence: the complete history of everything the agent has ever perceived • The agent function maps from percept histories to actions: [f: P* A] (abstract) • The agent program runs on the physical architecture to produce f. (implementation) Vacuum-Cleaner World • Percepts: location and contents, e.g., [A, Dirty] • Actions: Left, Right, Suck, NoOp A Vacuum-Cleaner Agent Percept sequence Action [A, Clean] Right [A, Dirty] Suck [B, Clean] Left [B, Dirty] Suck [A, Clean] [A, Clean] Right [A, Clean] [A, Dirty] Suck … … [A, Clean] [A, Clean] [A, Clean] Right [A, Clean] [A, Clean] [A, Dirty] Suck … … A Vacuum-Cleaner Agent • function REFLEX-VACUUM-AGENT ([location,status]) returns an action if status = Dirty then return Suck else if location = A then return Right else if location = B then return Left Task Environment • PEAS: Performance measure, Environment, Actuators, Sensors • Consider the task of designing an automated taxi: • Performance measure: safety, destination, profits, legality, comfort… • Environment: US streets/freeways, traffic, pedestrians, weather… • Actuators: steering, accelerator, brake, horn, speaker/display… • Sensors: camera, sonar, GPS, odometer, engine sensor… Internet Shopping Agent • • • • Performance measure? Environment? Actuators? Sensors? Internet Shopping Agent • Performance measure? price, quality, appropriateness, efficiency • Environment? WWW sites, vendors, shippers • Actuators? display to user, follow URL, fill in form • Sensors? HTML pages (text, graphics, scripts) Environment Types • Fully observable (vs. partially observable): An agent’s sensors give it access to the complete state of the environment at each point in time. o Card game vs. poker (needs internal memory) • Deterministic (vs. stochastic): The next state of the environment is completely determined by the current state and the action executed by the agent. o Chess vs. game with dice (uncertainty, unpredictable) • 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. o Chess and taxi driving Environment Types • Static (vs. dynamic): The environment is unchanged while an agent is deliberation. (The environment is semidynamic if the environment itself does not change with the passage of time but the agent’s performance score does.) o Taxi driving vs. chess (when played with a clock) vs. crossword puzzles • Discrete (vs. continuous): A limited number of distinct, clearly defined percepts and actions. o Chess vs. taxi driving (infinite) • Single agent (vs. multiagent): An agent operating by itself in an environment. o Crossword puzzle vs. chess Solitaire Observable? Deterministic? Episodic? Static? Discrete? Single-agent? Chess with a clock Internet Shopping Taxi Solitaire Chess with a clock Internet Shopping Taxi Observable? Yes Yes Yes No Deterministic? Yes Yes No No Episodic? No No No No Static? Yes Semi Semi No Discrete? Yes Yes Yes No Single-agent? Yes No Yew No The real world is (of course) partially observable, stochastic, sequential, dynamic, continuous, multi-agent. Agent Types • • • • • Four basic types: - simple reflex agents - model-based reflex agents - goal-based agents - utility-based agents • All these can be turned into learning agents. Simple Reflex Agents Model-Based Reflex Agents Goal-Based Agents Utility-Based Agents Learning Agents Summary • Agents interact with environments though actuators and sensors. • The agent function describes what the agent does in all circumstances. • Agent programs implement agent functions. • PEAS descriptions define task environments. • Environment are categorized along several dimensions: o observable? deterministic? episodic? static? discrete? single-agent? • Several basic agent architectures exist: o reflex, reflex with state, goal-based, utility-based Try out some intelligent agents! • A Chatbot is a computer program designed to simulate an intelligent conversation with one or more human users via auditory or textual methods, primarily for engaging in small talk. • ALICE: http://alice.pandorabots.com/ o Won the Loebner Prize three times (in 2000, 2001 and 2004) • ELIZA: http://nlp-addiction.com/eliza/ o One of the classic chat bots, written at MIT by Joseph Weizenbaum between 1964 and 1966 • Automated online assistants