Intelligent Agents Christian Jacob 1 Defining Agents 2 2 How Agents Should Act 3 2.1 Mapping from Percept Sequences to Actions 5 2.2 Autonomy 6 3 Designs of Intelligent Agents 7 3.1 Architecture and Program 7 3.2 Agent Programs 9 3.3 Simple Lookup? 11 3.4 Example — An Automated Taxi Driver 13 4 Types of Agents 15 4.1 Simple Reflex Agents 16 4.2 Agents that Keep Track of the World 19 4.3 Goal-Based Agents 22 4.4 Utility-Based Agents 24 5 Environments 26 5.1 Properties of Environments 26 5.2 Environment Programs 29 1 TOC Back
Defining Agents Christian Jacob 1 Defining Agents An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through effectors . sensors percepts ? environment agent actions effectors 2 First Back TOC Prev Next Last
How Agents Should Act Christian Jacob 2 How Agents Should Act Rational Agent A rational agent performs actions that cause the agent to be most successful, depending on a performance measure , which decides how and when to evaluate an agent. What is rational at any given time depends on four things: • The performance measure that defines degree of success • The percept sequence , a complete history of what the agent has perceived so far • The agent’s knowledge about the environment • The actions that the agent can perform This leads to a definition of an ideal rational agent ... 3 First Back TOC Prev Next Last
How Agents Should Act Christian Jacob Ideal Rational Agent For each possible percept sequence, an ideal rational agent should do • whatever action is expected to maximize its performance measure, • on the basis of the evidence provided by the percept sequence and • whatever built-in knowledge the agent has. Example: Crossing a busy road Doing actions in order to obtain useful information is an important part of rationality. The notion of an agent is meant to be a tool for analyzing systems . 4 First Back TOC Prev Next Last
How Agents Should Act Christian Jacob 2.1 Mapping from Percept Sequences to Actions Any particular agent can be described by making a table of the action it takes in response to each possible percept sequence. Such a list is called a mapping from percept sequences to actions. However, this does not mean that we have to create an explicit table with an entry for every possible percept sequence (compare the square root example). Percept x Action z function SQRT( x ) 1.0 1.000000 z := 1.0 /* initial guess */ 1.1 1.048808 repeat until | z 2 - x | < 10 -15 1.2 1.095445 1.3 1.140175 1.4 1.183215 z := z - ( z 2 - x ) / ( 2 z ) 1.5 1.224744 1.6 1.264911 end 1.7 1.303840 1.8 1.341640 return z 1.9 1.378404 . . . 5 First Back TOC Prev Next Last
How Agents Should Act Christian Jacob 2.2 Autonomy Assume an agent’s actions are based completely on built-in knowledge. Then it need not pay attention to its percepts. This agent clearly lacks autonomy . An agent’s behavior can be based on both its • own experience and • built-in knowledge A system is autonomous to the extent that its behavior is determined by its own experience. --> Agents should be provided with • initial knowledge (compare animal reflexes) and • the ability to learn . 6 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob 3 Designs of Intelligent Agents AI intends to design agent programs , functions that implement the agent mapping from percepts to actions. The computing device , we assume this program to run on, is referred to as the architecture . 3.1 Architecture and Program The architecture might include special-purpose hardware (camera, microphone,etc.). The software might provide a degree of insulation between the raw computer hardware and the agent program, enabling programming at a higher level. agent = architecture + program What matters is not the distinction between “real” and “artificial” environments, but the complexity of the relationship among the behavior of the agent, the percept sequence generated by the environment, and the goals that the agent is supposed to achieve. 7 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob Percepts and Actions for a Selection of Agent Types Agent Type Percepts Actions Goals Environment Medical diagno- Symptoms, find- Questions, Healthy patient, Patient, sis system ings, tests, minimize cost hospital patient’s answers treatments Satellite image Pixels of varying Print a categoriza- Correct catego- Image from analysis system intensity, tion of scene rization orbiting satellite color Part-picking Pixels of varying Pick up parts and sort Place parts in Conveyor belt robot intensity into bins correct bins with parts Refinery control- Temperature, Open, close valves; Maximizing Refinery ler pressure readings adjust temperature purity, yield, safety Interactive Typed words Print exercises, Maximize stu- Set of students English tutor suggestions, dent’s score on corrections test 8 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob 3.2 Agent Programs All agents and agent programs accept percepts from an environment and generate actions. function SKELETON-AGENT( percept ) returns action static : memory the agent’s memory of the world memory <--- UPDATE-MEMORY( memory, percept ) action <--- CHOOSE-BEST-ACTION( memory ) memory <--- UPDATE-MEMORY( memory, action ) return action 9 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob Remarks on agent programs: Percept sequence • The agent program receives only a single percept as its input. • It is up to the agent to build up the percept sequence in memory. Performance measure • The goal or performance measure is not part of the agent program. • The performance evaluation is applied externally . 10 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob 3.3 Simple Lookup? A lookup table is the simplest possible way of writing an agent program. It operates by keeping in memory its entire percept sequence, and using it to index into table , which contains the appropriate action for all possible percept sequences. function TABLE-DRIVEN-AGENT( percept ) returns action static : percepts , a sequence, initially empty table , a table, indexed by percept sequences, initially fully specified append percept to the end of percepts action <--- LOOKUP( percepts, table ) return action 11 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob Why is this TABLE-DRIVEN AGENT proposal doomed to failure? • Table size: The table needed for something as simple as an agent that can only play chess would be about 35 100 entries. • Time to build: It would take an enormous amount of time to build complete tables. • Lack of autonomy: The agent has no autonomy at all, because the calculation of best actions is entirely built-in. If the environment changed in some unexpected way, the agent would be lost. • Lack or infeasibility of learning: Even if the agent were given a learning mechanism, so that it could have a degree of autonomy, it would take forever to learn the right value for all the table entries. 12 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob 3.4 Example — An Automated Taxi Driver The full driving task is extremely open-ended . There is no limit to the novel combination of circumstances that can arise. First, we have to think about the percepts, actions, goals and environment for the taxi. Agent Type Percepts Actions Goals Environment Taxi driver Cameras, Steer, Safe, Roads, speedometer, accelerate, fast, other traffic, GPS, brake, legal, pedestrians, sonar, talk to passenger, comfortable trip, customers microphone communicate with maximize profits other vehicles 13 First Back TOC Prev Next Last
Designs of Intelligent Agents Christian Jacob Performance measures for the taxi driver agent: • Getting to the correct destination • Minimizing fuel consumption and wear and tear • Minimizing the trip time and/or cost • Minimizing violations of traffic laws • Minimizing disturbances to other drivers • Maximizing safety and passenger comfort • Maximizing profits Obviously, some of these goals conflict, so there will be trade-offs involved. Driving environments: • local roads or highways • weather conditions • left or right lane driving • … 14 First Back TOC Prev Next Last
Types of Agents Christian Jacob 4 Types of Agents We have to decide how to build a real program to implement the mapping from percepts to action for the taxi driver agent. Different aspects of driving suggest different types of agent programs. We will consider four types of agent programs: • Simple reflex agents • Agents that keep track of the world • Goal-based agents • Utility-based agents 15 First Back TOC Prev Next Last
Recommend
More recommend