* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download A Model for Design of Societies of Cooperative Agents
Survey
Document related concepts
Human–computer interaction wikipedia , lookup
Ecological interface design wikipedia , lookup
Soar (cognitive architecture) wikipedia , lookup
Ethics of artificial intelligence wikipedia , lookup
Personal knowledge base wikipedia , lookup
Incomplete Nature wikipedia , lookup
Agent-based model in biology wikipedia , lookup
History of artificial intelligence wikipedia , lookup
Agent-based model wikipedia , lookup
Knowledge representation and reasoning wikipedia , lookup
Embodied cognitive science wikipedia , lookup
Transcript
Building Knowledge Based Systems from a model for distributed reasoning. Héctor Rodríguez Figueredo, MSc. Daniel Galvez Lío, Ph.D. Artificial Intelligence Research Group Centre for Studies in Computer Science Central University of Las Villas Sta. Clara. Villa Clara. CUBA ZipCode: 54830 FAX: (53)-(422)-81608 Phone: (53)-(422)-81515 E-mail: [email protected] [email protected] Abstract A framework that allows the building of a Knowledge Based System (KBS) using the techniques of Distributed Artificial Intelligence (DAI) and particularly the techniques of the Cooperative Solution of Distributed Problems (CSDP) is shown. This framework is made of three different tools. The KBS resultant implements a model in which knowledge sources of different nature can interact to solve a distributed problem. Agents in the resultant MultiAgent System (MAS) have different knowledge representation forms and different problem solving method. A model for the society of agent, agents itself and the facilitator, is presented. Finally several MAS built with this frameworks are shown. Keywords: Knowledge Based Systems, Cooperative Solution, Multiagent Systems. Cooperation, Distributed Artificial Intelligence, Introduction The term “agent'' is difficult to define. Agents are often described as entities with attributes considered useful in a particular domain. This is the case with intelligent agents, where agents are seen as entities that emulate mental processes or simulate rational behaviour; personal assistant agents, where agents are entities that help users perform a task; mobile agents, where entities that are able to roam networking environments to fulfils their goals; information agents, where agents filter and coherently organise unrelated and scattered data; and autonomous agents, where agents are able to accomplish unsupervised actions The systems of CSDP, also known as systems for distributed reasoning, can be defined as systems composed by a set of separate modules and by a set of communication paths among them. These modules are frequently called agents, because it is supposed that each module acts like an entity able to solve some problems by it. There is a wide spectrum under the concept that includes from systems narrowly parallels, in which the control mechanism is completely centralized and the basis of knowledge is shared, to those in which control and knowledge are completely distributed. The main problem in development of this kind of systems starts in establishing a methodology for the formulation, description, decomposition and the assignment of problems among a group of agents. The other important problem is the synthesis of the results given by this group of agents and the attainment of a coherent interaction for decision making. In a way that software for cooperative work will be a set of tools that supports the cooperation among a group of agents able to solve different kinds of problems. These systems of cooperative reasoning have certain important advantages in most of the applications compared with the great monolithic systems (traditional expert systems), such as: Modularity of system. It is easier to create and to maintain a set of independent modules rather than a big one. Efficiency. Not all the knowledge is used in all tasks at the time. Modulating it you can focus the efforts of the problem solving system through more adequate paths. Fast computational architectures. In the same way the problem solving systems become more complex, they also need more complex cycles. Though computers turn to be faster every day, the true increases of speed start to be, not because a simple processor with a wide associated memory, but a group of processors of smaller size each having their own memory. The distributed systems are better prepared to use such architectures. Heterogeneous reasoning. The techniques or Methods for Solving Problem and the formalities for Knowledge Representation Forms that could be more adequate to work with a part of the problem could not be adequate to work with another part of it. Multiple perspective. The knowledge required to solve a problem is obtained taking into account the opinion of several persons and it is quite difficult to make these persons create a unique base of coherent knowledge and, sometimes, it is even impossible since their models of the domain are, indeed, not consistent. Distributed problems. Some problems are naturally distributed; i.e. there can be different information available on each of them, in different physical locations. Reliability. If a problem is distributed through agents of different systems, the solution of the problem can go on even if one of the systems failed. According to the previously stated elements, architectures for distributed reasoning should provide: A mechanism to ensure that the activities of the different agents of the system are coordinated, in such a way that the global system of problem solving reaches its objectives. It is the main problem we should face when dealing with the design of every system of distributed reasoning. A communication structure able to allow the information to go both ways among the agents. The architectures of communication that have been proposed to support the distributed reasoning regarding the communication structure, are divided into two main groups: Blackboard systems in which communication occurs through a shared knowledge structure known as blackboard. The modules can show messages on the blackboard and can also read and act over the messages shown by other modules. Systems for message sending in which a reasoning module sends messages (either to request for services and information or to answer requests like these). Distributed versions of the needed reasoning techniques. These mechanisms should differ from their monolithic duplicates since it is supposed that they should work with a set of bases of local knowledge and not with a global knowledge which is hoped to have certain global characteristics (like consistency). Proposed model for one society of agents. The problem is to create a tool able to guide a set of agents towards the solution of a given problem. This software will be called facilitator [CUE 92] and the set of agents will be called society. The facilitator needs a formal definition of the society. This definition will be given according to: Agents that is made up of. Objectives that these agents should fulfil. Needs of each of the agents. To guide the society towards a solution it is not necessary to know the nature or kind of the agents that is made up of; who is it, which are its objectives and what does it need to work is all you have to know of each of the agents. This is an important detail because it allows us to create societies of agents with different PSM and KRF (which are both characteristic of an agent), in such a way that each agent can be created according to the characteristics and nature of its domain. All the ideas previously stated can be taken for granted if in the definition of the module for the fact that the external image of the agents is unique (apart from its nature) is taken into consideration. There can even exist an agent being at the same time a society of other agents. Model for an Agent Several researchers have attempted to provide a meaningful classification of the attributes that agents might have. A list of common agent attributes is shown below [BRA 97]. • Adaptivity: the ability to learn and improve with experience. • Autonomy: goal-directness, proactive and self-starting behaviour. • Collaborative behaviour: the ability to work with other agents to achieve a common goal. • Inferential capability: the ability to act on abstract task specifications. • “Knowledge-level” communication ability: the ability to communicate with other agents with language more resembling human-like ``speech acts'' than typical symbol-level program-to-program protocols. • Mobility: the ability to migrate in a self-directed way from one host platform to another. • Personality: the ability to manifest attributes of a ``believable'' human character. • Reactivity: the ability to selectively sense and act. • Temporal continuity: persistence of identity and state over long periods of time. According to the previous assertions it is proposed a structure in which an agent can have its particular PSM and KRF but it keeps a unique external image that allows us to make the facilitator able to interact with agents of different nature. Three kinds of agents are taken into consideration in the current realisation of the model: ♦ Frame-based agent. It uses a PSM and a KRF similar to the ones used by the Intelligent System to Help Design known as SIAD, developed by our research group some years ago [BEL 93][BEL 94]. To incorporate it formalities developed for the SIAD in our model were taken as base its KRF (a mixture of frames and production rules design oriented) and its PSM (forward-chaining lead by data and able to recalculate). ♦ Rule-based agent. It uses a KRF (production rules) and a PSM (backward-chaining) similar to the ones used by the systems based on traditional production rules [BEL 94]. ♦ Case-based agent. It uses a case-based reasoning module without adaptation, which give us the possibility of completing the information of a situation from a partial description and a set of previous situations (case base). An index system is used to guarantee the efficiency of the recuperation module [MAR 96]. Besides this, in the developed model the further inclusion of other reasoning structures is allowed. The following aspects (see Figure 1) give the description of an agent taken in to account by the society. Identification of Agent. Goals. A set of attributes that are known and used for more than one agent of the society and which are the responsibility of some agent make up the GOALS of an agent. That agent will be called when it is necessary to evaluate or to re-evaluate one of these attributes. The goals of each agent are set on the database facilitator from the description of the society. Needs. Attributes whose knowledge is vital to develop tasks of the agent and are parts of the conditions to activate it make up the NEEDS of an agent. These are set on the description of the society that is driven by the facilitator. Restrictions. These are a set of logical relations between the attributes known by the agent that should be fulfilled in order to get a consistent acting of the agent on each activation. Finally each agent has got an interface with the facilitator and a state memory. Interface with the facilitator Knowledge Solution Method State Memory Fig. 1 Agent structure The interface is made up of a set of messages that the agent is able to answer and by means of which the facilitator activates the agent and exchanges information with it. The state memory is made up of the values that the attributes of agent have got on each step and that form its conscience. It must be clear that in our model the agents have communication only with the facilitator and they do not know the other members of the society. Agents not even have the idea that they themselves are part of a society. Each agent acts according with the goals it was created and with a message exchange with the caller, it acquires the information needed to answer the task that it has been asked. In this sense, i.e., the agent could be asking for information that in traditional expert systems will be asked to the user but in a system with this kind of structure the facilitator determines if this information can be inferred by another agent or if to ask the user. This kind of structure also allows the agents to work in parallel and distributed way. Model for the facilitator The facilitator (see Figure 2) is make up of the following modules: Cooperation strategy. This is the most important point of the model, it should be able to value the current state of the solution according to the objectives that had been set and which of the agents is able to work on this situation. It should also identify a final state that can be either of solution or of impossibility. They must take into account the cases in which it is necessary to reevaluate situations or to go backwards (1 or more steps) in the activation of the agents asking them to offer a new criterion under the same circumstances. All these must be done taken into consideration the parallelism in the work of the agent. Database of the Facilitator. It is a relation of all those attributes that are used for the whole society (common use) and what agents need it for their work. This relation of attributes is the common memory and the society conscience. Description of the society. It contains all the information about the structure of the society. This structure is given by the description offered by each of the agents that are members of it. Interface with the agents. It is the way the facilitator has to interact with each and every one of the agents. For agents you have got a reference that allows the activation of them and the information exchange with it. User Interface Society Description Database of Facilitator Cooperation strategy Fig. 2 Facilitator structure In the current realisation the co-operation strategy is able to identify every contradiction between the partial outcomes given by the agents. In this case you will have to apply a backward strategy aiming at identifying the agent that provokes the contradiction and makes him change his evaluation. Finally it is checked a possible solution state (thus the state objective has been reached). Each agent checks his internal restrictions aiming at verifying the validity of the possible solution. Nowadays, the strategy is based on an algorithm that goes all the way through the database of the facilitator trying to evaluate the, so far, unknown attributes. For each unknown attributes, it is activated the agent responsible for its evaluation. To do all its needs are previously met, and this can generate the activation of any other agent or the occurrence of a question to the user in case that unknown attribute, responsibility of no agent, appears. Conclusions The definition of a model and a framework was obtained for the description of societies of co-operative agents which pane the way for the realisation of knowledge based systems using the techniques of co-operative solution of distributed problems. These models are the outcome of the analysis of application of the artificial intelligence techniques previously described to different problems like: The elaboration of the project of sugar cane varieties, The scheduling for banana plantations, and The design of construction elements. Based on this model, a shell that allows the development of this kind of systems was built. From an object oriented design of the models we are working in the implementation for Microsoft Windows NT, to take advantages of the possibilities this operating system offer for the systems implementation which require multiprocessing and distribution of tasks among all the machines of a network. BIBLIOGRAPHY [BEL 93] R. Bello, D. Gálvez, G. Sánchez y otros, "Herramientas para el desarrollo de sistemas th CAD basados en el conocimiento". In Proceedings of the 6 International Symposium on Artificial Intelligence, Monterrey, Mexico, 1993. [BEL 94] R. Bello, D. Gálvez, G. Sánchez y otros, "Knowledge representation form in mechanical engineering". Knowledge Based Systems, Vol. 7, No 3, Sept. 1994, Oxford, U.K., 1994 [BRA 97] Bradshaw, J.M. An Introduction to Software Agents. In: http://www.amazon.com/exec/obidos/ISBN=0262522349/acmcrossroadsst. Software Agents, J.M. Bradshaw (Ed.), Menlo Park, Calif., AAAI Press, 1997, pages 3-46. [CAR 93] H. Carvajal, F. López, M.G. López, "Sistemas Cooperativos, un marco de referencia" In [MEM 93], 1993 [CHI 98] M. Chia, D. Neiman, V. Lesser, Coordinating asynchronous agent activities in a distributed scheduling system. In Proceedings of the Second International Conference on Autonomous Agents (Agents98), pp. 436-440, 1998. [CUE 92] J. Cuena y A. García, "Sistemas Basados en el Conocimiento para coordinación de trabajo cooperativo". In [MEM 92], pp. 321-335, 1992 [DIL 98] W. Dilger. A Society of Self Organizing agent in the intelligent home. Technical report. Technical Report SS-98-02 Standford, California, Menlo Park, March 1998. [JEN 98] N. R. Jennings, K. Sycara, M. Wooldridge. A roadmap of agent research and development. Autonomous Agents and Multi-Agent Systems, 1(1): 8-38, 1998. [LEM 93] C. Lemaître, V.G. Sánchez, C. B. Excelente y L. Zamora, "Red de Cooperación para Sistemas Expertos", In [MEM 93], 1993 [LEM 94] C. Lemaître y L. Zamora, "Control de la Cooperación de una Red de Agentes", In [MEM 94], 1994 [LES 98] V. Lesser, M. Atighetchi, B. Benyo, A Multi-Agent System for Intelligent Environment Control. Technical Report. UMass Computer Science Technical Report 94-66. Massachusetts, USA. (1998) [LES 99] V. Lesser, Cooperative Multiagent Systems: A Personal View of the State of the Art. (Unpublished handwritten) 1999 [LES 99] V. Lesser, An Overview of DAI: Viewing Distributed AI as Distributed Search. (Unpublished handwritten). [LIÑ 92] E. Liñan y L. Castillo, "Medio Ambiente para la generación de Organizaciones de Agentes Cooperativos". In [MEM 92], pp. 337-347, 1992 [MAR 96] M. García, R. Bello. “A model and its different applications to case-based reasoning”. Knowledge-Based Systems 9 (1996) 465-473, Oxford, U.K, 1996 rd [MEM 92] Memories from “3 Latin American Congress of Artificial Intelligence”, IBERAMIA'92. Havana, Cuba, Feb. 1992 th [MEM 93] Memories from “10 1993. National meeting of Artificial Intelligence", Mexico, D.F. Sept. th [MEM 94] Memories from “11 National meeting of Artificial Intelligence", Guadalajara, Mexico, Sept. 1994. [RIB 91] A. Ribeiro, "Inteligencia Artificial Distribuida Agentes Benevolos". In Mundo Electrónico, Spain, Feb. 1991. [STE 93] D. M. Steier, R. L. Lewis, J. F. Lehman, "Combining Multiple Knowledge Sources in an Integrated Intelligent System". In IEEE Expert, Jun. 1993, pp. 35-43, 1993 [WEI 92] M. Weiss, F. Stetter, "A Hierarchical Blackboard Architecture for Distributed AI Systems". In Proceedings of International Conference on Software Engineering and Knowledge Engineering, Jul. 1990.