Académique Documents
Professionnel Documents
Culture Documents
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.
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.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.
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
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
N o
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
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
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]