- - - - ---- Overview on Designing Autonomous Agents Teams (A-Teams) Tsen Chung Kang* Sarosh Talukdar** *Escola Politécnica da USP, Dept. de Eng . Eletrônica, Laboratório de Automação e Controle, São Paulo, SP, Brasil. E-mail: [email protected] ** Department of Electrical and Computer Engineering, Carnegie Mellon University , Pittsburgh, PA , U.S .A. E-mail: [email protected] ABSTRACT An organization is a scheme by which agents such as: birds, fish, humans, books and computer programs (software) are combined to form super-agents, such as: flocks of birds, schools of fish, corporations, libraries and distributed software systems. The work done as part of the Asynchronous Teams project (A-Teams) [Talukdar 199:2], can be categorized in the realrn-of organizational theory [Shafritz 1992]. The challenge is to better understand and propose new organizational structures which are able to support the collaboration among different software agents, each with its own specialized skills , into teams in order to solve difficult engineering design problems. This paper presents some guidelines, developed within the A-Teams project, to design teams of autonomous agents . These guidelines were applied successfully to many industrial problems, demonstrating thepotential of autonomous agent technology for industrial applications. RESUMO Uma organização é uma estrutura na qual agentes tais como: pássaros, peixes, humanos, livros e programas de computadores (softwares) são combinados para formar super-agentes, tais como: bandos de pássaros, cardumes de peixes, corporações, bibliotecas e sistemas distribuídos de computador. Os trabalhos realizados dentro do projeto Times Assíncronos (A-Teams), podem ser classificados no âmbito da teoria organizacional [Shafritz 1992]. O desafio é obter uma melhor compreensão e propor novas estruturas organizacionais que permitirão a colaboração entre diferentes agentes de software , cada qual com suas capacidades especiais, de maneira a formar times para a resolução de problemas difíceis em projetos de engenharia. Este artigo apresenta algumas regras desenvolvidas dentro do projeto A-Teams, para auxiliar no projeto de times de agentes autônomos. Estas regras foram aplicadas com sucesso em vários problemas industriais, demonstrando o poten cial da autônomos para aplicações industriais. Keywords: Autonomous Agent Design, Asynchronous Teams , Organizational 1 What is an A-Team An asynchronous team (A-Team) is a strongly cyclic computational network. Results are circulated through this network by software agents . The number of agents can be arb itrary large and the agents may be distributed over an arbitrarily wide area . Agents cooperate by working on one another's results . Each agent is completely autonomous, that is, it decides which results it is going lo work on and when . Results that are not being worked on are accumulated in shared memories to form populations. Randomization (the effects of chance) and destruction (the elimination of weak results) play key roles in determining what happens to the populations. 2 Where did the ideas came from? The ideas for A-Teams carne as a combination of lhe best features from a number of natural and synthetic systerns, including: insect societies, cellular communities, genetic \ algorithrns, blackboards, simulated annealing and Tabu search . 3 What are A-Teams good for? A-Teams have proved to be extremely effective in solving very difficult problems for which many ' algorithms are available, but none are entirely satisfactory. Some may be reliable but slow, others may be fast but unreliable. An A- 489 Team combines such algorithms 50 they can cooperate to produce much better results much faster than they could if working alone. The number of algorithms in an A-Team can be arbitrarily large. Ali the algorithms can work in parallel ali the time . Moreover, the addition of a new algorithm is quick and easy within the A-Teams framework . 4 A-Teams Previous Work At Carnegie Mellon University, A-Teams have been used to solve a number of difficult and important problems, including: travelling salesman problems, high-rise building design , reconfigurable robot design , diagnosis of faults in electric networks, contrai of electric networks , job-shop scheduling, protein structure analysis, robot-path-planning and train scheduling. Other groups, to whom A-Team technology has been transferred, have applied it to stee l-mill scheduling, paper-mill scheduling and constraint satisfaction. . Some of the contributions may be seen through the work of the following researchers. De Souza [DeSouza 1993] demonstrated that A-Teams are scale efficient by using them to solve the TSP problern . In other words, if more agents are incorporated into the organization, a better quality of solutions will be obtained. Murthy [Murthy 1992] demonstrated the importance of balancing the construction and the destruction of solutions in an A-Team organization, and also, the benefits of A-teams in solving multi-objective optimization problems. Quadrei [Quadrei 1991] used an ATeam to successfully solve a multiple-objective optimization hi-rise building problem. Chen [Chen 1993] designed an A-Team to solve Power System Diagnosis Problerns and Ramesh [Ramesh 1994] demonstrated the qualities ofthe ATeam's organization when used for global optimization search. Tsen demonstrated the capabilities of A-Teams to work with multiple-representations [Tsen 1995]. 5 Basic Elements • Let us define some of the key concepts of an ATeam [Talukdar 1992a]. There are only two types of elements in A-Teams: shared- rnemories and agents. • Shared Memories are repositories of solutions (i.e.: one or more solutions) where agents can read solutions in-set memories, and write new found solutions into out-set memories. • Agents are defined by its four components: In-Set memory, Out-Set memory, Computational Procedure and Management function s. • The management component is further divided into two contrai functions : scheduling and selection. The scheduling contrai determines WHEN an agent is activated and the selection control determines WHERE or which input s frorn the InSet I the agent will work on. An A-Team may be seen as a network of memori es and agents . It is common to use a directed graph (digraph to represent such a network. Each memory is represented by one node of the graph , and each agent is represented by a directed arc o The tail of the agent comes from the In-Set memory and the head of the agent po ints to the Out-Set memory . Figure 2 exemplifies the network representation of an A-Team whereby the uppercase letters: A, B, C, D, E, F and G symbolize agents ; and lhe lower case letters: a, b, c Table 1: A-Teams applications Domain CompIetion Date - What was learned NonlinearAlget:raic Equations 1990 Proof of concept Traveling Salesman Problem 1993 Scale Efficiency (more agent s --> better solutions) Hi-rise Building Design 1991 Handling multiple, conflicting criteria Robots-On-Demand 1992 Balancing construction with destruction Power System Diagnosis 1992 Qualitative Bayesian Nets Power System ControI 1994 Global Optimization Strategies, Formations Train Scheduling 1995 Multiple Representations ...- 490 / --------- ---- --- - - -" ---- Management - Se 1ec f ron - Scheduling In-Set Memory Out-Set Memory -.. ... Computational Procedure Figure 1: Functional description of a computer-based agent. and d represent memories . The in-set for agent A is memory a, and the out-set is also memory a. The in-set for agent B is memory c and the out-set is memory a. The network representation of an A-Team is also called data-flow. agent). ® • Control-Flows are digraphs representing the supervisory (i.e.: management) relations among different agents. An agent is represented by a node, and there will exist an are between two nodes if a supervisory relationship between the agents represented by the nodes exists. The tail of the are is connected to the supervisor agent, and the head of the are is pointing to the agent being supervised (supervisee). Within a supervisory relationship, the superv isor has control over the management components of the agent being supervised. Figure 3 demonstrates that agent A is the supervisor for agent B, although agent A has no supervisor agent A is an autonomous Figure 3: Example of a generic Control Flow • A-Team organizations have cyclical ç1ata flow (agents create cyclic paths) and null control flow (ali agents are autonomous). 6 Classifying Agents and Memories. According to [Talukdar 1992a], [Talukdar 1992b], [Talukdar 1993] there are different types of agents and memories . Figure 4 shows an example of a typical A-team configuration with agents, memories, and the relationship among them. - Initialization Agents (IA) generate solutions from the problem description . They are used to A D E G '" , Figure 2: Networkrepresentation or data-flow. 491 d Initialization Agents Destr01'er Agent I ... - .: --..- Memory I J \ Destr01'er I Agent gent gent -- Problem Description ---- Memory 2 Modification Agents I I I I Modification Agents Figure 4: Example of A-Team with multiple agents and memories. populate memories of solutions in the initialization process of an A-Team. to solve it) 2) Decompose the prablem into sub-problerns, although not necessarily hierarchical sub-prablerns, but rather something related and usefuI. - Construction Agents (CA) take solutions from a particular in-set memory, and generate new SOIUtiOllS that wilI be inserted into a different out-set memory (i.e.: the in-set memory is different fram the out -set memory) . 3) Create a memory for each subprablem 4) Se lect or create algorithms for each subprab- lem - Modification Agents (MA) take solutions fram -ª--partic_ular ) n-set .rnernory , and generate new solutions to be inserted into the same memory. i.e., the in-set memory and the out-set memory of the agent are the same. 5) Form each algorithm into a simple autonomous agent: Choose a Scheduler to decide when and how often the agent will run. - Destrayer agents (DA) delete "bad" solutions. One of its purposes is to limit the number of -solutions in the memory. The other is to "herd" the population of solutions towards good solutions . Choose a Selector to select input solutions frorn the in-set mernories. 7 A Design Prescription for A-Teams 1 I In the effort to develop Asynchronous Teams, a design pre scription is proposed in this section in order to consolidate the knowledge acquired over the last 5 years . The folIowing are guidelines that have béen useful in designing and refining new A-Teams in order to solve various engineering prablems. The guidelines are composed of seven major steps: Implement the computational procedure (algorithm) of the agent. Choose the out-set memory in which to deposit results from the computational pracedures. 6) Interconnect the agents and memories into a strangly cyclic network 7) Repeat if necessary frorn step 4, if stilI necessary repeat fram step 2 I) Choose a "difficult" optirnization problem (difficult = no efficient deterministic algorithms 492 8 Conclusions International Conference on Systems, Man and Cybernetics, Chicago, Illinois, Oct. 18-21, 1992.). Agent based computer organizations are a fast growing technology with many potential industrial applications. ATeams is one of the earliest developments of this new technology and has proved to be very efficient in solving multiobjective problems, multiple-representation problems, complex combinatorial problems, among others . [Tsen 1995] Tsen , C. K. "Solving Train Scheduling Problems Using A-Teams", Ph.D dissertation, Departrnent of Electrical and Computer Engineering, CMU, 1995. A-Te ams has a well defined structure, based on memories and agents, and its main characteristics are autonomous and asynchronous agent s. A design prescription has been developed over many years of research and development of A-Teams and the next steps in the research and development are to automate the design of A-Teams. 9 Bibliography [Chen 1993]\Chen, C. L. and Talukdar, S. N.,"Causal nets for Fault Diagnosis", 4th International Conference on Expert System s Application to Power Systems, Melbourne, Australia, Jan 4-8, 1993. [DeSouza 1993] DeSouza, P. S., "Asynchronous Organizations for Multi-Algorithm Problems" , Ph.D. dissertation, Department of Electrical and Computer Engineering, CMU, 1993. [Murthy 1992] Murthy, S., "Synergy in Cooperating Agents : Designing Manipulators from Task Specification". Ph.D. dissertation , Department of Electrical and Computer Engine ering, CMU, 1992. [Pyo 1985] Pyo, S. S., "Asynchronous AIgorithms for Distributed Process ing", Ph.D. dissertation, Electrical and Computer Engineering Department, Carnegie Mellon University , Pittsburgh, PA, 1985. [Quadrei 1991] Quadrei, R. W., "Asynchronous Design Environments: Architecture and Behavior". Ph.D . dissertation, Department of Arch itecture, college of Fine Arts , CMU , 1991. [Ramesh 1994] Ramesh, V. c., "Inertial search and Asynchronous Decompositions", Ph.D dissertation, Department ofElectrical and Computer Engineering, CMU, 1994. [Shafritz 1992] Shafritz, J. M. [editor] ,.Ott, J. S., "Classics of organization theory " , Pac ific Grove, CA : Brooks/Cole Pub. Co., c 1992. [Talukdar 1992] Talukdar, S. N., and Souza, P. S. de, "Scale Efficient Organizations", (Proceedings of the 1992 IEEE 493
© Copyright 2026 Paperzz