AI a modern approach, Epoch 2: Intelligent Agents

 

In this article we will dive further deep into the AI. Considering the further part of the Russell and Norvig book for our reference.

AGENTS AND ENVIRONMENTS

 

An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through actuators. A human agent has eyes, ears, and other organs for sensors and hands, legs, vocal tract, and so on for actuators. A robotic agent might have cameras and infrared range finders for sensors and various motors for actuators. We use the term percept to refer to the agent’s perceptual inputs at any given instant.



GOOD BEHAVIOR: THE CONCEPT OF RATIONALITY

 

A rational agent is one that does the right thing—conceptually speaking, every entry in the table for the agent function is filled out correctly. Consider an intelligent vacuum cleaner, its role would be to clean the dirt in home. If it starts to clean the home, on what basis will its performance be measured? It won’t be rational to consider the performance if it cleans the dirt and spreads it all over again and then again cleans it. It wouldn’t count as rational. In rational condition an automated vacuum cleaner’s performance will be based on the noise it produces, how fast it cleans, how minimal is its electricity consumed. If it is intelligent enough to reduce the noise and decrease the electric power consumption, it has a reward and penalty in its software which would calculate the electric power consumed and hit a penalty if its above certain threshold, it would reward the software to be below certain value. The software been designed also to earn rewards and not penalties. This example would lead to a perfect rational agent. As in the above diagram, environment plays an important role in the rationality, as any agent would be perfect if it has its own task to be achieved but considering the environment and perception from define the actions of the agent.

 

Rationality

 

What is rational at any given time depends on four things: 

    The performance measure that defines the criterion of success.

    The agent’s prior knowledge of the environment.

    The actions that the agent can perform.

    The agent’s percept sequence to date.

This leads to a definition of a 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. 

We need to be careful to distinguish between rationality and omniscience. An omniscient agent knows the actual outcome of its actions and can act; accordingly, but omniscience is impossible in reality.

Rationality is not the same as perfection. Rationality maximizes expected performance, while perfection maximizes actual performance. Doing actions in order to modify future percepts—sometimes called information gathering.

As in the above example of the vacuum cleaner agent, we need to understand that the change in the perception of the agent will only be achieved if it learns. Learning comes with the information gathering process and is provided by the exploration that must be undertaken by a vacuum cleaning agent in an initially known environment. Environment being a vital part for the agent.

The agent’s initial configuration could reflect some prior knowledge of the environment, but as the agent gains experience this may be modified and augmented. There are extreme cases in which the environment is completely known a priori. In such cases, the agent need not perceive or learn; it simply acts correctly. 

To the extent that an agent relies on the prior knowledge of its designer rather than on its own percepts, we say that the agent lacks autonomy. A rational agent should be autonomous—it should learn what it can to compensate for partial or incorrect prior knowledge. For example, a vacuum-cleaning agent that learns to foresee where and when additional dirt will appear will do better than one that does not.

THE NATURE OF ENVIRONMENTS

Task Environment: The “problems” to which rational agents are the “solutions.”

 In our discussion of the rationality of the simple vacuum-cleaner agent, we had to specify the performance measure, the environment, and the agent’s actuators and sensors. We group all these under the heading of the task environment. For the acronymically minded, we call PEAS (Performance, Environment, Actuators, Sensors).


For example, if we consider the Autonomous vehicle, for the as the agent then, what would be its performance measure? It would be how safe it is, how comfortable is the journey, is the total autonomous vehicle experience optimum in all the means. Further, the environment would be the roads, traffic, pedestrians, different terrains. Actuators would be Steering, accelerator, brake, signal, display, etc. Sensors would be Camera, LIDAR, GPS, Odometer, speedometer, engine, or motor/battery sensors, etc.

Instead of this the Softbots or chatbots would definitely be considered as the software agents which also need the Natural language processing and learning for the same.

 

Properties of task environments

Fully observable vs. partially observable:

If an agent’s sensors give it access to the complete state of the environment at each point in time, then we say that the task environment is fully observable. A task environment is effectively fully observable if the sensors detect all aspects that are relevant to the choice of action; relevance, in turn, depends on the performance measure. Fully observable environments are convenient because the agent need not maintain any internal state to keep track of the world. An environment might be partially observable because of noisy and inaccurate sensors or because parts of the state are simply missing from the sensor data. If the agent has no sensors at all then the environment is unobservable.

 

Single agent vs. multiagent:

The distinction between single-agent and multiagent environments may seem simple enough. For example, an agent solving a crossword puzzle by itself is clearly in a single-agent environment, whereas an agent playing chess is in a two-agent(multiagent) environment.

 

Deterministic vs. stochastic:

If the next state of the environment is completely determined by the current state and the action executed by the agent, then we say the environment is deterministic; otherwise, it is stochastic. Most real situations are so complex that it is impossible to keep track of all the unobserved aspects; for practical purposes, they must be treated as stochastic.

 

Episodic vs. sequential:

In an episodic task environment, the agent’s experience is divided into atomic episodes. In each episode the agent receives a percept and then performs a single action. Crucially, the next episode does not depend on the actions taken in previous episodes. Many classification tasks are episodic. In sequential environments, on the other hand, the current decision could affect all future decisions.

 

Static vs. dynamic:

If the environment can change while an agent is deliberating, then we say the environment is dynamic for that agent; otherwise, it is static.

 

Discrete vs. continuous:

The discrete/continuous distinction applies to the state of the environment, to the way time is handled, and to the percepts and actions of the agent.

 

Known vs. unknown:

Strictly speaking, this distinction refers not to the environment itself but to the agent’s (or designer’s) state of knowledge about the “laws of physics” of the environment. In a known environment, the outcomes (or outcome probabilities if the environment is stochastic) for all actions are given. Obviously, if the environment is unknown, the agent will have to learn how it works in order to make good decisions. 

As one might expect, the hardest case is partially observable, multiagent, stochastic, sequential, dynamic, continuous, and unknown. Autonomous driving vehicle case is the same.

 

 THE STRUCTURE OF AGENTS

 

The job of AI is to design an agent program that implements the agent function—the mapping from percepts to actions. We assume this program will run on some sort of computing device with physical sensors and actuators—we call this the architecture: agent = architecture + program.

Agent Programs:

The agent program takes just the current percept as input because nothing more is available from the environment; if the agent’s actions need to depend on the entire percept sequence, the agent will have to remember the percepts. 

In the remainder of this section, we outline four basic kinds of agent programs that embody the principles underlying almost all intelligent systems: 

  •         Simple reflex agents.
  •         Model-based reflex agents.
  •         Goal-based agents.
  •         Utility-based agents. 

Simple reflex agents:

It is the simplest kind of agent. These agents select actions based on the current percept, ignoring the rest of the percept history. We call such a connection a condition–action rule, written as if car-in-front-is-braking then initiate-braking.


Model-based reflex agents:

The most effective way to handle partial observability is for the agent to keep track of the part of the world it can’t see now. 



That is, the agent should maintain some sort of internal state that depends on the percept history and thereby reflects at least some of the unobserved aspects of the current state. Updating this internal state information as time goes by requires two kinds of knowledge to be encoded in the agent program. First, we need some information about how the world evolves independently of the agent. Second, we need some information about how the agent’s own actions affect the world. This knowledge about “how the world works”—whether implemented in simple Boolean circuits or in complete scientific theories—is called a model of the world. An agent that uses such a model is called a model-based agent.

 

Goal-based agents:

Knowing something about the current state of the environment is not always enough to decide what to do. the agent needs some sort of goal information that describes situations that are desirable. The agent program can combine this with the model.

 

Utility-based agents:

An agent’s utility function is essentially an internalization of the performance measure. If the internal utility function and the external performance measure are in agreement, then an agent that chooses actions to maximize its utility will be rational according to the external performance measure. a utility-based agent has many advantages in terms of flexibility and learning.




Learning agents:


 
The performance element, which is responsible for selecting external actions. The performance element is what we have previously considered to be the entire agent: it takes in percepts and decides on actions. The learning element uses feedback from the critic on how the agent is doing. The learning element uses feedback from the critic on how the agent is doing and determines how the performance element should be modified to do better in the future. The critic tells the learning element how well the agent is doing with respect to a fixed performance standard. The critic is necessary because the percepts themselves provide no indication of the agent’s success.

The last component of the learning agent is the problem generator. It is responsible for suggesting actions that will lead to new and informative experiences. The point is that if the performance element had its way, it would keep doing the actions that are best, given what it knows.

 

All agents can improve their performance through learning.




Comments

Popular posts from this blog

Epoch 3: Solving problems by searching

My Notes Day 3

My notes Day 1