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 Stock Market Bonds Commodities Market Trading Agent Rates News Trades
AI in Robotics Physical actuators Environment Robot Cameras Microphones Touch Motors: wheels, legs, arms, grippers Voice
AI in Games Chess game Characters in games You Game Agent Your moves Its own moves
AI in Medicine You Diagnostic Agent Vital Signals: blood pressures, heart signals Diagnostics Doctor
AI and the Web World Wide Web CrawlerWeb Pages DB You Query
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 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 : P erformance measure, E nvironment, A ctuators, S ensors 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
SolitaireChess with a clock Internet Shopping Taxi Observable? Deterministic? Episodic? Static? Discrete? Single-agent?
SolitaireChess with a clock Internet Shopping Taxi Observable?Yes No Deterministic?Yes No Episodic?No Static?YesSemi No Discrete?Yes No Single-agent?YesNoYewNo 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
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 : o Won the Loebner Prize three times (in 2000, 2001 and 2004) ELIZA : o One of the classic chat bots, written at MIT by Joseph Weizenbaum between 1964 and 1966 Automated online assistants