ELECTRICAL ENGINEERING DESIGN WITH AN
EVOLUTIONARY APPROACH
Gregor Papa
Computer Systems Department
Jožef Stefan Institute, Ljubljana, Slovenia
gregor.papa@ijs.si
Barbara Koroušić Seljak
Computer Systems Department
Jožef Stefan Institute, Ljubljana, Slovenia
barbara.korousic@ijs.si
Jurij Šilc
Computer Systems Department
Jožef Stefan Institute, Ljubljana, Slovenia
jurij.silc@ijs.si
Abstract
This paper presents two engineering design problems, both of which were solved
by evolutionary algorithms. The evolutionary approach is used in universal
electro-motor geometry optimization and integrated circuits area/time optimization. In the first case we improve the efficiency of a universal motor; where the
goal is to find a new set of independent geometrical parameters for the rotor and
the stator with the aim of reducing the motor’s power losses, which occur in the
iron and the copper. In the second case we improve some parts of the high-level
synthesis process of integrated circuits by considering the concurrency of operation scheduling and resource allocation constraints to ensure a globally optimal
solution in a reasonable time.
Keywords:
Engineering design, Electro-motor, Integrated circuit, Evolutionary optimization
1.
Introduction
Evolutionary techniques are used in various search methods for a range of
different optimization areas. Their undetermined approach gives them an advantage when it comes to multi-criteria problems and problems with more local
105
106
BIOINSPIRED OPTIMIZATION METHODS AND THEIR APPLICATIONS
optima [8]. For this reason we adopted an artificial approach to the solving
of our design problems using a genetic algorithm (GA) [2, 7]. The GA, as a
frequent implementation of evolutionary techniques, is an optimization method
based on the mechanism of evolution and natural genetics. This algorithm has
already proved to be very efficient in a wide range of different optimization procedures where the exact equations are not available or some non-linearities are
present [4]. In spite of its simplicity, the GA has proved to be an efficient method
for solving various optimization and classification problems, in areas ranging
from economics and game-theory to control-system design [3, 5, 9, 11, 12].
This paper presents two engineering design problems, both of which were
solved with evolutionary algorithms. The evolutionary approach is used in
universal electro-motor geometry optimization (UM design), and integrated
circuits area/time optimization (IC design).
2.
Problems in Engineering Design
2.1
Universal Motor Design
Many common home appliances, such as vacuum cleaners and mixers, as
well as power tools, such as drills and saws, are generally powered by a universal
motor (UM) [16]. This type of motor has many advantages that make the UM
such a popular choice for home appliances and power tools: a large output
power in relation to its small size, high starting and running torque, variable
speed that can be regulated in a simple way, and low manufacturing costs.
Home appliances and power tools need as low an energy consumption, i.e.,
input power, as possible, while still satisfying the needs of the user by providing
sufficient output power. The ratio of the output power to the input power defines
the efficiency of the motor, which can be improved by reducing some of the
main power losses in the motor, i.e., those that originate in the iron and the
copper. This can be done by optimizing the geometry of both the rotor and the
stator (see Fig. 1). Because of the high magnetic saturation of the iron in a UM
the problem is a highly non-linear one.
The rotor-and-stator unit of a UM is constructed by stacking the rotor/stator
iron laminations. The shape and the profile of the rotor/stator lamination are
described by several two-dimensional geometrical parameters. There are two
types of parameter: the invariable and the variable. Invariable parameters
are fixed; they cannot be altered, either for technical reasons or because of the
physical constraints of the motor. Variable parameters are those that do not have
predefined optimum values. Some of these variable parameters are mutually
independent and without any constraints. In our case we optimize 12 mutually
independent variable parameters.
The efficiency of a UM is defined as the ratio of the output power P out to
the input power Pinp , and it depends on various power losses, which include:
Electrical Engineering Design with an Evolutionary Approach
Figure 1.
107
Geometrical parameters of the stator and rotor of a UM.
copper losses PCu , iron losses PF e , brush losses Pb , ventilation losses Pv , and
friction losses Pf . When considering all the mentioned losses and the output
power, the overall efficiency η of a UM can be defined as
η=
2.2
Pout
Pout
=
.
Pinp
Pout + PCu + PF e + Pb + Pv + Pf
Design of Integrated Circuits
High-level synthesis [6] is an automatic design process that transforms the
initial behavioral description of the circuit (especially ASICs) into the final
specification of the RTL. The process consists of the following: compilation,
transformation, scheduling, allocation and binding. Of these, the operation
scheduling and the resource allocation are the most important tasks of the highlevel synthesis because they are at the core of the design and crucially influence
both the design and the final layout (see Fig. 2).
Figure 2.
Time/area optimized layout of an IC.
108
BIOINSPIRED OPTIMIZATION METHODS AND THEIR APPLICATIONS
Due to the interdependence of these two tasks, the solution of one task
depends on an estimation of the solution of the other task, which is not solved
yet. The scheduling of the operation into different control steps therefore affects
the allocation of operations to different units. The interaction of these two
tasks presents formidable obstacles to the goal of optimization [1]. There are,
however, some approaches to concurrent solving, but their solutions, to some
extent, are less than optimal [10].
3.
The Genetic Algorithm in UM and IC Design
When reducing the main power losses in a UM design by optimizing the
geometry of the rotor/stator lamination we have to deal with a complex search
space and its non-linear behavior. In IC design we apply the concurrency
of interdependent tasks with their opponent constraints. Because traditional
search-and-optimization methods have proved to be inefficient at finding the
solution under such conditions, we decided to apply a GA. This heuristic method
requires only a little information to provide a robust, yet flexible, search in a
wide and complex search space.
3.1
UM Design Procedure
Conventional motor design can be upgraded with a genetic algorithm. The
advantages of this approach are that: there is no need for an experienced engineer to be present during the whole process, except at the beginning to decide
on the initial design, and there is no need to know the mechanical and physical
details of the problem. The problem can be solved without any knowledge
of the problem, we only need some finite-element program to evaluate each
solution.
3.1.1
Experimental Results.
The proposed evolutionary design approach is evaluated by estimating the actual improvement in the efficiency of
an initial UM that is designed using the conventional and evolutionary design
approaches.
We optimized the UM twice. The first one (Opt 1) was full optimization,
where all parameters were optimized, while in the second case (Opt 2) we fixed
the outer boundaries of the UM to get the design with the same amount of
material and therefore the same initial material costs.
We made prototypes of both the optimized and the costs-optimized motors
and measured the real power losses and the efficiencies of the motors. These
values are shown in Table 1. The results are only slightly different from those
calculated with a finite-element program. The main reason for this difference
can be explained by the non-exact calculation of the iron losses, due to a variation
in the material’s properties.
109
Electrical Engineering Design with an Evolutionary Approach
Table 1. UM evaluation results.
Feature
Analytical calculation
Initial
Opt 1
Opt 2
Prototype calculation
Initial
Opt 1
Opt 2
Pinp [W]
Pout [W]
∆P = Pinp − Pout [W]
Pout
η= P
[%]
1 044
731
313
70.0
1 050
730
320
69.5
inp
∆P improvement [W]
η improvement [%]
3.2
970
731
239
75.8
982
731
251
74.8
74
5.8
62
4.8
990
730
260
73.7
1 000
730
270
73.0
60
4.2
50
3.5
IC Design Procedure
The promising results of different evaluations [5, 11, 12] led us to the Evolutionary Concurrent Scheduling and Allocation (ECSA) design approach [10].
This approach considers scheduling and allocation constraints, allows a short
design time and can find globally optimal solutions. The input description of
the circuit is transformed into two basic (initial) schedules, obtained with the
ASAP and ALAP algorithms. The functional units used in the first case are
those that are the fastest for each operation, and in the second case are those
that are the slowest for each operation. These two schedules present some kind
of boundary solutions, since all the other solutions are executed in between the
time limits defined by these two schedules. In other words, no other solution
can be faster or slower, irrespective of the combinations of used units.
Each solution has to be properly encoded, i.e., each operation’s start time and
functional unit have to exist in the chromosome. The initial population is built
upon the two initial solutions, which are multiplied to form the population with
the so-called boundary solutions. The optimal solution has to be somewhere
in-between the boundaries, therefore genetic operators (crossover, mutation,
variation) transform those encoded solutions. With the transformations their
start times and allocated functional units are changed. The appropriateness of
the proposed approach is tested by a computer implementation of the ECSA
algorithm, which is used with test-bench ICs.
In addition to simple GA operators also the independent GA approach [10]
was used. There is no need to preset some working parameters, e.g., the number
of generations, the population size, and the probabilities of crossover, mutation
and variation. These parameters are set automatically during the optimization
phase, depending on the progress and the speed of the optimization.
Setup. If the chromosome that represents a solution is large, then the
population size also has to be large enough to ensure that many different
110
BIOINSPIRED OPTIMIZATION METHODS AND THEIR APPLICATIONS
chromosomes will be involved in a search. The population size therefore
depends on the size of the chromosome or the complexity of the problem.
Crossover. Considering four candidates-two parents and their two offspringonly the first and the third, rated according to their fitness, pass to the next
generation. This forces at least one of the offspring to be passed to the
next generation in addition to the best candidate. Otherwise the offspring
have only a small influence on new generations, since the crossing of two
good parents probably produces offspring that are not so good. They
might, however, be good after a few more transformations.
Mutation. Chromosomes with low fitness are mostly exposed to mutation. Each position in the chromosome string is mutated if that position
of the chromosome is of the same value in the majority of chromosomes
in the population. This is the way to change the bad characteristics in
"poorly fitted" chromosomes and to redirect the search to another direction. In the case of "well-fitted" chromosomes, values are mutated if
they differ from the majority of values in other good chromosomes at the
same position. This ensures faster convergence in the final stages of the
optimization.
Variation. The interchange of the values of two positions, as described
for the basic operators, is performed if the frequency of the value in that
position in the population of one position is high and the frequency of
another bit is low.
3.2.1
Experimental Results. The ICs used for the evaluation are chosen
on the basis of their appearance in the literature and similar studies. They differ
in terms of size and the number of operation types. The ECSA algorithm is
evaluated by a comparison with nearly optimal [15] force-directed scheduling
(FDS) [14]. FDS tries to optimally schedule the DFG considering a uniform
distribution the operations of the same type over the available control steps.
Tables 2 and 3 show the results of the following evaluations: FDS with
fast units, FDS with slow units, and ECSA with basic and independent genetic
operators. There are two types of DFGs for each circuit. The first, or plain, is
an ordinary data-flow graph with nodes that represent operations, as described
in similar studies (Table 2); and the second, or improved [10], considers the
input variables (start registers) via some additional nodes to ensure a more
accurate estimation of the registers and the buses needed to implement the
circuit (Table 3).
Differential equation: Because of the small circuit size there is no improvement in the solutions obtained with the ECSA algorithm (either basic or independent) when considering an ordinary DFG-all the solutions are of a larger
111
Electrical Engineering Design with an Evolutionary Approach
Table 2. The evaluation results of the ECSA algorithm with different test-bench ICs.
Algorithm
Size [gates]
Registers
Buses
Delay [steps]
Runtime [s]
Differential equation
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
23 249
7 173
23 914
23 914
17
18
18
17
6
6
8
6
6
20
6
6
0.01
0.01
0.11
0.09
17
78
21
17
0.02
0.03
3.80
1.60
10
44
11
10
0.01
0.04
1.70
1.30
13
70
14
15
0.40
2.79
6.30
8.05
Fifth-order elliptic filter
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
23 883
10 970
18 962
31 844
26
30
29
30
8
6
4
8
Bandpass filter
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
31 179
10 600
23 883
34 219
34
35
33
33
10
8
8
8
Least-mean-square filter
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
45 771
13 270
42 123
89 889
68
72
67
69
12
8
10
30
size. But when we consider the start registers (input variables) there are some
ECSA solutions with a slightly larger size and a smaller number of buses.
Fifth-order elliptic filter: The evolutionary method with a basic approach
finds a smaller circuit with a smaller number of buses and a slightly longer
execution time for the ordinary DFG, whereas the independent approach could
not find any improved solution. When dealing with the improved DFG, both
approaches (basic and independent) find considerably smaller circuits with a
slight increase in the execution time, while the independent approach also finds
the solution with a substantial decrease in the required number of registers and
buses.
Bandpass filter: Both ECSA methods find, when dealing with the ordinary
DFG, the solutions with a smaller number of registers and buses; the basic
approach also finds the smaller circuit, but with a slightly longer execution time.
When dealing with the improved DFG, both approaches find the solutions with
the same circuit size and execution time as the comparable FDS solution, but
the required number of registers and buses is considerably smaller for the ECSA
solutions.
112
BIOINSPIRED OPTIMIZATION METHODS AND THEIR APPLICATIONS
Table 3. The evaluation results of the ECSA algorithm with different test-bench ICs.
Size [gates]
Algorithm
Registers
Buses
Delay [steps]
Runtime [s]
Differential equation with start registers
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
23 249
7 173
31 210
23 914
10
11
10
10
9
9
7
7
6
20
6
6
0.01
0.01
0.15
0.35
Fifth-order elliptic filter with start registers
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
23 883
10 970
18 962
15 922
21
25
24
18
16
16
16
9
17
78
19
21
0.02
0.04
4.80
3.40
10
44
10
10
0.02
0.04
2.40
2.90
Bandpass filter with start registers
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
31 179
10 600
31 179
31 179
25
26
23
23
23
23
19
19
Least-mean-square filter with start registers
FDS-fast
FDS-slow
ECSA-basic
ECSA-independent
45 771
13 270
45 220
63 517
33
37
32
33
29
27
25
25
13
70
13
13
0.48
3.52
9.20
12.30
Least-mean-square filter: At the expense of a small increase in the delay, the
basic ECSA is able to decrease the size and lower the number of registers and
buses of the ordinary DFG; but the independent ECSA is not able to improve
any parameter. When dealing with the improved DFG, the basic ECSA is able
to keep the initial delay, to decrease the circuit size and to lower the number of
required registers and buses. The independent ECSA is only able to decrease
the number of buses while increasing the circuit size.
There are slightly longer runtimes when the ECSA algorithm is used. But
considering the speed (a few seconds) and the evaluation presented in [13],
where the runtimes for larger circuits increase enormously (exponentially) when
the FDS algorithm is used, we can conclude that small and large circuits can be
designed and optimized with the use of the proposed evolution-based algorithm,
which exhibits a linear increase in the design time with an increase in circuit
size.
4.
Conclusions
In the UM optimization we used an evolutionary approach to improve the
efficiency of an electro-motor. The goal of our optimization was to find the new
Electrical Engineering Design with an Evolutionary Approach
113
set of independent geometrical parameters of the rotor and the stator with the
aim of reducing the motor’s power losses, which occur in the iron and the copper. The approach proves to be a simple and efficient search-and-optimization
method for solving this day-to-day design problem in industry. It outperforms,
by a significant improvement of the motor’s efficiency, a conventional design
procedure that was used previously. By using the GA we are able to reduce the
iron and the copper losses of an initial UM by at least 20%, and increasing the
GA running time or setting its parameters more appropriately could improve
on this result.
In the IC area/time optimization we used an evolutionary approach to some
parts of IC design. The work was focused on ASICs that need an even more
sophisticated design due to their specific use. Optimally scheduled operations
are not necessarily optimally allocated to functional units. To ensure optimum
allocation we need to consider some allocation criteria while the scheduling
is being done. The evolutionary approach considers scheduling and allocation
constraints and ensures a globally optimal solution in a reasonable time. To
evaluate our method we built an algorithm and implemented it with a computer.
It is used with a group of test-bench ICs. These circuits are chosen because
the same types were used in similar studies. The results of the evaluation of a
computer-implemented algorithm show that the evolutionary methods are able
to find a solution that is more appropriate in terms of all the considered and
important objectives than is the case when working with classical deterministic
methods.
Acknowledgment
The work presented in the paper was supported by the Slovenian Ministry of
Education, Science and Sport (research programme P2-0098 Computer Structures and Systems), and partially by DOMEL, Electromotors and household
devices, d. d., Železniki, Slovenia.
References
[1] J.R. Armstrong and F.G. Gray. VHDL Design: Representation and Synthesis. Prentice Hall
PTR, 2000.
[2] T. Bäck. Evolutionary Algorithms in Theory and Practice. Oxford University Press, New
York, 1996.
[3] D. Dasgupta and Z. Michalewicz. Evolutionary Algorithms in Engineering Applications.
Springer-Verlag, 1997.
[4] R. Drechsler. Evolutionary Algorithms for VLSI CAD. Kluwer Academic Publishers, 1998.
[5] B. Filipič and J. Štrancar. Tuning EPR spectral parameters with a genetic algorithm. Applied
Soft Computing, 1:83–90, 2001.
[6] D.D. Gajski, N. Dutt, A. Wu, and S. Lin. High-Level Synthesis: Introduction to Chip and
System Design. Kluwer Academic Publishers, 1992.
114
BIOINSPIRED OPTIMIZATION METHODS AND THEIR APPLICATIONS
[7] D.E. Goldberg. Genetic Algorithms in Search, Optimization, and Machine Learning.
Addison-Wesley, Reading, 1989.
[8] C.L. Karr, I. Yakushin, and K. Nicolosi. Solving inverse initial-value, boundary-value problems via genetic algorithm. Engineering Applications of Artificial Intelligence, 13:625–633,
2000.
[9] B. Koroušić-Seljak. Heuristic methods for a combinatorial optimization problem - realtime task scheduling problem. In Proceedings of the Artificial Networks in Engineering
Conference (ANNIE’99), St. Louis, USA, 1999, pp. 1041–1046.
[10] G. Papa. Concurrent operation scheduling and unit allocation with an evolutionary technique in the process of integrated-circuit design. Ph.D. thesis, Faculty of Electrical Engineering, University of Ljubljana, Slovenia, 2002.
[11] G. Papa, B. Koroušić-Seljak, B. Benedičič, and T. Kmecl. Universal motor efficiency
improvement using evolutionary optimization. IEEE Transactions on Industrial Electronics,
50:602–611, 2003.
[12] G. Papa and J. Šilc. Automatic large-scale integrated circuit synthesis using allocationbased scheduling algorithm. Microprocessors and Microsystems, 26:139–147, 2002.
[13] G. Papa, J. Šilc, and R. Wyrzykowski. Scheduling algorithms based on genetic approach. In
Proceedings of the 4th Conference on Neural Networks and Their Application, Zakopane,
Poland, 1999, pp. 469–474.
[14] P.G. Paulin and J.P. Knight. Force-directed scheduling in automatic data path synthesis. In
Proceedings of the 24th ACM/IEEE Design Automation Conference, Miami, USA, 1987,
pp. 195–202.
[15] P.G. Paulin and J.P. Knight. Scheduling and binding algorithms for high-level synthesis.
In Proceedings of the 26th ACM/IEEE Design Automation Conference, Las Vegas, USA,
1989, pp. 1–6.
[16] P.C. Sen. Principles of Electric Machines and Power Electronics. John Wiley & Sons,
1996.