MODCONS - a MATLAB Toolbox for Multi-Objective Control System Design
1
J F Whidborne , D-W Gu and I Postlethwaite
Control Systems Research Department of Engineering University of Leicester Leicester LE1 7RH UK
Report No: 94-26 November 1994
Abstract
Control system design problems are generally multi-objective, in that they require several, generally con icting, requirements to be simultaneously met. One design procedure for interactive multi-objective computer-aided control system design is the method of inequalities (MOI). The method is general-purpose,
exible and robust, and as such is well-suited to MATLAB implementation. The MOI has been combined with H 1-optimisation in a mixed-optimisation approach which designs for both robustness and explicit closed-loop performance. MODCONS is a collection of routines which create an interactive multi-objective CACSD environment for designing robust control systems using this mixed-optimisation approach as well as for multi-objective design of several other classes of control systems.
1 Department
of Mechanical Engineering, King's College London, Strand, London WC2R 2LS, United Kingdom; email
[email protected]; Tel +44-71-8732027; Fax +44-71-8732437.
1
Introduction
The majority of engineering design problems are multi-objective, in that there are several con icting design aims which need to be simultaneously achieved. If these design aims are expressed quantitatively as a set of n design objective functions i(p) : i = 1 : : : n, where p denotes the design parameters chosen by the designer, the design problem could be formulated as a multi-objective optimisation problem: min (1) fi(p); for i = 1 : : : ng : p2P
where P denotes the set of possible design parameters p. In most cases, the objective functions are in con ict, so the reduction of one objective function leads to the increase in another. Subsequently, the result of the multi-objective optimisation is known as a Pareto-optimal solution. A Pareto-optimal solution has the property that it is not possible to reduce any of the objective functions without increasing at least one of the other objective functions. A point p 2 P is de ned as being Pareto-optimal [Par06] if and only if there exists no other point p 2 P such that a) i(p) i(p) for all i = 1; : : : ; n and (2) b) j (p) < j (p) for at least one j: The problem with multi-objective optimisation is that there is generally a very large set of Pareto-optimal solutions. Subsequently there is a diculty in representing the set of Pareto-optimal solutions and in choosing the solution which is the best design. Many multi-objective approaches have been suggested to overcome this diculty (for example, see [Zad63, Gem74, GH75, Lin76, Lin77, Coh78, Gie78, TSGJ79, KS79, KS83, GS85, NT86, FP86, KMKT94], for a review, see [Ng89]). One particularly successful approach is the method of inequalities (MOI) [ZAN73], which is a general-purpose, multi-objective design procedure for interactive computer aided design where the design problem is expressed as a set of algebraic inequalities which need to be simultaneously satis ed for a successful design. The method is general-purpose, exible and robust, and as such is very well suited to MATLAB implementation. For the MOI, desired performance is represented by a set of algebraic inequalities, and the aim of the design is to simultaneously satisfy these inequalities. The design problem is expressed as (3) i (p) "i for i = 1 : : : n; where "i are real numbers, called the design goals, and are the largest tolerable values of i. Numerical search algorithms are used to nd a solution to (3). The MOI can be combined with analytical optimisation techniques, such as McFarlane and Glover's loop-shaping design procedure (LSDP), to provide a mixedoptimisation approach which can design for both robustness and explicit closed-loop performance. MODCONS is a collection of routines which create an interactive multi-objective CACSD environment for designing robust control systems using this mixed-optimisation approach as well as for multi-objective design of several other classes of control systems. The toolbox contains several dierent numerical search routines which can be used for solving (3). It contains automatic function generators, which allow the user to specify the design inequalities in a user-friendly manner, the speci cations are then automatically generated into MATLAB code for use with the numerical search procedures. It contains an interactive graphical interface for the solution of the MOI, which aids the designer in making informed decisions during the design process. It contains a number of additional utility routines to calculate traditional control problem objective indices such as rise-time, settling time, phase-margin and bandwidth. Several other multi-objective computer-aided-design packages are available, these include ANDECS [GJOF93], QDES [BKB 89], DELIGHT [Nye83] and CRITERIA [Bad87, Whi91]. A multi-objective design facility based on the goal attainment method [Gem74, GH75, FP86] is also included in the MATLAB Optimization Toolbox [Gra90]. In the next section, the MOI is introduced, and in Section 3, some numerical search techniques for solving (3) are summarised. In Section 4, the use of the MOI for multi-objective control system design, +
1
including the mixed-optimisation approach, is described. In Section 5, the MODCONS package is summarised. Some typical MODCONS graphical user-interface windows are shown in Appendix A, and a list of MODCONS functions is given in Appendix B. 2
The Method of Inequalities
Performance speci cations for control and other engineering systems are frequently given in terms of algebraic or functional inequalities, rather than in the minimisation of some objective function. For example, a control system may be required to have a rise-time of less than 1 second, a settling time of less than 5 seconds and an overshoot of less than 10%. In such cases, it is obviously more logical and convenient if the design problem is expressed explicitly in terms of such inequalities. The method of inequalities (MOI) [ZAN73] is a computer-aided multi-objective design approach, where desired performance is represented by such a set of algebraic inequalities, and where the aim of the design is to simultaneously satisfy these inequalities. The design problem is expressed as (4) i (p) "i for i = 1 : : : n; where "i are real numbers, p 2 P is a real vector (p ; p ; : : : ; pq ) chosen from a given set P and i are real functions of p. The functions i are the objective functions, the components of p represent the design parameters and "i are the design goals which are chosen by the designer and represent the largest tolerable values of i. The aim is the satisfaction of the set of inequalities in order that an acceptable design p is reached. Each inequality i(p) "i of the set of inequalities (4) de nes a set Si of points in the q-dimensional space IRq and the co-ordinates of this space are p ; p ; : : : ; pq , so Si = fp : i (p) "i g : (5) The boundary of this set is de ned by i(p) = "i. A point p 2 IRq is a solution to the set of inequalities (4) if and only if it lies inside every set Si , i = 1; 2; : : : ; n and hence inside the set S which denotes the intersection of all the sets Si , n \ S = Si : (6) 1
1
2
2
i=1
S is called the admissible set and any point p in S is called an admissible point denoted ps . The objective is thus to nd a point p such that p 2 S . Such a point satis es the set of inequalities (4) and is said to be a solution. In general, a point ps is not unique unless the subset S is a point in the space IRq . In some cases, there is no solution to the problem, i.e. S is an empty set. It is then necessary to relax
the boundaries of some of the inequalities, i.e. increase some of the numbers "i , until an admissible point ps exists. For control system design, the functions i (p) may be functionals of the system step response, for example the rise-time, overshoot or the integral absolute error, or functionals of the frequency response, such as the bandwidth. They can also represent measures of the system stability, such as the maximum real part of the closed-loop poles. Additional inequalities which arise from the physical constraints of the system can also be included, to restrict for example, the maximum control signal. In practice, the constraints on the design parameters p which de ne the set P are also included in the inequality set, e.g. to constrain the possible values of some of the design parameters, or to limit the search to stable controllers only.
3
Numerical Search Algorithms
The actual solution to the set of inequalities (4) may be obtained by means of numerical search algorithms. Generally, the design process is interactive, with the computer providing information to the designer about 2
con icting design requirements, and the designer adjusting the inequalities to explore the various possible solutions to the problem. The progress of the search algorithm should be monitored, and, if a solution is not found, the designer may either change the starting point, relax some of the desired bounds " or change the design con guration. Alternatively, if a solution is found easily, to improve the quality of the design, the bounds could be tightened or additional design objectives could be included in (4). The design process is thus a two way process, with the MOI providing information to the designer about con icting design requirements, and the designer making decisions about the `trade-os' between design requirements based on this information as well as on the designer's knowledge, experience and intuition about the particular problem. The designer can be supported in this role by various graphical displays [Ng89] which provide information about the progress of the search algorithm and about the con icting design requirements. The original algorithm for the MOI, proposed by Zakian and Al-Naib [ZAN73], is known as the moving boundaries process (MBP). This algorithm uses Rosenbrock's hill-climbing [Ros60] to perform a local search to try and improve on at least one of the unsatis ed performance indices. This algorithm is simple, robust and eective and has worked well over the years, however, it does rely on a great deal of user-interaction to provide assistance for when local minima are found. The success of the algorithm is very dependent on being provided with a good starting point. This does have the advantage of forcing the user to carefully analyse the problem before the design is completed, and hence guarding against `unreasonable' solutions. Ng [Ng89] has proposed another algorithm, which is also based on a hill-climbing method, namely Nelder and Mead's modi ed simplex method [NM65]. It provides a dynamic minimax formulation which makes all indices with unsatis ed bounds equally active at the start of each iteration of the Nelder Mead algorithm, so that at the kth iteration, one step of the following minimax problem is solved: min (p) (7) p where
i (p) (p) = max i = i b i
where
ig ;i ig
= 1; 2; : : : ; n
(8)
if i(pk ) > "i ; (9) ( ) if i(pk ) "i i (pk ) if i (pk ) > "i b (10) i = if i(pk ) "i ; "i and is set to a small positive number. This algorithm also appears to work well, but is also very dependent on being provided with a good starting point. Here, we call it the Nelder Mead Dynamical Minimax (NMDM) method. Another algorithm is the multi-objective genetic algorithm (MOGA), developed by Fonseca and Fleming [FF93a, FF93b, FF94]. The design philosophy is slightly dierent from the other two approaches, in that a set of simultaneous solutions is sought, and the designer then selects the best solution from the set. The idea behind the MOGA is to develop a population of Pareto-optimal or near Pareto-optimal solutions. To restrict the size of the near Pareto-optimal set and to give a more practical setting to the MOGA, Fonseca and Fleming have formulated the problem in a similar way to the MOI. This formulation maintains the genuine multi-objective nature of the problem. The aim is to nd a set of solutions which are non-dominated and which satisfy a set of inequalities. An individual j with a set of objective functions j = (j ; : : : ; jn) is said to be non-dominated if for a population of N individuals, there are no other individuals k = 1; : : : ; N; k =6 j such that a) ki ji for all i = 1; : : : ; n and (11) b) ki < ji for at least one i: The MOGA is set into a multi-objective context by means of the tness function. The individuals are ranked on the basis of the number of other individuals they are dominated by for the unsatis ed inequalities. ig
=
"i i pk
1
3
ref +
6
u-
- K (p)
G
-y
Figure 1: P+I/PID scheme Each individual is then assigned a tness according to their rank. The mechanism is described in detail in [FF93a]. The MOGA is to be included in the next version of the Genetic Algorithms Toolbox [CFPF94]. There are a number of other search algorithms for the MOI. An algorithm based on simulated annealing is currently under development by the authors [WGP94]. The goal attainment method [Gem74, GH75, FP86] can also be used for solving inequalities, this algorithm has been included in the Optimisation Toolbox [Gra90]. Other algorithms have been developed by Polak, Mayne and co-workers (see for example [BHM79]) for the solution of functional inequalities. Additionally, Boyd and Barrett [BB91] have developed algorithms for the feasibility problem for a restricted set of objective functions which can be set as convex optimisation problems. 4
The MOI for Multi-Objective Control System Design
The MOI has been used successfully for a great many control system design problems. These include several dierent classes of control system/control system design such as mixed-optimisation [PWMG94, WMGP93, WPG94, MPGW93], critical control systems [Zak89, Whi92, Whi93, WL93], well-matched systems [Zak91, Zak92, Rut92, Rut94a, Rut94b, Lan94] and eigen-structure assignment [PLC93]; as well as for more straight-forward design using xed structure controllers with performance based on the step response (e.g. [ZAN73, Tai79, II87, JG91, PC91]) or the frequency response, [BCS79, KK87]; here, such approaches are called \traditional" approaches. In this section, the use of the MOI for traditional approaches and for mixed-optimisation is brie y described. 4.1
Traditional Approaches
In most of the previous applications of the MOI, the design parameter p has parameterised a controller with a particular structure. For example, p = (p ; p ) could parameterise a PI controller p + p =s. This has meant that the designer has had to choose the structure of the control scheme and the order of the controllers. The performance is generally expressed in terms of functionals on the closed loop system step response or frequency response, such as rise time, settling time, overshoot, undershoot, band-width and phase margin. The MOI can be used control system design for xed controllers, such as a P+I or a PID controller in the simple feedback con guration shown in Figure 1. This approach is of particular value when there are restrictions on the structure of the controller. For a P+I controller, with p = (p ; p ), the controller can be parameterised as p (12) K (p; s) = p + s and for a PID controller, with p = (p ; p ; p ; p ), as p + 1 +p ps s : (13) K (p; s) = p + s 1
1
2
1
2
1
1
2
3
2
4
2
1
3
4
4
2
The search algorithms can be implemented to nd values of p which satisfy the inequalities (4). However, in general, if the closed loop system is unstable, objective functions based on closed loop time responses cannot be calculated, hence a stability measure must be included in the set of objective functions, and a penalty function included with the objective functions which cannot be calculated. An alternative, when using hill-climbing methods, is to conduct the search in two stages (see [ZAN73] for details). A suitable stability function [ZAN73] is (14) stab = maxRe fi (p)g 8 i (p) 2 (p) i where denotes the set of all nite poles i of the system closed loop transfer function (Re fxg denotes the real part of a complex number x). If we have an objective function 0j which cannot be calculated when the system is unstable, a suitable amended objective function j which includes a penalty function is (15) j = 0j ^ (stab ) + (M + stab) ^ (stab > ) ; where is a small positive real number, and M is a large positive real number. The problem can thus be stated as
Problem
For the system of Figure 1, nd a controller K (p) such that stab(p) and i (p) "i for i = 1 : : : n:
(16) (17)
Design Procedure
A design procedure to solve the above problem is: i) De ne the plant G, and de ne the objective functions i . ii) De ne the values of the design goals "i iii) De ne the structure of the controller K (p), e.g. a P+I controller as in (12). Bounds should be placed on the values of pi to ensure that K (p) is implementable and to prevent undesirable pole/zero cancellations. iv) De ne initial values of pi. v) Implement a search algorithm to nd a K (p) which satis es inequalities (16) and (17), i.e. locate an admissible point. If a solution is found, the design is satisfactory. If no solution is found, change the initial values of p by returning to step (iv); change the structure of the controller by returning to step (iii), or relax one or more of the design goals "i by returning to step (ii) .
4.2
Mixed-Optimisation
Traditionally, control system designers use design methods based on either analytical optimisation or parameter optimisation. Both methods have advantages and disadvantages; brie y, analytical optimisation techniques (e.g. H1 , LQG) generally i) have non-explicit closed-loop performance, ii) are single-objective, iii) are robustly stable, 5
iv) can provide sophisticated controllers, v) are not very exible, vi) provide a global optimum, vii) can deal with relatively large MIMO problems; whereas parameter optimisation based methods (e.g. MOI) generally i) have explicit closed-loop performance, ii) are multi-objective, iii) are not implicitly robustly stable, iv) provide simple controllers, v) are exible, vi) are often non-convex resulting in local minima, vii) an deal with small problems only, viii) may have diculty stabilising the system. A combination of analytical optimisation and parameter search methods may be able to overcome some of the limitations of using just one approach. The MOI can be combined with analytical optimisation techniques by using the parameters of the weighting functions generally required by such techniques as the design parameters. Thus, for a nominal plant G(s) augmented by a set of nw weighting functions W (s) = (W (s); W (s) : : : Wnw ), a controller K (s; G; W ), which is optimal in some sense, can generally be synthesised, and a set of closed-loop performance functions of the optimal control system can be calculated. If the weighting functions are simply parameterised by the design vector p, the problem can be formulated as for (4), and the MOI used to design the weights for the analytical optimisation problem. The designer thus chooses the optimisation technique and the structure of the weighting functions W (s; p). He/she de nes suitable performance functions (e.g rise time, settling time, bandwidth, system norms etc) along with the design goals "i, and the MOI can be used to search for suitable values of the weighting function parameters p such that (4) is satis ed. Details of the above procedure applied to McFarlane and Glover's loop-shaping design procedure (LSDP) [MG92] are given in the next section. Further details may be found in [WPG94, WMGP93]. Details of the mixed-optimisation procedure applied to a 2 degree-of-freedom (dof) LSDP [HHL91, LKP93] may be found in [MPGW93, WMGP93] and to a mixed sensitivity H1 approach and an LQG optimisation in [WMGP93]. An alternative 2 dof LSDP approach with a parameterised pre- lter is proposed in [WPG94]. 1
2
min
4.3
The Loop Shaping Design Procedure with the MOI
McFarlane and Glover's loop-shaping design procedure [MG90] is a procedure for design of robust MIMO systems based on shaping the open loop transfer function with weighting functions and on H1-optimisation of a normalised coprime factorisation description of the nominal plant. Certain aspects of the LSDP make it very suitable for combining it with the method of inequalities to design directly for both closed-loop performance and stability robustness. A plant model G = M~ N~ , is a normalised left coprime factorisation (NLCF) of G if M~ ; N~ 2 RH1; there exists V; U 2 RH1 such that M~ V + N~ U = I ; and M~ M~ + N~ N~ = I where for a real rational function of s, X denotes X T ( s). 1
6
Using the notation
( ) = D + C (sI
Gs
then as shown in [MG90]
h
i
~ ~ =
N M
s
"
A R
A
+ HC 1=2
)
1
B R
C
B
=
"
A C
s
+ HD 1=2
B D
#
#
H
D
R
(18)
;
(19)
;
1=2
is a normalised coprime factorisation of G where H = (BDT + ZC T )R , R = I + DDT , and the matrix Z 0 is the unique stabilising solution to the algebraic Riccati equation (ARE) (A BS DT C )Z + Z (A BS DT C )T ZC T R CZ + BS B T = 0; (20) where S = I + DT D. 1
1
1
1
- N
+
- -
- N~
+ ? +-
M - M~
u
1
-y
1
K Figure 2: Robust stabilisation with respect to coprime factor uncertainty A perturbed model GP is de ned as
= (M~ + M ) (N~ + N ) (21) where M ; N 2 RH1. To maximise the class of perturbed models de ned by (21) such that the con guration of Figure 2 is stable, we need to nd the controller K which stabilises the nominal closedloop system and which minimises where
K
~
: ( ) (22)
= I GK M
1
GP
1
I
1
1
This is the problem of robust stabilisation of normalised coprime factor plant descriptions as introduced in [GM89]. From the small gain theorem, the closed-loop system will remain stable if (23) k [N M ] k1 < : The minimum value of for all stabilising controllers K is
K
~
inf I (I GK ) M
(24)
= K stabilising 1 1
1
0
7
1
and is given in [GM89] by
i 2
h
1=2
= 1
N~ M~
H ; where k kH denotes the Hankel norm. From [GM89]
h i
~ ~ ZX (I + ZX )
N M =
0
2
max
H
(25) 1
(26)
;
where () represents the maximum eigenvalue, and X 0 is the unique stabilising solution of the ARE (A BS D0C )0X + X (A BS D0C ) XBS B 0X + C 0R C = 0: (27) Hence from (25), it can be shown that (ZX )) = : (28)
= (1 + From [GM89], all controllers optimising are given by K = U V , where U and V are stable and are right coprime factorisations of K , and where
~ U
h ~ ~ i
N
(29)
= N M :
~ + max
1
1
0
1
1
1 2
max
1
M
V
1
H
This is a Hankel approximation problem and can be solved using an algorithm developed by Glover [Glo84, Mac89]. A controller which achieves a > is given in [MG90] by " # A + BF + (QT ) ZC T (C + DF ) (QT ) ZC T s (30) ; K= 0
2
1
2
BT X
1
DT
where F = S (DT C + B T X ), and Q = (1 )I + XZ . However, if = , then Q = XZ (XZ )I which is singular, and thus (30) cannot be implemented. This problem can be resolved using the descriptor system [CS92, SCL87, SLC89], whereby ^ _ = Ax ^ + Bu ^ (31) Ex ^ ^ (32) y = Cx + Du; which can be written as the system G^ (s) " # ^ ^ ^ + Es A B s ^ (s) = D^ + C^ (sE^ A^) B^ = (33) G ^ C^ D 1
2
0
max
1
The descriptor system allows E^ to be singular, and can be converted to the usual state space system via the singular value decomposition of E^ [CS92, SCL87]. Thus, from (30), a controller which achieves a is given in the descriptor form by " # QT s + QT (A + BF ) + ZC T (C + DF ) ZC T s (34) : K= 0
2
2
BT X
DT
In practice, to design control systems using normalised coprime factorisations, the plant needs to be weighted to meet closed-loop performance requirements. A design procedure has been developed [MG90, MG92], known as the loop-shaping design procedure (LSDP), to choose the weights by studying the openloop singular values of the plant, and augmenting the plant with weights so that the weighted plant has an open-loop shape which will give good closed-loop performance. The nominal plant G is augmented with pre- and post-compensators W and W respectively, so that the augmented plant Gs is Gs = W GW . Using the procedure outlined earlier, an optimum feedback controller 1
2
1
8
2
ref
- Kopt(0)W (0) 2
- W
m
6+
u
1
- G
Kopt
-y
W 2
Figure 3: Controller con guration for LSDP is synthesised which robustly stabilises the NLCF of Gs given by (N~s; M~ s) where Gs = M~ s N~s. The nal feedback controller K is then constructed by simply combining Kopt with the weights to give (35) K = W Kopt W : Note that from [MG90], Kopt
1
1
W1 1 K
I
W
:
inf ( GK ) [ W GW ] (36) stabilising 1 Essentially, with the LSDP, the weights W and W are the design parameters which are chosen both to give the augmented plant a `good' open-loop shape and to ensure that is not too large. is a design indicator of the success of the loop-shaping as well as a measure of the robustness of the stability property. The mixed-optimisation problem can thus be expressed as
0
=
2
K
1
2
1
2
1
1
2
0
0
Problem
For the system of Figure 3, nd (W ; W ) such that (37)
(W ; W ) ; and (38) i (W ; W ) "i for i = 1 : : : n; where
W K
inf W (I GK ) [ W G ]
; (39)
(W ; W ) = K stabilising 1 and i(W ; W ) are functionals of the closed-loop system, , "i are real numbers representing desired bounds on and i respectively, (W ; W ) is a pair of xed order weighting functions with real parameters p = (p ; p ; : : : ; pq ). 1
2
0
1
0
1
2
2
1
2
1
1
2
2
1
2
0
1
1
1
1
2
2
Design Procedure
A design procedure to solve the above problem is: i) De ne the plant G, and de ne the objective functions i . ii) De ne the values of " and "i iii) De ne the form and order of the weighting functions W and W . Bounds should be placed on the values of pi to ensure that W and W are stable and minimum phase to prevent undesirable pole/zero cancellations. The order of the weighting functions, and hence the value of q, should initially be small. 1
1
2
9
2
iv) De ne initial values of pi based on the open-loop frequency response of the plant. v) Implement a search algorithm in conjunction with (30) and (39) to nd a W which satis es inequalities (37) and (38), i.e. locate an admissible point. If a solution is found, the design is satisfactory. If no solution is found, change the initial values of p by returning to step (iv); change the structure of the controller by returning to step (iii), or relax one or more of the design goals " and "i by returning to step (ii). vi) With satisfactory weighting functions W and W , a satisfactory controller is obtained from (35). 1
5
2
MODCONS Implementation
A number of routines which implement the schemes introduced here have been collected together into the MODCONS Toolbox. There are three main components at the core of the Toolbox, they are: i) Search algorithms ii) User-interface iii) Objective functions calculator The relationship between these three components and the user is shown in Figure 4. The search algorithms compromise the core of the design package. These are generic to most design situations, not just for CACSD, and are the main design machine within the process. The user-interface is a very important component of the process, and this provides the interface between the search algorithms and the designer/user, and enables the designer to make intelligent decisions about the design process. The nal component is the objective functions calculator. This is speci c to CACSD, in fact, some functions are speci c to the particular class of control system ( xed controller, mixed-optimisation etc). USER
user-interface
search algorithm
- objective
functions calculator
Figure 4: Main component relationship MODCONS also contains several periphery categories of functions. These consist of the code generators, which generate application-speci c user-interfaces and objective functions M- les based upon speci cations from the user. There are also some routines to assist in report writing. 5.1
The Search Algorithms
The search algorithms implemented so far are the three algorithms described in Section 3, namely the moving boundaries process, the Nelder Mead dynamic minimax method and the multi-objective genetic algorithm. The search algorithm M- les can be called from the command line or from within a user-interface routine. The search algorithms require the de nition of an M- le which is the objective functions calculator, and which returns the function set (p). The name of the function M- le must be provided as an argument to the search algorithms M- le, along with initial values of the design parameter p , and the design goals vector which contains parameters used in the search routine may also be provided along ". An with upper and lower bounds on the values of the design parameters. 0
options
10
The search algorithms terminate when an admissible point is found, when a local minima is reached and the search becomes `trapped', or when the maximum number of iterations is reached. The algorithms may provide the user with information on the progress of the algorithm, both in text and graphical form. The format of the search algorithms has been made as compatible as possible with the MATLAB search algorithms fmin and fmins, and with the various search algorithms from the Optimization Toolbox [Gra90]. The MOGA implementation uses the GATools [CFPF94] for the genetic operations, the MOGA will in fact be included in the next version of GATools. An algorithm based on simulated annealing is currently under development [WGP94], and this will be included at a later date. The goal attainment method [Gem74, GH75, FP86] can also be used for solving inequalities, this algorithm can be found in the Optimisation Toolbox [Gra90]. 5.2
User-Interface
The user-interface provides the mechanism for designer decision making. More speci cally, it is the interface between the search algorithms and the user. The user needs to provide initial design parameters, parameter bounds, design goal " to the search algorithm. The search algorithm in turn must provide the user with information regarding the progress of the search in order that the user can make these decisions. The user can also provide the search algorithms with speci c information required n the mechanics of the algorithm, such as the maximum number of iterations, the initial step length, local minima termination criteria and so on. The user can also change the sophistication of the information on the progress of the search . The user has the option of two user-interfaces, either the MATLAB command line, or a graphical user-interface (GUI) provided by MODCONS. The GUI is application-speci c and is generated by code generators within MODCONS. The GUI provides sliders, graphics, menu choice of algorithm etc which aid the user in decision making. An example of a GUI is shown in Figure 6 in Appendix A. 5.3
Objective Functions Calculator
The objective functions calculator M- le is called by the search algorithm with the current design parameters and returns the objective function vector (p). For control system design, within the objective functions calculator, the following steps are generally taken: i) synthesise or construct the controller from the design parameters, ii) compute the closed loop transfer functions iii) compute relevant time and frequency responses iv) compute the performance and robustness functionals from the responses The objective functions calculator M- le can be written by the user, or for several classes of control systems, they can be generated automatically from within MODCONS (see Section 5.5 for details). A number of function M- les exist within MODCONS to calculate commonly-used functionals from step and frequency responses, such as the rise time, settling time, bandwidth etc. Additional information on the progress of the search can also be directed to the user-interface from the objective functions calculator, if the user wishes, such as the step response of the current design. 5.4
Example { Mixed-Optimisation Implementation
Figure 5 shows a more detailed relationship between the components for a mixed-optimisation design using the LSDP. The user interacts with the user-interface, which calls and monitors the progress of the search algorithms. At each iteration, i, the progress of the objective functions is displayed graphically by the user-interface. The objective functions calculator has four basic steps: i) construct the weighting function pair W (p) = (W ; W ) from the design parameters p, 1
11
2
ii) synthesise the controller from the weighting functions (using -Tools [BDG 91] or from (34) using the Robust Control Toolbox [CS92]), iii) compute the closed loop transfer functions, iv) compute relevant time and frequency responses and compute the performance and robustness functionals from the responses. Additional information may be output to the user-interface (e.g. the singular values plot of the weighted plan). +
USER
6
6
? user-interface
" p0
?
graphical display
6
ps
6
()
(i) p
additional information
search algorithm
6
objective functions calculator
.. . . . . . . . . . p. . . . . . . . . . . . . . . . . . . . . (.p.) . . . . . .. .. .. ? .. .. compute construct .. .. weighting objective .. .. functions functions .. .. .. .. 6 .. .. T (K ) W (p) .. .. ? .. .. .. .. compute ( ) K W synthesise .. .. - closed loop controller .. transfer functions .. . .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... Figure 5: Mixed-optimisation implementation 12
5.5
Code Generators for Objective Function M-Files
Incorporated into MODCONS are a number of automatic code generators for application-speci c objective function M- les. For example, for mixed-optimisation using the LSDP, a MODCONS routine will bring up the window shown in Figure 7 in Appendix A. Clicking on the \G" box will bring up the window shown in Figure 8 in Appendix A, where the nominal plant can be de ned as (A; B; C; D) state space matrices. The objective function set can be de ned from the option \functions", which will bring up the window shown in Figure 9 in Appendix A. Clicking on the \W1" box will bring up the window in shown in Figure 10 in Appendix A, where the structure of the pre-plant weighting function W can be de ned. The structure of W is de ned similarly with the \W2" box. The option \Generate" will generate the function M- le according to the speci cations given. Similar code generators are being written for other classes of control systems, such as the \traditional" approach described in Section 4.1 and for critical systems. 1
2
5.6
Code Generators for User-Interfaces
Similar code generators to those described in the previous section are being developed to automatically generate the application-speci c user-interfaces for various classes of control systems. 5.7
Report Writing Utilities
Several utility functions which write transfer functions, matrices, state space descriptions etc. into the a EX document preparation system [Lam86] have been included. More sophisticated report format for the LT writing facilities are planned for inclusion. 6
Conclusions and Future Developments
The MODCONS Toolbox provides exible and robust tools for multi-objective control system design within MATLAB, particularly for the mixed-optimisation approach. The package allows users of dierent levels of sophistication access to such techniques; the code generating capabilities are particularly useful for less sophisticated users. The Toolbox is currently at a fairly early stage of development, and a number of extensions and enhancements are planned. It is intended that the number of search algorithms available will be extended, for example to include algorithms by Polak, Mayne and co-workers (see for example [BHM79]). An approach base on simulated annealing is currently being developed by the authors [WGP94] and will be included. A possibility is to allow MODCONS to interact with other multi-objective control system design packages, such as QDES [BKB 89], which is based on the approach of Boyd and Barrett [BB91]. The objective functions and user-interface code generators will be extended to include other classes of control systems such as critical control systems [Zak89, WL93], well-matched systems [Zak91, Rut92, Rut94b, Rut94a], and to extend the mixed-optimisation classes to include other H1-optimisation methods [WMGP93]. +
7
Acknowledgements
The authors would like to acknowledge N. P. Foster and N. K. Rutland for their suggestions, and D. J. Walker for the MATLAB code to implement the LSDP with the Robust Control Toolbox.
13
Appendix A MODCONS Windows
Figure 6: Graphical user-interface example
14
Figure 7: Window for generating mixed-optimisation objective function M- les
Figure 8: Window for de ning nominal plant
15
Figure 9: Window for de ning objective function set
Figure 10: Window for de ning structure of weighting function
16
W1
Appendix B MODCONS Functions Graphical User-Interfaces
uiMOI uiABCD uiPHI uiW1 uiW2
Method of inequalities GUI User-interface to de ne nominal plant in ABCD form User-interface to de ne functions set PHI User-interface to de ne weighting function W1 details User-interface to de ne weighting function W2 details
Search Algorithms
mbp moga nmdm
Moving Boundaries Process Multi-Objective Genetic Algorithm (needs GAToolbox) Nealder-Mead dynamic minimax search method
Code Generators
genlsdp
LSDP mixed-optimisation function generator
Functionals
bandwidth overshoot risetime settling
System bandwidth Step response overshoot Step response rise time Step response settling time
Report Writing
abcd2latex mat2latex poly2latex tf2latex var2latex
a EX ABCD state space system Generate a LT a EX matrix Generate a LT a EX polynomial in s Generate a LT a EX transfer function Generate a LT a EX scalar variable Generate a LT
Demonstrations
demo fun demo moi
Calculate functionals for demo moi Method of inequalities demonstration program
Utility
w2tfstr goal pref gramschmidt matformat maxfun nm mo ranking plt share
Format a weighting function matrix W into a transfer function string for uiW1 and uiW2 Goal preference function for moga Orthogonalisation of the row vectors by the Gram-Schmidt procedure for mbp Format a string or a matrix into a matrix string for uiABCD Calculates the maximum dynamic function for nmdm Multi-objective ranking scheme for moga Partially less than function for moga Sharing function for moga
17
References [Bad87]
A.T. Bada. CRITERIA: a package for computer-aided control system design. Computer-Aided Design, 19(9):466{474, 1987.
[BB91]
S. Boyd and C. Barratt. Linear Englewood Clis, N.J., 1991.
[BCS79]
K.E. Bollinger, P.A. Cook, and P.S. Sandhu. Synchronous generator controller synthesis using moving boundary search techniques with frequency domain techniques. IEEE Trans. Power Apparatus & Systems, PAS-98(5):1497{1501, 1979.
Controller Design: Limits of Performance.
[BDG+ 91] G.J. Balas, J.C. Doyle, K. Glover, A. Packard, and R. Smith. -Analysis Toolbox: User's Guide. The MathWorks, Inc., MA, USA., 1991. [BHM79]
Prentice-Hall,
and Synthesis
R.G. Becker, A.J. Heunis, and D.Q. Mayne. Computer-aided design of control systems via optimization. IEE Proc.-D, 126(6):573{578, 1979.
[BKB+ 89] S. Boyd, N. Khraishi, C. Barratt, S. Norman, V. Balakrishnan, and D. Meyer. QDES. Information Systems Laboratory, Electrical Engineering Dept., Stanford University, 1989. [CFPF94]
A. Chipper eld, P.J. Fleming, H. Pohlheim, and C.M. Fonseca. Genetic Algorithm Toolbox: User's Guide. Dept. Automatic Control and Systems Engineering, University of Sheeld, U.K., 1994.
[Coh78]
J.L. Cohon.
[CS92]
Multiobjective Programming and Planning. Academic Press, New York, 1978. R.Y. Chiang and M.G. Safonov. Robust Control Toolbox: User's Guide. The MathWorks, Inc., MA, USA., 1992.
[FF93a]
C.M. Fonseca and P.J. Fleming. Genetic algorithms for multiobjective optimization: formulation, discussion and generalization. In Genetic Algorithms: Proceeding of the Fifth International Conference, San Mateo, CA, 1993.
[FF93b]
C.M. Fonseca and P.J. Fleming. Multiobjective genetic algorithms. In IEE Colloquium on Genetic Algorithms for Control Systems Engineering, number 1993/130, pages 6/1{6/5, London, England, 1993.
[FF94]
C.M. Fonseca and P.J. Fleming. Multiobjective optimal controller design with genetic algorithms. In Proc. Control 94, pages 745{749, Coventry, England, 1994.
[FP86]
P.J. Fleming and A.P. Pashkevich. Application of multi-objective optimization to compensator design for SISO control systems. Electronics Letters, 22(5):258{259, 1986.
[Gem74]
F.W. Gembicki. Vector optimization for control with performance and parameter indices. PhD thesis, Case Western Reserve University, Cleveland, Ohio, 1974.
[GH75]
F.W. Gembicki and Y.Y. Haimes. Approach to performance and sensitivity multiobjective optimization: the goal attainment method. IEEE Trans. Autom. Control, AC-20(8):821{830, 1975.
[Gie78]
D.P. Giesy. Calculation of Pareto-optimal solutions to multiple-objective problems using threshold-of-acceptability constraints. IEEE Trans. Autom. Control, AC-23(6):1114{1115, 1978.
sensitivity
[GJOF93] G. Grubel, H.-D. Joos, M. Otter, and R. Finsterwalder. The ANDECS design environment for control engineering. In Proc. 12th IFAC World Congress, volume 6, pages 447{454, Sydney, 1993. 18
[Glo84]
K. Glover. All optimal Hankel-norm approximations of linear multivariable systems and their L1 -error bounds. Int. J. Control, 39(6):1115{1193, 1984.
[GM89]
K. Glover and D.C. McFarlane. Robust stabilization of normalized coprime factor plant descriptions with H1 -bounded uncertainty. IEEE Trans. Autom. Control, AC-34(8):821{830, 1989.
[Gra90]
A. Grace.
[GS85]
N. Golpalsami and C.K. Sanathanan. Satisfactory solutions approach to parameter optimization of dynamical systems with vector performance index. J. Optim. Theory Applic., 47(3):301{319, 1985.
[HHL91]
D.J. Hoyle, R.A. Hyde, and D.J.N. Limebeer. An H1 approach to two degree of freedom design. In Proc. 30th IEEE Conf. Decision Contr., pages 1579{1580, Brighton, England, 1991.
[II87]
H. Inooka and Y. Imai. Design of a single-loop digital controller by the method of inequalities. Int. J. Control, 45(5):1505{1513, 1987.
[JG91]
T.H. Janabi and J.O. Gray. Method for the control of a special class of non-linear systems. Int. J. Control, 54(1):215{239, 1991.
[KK87]
S.D. Katebi and M.R. Katebi. Combined frequency and time domain technique for the design of compensators for non-linear feedback control systems. Int. J. Systems Sci., 18(11):2001{ 2017, 1987.
Optimization Toolbox: User's Guide. The MathWorks, Inc., MA, USA., 1990.
[KMKT94] T. Kanno, K. Murakami, K. Kurotani, and M. Takano. Optimization system for control system design. In Proc. 20th Int. Conf. Ind. Electr. Control & Instr., pages 1882{1887, Bologna, Italy, 1994. [KS79]
G. Kreisselmeier and R. Steinhauser. Systematic control design by optimizing a vector performance index. In Proc. IFAC Symp. on Computer-Aided Design of Control Systems, pages 113{117, Zurich, 1979.
[KS83]
G. Kreisselmeier and R. Steinhauser. Application of vector performance optimization to a robust control loop design for a ghter aircraft. Int. J. Control, 37(2):251{284, 1983.
[Lam86]
a EX: L. Lamport. LT
[Lan94]
P.G. Lane. The principle of matching: a necessary and sucient condition for inputs restricted in magnitude and rate of change. Control Systems Centre Report 792, University of Manchester Institute of Science and Technology, Manchester, U.K., 1994.
[Lin76]
J.G. Lin. Multi-objective problems: Pareto-optimal solutions by method of proper equality constraints. IEEE Trans. Autom. Control, AC-21(5):641{650, 1976.
[Lin77]
J.G. Lin. Proper inequality constraints and maximization of index vectors. Applic., 21:505{521, 1977.
[LKP93]
D.J.N. Limebeer, E.M. Kasenally, and J.D. Perkins. On the design of robust two degree of freedom controllers. Automatica, 29(1):157{168, 1993.
[Mac89]
J.M. Maciejowski.
[MG90]
A Document Preparation System. Addison-Wesley, Reading, MA, 1986.
J. Optim. Theory
Multivariable Feedback Design. Addison-Wesley, Wokingham, U.K., 1989. D.C. McFarlane and K. Glover. Robust Controller Design Using Normalized Coprime Factor Plant Descriptions, volume 138 of Lect. Notes Control & Inf. Sci. Springer-Verlag, Berlin, 1990.
19
[MG92]
D.C. McFarlane and K. Glover. A loop shaping design procedure using H1 synthesis. Trans. Autom. Control, AC-37(6):759{769, 1992.
IEEE
[MPGW93] G. Murad, I. Postlethwaite, D.-W. Gu, and J.F. Whidborne. Robust control of a glass tube shaping process. In Proc. 2nd European Contr. Conf., pages 2350{2355, Groningen, Netherlands, 1993. [Ng89]
W.Y. Ng. Interactive Multi-Objective Programming as a Framework for Computer-Aided Control System Design, volume 132 of Lect. Notes Control & Inf. Sci. Springer-Verlag, Berlin, 1989.
[NM65]
J.A. Nelder and R. Mead. A simplex method for function minimization. 313, 1965.
[NT86]
W.T. Nye and A.L. Tits. An application-oriented, optimization-based methodology for interactive design of engineering systems. Int. J. Control, 43(6):1693{1721, 1986.
[Nye83]
W.T. Nye. DELIGHT: An interactive system for optimization-based engineering design. PhD thesis, University of California, Berkeley, CA, 1983.
[Par06]
V. Pareto.
[PC91]
E.S. Prabhu and M. Chidambaram. Robust control of a distillation column by the method of inequalities. J. Proc. Cont., 1:171{176, 1991.
[PLC93]
R.J. Patton, G.P. Liu, and J. Chen. Multivariable control using eigenstructure assignment and the method of inequalities. In Proc. 2nd European Contr. Conf., Groningen, Netherlands, 1993.
Comp. J., 7(4):308{
Manuale di Economia Politica. Societa Editrice Libraria, Milan, Italy, 1906.
[PWMG94] I. Postlethwaite, J.F. Whidborne, G. Murad, and D.-W. Gu. Robust control of the benchmark problem using H1 methods and numerical optimisation techniques. Automatica, 30(4):615{ 619, 1994. [Ros60]
H.H. Rosenbrock. An automatic method for nding the greatest or least value of a function. Comp. J., 3:175{184, 1960.
[Rut92]
N.K. Rutland. Illustration of a new principle of design: vehicle speed control. 55(6):1319{1334, 1992.
[Rut94a]
N. Rutland. Illustration of the principle of matching with inputs restricted in magnitude and rate of change: vehicle speed control revisited. Int. J. Control, 60(3):395{412, 1994.
[Rut94b]
N. Rutland. The principle of matching: practical conditions for systems with inputs restricted in magnitude and rate of change. IEEE Trans. Autom. Control, AC-39(3):550{553, 1994.
[SCL87]
M.G. Safonov, R.Y. Chiang, and D.J.N. Limebeer. Hankel model reduction without balancing { a descriptor approach. In Proc. 26th IEEE Conf. Decision Contr., pages 112{117, Los Angeles, CA., 1987.
[SLC89]
M.G. Safonov, D.J.N. Limebeer, and R.Y. Chiang. Simplifying the H1 theory via loopshifting, matrix-pencil and descriptor concepts. Int. J. Control, 50(6):2467{2488, 1989.
[Tai79]
O. Taiwo. Design of multivariable controllers for an advanced turbofan engine by Zakian's method of inequalities. ASME J. Dyn. Syst. Meas. & Control, 101:299{307, 1979.
[TSGJ79]
D. Tabak, A.A. Schy, D.P. Giesy, and K.G. Johnson. Application of multiobjective optimization in aircraft control systems design. Automatica, 15:595{600, 1979. 20
Int. J. Control,
[WGP94]
J.F Whidborne, D.-W. Gu, and I. Postlethwaite. Simulated annealing for multi-objective control system design. Leicester University Engineering Department Report 94- , Leicester, U.K., 1994. In preparation.
[Whi91]
J.F. Whidborne. Design of Critical Control Systems. PhD thesis, University of Manchester Institute of Science and Technology, Manchester, U.K., 1991.
[Whi92]
J.F. Whidborne. Performance in sampled data systems.
[Whi93]
J.F. Whidborne. matica, 29(5):1345{1349, 1993.
[WL93]
J.F. Whidborne and G.P. Liu. Critical Control Research Studies Press, Taunton, U.K., 1993.
IEE Proc.-D, 139(3):245{250, 1992. EMS control system design for a maglev vehicle - A critical system. AutoSystems: Theory, Design and Applications.
[WMGP93] J.F. Whidborne, G. Murad, D.-W. Gu, and I. Postlethwaite. Robust control of an unknown plant { the IFAC 93 benchmark. Leicester University Engineering Department Report 93-53, Leicester, U.K., 1993. To appear in Int. J. Control. [WPG94]
J.F. Whidborne, I. Postlethwaite, and D.-W. Gu. Robust controller design using H1 loopshaping and the method of inequalities. IEEE Trans. on Contr. Syst. Technology, 1994. To appear.
[Zad63]
L.A. Zadeh. Optimality and non-scalar-valued performance criteria. Control, AC-8(1):59{60, 1963.
[Zak89]
V. Zakian. Critical systems and tolerable inputs.
[Zak91]
IEEE Trans. Autom.
Int. J. Control, 49(4):1285{1289, 1989. V. Zakian. Well matched systems. IMA J. Control & Information, 8:29{38, 1991.
[Zak92]
V. Zakian. Principle of matching and the method of inequalities. Control Systems Centre Report 769, University of Manchester Institute of Science and Technology, Manchester, U.K., 1992.
[ZAN73]
V. Zakian and U. Al-Naib. Design of dynamical and control systems by the method of inequalities. Proc. IEE, 120(11):1421{1427, 1973.
21