Probabilistic Strategy Based Dynamic System Design ...

2 downloads 8104 Views 508KB Size Report
be good configurations with suboptimal parameter values. The design problem ... thus are a logical choice for representing models in software. From the ... the design automation of dynamic systems. Tay et al. (1998) ... mechanism. Seo et al. (2002) make further improvements on the dynamic system design automation.
Probabilistic Strategy Based Dynamic System Design Using Bond Graph and Genetic Algorithm Zhaohong Wu Graduate Student

Benito R. Fern´andez Associate Professor

[email protected]

[email protected]



Matthew Campbell Assistant Professor [email protected]

Abstract This paper proposes a probability-encoded genotype serving as a design strategy (designer) to generate design topologies using bond graphs. This strategy evolves by applying a genetic algorithm (GA) for exploration of a multi-domain design space in a topologically openended manner, finding configurations efficiently. Probability-based decision making encoded in the designer is applied at each topology generation stage. Instead of searching topology and parameters simultaneously like in genetic programming, our approach completes the design process in two sequential steps: 1) topology generation and 2) parameter optimization. By this means, the mathematical model generated from the topology can be efficiently tuned by optimizing the parameters independent of the configuration. A circuit filter design problem is used as a case study.

Keywords: Designer Evolution, Genetic algorithm, Bond graph, Automated Design.

1

Introduction

The design of dynamic systems is an important part of many engineering designs. Design specifications, usually in the time or frequency domains (settling or rise time, percentage overshoot, bandwidth, resonant peak, etc.), are ∗

The University of Texas at Austin, 1 University Station, MC C2200, Austin, TX 78712-0292.

1

difficult to specify and parameterize as static equations. In general simulations are required. As a result, traditional optimization tools are, in most cases, inappropriate. Most designers of dynamic systems are forced to use simulation-based tools in an attempt to handle this type of problems. The design problem is, in general, staged in two steps. First, “design” the topology of a tentative solution which components are selected (gears, shafts, motors, etc.) and how they are arranged to perform the desired function. Second, “optimize” the values of the relevant component parameters the values of each component’s unique defining characteristics (length, stiffness, inertia, etc.) One of the major problems in this scenario is the requirement of features of the system dynamic response as part of the specs and hence, the optimization cost function. A related problem is the degree of modeling complexity of the design components (the interactions amongst themselves and between them and the environment) necessary to arrive to a reasonable design. Simple models may not have enough fidelity to represent the true response of the system, very complex models may require unnecessary computations. After reviewing some related work, this paper proposes the use of bond graphs as a tool to systematically model components at different levels of complexity and genetic algorithms to generate design candidates. The paper uses a probability-encoded genotype serving as a design strategy (designer) to generate design candidates comprised of electro-mechanical components. This strategy evolves applying a genetic algorithm (GA) to facilitate sufficient exploration of a multi-domain design space in a topologically openended manner, yet find appropriate configurations efficiently enough to be useful. Instead of searching in the topology space and for parameters simultaneously like in (Seo et al. 2002), our approach views the design process as two sequential stages: first, a topology evolution stage, followed by parameter optimization of the generated topology. The mathematical model generated from the topology can be efficiently tuned by optimizing the parameters, while if topology and parameters are searched simultaneously, there might be good configurations with suboptimal parameter values. The design problem selected to test the methodology is that of finding a circuit model that has a frequency response that matches the user’s specifications. The problem is studied using a restricted set of bond graph elements to represent suitable topologies for simplicity. We present the initial results of our studies and identify key issues in advancing the approach toward becoming an effective and efficient open-ended design tool for multi-domain dynamic systems. 2

2 2.1

Background A-Design

Campbell (1999), in his A-Design method, develops a framework for automated the designing of configurations employing design agents that add elements to the design from a component library until the design meets the representation of components rich enough to model actual components and their connections. A-Design worked on the static configuration design, leaving the dynamic system physical design as an extension, which initiated this research. Bond graphs are used to represent the dynamics of each component and are combined to create a mathematical model of the system and for parameter optimization.

2.2

Bond Graphs

Bond graphs (Paynter, 61) are a robust approach to creating a set of ordinary differential equations representing the aggregate system behavior and thus are a logical choice for representing models in software. From the bond graph (BG) formalism, a number of other approaches have explored the design automation of dynamic systems. Tay et al. (1998) used genetic algorithm to suggest new dynamic system by topological remapping system constituents (Bond graphs). It starts from an existing BG design, and then applies a GA to generate new ones, which represents a new physical configuration according to some embedded or human preferred mapping mechanism. Seo et al. (2002) make further improvements on the dynamic system design automation. They used genetic programming (GP) and BG elements to dynamically generate BG designs from “embryos”. As an inherent aspect of genetic programming, the design topology and the parameters are searched in the solution space simultaneously. However, for applications demanding heavy computation, model-based optimization is attractive for two reasons: 1) Symbolic models are better than algebraic models since the model derivation becomes a one-time calculation for each topology. 2) Gradient based optimization possible; hence the parameters are “optimized” for the specific topology. The approach presented, makes the design process two sequential stages by following the topology generation with parameter optimization. We call this approach TEAPODS (see Fig. 6). This way, the mathematical model built from the topology is meaningful and can be utilized very efficiently for the parameter optimization purpose instead of test-applying computation to each candidate solution.

3

2.3

Genetic Algorithm and Population Based Incremental Learning (PBIL)

Genetic algorithms (GA) search the solution space of a function through the use of simulated evolution, i.e. the survival of the fittest strategy. In general, the fittest individuals of any population tend to reproduce and survive to the next generation, thus improving successive generations. However, inferior individuals can, by chance, survive and also reproduce. GAs have been shown to solve linear and nonlinear problems by exploring all regions of the state space and exponentially exploiting promising areas through mutation, crossover, and selection operations applied to individuals in the population [Michalewicz 1994]. Population Based Incremental Learning (PBIL), introduced by Baluja [1994], is a technique derived by combining aspects of genetic algorithms and competitive learning. PBIL’s most significant difference from standard genetic algorithms is the removal of the concept of population found in GA’s. A population in GA can be thought of as implicitly representing a probability distribution of alleles over genes. PBIL takes this implicit distribution and makes it explicit by dispensing with the population and instead maintaining a set of probabilities for alleles over genes. In the common case of binary genes (two values per gene, 0 and 1) this set is simply a vector containing the probability for each gene that the value is a 1. PBIL does not use the fitness of all sampled solutions for any of its calculations, but only uses the best solution for updating its probability vector. Although this mechanism is applicable to some specific problems, for the cases in which no direct mapping between an allele and the best solution, there is not a convenient way to do the direct incremental learning (probability vector updating). The approach presented here, combines GA and PBIL, so that the GA is applied to the probability vector (designer, in our case).

3 3.1

Probabilistic designer evolutionary system Motivation

The evolutionary system proposed is based on the development or growth of a biological entity. DNA is only one factor in determining the individual’s phenotype (i.e. final form). If you look at the amount of information contained in the genes and the level of complexity of the resulting individual, there seems to be an increase in entropy that forces us to conclude that

4

there must be other factors involved in the cell’s development. It is the authors’ hypothesis that during development from a single cell, the creation of subsequent cells depends not only on the gene, but also on (external) environmental conditions, and prior history of how many cells and types of cells have been produced (local/internal environment). To model these unpredictable effects, the gene is viewed as a probability density function for the generation of the phenotype. Given this biologically inspired approach, the gene encodes not a solution to the problem, but instead a “generator” (in our case, a designer); a family of possible solutions. The designer is defined with a genetically encoded semantic grammar (GESG) of operators on how to construct a possible solution. The proposed research design cycle is as Figure 1. Given existing designs, we first check to see if the specifications are met. If so, we select the best design. While the specs are not met or until desired, we select the good designers of the current epoch and used them to generate the next population of designers. Each designer then generates new designs. An elitist approach is used, where the best designer and the best designs are kept always.

4 4.1

Representation in General Bond Graph Representation

For the purpose of multi-domain dynamic system design, the bond graph is adopted for model representation for the following reasons: First, bond graphs provide great convenience for modeling the wide range multi-energetic systems (for example, electrical, mechanical, hydraulic, pneumatic, thermal) by using a common notation; Second, the graphical nature of bond graphs allows far easy generation by random combination of bond and node components, postponing the consideration of equation descriptions until needed for detailed analysis. It is possible to span a large model search space with relatively few basic elements, or by combining the bond graph sub-modules of physical components. It is also easy to refine simple designs by adding size and/or complexity (reticulation) in any region (subsystem) as needed to meet performance requirements. Finally, the symbolic formulation of bond graph is ideally suited for parameter optimization at the later stage since gradient-based optimization is applicable and undoubtedly faster than stochastic searching methods. In an initial study, done for the purpose of dynamic system design, we use basic bond graph elements to store, and transform energy (C, I, R; 0, 1; TF, GY; SE, SF). These are generalized capacitance, inductance, and dissipation; the junction 5

Good Designs

Design Generation

Kept Yes

specs met?

Best Design

No Good Designers Copy Crossover Mutation Next Generation of Designers

Figure 1: Proposed Design Cycle. On each generation the surviving designers generate candidate designs (topologies). These designs are then optimized based on the specs. There are fitness evaluated for each design and for the designers that are used to select the next generation of designers.

6

elements 0 (common effort) and 1 (common flow); the transformation elements TF (transformer) and GY (gyrator); and the source elements SE (effort) and SF (flow), respectively. For simplicity (without loss of generality), in this initial study we don’t use transformation elements and the elements C, I, and R are restricted to be linear one-ports with constant parameters. This element set is sufficient to allow us to achieve designs that have practical meaning in engineering terms, while we learn how the various factors of the search method influence the results. By arranging elements in series and parallel other values of “equivalent” elements can be achieved through evolution of the topology.

4.2

Necessity of Causality checking of bond graph

Tay (1998) and Seo (2002), address the necessity of causality checking in generated Bond Graphs as a means to reduce the bond graph design space, which makes sense in the context that the building block in the generation process are bond graph elements instead of real physical elements. However, the ultimate goal of this research is to automate the design process of multidomain system based on physical component repository. Since each physical component (e.g., motor) can have different levels of complexity (Stein 1996), the system level bond graph model built upon the interconnected components can have either integral or derivative causality. Bond graph simplification techniques, for example, merging similar adjacent elements, can reduce the complexity. Although a simpler model (with reduced parameters) is dynamically equivalent, for our purpose (design), these could severely obscure the process of parameter optimization since it might combine some bond graph elements (e.g. two adjacent I elements), which actually belong to different physical components of even different energy domains. The approach presented here, doesn’t actually treat the bond graph causality checking as a necessity, instead makes it optional up to the design target and domain requirements. A software tool MTT is used to resolve causality and derive the system dynamic equations. Further, the method will eventually employ a qualitative representation of components rich enough to model actual components and their connections from A-Design (Campbell 1999), which will reduce the design space substantially.

4.3

Designer Representation

The designer is encoded as a list (Table 1). Like a chromosome, traditionally used in the genetic algorithms (GA), the set of descriptors will represent

7

probability density functions (PDFs, Figure 4.3) of all the possible operations that the designer can perform including which elements in a component repository are to be added to the candidate design. C

I

R

0

1

ADD

INS

REP

DEL

Complexity

0.82

0.31

0.05

0.89

0.23

0.50

0.85

0.30

0.03

0.80

Table 1: Designer representation (Generial Pdfs) of all the possible operators and all the possible elements.

pdf(compj) 12% 17% pdf(comp2)

10% 22% 13% pdf(compn)

18% pdf(comp1)

Figure 2: Roulette wheel that represent a particular designer’s likelihood of applying a particular operator.

4.3.1

Gating PDFs

The genetic data encodes the likelihood of a given (soft) “designer” to use a particular operator (e.g. “ADD gear”) at a specific location and at a particular instance in the design process. A gating mechanism is used to aid in making decisions for a certain design context. The operators that are not plausible at a given point in time are gated (their probability is multiplied by 0.) For instance, to choose a component to connect to the motor shaft, the components without rotational ports are gated. And if INSERT is chosen as the operator, only 0 or 1 elements can be picked to insert at the middle of a bond. An example is depicted in Figure 3. The probability density functions (PDFs) for a certain design step is the product of the general PDFs and the gating PDFs as in equation (1). In 8

C

I

R

0

1

ADD

INS

REP

DEL

Complexity

0.82

0.31

0.05

0.89

0.23

0.50

0.85

0.30

0.03

0.80

Table 2: Probabilistic Design Encoding Strategy. There may be different “zones” within the gene to encode different sets of options that are mutually exclusive. For example, only one operator out of the set {ADD, INS, REP, DEL} can be chosen. The effective probability is computed as the ratio of the specific operator value divided by the sum of all the operators’ values for the specific set. The actual values could be encoded through binary or real numbers.

pdf 1

3

5

Gene Items

Figure 3: Gating PDFs of Insert Operator for Table 3.

9

the case of inserting operations of our Bond graph generation, to choose an operand, all elements except 0 and 1 junctions are gated as shown in table 3 and Fig. 3. Pgated = PGA · Pgate (1) The probability to choose the item j in the specific PDFs is the normalized probability density function pj of that item. j Pgated pj = n P i Pgated

(2)

i=1

C

I

R

0

1

ADD

INS

REP

DEL

Complexity

0.0

0.0

0.0

1.0

1.0

1.0

1.0

1.0

1.0

1.0

Table 3: Gating PDFs. The actual value of the operator is given by the multiplication of the gene’s value and the gating factor. In the example shown, for a INSERT Operator to be applied to a C locale, only a 0 or a 1 junction is possible.

5 5.1

Probabilistic Strategy based topology generation Topology generation process

A bond graph is “grown” by updating the design using the operators, operands and the operating locations chosen by the designer (Figure 5). The “designer,” functions by extracting instructions probabilistically from the general PDFs with the proper gating. The process can initiate from an embryo bond graph (Figure 4a) to make a brand new design or from a previous design to do further modification. The embryo has to be causally correct and with the appropriate number of ports. To make an update to the design, firstly an operator is chosen probabilistically. The ADD and INSERT operators generally have much larger chances to be picked than the others due to the probability range specifications. Then, combining the general PDFs and the gating PDFs, the operand and operating location can be determined by a random choice within the provided ranges. Figure 4 shows some operations with ADD and INSERT operators. A bond can be divided into two and a junction element or a feasible module can be inserted in the

10

middle. An energy storage or dissipation element can only be added to a junction element, not to any other type of element within our basic bond graph design scenario, which is captured in the gating PDF encoding. Embrio R

R Insert

1

EI

Insert

FO

d Ad

(a)

(C

1

EI

FO

)

(b)

Add C

R

0

R

C

1

0

Add(I) EI

1

0

EI

FO

Add (c)

FO

I (d)

Figure 4: Probabilistic topology generation. (a) Design embryo with basic input/output impedances matched, (b) INSERT a 0 junction to the output bond (between the 0-junction and SEout , (c) INSERT a C module to the 0-junction, (d) ADD an I element to the 1-junction.

The size of the design target is also indicated by designer through multiplying the complexity probability with a common scalar number. The design process iterates until the complexity level is reached. The parameters of the generated topology are still unknown, which can be tuned by applying a parameter optimization algorithm. Different optimization algorithms have different performances in various aspects, such as speed, accuracy. The decision of which algorithm to be applied can also be encoded in the designer 11

probabilistically. The designer is open to incorporate other factors for other required consideration of the design process.

5.2

Evolving of the designer

Having the genetic encoding as PDFs of the operators has the added benefit of the designer being a fixed length string of real number (Table 2), which can be evolved by applying standard genetic algorithm (GA). 5.2.1

Fitness function

The fitness of the designer can be obtained from the fitness of the designs it generates. The fitness of the design is the performance evaluation when the parameters of the design topology are tuned towards the specified performance specs by parameter optimization. Then, the designer fitness can be expressed as the fitness of the best design or the average of all designs it generates, or a hybrid of the two as expressed at the Equation below. The best designers are then selected to next generation by the “survival of the fittest” strategy. fdesigner = r · Best(Fdesign ) + (1 − r) · Avg(Fdesign ) 5.2.2

(3)

Real number GA

Our real-valued genotype is represented by a real-valued GAs. Michalewicz (1994) has done extensive experimentation comparing real-valued and binary GAs and showed that the real-valued GA is an order of magnitude more efficient in terms of CPU time. He also shows that a real-valued representation moves the problem closer to the problem representation; which offers higher precision with more consistent results across replications. (Michalewicz, 1994) 5.2.3

Crossover and Mutation

The genetic operators provide the basic search mechanism of the GA, the operators are used to create new solutions based on existing solutions in the population. (Houck et al. 1995) There are two basic types of operators: crossover and mutation. Crossover takes two individuals and produces two new individuals while mutation alters one individual to produce a single new solution. Let X and 12

Y be two probability vectors (designers) denoting individuals from the population. And let ai and bi be the lower and upper bond, respectively, for each variable i in the designer. Real-valued uniform mutation selects one variable, j, and sets it equal to a uniform random number U (ai , bi ) as in the following equation (4). 0 xi = { xi, otherwiseU (ai , bi ), if i = j (4) Arithmetic crossover as shown at equation (5, 6) produces two complimentary linear combinations of the parents, where r = U (0, 1) , 0 X = rX + (1 − r)Y (5) Y = (1 − r)X + rY (6) Figure 1 Generic System representation using BondGraphs. Multiple ports interact with the environment. Some ports have specific causality internals are inputs or outputs.

6

Teapods Design Process

The TEAPODS (Topology Evolution and Parameter Optimization of Dynamic Systems) process is represented by two search methods linked by a modeling and evaluation of new design topologies. A genetic algorithm evolves the probabilistically encoded “designers”. The “designers” then create topologies using a generation engine that operates in a probabilistic manner whenever the case of various options is encountered. Once the design topologies are created (here the topology can be multidomain physical design topology instead of limited to be bond graph topology), dynamic models for each design are formulated based on the requirements of the user and the confidence of human designer, which could be a conceptual model (simplest) or the most complex model or even a proper model (Stein) deduced from the most complex model (after all the parameters calibrated). Next, an optimization algorithm is used to find the topology parameters that best meet the specifications. Scholastic searching, like genetic algorithms and simulated annealing can be applied to the problems that lack continuity and differentiability. Even better is that gradient based optimization is applicable to this project with faster performance since the dynamic model of design is formulated with each topology, but as the drawback possibly with only local optima reached due to the multi-modal space. 13

Embryo

Add Insert Delete Replace

PDFs Choose operator

Gating PDFs

Gating PDFs

0 1 C I R TF GY

PDFs

Choose operating location

Choose operand

Update

Designer’s PDFs Gaing PDFs

Reach Complexity?

Topology generated 14 Figure 5: Process of Bond Graph Topology Generation.

PDFs

0 1 Bond

TEAPODS design process

Designers

Evolve Designers

Designers

Create Topologies

Determine Model

Tune Parameters

Evolutionary Loop

Optimization Loop

Topology Evolution & Parameter Optimization (of) Dynamic Systems

Figure 6: Teapods Design Process

1.4 1.2

Magnitude

1.0 0.8 0.6 0.4 0.2 0.0

0

2

4 6 frequency [radians/sec]

8

10

Figure 7: Magnitude frequency response of experiment to meet specifications.

15

Out of the optimization loop, the overall performance of each design is used in conjunction with other measures (such a complexity, effectiveness, resource used, etc.) to evaluate the fitness function of the “designer”. Finally, with the fitness of the “designers” (not the designs) elitist GA is used to evolve the “designers” next generation.

7

Case study: Low Pass Filter circuit design

A low pass filter (LPF) design problem is used to test our approach to dynamic system design. This initial testing is motivated by the fact that, within electrical domain, there is a direct mapping between the bond graph topology and circuit topology (algorithm in Karnopp, 1990). Future research will focus on the mapping for other domains and multi-domain systems.

7.1

Fitness function

An ideal LPF filter has no affects to the portion of the input signal below the cut-off frequency, but completely damp the signal at all other frequencies, like the green line shown in Figure 7. The fitness of a design is considered as its difference to the ideal filter, which is measured by the squared sum of the difference at a certain number (n) of even distributed sample points as shown at equation 7 with yi as the magnitude at the ith sample spot from the ideal LPF response while f (xi ) from our design. The fitness of designer is defined as in equation 3 with the parameter r set as 1 in equation 3, i.e., the fitness of the best design it generated. Note that the objective is to minimize the fitness function to find out the best design. n P M inimize : dif f erence = [yi − f (xi )]2 (7) i=1

7.2. Experimental setup Our evolutionary design generator package is combined with converted r for MTT (Model Transformation Tools by Peter Gawthrop) and Matlab the model formulation of bond graph and the parameter optimization. The real-value GA (Houck, 1995) of our system is configured as Table 4. Number of generations: Designer 20 population size

50

16

Number of Designs from each 10 Designer Selection Rankbased selection Crossover T ype Arithmetic crossover Heuristic Simple crossover crossover Number of operations 2 2 2 Mutation boundaryMutation nonUnifMutation Type Number of 1 1 1 operations Table 4: Real-value GA parameters setup. The basic parameters are the number of generations to be created, the number of designers each population will have, and how many designers each designer will create on each generation. Specific to the problem is the fitness function. Also the user needs to specify the procedure for selection and the characteristics of the genetic algorithm.

8

Experimental results

The Magnitude frequency responses of low pass filters evolved are shown at Figure 7. The red one with ‘+’ signs turned out to be the best, which was achieved at the 27th generation as in Figure 8. The tuned bond graph is shown in figure 9 with all parameters marked by SI units. Figure 10 shows the designed circuit that maps the bond graph of figure 9. 8. Summary and Conclusions This paper proposed an evolutionary system, combining genetic algorithm and probability-based incremental learning, which is applied to make dynamic system designs using bond graphs. Inherently this is a part of a larger project with the ultimate goal to automate the design of multi-domain dynamic system. The designeris an open-ended probabilistic representation of a design strategy, inspired by the various factors that affect the development of a biological entity. 17

uniformMutation

9

fitness of designer (designs)

8 7 6 5 4 3 2 1

0

10

20 30 generation

40

50

Figure 8: Evolutionary process of the best design (same as designer since the fitness of designer is defined here as fitness of the best design it generated.)

C4 1.48E-04

98.97 I2

0

C1 2.28E-04

EI

1

0

6.80E-04 I1

1

FO

0

C3 5.324E-04

I3 34.5

2,897.20 RI

Figure 9: Bond graph of the best design.

18

C4 I1 R1

I2 EI

FO

C1 I3

C3

Figure 10: Circuit designed.

The approach presented, performs topology generation and parameter optimization in two sequential steps compared to genetic programming approaches, which search topology and parameters simultaneously. By this means, the mathematical symbolic model generated from the topology can be more efficiently utilized for the parameter optimization purpose. Since circuits basically have a direct mapping to bond graphs, this provided a first test case for the proposed technique. A low pass circuit filter was successfully designed. Additional research is under way to create the rest of the TEAPODS system. A repository of multi-domain components that comprised of knowledge of how to interact with other components and how to model the interconnection within a certain context is a necessity. For this purpose, Extended A-Design representation is under investigation. Additionally, the designer list representation is being enriched by adding other decision variables, which are: allotted resources (CPU time, elapsed time, etc.) to perform design, method to optimize parameters, belief of judgment (how the designer thinks her (his) designs are to be evaluated), etc. The list will remain open-ended for future inclusion of any design needs as research goes on.

19

References [1] Dean Karnopp, Donald Margolis, and Ronald C. Rosenberg. System Dynamics: A Unified Approach. Wiley-Interscience, New York, NY, 1990. [2] Beaman, J.J., and Paynter, H.M., 1995, “Modeling of Physical Systems”, (unpublished manuscript), University of Texas at Austin, TX. [3] Shumeet Baluja & Rich Caruana, Removing the Genetics from the Standard Genetic Algorithm, ICML’95. [4] Seo, K., Hu, J., Fan, Z., Goodman, E. D., Rosenberg, R. C., ”Automated Design Approaches for Multi-Domain Dynamic Systems Using Bond Graphs and Genetic Programming,” The International Journal of Computers, Systems and Signals, vol.3, no.1, pp.55-70, 2002. [5] Coelingh, E., T. de Vries, J. Amerongen, “Automated Performance Assessment of Mechatronic Motion Systems during the Conceptual Design Stage,” Proc. 3rd Int’l Conf. on Adv. Mechatronics, Okayama, Japan, 1998. [6] Stein, J.L, L.S. Louca. 1996. “A template-based modeling approach for system design: Theory and implementation,” Transactions of the society for computer simulation international. Published by SCS ISSN 0740/679796, San Diego, CA. [7] Tay, E., Flowers, W., and Barrus, J., 1998, “Automated Generation and Analysis of Dynamic System Design,” Research in Engineering Design, Vol. 10, pp. 15-29. [8] Campbell, M., J. Cagan and K. Kotovsky, 1999, ”A-Design: An AgentBased Approach to Conceptual Design in a Dynamic Environment,” Research in Engineering Design, Vol. 11, No. 3. [9] Goldberg, D., 1989, Genetic Algorithms in Search, Optimization, and Machine Learning, Addison-Wesley. [10] Wilson, B.H. and J.L. Stein. 1992. “An Algorithm for Obtaining Minimum Order Models of Distributed and Discrete Systems.” ASME Winter Annual Meeting. Symposium on Automated Modeling. (Anaheim, CA, Nov. 8-13). ASME Book No. G00747, ASME, New York, NY.

20

[11] Papalambros, P. Y. and Wilde, D.J., Principles of Optimal Design, Cambridge University Press, New York 2000. (2nd edition) [12] Louca, L.S. and J.L. Stein, 1999. ”Energy-Based Model Reduction of Linear Systems”. 1999 International Conference on Bond Graph Modeling and Simulation, San Francisco CA. Not included in conference proceedings. [13] Houck, C., Joines, J., and Kay, M., ”A Genetic Algorithm for Function Optimization: A Matlab Implementation”, NCSU-IE TR 95-09, 1995. [14] Michalewicz, Z. 1994. Genetic Algorithms + Data Structure = Evolution Programs. AI Series. Springer-Verlag, New York. [15] Paynter, H.M., 1961, Analysis and Design of Engineering Systems, MIT Press, Cambridge, MA. [16] Breedveld, P.C., Rosenberg, R.C., and Zhou, T., 1991, ”Bibliography of Bond graph Theory and Application,” Journal of the Franklin Institute, Vol. 328, No. 5/6, p. 1067. [17] Breedveld, P.C., 1988b, ”Bond graph-based Model Generation,” Automated Modeling for Design, ASME Winter Meeting, DSC Vol. 8, pp. 41-417. [18] Rosenberg, R.C., 1975, ”The Bond graph as a Unified Database for Engineering System Design,” Journal of Engineering and Industry, Transactions of ASME, Vol. 97, No. 4, pp. 1333-1337. [19] Delgado, M., et al., 1988, History and Bibliography of Bond graphs, Departamento de Procesos y Sistemas, Universidad Simn Bolvar, Caracas, Venezuela. [20] Ruiz, J. O., S. Raju, and B. Fern´andez, ”Neural Network Synthesis using Genetic Algorithms,” 1995 Artificial Neural Networks in Engineering, ANNIE ’95, St. Louis, MO, November 1215, 1995. [21] Whitley, D. (1994). A Genetic Algorithm Tutorial. Statistics and Computing, Volume 4, pp. 65-85. [22] Fern´andez, B. (1994). Artificial Neural Network for Intelligent Manufacturing. London: Chapman & Hall Inc., pp. 299-368.

21

[23] Fern´andez, B., A. V. Prabhudesai, V. V. Murty, R. Gupta, and W.R. Chang, “NeuroBondGraphs: Development Environment for Modeling of Nonlinear Dynamic Systems using Neural Networks and BondGraphs,” Vol. PED-75, 1992 ASME Winter Annual Meeting, Anaheim, CA, Nov. 913, 1992.

22