Professional Documents
Culture Documents
1. Introduction
= k6
kl7x2
klsx3
k4x4
k9x4 + kiOx5
+ kl4x4 + ki5x5
+ kl9x4 + k2Ox5
k2Sx5
= (y{ +y2+ .
/ = (2Ji + azy2 + a4y3 + asy4 + 7840a6 - 100000o0
- 508006a7 + k3l + k32x2 + k33x3 + k34x4
+ 35*5)*! - 24345 + a,x6
'Imperial Chemical Industries Limited, Central Instrument Research Laboratory, Bozedown House, Whitchurch Hill, Nr. Reading
Berks.
'
42
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
A new method for finding the maximum of a general non-linear function of several variables
within a constrained region is described, and shown to be efficient compared with existing
methods when the required optimum lies on one or more constraints. The efficacy of using
effective constraints to eliminate variables is demonstrated, and a program to achieve this easily
and automatically is described. Finally, the performance of the new method (the "Complex"
method) with unconstrained problems, is compared with those of the Simplex method, from
which it was evolved, and Rosenbrock's method.
Constrained optimization
Xi
0<
1 2 < x2 < 2 4
20 < x 3 < 60
9 < x 4 < 9-3
6-5 < x5 < 7-0
0 < x6 < 294000
0 < x1 < 294000
0 < x8 < 277200.
The values of the a, and the k-, will be found in the
Appendix.
It will be seen that/, x6, x7 and xs are linear in any
one variable but are quadratic due to cross-product
terms, i.e. the problem is frustratingly just beyond the
scope of linear programming.
The given initial point was
xl = 2-52
x2=
2
x 3 = 37-5
x 4 = 9-25
x5 = 6-8
corresponding t o / = 2,351,244.
The optimum value is now known to b e / = 5,280,334
corresponding to
x,
x2
x3
x4
x5
x6
x7
x8
=
=
=
=
=
=
=
=
4-53743
2-4
60
9-3
7-0
75,570
198,157
277,200.
4-58353
2-21545
31-77327
9-29997
6-99863
corresponding to / = 5,222,459
x 6 = 78,989-85
Xl = 194,722-60
x8 = 277,177-96.
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
In Tables 1 and 2 are tabulated the best function
values obtained for problems A and B after 200 function
evaluations for a range of values of a and k. Those
entries marked with an asterisk indicate that the stopping
criterion ended the run before 200 trials had been
performed.
After examination of these tables, it was decided to
take as reflection factor a = 1 3 and k = 2 as the
number of vertices for constrained problems, the choice
apparently not being critical.
Problem BThis problem has a different type of constraint to problem A, namely one in which the current
limit for one of the variables (x2) depends on the current
value of another variable (x,) instead of the constraints
all being constants.
To maximize the function / , of 2 variables, subject to
3 constraints given below;
f
subject to
-j\2l
0 < Xi
corresponding t o / = 0-01336.
The optimum value is 1 at xt 3, x 2 = \ / 3 .
Table 1
Problem AFunction value after 200 trials
REFLECTION FACTOR a.
NUMBER OF
VERTICES k
AVERAGE
10
11
1-2
1-3
1-4
1-5
6
7
8
9
10
11
12
5,175,501
5,127,218
5,198,689
5,145,139
5,196,802
5,167,050
5,187,422
5,177,024
5,167,767
5,162,963
5,218,889
5,184,167
5,207,356
5,148,227
5,156,428
5,167,704
5,216,529
5,223,309
5,194,993
5,193,535
5,194,280
5,174,663
5,170,132
5,153,434
5,190,207
5,213,805
5,204,301
5,171,596
5,171,262
5,183,046
5,169,406
5,160,370
5,188,108
5,213,832
5,184,185
5,168,845
5,193,077
5,141,928
5,195,258
5,158,949
5,218,021
5,192,269
5,170,620
5,168,157
5,173,824
5,188,862
5,189,470
5,200,682
5,179,663
Average
5,171,117
5,180,913
5,192,396
5,182,591
5,181,458
5,181,192
5,181,611
Table 2
Problem BFunction value after 200 trials
REFLECTION FACTOR Ct
NUMBER OF
VERTICES k
AVERAGE
10
li
1-2
3
4
5
6
7
8
0-96808
0-99436
0-98541
0-99396
0-99708
0-99951
0-98309
0-99996
0-99944
0-99970
0-99974
0-99965
0-99916
0-99987
0-99934
0-99908
0-99990
0-99727
1-00000
0-99999*
1-00000*
0-99999
0-99601
0-99856
1-00000*
0-99999*
1-00000
0-99959
0-99652*
0-99980
1-00000*
0-99998
0-99999
0-99997
0-99990
0-99831
0-99172
0-99902
0-99736
0-99871
0-99819
0-99885
Average
0-98973
0-99693
0-99910
0-99909
0-99931
0-99969
0-99731
1-3
45
1-4
1-5
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
Jx~t =
1 169 093
^- =
lx2
682,940
'
'
= 2,161,951
W =3'309'977
46
\f
compatibility of the negative sign for ^ and x3 being set
ox3
<JX8
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
0 < x, 20
0 < x2 < 11
0 < x3 42
72, where X4 =
The solution is *, = 20, x2 = 11
/ = 3,300.
2x2- f 2x3
= 15, x4 = 72,
Thus we set /, == 0 h = 0 h 0
= 0
= 1
2 "3 = 0 M = 3
and provide auxiliaries as follows
at label 101 to set x, = 20
at label 102 to set x2 = 11
at label 104 to set x3 = 36 0-5JC, x2.
4
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
ultimately obtained, but only at the expense of reprogramming the problem several times.
The conclusion was then reached that the constraints
had not received adequate attention from previous
workers. In constraint-bound problems, the constraints
are of as much importance as the contours and gradient
of the function (cf. linear programming). This suggested
that optimizers which are essentially for unconstrained
problems do not necessarily become efficient constrained
optimizers merely by the addition of some penalty
function concept.
The following variant of Rosenbrock's method was
then tried. Suppose that at the end of a stage one constraint only is effective, i.e. its boundary region has been
entered. The gradient of the normal to this constraint
can be estimated by perturbations about the current
point. Then one axis of search for the next stage is set
parallel to this normal and a further (n 1) mutually
orthogonal axes are constructed. These latter must be
locally parallel to the constraint, and so we might hope
for reasonable progress along the constraint. For
problem A, using the normal to the constraint xs = h8,
no advantage was gained, presumably because the
curvature of the constraint is excessive. It was found
that the current point moved even nearer to the constraint rather than along it.
Alternatively, again considering problem A, suppose
up to (n 1) constraints are effective. Then it is possible to compute a direction which is locally parallel to
all these constraints, and to set up the further (n 1)
mutually orthogonal axes in the usual way. This,
however, was no more successful.
Constrained optimization
region, set
Table 3
Function value after 200 trials (n = 2, X = 100, 6 = 25)
REFLECTION FACTOR CC
NUMBER
OF
VERTICES
PRODUCT
10
3
4
5
6
7
8
Product
11
4-5 x 10-' 2 *
1-2 x 10-' 3
7-4 x 10-' 3
3-6 x 10- 7
3-0 x 10- 8
1-7 x lO"6
2-3 x 10-' 2
1-1 x 10-'
1-3 X lO- 8
4-4 x 10~6
7-6 x 10- 5
3-1 X lO- 3
~10~ 57
~ io-42
1-2
1-6
3-0
1-8
3-0
3-7
4-1
1-4
1-3
x 10X 10- 4
X lO- 3
x lO- 2
x lO- 2
1-1
1-2
2-0
3-0
10
1-7
~io- 1 6
x
x
x
x
IO- 3
lO- 2
10-'
10-'
~io- 6
2-7
6-7
1-5
31
1-0
5-6
1-5
x 10-5* 2-8
x 10-9* 7-6
x 10- 9 1-4
7-2
x 10~5 6-3
2-6
~10-25
x 10-'*
x 10-' 4
x 10- 7
x 10- 9
x 10- 6
x 10- 5
~io- 45 30
~io~io- 4 0
lO-22
~io- 21 44
~io-
~io- 4 8
Table 4
Function value after 200 trials (n = 5, X = 100, 6 = 25)
REFLECTION FACTOR O.
NUMBER
OF
VERTICES
PRODUCT
10
6
7
8
9
10
11
12
Product
1-6
2-1
3-3
40
1-6
9-4
3-6
x
X
X
x
x
l-l
10-'
10-'
10-'
lO- 2
lO- 2
~10~ 4
20
1-3
31
4-9
30
9-4
7-2
x 10-'
X 10-'
X 10-'
x IO- 2
X lO- 2
io- 4
1-2
1-8
2-2
70
10
5-4
4-3
81
1-3
x 10-'
x 10-'
X 10-'
x 10-'
~io-'
48
1-4
4-8
5-2
6-3
7-4
5-0
6-5
10
18
3-2 x 10-'
1-5 x 10-'
23
4-1
3-3
6-9
~10 5
~10 3
1-5
11
20
2-5
3-3
1-3
2-6
6-8
x 10-'
x 10-'
x 10-'
x lO- 2
~10-2
~10 3
~10'
~10~2
~10 2
~10-2
io- 2
~10- 3
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
= cos 6
,=
sin 9
e.g. 0 i =
cos 6
sin 6
COS 6
sin
(zeros)
(zeros)
1
Then form the matrix O = On_tOn_2
O2O{.
Table 5
Comparison in 2 dimensions
i.e.
= A
FUNCTION VALUE
A= 1
A = 10
A = 100
49
10
SA
SB
RA
RB
CA
CB
25
25
13
14
16
19
53
53
23
24
23
30
70
70
33
44
37
40
87
87
34
50
50
54
SA
SB
RA
RB
CA
CB
32
28
14
19
18
11
48
49
24
37
31
20
60
63
38
43
39
30
75
78
45
50
49
44
SA
SB
RA
RB
CA
CB
23
17
33
16
14
13
36
34
55
41
26
23
46
42
61
50
101
35
70
60
71
56
134
36
01
001
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
Constrained optimization
Table 6
Table 7
Comparison in 3 dimensions
Comparison in 5 dimensions
FUNCTION VALUE
FUNCTION VALUE
SA
SB
RA
RB
CA
CB
42
42
19
21
25
31
65
65
34
36
36
54
84
84
49
74
69
73
109
109
50
78
88
86
A = 10
SA
SB
RA
RB
CA
CB
32
31
21
21
20
20
57
47
35
44
49
44
74
77
48
69
97
67
96
97
74
70
115
82
A = 100
SA
SB
RA
RB
CA
CB
32
4
20
5
14
17
42
54
50
23
39
48
71
78
78
83
106
69
93
99
118
121
242
77
A= 1
01
10
01
001
SA
SB
RA
RB
CA
CB
763
770
31
35
56
68
796
799
56
60
84
111
829
839
81
130
119
146
875
82
135
153
184
SA
SB
RA
RB
CA
CB
40
37
38
35
48
48
117
72
58
59
83
90
151
111
84
75
123
177
190
153
115
111
183
234
SA
SB
RA
RB
CA
CB
38
0
33
0
39
0
66
70
57
35
75
78
114
109
85
87
121
168
202
145
170
112
193
211
SC
SD
110
111
151
146
191
180
230
231
001
A= 1
A = 10
A = 100
A1
The averages of all the numbers of function evaluations given in Tables 5-8 are given in Table 9 for each
method and each value of n, thefivedimensional Simplex
results SC and SD being used in place of SA and SB.
The Complex method had performed particularly poorly
in ten dimensions, since it had used too many vertices,
namely 20. (It will be recalled that k = In was selected
on the basis of experiments in 2 and 5 dimensions.)
The results of Table 9 can be conveniently summarized
as follows, where T is the average number of trials:
10. Conclusions
For Rosenbrock's program, the modifications
described have been shown not to change its performance significantly. Also, the selection of the
parameters a and k in the Complex method does not
appear to be critical. Therefore the author doubts
whether any modification of either of these methods or
the original Simplex method could be of very great
advantage, although Nelder and Mead (Nelder and
Mead, 1965) do seem to have developed a successful
Simplex-type method. The view of other workers, that
random methods and "one variable at a time" methods
without rotation, of the axes are inefficient, is endorsed.
The Complex and RAVE programs are believed to
be of considerable use in the solution of constraintbound problems, but for unconstrained problems
Rosenbrock's method is superior to both the Simplex
and Complex methods by a factor of two. The interesting
problem of modifying the RAVE program to incorporate
criteria to release it from the constraints on to which it
has locked would be spurred on by the provision of a
problem requiring this facility.
This work has led the author to the view that there
are two problems in optimization which must be distinguished:
Rosenbrock's method: T =
16 1 + 11 3
Simplex:
26-5
Complex:
T= 14-5 + 26-2n
where, in fitting these straight lines (which are quite
reasonable fits), the ten-dimensional datum for the
Complex method has been omitted.
From this comparison it was concluded that for
unconstrained problems, Rosenbrock's method is more
efficient than the Simplex and Complex methods, which
do not differ significantly in their performance. It was
also found that the number of trials needed to locate an
optimum to a given precision increased about twice as
rapidly with the number of dimensions n for the Simplex
and Complex methods as it did with Rosenbrock's
method.
50
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
10
Constrained optimization
Table 8
Table 9
Comparison in 10 dimensions
FUNCTION VALUE
A = 1
A = 100
01
001
SA
SB
RA
RB
CA
CB
181
181
61
70
154
197
272
272
111
170
266
312
357
357
161
215
373
397
438
438
162
275
459
531
SA
SB
RA
RB
CA
CB
130
76
61
70
127
123
214
148
112
71
210
286
299
226
162
151
354
572
378
293
203
172
497
670
SA
SB
RA
RB
CA
CB
117
0
73
0
115
0
253
124
113
70
249
235
422
224
142
110
572
833
507
297
214
150
1264
1207
SIMPLEX
COMPLEX
37
52
73
129
51
66
124
258
37
65
116
418
2
3
5
10
Appendix
Values of the constants used in problem A
ax = 15
a2 = 50
a5 = 1 5
a6 == 6
were
k2 k6 =
kl0=
/c, 4 =
kt 8 =
k22=
k26=&30 =
Ar 34 =
a3 = 9-583
a7 = 0-75.
k3 = - 40-427932
k7 = 4,176-15328
kn = -21,686-9194
= 2,898-573
k\g = 329-574
k23 = 16-243649
k27 = 99
k3l = 925,548-252
k35 = - 50,843-766.
2,931-1506
161,622-577
13,160-295
706-834
31-242116
- 306-262544
26,237
2,100
- 27,097-648
The reader should not assume that the k-, are accurate
to all the figures given. The problem was presented in
the form of a computer program to calculate/, JC6, x7
and xg from xu x2, x3, x 4 and x5. Many intermediate
quantities were calculated by this original program
using regression coefficients to far fewer than nine decimal
places. The amount of arithmetic necessary to compute
k4 = 5,106-192
k8 = 2-8260078
= 123-56928
k\6 = 28,298-388
k20 = - 2,882-082
= -3,094-252
k28 = - 0 - 4 2
k32 = - 61,968-8432
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
A = 10
10
ROSENBROCK
Constrained optimization
References
C. W. (1961). "The Created Response Surface Technique for Optimizing Nonlinear Restrained Systems," Operations
Research, Vol. 9, p. 169.
DAVIDON, W. C. (1959). "Variable Metric Method for Minimization," A.E.C. Research and Development Report,
ANL-5990 (Rev.).
FLETCHER, R., and POWELL, M. J. D. (1963). "A rapidly convergent descent method for minimization," The Computer Journal,
Vol. 6, p. 163.
NELDER, J. A., and MEAD, R. (1965). "A simplex method for function minimization," The Computer Journal, Vol. 7, p. 308.
ROSEN, J. B. (I960). "The Gradient Projection Method for Nonlinear Programming. Part I. Linear Constraints," / . Soc.
Indust. Appl. Math., Vol. 8, p. 181.
ROSEN, J. B. (1961). "The Gradient Projection Method for Nonlinear Programming. Part II: Nonlinear Constraints," / . Soc.
Indust. Appl. Math., Vol. 9, p. 514.
ROSENBROCK, H. H. (1960). "An Automatic Method for finding the Greatest or Least Value of a Function," The Computer
Journal, Vol. 3, p. 175.
SPENDLEY, W., HEXT, G. R., and HIMSWORTH, F. R. (1962). "Sequential Applications of Simplex Designs in Optimisation and
Evolutionary Operation," Technometrics, Vol. 4, p. 441.
CARROLL,
(2)
9fi.jfj.kfufl+fi.jfj.k,fkfl][fu/j.kfk)\
I
Yours faithfully,
A. R. CURTIS.
Mathematics Division,
National Physical Laboratory,
Teddington, Middlesex.
15 January 1965.
52
Downloaded from http://comjnl.oxfordjournals.org/ at Universidade Federal do Rio de Janeiro on December 10, 2015
To the Editor,
The Computer Journal.