Vous êtes sur la page 1sur 5

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.

ORG

104

SOAR AGENTS
Dr.S.Srinivasan, Ms Nitin Bansal , Mr Vivek Jaglan, and Mr Sujit Kumar Singh
Abstract This paper intends to investigate Soar architecture to work on the full range of tasks like an intelligent agent from a highly routine to difficult and unexpected problems . Also to understand how Soar agent uses appropriate forms of knowledge such as procedural , declarative and episodic also to apply all possible methods by interacting with outside world and at the same time how Soar agent acquires knowledge by performing such tasks . Our intention is to find out all the capabilities that Soar agent possesses . The world is very complex place for general intelligent agents to act . The aim of our work is to study various environments under which the Soar agent performs . Also our focus is to study Memory ,knowledge and knowledge representation that are handled by Soar agent . Ultimately various parameters are considered for evaluating soar agent . The design of Soar can be seen as an investigation of all such capabilities , environments , knowledge and knowledge representations.

Index Terms BDI, subgoal and chunking

1.INTRODUCTION
SOAR was designed by Laird, Newell and Rosen bloom. It is the oldest and largest AI development efforts from 1983[2]. Newell made it a developing Architectures for intelligent agents (1990). SOAR and BDI (Belief , desire and intention ) have a lot of commonalities. SOAR means STATE OPERATOR AND RESULT. Soar use all capabilities to be handled by an intelligent agent from highly routine to open-ended problems. It uses symbols (it process symbols only ) . The underlying SOAR architecture is Symbolic System. SOAR follows Physical symbolic System Hypothesis (PSSH). Soar is based on production system. The production rule is to govern behavior. Production system uses problem space . Problem space means set of all (possible) states and a set of operators. Operators transforms a particular state with in problem space to another state in the same space .It has initial state and desired state (goal state). Operators are iteratively applied to reach goal . The sequence of steps from the initial state to goal state forms the solution or behavioral path . It uses chunking (a way of learning) and sub goaling. It uses appropriate knowledge (depends on the problem) such as procedural, declarative, episodic and semantic . SOAR uses full capabilities when it tries to solve problems. program), wont play checkers or plan a trip or do much of anything else, just as an empty spreadsheet wont perform any calculations. The way that Soar would use the knowledge in each model would be constrained by the Soar theory, language, and system. But the models could still be very different.

2.1Productions:Soars Way of Representing Knowledge


In programming language terms, Soar is a production system. Productions are if-then pairs. Here are some simple examples, in English: IF the alarm is ringing THEN get up. IF youre planning a vacation THEN check the vehicle. IF its a small, white, smoking cylinder THEN its a cigarette. In a Soar program, all knowledge about the world and what to do there is encoded as productions. Theyre written in the Soar . When a Soar program runs under the Soar system, the THEN side of each production is acted on whenever the IF side matches the current state of the world. With the right productions, a Soar agent can solve any problem or perform any mental task that a human could at least, that is the theory. The first two productions above have a special status in Soar. They represent operators. Operators cause things to happen, either in the real world or in the imagination. Deciding on operators and applying them is a fundamental part of the Soar theory. But it is all done with productions. Subgoaling: Soars Special Approach to Conflict Resolution Here are some productions that would help the Sam officer model decide what to do on some days : IF it is a holiday THEN Sam goes to religious places IF it is a Friday THEN Sam goes to a movie Now how should Sam behave if Holiday falls on a Friday? The model would have whats technically called a conflict resolution problem. Two productions match the current conditions, but they suggest conflicting actions: skip movie versus going to religious place . There are lots of ways this might be handled, most of which were tried in production systems before Soar. For example, the model might pick the production that was used least recently, or it might pick at random, or it might pick the production that had been most useful in the past. Soar (the system and the theory) takes a unique and important approach to this situation. It considers the THEN side of all productions that could be applied under the current conditions. If theres an unre-

2.SOAR
The Soar theory describes cognition: how people think. It focuses especially on how they solve problems and how they learn. The Soar language is a specialized programming language, based on the Soar theory. It is designed to describe the knowledge people have about the world, and how that knowledge is mentally represented. A Soar program, or model, is a description of the knowledge the facts, skills, and concepts that a person (or a machine) would need to think about and solve a specific problem, such as playing checkers or planning a plane trip. The Soar system runs models written in the Soar language. The Soar system by itself, without a model (a
Dr.S.SrinivasanProfessor Department of Computer Applications, PDMCE Bahadurgarh, India Ms.Nitin Bansal Asst.Professor Department of Computer Applications, PDMCE Bahadurgarh, India Mr.Vivek Jaglan Asst.Professor, IT Department , GITM, Gurgaon, India Mr.Sujit Kumar Singh Asst.Professor Department of Computer Applications, PDMCE Bahadurgarh, India

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

105

solved conflict over what to do, it suspends work on its current problem and applies itself to resolving that conflict. But that problem has produced a tie between two suggested actions movie and religious places so resolving that tie becomes the new current problem. The old problem of controlling the days activity is not forgotten. It is just postponed until the movie/religious places issue is resolved. The technique of setting the main problem aside in order to work on a lesser problem that is blocking progress is called subgoaling. When the Soar system creates a subgoal, it changes the state of the world in its internal representation. Specifically, the world includes all the facts it included before, but it now also includes the fact that the current problem is to resolve the question that is blocking progress. Because this is part of the state of the world, it is something that the IF side of productions can match. So, if the model has a production that tells what to do if two day proposals are tied, that production will now be applicable. For example, Sam might have this production: IF resolving a tie between movie and religious THEN always prefer religious places. That will resolve the movie/religious places issue, so the Soar system can forget about the subgoal and get back to the main problem of controlling its days activities. Of course, the next action is now specified, so the system can deal with whatever problem arises after that, such as controlling its exercise routine. If an agent may find it has no available options or has conflicting information about its options, Soar responds to these impasses and automatically creates new problem space, in which the desired goal is to resolve the impasse. The agent can now bring new knowledge to bear on the problem. It might use planning knowledge to consider the future and determine an appropriate course for this particular situation Automatic subgoaling leads to a hierarchy of distinct states; agents can use multiple problem spaces simultaneously, and knowledge can be created that is specific to the unique states. This process of hierarchical decomposition narrows a potentially exponential number of considerations into a much smaller set of choices (Erol, Hendler, & Nau, 1994). Let's consider an eample for subgoaling. Suppose a robot have to move a table with a printer on it , from room A to room B. Rules are as follows: 1. if table is clear and is in room A then scroll it to room B. if printer is in your hand then move towards room B with the printer. 2. if you are in room B with the printer in your hand and table is also there then put down the printer on table. Now , to solve this problem start from rule 1. it said if table is clear but our table is not clear, there is printer on it. So, our subgoal is to clear the table and after completing this subgoal move to the main problem. To complete this subgoal we will make another operator i.e. n1. if table have any object on it then pick up that object from the table and put it down on the floor. After applying this operator our subgoal is fulfilled and we move to the rule 1 again. Now, our rule having its if part (i.e. table is clear now) and then part also gets done. But we are not on the final solution. For rule 2. our subgoal is that printer should be in robot's hand. For this we will make another operator . n2. if robot arm is empty and is in room A then pick the printer up in his hands. So, by using this operator our rule 2 also gets executed and as a places

result robot will be in room B with the printer ( the part of rule 2). Now, let's work on rule 3. no, need to have a sub goal for this rule because its if part is matched with the situation & we will have the then part as a result and finally solve the problem. Subgoaling is a powerful technique, and Soar does this whenever it cant decide what else to do. Sometimes it cant decide because two or more suggested actions seem equally appropriate, as in the example. Other times no action at all is proposed, or an action has been decided on but no productions apply that tell Soar how to do it. If Soar runs into further trouble while working on a subgoal, it will just create another subgoal a sub-subgoal and try to deal with that. It can create as many levels of subgoals as it needs.

2.2 Chunking : Learning Through Subgoaling


Soar has the ability to learn from its deliberations. Every time Soar resolves a problem in a subgoal, it remembers the solution. The next time the same problem occurs, that memory is available and Soar can avoid the time and trouble of working in the subgoal. It may even learn general principles from solving specific problems for example, it might learn to reach for its phone book when planning any long trip, not just trips to Paris or other places it had thought about before. The memory of past problem solving in Soar is stored as chunks. Chunks are nothing more than productions produced by the Soar system instead of the programmer. The chunk learned by the robot officer would say: IF movie and religious places are both possible actions THEN choose religious places . The chunks IF side includes exactly those facts used for problem solving in the subgoal , it wont include other things that might be true at the time, such as the fact that its noon and Friday and Holiday . The THEN side describes the result of the problem solving. In the table moving example, rule n1 & n2 are the chunks which are produced by the SOAR system. The chunk will apply as soon as the two actions are considered, without subgoaling. Once a chunk is formed, the Soar system treats it exactly as it treats the productions written by the programmer. In fact, the Soar theory holds that all knowledge, or at least all except a few very basic productions, is learned through chunking. We present an example of Sub-sub Goal Sam wants to get down from 12 Floor to ground floor for dinner. And set of rules are as follows: 1 If it is 9'0 clock then it is time for dinner. 2 if the person is on upper floors then he has to go to ground floor for dinner. 3 If lift is working then person choose lift & get inside it. 4 If lift is chosen then button is pressed to bring it in position(Floor) where person is. 5 If doors of lift are opened then go inside. 6 If ground floor's button is pressed then lift moves downwards. 7 If ground floor is reached then doors of lift will open. Let's start with Rule1 : Succeeded (it is 9'0 clock.) th Rule 2: Succeeded (person is on 12 floor.) Rule 3 : not succeeded...... th To fulfill this rule the lift should be on 12 floor (Subgoal ) it is resolved by using rule 4. to get inside lift's door should be opened .(Sub Subgoal)
th

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

106

it is resolved by using rule 5. Hence Rule 3 is Succeeded. Rule 6: Succeeded (Button is pressed.) Rule 7 : Succeeded (now Sam is on ground floor & can enjoy his dinner.) Fig.1 shows how new productions are created as chunks when Soar encounters new problems Chunking SOAR creates new Productions

Table 1: Capabilities of Agents

Soar Capability Single Learning Method Multi-Method Learning Caching Learning by Inst. Learning by Expert. Learning by Analogy Inductive Learning and Concept Acquisition Abstraction Explanation-based learning Transfer of Learning Planning Problem Solving Replanning Support of Multiple, Simultaneous Goals Y Y Y Y Y Y Y Y Y Y Y Y

Addition Chunks

of

Set of Production Rules (If Then rules)

N o

Infrerence Engine (Elaboration)

Self Reflection Meta-Reasoning Expert System Capability Rul es Mat che d Inductive and deductive Reasoning Prediction Query Answering and providing Explanations for Decisions Navigational Strategies Natural Language Understanding Learning by Perception Support for Inaccurate sensing Robotic Tasks Y Real-time Execution Focused Behavior and Processing / Selective Attentions Goal Reconstruction Responding Intelligently to Interrupts and Failures Y Y Y Y Y Y Y

Percep cep-

Working Memory

y e s Action

Subgoal solved

Human-like Math Capability

Subgoal

3. ENVIRONMENT
The world itself is a very of the total possible environmental complexity by acting in particular domains. For example, some architecture complex place for architecture agents to act in. Most architecture are designed to only deal with fractions assume that the world is static and that the only things that change in the world are via an agent's actions. An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through actuator [1]. A Vacuum cleaner agent is a reactive agent which means it responds when it senses dirt on the floor . Where as a Taxi Driver agent should behave in a different way since its environment is entirely different. It is a Goal directed agent .[5 ] It has to keep all the percepts it receives in its knowledge base . In this section various environments with which the agents have to work are discussed. In table-2 , Rows indicate the environments and the column indicates

Fig.1

y e s

3. CAPABILITIES.
The capability ares broadly split as learning, planning,problem solving and resoning. In the following Table -1 the rows represent the capabilityes and the coloum N corresponds to SOAR architecture. In the cells Y indicate that SOAR possess, the capability represented by the row

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

107

soar architecture . Y in the cell means that the soar architecture the environment represented by the row. Table 3: Memory Knowledge representation Table 2: Environment of Agents
Soar Static Environment Dynamic Environment Consistent Environment Simulated Environment Real World Environment Complex Environment Knowledge-Rich Environment Input-Rich Environment Limited Resources Complex Knowledge Un-predictable Asynchronous Concurrent Varying Priority Limited Response Time Multiple Tasks Supervisor Y Y Y Y Y Y Y Y Y Memory , Knowledge & Representation Forward & Back-ward Chaining Impasse-driven Control Serial Processing Parallel Processing Asynchronous Processing Interruptible Processing Open-Loop processing Closed -Loop Processing Hierarchical Organization Modular Organization Symbolic World Model Size of the Knowledge Base Glass Box approach Black Box Approach Declarative Representation Procedural Representation Global Representation Uniform Access to Knowledge Knowledge Consistency Homogenous (Uniform) Knowledge Representation Heterogeneous Knowledge Representation No-Explicit Representation Associate Memory Episodic Knowledge Meta-Knowledge First-Order Logic Representation Strips like operators representation Frame - Like Representation Network representation Y Y Y Y Y Y Y Y Soar

Y Y Y Y

5. MEMORY, KNOWLEDGE AND KNOWLEDGE REPRESENTATION


Here the focus is to study Memory , Knowledge and Knowledge representation are handled by Agent architecture . The aim of the paper is to understand the various Knowledge Representations that agents should adapt generally . Also because of the design of the architecture of the agents that are taken in to consideration, the representations vary from one agent to another [4]. A Vacuum cleaner agent is a reactive agent which means , it responds when it senses dirt on the floor . Where as a Taxi Driver agent should behave in a different way since its environment is entirely different. It is a Goal directed agent. [5] it has to keep all the percepts it receives in its knowledge base . The architectures of these two typical examples should certainly differ greatly . Agent properties identify and entail the techniques and methods that were used to realize a particular architecture or architectural component. For example, most architecture includes some sort of memory. An agent is said to be a knowledge-level system [5] when it rationally brings to bear all its knowledge onto every problem it attempts to solve. Agent properties characterize the memory: Is the memory declarative, procedural, and episodic? Are there size limitations? Is memory uniformly accessed? Is it uniformly organized? These properties have been shown in the form a table . In the Table 3 , Rows indicate the Memory , Knowledge and knowledge representation and the column indicates the soar architecture . Y in the cell means that the soar has the type of memory or knowledge and knowledge representation.

6 EVALUATIONS
Based on the concepts, notation, process and pragmatics the architectures are evaluated. These are the criteria and scales for evaluating architectures. In table-4 the column represents soar architectures and rows represent the criteria considered for evaluation. Y stands for the architecture being evaluated against particular criteria representing the row . But most of the cell is blank since no proper methodologies are available[3].

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

108

Table 4: Evaluations

Evaluation Concepts Internal Architecture Social architecture Communication Autonomy Pro-Activity Distribution Notation Usability Expressiveness Refinement Dependency of Models Traceability Clear definition Modularity Process Coverage of workflows Management Complexity Properties of process Pragmatics Tool Support Connectivity Documentation Usage in Projects

Soar Y Y Y Y

Dr S Srinivasan obtained his M.Sc (1971), M.Phil(1973) and P.hd (1979) from Madurai University . He served as Lecturer for7 years in National Institute of Technology in the Computer Applications Department. Again he started his teaching career serving as Professor and Head of the Department of Computer Science, PDM College of Engineering, Haryana, India. He has published several papers in Multi-Agent Technology Systems and its applications. He is member of Computer Society of India. Attended various national and international seminars and conferences and presented papers on Artificial Intelligence and Multi-Agent Technology Ms. Nitin Bansal She is working as an Asst. Professor in PDMCE, Bahadurgarh, India. He has attended various national, international seminars, conferences and presented research papers on Artificial Intelligence and Multi-Agent Technology. Mr. Vivek Jaglan obtained his B.E(CSE-2004)from M.D. University, M.Tech(CSE-2008) C.D.L.U University and Ph.D (CE) Pursuing From Suresh Gyan Vihar University He has attended various national, international seminars, conferences and presented research papers on Artificial Intelligence and Multi-Agent Technology. Mr. Sujit Kumar Singh obtained his MCA from M.D. University. He is working as an Asst. Professor in PDMCE, Bahadurgarh, India. He has attended various national, international seminars, conferences and presented research papers on Artificial Intelligence and MultiAgent Technology.

Y Y Y

CONCLUSION While symbol processing remains the core mechanism in the architecture, recent versions of the theory incorporate nonsymbolic representations and processes, including reinforcement learning, imagery processing, and emotion modeling (Laird, 2008).Although the ultimate goal for Soar is to achieve general intelligence, there is no claim that this goal has already been reached. Advocates of the system recognize that Soar is still missing some important aspects of intelligence. Some examples of missing capabilities include automatically creating new representations on its own, such as through hierarchical clustering REFERENCES
[1] Fikes, R., Nilsson, N. (1971).strips: A new approach to the application of theorem proving to problem solving. Artificial Intelligence, 2, pp. 189-203. Newell, A. and Simon, H. (1963). GPS: A program that simulates human thought. In Computers and Thought, ed. Feigenbaum and Feldman. McGraw-Hill, New York. Simon, H. (1991). Cognitive Architectures in a rational analysis: comment. In K. VanLehn (ed.), Architectures for Intelligence, pp. 25-39, Lawrence Erlbaum Associates, Hillsdale, N.J. Elavine Rich , Kevin Knight and Shivshankar , Artificial Intelligence by The Mcgraw Hill Publishing Company limited . Artificial Intelligence: Modern Approach by Stuart J. Russell , Peter Norvig , Prentice Hall Series in Artificial Intelligence.

[2]

[3]

[4] [5]

Vous aimerez peut-être aussi