Вы находитесь на странице: 1из 14

Human Based Genetic Algorithm Alex Kosoruko

IlliGAL Report No. 2001004 January 2001

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

Human Based Genetic Algorithm


Illinois Genetic Algorithms Laboratory 104 S. Mathews Avenue, Urbana, IL 61801 University of Illinois at Urbana-Champaign Phone/FAX: (217) 333-2346, (217) 244-5705
alex3@illigal.ge.uiuc.edu

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.

2 DECENTRALIZATION OF GENETIC ALGORITHMS


In this section we brie y review the di erent classes of GAs to show an apparent and important trend toward decentralization of control within GA and toward hybridization. 1

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.

3 GENETIC ALGORITHM AS A MULTI-AGENT SYSTEM


In this section we propose a multi-agent approach to GA analysis and engineering. We talk about GAs that delegate their usual functions to external agents, and perform only organizational functions themselves. I will refer to these as organizational or multi-agent GAs. Consequently, it is natural to use the business management concept of outsourcing here. Outsourcing takes place when an organization transfers the ownership of a business process to an external agent (Halvey & Melby, 1999). In other words, to outsource a function is to choose an external agent that will perform this function. Transfer of control is important here. It is important because the agent is external in a sense that we can't supervise it, can't have any control over its actions, and can't even know the methods it will use to perform its function. We only have control over our choice of agents, but not over the agents themselves. Of course, when we choose to perform a function ourselves, we retain the ownership of that function as our core competence, i.e. we decide not to outsource the function. When we consider outsourcing in GAs, we recognize three functions three primary functions to outsource: selection, mutation, and crossover (see Figure 1). To simplify our analysis, we will not 2

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.

4 ORGANIZATION OF AGENT INTERACTION


In this section, we describe how organizational procedure can be performed in multi-agent GA applications. There are several ways to organize information ows between agents. We will brie y describe two of them: a blackboard architecture and a network architecture. The former model is based on the principle shared media - multiple access where all data are centralized in one place. In the second model, both data and processes are distributed over the network of nodes. Apparently, the two models are complementary. The rst model has an advantage of simplicity while the second has an advantage of robustness.

4.1 Blackboard architecture


The blackboard model of problem solving arouse from the Hearsay speech understanding system and evolved into a popular framework for multi-agent AI systems. Blackboards allow problem solving in which the system dynamically switches among di erent levels of abstraction and in which multiple (competing, cooperating or independent) lines of reasoning are concurrently performed (Carver & Lesser, 1994). The blackboard system contains three main components: the blackboard, a set of agents which are usually referred as knowledge sources (KSs), and a control mechanism. The blackboard is a global database (shared by all KSs) that contains the data and potential partial solutions (hypotheses). The blackboard is usually a multi-layer structure, where layers correspond to di erent levels of abstraction. KSs examine the state of the blackboard and create new hypotheses or modify existing hypotheses when appropriate. KSs can't directly communicate with each other. All their communication happens only through their actions modifying the blackboard. In our case, KS correspond to the agents performing genetic operators over the population which is a blackboard in this case. Each agent can be represented in a precondition-action format. For example, the crossover can't be performed when there are less than two di erent individuals in the population, and this de nes its precondition. In the same way, a mutation can't be performed over the empty population. When precondition of an operator is satis ed, it become activated and available for the scheduling process, the simplest form of which is just a random choice of one activated agent at a time.

4.2 Network architecture


In network architecture, each agent is capable of direct communication with a subset of other agents through the established communication channels. All agents collectively form an interconnected classifying network of nodes, through which partial solutions can circulate, like data packets in packet switching networks (Bertsekas & Gallager, 1987). The purpose of this kind of network, though, is quite di erent from the usual purpose of preserving data and its reliable transmission to the destination. Since the nodes are agents that perform selection, recombination and mutation functions over arriving packets, such network can't be used for reliable transmission of data. While the usual data network optimizes the reliability of transmission, the classifying network optimizes classi cation quality. Good classi cation ensures us that the best solutions will be preserved while inferior ones will be nally discarded from the system. 5

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

Computational recombination agent

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.

7 HUMAN FACTORS IN HBGA


Among the three types of agent we discussed, humans de nitely deserve special treatment. There are at least two major factors to be considered here: fatigue and motivation.

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.1 Fatigue and informational capacity


For e ective organization in HBGA, we need to account informational capacity of communication interfaces and agents. The main factor here is that capacities of human communication and information processing are limited. Moreover, they are varied with time as a result of fatigue. It is known that human capacity to process information is limited. Di erent sources give di erent estimates: (Howard, 1994) suggests that people can process objects only one at a time, (Howell & Goldstein, 1971) suggests the number 2.5 bits (correspond to choice from 6 or 7 items). Psychologists used 7-point rating scales for a long time: ner categories doesn't add much to the usefulness of ratings. Unless these limits are taken into account when constructing HBGA interfaces, human agents will feel overloaded and get tired quickly. Fatigue problem is a known problem to interactive evolutionary computation and humancomputer interfaces in general. (Takagi, 1998) considers fatigue problem as the biggest problem of interactive GAs. He suggests following classi cation of techniques to address this problem in IGA: Improving the user interface { discrete tness values { on-line evaluation Improving the display interface { optimizing the order of evaluations with learning human tness function (predictions based on arti cial neural network or Euclidean distance) Quickening convergence { using small populations { using convex curve to approximate the searching surface { embedding human knowledge into evolutionary procedure Most of these methods are very valuable for HBGA as well and were used in the application described in the previous part. However, Takagi, 1998] notes that despite of much e ort to solve the fatigue problem, the results are still not very successful. It was natural to expect that fatigue problem will be twice as urgent in HBGA, because it relies on humans twice as much as usual interactive genetic algorithm does (double workload). However, the experience of people doesn't support this conclusion. Surprisingly, out of 500 people participated in Free Knowledge Exchange project based on HBGA, nobody reported this problem. It should be noted that HBGA populations are rather large than small, and they are not forced to quick convergence. Most probable explanation of this observation is that fatigue is not directly connected with the workload, but rather with the level of its diversity. In HBGA the workload of the individual agent has more variety than in IGA, utilizing both convergent and divergent thinking. More thorough analysis of this is presented in (Kosoruko , 2000a).

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

Вам также может понравиться