Академический Документы
Профессиональный Документы
Культура Документы
Illinois Genetic Algorithms Laboratory University of Illinois at Urbana-Champaign 117 Transportation Building 104 S. Mathews Avenue Urbana, IL 61801 O ce: (217) 333-2346 Fax: (217) 244-5705
Alex Kosoruko
In this paper, a new class of genetic algorithms (GA) is presented. It is based on the idea of outsourcing, which is a popular trend in business today. In human based genetic algorithm (HBGA), all primary genetic operators are outsourced, i.e. delegated to outside human agents. The totally outsourced genetic algorithm uses both human evaluation and human ability of innovation. It is a multi-agent environment and the mediator of communication between multiple heterogenous agents. The advantage of this approach is its ability to address complex problems in which it is hard not only to evaluate individuals, but even nd a good representation for them. This allows GA to process ows of information without knowledge of its particular structure and representation. Suggested conceptual approach can also be used as a general model and a way of thinking about di erent kinds of genetic algorithms.
Abstract
1 INTRODUCTION
We usually think of a genetic algorithm (GA) as a simple computational procedure producing evolutionary behavior or as a robust method of computational optimization. Is the word \computational" essential for GAs? This paper argues that it is not. Thinking of GAs in terms of outsourcing, as a system of communicating heterogenous agents, allows us to extend GA domain and approach more di cult problems. Here is a small road map to the remainder of the paper. Section 2 brie y describes the history of GAs and shows the trend of decentralization and hybridization that was the background and motivation for this work. Section 3 suggests a general model of GA as a multi-agent system, where all genetic operators are outsourced to di erent kinds of agents. Section 4 describes the two common approaches to organization of agent interaction. Section 5 describes a human based genetic algorithm (HBGA) based on proposed multi-agent approach and relies on human agents to make both selection and crossover. Section 6 refers to an application of HBGA for solving problems expressed in natural language. Section 7 discuses human factors in HBGA such as fatigue and human informational capacity. Section 8 concludes the paper and outlines the area of other possible applications of the proposed approach.
Early GAs (Friedberg, 1958; Holland, 1975; Goldberg, 1989) were inspired by nature's robust way of evolving complex living organisms and by Darwin's theory of natural selection (Darwin, 1859) that provided a simple explanation of nature's procedure. GAs combined three basic principles of Darwin's theory (inheritance, variation and selection) with two main results from genetics (genetic coding and mechanisms of recombination) in one computational procedure. GA simulates evolution in a population of individuals by performing selection over the individuals and recombination/mutation over their encodings. Unlike natural evolution, GA evolution assumes the existence of a hard-coded tness function and xed procedure of reproduction external to the individuals. First GAs had all their operators (selection, recombination and mutation) centralized inside one computational procedure de ned by their program, like SGA (Goldberg, 1989). The implicit parallelism of computational procedure of GA was shown early in works of Holland (Holland, 1975) and it was explored later in parallel genetic algorithms (PGA) which are also referred to as distributed genetic algorithms (DGA). PGA introduced separation of the same process into several homogenous processes working with the same or separate populations to improve time performance of a GA (Cantu-Paz, 1997; Alander, 1996). If a GA was a single process - multiple data system, then PGA is multiple processes - multiple data. Interactive genetic algorithms (IGA) introduced the idea of human evaluation that extended the area of application of GAs drastically (Caldwell & Johnston, 1991; Sims, 1991; Smith, 1991). IGAs made it possible for the computers to be successful is areas which were thought as exclusive domain of expertise of outstanding humans, such as ne arts (Moroni, Zuben, & Manzolli, 2000; Unemi, 2000), music (Miranda, 2000) and architecture (Soddu, 2000). Now, this is a growing eld of application for interactive genetic algorithms. IGAs represent humanized technology (Takagi, 1998). They are able to t human needs directly, instead of tting some computational tness functions, which is a very approximate model of human needs in some local domain. This brief and incomplete review shows a general trend towards decentralization and hybridization of GAs. In the next section, we will try to propose a conceptual model that can capture this trend. This model should be expressive enough to represent the types of GAs mentioned earlier and provide us with incite about further GA development.
Interface
MAGA
Agent 1 selection
Agent 2 xover
Agent 3 mutation
Figure 1: Multi-agent genetic algorithm distinguish between mutation and crossover, referring to both of them as recombination operators. In this case, outsourcing will be reduced to two choices: choice of an agent for selection function and choice of an agent for recombination function. In this connection, the available agents can be roughly classi ed into computational, human, and physical. From this point of view, IGA is an example of the cooperation of a human selection agent and a computational recombination agent. We can easily imagine a procedure where the roles are exactly the opposite. For example, in computer aided design (CAD) person generates new solutions with intelligent crossover or transfer of technology from one area to another. Then computational modeling technique evaluates the behavior of the solutions. When our external agents are all computational, we get parallel GAs discussed in Section 2. In a similar way, an organizational GA can communicate with an external physical object, receiving its responses and treating them as a feedback, like we communicate with a car when driving it. Finally, organizational GA can communicate with an environment, a set of external agents and physical objects. In all these cases, the delegation of functions and resulting division of labor and cooperation between human, computational and/or physical agents are the main distinguishing feature. It is convenient to construct a matrix of our outsourcing opportunities (Table 1) representing the possible combinations of three types of agents within multi-agent genetic algorithms. Selection agent Computational Recombination agent Computational PGA Human CAD Physical Datamining applications Arti Human Physical IGA GA-based controllers HBGA Engineering cial selection Bionics breeding (ideas from nature)
Table 1: Matrix of outsourcing opportunities In Table 1, the ordering of columns re ects the costs of performing the function of selection. Computation modeling is usually the cheapest way to evaluate solutions if it is applicable, human subjective evaluation is more expensive, and, nally, real world experimentation is the most expensive way to evaluate a potential solution or idea. The structure of Table 1 can be explained by the economic theoryand the concept of altermative costs. Why certain tasks t into certain cells? Apparently, this is a consequence of alternative costs 3
of performing these functions by di erent types of agents. The cost of performing genetic operations in di erent domains varies when they are performed by computers, humans and physical processes. You can easily see that in the areas where humans have no rivals in performing the function of selection we have many applications of interactive genetic algorithms. At the same time, in the areas which are well described by mathematical models, expensive human evaluation looses in competition with evaluation by computer modeling. Emergence of new technologies can shu e the tasks across this table, since technological developments my change the alternative costs of performing the selection and recombination functions. Organization Selection Recombination Table 2: Main functions of multi-agent GA Among the functions essential to multi-agent GA (Table 2), the organizational function became the most important: since we have multiple agents we have to organize or coordinate their activity somehow. It seems to be a new function appeared in multi-agent GAs. However, the prototype of this function exists in the rst GAs (e.g. SGA) as a ow of control inside the generational cycle executing the genetic operators. The ow of control is determined by a program structure, which is written by a programmer. The programmer manually de ned procedures and organized them in some xed way to achieve the useful operation. Thus, the programmer performed the organizational function of GA. Any modi cation of this structure requres a programmer intervention. In the multiagent GA, the structure is not xed: it allows adding new agents when they became available and removing them when they fail to respond. Multi-agent GAs can be tentatively classi ed into systems with explicit and implicit functions. In the explicit case, we can easily nd a process for each essential genetic operation. An example is pure organizational GA, TQE (Goldberg, Hall, Krussow, Lee, & Walker, 1998), where all genetic operators and coordination functions are formalized and performed by humans. HBGA is another example where genetic operators are performed by human agents, while the coordination function is computationally implemented. In Hybrid HBGA, an assignment of functions to agents is not exclusive: both internal computational and external human resources can be used to perform the same function at the same time. Another class of multi-agent GA does not have all necessary operators implemented explicitly. Nevertheless, this doesn't a ect much the performance of the system. I will refer to such systems as an organizational GA with implicit functions or implicit GAs. For example, the evolutionary procedure of Global Ideas Bank (GIB) (Eno, 1998) is based on selection of best ideas, but it doesn't have recombination mechanisms formalized and implemented. Darwin's theory of evolution was also based on selection, since Darwin was not aware of the genetic mechanism of recombination. However, the mechanisms of genetic change happen in living and social systems even when they are not implemented (Kosoruko , Mittenthal, & Goldberg, 2001; Kosoruko , 2000a). This allows such an \incomplete" GA system to produce the behavior similar to a complete GA and perform its functions well despite the lack of the essential parts. This compensation phenomenon was crucial for the success of the Darwin's evolution theory and the GIB. They both took advantage from implicit recombination processes. In this section, we adopted a multi-agent approach to GAs and found that multi-agent GAs present both new problems and opportunities. The opportunities of exibility and robustness 4
are dependent on solving the problem of e cient organization of agent interaction, which will be reviewed in the Section sec:organization.
The classi cation quality in such a network with many nodes depends more on its structure than on the quality of individual elements. It was shown in (Kosoruko , 1999) and (Kosoruko , 2000b) that it is possible to assemble the network with desired classi cation parameters from unreliable classi ers by combining them together in an optimized structure. This approach was used in the application of HBGA that will be described in secotion 5.
5 HUMAN AGENTS
As shown in Table 1, HBGA can be viewed as an extension of IGA. While IGA uses only human judgment, HBGA uses a balanced approach allowing and encouraging both judgment and creative potential of participants in the form of evaluation and recombination, correspondingly. In HBGA, all genetic operators are outsourced and delegated to humans, except for organizational function that remain the core competence of GA. The structure of a pure HBGA is shown in Table 3. Organization computational agent Selection and recombination human agents Table 3: Structure of pure HBGA Selection and recombination agents at the bottom are not separated, because each human participant in HBGA is not limited to one particular function. Human participants can always choose what function they prefer at particular moment and in particular context based on their longterm and short-term preferences. The behavior of people using HBGA was studied in (Kosoruko , 2000a). The distribution of people according to their long-term preferences shows three maxima that roughly correspond to the three classes of human users (Table 4). Convergent thinkers Mixed thinkers Divergent thinkers Critics Balanced Creators Choose to provide Provide roughly equal Provide only new only evaluations number of evaluations solutions, refusing and new solutions to evaluate them Table 4: Classi cation of HBGA participants The fact that agents in HBGA always have a choice which operation to perform makes HBGA appealing to human users and contributes to the solution of human fatigue problem addressed in section 7. However, this freedom of choice can be a problem for computational procedure of HBGA. For example, let us assume that it happened that all our participants are convergent thinkers and strongly prefer selection over recombination. In this case, we will soon nd ourselves run out of new innovative solutions. The other extreme is also not desirable: in this case, we soon nd ourselves overloaded by increasing number of solutions without any hope to decide between them. I will refer to this as a problem of disbalance. In multi-agent genetic algorithm, we can approach the problem of disbalance in the following ways: 1. Persuade human participants to change their preferences 6
2. Balancing the population of human agents by attracting new participants and trying to maintain the balance between three groups shown in Table 4. 3. Using computational agents to balance the evolutionary process The rst way of solving the problem is quite common in social organizations. It demands from people to change to t the needs of the system. People usually do not like this approach and want to be compensated for their inconvenience. Two other ways are opposite: they make the system adapt to people. The second way is most natural and probably most e cient, although, its practical implementations often meet di culties. To make it real, we have to attract many people of diverse cultures since each culture assumes some kind of convergent or divergent bias. Internet allows us to approach this, but the problem of di erent languages people speak makes things complicated. Third approach is probably less natural, but often easier to implement. I will refer to it as Hybrid HBGA. This method uses computational selection and recombination agents with some (usually small) probability (Table 5). Hybridization is useful to achieve the balance between selection and recombination when human participants are biased to only convergent or only divergent thinking. In many cases, the construction of computational selection or crossover operators is not easy. In the case of completely convergent participants, HHBGA becomes IGA, because computational process have to perform all recombination to maintain ongoing process of innovation. Organization computational agent Selection and Recombination human agents Optional balancing computational agents Selection agent Recombination agent Table 5: Hybrid HBGA structure We can see an example of how hybrid HBGA works in Figure 2. It communicates with human agents through its interfaces. Protocols of communication can di er. In this example, the computational procedure asks a human agents to perform a genetic operator and expects to receive the result of it. Some agents agree to perform the operation (like Agent1 and Agent2), some didn't respond (like Agent3). Computational agents are used to x the disbalance, they never refuse to perform a genetic operator, but the quality of their responces is usually inferior to the responces of humans which always get preference in this system. The best way to understand an abstract concept is to look how it was used. In the next part, an application of HBGA is presented that will give more speci c example of usefulness of this model.
6 HBGA APPLICATION
Multi-level HBGA allowed us to approach computationally the idea of knowledge evolution that was earlier expressed in memetics (Dawkins, 1976), neuro-linguistic programming (Bandler & Grinder, 1976), and evolutionary theory of language and mind (Pinker, 1998). The algorithm was applied to solving problems expressed in natural language in Free Knowledge Exchange (FKE) project (Kosoruko , 2000a). In this case, both computational evaluation and formal representation were problematic. HBGA allowed us to use just plain natural language representation and maintain an evolution of natural 7
Interface
HBGA
Computational selection agent
Human Agent 4
Havent been addressed yet
Human
Agent 1
Agreed to make evaluation
Human
Agent 2
Agreed to make recombination
Human
Agent 3
Did not respond
Figure 2: Hybrid human based genetic algorithm language strings to arrive at better answers to the problems submitted by its members. It organizes individuals into collaborative community and uses their ability to perform intelligent crossover and selection operators on existing knowledge. It can be said that natural language strings have a tight linkage of building blocks, since in the most frequently used patterns of language their constituent parts tend to be located close to each other. Thus, our natural language by itself has a good encoding for the purpose of genetic algorithm. We can hypothesize that the structure of language has itself evolved to allow this tight linkage of building blocks. Such a structure makes the evolutionary method of natural language processing e cient. In FKE, problem solving involves a search process, in which constraints (problems) are incrementally identi ed and solutions evolve to t those constraints. Having multiple blackboard levels (can be de ned by general-speci c ordering based on the size of the textual representation) facilitates incremental problem solving. Here are several examples that were evolved in the system. The question shown in Table 6 had the highest tness among English speaking participants at the time of writing this paper (the numbers in the rst column correspond to the tness of answers). Another example shown in Table 7 clari es the meaning of \knowledge" in the context of FKE. FKE system is capable of such interesting features as self-identi cation, de nition of its goals and purposes. The more detailed description can be found in (Kosoruko & Goldberg, 2001), although, the best way to understand FKE is just see how it works at http://3form.com. Here our purpose is not to describe this particular implementation, but rather to outline the general approach: these examples show that HBGA can evolve solutions without any xed formal representation of individuals and without any xed formal criteria for their selection.
Q How do you know that you are in the right career to really exceed in life and to do well overall? 18 You are in the right career if you wake up excited to go to work. 12 You need to feel it. If you're enjoying yourself, nothing else matters. As long as the money is enough to live by, you're ne there. 12 Rely on your intuition and senses. It should feel good to be in the right career :-) 11 You are in the right career if you wake up every day and can't wait to get to work. You spend all day doing what you love and then when its time to go home you really don't want to. 8 What is the de nition of the right? If people want, then they can do anything and enjoy doing it. Nobody preassigns you from the birth to be a cook or a janitor, it is a choice which is made based on the life experience and the environment. Table 6: Example of produced solutions Q What is knowledge? 4 Approximation of the outside world in our local observable vicinity. It is usually expressed in some alphabet of a limited size and doesn't approximate well beyond the local limits. 4 Knowledge is our personal extrapolation of information. Our minds take in information (or data) and spew out knowledge { even when we're wrong. 3 Knowledge is information valuable for us, that we gather, select and generalize throughout our life. 3 Something that keeps us from making the same errors twice. 3 Something very powerful and hard to attain. It is knowledge about things as they are or reality. With the correct knowledge almost everything is possible. Table 7: Another example of produced solutions 9
7.2 Motivation
The motivation is an important part of any project in which people are supposed to participate. Without it, a good project may fail. Any application of HBGA is also such a project involving 10
people and we need to think about motivation. Why people will participate in it? Although similar problem arises with regard to IGA, it was not addressed in the corresponding studies. There are two systems of motivation: obligatory (contract net) and participatory. The former is a traditional one. In this case, people participate to ful ll the contract obligations they made earlier. Most existing social organizations and multi-agent systems are obligatory organizations. There is little research on participatory model of organization. In this case, there is no contract obligations and people participate because they nd their participation useful, interesting, or enjoyable. In participatory organization, participants are free to change their preference without danger to violate their previous obligations. Recent interest to participatory organizations is connected with the development of Internet. Such participatory projects as Open Source Foundation, Open Directory Project, Linux are well known. FKE project discussed earlier is also participatory. It uses a kind of reinforcement learning to motivate people to participate in the project. The signals appeared in the evaluation process are propagated to adjust the credits of people who contributed to the evolution of particular solution. More information about it can be found in (Kosoruko , 2000a).
8 CONCLUSIONS
In this paper, a multi-agent approach to analysis and engineering of GA was proposed. A new class of genetic algorithms (HBGA) was presented which is based on proposed approach and combines power of intellectual abilities of human agents with computational power of GAs within one general framework. This approach is not only theoretical one: an application of HBGA discussed in section 6 o ers a low-cost and convenient solution for organizing large and distributed groups of individuals to solve their both common and individual problems creatively. The main conclusion from this research is that multi-agent genetic algorithms allow us to think about di erent kind of modern GAs within one conceptual framework. They extend the domain of GAs to new complex problems in many di erent areas. They are robust because they are tolerant to the failures and errors of participating agents. They are exible because they do not depend on functionality of one individual agent performing particular function. As a consequence, they allow adding and removing agents without interrupting the whole evolutionary process. There are many opportunities this approach o ers to us and our table of outsourcing opportunities (Table 1) and analysis of alternative costs is a good way to nding such opportunities where multi-agent GAs can be used successfully.
Acknowledgments
The author would like to thank the participants of the Free Knowledge Exchange who supported his research on HBGA, contributed the materials included in this paper and granted the right to publish them under the conditions of the Success Formula Community Agreement.
References
Alander, J. T. (1996). An indexed bibliography of distributed genetic algorithms (Technical Report 94-1-PARA). Finland: Univ. of Vaasa. ftp://ftp.uwasa. /cs/report94-1/ gaPARAbib.ps.Z. Bandler, R., & Grinder, J. (1976). The structure of magic : A book about language and therapy. Science & Behavior Books. 11
Bertsekas, D., & Gallager, R. (1987). Data networks. Prentice-Hall, Inc. Caldwell, C., & Johnston, V. S. (1991, July). Tracking a criminal suspect through "face-space" with a genetic algorithm. In Proceedings of the Fourth International Conference on Genetic Algorithm (pp. 416{421). Morgan Kaufmann Publisher. Cantu-Paz, E. (1997). A survey of Parallel Genetic Algorithms (IlliGAL Report 97003). Department of General Engineering, UIUC. Carver, N., & Lesser, V. (1994). The evolution of blackboard control architectures. Expert Systems with Applications, Special Issue on The Blackboard Paradigm and Its Applications , 7 (1), 1{30. Darwin, C. (1859). The origin of species on the basis of natural selection. London: Murray. Reprinted, New York: Penguin, 1984. Dawkins, R. (1976). The sel sh gene. Oxford University Press. Eno, B. (1998). An incremental strategy for changing the world (Foreword to Global Ideas Bank Compendium). GIB. www.globalideasbank.org /wbi/WBI-1.HTML. Friedberg, R. M. (1958). A learning machine: Part i. IBM Journal of Research and Development , 2(1), 2{13. Goldberg, D. E. (1989). Genetic algorithms in search, optimization, and machine learning. Reading, MA: Addison-Wesley. Goldberg, D. E., Hall, W. B., Krussow, L., Lee, E., & Walker, A. (1998). Teamwork for Quality Education: Low-cost, e ective educational reform, through a department-wide competition of teams (IlliGAL Report 98005). Department of General Engineering, UIUC. Halvey, J. K., & Melby, B. M. (1999). Business process outsourcing : Process, strategies, and contracts. John Wiley & Sons. Holland, J. H. (1975). Adaptation in natural and arti cial systems. University of Michigan press. Howard, P. J. (1994). The owner's manual for the brain, everyday applications from mind-brain research. Leornian Press. Howell, W. C., & Goldstein, I. L. (1971). Engineering psychology, current perspectives in research. Appleton-Century-Crofts, NY. Kosoruko , A. (1999). Genetic synthesis of cascade structures for particle classi cation with given parameters. Review of applied and industrial mathematics , 6 (1). (in Russian). Kosoruko , A. (2000a). Human Based Genetic Algorithm (HBGA). http://3form.com/hbga. Kosoruko , A. (2000b). Social classi cation structures. optimal decision making in an organization. In Late breaking papers of GECCO'2000, Genetic and Evolutionary Computation Conference Proceedings (pp. 175{178). Las Vegas, Nevada. Kosoruko , A., & Goldberg, D. (2001). Genetic algorithms for social innovation and creativity. IlliGAL report #2001005. Kosoruko , A., Mittenthal, J., & Goldberg, D. (2001). Modeling of evolution of signaling networks in living cells by evolutionary computation. IlliGAL report #2001006. Miranda, E. (2000). On the music of emergent behavior: What can evolutionary computation bring to the musician? In Proceedings of 2000 Genetic and Evolutionary Computational Conference workshop program (pp. 140). Las Vegas, Nevada. 12
Moroni, A., Zuben, F. V., & Manzolli, J. (2000). ArTbitration. In Proceedings of 2000 Genetic and Evolutionary Computational Conference workshop program (pp. 143). Las Vegas, Nevada. Pinker, S. (1998). How the mind works. W. W. Norton. Sims, K. (1991, July). Arti cial evolution for computer graphics. In ACM Siggraph Conference Proceedings, Volume 25 of Computer Graphics (pp. 319{328). Smith, J. R. (1991, July). Designing biomorphs with an interactive genetic algorithm. In Proceedings of the Fourth International Conference on Genetic Algorithms (pp. 535{538). Morgan Kaufmann Publisher. Soddu, C. (2000). Argenia, art's idea as generative code. In Proceedings of 2000 Genetic and Evolutionary Computational Conference workshop program (pp. 150). Las Vegas, Nevada. Takagi, H. (1998). Interactive evolutionary computation: System optimization based on human subjective evaluation. INES'98 . Unemi, T. (2000, July). SBART 2.4: an IEC tool for creating 2D images, movies and collage. In Proceedings of 2000 Genetic and Evolutionary Computational Conference workshop program (pp. 153). Las Vegas, Nevada.
13