7
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998 453 Correspondence On Generating Distributed Intelligence Systems Architectures Using Genetic Algorithms Abbas K. Zaidi and Alexander H. Levis Abstract— A methodology for generating large-scale distributed in- telligence systems (DIS’s) using genetic algorithms is presented. An organizational structure (chromosome) is characterized by generic inter- actions (genes) among the individual nodes comprising it. The objective function evaluates each structure in the generated population against a set of structural constraints and some user-defined criteria. The structures satisfying these constraints are feasible solutions to the design problem. Index Terms—Genetic algorithms, Petri nets, organization design. I. INTRODUCTION The methodology presented in this paper is an extension of the earlier work reported in [1]–[3] for modeling, designing, and evaluating distributed intelligence systems (DIS’s). As defined by Minsky [4], DIS’s are those systems in which the capacity for reasoning is dispersed across its component subsystems: each function of the system is spread over a number of nodes so that each node’s activity contributes a little to each of the several different functions. The systems characterized as DIS carry out a number of functions, sometimes in sequence and sometimes concurrently, which makes it difficult to decompose them for their allocation to available resources [5]. The allocation of several decomposed functions to different nodes must be done in such a manner that the resulting organizational structures do not violate a number of structural and cognitive constraints. In the earlier work, an organization is considered as a system performing a task; the system is modeled as an interconnection of organization nodes (decision-making units or DMU’s). Levis [6] presented a general five-stage model of the DMU—the interacting decision-maker model–that subsumed all of the previous ones without invalidating any of the cognitive modeling or the design algorithms. Each organization member is represented by a multistage model [3]. The formal specification of the allowable interactions between decision makers was made by Remy and Levis [1], which led to the Lattice algorithm for generating all feasible fixed-structure architectures that meet a number of structural (see Section IV) and user-defined (see Section II) constraints. Andreadakis and Levis [2] introduced an alternative model based on the functions carried out by a resource, whether the latter represented a human or a machine. That model formed the basis for a different algorithm for organization design—the data flow structure (DFS) algorithm. All of these efforts resulted in methodologies for designing flat architectures, in which the system is viewed only from a single level of detail. Although these methodologies used mathematical properties Manuscript received March 4, 1997; revised March 13, 1998. This work was supported by the Office of Naval Research under Contract N00014-93- 1-0912. A. K. Zaidi is with the Department of Computer Science, Karachi Univer- sity, Karachi 75270, Pakistan. A. H. Levis is with the School of Information Technology and Engineering, George Mason University, Fairfax, VA 22030 USA (e-mail: [email protected]). Publisher Item Identifier S 1094-6977(98)03889-9. Fig. 1. Top-level description of a genetic algorithm. of the feasible structures to reduce the search of the solution space, when it came to complex, large-scale DIS, the methodologies were confronted by the combinatorial nature of the problem. The design methodology by Zaidi and Levis [3] introduced an approach for solving this problem by defining a DIS as families of structures, with each family concerned with the behavior of the system as viewed from a different level of abstraction. The description of a DIS in a hierarchical manner provided a natural, structured, modular way for formulating and solving the design problem, especially for large organizations. An organization with hundreds of lower level subsystems can be modeled with less computational effort by carefully defining the higher level subsystems of the organization in terms of the lower level ones [7]. Although this approach solves the problem by reducing the search of the feasible solutions, in doing so, it forces a designer to make certain structural decisions earlier in the design process, which in turn limits the degrees of freedom left for the design algorithm. Therefore, on the one hand, the Lattice algorithm generates the complete set of feasible organizations but is computationally constrained to small numbers of decision makers, while the multilevel approach can handle large organizations but it imposes some additional structural constraints. This paper presents an alternative—mathematically less rigor- ous—approach for the generation of large-scale organizational struc- tures using genetic algorithms. In the genetic algorithm procedure, an initial population of organizational structures is specified, which reflects the designer’s specifications. The population of structures is enhanced genetically by means of mutation and crossover operations. The newly generated structures are tested for certain structural requirements and are assigned a fit based on this evaluation. The feasible and/or stronger structures are retained in the population and the weaker ones are removed. The best individual in the final population produced can be used as the solution to the design prob- lem. Fig. 1 presents a top-level description of the genetic algorithm (the description in the figure describes most algorithms.) [8]–[9] The rest of this paper describes the details of the implementation of this approach for the design of DIS structures. II. MATHEMATICAL MODEL The mathematical formulation of the design problem is based on Petri net theory [10]–[11]. The Petri net representation of the five- stage DMU is shown in Fig. 2. The labels are generic names for the situation assessment (SA), information fusion (IF), task processing 1094–6977/98$10.00 1998 IEEE

On generating distributed intelligence systems architectures using genetic algorithms

  • Upload
    ah

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: On generating distributed intelligence systems architectures using genetic algorithms

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998 453

Correspondence

On Generating Distributed Intelligence SystemsArchitectures Using Genetic Algorithms

Abbas K. Zaidi and Alexander H. Levis

Abstract—A methodology for generating large-scale distributed in-telligence systems (DIS’s) using genetic algorithms is presented. Anorganizational structure (chromosome) is characterized by generic inter-actions (genes) among the individual nodes comprising it. The objectivefunction evaluates each structure in the generated population against a setof structural constraints and some user-defined criteria. The structuressatisfying these constraints are feasible solutions to the design problem.

Index Terms—Genetic algorithms, Petri nets, organization design.

I. INTRODUCTION

The methodology presented in this paper is an extension ofthe earlier work reported in [1]–[3] for modeling, designing, andevaluating distributed intelligence systems (DIS’s). As defined byMinsky [4], DIS’s are those systems in which the capacity forreasoning is dispersed across its component subsystems: each functionof the system is spread over a number of nodes so that eachnode’s activity contributes a little to each of the several differentfunctions. The systems characterized as DIS carry out a number offunctions, sometimes in sequence and sometimes concurrently, whichmakes it difficult to decompose them for their allocation to availableresources [5]. The allocation of several decomposed functions todifferent nodes must be done in such a manner that the resultingorganizational structures do not violate a number of structural andcognitive constraints.

In the earlier work, an organization is considered as a systemperforming a task; the system is modeled as an interconnection oforganization nodes (decision-making units or DMU’s). Levis [6]presented a general five-stage model of the DMU—the interactingdecision-maker model–that subsumed all of the previous ones withoutinvalidating any of the cognitive modeling or the design algorithms.Each organization member is represented by a multistage model[3]. The formal specification of the allowable interactions betweendecision makers was made by Remy and Levis [1], which ledto the Lattice algorithm for generating all feasible fixed-structurearchitectures that meet a number of structural (see Section IV) anduser-defined (see Section II) constraints. Andreadakis and Levis [2]introduced an alternative model based on the functions carried outby a resource, whether the latter represented a human or a machine.That model formed the basis for a different algorithm for organizationdesign—the data flow structure (DFS) algorithm.

All of these efforts resulted in methodologies for designingflatarchitectures, in which the system is viewed only from a single levelof detail. Although these methodologies used mathematical properties

Manuscript received March 4, 1997; revised March 13, 1998. This workwas supported by the Office of Naval Research under Contract N00014-93-1-0912.

A. K. Zaidi is with the Department of Computer Science, Karachi Univer-sity, Karachi 75270, Pakistan.

A. H. Levis is with the School of Information Technology and Engineering,George Mason University, Fairfax, VA 22030 USA (e-mail: [email protected]).

Publisher Item Identifier S 1094-6977(98)03889-9.

Fig. 1. Top-level description of a genetic algorithm.

of the feasible structures to reduce the search of the solution space,when it came to complex, large-scale DIS, the methodologies wereconfronted by the combinatorial nature of the problem. The designmethodology by Zaidi and Levis [3] introduced an approach forsolving this problem by defining a DIS as families of structures,with each family concerned with the behavior of the system asviewed from a different level of abstraction. The description of aDIS in a hierarchical manner provided a natural, structured, modularway for formulating and solving the design problem, especiallyfor large organizations. An organization with hundreds of lowerlevel subsystems can be modeled with less computational effort bycarefully defining the higher level subsystems of the organization interms of the lower level ones [7]. Although this approach solves theproblem by reducing the search of the feasible solutions, in doingso, it forces a designer to make certain structural decisions earlierin the design process, which in turn limits the degrees of freedomleft for the design algorithm. Therefore, on the one hand, the Latticealgorithm generates the complete set of feasible organizations but iscomputationally constrained to small numbers of decision makers,while the multilevel approach can handle large organizations but itimposes some additional structural constraints.

This paper presents an alternative—mathematically less rigor-ous—approach for the generation of large-scale organizational struc-tures using genetic algorithms. In the genetic algorithm procedure,an initial population of organizational structures is specified, whichreflects the designer’s specifications. The population of structures isenhanced genetically by means ofmutationandcrossoveroperations.The newly generated structures are tested for certain structuralrequirements and are assigned a fit based on this evaluation. Thefeasible and/or stronger structures are retained in the populationand theweakerones are removed. Thebest individual in the finalpopulation produced can be used as the solution to the design prob-lem. Fig. 1 presents a top-level description of the genetic algorithm(the description in the figure describes most algorithms.) [8]–[9] Therest of this paper describes the details of the implementation of thisapproach for the design of DIS structures.

II. M ATHEMATICAL MODEL

The mathematical formulation of the design problem is based onPetri net theory [10]–[11]. The Petri net representation of the five-stage DMU is shown in Fig. 2. The labels are generic names for thesituation assessment(SA), information fusion(IF), task processing

1094–6977/98$10.00 1998 IEEE

Page 2: On generating distributed intelligence systems architectures using genetic algorithms

454 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998

Fig. 2. Five-stage model of a DMU [6].

Fig. 3. Allowable interactions.

(TP), command interpretation(CI), and response selection(RS)processes, respectively. A DMU receives input or datax from theexternal environment (sensors); the incoming data are processed inthe SA stage to get the assessed situationz. This variable may besent to other DMU’s. If the DMU receives assessed data from otherDMU’s, these dataz0 are fused together with its own assessmentz

in the IF stage to get the revised assessed situationz00, The assessedsituation is processed further in the TP stage to determine the strategyto be used to select a response. The variablev contains both theassessed situation and the strategy to be used in the RS stage. Aparticular DMU may receive a commandv0 from a super-ordinateDMU or information regarding the response selected by another DMU(results sharing). This is depicted by the use of the CI stage. Theoutput of that stage is the variablew that contains both the revisedsituation assessment data and the response selection strategy. Finally,the output or the response of the DMU,y; is generated by the RSstage.

As discussed in [1], only certain types of interactions make sensewithin the model. They are depicted in Fig. 3. For the sake of clarity,only the links from theith DMU to the jth DMU are presented.The symmetrical links fromj to i are valid interactions as well.The variableei represents theinput to a decision-making node.The presence of such a link characterizes the fact that a particularDMU may receive data from the external environment. The variablesi represents theoutput of a decision-making node to processesexternal to the organizational structure considered. The variableFij

depicts the transmission of assessed situation from nodei to nodej;Gij models the transmission of control from the output of adecision-making node to the input of another;Hij models the resultor processed information sharing type of interaction between twodecision-making nodes; andCij represents the flow of instructionsor commands from one decision-making node to another.

The variablesei; si; Fij ; Gij ; Hij ; Cij in Fig. 3 are binary vari-ables taking values inf0; 1g; where 1 indicates the presence of thecorresponding link in the organizational structure and 0 indicates itsabsence. Note that the value of the variable does not indicate thenumber of such links that actually exist. The variables are aggregatedinto two vectorseee and sss and four matricesFFF ;GGG;HHH; and CCC. Theinteraction structure of an organization consisting ofn DMU’s is,

therefore, represented by the six-tuple

� = feee; sss; FFF ;GGG;HHH;CCCg (1)

whereeee andsss aren � 1 arrays representing the interactions of then-DMU’s

eee = [ea] sss = [sa]; a = 1; 2; � � � ; n: (2)

FFF ;GGG;HHH; andCCC are fourn � n arrays representing the interactionsamong the DMU’s of the organizational structure

FFF = [Fab] GGG = [Gab] HHH = [Hab]

CCC = [Cab]; b = 1; 2; � � � ; n: (3)

The diagonal elements of the matricesFFF ;GGG;HHH; and CCC are setidentically equal to zero; DMU’s are not allowed to interact withthemselves

Faa = Gaa = Haa = Caa = 0; a = 1; 2; � � � ; n: (4)

These relations must hold true for all solutions.The application of a genetic algorithm to the problem of generating

DIS architectures requires an encoding of the solutions in the problemdomain to chromosomes—individuals in a population. The mecha-nism used for encoding takes the analytical model of an organization’sinteractional structure� = feee; sss; FFF ;GGG;HHH;CCCg and converts thesevectors and matrices into bit strings representing�. The followingexample illustrates the technique.

Example 1: The organizational structure of a DIS is given by thetuple �

eee = [0 1] sss = [1 1];

�: FFF =# 01 #

GGG =# 01 #

HHH =# 00 #

CCC =# 10 #

:

The bit string representing the chromosome� is obtained by thefollowing encoding:

�:

e

0 1

F

0 1

G

0 1

H

0 0

C

1 0

s

1 1:

The diagonal elements of the matricesFFF ;GGG;HHH; andCCC are ignoredin the bit string representation since they remain zero (4) throughoutthe design procedure.

Notation

An ith bit in the bit string representation of an organizationalstructure� is accessed through the notation�[i]; i.e., �[4] = 1in Example 1.

The length of the string representing an organizational structure�is denoted byj�j; i.e., j�j = 12 in Example 1. The length of thebit string representing an organizational structure withn DMU’s isgiven by

j�j = 4n2 � 2n wheren is the number of DMU’s in�:

(5)

Therefore, the index ‘i’ in �[i] takes on the values1 � i �4n2 � 2n.

Page 3: On generating distributed intelligence systems architectures using genetic algorithms

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998 455

Fig. 4. Six-point crossover.

III. D ESIGN REQUIREMENTS

The interactional requirements for a DIS can be translated intorequirements on the arrays. The designer may rule in or out some ofthe links by specifying ones and zeroes at corresponding places in thearrays. This introduces the notion ofuser-definedconstraints(Ru).

The user-defined constraints for an organization, in terms of itsconstituent DMU’s, are given as the tuple�i

eee = [1 x] sss = [0 x];

�i: FFF =# 1x #

GGG =# 00 #

HHH =# x

x #CCC =

# 00 #

:

The bit string representation of�i is given as

�i: 1 x 1 x 0 0 x x 0 0 0 x: (6)

Thex’s in the arrays represent the unspecified elements or optionallinks. The optional links determine the degree of freedom left in thedesign process and potentially yield a number of candidate solutionsto the design problem, all satisfying the user-defined constraints(Ru).

The chromosome in (6), which represents user-defined constraints,shows the building block orschema[8], [9] for the generation offuture populations of structures. A one or zero at any position meansthat the chromosomes in future populations must have the same valueat that position to belong to the schema. Thex’s represent the genes(interactions) that can be replaced by either ones or zeroes geneticallyto generate new populations of solutions.

The first step in the genetic algorithm approach requires an initialpopulation of chromosomes to start the process. In the approachpresented in this paper, the bit strings representing the Universal andthe Kernel nets [1] are used to initialize the population.

Definition: The Universal net associated with the constraintsRu � (Ru) is the net defined by the tuple� obtained by replacingall undetermined elements offeee; sss; FFF ;GGG;HHH;CCCg by one. Similarly,the Kernel net!(Ru) is the net obtained by replacing the sameundetermined elements by zero.

Definition: The bit strings representing(Ru) and !(Ru) aretermed as Universal and Kernel chromosomes, respectively.

For the illustrative example in (6), the initial population is given as

i(Ru): 1 1 1 1 0 0 1 1 0 0 0 1

!i(Ru): 1 0 1 0 0 0 0 0 0 0 0 0: (7)

IV. STRUCTURAL REQUIREMENTS

The degrees of freedom left in the design procedure result in a verylarge set of candidate organizational structures. However, a numberof them may correspond to patterns of interactions among DMU’sthat do not make physical sense. This leads to the definition ofstructural constraints(Rs) [1]. The structural constraints are definedwith respect to the Petri net representation and the analytical modelpresented in (1).

Fig. 5. Petri net representation of six-point crossover.

Fig. 6. Example of bit mutation.

Structural Constraints

(R1) The ordinary Petri net that corresponds to� should beconnected; i.e., there should be at least one (undirected) path betweenany two nodes in the net. A directed path should exist from the sourceplace to every node of the net and from every node to the sink.

(R2) The ordinary Petri net that corresponds to� should have noloops; i.e., the structure must be acyclic. This reflects the fact thatthe DIS represents a task-oriented organization—inputs are receivedand processed, and outputs are generated.

(R3) In the ordinary Petri net that corresponds to�, there can beat most one link from the RS stage of a DMUi to another DMUj;i.e., for eachi andj, only one element of the tripletfGij ; Hij ; Cijgcan be nonzero. The analytical expression of this constraint is given as

8(i; j) Gij +Hij + Cij � 1 i 6= j; i; j = 1; 2; � � � ; n:

(8)

(R4) Information fusion can take place only at the IF and CI stages.Consequently, the SA stage of a DMU can either receive informationfrom the external environment or an output from another DMU. Thetranslation of this constraint into mathematical terms follows:

8j ej +

n

i=1

gij � 1; j = 1; 2; � � � ; n: (9)

The first part of constraint R1 eliminates any organizational formthat does not represent a single structure. The second part of R1insures that the flow of information is continuous within the organiza-tional structure. It eliminates internal sink or source places. ConstraintR2 allows acyclical organizational structures only. This restrictionis imposed to avoid deadlocks and infinite circulation of messageswithin the organization. Constraint R3 indicates that it does not makesense to send the same output to the same DMU at several stages. Itis assumed that once the output has been received by a DMU, thisoutput is stored in its internal memory and can be accessed at laterstages. Constraint R4 has to do with the nature of the IF stage. The IFstage has been introduced explicitly to fuse the situation assessmentsfrom other DMU’s. It prevents a DMU from receiving more thanone input at the SA stage.

Page 4: On generating distributed intelligence systems architectures using genetic algorithms

456 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998

Fig. 7. First feasible structure generated by the methodology.

Evaluation Function

Each individual chromosome in a population is evaluated onthe basis of the structural requirements R1–R4. The description ofthe encoded structural constraints, which check the feasibility ofchromosomes against these requirements, follows.

(R1) As pointed out in [1], a DMU, based upon the inputs andoutputs, can have one of the four possible internal structures

�SA along withy = z

�SA, IF, TP, CI, and RS

� IF, TP, CI, and RS withx = z0

�CI and RS withx = v0

: (10)

The genetic implementation of R1 checks the bit string representa-tion of � to establish the internal structure of each constituent DMU.For a connected organizational architecture, the internal structures ofall DMU’s in a � must fall within the four possibilities described.In addition to checking the� for internal structures in (9), thefollowing checks, (11) and (12), are also performed to ensure that theorganization is also connected to the external environment throughinputs and outputs (sink and source places)

n

j=1

�[j] � 1 (11)

n

j=1

� 4n2 � 3n+ j � 1: (12)

(R2) The manner in which allowable interactions are definedamong DMU’s ensures the fact that a cycle in an organizationalstructures must contain RS stages. An algorithm is implementedthat selects each RS stage present in the organization structure andidentifies recursively all stages that are input to the selectedRSistage. In case the algorithm encounters an RS stage twice during itssearch, it reports the presence of a cycle in the structure, otherwise itterminates at the sink place. The algorithm keeps a record of all RSstages that are encountered while searching loops for theRSi stage.

In the next iteration, the algorithm confines itself to only those RSstages that have not been encountered so far. The algorithm repeatsitself until all such stages are searched for loops and terminates witha report of presence or absence of cycles in the structure.

(R3) The analytical expression of this constraint, applied to the bitstring representation of a structure, is given as

8i � n2 + i +� 2n2 � n+ i + � 3n2 � 2n+ i � 1;

i = 1; 2; � � � ; (n2 � n): (13)

(R4) The translation of this constraint for the bit string represen-tation of � follows:

8j �[j] +

n

i=1

�[ki;j ] � 1; j = 1; 2; � � � ; n

where

k =n2 + (i� 1)(n� 1) + j � 1; for i < j

n2 + (i� 1)(n� 1) + j; for i > j:(14)

Fitness Value

Once the individuals in a population are checked by the objectivefunction, a fitness value is assigned to each chromosome. The fitnessvalue assigned to an individual is calculated by the following formula:

Fitness= df +NL

where

�f =4n2; if � is feasible0; otherwise

and

NL = Number of 1’s in�: (15)

The rationale for assigning a high�f value to the feasible chromo-somes is to steer the genetic process toward more and more feasibleindividuals. An infeasible chromosome might acquire a maximumfitness value, as indicated in (5). The reason for assigning a 4n2

Page 5: On generating distributed intelligence systems architectures using genetic algorithms

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998 457

Fig. 8. Best structure in the thirtieth generation.

value to all feasible chromosomes is to keep at least a distance of 2n

between feasible and infeasible chromosomes.The addition of index NL ensures the fact that the “best” individual

in a population will be the most connected one; an organizationalstructure with more interactional links among its constituent DMU’swill be considered “stronger” by the algorithm than the rest. The indexNL can be modified to reflect the designer’s requirements on the inter-actional structure of an organization; i.e., a least-connected structurecan be considered the “strongest” chromosome in a population.

V. COMPUTATION OF SOLUTIONS

This section presents a detailed description of the genetic processemployed to solve the design problem.

A. Feasibility of Schema

The user-defined constraints result in a schema that forms the build-ing blocks for the generation of future population of chromosomesor structures. The genes (interactions) that are ruled in or out bythe designer remain constant throughout the evolution process. The

genetic difference among several chromosomes is due to the optionalgenes (x’s in the bit string.) Therefore, if there exist errors (violationsof structural constraints) caused by the customary genes in the schemaof an organization structure, they will be propagated throughout theentire population of chromosomes; the evolution process will neveryield any feasible organization structure. In order to avoid this wasteof time and computation effort, the following checks are performed onthe initial population of chromosomes prior to invoking the geneticprocess.

• Kernel chromosome is checked for the constraint R2.• Kernel chromosome is checked for the constraint R3.• Kernel chromosome is checked for the constraint R4.

If the initial population fails any of these tests, the genetic processis immediately halted and the designer is warned of the infeasibilityof the schema. The first check is based on the rationale that, if anorganizational structure with only the customary interactions amongits DMU’s lacks the acyclicity requirement, acyclical structurescannot be generated by adding more interactions to it. The samerationale applies to the rest of the checks performed on the initialpopulation. Note that even after these checks are performed on

Page 6: On generating distributed intelligence systems architectures using genetic algorithms

458 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998

Fig. 9. Population versus average fitness.

Fig. 10. Population versus number of feasible solutions.

the Kernel chromosome, we cannot guarantee the feasibility of theschema in terms of the structural constraint R1. The check for thefeasibility of the schema for R1 is a very involved process andtherefore is dropped in favor of the speed of the process.

B. Crossover

In a genetic algorithm, crossover recombines the genetic materialin two parent chromosomes to make two children. The childrenare made by cutting the parents at a (or some) point(s) and thechromosomal material is swapped between the cut point(s). In themethodology employed to generate DIS architectures, a six-pointcrossover operator is used, which cuts the parents at six points, withone cut at eache, s, F, G, H, andC part of the chromosomes, andthe children are made by exchanging the parental genetic materialafter the cut. An example of this six-point crossover is presented inFig. 4 during a run of the genetic algorithm. The children are madeby cutting the parents at the points denoted by the vertical lines andexchanging genetic material after the cut. A Petri net representationof the process in Fig. 4 is shown in Fig. 5. It is obvious in Fig. 5that the crossover operator can produce children that are drasticallydifferent from their parents. Another important feature is that thecrossover will not introduce differences for a bit in a position whereboth parents have the same value, thus preserving the customaryinteractions introduced by the designer.

C. Mutation

When bit mutation is applied to a bit string, it sweeps the list ofbits, replacing each by a randomly selected bit if a probability test ispassed. The bit mutation operator employed for the methodology isa restricted one, in the sense that it only operates on the optionallinks in a bit string representation of an organization structure,i.e., �[2];�[4];�[7];�[8]; and �[12] are the only bits in� in (6)

Fig. 11. Population versus maximum fit.

where the mutation operator is applied. The probability parameterassociated with the mutation operator is usually quite low. However,contrary to this practice, a large probability parameter used inthe methodology for generating DIS architecture was found morepromising in generating feasible solutions than its lower counterpart.The genetic algorithm with an unusually high rate of mutationgenerated feasible structures faster than the algorithms with verylow mutation rates. Fig. 6 shows an example of bit mutation on aPetri net representation of structures.

D. Selection

The genetic process applies mutation and crossover operations tothe individuals of a population to yield a new generation (population)of chromosomes. At present, the algorithm for generating DIS archi-tectures selects the “stronger” individuals in a population to mateand reproduce. The strength of an individual is determined by thefitness value (15) assigned to it by the evaluation function. Theelitist[8] approach is employed to add chromosomes to the subsequentpopulations.

The best member of the population may fail to produce offspringin the next generation. The elitist strategy fixes this potential sourceof loss by copying the best member of each generation into thesucceeding generation. In the present approach, all of those feasiblemembers of a previous population are added to the new generationthat are stronger than the members of the new generation.

VI. A PPLICATION

The procedure presented in this paper was applied to the designproblem illustrated by Zaidi and Levis [3] in their approach of gener-ating large-scale DIS architectures through a hierarchical arrangementof the system. Due to the computational and memory intensive natureof the design problem, the implementation of the Lattice algorithm[1] could not handle this same problem. The user-defined constraintsfor this design problem are given as follows:

eee = [1 x 1 1 1 x]

sss = [0 x 1 1 x 1];

�: FFF =

# 1 x x 0 0x # x x 0 0x x # x x x

x x x # x x

x x 0 0 # x

x x 0 0 0 #

Page 7: On generating distributed intelligence systems architectures using genetic algorithms

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS, VOL. 28, NO. 3, AUGUST 1998 459

GGG =

# 0 0 0 0 0

0 # 0 0 0 0

0 0 # 0 0 0

0 0 0 # 0 0

0 0 0 0 # x

0 0 0 0 x #

HHH =

# x 0 0 0 0

x # 0 0 0 0

0 0 # x 0 0

0 0 x # 0 0

0 0 0 0 # 1

0 0 0 0 0 #

CCC =

# 0 0 0 0 0

0 # 0 0 0 0

x x # 1 x x

x x 0 # x x

0 0 0 0 # 0

0 0 0 0 0 #

:

After generating the initial population—Universal and Kernel chro-mosomes—the Kernel chromosome is checked for the infeasibilityof the schema. Once all checks are cleared, the genetic process getsstarted. The process can be stopped as early as the first feasible chro-mosome is generated, or whenever the time limit is surpassed. Themethodology presented in this paper is implemented onDesignCPN1

[12] with code segments written inML and with the logic of theprocess embedded in the colored Petri net model. An ML programcan be used to transform or decode the bit string representation of anorganization structure to its Petri net representation. The methodologyis applied to the illustrative example: the algorithm yielded thefirst feasible chromosome in the fourth population. Fig. 7 showsthe Petri net representation of this structure; overall, 30 populationswere generated before the process was terminated by the user. Thebest structure in the 30th population is shown in Fig. 8 in termsof its Petri net representation. The structure in Fig. 7 is importantin the sense that it was eliminated from the solution space by thehierarchical methodology in [3] because of the design decisions takenat an earlier stage by the designer. The results of the applicationof the methodology to the illustrative example are summarized inFigs. 9–11.

VII. CONCLUSIONS

A methodology for generating DIS architectures using a geneticalgorithm has been presented. The approach provides an alternativefor the generation of large-scale organizational structures where thecombinatorial nature of the problem makes the previous approachescomputationally expensive or infeasible. Another advantage of usingthe approach is that additional structural and performance criteria canbe made an integral part of the design algorithm to direct the searchfor the solution in a particular direction.

REFERENCES

[1] P. A. Remy and A. H. Levis, “On the generation of organizationalarchitectures using Petri nets,” inAdvances in Petri Nets 1988, G.Rozenberg, Ed. Berlin, Germany: Springer-Verlag, pp. 371–385.

[2] S. K. Andreadakis and A. H. Levis, “Synthesis of distributed commandand control for the outer air battle,” inProc. 1988 Symp. CommandContr. Res. McLean, VA: Sci. Applicat. Int. Corp., pp. 352–364.

1DesignCPNis a trademark of Meta Software Corporation, Cambridge,MA.

[3] A. K. Zaidi and A. H. Levis, “Algorithmic design of distributedintelligence system architectures,” inIntelligent Control Systems: Theoryand Practice, M. M. Gupta and N. K. Sinha, Eds. Piscataway, NJ:IEEE Press, 1994.

[4] M. Minsky, The Society of Mind. New York: Simon & Schuster, 1986.[5] A. H. Levis, N. Moray, and Baosheng Hu, “Task allocation models and

discrete event systems,”Automatica, vol. 30, Feb. 1994.[6] A. H. Levis, “A colored Petri net model of intelligent nodes,” inRobotics

and Flexible Manufacturing Systems, J. C. Gentina and S. G. Tzafestas,Eds. Amsterdam, The Netherlands: Elsevier, 1992.

[7] M. D. Mesarovic, D. Macko, and Y. Takahara,Theory of Hierarchical,Multilevel Systems. New York: Academic, 1970.

[8] L. Davis, Handbook of Genetic Algorithms. New York: Van NostrandReinhold, 1991.

[9] J. H. Holland, Adaptation in Natural and Artificial Systems. AnnArbor, MI: Univ. of Michigan Press, 1975.

[10] T. Murata, “Petri nets: properties, analysis and applications,”Proc.IEEE, vol. 77, pp. 541–579, Apr. 1989.

[11] W. Reisig, Petri Nets, An Introduction. Berlin, Germany: Springer-Verlag, 1985.

[12] Design/CPN: A Reference Manual. Cambridge, MA: Meta Softw.Corp., 1992.

Auditory Guidance with the Navbelt—AComputerized Travel Aid for the Blind

Shraga Shoval, Johann Borenstein, and Yoram Koren

Abstract—A blind traveler walking through an unfamiliar environmentand a mobile robot navigating through a cluttered environment havean important feature in common: both have the kinematic ability toperform the motion, but they are dependent on a sensory system todetect and avoid obstacles. This paper describes the use of a mobile robotobstacle avoidance system as a guidance device for blind and visuallyimpaired people. Just as electronic signals are sent to a mobile robot’smotion controllers, auditory signals can guide the blind traveler aroundobstacles, or alternatively, they can provide an “acoustic image” of thesurroundings. The concept has been implemented and tested in a newtravel aid for the blind, called the Navbelt. The Navbelt introduces twonew concepts to electronic travel aids (ETA’s) for the blind: it providesinformation not only about obstacles along the traveled path, but alsoassists the user in selecting the preferred travel path. In addition, thelevel of assistance can be automatically adjusted according to changesin the environment and the user’s needs and capabilities Experimentalresults conducted with theNavbeltsimulator and a portable experimentalprototype are presented.

Index Terms—Auditory system, computer-aided instruction, handi-capped aids, headphones, sonar navigation.

I. INTRODUCTION

In order for a blind person to follow a particular route, the personmust have some concept or plan of that route. Once a route hasbeen learned (by experience or verbal instructions), successful travel

Manuscript received February 13, 1994; revised February 14, 1996 andNovember 8, 1997.

S. Shoval is with the Faculty of Industrial Engineering and Manage-ment, Technion—Israel Institute of Technology, Haifa, Israel 32000 (e-mail:[email protected]).

J. Borenstein and Y. Koren are with the Department of MechanicalEngineering and Applied Mechanics, The University of Michigan, Ann Arbor,MI 48109 USA.

Publisher Item Identifier S 1094-6977(98)03901-7.

1094–6977/98$10.00 1998 IEEE