Modern Numerical Nonlinear Optimization (Neculai Andrei) PDF
Modern Numerical Nonlinear Optimization (Neculai Andrei) PDF
Neculai Andrei
Modern Numerical
Nonlinear
Optimization
Springer Optimization and Its
Applications
Volume 195
Series Editors
Panos M. Pardalos , University of Florida
My T. Thai , University of Florida
Honorary Editor
Ding-Zhu Du, University of Texas at Dallas
Advisory Editors
Roman V. Belavkin, Middlesex University
John R. Birge, University of Chicago
Sergiy Butenko, Texas A&M University
Vipin Kumar, University of Minnesota
Anna Nagurney, University of Massachusetts Amherst
Jun Pei, Hefei University of Technology
Oleg Prokopyev, University of Pittsburgh
Steffen Rebennack, Karlsruhe Institute of Technology
Mauricio Resende, Amazon (United States)
Tamás Terlaky, Lehigh University
Van Vu, Yale University
Michael N. Vrahatis, University of Patras
Guoliang Xue, Arizona State University
Yinyu Ye, Stanford University
Aims and Scope
Optimization has continued to expand in all directions at an astonishing rate.
New algorithmic and theoretical techniques are continually developing and
the diffusion into other disciplines is proceeding at a rapid pace, with a spot
light on machine learning, artificial intelligence, and quantum computing.
Our knowledge of all aspects of the field has grown even more profound. At
the same time, one of the most striking trends in optimization is the con-
stantly increasing emphasis on the interdisciplinary nature of the field.
Optimization has been a basic tool in areas not limited to applied mathe-
matics, engineering, medicine, economics, computer science, operations
research, and other sciences.
The series Springer Optimization and Its Applications (SOIA) aims to
publish state-of-the-art expository works (monographs, contributed volumes,
textbooks, handbooks) that focus on theory, methods, and applications of
optimization. Topics covered include, but are not limited to, nonlinear
optimization, combinatorial optimization, continuous optimization, stochas-
tic optimization, Bayesian optimization, optimal control, discrete optimiza-
tion, multi-objective optimization, and more. New to the series portfolio
include Works at the intersection of optimization and machine learning,
artificial intelligence, and quantum computing.
Volumes from this series are indexed by Web of Science, zbMATH,
Mathematical Reviews, and SCOPUS.
Neculai Andrei
Modern Numerical
Nonlinear Optimization
Neculai Andrei
Academy of Romanian Scientists
Center for Advanced
Modeling and Optimization
Bucharest, Romania
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature
Switzerland AG 2022
This work is subject to copyright. All rights are solely and exclusively licensed by the Publisher,
whether the whole or part of the material is concerned, specifically the rights of translation,
reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any
other physical way, and transmission or information storage and retrieval, electronic adaptation,
computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this
publication does not imply, even in the absence of a specific statement, that such names are
exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors, and the editors are safe to assume that the advice and information in
this book are believed to be true and accurate at the date of publication. Neither the publisher nor
the authors or the editors give a warranty, expressed or implied, with respect to the material
contained herein or for any errors or omissions that may have been made. The publisher remains
neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This Springer imprint is published by the registered company Springer Nature Switzerland AG
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
the problem is constructed and solved, thus obtaining a new point in which
the original problem is again approximated by a quadratic, the procedure
being repeated in this way.
The unconstrained optimization methods are characterized by two
strategies: the line-search and the trust-region paradigms. The line-search
strategy computes the search direction dk in the current point xk, which must
be a descent direction, and a stepsize αk taken along the search direction to
obtain a new estimation of the minimum point, xkþ1 ¼ xk þ αkdk. On the other
hand, the trust-region methods define a region around the current iterate
within which we trust that the quadratic model is an adequate representation
of the minimizing function and then choose the step to be an approximate
minimizer of the model in this region. Therefore, the trust-region methods
choose the direction and the stepsize simultaneously. Obviously, if a step is
not acceptable, then the size of the region is reduced and a new minimizer is
computed. Both these strategies are operational in nonlinear optimization.
For the unconstrained optimization, the following methods are detailed: the
steepest descent including the relaxed steepest and the accelerated steepest;
the Newton method and its modified variants including the composite New-
ton; the conjugate gradient methods and their variants standard and hybrid;
the memory-less BFGS preconditioned; the quasi-Newton BFGS, DFP, and
SR1; the limited-memory BFGS; the inexact or truncated Newton; the trust-
region methods and the direct searching ones which use only the function
values.
The modern constrained nonlinear optimization methods considered in
this book are based on certain strategies, the most important ones being: the
penalty and the augmented Lagrangian, the sequential quadratic program-
ming based on quadratic programming, the generalized reduced gradient,
the interior-point, the filter methods, the combination of the interior point
with filters, and the direct search methods which do not use the derivative
information.
The book emphasizes and illustrates a number of reliable and robust
packages for solving large-scale unconstrained nonlinear optimization
problems (CG-DESCENT, DESCON, CGOPT, L-BFGS, and TN), as well
as constrained nonlinear optimization problems and applications (SPG,
L-BFGS-B, TNBC, SPENBAR, MINOS, SNOPT, NLPQLP, KNITRO,
CONOPT, filterSQP, and IPOPT). Details on their implementation by
presenting the advanced numerical linear algebra are a priority of our
work. These packages were tested to solve large-scale optimization problems
up to 250,000 variables.
A number of four appendices have been included to facilitate the under-
standing of the theoretical developments and of the numerical performances
of the optimization algorithms. Appendix A reviews the most important
mathematical concepts used throughout the chapters of the book, from
numerical linear algebra to calculus, topology, and convexity. In order to
see the behavior of the unconstrained and constrained optimization
algorithms, the book provides many examples and real applications
described in the next three appendices. Appendix B includes the collection
SMUNO with 16 small-scale continuous unconstrained optimization
Preface vii
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Mathematical Modeling: Linguistic Models Versus
Mathematical Models . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Mathematical Modeling and Computational Sciences . . . 4
1.3 The Modern Modeling Scheme for Optimization . . . . . . 5
1.4 Classification of Optimization Problems . . . . . . . . . . . . 8
1.5 Optimization Algorithms . . . . . . . . . . . . . . . . . . . . . . . 12
1.6 Collections of Applications for Numerical
Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7 Comparison of Algorithms . . . . . . . . . . . . . . . . . . . . . . 13
1.8 The Structure of the Book . . . . . . . . . . . . . . . . . . . . . . 14
2 Fundamentals on Unconstrained Optimization. Stepsize
Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 Fundamentals on the Convergence of the Line-Search
Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3 The General Algorithm for Unconstrained
Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4 Convergence of the Algorithm with Exact
Line-Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.5 Inexact Line-Search Methods . . . . . . . . . . . . . . . . . . . . 37
2.6 Convergence of the Algorithm with Inexact
Line-Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.7 Three Fortran Implementations of the Inexact
Line-Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.8 Numerical Studies: Stepsize Computation . . . . . . . . . . . 75
3 Steepest Descent Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.1 The Steepest Descent . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.2 The Relaxed Steepest Descent . . . . . . . . . . . . . . . . . . . 92
3.3 The Accelerated Steepest Descent . . . . . . . . . . . . . . . . . 98
3.4 Comments on the Acceleration Scheme . . . . . . . . . . . . 106
4 The Newton Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
4.1 The Newton Method for Solving Nonlinear Algebraic
Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
ix
x Contents
xv
xvi List of Algorithms
xix
xx List of Applications
xxi
xxii List of Figures
xxvii
xxviii List of Tables
Table 5.2 Performances of HS, FR, and PRP for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 217
Table 5.3 Performances of PRP+ and CD for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 217
Table 5.4 Performances of LS and DY for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 218
Table 5.5 Hybrid selection of βk based on the projection
concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Table 5.6 Performances of TAS, PRP-FR, and GN for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 224
Table 5.7 Performances of HS-DY, hDY, and LS-CD for solving
five applications from the MINPACK-2 collection . . . . . 224
Table 5.8 Performances of NDLSDY for solving five applications
from the MINPACK-2 collection . . . . . . . . . . . . . . . . . . . . . . . . 231
Table 5.9 Performances of CG-DESCENT and CG-DESCENTaw
for solving five applications from the MINPACK-
2 collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Table 5.10 Performances of DESCONa for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 244
Table 5.11 Performances of CONMIN for solving five applications
from the MINPACK-2 collection . . . . . . . . . . . . . . . . . . . . . . . . 251
Table 5.12 Performances of DK+w and DK+aw for solving five
applications from the MINPACK-2 collection . . . . . . . . . . 257
Table 5.13 Performances of CG-DESCENT and of
CG-DESCENTaw for solving five large-scale
applications from the MINPACK-2 collection . . . . . . . . . . 258
Table 5.14 Performances of DESCON and of DESCONa for
solving five large-scale applications from the
MINPACK-2 collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Table 5.15 Performances of DK+w and of DK+iw for solving five
large-scale applications from the MINPACK-
2 collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Table 6.1 Performances of L-BFGS for different values of m . . . . 293
Table 6.2 Performances of L-BFGS Elastic-plastic torsion.
n ¼ 40, 000. ε ¼ 106 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Table 6.3 Performances of L-BFGS Pressure distribution in a
journal bearing. n ¼ 40, 000. ε ¼ 106 . . . . . . . . . . . . . . . . . . 294
Table 6.4 Performance of L-BFGS. Optimal design with com-
posite materials. n ¼ 40, 000. ε ¼ 106 . . . . . . . . . . . . . . . . . 295
Table 6.5 Performances of L-BFGS. Steady-state combustion.
n ¼ 40, 000. ε ¼ 106 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Table 6.6 Performances of L-BFGS. Minimal surfaces
with Enneper boundary conditions. n ¼ 40, 000.
ε ¼ 106 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Table 6.7 Performances of L-BFGS. Inhomogeneous
superconductors: 1-D Ginzburg-Landau. n ¼ 1000.
ε ¼ 106 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
xxx List of Tables
and simple bounds on variables. The mathematical formulation of a general nonlinear optimization
problem is as follows:
minf ðxÞ,
x2ℝn
subject to ð1:1Þ
ei ðxÞ ¼ 0, i 2 E, cj ðxÞ 0, j 2 I, l x u,
where f : ℝn ! ℝ, E and I are the set of indices for equality and inequality constraints, respectively.
The equality constraints can be assembled as e(x) ¼ 0, where e:ℝn ! ℝm, and m ¼ card (E).
Similarly, the inequality constraints can be assembled as c(x) 0, where c : ℝn ! ℝp, and p ¼ card (I ).
The bounds l, u 2 ℝn satisfy the natural conditions 1 < li ui < þ 1 for all i ¼ 1, . . ., n. li is
called the lower bound of variable xi, while ui is called the upper bound of xi. If li ¼ ui, then the
variable xi is fixed and can be eliminated from the problem.
Suppose there is an algorithm or a collection of algorithms able to solve general nonlinear
optimization problems. For recognizing whether the algorithm has found the optimal solution of
the problem, one needs some mathematical tools. The most elegant and effective one is the so-called
optimality conditions. These are expressed as a nonlinear algebraic system of equations which may be
used both to design nonlinear optimization algorithms and to check whether the current set of
variables is indeed the solution of the problem. There are two types of optimality conditions. The
necessary optimality conditions are conditions that must be satisfied by any solution point. The
sufficient optimality conditions are those that, if satisfied at a certain point, guarantee that this point is
in fact a solution. Observe the nuances of these two concepts (see Chap. 11 of this book). The
necessary conditions are also called the first-order conditions because they involve the properties of
both the gradients of the objective function and the constraints and they also show how these
gradients are related to each other at a solution. Actually, these conditions are called KKT
(Karush-Kuhn-Tucker) conditions and are the foundation of many algorithms for nonlinear optimi-
zation. The second-order conditions, both necessary and sufficient, use the second derivatives of the
functions defining the problem and examine these derivatives to see whether this extra information
can resolve the issue of increase or decrease of the objective function values in undecided directions.
If the optimality conditions are not satisfied at a current point, then they must be used to see how
the current solution estimation can be improved. This is the subject of sensitivity analysis, which
shows the sensitivity of the current solution to changes in the structure and in the data of the model of
the optimization problem.
Normally, everyone is familiar with different representations of the surrounding world, the so-called
mental models, used in each moment of our existence. The decisions made in different situations are
not based on the real world, but on our mental images of the real world, on our mental images of the
relations among the components of the real world. The mental models represent our understanding of
the part of the creation that we want to know. Having in view that the support of our thinking is the
word, it follows that mental models are actually linguistic models. Therefore, in one way or another,
the human beings set forth their understanding of the real world as a linguistic description expressed
as a corpus of assertions (theorems) of the general form: if . . . then . . . .
The mental models have some advantages which recommend them to be used in our efforts to
understand the world. A mental model is flexible in the sense that it can take into consideration a
1.1 Mathematical Modeling: Linguistic Models Versus Mathematical Models 3
domain of information sensibly larger than the numerical one. Besides, a linguistic model may be
quickly adapted to some new situations and can be modified as soon as some new information is
available. The mental models are filters through which we can explain our experiences and evaluate
and select different actions. In a way, the greatest philosophical systems, political and economical
doctrines, theories of physics, or the literature itself are linguistic models.
However, the mental models have some disadvantages as well. They are not so easily understood
by the others. Their interpretation is dependent on their creator. Besides, the hypothesis used to
generate them is difficult to examine and even to accept. The ambiguities and contradictions
contained in these types of models can remain undetected, unexplained, and therefore unsolved. It
is quite natural to have difficulties in understanding the linguistic models suggested by the others.
Surprisingly, we are not so good at developing and understanding our own mental models or at using
them during the process of decision-making. Psychologists have shown that we are able to consider
only a very small number of factors in decision-making. In other words, the mental models we use in
decision-making are extremely simple. These are often imperfect because we frequently persist in
error when deducing the consequences from the suppositions on which they are based. These models
often express what we would like to happen and not what actually happens in reality.
But the greatest imperfection of the mental models lies in the fact that these intellectual
developments do not satisfy the criteria of completeness, minimality, and non-contradiction. It is
very likely that some very important assertions which change their significance may be omitted in a
mental (linguistic) model. Clearly, some new assertions may be introduced, which are in contradic-
tion with those we have previously considered in our reasoning. At the same time, in using the
linguistic models we are often faced with the very difficult problem of word rectification. This
problem dramatically limits the usage of linguistic models with different groups of people. Finally,
we must emphasize that during the linguistic models analysis and solving process, we are very likely
to be confronted with the circularity danger. The problem of the circularity of formal systems was
solved by G€odel (1931), who showed that expressing knowledge into a formal system and into logical
formal systems like those of Russel or of Zermelo-Fraenkel-Newmann is an illusion. There are
relatively simple assertions (theorems) which are impossible to be solved (decidable) in this kind of
formal systems.
A mathematical model is a representation in mathematical symbols of the relations between the
variables and the parameters belonging to the part of the creation we are interested in. The relations
describing the mathematical model often include variables and their derivatives, thus expressing the
local character of the model and that of predictability as well. The mathematical models have a
number of advantages versus the linguistic models. The most important is that mathematical models
do not have any imperfections while the linguistic models do have. They are explicit in the sense that
the hypothesis and the assumptions used in their development are public and subject to any criticism.
Besides, the (logical) consequences after solving them are very well justified mathematically. Finally,
the mathematical models are more comprehensive, being able to simultaneously consider an appre-
ciable multitude of factors. But the most important characteristic of mathematical models is that they
are written on the basis of the conservation laws. In this respect the Noether theorem shows that the
conservation laws are direct consequences of different symmetries (Andrei, 2008h). For example, the
conservation of energy is a consequence of the temporal symmetry, while the conservation of
momentum is a consequence of the symmetry of space. The entire physical world is depicted as
being governed according to mathematical laws.
4 1 Introduction
The theory and practice of mathematical modeling is based on computational sciences. Broadly,
computational sciences consist in the usage of computer systems for analyzing and solving scientific
problems. There is a sharp distinction between computer science and computational science. Com-
puter science focuses on the building and the analysis of computers as well as on computability. On
the other side, computational sciences emphasize the development of methods, techniques, and
algorithms for solving mathematical models and center on the convergence and complexity of
algorithms.
The purpose of computational sciences is to understand the evolution of a real-world system by
analyzing and solving the corresponding mathematical models associated to it and by using high
performance computers. By making use of mathematical symbols as well as of mathematical
accuracy and rigor, mathematical modeling has a central place in computational sciences. Mathemat-
ical modeling leads us to the maturation of the domain the mathematical model belongs to, and also to
the generation and the development of new mathematical methods and techniques able to solve new
problems. The place of the mathematical model within the general scheme for modeling and solving a
problem is shown in Fig. 1.1.
Observe that a mathematical model is synthesized from the real world, thus arriving into an
abstract world where mathematical rigor is present through mathematical concepts. The model is
solved by using mathematical theories irrespective of the physical significance of the elements of the
problem. The interpretation of the solution may lead us to some modifications of the model, which
again determines our addressing to the real world.
Notice that in the abstract world of the modeler we operate with concepts belonging to the
mathematical domain which the modeling process refers to. This is the question of the phenomenol-
ogy and the conservation laws that characterize the domain of interest. At the same time, certain
concepts from the theory of languages, of translators, and of compilers are used in order to develop
informatics technologies able to elaborate, update, and maintain the mathematical models.
On the other hand, in the abstract world of algorithms, developers operate with advanced
mathematical concepts in order to generate optimization algorithms and to study their convergence
and complexity. Additionally, some advanced languages like Fortran, C++, or Matlab are being used
for implementing algorithms in computer programs.
Therefore, we are faced with the following dilemma. Which is the better: to consider an approxi-
mate (simplified) mathematical model of the problem and then try to get an exact solution of it as
much as possible or to use a mathematical model as accurately as possible and then determine an
approximate solution of it? The practical experience recommends that the second alternative gives
better results. Indeed, the idea is that a mathematical model which follows to be optimized should be
developed by keeping a balance between the aims of improved accuracy in the model which involves
added complexity in its formulation and the increased ease of the optimization. This might be
achieved by optimizing successive more complicated versions of the model. In this way, the effects
of each refinement of the model on the optimization process can be monitored. Thus the difficulty
which the optimization algorithms have to face can be discovered much more quickly than if no
optimization were applied until the model was complete. In other words, it is better to start with a
simplified model and use it in an iterative scheme in which the model is alternatively optimized and
refined until an acceptable version of it is obtained both from its mathematical representation of
reality and its optimization viewpoints.
Formulating and developing a mathematical model of a given reality is one of the finest creative
intellectual activities. A short glimpse at the optimization domain shows a substantial progress of the
development of algorithms and computer codes to solve real large-scale nonlinear optimization
applications. From the application viewpoint, one can see that a large part of the time required for
developing, improving, and maintaining an optimization model is spent with data preparation and
transformation, as well as with report preparation and documentation. A nonlinear optimization
model involves time and intellectual effort to organize the data and write computer programs that
transform the data into a form required by the optimization codes. A typical example is the MPS (IBM
LP product) representation of a linear programming problem. In nonlinear optimization, the situation
is more complex because the user must prepare the functions defining the problem and their
derivatives in a form admitted by a particular optimizer. Of course, the user must also transmit to
the optimizer the simple bounds on variables, the initial point, and some other parameters associated
to a particular optimizer. Nonlinear optimization problems may be transmitted to the optimization
codes by using the so-called SIF – Standard Input Format (Bongartz, Conn, Gould, & Toint, 1995). It
is worth mentioning that such an approach of using an optimizer is only accessible to the specialist
who wrote the optimizer and not to the wide audience of analysts in charge of some projects involving
the optimizer. It should be emphasized that the optimizers have very different (and difficult)
communication facilities subject to transmitting the functions of the problem and their derivatives,
simple bounds on variables, the initial point, some other parameters, optimization conditions, etc.
Currently, the advanced modern industrial usage of optimization algorithms involves the algebraic
oriented languages that offer advanced capabilities for expressing an optimization model in a form
immediately accepted by an optimizer. The most important modeling technologies with optimization
facilities are GAMS and AMPL (see Table 1.1 below).
In the last two decades significant research activities have taken place in the area of local and
global optimization, including many theoretical, computational, and software contributions. The
access to this advanced optimization software needs more and more sophisticated modeling tools.
Algebraic oriented optimization modeling languages represent an important class of tools that
facilitate the communication of optimization models towards decision-making systems based on
the optimization paradigm. In a wider context, the algebraic oriented modeling tools evolve towards
6 1 Introduction
fully integrated modeling and optimization management systems with access to databases,
spreadsheets, and graphical user interfaces.
As already known, at the fundamentals of every mathematical model lie the conservation laws
which are active in the domain to which the mathematical model belongs. Therefore, knowing these
conservation laws is essential, and their usage leads to models that satisfy the adequacy to real
principle. However, besides the conservation laws, additional empirical knowledge, principles,
different rules, or previous experience need to be considered in order to develop a mathematical
model of a given reality. In this chapter, certain aspects concerning the mathematical modeling
1.3 The Modern Modeling Scheme for Optimization 7
process in the context of mathematical modeling technologies based on the algebraic oriented
languages are discussed.
Suppose that we have written the optimization mathematical model, i.e., we have specified the
objective function, the constraints, and the simple bounds on variables. The problem now is how to
transmit this model to the solver (optimizer) in order to get a solution. Since we consider mathemati-
cal models with thousands of variables and constraints, this problem appears to be quite challenging.
An elegant and very efficient solution is to use algebraic oriented languages for achieving an external
description of the model which can automatically be translated into the internal description of it by
means of a translator associated to the language used in this respect. For example, in case of linear
programming problems, the internal representation of the model is given by the MPS form. Therefore,
the translator associated to an algebraic oriented language generates the MPS form of the model from
its external description. In case of nonlinear optimization problems, the mechanism is more complex,
but mainly the same.
A deep analysis of the modeling and solving process (see Fig. 1.2) shows that mathematical
modeling involves more effort and time for data analysis, verification, and documentation, as well as
for updating and improving different variants of the model. The difficulties of the data management
for mathematical modeling are coming from the fact that nowadays we do not have a clear
methodology for mathematical modeling expressed as an algorithm or as a group of algorithms to
be used in a general context. However, understanding the linguistic representation of the process that
we need to represent through a mathematical model is crucial.
The development of a mathematical model is a complex process consisting in a mapping between
the objects (together with the relations among them) from the real world and the symbolic and
mathematical objects. This process involves both a very good knowledge of the reality we want to
represent in mathematical terms and a multitude of methods and techniques for mathematical
modeling. The correctness of a model is usually established after its solving. As a result of intensive
computational experiments, it is often necessary to reformulate the model by introducing some new
algebraic or differential equations (which were initially ignored) and also the corresponding data. The
mathematical modeling process is closely linked to the solving process of the model, supporting each
other. These two processes interact in order to build up a mathematical object placed in the
perspective of the infinite similarity with reality.
8 1 Introduction
Let us now try to detail the modeling process. At the very beginning, for the process we want to
represent into mathematical terms we have a linguistic description, actually a text expressed in the
natural language which describes the process. It should be pointed out that this linguistic description
is a scientific text, not a literary one. Obviously, this description includes references to the important
conservation laws which are active in the process domain under consideration. As a result of an
abstracting creation activity from this linguistic description and by using the conservation laws, we
get an algebraic-differential representation of the process, a mathematical model. This activity
mainly consists in identifying the variables and parameters of the process, together with the algebraic
and differential relations among these entities by using principles, empirical knowledge, different
rules, and some other additional knowledge of the process. Once having this algebraic-differential
representation of the process, the next step is to develop an internal representation of it, a represen-
tation directly admitted by any professional solver, in our case an optimizer. This is done through the
external representation of the model by making use of the so-called algebraic oriented mathematical
modeling languages. Therefore, the mathematical model has three forms of representation: an
algebraic-differential one with mathematical symbols, an external one by using an algebraic oriented
mathematical modeling language (like GAMS, AMPL, ALLO, etc.), and an internal representation
which is mainly an informatics description including different files and data bases directly admitted
by any solver (optimizer). Figure 1.2 presents the modern modeling scheme for nonlinear optimiza-
tion based on algebraic oriented languages.
Algebraic modeling languages represent a problem in a purely declarative way. Most of them
include some computational facilities to manipulate the data as well as certain control structures.
Many optimization models can be well represented declaratively in a very concise way, which also
favors the insight of the model. Besides, a mathematical model is stated in a declarative way by using
mathematical equalities and inequalities. This gives a clear documentation of the model which can be
parsed and interpreted by a compiler or a translator.
The algebraic languages are more declarative rather than imperative. A declarative language
emphasizes “what is being computed” more than “how it is being computed.” Furthermore, the
reasons for which we use a declarative presentation of models are conciseness, insight, and docu-
mentation. The most important algebraic oriented languages used for solving nonlinear optimization
problems are presented in Table 1.1.
As already mentioned, the algebraic oriented modeling languages use essentially declarative
statements as opposed to programming languages (Fortran, C++, etc.) in which the use of procedural
statements dominates over the use of the declarative ones. For instance, the few procedural statements
used in algebraic oriented languages are read/write data and solve commands. In order to
deal with more complicated nonlinear optimization models, these languages include if-then-
else, for, while commands. Such commands enable the modeler to write certain solution
algorithms directly in the modeling language (Bisschop, & Meeraus, 1982; Fourer, 1983; Hürlimann,
1999; Kallrath, & Wilson, 1997; Conejo, Castillo, Minguez, & Garcı́a-Bertrand, 2006; Castillo,
Conejo, Pedregal, Garcı́a, & Alguacil, 2001).
Plenty of problems of nonlinear optimization are known. The general nonlinear optimization
problems can be classified according to the presence or absence of the constraints (unconstrained
or constrained), the number of variables (small- or large-scale), the smoothness of the functions
defining the problem (differentiable or nondifferentiable), the type of variables (integer or real), the
knowledge of functions and parameters (deterministic or stochastic), the type of functions (linear,
1.4 Classification of Optimization Problems 9
quadratic, nonlinear), the convexity of functions (convex or nonconvex), etc. Observe that there are a
lot of optimization problems and consequently specialized optimization algorithms and software have
been developed. In this work we will consider only the continuous nonlinear optimization.
problems, the variables are restricted to take only integer values, that is, xi 2 ℤ, where ℤ is the set of
integers or binary values which have the form xi 2 {0, 1}. The problems with integer variables are
called integer programming. If some of the variables in the problem are not restricted to be integer or
binary variables, then they are called mixed integer programming. The characteristic of discrete
optimization problems is that the unknown x is drawn from a finite, but often very large, set. In other
words, the feasible set for the discrete optimization is a finite set. Normally, the continuous optimi-
zation problems are easier to solve because the smoothness of the functions defining the problem
makes it possible to use the information on the minimizing function and constraints at a particular
current point x to obtain information about these functions at all points in a vicinity of the current
point x. In discrete optimization problems the situation is completely different. The behavior of the
minimizing function and of the constraints may change significantly when moving from a feasible
point to another one, even if these feasible points are close enough. Discrete optimization problems
are not considered in this book. The interested reader may consult the texts by Papadimitriou and
Steiglitz (1982), Nemhauser and Wolsey (1988), and Wolsey (1998).
Convex Programming
The concept of convexity is crucial in optimization, and many practical optimization problems have
this property. The optimization problems with this property always have a very nice theory behind
them and are easier to solve. The term “convex” can be associated both with the sets and the
functions. A set C ⊂ ℝn is a convex set if a straight line segment connecting any two points in
C lies entirely inside C. In other words, C is a convex set if for any two points x, y 2 C, it follows that
αx þ (1 α)y 2 C, for all α 2 [0, 1]. A function f : C ! ℝ, where C ⊂ ℝn, is a convex function if its
domain C is a convex set and for any two points x, y 2 C, the following property holds:
f ðαx þ ð1 αÞyÞ αf ðxÞ þ ð1 αÞf ðyÞ, for all α 2 ½0, 1: ð1:2Þ
Examples of convex sets include polyhedrons defined by a set of linear equalities and inequalities,
that is: {x 2 ℝn : Ax ¼ b, Dx d}, where A and D are matrices of appropriate dimensions and b and
d are vectors, is a convex set. The unit ball {x 2 ℝn : kxk2 1} is a convex set. Examples of convex
functions are the linear functions f(x) ¼ cTx þ d, for any constant vector c and scalar d. Also the
quadratic functions f(x) ¼ xTHx, where H is a symmetric positive semidefinite matrix, are a convex
function.
1.4 Classification of Optimization Problems 11
A function f is a strictly convex function if the inequality (1.2) is strict whenever x 6¼ y and
α 2 (0, 1). A function f is concave if f is convex.
Convex programming – a branch of nonlinear optimization – defines a special case of the general
constrained optimization (1.1) in which the objective function is a convex function, the equality
constraints ei(x) ¼ 0, i 2 E, are all linear functions, and the inequality constraints functions cj(x) 0,
j 2 I, are all concave.
As it has been mentioned, if the objective function of the problem (1.1) and the feasible domain
defined by the constraints of (1.1) are both convex, then any local solution of the problem is also a
global solution.
A classical, comprehensive text on convex analysis is Rockafellar’s book (1970).
and the sparsity of the KKT conditions. It is well known that an important component of the vast
majority of optimization algorithms is to solve an algebraic system of linear equations. Advanced
techniques for solving linear systems are based on sparse matrix techniques.
By optimization we understand the design and analysis of algorithms (convergence and complexity)
for solving optimization problems and applications. All the optimization algorithms are iterative. For
solving an optimization problem, they start the computation from an initial point and generate a
hopefully convergent sequence of improved estimates of the solution until a specified termination
criterion has been satisfied. The optimization algorithms are differentiated by the strategy used to
move from a given iteration to the next one. These strategies use the values of the objective function
and of constraints and possibly the values of the first and of the second derivatives of these functions.
Some algorithms are based only on the local information of the functions at the current point, while
others accumulate information gathered from the previous iterations.
Good optimization algorithms should fulfill the following requirements: efficiency (they should
not require excessive computing time and storage), robustness (they should solve a wide variety of
optimization problems from different starting points), and accuracy (they should be able to generate a
solution with a specified precision without being sensitive to errors in data or to arithmetic rounding
errors). The most efficient and robust nonlinear optimization algorithms use combinations of some
techniques like the active-set methods, or the interior point methods with globalization strategies and
refining mechanisms, all of them in a frame of the advanced computational linear algebra.
The theory of iterative algorithms involves three aspects. The first one is the creation of the
algorithms themselves. The second aspect is the so-called global convergence analysis that addresses
the question of whether the algorithm, when initialized far away from the solution point, will
eventually converge to it. The third aspect is the local convergence analysis, which refers to the
rate at which the generated sequence of points {xk} converges to the solution. Two aspects of the
convergence-rate theory are important. The first is known as complexity analysis, which focuses on
how fast the algorithms converge to the solution. They differentiate themselves as polynomial-time
algorithms and non-polynomial-time algorithms. The second aspect includes a detailed analysis of
how fast the algorithms converge in their final stages.
Advanced optimization algorithms include some ingredients which make them reliable and
increase their numerical performances. The most important ingredients are as follows: automatic
differentiation (Griewank, 2000), finite-difference derivative estimates (Gill, Murray, & Wright,
1981), inertia correcting and singularity (Fletcher, 1987), sparse technology for solving linear
algebraic system of equations, quasi-Newton approximation of Hessian, stepsize computation by
line-search, tests for stopping the iterations, etc.
In order to see the numerical performances of the nonlinear optimization algorithm described in this
book, a number of four collections of unconstrained and constrained optimization test problems and
applications are used. The unconstrained optimization algorithms are tested on the collection
SMUNO which includes a number of 16 applications with the maximum number of 10 variables
(see Appendix B). Also, the collection UOP that includes 80 large-scale unconstrained optimization
1.7 Comparison of Algorithms 13
problems in generalized or extended form, presented in Andrei (2013e, 2020a), is used to see the
performances of unconstrained optimization algorithms. For each test function from this collection,
we have considered 10 numerical experiments with the number of variables increasing as n ¼ 1000,
2000, . . ., 10000. Therefore, a set of 800 unconstrained optimization problems are solved in our
numerical experiments with unconstrained optimization algorithms. The constrained optimization
algorithms use the collection LACOP. This collection includes a number of 18 real constrained
nonlinear optimization applications (see Appendix C). Additionally, in Appendix D, we presented six
unconstrained optimization applications from the collection MINPACK-2 (Averick, Carter, & Moré,
1991; Averick, Carter, Moré, & Xue, 1992), each of them with 40,000 variables, or 250,000 variables,
which are used in our numerical experiments.
Plenty of algorithms for unconstrained and constrained optimization are shown in this book. Some of
them accumulate information gathered at previous iterations, while others use only the local infor-
mation available at the current iteration. As it has already been mentioned, good algorithms must have
the following three properties: efficiency, robustness, and accuracy. To be reliable and to have a
guarantee that they find a solution, some properties and their convergence results have to be
discussed. However, this is not enough. The irony is that in optimization, algorithms for which
there are very well-established theoretical properties (descent, convergence, and complexity) prove to
have modest numerical performances. Having in view that the final test of a theory is its capacity to
solve the problems and the applications which originated it, our efforts have been directed to see the
numerical performances of the algorithms for solving the optimization problems and applications
from the abovementioned collections. In this book the algorithms have been compared in the
following environment.
Remark 1.1 All algorithms have been coded in double precision Fortran, compiled with f77 (default
compiler settings) and run on an Intel Pentium 4, 1.8 GHz workstation. For each problem from the
UOP collection, 10 numerical experiments with an increasing number of variables as n ¼ 1000, 2000,
. . ., 10000 have been performed. Hence, 800 problems have been solved in this set of numerical
experiments. Some optimization algorithms were tested for solving the applications from the
MINPACK-2 collection with 40,000 or 250,000 variables.
The algorithms compared in these numerical experiments find local solutions. Therefore, the
comparisons of the algorithms are given in the following context. Let f ALG1
i and f ALG2
i be the optimal
value found by ALG1 and ALG2 for problem i ¼ 1, . . ., 800, respectively. We say that, in the
particular problem i, the performance of ALG1 was better than the performance of ALG2 if:
ALG1
f f ALG2 < 103 ð1:3Þ
i i
and if the number of iterations (#iter), or the number of function-gradient evaluations (#fg), or cpu the
CPU time of ALG1 was less than the number of iterations, or the number of function-gradient
evaluations, or the CPU time corresponding to ALG2, respectively.
The iterations are stopped if the inequality kgkk1 106 is satisfied, where k.k1 is the maximum
absolute component of a vector. The maximum number of iterations was limited to 2000.
To compare the performances of algorithms, the Dolan and Moré (2002) performance profiles are
used. For np problems and ns solvers, the performance profile P : ℝ ! [0, 1] is defined as follows. Let
P and S be the set of problems and the set of solvers, respectively. For each problem p 2 P and for
14 1 Introduction
each solver s 2 S, define tp,s¼ computing time (similarly for the number of iterations or the number of
function and its gradient evaluations) required to solve problem p by solver s. The idea is to compare
the performance of solver s on problem p with the best performance by any solver on this problem.
Therefore, the performance ratio is defined by:
tp,s
r p,s ¼ : ð1:4Þ
min s2S tp,s
for τ > 0, where for any set A, size(A) stands for the number of elements in A. The performance profile
Ps : ℝ ! [0, 1] for a solver s is a nondecreasing, piecewise constant function, continuous from the
right at each breakpoint. Ps(τ) is the probability for solver s 2 S so that the performance ratio rp, s is
within a factor τ > 0 of the best possible ratio. The function Ps is the cumulative distribution function
for the performance ratio. Observe that 1 Ps(τ) is the fraction of problems that the solver cannot
solve within a factor τ of the best solver. In our numerical experiments, in each figure, we used
np ¼ 800 and τ ¼ 16.
The performance profile plot of solvers may be computed as follows. Suppose that two solvers
(ns ¼ 2) have to be compared subject to a given metric (which can be the number of iterations, the
number of function and its gradient evaluations or the CPU computing time) for solving np problems.
Consider an integer value for parameter τ. Firstly, out of np problems, only the problems for which the
criterion (1.3) is satisfied are retained. Let np be the number of problems satisfying the criterion (1.3).
For each solver and for each problem, compute the performance ratio rp,s, for p ¼ 1, . . . , np and s ¼ 1,
2, corresponding to the metric selected. For each solver s ¼ 1, 2 and for i ¼ 1, . . ., τ, compute the
performance profile Ps(τ).
The percentage of problems for which an algorithm is the best is given on the left side of the plot.
On the other hand, the right side of the plot gives the percentage of the problems that are successfully
solved. In other words, for a given algorithm, the plot for τ ¼ 1, represents the fraction of problems for
which the algorithm was the most efficient over all algorithms. The plot for τ ¼ 1 represents the
fraction of problems solved by the algorithm irrespective of the required effort. Therefore, the plot for
τ ¼ 1 is associated to the efficiency of the algorithm, while the plot for τ ¼ 1 is associated to the
robustness of the algorithm. ♦
This book has two parts. The first one includes Chaps. 2, 3, 4, 5, 6, 7, 8, and 9 that cover the theory and
practice of the unconstrained optimization. The second part contains Chaps. 12, 13, 14, 15, 16, 17, 18,
19, and 20 that are dedicated to the constrained optimization. Chapters 10 and 11 present an overview
on the constrained nonlinear optimization methods and the optimality conditions for nonlinear
optimization, respectively. Besides, the book has four appendices with a mathematical review
containing the main mathematical concepts and results used along the chapters, as well as three
collections with unconstrained and constrained applications on nonlinear optimization with which the
optimization algorithms presented in this book were tested.
We emphasize that the book presents the theoretical developments and the computational
performances of the modern unconstrained and constrained optimization algorithms for solving
1.8 The Structure of the Book 15
large-scale optimization problems and applications. Some other algorithms have not been considered
in this book: the conic model and colinear scaling (Davidon, 1980), tensor methods for solving system
of nonlinear equations (Schnabel, & Frank, 1984) and for unconstrained optimization (Schnabel, &
Chow, 1991), gradient flow methods for unconstrained optimization (Brown, & Bartholomew-Biggs,
1987, 1989), methods based on KKT optimality conditions (Abadie, & Guerrero, 1984), Frank-Wolfe
linearization (Frank, & Wolfe, 1956), successive linear programming (Griffith, & Stewart, 1961), the
convex simplex (Zangwill, 1967), feasible direction methods (Zoutendijk, 1960), the gradient
projection method (Rosen, 1960, 1961), the reduced gradient method (Wolfe, 1967), the generalized
reduced gradient (Abadie, 1978, 1979), generalized elimination methods, ellipsoid methods for
constrained optimization (Ecker, & Kupferschmid, 1983, 1985), etc.
Every chapter includes the description of a particular method for continuous nonlinear optimiza-
tion, the most important theoretical results on convergence, comparisons with other methods,
comments on the linear algebra used in implementations in computer programs, as well as the
numerical performances of the representative algorithms for solving optimization problems and
applications from appendices. The algorithms are tested for solving large-scale optimization
problems from the UOP collection up to 10,000 variables, as well as optimization applications
from the LACOP and MINPACK-2 collections with 40,000 or 250,000 variables. Finally, every
chapter terminates with Notes and References where some details, references, perspectives, and
historical comments are given.
As we know, for minimizing a sufficiently smooth function, at every iteration xk an optimization
algorithm based on the line-search strategy computes the search direction dk in the current point xk,
which must be a descent one, and a stepsize αk taken along the search direction to obtain a new
estimation of the minimum point, xkþ1 ¼ xk þ αkdk. The purpose of Chap. 2 is to present the most
important methods as well as their convergence properties for computing the stepsize αk, a crucial
aspect in any unconstrained optimization algorithm. Chapter 3 presents the steepest descent algorithm
for unconstrained optimization as well as its relaxed and accelerated variants. In Chap. 4 the Newton
method is detailed for solving both the nonlinear algebraic system of equations and the function
minimization. It is proved that if well initialized, the Newton method is quadratic convergent to a
minimum point of the minimizing function. Some modifications of the Newton method and the
composite Newton method are also shown. Chapter 5 is dedicated to the conjugate gradient methods
for unconstrained optimization. These methods are very well suited for solving large-scale uncon-
strained optimization problems and applications. The linear conjugate gradient methods are first
discussed, followed by the nonlinear conjugate gradient methods for unconstrained optimization,
insisting on standard, hybrid, modifications of the standard conjugate gradient schemes, and
memoryless BFGS preconditioned. The chapter illustrates the performances of the modern conjugate
gradient algorithms CG-DESCENT (Hager, & Zhang, 2005, 2006a), DESCON (Andrei, 2013c), and
CGOPT/DK (Dai, & Kou, 2013) for solving five applications from MINPACK2 collection, each of
them up to 250,000 variables. In Chap. 6 the quasi-Newton methods DFP, BFGS, and SR1 as well as
the limited memory BFGS method (L-BFGS) are discussed. Some modifications of the BFGS method
with one or two parameters are also presented. The new quasi-Newton method memoryless SR1 with
generalized secant equation is introduced and tested for solving five applications from the
MINPACK2 collection of applications, each of them up to 250,000 variables. Finally, the
performances of L-BFGS (m ¼ 5) for solving five applications from the MINPACK-2 collection,
each of them with 250,000 variables, illustrate that L-BFGS (m ¼ 5) is faster versus the modern
conjugate gradient algorithms CG-DESCENT, DESCON, and DK. The inexact or truncated Newton
method (TN) (Nash, 1984b, 1985) is considered in Chap. 7. Intensive numerical experiments show
that subject to the number of iterations and to the function calls TN is better than L-BFGS, but subject
to the CPU computing time metric, both L-BFGS and TN have similar performances, L-BFGS being
16 1 Introduction
slightly faster. Comparing the performances of TN subject to the CPU computing time versus the
modern conjugate gradient algorithms CG-DESCENT and DESCON, we see that the conjugate
gradient algorithms are top performers. Chapter 8 introduces another paradigm for solving uncon-
strained optimization problems – the trust-region method. The line-search methods presented in the
previous chapters generate a descent search direction d and then determine a suitable stepsize α along
this direction, hoping that the function values will reduce. On the other hand, the trust-region methods
define a region around the current iterate within which they trust the quadratic model to be an
adequate representation of the minimizing function and then choose the step to be the approximate
minimizer of the model in this region. Therefore, trust-region methods choose the direction and the
stepsize simultaneously. Of course, if a step is not acceptable, they reduce the size of the region and
find a new minimizer. For solving the applications from the MINPACK2 collection with 40,000
variables, we used the trust-region method implemented in TRON (Lin, & Moré, 1999) without
simple bounds. For solving these five applications, when comparing the performances of TRON
versus TN, we see that TN is top performer. In Chap. 9 the direct methods known as the zero-th order
methods for unconstrained optimization are described. These methods consider the case in which the
derivatives of the minimizing function are unavailable, impractical to obtain, or unreliable. From the
multitude of derivative-free optimization algorithms, we selected in this chapter only the algorithm of
Nelder-Mead (NELMED) (Nelder, & Mead, 1965), algorithm of Powell (NEWUOA) (Powell, 2003,
2004, 2006), and of Andrei (DEEPS) (Andrei, 2021a). The numerical experiments with these
algorithms for solving 16 real unconstrained optimization applications, included in the collection
SMUNO from Appendix B, show that NEWUOA is way more efficient than NELMED and than
DEEPS. In Chap. 10 an overview on constrained nonlinear optimization methods is given. Some
aspects concerning convergence tests, infeasible points, approximate sub-problems – local models
and their solving, globalization strategy – convergence from remote starting points, and refining the
local model are also discussed. It is shown that the most efficient and robust nonlinear optimization
algorithms use combinations of the active-set methods (local models based on sequential linear or
quadratic programming), or interior point methods with globalization strategies (augmented Lagrang-
ian, penalty and merit function, or filters methods) and refining mechanisms (line-search or trust-
region methods), all of them in a frame where advanced computational linear algebra techniques are
used. Chapter 11 is dedicated to the presentation of the optimality conditions for nonlinear optimiza-
tion. The key to understanding the nonlinear optimization are the Karush-Kuhn-Tucker (KKT)
optimality conditions. This is a major result which identifies an algebraic system of equalities and
inequalities that corresponds to the solution of any nonlinear optimization problem. For problems
with inequality constraints, the KKT approach generalizes the method of Lagrange multipliers, which
allows only equality constraints. For the development of the KKT optimality conditions, three
possible approaches can be used. One is based on the separation and support theorems from the
convex set theory. Another one uses the penalty functions while the third one comes from the theory
of Lagrange multipliers. Each of these approaches has its own virtues and provides its own insights
into the KKT Theorem. In this book we consider the optimality conditions for the continuous
nonlinear optimization (the mathematical programming), using the formalism of Lagrange. The
simple bounded optimization is the subject of Chap. 12. From the multitude of algorithms dedicated
to this problem, only the following are presented: the spectral projected gradient method (SPG) by
Birgin, Martı́nez, and Raydan (2000, 2001); the limited memory BFGS algorithm with gradient
projection (L-BFGS-B) by Byrd, Lu, Nocedal, and Zhu (1994, 1995); and the truncated Newton
with simple bounds (TNBC) by Nash (1984a, 1984b, 1985). Intensive numerical experiments showed
that L-BFGS-B (m ¼ 5) is more robust than SPG and than TNBC. Both SPG and L-BFGS-B are able
to solve large-scale simple bound optimization problems, L-BFGS-B being slightly faster. TNBC is
very sensitive to the interval in which the bounds on variable are defined. In Chap. 13, one of the most
1.8 The Structure of the Book 17
approximately minimize a quadratic model of the barrier problem (Byrd, Hribar, & Nocedal, 1999).
In the version INTERIOR-DIRECT, the algorithm attempts to compute a new iterate by solving the
primal-dual KKT system using direct linear algebra (Waltz, Morales, Nocedal, & Orban, 2003). Four
variants of KNITRO were tested for solving the applications from the LACOP collection. It seems
that KNITRO which automatically chooses the algorithm based on the problem characteristics is the
best. The filter methods developed by Fletcher and Leyffer (2002) as a new technique for the
globalization of the nonlinear optimization algorithms are described in Chap. 18. The filter methods
can use sequential linear programming or sequential quadratic programming in the context of trust-
region methods. Chapter 19 presents an implementation of an interior point filter line-search
algorithm called IPOPT, for large-scale nonlinear programming, proposed by Wächter and Biegler
(2005a, 2005b). The idea of this algorithm is to combine the primal-dual interior point algorithms
with filter line-search. For solving 15 large-scale applications from the LACOP collection, IPOPT
(Table 19.2) needs 42.17 seconds. However, KNITRO (option 0) (Table 17.9) needs 17.81 seconds.
Chapter 20 includes two direct methods for solving constrained nonlinear optimization problems. The
first one is COBYLA by Powell (1993), while the second one is DFL by Liuzzi, Lucidi, and
Sciandrone (2010). At every iteration of COBYLA, the objective function and constraints are linearly
approximated by interpolation in vertices of a simplex structure. The corresponding linear program-
ming problem completed with a constraint of trust-region type is solved, thus obtaining a new
approximation of the solution of the original problem. DFL is an extension of the successive quadratic
penalty method which does not involve the derivative information. The idea of this method is to
approximately minimize a sequence of merit functions in which the penalization of the violation of
the constraints is progressively enlarged.
Our strategy for presenting the state-of-the-art of optimization is to describe the most important
modern methods for the unconstrained optimization (the steepest descent, the Newton method, the
conjugate gradient, the quasi-Newton methods, the inexact Newton and the trust-region methods) and
also for the constrained optimization (the quadratic programming, the penalty and the augmented
Lagrangian methods, the sequential quadratic programming, the interior point, the filter methods) and
to illustrate the computational performances of the most representative algorithms corresponding to
the considered methods. Besides, the linear algebra procedures and techniques implementing the
optimization algorithms are highly emphasized. As a final remark, the book deals with the basic
aspects of the optimization theory and with the numerical performances of the optimization
algorithms for solving large-scale optimization problems and real-applications.
The conclusion of the theoretical developments and of the intensive numerical studies is that there
is no algorithm able to solve any nonlinear unconstrained or constrained optimization problem or
application. The most modern, powerful nonlinear optimization algorithms presented and tested in
this book combine and integrate different optimization techniques (the modified augmented Lagrang-
ian, the sequential linear or quadratic programming, the interior point methods with filter line-search
or trust-region) and include advanced computational linear algebra procedures.
Gr€otschel (2012)). The mathematical theory of optimization is found in many books: Luenberger
(1973, 1984), Bazaraa, Sherali, and Shetty (1993), Bertsekas (1999), Boyd and Vandenberghe (2004),
Nocedal and Wright (2006), Sun and Yuan (2006), Bartholomew-Biggs (2008), Luenberger and Ye
(2016), and Andrei (2013e, 2015a), to cite only some of them. Now, the professional optimization
algorithms work under the assistance of certain modern systems of modeling and optimization like
GAMS, AMPL, TOMLAB, ALLO, etc.
Fundamentals on Unconstrained
Optimization. Stepsize Computation 2
is considered, where f : ℝn ! ℝ is a real valued function f of n variables, smooth enough on ℝn. The
interest is to find a local minimizer of this function, that is a point x, so that
f ðx Þ f ðxÞ for all x near x : ð2:2Þ
If f(x) < f(x) for all x near x, then x is called strict local minimizer, or simple minimizer of
function f. Often, f is referred to as the objective function, while f(x) as the minimum or the minimum
value.
We emphasize that the local minimization problem is different from the global minimization
problem, where a global minimizer, i.e., a point x so that
f ðx Þ f ðxÞ for all x 2 ℝn ð2:3Þ
is sought. This book deals with only the local minimization problems.
The function f in (2.1) may have any algebraic expression, and we suppose that it is twice
continuously differentiable on ℝn. Let us introduce ∇f(x) as the gradient of f and ∇2f(x) its Hessian.
Often, the gradient is denoted as g(x) ¼ ∇ f(x).
2 3 2 2 2 3
∂f ðxÞ ∂ f ðx Þ ∂ f ðx Þ
6 ∂x2 ⋯
6 ∂x1 7 6 ∂x1 ∂xn 77
6 7 6 1
7
gðxÞ ∇f ðxÞ ¼ 66 ⋮ 7
7 , ∇ 2
f ð x Þ ¼ 6 ⋮ ⋱ ⋮ 7:
4 ∂f ðxÞ 5 6 7
4 ∂ 2 f ðx Þ ∂ f ðx Þ 5
2
∂xn ⋯
∂xn ∂x1 ∂x2n
For solving (2.1), plenty of methods are known (see Luenberger, 1973, 1984; Gill, Murray, &
Wright, 1981; Bazaraa, Sherali, & Shetty, 1993; Bertsekas, 1999; Nocedal, & Wright, 2006; Sun, &
Yuan, 2006; Bartholomew-Biggs, 2008; Griva, Nash, & Sofer, 2009; Andrei, 1999a, 2009e, 2015a,
2020a, 2021a). In general, for solving (2.1), the unconstrained optimization methods implement one
of the following two strategies: the line-search and the trust-region. Besides these two strategies, for
problems with a small number of variables (let us say 20), the direct methods are used. The direct
methods use only the values of the minimizing function without appealing to the differential
operators: the gradient or the Hessian. Often, the direct methods are called derivative-free optimiza-
tion or the zero-th order method. There are a lot of direct methods (Rios, & Shainidis, 2013; Larson,
Menickelly, Wild, 2019; Andrei, 2021a), etc.
In the line-search strategy, the corresponding algorithm chooses a direction dk and searches along
this direction from the current iterate xk for a new iterate with a lower function value. Specifically,
starting with an initial point x0, the iterations are generated as
xkþ1 ¼ xk þ αk dk , k ¼ 0, 1, . . . , ð2:4Þ
where dk 2 ℝn is the search direction along which the values of function f are reduced and αk 2 ℝ is
the stepsize determined by a line-search procedure. The main requirement is that the search direction
dk, at iteration k should be a descent direction. It is proved that the algebraic characterization of
descent directions is that
which is a very important criterion concerning the effectiveness of an algorithm. In (2.5), gk ¼ ∇ f(xk)
is the gradient of f in point xk. In order to guarantee the global convergence, sometimes it is required
that the search direction dk satisfy the sufficient descent condition
where the point xk þ p lies inside the trust region. If the step p does not produce a sufficient reduction
of the function values, then it follows that the trust-region is too large. In this case the trust-region is
shrinked and the model mk in (2.7) is re-solved. Usually, the trust-region is a ball defined by kpk2 Δ,
where the scalar Δ is known as the trust-region radius. Of course, elliptical and box-shaped trust
regions may be used.
Usually, the model mk in (2.7) is defined as a quadratic approximation of the minimizing
function f:
1
mk ðxk þ pÞ ¼ f ðxk Þ þ pT ∇f ðxk Þ þ pT Bk p, ð2:8Þ
2
where Bk is either the Hessian ∇2f(xk) or an approximation of it. Observe that whenever the size of the
trust-region, i.e., the trust-region radius, is reduced after a failure of the current iterate, the step from
xk to the new point will be shorter and usually run to a different direction from the previous point.
By comparison, the line-search and the trust-region differ in the order in which they choose the
search direction and the stepsize to move to the next iterate. The line-search starts with a descent
direction dk and then determines an appropriate distance along this direction, namely, the stepsize αk.
In the trust-region, the maximum distance is first chosen, that is the trust-region radius Δk. Then a
direction and a step pk that determine the best improvement of the function values subject to this
distance constraint are determined. If this step is not satisfactory, then the distance measure Δk is
reduced, and the process is repeated.
For solving the unconstrained optimization problems, the general principle of the methods based
on the differential operators (the gradient and the Hessian) consists in the construction in the current
point of an affine model or a quadratic model of the minimizing function, in solving this model and in
considering its solution as the next approximation of the minimum. This process is then repeated from
this new approximation of the minimum point. In the next section, in order to establish the validity of
this approach, it is essential to see the bounds of the errors corresponding to the models of the
minimizing function and to notice some fundamentals on the convergence of the line-search methods.
From the very beginning, two forms of the fundamental theorem of calculus are presented: one for the
function-gradient and the other for the gradient-Hessian.
ð1
f ðxÞ ¼ f ðx Þ þ ∇f ðx þ teÞedt
ð2:9Þ
0
and
24 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
ð1
∇f ðxÞ ¼ ∇f ðx Þ þ ∇2 f ðx þ teÞedt, ð2:10Þ
0
where e ¼ x x. ♦
A direct consequence of Theorem 2.1 is the following form of Taylor’s theorem, which is one of
the most used results in optimization.
Theorem 2.3 Let f : ℝn ! ℝ be twice continuously differentiable and let x be a local minimum of f.
Then
∇f ðx Þ ¼ 0:
Proof Let u 2 ℝn be an arbitrary vector. Then Taylor’s theorem says that for all real t sufficiently
small
t2 T 2
f ðx þ tuÞ ¼ f ðx Þ þ t∇f ðx ÞT u þ u ∇ f ðx Þu þ o t2 :
2
Since x is a local minimizer, then for t sufficiently small it follows that f(x þ tu) f(x) 0.
Hence, for t sufficiently small and all u 2 ℝn
t
∇f ðx ÞT u þ uT ∇2 f ðx Þu þ oðtÞ 0: ð2:12Þ
2
Now, if we set t ¼ 0 and u ¼ ∇ f(x) we obtain
1 T 2
u ∇ f ðx Þu 0
2
for all u 2 ℝn. ♦
The condition ∇f(x) ¼ 0 is known as the first-order necessary optimality condition for uncon-
strained optimization, while a point satisfying this condition is called a stationary point or a critical
point of the minimizing function f. Observe that the condition ∇f(x) ¼ 0 is a nonlinear algebraic
system. Therefore, to compute the minimizers of a function f we can use fast algorithms for solving
nonlinear algebraic systems.
Proof Let u 2 ℝn be an arbitrary vector with u 6¼ 0. Then, for sufficiently small t we can write
t2 T 2
f ðx þ tuÞ ¼ f ðx Þ þ t∇f ðx ÞT u þ u ∇ f ðx Þu þ o t2
2
t2
¼ f ðx Þ þ uT ∇2 f ðx Þu þ o t2 :
2
Now, if λ > 0 is the smallest eigenvalues of ∇2f(x), it follows that for t sufficiently small
λ
f ðx þ tuÞ f ðx Þ ktuk2 þ o t2 > 0:
2
Therefore x is a local minimizer of function f. ♦
Other details on the optimality conditions for the unconstrained optimization are given in
Chap. 11.
Bounds of the Distance Between the Approximations of Function f and the Function Value
in a Point
Let us consider function f twice continuously differentiable. In the following, let us present some
bounds on the distance between the local affine model (local affine approximation):
of the minimizing function and the function value in the point x þ d, where d is the searching
direction. From the very beginning, consider the differential function f : ℝ ! ℝ. Let D be an open,
convex set in ℝ.
Definition 2.1 A function f is Lipschitz continuous on D with the constant L if for any x, y 2 D,
|f(x) f( y)| Lkx yk.
The following theorem shows a fundamental result from numerical computation by specifying that
if f 0(x) is Lipschitz continuous, then there is a bound of the distance between the local affine
approximation f(x) þ f 0(x)(y x) and the function value f( y).
Proof Obviously
ðy
f ðyÞ f ðxÞ ¼ f 0 ðzÞdz,
x
or
ðy
f ðyÞ f ðxÞ f ðxÞðy xÞ ¼ ½f 0 ðzÞ f 0 ðxÞdz:
0
ð1
f ðyÞ f ðxÞ f 0 ðxÞðy xÞ ¼ ½f 0 ðx þ tðy xÞÞ f 0 ðxÞðy xÞdt:
0
Observe that (2.15) resembles the bound of the error from Taylor’s series with rest, in which the
00
Lipschitz constant L is a bound of the |f (ξ)|, for ξ 2 D. The main advantage of the Lipschitz
continuity is that, for the analysis of algorithms, the derivatives of high order need not be discussed.
In the following, let us present a bound of the distance between the local quadratic model and the
function value in a point.
Theorem 2.6 Let f : ℝn ! ℝ be a twice continuously differentiable function on the convex and open
set D ⊂ ℝn. Assume that ∇2f(x) is Lipschitz continuous in x 2 D with constant L 0. Then, for any
x þ d 2 D it follows that
2.2 Fundamentals on the Convergence of the Line-Search Methods 27
h i
T 1 L
f ðx þ dÞ f ðxÞ þ ∇f ðxÞ d þ dT ∇2 f ðxÞd kdk :
3
ð2:16Þ
2 6
The proof of this theorem is similar to the proof of Theorem 2.5, and it is left as an exercise for the
reader. ♦
∂f i ðxÞ
½F0 ðxÞij ≜ ½J ðxÞij ¼ , i ¼ 1, . . . , m, j ¼ 1, . . . , n:
∂xj
For continuous vectorial functions, there is no mean value theorem. That is, in general, there may
not exist a point z 2 ℝn such that F(x þ d) ¼ F(x) þ J(z)d. Even if each component fi(x) satisfies
fi(x þ d ) ¼ fi(x) þ ∇ fi(zi)Td, the points zi may be different.
By using the definition of Jacobian, it follows that if F : ℝn ! ℝm is continuously differentiable on
an open set D ⊂ ℝn, then for any x, x þ d 2 ℝn, we have
ð1 ð
xþd
Theorem 2.7 Let F : ℝn ! ℝm be continuously differentiable on the convex open set D ⊂ ℝn.
Assume that J is Lipschitz continuous at x 2 D with the constant L 0. Then, for any x þ d 2 D it
follows that:
L
kFðx þ dÞ FðxÞ J ðxÞdk kd k2 : ð2:18Þ
2
28 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Proof We have
ð1
Fðx þ d Þ FðxÞ J ðxÞd ¼ J ðx þ td Þddt J ðxÞd
0
ð1
¼ ½J ðx þ td Þ J ðxÞddt:
0
Therefore,
ð1
kFðx þ dÞ FðxÞ J ðxÞdk kJ ðx þ td Þ J ðxÞkkdkdt
0
ð1 ð1
2 L
Lktd kkdkdt ¼ Lkdk tdt ¼ kdk2 : ♦
2
0 0
Theorem 2.8 Let F : ℝn ! ℝm be a continuously differentiable function on the open convex set
D ⊂ ℝn. Then for any u, v, x 2 D it follows that
kFðuÞ FðvÞ J ðxÞðu vÞk sup kJ ðv þ tðu vÞÞ J ðxÞk ku vk: ð2:19Þ
0t1
and
ku x k þ kv x k
kFðuÞ FðvÞ J ðxÞðu vÞk L ku vk, ð2:21Þ
2
where σ(u, v) ¼ max {ku xk, kv xk}.
Proof From (2.17) and the mean value theorem it follows that
1
ð
kFðuÞ FðvÞ J ðxÞðu vÞk ¼
½ J ðv þ t ð u v Þ Þ J ð x Þ ð u v Þdt
0
ð1
kJ ðv þ tðu vÞÞ J ðxÞkku vkdt sup kJ ðv þ tðu vÞÞ J ðxÞk ku vk,
0t1
0
ð1
kFðuÞ FðvÞ J ðxÞðu vÞk L kv þ tðu vÞ xkku vkdt
0
¼ L sup kv þ tðu vÞ xkku vk ¼ Lσ ðu, vÞku vk
0t1
which is exactly (2.20). The result (2.21) is proved in the same manner. ♦
Theorem 2.9 Let F and J which satisfy the conditions of Theorem 2.7. Suppose that there exists
J(x)1. Then, there exist ε > 0 and β > α > 0, such that for all u, v 2 D, when max{ku xk, kv xk} ε,
it follows that
αku vk kFðuÞ FðvÞk βku vk: ð2:22Þ
Let β ¼ kJ(x)k þ Lε. Then, we obtain the inequality on the right side of (2.22). Similarly,
kFðuÞ FðvÞk kJ ðxÞðu vÞk kFðuÞ FðvÞ J ðxÞðu vÞk
h i h i
1= J ðxÞ1 Lσ ðu, vÞ ku vk 1= J ðxÞ1 Lε ku vk:
Therefore, if 1/(kJ(x)1kL ) > ε, then we obtain the inequality on the left side of (2.22), where
α ¼ 1/kJ(x)1k Lε > 0. ♦
xkþ1 ¼ xk þ αk dk , ð2:23Þ
where αk is the stepsize along the direction dk. We mention that a descent direction dk 6¼ 0 in the point
xk satisfies the condition ∇f(xk)Tdk < 0, called descent condition. Geometrically, the descent condition
means that the angle between dk and the negative gradient must be smaller than 90 . If αk 6¼ 0, we see
that (2.23) satisfies the general principle of numerical computation, which recommends that a new
30 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
estimation of the solution of a problem should be computed as a small highly accurate modification of
the previous estimation.
To start the computations, this iterative scheme must be initialized with an initial point x0. This
point has to be in domf and additionally it is required that the level set S ¼ {x 2 domf : f(x) f(x0)} be
closed. This closeness of the level set ensures the elimination of the possibility that the algorithm
converges to a point from the frontier of domf.
The purpose of this section is to develop methods for an efficient computation of the scalar αk. Let
Now, the problem is starting from xk, determine the stepsize αk in direction dk, such that
φ(αk) < φ(0). This is known as the line-search. For this line-search, two possibilities are more
important.
or
Due to highly numerical costs, the exact line-search is not used for solving optimization problems,
apart from some particular cases, such as the quadratic objective. In the vast majority of situations, the
inexact line-search is used. The structure of an unconstrained optimization algorithm based on
descent directions is as follows.
1. Initialization. Consider an initial point x0 2 ℝn, as well as the convergence tolerance 0 < ε 1
sufficiently small. Set k ¼ 0
2. Compute the descent direction dk
3. Using the exact or the inexact line-search, compute the stepsize αk
4. Compute xkþ1 ¼ xk þ αkdk
5. Test a criterion for stopping the iterations. For example, if k∇f(xk)k ε, then stop; otherwise set k ¼ k þ 1
and go to step 2 ♦
As we can see, the algorithm is very general and plenty of aspects remain to be clarified. For
example, in step 2 of the algorithm, it is not specified how the descent direction dk is computed.
However, this will be presented in the next chapters, where different procedures for the dk computa-
tion are discussed, for example, steepest descent, Newton, conjugate gradient, quasi-Newton, limited
memory L-BFGS, inexact (truncated) Newton, etc. In step 3, the stepsize αk can be computed by the
exact line-search or by the inexact line-search. In step 5 it is possible to implement other criteria for
stopping the iterations, etc.
2.4 Convergence of the Algorithm with Exact Line-Search 31
In this section we are interested in the convergence of Algorithm 2.1, in which the stepsize is
computed by the exact line-search (2.25) or (2.26). Let φ(α) ¼ f(xk þ αdk). Observe that
φ(0) ¼ f(xk) and φ(α) φ(0). Condition (2.25) is very exigent and involves the computation of the
global minimum of function φ(α), which is a very difficult task. Therefore, instead, we limit our
search to the first stationary point of φ, i.e., determine αk as
n o
αk ¼ min α 0 : ∇f ðxk þ αd k ÞT d k ¼ 0 : ð2:27Þ
Since by (2.25) the exact minimum of function f is obtained and by (2.27) a stationary point of
function φ is determined, then the conditions (2.25) and (2.27) determine the exact line-search.
Now, consider hdk, ∇ f(xk)i as the angle between the vectors dk and ∇ f(xk). Then
d Tk ∇f ðxk Þ
cos hd k , ∇f ðxk Þi ¼ : ð2:28Þ
kd k kk∇f ðxk Þk
The following theorem gives a bound of the reduction of the values of function f at every iteration
of Algorithm 2.1 with exact line-search.
Theorem 2.10 Let αk > 0 be solution of the problem (2.25) and assume that k∇2f(xk þ αdk)k M for
any α > 0, where M is a positive constant. Then
1
f ðxk Þ f ðxk þ αk d k Þ k∇f ðxk Þk2 cos 2 hdk , ∇f ðxk Þi: ð2:29Þ
2M
Proof From the hypothesis of the theorem, for any α > 0, it follows that
α2
f ðxk þ αdk Þ f ðxk Þ þ αdTk ∇f ðxk Þ þ M kd k k2 : ð2:30Þ
2
Now, define
dTk ∇f ðxk Þ
α¼ :
M kd k k2
α2
f ðxk Þ f ðxk þ αk dk Þ f ðxk Þ f ðxk þ αdk Þ αdTk ∇f ðxk Þ M kd k k2
2
T 2 T 2
1 d k ∇f ðxk Þ 1 2 dk ∇f ðxk Þ
¼ ¼ k∇f ðxk Þk
2 M kd k k2 2M kdk k2 k∇f ðxk Þk2
1
¼ k∇f ðxk Þk2 cos 2 hd k , ∇f ðxk Þi ♦
2M
Observe that the theorem says that, at every iteration, the reduction of the values of function f is
more emphasized when the angle hdk, ∇ f(xk)i is more acute. The following two theorems are two
expressions of the same result that shows the convergence of Algorithm 2.1.
32 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Theorem 2.11 Let f(x) be a continuously differentiable function on the open set D ⊂ ℝn and
suppose that the direction dk is descent, i.e., dTk ∇f ðxk Þ 0, and the sequence {xk} generated by
Algorithm 2.1 with exact line-search satisfies a condition of monotony f(xkþ1) f(xk). Let x 2 D be an
accumulation point of {xk} and a set K1 of indices with K 1 ¼ fk : lim xk ¼ xg. Suppose that there is a
positive constant M > 0 such that for all k 2 K1, kdkk < M. If d is an arbitrary accumulation point of
the sequence {dk}, then
T
d ∇f ðxÞ ¼ 0: ð2:31Þ
Proof We prove only (2.31). Obviously, (2.32) may be proved similarly. Consider K2 ⊂ K1 a set of
indices for which d ¼ lim k2K2 dk . If d ¼ 0, then (2.31) is trivial satisfied, otherwise consider the
following two cases.
(i) There is a set of indices K3 ⊂ K2 such that lim k2K 3 αk ¼ 0. Since αk is the exact stepsize, it
follows that dTk ∇f ðxk þ αk dk Þ ¼ 0. Moreover, since kdkk is uniformly bounded from above and
T
αk ! 0, at limit we have that d ∇f ðxÞ ¼ 0.
(ii) Now we refer to the case lim inf k2K2 αk ¼ α > 0. Let K4 ⊂ K2 be a set of indices for which
T
αk α=2 . Suppose that (2.31) is not true, then d ∇f ðxÞ < δ < 0 . Therefore, there is a
neighborhood N ðxÞ of x and a set of indices K5 ⊂ K4 such that as soon as x 2 N ðxÞ and
k 2 K5, dTk ∇f ðxÞ δ=2 < 0. Let bα be a positive number sufficiently small such that for all
0αb α and all k 2 K5, xk þ αdk 2 N ðxÞ. Consider α ¼ min fα=2, b αg. Then, by using the
monotony property of the algorithm, the exact line-search and the development in Taylor’s series
we have
P
1 P
f ðx Þ f ðx 0 Þ ¼ ½f ðxkþ1 Þ f ðxk Þ ½f ðxkþ1 Þ f ðxk Þ
k¼0 k2K 5
P
½f ðxk þ α dk Þ f ðxk Þ
k2K 5
P ð2:33Þ
¼ α ∇f ðxk þ τk dk ÞT d k
k2K 5
P
δ
α ¼ 1,
k2K 5 2
where 0 τk α. The above contradiction shows that (2.31) is also true in case (ii).
The proof of (2.32) is similar. Instead of (2.33) it is sufficient to use the development in Taylor’s
series up to the second order to get
2.4 Convergence of the Algorithm with Exact Line-Search 33
P
f ðxÞ f ðx0 Þ ½f ðxk þ α d k Þ f ðxk Þ
k2K 5
P T ðα Þ2 T 2
¼ α ∇f ðxk Þ d k þ dk ∇ f ðxk þ τk d k Þdk
k2K 5 2
P ðα Þ2 T 2
d k ∇ f ðxk þ τk d k Þdk
k2K 5 2
P h 1 δ 2 i
ðα Þ ¼ 1:
k2K 5 2 2
Theorem 2.12 Let ∇f(x) be uniformly continuous on the level set S ¼ {x 2 ℝn : f(x) f(x0)}. Also, let
θk ¼ hdk, ∇ f(xk)i, where dk is the search direction generated by Algorithm 2.1 with exact line-
search. If
π
θk μ, for certain μ > 0, ð2:34Þ
2
then either ∇f(xk) ¼ 0 for certain k, or f(xk) ! 1 , or ∇f(xk) ! 0.
Proof Suppose that for all k, ∇f(xk) 6¼ 0 and the function f(xk) is bounded from below. Since {f(xk)} is
a sequence decreasing monotonically, then its limit exists. Hence,
By contradiction, suppose that ∇f(xk) ! 0 is not true. Then, there exists an ε > 0 such that
k∇f(xk)k ε. Therefore,
∇f ðxk ÞT dk
¼ k∇f ðxk Þk cos θk ε sin μ ≜ ε1 ð2:36Þ
kd k k
Observe that
where ξk is on the line segment determined by xk and xk þ αdk. Since ∇f(x) is uniformly continuous on
the level set S, it follows that there exists an α such that when 0 αkd k k α, then
1
k∇f ðξk Þ ∇f ðxk Þk ε1 : ð2:38Þ
2
From (2.35, 2.36, 2.37, and 2.38) we get
dk ∇f ðxk ÞT dk 1 1
f xk þ α f ðxk Þ þ α þ ε1 f ðxk Þ αε1 ,
kd k k kd k k 2 2
i.e.,
34 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
d 1
f ðxkþ1 Þ f xk þ α k f ðxk Þ αε1 ,
kd k k 2
In the following, let us present the rate of convergence of Algorithm 2.1 with exact line-search. For
this, we need some technical results proved in the following three propositions.
Proposition 2.1 Let φ(α) be at least twice continuously differentiable on the closed interval [0, b]
and φ0(0) < 0. If the minimum of φ(α) on [0, b] is α 2 (0, b), then
α e
α ¼ φ0 ð0Þ=M, ð2:39Þ
00
where M is a positive number such that φ (α) M, for all α 2 [0, b].
Proof Consider the auxiliary function ψ(α) ¼ φ0(0) þ Mα which has a unique zero e
α ¼ φ0 ð0Þ=M.
00
But, on [0, b], φ (α) M, therefore
ðα ðα
0 0 00 0
φ ðαÞ ¼ φ ð0Þ þ φ ðσ Þdσ φ ð0Þ þ Mdσ ¼ ψðαÞ:
0 0
0
Now, taking α ¼ α and noticing that φ (α ) ¼ 0, from the above inequality it follows that
0 ψ(α) ¼ φ0(0) þ Mα, thus proving the proposition. ♦
Proposition 2.2 Let f(x) be twice continuously differentiable on ℝn. Then, for all x, d 2 ℝn and for
any scalar α it follows that
ð1
f ðx þ αdÞ ¼ f ðxÞ þ α∇f ðxÞT d þ α2 ð1 tÞ dT ∇2 f ðx þ tαdÞd dt: ð2:40Þ
0
Proof We have
ð1 ð1 h i
f ðx þ αdÞ f ðxÞ ¼ df ðx þ tαdÞ ¼ α∇f ðx þ tαdÞT d dð1 tÞ
0 0
h i1 ð1 h i
¼ ð1 tÞα∇f ðx þ tαd Þ d þ ð1 tÞd α∇f ðx þ tαdÞT d
T
0
0
ð1
¼ α∇f ðxÞT d þ α2 ð1 tÞd T ∇2 f ðx þ tαd Þd dt ♦
0
Proposition 2.3 Let f(x) be a twice continuously differentiable function in a neighborhood of the
minimum x. Suppose that there exist the constants ε > 0 and M > m > 0 such that for any y 2 ℝn, as
soon as kx xk < ε,
2.4 Convergence of the Algorithm with Exact Line-Search 35
Then
1 1
mkx x k2 f ðxÞ f ðx Þ Mkx x k2 ð2:42Þ
2 2
and
ð1
f ðxÞ f ðx Þ ¼ ∇f ðx Þ ðx x Þ þ ð1 tÞðx x ÞT ∇2 f ðtx þ ð1 tÞx Þðx x Þdt
T
0
ð2:44Þ
ð1
¼ ð1 tÞðx x Þ ∇ f ðtx þ ð1 tÞx Þðx x Þdt:
T 2
From (2.44) and (2.45) it follows (2.42). For proving (2.43) observe that
ð1
∇f ðxÞ ¼ ∇f ðxÞ ∇f ðx Þ ¼ ∇2 f ðtx þ ð1 tÞx Þðx x Þdt:
Therefore,
ð1
k∇f ðxÞkkx x k ðx x Þ ∇f ðxÞ ¼ ðx x ÞT ∇2 f ðtx þ ð1 tÞx Þðx x Þdt
T
0
m kx x k2 ,
The following theorem is central in establishing the rate of convergence of Algorithm 2.1 with
exact line-search. It is proved that, if the minimizing function f is twice continuously differentiable
with bounded Hessian, then the algorithm is at least linear convergent to a local minimum.
Theorem 2.13 Let {xk} be the sequence generated by Algorithm 2.1 with exact line-search,
convergent to the minimum point x of function f(x). Let f(x) be twice continuously differentiable in
36 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
a neighborhood of x and assume that there exist the positive constants ε > 0 and M > m > 0, such that
for all y 2 ℝn, as soon as kx xk < ε,
Proof Consider limk ! 1xk ¼ x. Therefore, for k sufficiently large, we can assume that kxk xk ε.
Since kxkþ1 xk < ε, then there exists a positive δ > 0 such that
kxk þ ðαk þ δÞdk x k ¼ kxkþ1 x þ δdk k < ε: ð2:46Þ
Observe that φ(α) ¼ f(xk þ αdk) and φ0(α) ¼ ∇ f(xk þ αdk)Tdk. But, dk is a descent direction, then
φ (0) ¼ ∇ f(xk)Tdk < 0 and |φ0(0)| k∇f(xk)kkdkk. Therefore, for a ρ 2 (0, 1) we can write
0
and
From Proposition 2.1 we know that the minimum αk of φ(α) on [0, αk þ δ] satisfies
φ0 ð0Þ ρk∇f ðxk Þk
αk e
αk ¼ ≜αk : ð2:47Þ
M kd k k2 M kd k k
Hence,
f ðxkþ1 Þ f ðx Þ ¼ ½hf ðxkþ1 Þ if ðxk Þ þ ½f ðxk Þ f ðx Þ
2 ð2:48Þ
1 ρm M ½f ðxk Þ f ðx Þ:
Now, consider
2 12
ρm
ω¼ 1 :
M
The next theorem establishes a bound of the reduction of the values of the minimizing function
f given by Algorithm 2.1 with exact line-search.
Theorem 2.14 Assume that the gradient of the minimizing function f(x) satisfies the following
condition:
for any x, z 2 ℝn and let αk be the stepsize obtained by the exact line-search. Then
1
f ðxk Þ f ðxk þ αk dk Þ ηkαk d k k2 :
2
∇f ðxk þ αk dk ÞT d k ¼ 0:
In the previous section we discussed the convergence properties of the general unconstrained
optimization Algorithm 2.1 with exact line-search, i.e., the stepsize αk is computed as solution of
the following minimizing problem
or
38 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
n o
αk ¼ min α 0 : ∇f ðxk þ αd k ÞT d k ¼ 0 : ð2:50Þ
α>0
The problems (2.49) or (2.50) are not easy to solve, especially when the current point is far away
from the minimum point. On the other hand, for many optimization methods like the Newton or
quasi-Newton, their rate of convergence does not depend on the exact line-search. Usually, these
methods accept a unitary stepsize, and therefore the line-search in these methods is not critical.
Therefore, in Algorithm 2.1, as soon as a stepsize which determines an acceptable reducing of the
values of the minimizing function is obtained, then the exact line-search can be avoided, thus
significantly reducing the computational effort.
The purpose of this section is to present a number of inexact line-search procedures which proved
to be efficient and robust for solving unconstrained optimization problems.
1. Armijo Line-Search
Armijo (1966) introduced the following inexact line-search, known as Armijo rule. Consider the
following scalars β 2 (0, 1), τk ¼ (∇f(xk)Tdk)/kdkk2 and ρ 2 (0, 1/2). Set αk ¼ βmk τk , where mk is
the first nonnegative integer m for which
i.e., try m ¼ 0, 1, . . . until the above inequality is satisfied for certain m ¼ mk. The inequality (2.51) is
called the condition of Armijo. In other words, the stepsize is computed successively as αk ¼ τk, βτk,
β2τk, . . . until (2.51) is satisfied. The following theorem shows that there exists an interval for the
stepsizes α computed as above which satisfy the condition of Armijo.
Theorem 2.15 Consider xk, dk 2 ℝn such that dk 6¼ 0, ∇f(xk)Tdk < 0 and ρ 2 (0, 1). Then, there exists
ε ¼ ε(ρ) for which
Proof Obviously,
f ðxk þ αdk Þ f ðxk Þ
0 6¼ ∇f ðxk ÞT dk ¼ lim :
α!0 α
Hence,
Therefore, there exists an ε > 0 such that for any α 2 (0, ε],
Now, suppose that Armijo line-search is initialized with the value αk ¼ ∇f ðxk ÞT dk =kdk k2. Then,
the following theorem ensures that in mild conditions, the stepsize given by Armijo rule is bounded
from below.
Theorem 2.16 Suppose that dk is a descent direction and ∇f(x) satisfies the Lipschitz continuity
k∇f( y) ∇ f(x)k Lky xk for any x, y 2 S ¼ {x : f(x) f(x0)}, where L is a positive constant. If the
line-search satisfies the condition (2.51) of Armijo, then
( )
βð1 ρÞ gTk d k
αk min 1, :
L kd k k2
Proof Let K1 ¼ {k : αk ¼ τk} and K2 ¼ {k : αk < τk}. Then, for any k 2 K1 we have
Using Armijo’s rule, since for any k 2 K2, αk/β τk, it follows that for any k 2 K2,
α α
f k f xk þ k dk < ρ k ∇f ðxk ÞT dk :
β β
Now, using the mean value theorem for the left side of the above inequality, it follows that there
exists a ξk 2 [0, 1] such that
T
αk ρ
∇f xk þ ξk dk dk > ∇f ðxk ÞT dk
β β
for all k 2 K2. Combining this with the inequality corresponding to k 2 K1, the conclusion of the
theorem is obtained. ♦
Theorem 2.17 (Termination of Armijo line-search) Let f be continuously differentiable with gradient
∇f(x) Lipschitz continuous with constant L > 0, i.e., k∇(x) ∇ ( y)k Lkx yk, for any x, y from the
level set S ¼ {x : f(x) f(x0)}. Let dk be a descent direction at xk, i.e., ∇f(x)Tdk < 0. Then, for fixed
γ 2 (0, 1):
40 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
1. The Armijo condition f ðxk þ αdk Þ f ðxk Þ þ γαgTk dk (easily modified) is satisfied for all α 2
0, αkmax , where
2ðγ 1ÞgTk dk
αkmax ¼ :
Lkdk k22
2. For fixed τ 2 (0, 1) the stepsize generated by the backtracking-Armijo line-search terminates with
( )
2τ ð γ 1 Þg T
d k
αk min α0k , k
,
Lkd k k22
Proof Either α0k already satisfies the Armijo condition, or there is a second to the last step in the
Armijo backtracking algorithm which does not yet satisfy the Armijo condition. Therefore, the next
step will multiply this second to the last one by τ, which then satisfies the Armijo condition and the
algorithms stops with αk satisfying the above inequality. ♦
2. Goldstein Line-Search
Goldstein (1965) presented the following rule, known as Goldstein rule. Consider the interval
J ¼ fα > 0 : f ðxk þ αdk Þ < f ðxk Þg: ð2:53Þ
In order to have a sufficient reduction of the values of the minimizing function f, we should select a
value for α which is far away from the end points of the interval. The following two conditions seem
to be reasonable to reach this situation:
and
where 0 < δ2 < 1/2 < δ1 < 1. (2.56) is known as Goldstein inexact line-search, or Goldstein rule, or
Goldstein conditions.
Let φ(α) ¼ f(xk þ αdk). Then, (2.54) and (2.55) can be expressed as
Observe that ρ < 1/2 is a necessary condition. Otherwise, if, for example, φ(α) is a quadratic
00
function which satisfies φ0(0) < 0 and φ (0) > 0, then the global minimum α of φ satisfies the relation
φðα Þ ¼ φð0Þ þ 12 α φ0 ð0Þ. Therefore, α satisfies (2.57) if and only if ρ < 1/2. This condition ρ < 1/2
has a great effect on the Newton and quasi-Newton methods, allowing α ¼ 1 in these methods and
therefore ensuring the superlinear convergence of these methods.
3. Wolfe Line-Search
It is quite possible that Goldstein conditions (2.54) and (2.55) be too strong and therefore exclude
the minimum points of function φ(α). That is why instead of (2.55), Wolfe (1969, 1971) introduced
the following condition:
The geometrical interpretation of (2.59) is that φ0(αk) computed in an acceptable point must be
greater or equal to a multiple σ 2 (0, 1) of φ0(0). The relations (2.54) and (2.59) define the weak Wolfe
inexact line-search, or the weak Wolfe rule, or the weak Wolfe conditions. In fact, these conditions are
a very subtle extension of Goldstein conditions. Observe that (2.59) can be obtained from the mean
value theorem and from (2.55). Indeed, let αk be a value of the stepsize which verifies (2.55), then
where θk 2 (0, 1), which is exactly (2.59). Now, let us prove that there is an αk which satisfies the
inexact Wolfe line-search (2.54) and (2.59).
Theorem 2.18 Suppose that f is continuously differentiable and dk is a descent direction for f in xk.
Suppose that f is bounded from below along the ray {xk þ αdk : α 0}. If 0 < ρ < σ < 1, then there
exists an interval [a, b], 0 < a < b, such that the inexact weak Wolfe line-search
Proof As above, let φ(α) ¼ f(xk þ αdk), α 0. Since φ0(0) < 0 and 0 < ρ < σ < 1, it follows that for
α sufficiently small, φ(α) < φ(0) þ ραφ0(0). But, since φ is bounded from below, this relation is
not satisfied for α sufficiently large. Therefore, if we define α ¼ supfb α > 0 : φðαÞ < φð0Þ þ
ραφ0 ð0Þ, 8α 2 ð0, b
αÞg, then α exists and is finite. Moreover, α satisfies (2.52) with equality, that is
φðαÞ ¼ φð0Þ þ ραφ0 ð0Þ. Using the mean value theorem, it follows that there exists β 2 ð0, αÞ such
that
φðαÞ φð0Þ φð0Þ þ ραφ0 ð0Þ φð0Þ
φ0 ðβÞ ¼ ¼ ¼ ρφ0 ð0Þ > σφ0 ð0Þ,
α α
42 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
since σ > ρ and φ0(0) < 0. But, from the continuity of φ0, there exists an interval ða, bÞ ⊂ ð0, αÞ
centered in β such that φ0(α) σφ0(0) for all α 2 (a, b). Therefore, by construction, for any α 2 (a, b)
the following relations φ(α) < φ(0) þ ραφ0(0) and φ0(α) σφ0(0) are verified, i.e., the weak Wolfe
conditions. ♦
The first weak Wolfe condition f(xkþαkdk) f(xk) þ ραk ∇ f(xk)Tdk requires that the stepsize αk
achieve a sufficient reduction of f. That is why (2.54) is also called the condition of sufficient
reduction. In other words, this condition forces that the rate of reducing the function f in the direction
dk should be at least ρ ∇ f(xk)Tdk. In practice, ρ ¼ 104. Observe that any sufficiently small step may
satisfy the condition of sufficient reduction. Consequently, in order to avoid very small steps, totally
inefficient in the line-search, the second condition (2.59) ∇f(xk þ αkdk)Tdk σ ∇ f(xk)Tdk called the
curvature condition is introduced. This condition ensures a bound of ∇f(xk þ αdk)Tdk. The typical
value of σ is 0.9. In general, the smaller the value of σ, the more accurate the line-search. However,
the smaller σ is, the bigger the computational effort is.
Proposition 2.4 Suppose that dk is a descent direction and ∇f satisfies the Lipschitz condition
for all x on the line segment connecting xk and xkþ1, where L is a constant. If the line-search satisfies
the Goldstein conditions (2.56), then
T
1 δ 1 gk d k
αk : ð2:60Þ
L kd k k2
Proof If the Goldstein conditions hold, then by (2.56) and by the mean value theorem, we have
Observe that dk is a descent direction and σ < 1, therefore (2.61) follows from the above
inequality. ♦
line-search conditions may be used, which consist of (2.54) and, instead of (2.59), the following
strengthened version
∇f ðxk þ αk dk ÞT dk σ∇f ðxk ÞT dk ð2:62Þ
is used. From (2.50) we see that, if σ ! 0, then the stepsize which satisfies (2.54) and (2.62) tends to
be the optimal stepsize. Observe that, if a stepsize αk satisfies the strong Wolfe line-search, then it
satisfies the weak Wolfe conditions.
The strong Wolfe conditions allow σ to be chosen to vary the accuracy of the step. If ρ is fixed at a
value close to zero (ρ ¼ 104), then a value of σ close to ρ gives a more accurate step with respect to
closeness to a critical point of ∇f(xk þ αdk)Tdk. A value of σ close to 1 results in a more
approximate step.
Proposition 2.5 Suppose that the function f is continuously differentiable. Let dk be a descent
direction at point xk and assume that f is bounded from below along the ray {xk þ αdk : α > 0}.
Then, if 0 < ρ < σ < 1, there exists an interval of stepsizes α satisfying the weak Wolfe conditions and
the strong Wolfe conditions.
Proof Since φk(α) ¼ f(xk þ αdk) is bounded from below for all α > 0, the line l(α) ¼ f(xk) þ αρ ∇ f(xk)Tdk
must intersect the graph of φ at least once. Let α0 > 0 be the smallest intersection value of α, i.e.,
Since ρ < σ and ∇f(xk)Tdk < 0, from (2.63) and (2.64) we get
We mention that the Wolfe line-search conditions are scale-invariant, i.e., multiplying the
minimizing function by a constant or making an affine change of variables does not alter them.
This line-search can be used in the most line-search methods for unconstrained optimization,
particularly in the implementation of Newton, quasi-Newton, conjugate gradient, etc.
where 0 < ρ < σ 1 < 1 and σ 2 0. The particular case in which σ 1 ¼ σ 2 ¼ σ corresponds to the strong
Wolfe line-search.
44 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
5. Hager-Zhang Line-Search
Hager and Zhang (2005) introduced the approximate Wolfe line-search
where 0 < ρ < 1/2 and ρ < σ < 1. Observe that the approximate Wolfe line-search (2.67) has the same
form as the generalized Wolfe line-search (2.66), but with a special choice for σ 2. The first inequality
in (2.67) is the same as (2.59). When f is quadratic, the second inequality in (2.67) is equivalent to
(2.54).
In general, when φk(α) ¼ f(xk þ αdk) is replaced by a quadratic interpolating q(.) that matches
φk(α) at α ¼ 0 and φ0k ðαÞ at α ¼ 0 and α ¼ αk, (2.54) reduces to the second inequality in (2.67).
Observe that the decay condition (2.54) is a component of the generalized Wolfe line-search, while in
the approximate Wolfe line-search the decay condition is approximately enforced through the second
inequality in (2.67). As shown by Hager and Zhang (2005), the first Wolfe condition (2.54) limits the
accuracy of a conjugate gradient method to the order of the square root of the machine precision,
while with the approximate Wolfe line-search we can achieve accuracy to the order of the machine
precision.
The approximate Wolfe line-search is based on the derivative of φk(α). This can be achieved by
using a quadratic approximation of φk. The quadratic interpolating polynomial q that matches φk(α) at
α ¼ 0 and φ0(α) at α ¼ 0 and α ¼ αk (which is unknown) is given by
φ0k ðαk Þ φ0k ð0Þ 2
qðαÞ ¼ φk ð0Þ þ φ0k ð0Þα þ α :
2αk
Observe that the first weak Wolfe condition (2.54) can be written as φk ðαk Þ φk ð0Þ þ ραk φ0k ð0Þ:
Now, if φk is replaced by q in the first weak Wolfe condition, we get q(αk) q(0) þ ρq0(αk), which is
rewritten as
φ0k ðαk Þ φ0k ð0Þ
αk þ φ0k ð0Þαk ραk φ0k ð0Þ,
2
and can be restated as
where ρ < min {0.5, σ}, which is exactly the second inequality in (2.67).
In terms of function φk(.) the approximate line-search aims at finding the stepsize αk which satisfies
the weak Wolfe conditions
φk ðαÞ φk ð0Þ þ ρφ0k ð0Þα, and φ0k ðαÞ σφ0k ð0Þ, ð2:69Þ
which are called LS1 conditions, or the conditions (2.68) together with
φk ðαÞ φk ð0Þ þ εk , and εk ¼ εjf ðxk Þj, ð2:70Þ
where ε is a small positive parameter (ε ¼ 106), which are called LS2 conditions. εk is an estimate for
the error in the value of f at iteration k. With these, the approximate Wolfe line-search algorithm is as
follows:
2.5 Inexact Line-Search Methods 45
The update procedure changes the current bracketing interval [a, b] into a new one a, b by using
an additional point which is either obtained by a bisection step or by a secant step. The input data in
the procedure update are the points a, b, c. The parameter in the procedure update is θ 2 (0, 1)
(θ ¼ 0.5). The output data are a, b:
1. If c 2
= (a, b), then set a ¼ a, b ¼ b and return
2. If φ0k ðcÞ 0, then set a ¼ a, b ¼ c and return
3. If φ0k ðcÞ < 0 and φk(c) φk(0) þ εk, then set a ¼ c, b ¼ b and return
4. If φ0k ðcÞ < 0 and φk(c) > φk(0) þ εk, then set ab ¼ a, bb ¼ c and perform the following steps:
(a) Set d ¼ ð1 θÞb b If φ0 ðd Þ 0, set b ¼ d, a ¼ ab and return
a þ θb: k
(b) If φ0k ðd Þ < 0 and φk(d ) φk(0) þ εk, then set ab ¼ d and go to step (a)
(c) If φ0k ðdÞ < 0 and φk(d ) > φk(0) þ εk, then set bb ¼ d and go to step (a) ♦
The update procedure finds the interval a, b so that
φk ðaÞ < φk ð0Þ þ εk , φ0k ðaÞ < 0 and φ0k b 0: ð2:71Þ
Eventually, a nested sequence of intervals [ak, bk] is determined, which converges to the point that
satisfies either LS1 (2.69) or LS2 (2.68) and (2.70) conditions.
The secant procedure updates the interval by secant steps. If c is obtained from a secant step based
on the function values at a and b, then we write
aφ0k ðbÞ bφ0k ðaÞ
c ¼ secant ða, bÞ ¼ :
φ0k ðbÞ φ0k ðaÞ
Since we do not know whether φ0 is a convex or a concave function, then a pair of secant steps is
generated by a procedure denoted secant2, defined as follows. The input data are the points a and b.
The outputs are a and b which define the interval a, b :
The Hager and Zhang line-search procedure finds the stepsize αk that satisfies either LS1 or LS2 in
a finite number of operations, as it is stated in the following theorem proved by Hager and
Zhang (2005).
Theorem 2.19 Suppose that φk(α) is continuously differentiable on an interval [a0, b0], where (2.71)
holds. If ρ 2 (0, 1/2), then the Hager and Zhang line-search procedure terminates at a point satisfying
either LS1 or LS2 conditions. ♦
Under some additional assumptions, the convergence analysis of the secant 2 procedure was given
by Hager and Zhang (2005), proving that the interval width generated by it is tending to zero, with the
pffiffiffi
root convergence order 1 þ 2: This line-search procedure is implemented in CG-DESCENT, one of
the most advanced conjugate gradient algorithms (see Chap. 5).
The line-search satisfying (2.72) and (2.59) is called the improved Wolfe line-search. If f is
continuously differentiable and bounded from below, the gradient g is Lipschitz continuous and dk
is a descent direction (i.e., ∇f(xk)Tdk < 0), then there must exist a suitable stepsize satisfying (2.59) and
(2.72), since they are weaker than the weak Wolfe conditions.
7. Backtracking
Often, in practice, when a “good” search direction is known, then only the condition (2.54) is used
for the stepsize computation. The main idea of this algorithm is to start the computations with αk ¼ 1.
If the new point xk þ αkdk is not acceptable, then reduce the value of αk until the first condition of
(2.54) f(xk þ αkdk) f(xk) þ ραk ∇ f(xk)Tdk is satisfied. This method is called inexact line-search with
backtracking. A simple backtracking algorithm is as follows.
1. Choose the scalars: ρ 2 (0, 1/2), 0 < l < u < 1 and set αk ¼ 1
2. Test if f(xk þ αkdk) f(xk) þ ραk ∇ f(xk)Tdk
3. If f(xk þ αkdk) f(xk) þ ραk ∇ f(xk)Tdk is not satisfied, then set αk ¼ βαk, where β 2 [l, u] and go to step 2;
otherwise, stop with αk obtained at previous step ♦
2.5 Inexact Line-Search Methods 47
Observe that backtracking is very similar to Armijo’s rule. Often, backtracking is used in the
Newton or quasi-Newton methods, where it is known that, for the vast majority of the steps of these
methods, their length is unitary, i.e., a single test of (2.54) is sufficient to get a convenient stepsize αk.
A more sophisticated variant of the inexact line-search with backtracking consists of determining
αk not by its simple reduction through a factor taken from the interval (0, 1), as in the above
algorithm, but using the quadratic interpolation. Indeed, let φ(α) ¼ f(xk þ αdk). From the very
beginning we know φ(0) ¼ f(xk) and φ0(0) ¼ ∇ f(xk)Tdk. Taking a unitary step, we find φ(1) ¼ f(xk þ dk).
If f(xk þ dk) does not satisfy (2.54), then the following quadratic model may be used in order to
approximate φ(α):
which takes into account the above interpolating values. From the minimum condition p0(α) ¼ 0 we
get a new value for α as
φ 0 ð 0Þ
α¼ :
2ðφð1Þ φð0Þ φ0 ð0ÞÞ
This value may be used in an iterative process as above to get an acceptable stepsize. In order to
avoid too small stepsizes αk, some protections may be introduced. For example, if kαkdkk < η, where η
is a given parameter, then the computation of the stepsize is stopped. A simple variant of the inexact
line-search with backtracking is as follows.
Since dk is a descent direction, then ∇f(xk)Tdk < 0. Therefore, it follows that for sufficiently small
values αk we have:
which shows that the algorithm terminates in a finite number of iterations. The constant ρ is
interpreted as the fraction of reducing the values of f, predicted by linear extrapolation. Usually, ρ
is selected between 0.001 and 0.5 that means that we accept a reduction of function f between 1% and
50% from the prediction based on linear extrapolation. The parameter β is selected between 0.1 and
0.9. The following theorem shows the properties of the inexact line-search with backtracking.
Theorem 2.20 Let f : ℝn ! ℝ be a continuously differentiable function and the level set
S ¼ {x 2 ℝn : f(x) f(x0)} a compact. Suppose that for any k, ∇f(xk)Tdk < 0. Then, Algorithm 2.6
determines in a finite number of iterations a value αk > 0 which satisfies the condition from step 2 of
the algorithm. The sequence xkþ1 ¼ xk þ αkdk satisfies f(xkþ1) < f(xk) for any k and
∇f ðxk ÞT d k
lim ¼ 0:
k!1 kd k k
48 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Proof We shall prove that the algorithm with backtracking cannot cycle indefinitely between steps
2 and 3. Indeed, if the algorithm cycles between these steps, then step 2 is never satisfied, and
therefore
f x k þ β j d k f ðx k Þ
> ρ∇f ðxk ÞT dk :
βj
But β 2 (0, 1) and β j ! 0 when j ! 1 and therefore, for j ! 1 the above inequality becomes
∇f(xk)Tdk > ρ ∇ f(xk)Tdk, which is not possible since ρ 2 (0, 1/2) and ∇f(xk)Tdk 6¼ 0.
Therefore, there exists a j0 such that
f xk þ βj0 d k f ðxk Þ ρβj0 ∇f ðxk ÞT dk 6¼ 0:
Since ∇f(xk)Tdk 6¼ 0, it follows that for any k, f(xkþ1) < f(xk). Now, from the above inequality we get
f xk þ βj0 d k f ðxk Þ ∇f ðxk ÞT dk
ρ :
β kd k k
j0 kd k k
It is worth mentioning that by using the same technique as above it is possible to obtain the inexact
line-search with approximative backtracking. This is exactly the last inequality from (2.67).
The condition from the inexact line-search with backtracking is sufficient to achieve an improve-
ment of the values of the minimizing function, but this is not strong enough to guarantee that any
accumulation point of the algorithm will be a stationary point of function f. In fact, if n 2, the
descent direction dk is very likely to be selected in such a way that the angle between dk and ∇ f(xk)
should be very close to 90 . In this case, the cosine of this angle tends to zero, case in which the
general algorithm may converge to a nonstationary point. In order to avoid this situation, we require
that the cosine of the above angle should be uniformly bounded away from zero. In other words, we
require that the searching directions make an acute cone centered in ∇ f(xk), i.e., they should satisfy
the so-called angle condition
where ρ 2 (0, 1), m(0) ¼ 0, 0 m(k) min {m(k 1) þ 1, M} and M is a prespecified nonnegative
integer. Theoretical analysis and numerical experiments showed the efficiency and robustness of this
line-search for solving unconstrained optimization problems in the context of the Newton method.
2.5 Inexact Line-Search Methods 49
The r-linear convergence for the nonmonotone line-search (2.73), when the objective function f is
strongly convex, was proved by Dai (2002b).
Although these nonmonotone techniques based on (2.73) work well in many cases, there are some
drawbacks. Firstly, a good function value generated in any iteration is essentially discarded due to the
max in (2.73). Secondly, in some cases, the numerical performance is quite dependent on the choice
of M (see Raydan, (1997)). Furthermore, it was pointed out by Dai (2002b) that, although an iterative
method generates r-linearly convergent iterations for a strongly convex function, the iterates may not
satisfy the condition (2.73) for k sufficiently large and for any fixed bound M on the memory.
1. Choose a starting guess x0 and the parameters: 0 ηmin ηmax 1, 0 < ρ < σ < 1 < β and μ > 0. Set
C0 ¼ f(x0), Q0 ¼ 1 and k ¼ 0
2. If k∇f(xk)k is sufficiently small, then stop
3. Line-search update: Set xkþ1 ¼ xk þ αkdk, where αk satisfies either the nonmonotone Wolfe conditions:
or the nonmonotone Armijo conditions: αk ¼ αk βhk , where αk > 0 is the trial step and hk is the largest
integer such that (2.74) holds and αk μ
4. Choose ηk 2 [ηmin, ηmax] and set:
Qkþ1 ¼ ηkQk þ 1, (2.76)
Observe that Ckþ1 is a convex combination of Ck and f(xkþ1). Since C0 ¼ f(x0), it follows that
Ck is a convex combination of the function values f(x0), f(x1), . . ., f(xk). Parameter ηk controls the
degree of nonmonotonicity. If ηk ¼ 0 for all k, then this nonmonotone line-search reduces to the
monotone Wolfe or Armijo line-search. If ηk ¼ 1 for all k, then Ck ¼ Ak, where
1 X
n
Ak ¼ f ðxi Þ:
k þ 1 i¼0
Theorem 2.21 If ∇f(xk)Tdk 0 for each k, then, for the iterates generated by the nonmonotone line-
search of Zhang and Hager, we have f(xk) Ck Ak for each k. Moreover, if ∇f(xk)Tdk < 0 and f(x) is
bounded from below, then there exists αk satisfying either the Wolfe or the Armijo conditions of the
line-search update. ♦
Theorem 2.22 Suppose that f is bounded from below and there exist the positive constants c1 and c2
such that ∇f(xk)Tdk c1kgkk2 and kdkk c2kgkk for all sufficiently large k. Then, under the weak
Wolfe line-search, if ∇f is Lipschitz continuous, then the iterates xk generated by the nonmonotone
line-search of Zhang and Hager have the property that liminfk!1k∇f(xk)k ¼ 0. Moreover, if ηmax < 1,
then limk!1 ∇ f(xk) ¼ 0. ♦
The numerical results reported by Zhang and Hager (2004) showed that this nonmonotone line-
search is superior to the nonmonotone technique (2.73).
where
D0 ¼ f ðx0 Þ, k ¼ 0,
ð2:79Þ
Dk ¼ θk Dk1 þ ð1 θk Þf ðxk Þ, k 1,
with 0 θk θmax < 1 and ρ 2 (0, 1). The theoretical and numerical results reported by Gu and Mo
(2008) in the frame of the trust-region method showed the efficiency of this nonmonotone line-search
scheme.
1. Choose 0 ηmin ηmax < 1 < β, δmax < 1, 0 < δmin < (1 ηmax)δmax, the convergence tolerance ε > 0 small
enough and μ > 0
2. If kgkk ε, then the algorithm stops
3. Choose ηk 2 [ηmin, ηmax]. Compute Qkþ1 and Ckþ1 by (2.76) and (2.77), respectively. Choose
δmin δk δmax/Qkþ1. Let αk ¼ αk βhk μ be a stepsize satisfying
Ckþ1 ¼ ηk Qk Ck þf
Q
ðxk þαk d k Þ
Ck þ δk αk gTk d k , (2.80)
kþ1
where hk is the largest integer such that (2.80) holds and Qk, Ck, Qkþ1 and Ckþ1 are computed as in the
nonmonotone line-search of Zhang and Hager
4. Set xkþ1 ¼ xk þ αkdk. Set k ¼ k þ 1 and go to step 2 ♦
2.5 Inexact Line-Search Methods 51
If the minimizing function f is continuously differentiable and if gTk dk 0 for each k, then there
exists a trial step αk such that (2.80) holds. The convergence of this nonmonotone line-search is
obtained under the same conditions as in Theorem 2.22. The r-linear convergence is proved for
strongly convex functions.
where Dk is defined by (2.79) and dk is a descent direction, i.e., gTk dk < 0: Observe that if ρ2 ¼ 0 and
sk s for all k, then the nonmonotone line-search (2.81) reduces to the nonmonotone line-search
(2.78). The algorithm corresponding to this nonmonotone line-search presented by Ou and Liu is as
follows:
1. Consider a starting guess x0 and select the parameters: convergence tolerance ε 0, 0 < τ < 1, ρ1 2 (0, 1),
ρ2 > 0, β 2 (0, 1) and an integer m > 0. Set k ¼ 0
2. If kgkk ε, then stop
3. Compute the direction dk by the following recursive formula:
gk , if k m,
dk ¼ P (2.82)
λk gk mi¼1 λki d ki if k m þ 1,
where
kgk k2
λki ¼ mτ kgk k2 þjgTk dki j
, i ¼ 1, . . . , m,
Pm
λk ¼ 1 i¼1 λki
4. Using the above procedure, determine the stepsize αk satisfying (2.82) and set xkþ1 ¼ xk þ αkdk
5. Set k ¼ k þ 1 and go to step 2 ♦
The algorithm has the following interesting properties. For any k 0, it follows that
ð1 τÞkgk k2 : For any k m, it follows that kdk k max fkgk k, kd ki kg: Moreover, for
gTk dk
n o 1im
any k 0, kd k k max gj :
0jk
Theorem 2.23 If the objective function is bounded from below on the level set S ¼ {x 2 ℝn : f(x) f(x0)}
and the gradient ∇f(x) is Lipschitz continuous on an open convex set that contains S, then Algorithm
2.9 terminates in a finite number of iterates. Moreover, if the algorithm generates an infinite sequence
{xk}, then limk!þ1kgkk ¼ 0. ♦
The numerical results presented by Ou and Liu (2017) showed that this method is suitable for
solving large-scale unconstrained optimization problems and is more stable than other similar
methods.
52 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
high
1. Choose αk > 0 and set αlow k ¼ αk ¼0
2. If αk satisfies (2.54), then go to Step 4
3. Else (if αk does not satisfy (2.54)), then set: αk
high
¼ αk and αk ¼ αlow
high
k þ αk =2 and go to Step 2
4. If αk satisfies (2.59), then stop
5. Otherwise (if αk does not satisfy (2.59)), then set: αlow
k ¼ αk and
8
< 2αlow
k , if αhigh ¼ 0,
αk ¼ k
: αlow
k þ αhigh
k =2, if αhigh
k > 0,
and go to Step 2 ♦
Let us prove that the above Algorithm 2.10 determines a value for αk which satisfies both Wolfe
line-search conditions (2.54) and (2.59) in a finite number of steps.
Theorem 2.24 Suppose that function f is continuously differentiable on ℝn and bounded from below
on the half-line {xk þ αdk : α > 0}. Then, Algorithm 2.10 terminates in finite time and generates a
value for αk that satisfies the weak Wolfe conditions (2.54) and (2.59).
Proof Let us define φ(α) ¼ f(xk þ αdk) and introduce the following two sets:
S1 ¼ fα > 0 : ð2:54Þ holdsg,
S2 ¼ fα > 0 : ð2:59Þ holdsg:
Observe that both S1 and S2 are closed in ℝ+. Moreover, for α sufficiently small since φ0 is
continuous and ρ < 1,
ðα ðα
φðαÞ ¼ φð0Þ þ φ ðτÞdτ < φð0Þ þ ρφ0 ð0Þdτ:
0
0 0
Therefore, there exists δ1 > 0 such that [0, δ1] ⊂ S1, i.e., there exists α > 0 satisfying the first
Wolfe condition (2.54). Now, consider the second Wolfe condition (2.59). Let α > 0 and two
n o n o
low,½i high,½i
sequences αk ⊂ S1 and αk ⊂ S2 be such that
ℕ ℕ
low,½i low,½i
αk < α for any i 2 ℕ, αk ! α, ð2:83Þ
i!1
high,½i high,½i
αk >α for any i 2 ℕ, αk ! α: ð2:84Þ
i!1
2.5 Inexact Line-Search Methods 53
high,½i
But, since αk converges to α from the right, it follows that there exists an index j large enough
high,½j high,½j
so that αk 2 ½α, α þ δ2 , thus contradicting the assumption that αk 2 S1 : Therefore, α 2 S2.
Now, let us prove that the algorithm terminates in finite time. If the algorithm terminates in finite
time, then αk generated by it satisfies both weak Wolfe line-search conditions. For this, let us define
low,½i high,½i ½i high
αk , αk , and αk as the values of αlow
k , αk , and αk at the beginning of the iteration i of the
algorithm. The following properties can be observed:
Observe that this is a very simple procedure for computing a value of αk which satisfies the weak
Wolfe line-search conditions (2.54) and (2.59) without any safeguarding to the too large or too small
values of αk.
T
min ksk Dk yk k or as solution of min D1
k sk yk : In the first case, αk ¼ sk yk =kyk k and in the
2
αk αk
second one, αk ¼ ksk k2 = sTk yk , where sk ¼ xkþ1 xk and yk ¼ gkþ1 gk. Barzilai and Borwein
proved that their algorithm is super-linearly convergent. Many researchers studied the Barzilai and
Borwein algorithm, including Raydan (1997), Grippo and Sciandrone (2002), Dai, Hager,
Schittkowski, and Zhang (2006), Dai and Liao (2002), Narushima, Wakamatsu, and Yabe, (2008),
Liu and Liu (2019), etc.
The nonmonotone line-search methods were investigated by many authors; for example, see Dai
(2002b) and the references therein. Observe that all these nonmonotone line-searches concentrate on
modifying the first Wolfe condition (2.54). Also the approximate Wolfe line-search (2.67) of Hager
and Zhang and the improved Wolfe line-search (2.72) and (2.59) of Dai and Kou modify the first
Wolfe condition, responsible for a sufficient reduction of the objective function value. No numerical
comparisons among the abovementioned nonmonotone line-searches were given.
As regards the stopping of the iterative scheme (2.4), one of the most popular criteria is kgkk ε,
where ε is a small positive constant and k.k is the Euclidian or l1 norm.
In this section we present the convergence of the general algorithm for unconstrained optimization
with inexact line-search, i.e., Algorithm 2.1, in which the stepsize is computed by using the inexact
line-searches. For this, the quality of the search direction needs to be studied. The quality of the search
direction is defined by the angle between the search direction and the negative gradient. In order to
ensure the convergence of Algorithm 2.1, the situations in which the search direction sk ¼ αkdk
is orthogonal to the negative gradient must be avoided. In other words, the angle θk between sk
and ∇ f(xk) is uniformly bounded away from 90 , i.e., for any k:
π
θk μ, ð2:85Þ
2
where μ > 0. The inequality (2.85) is called angle condition. Consider gk ¼ ∇ f(xk), then the angle
θk 2 [0, π/2] is defined as
gTk sk
cos θk ¼ : ð2:86Þ
kgk kksk k
Observe that all the procedures for the stepsize computation (except for the Barzilai-Borwein) are
based on the Armijo condition (2.51) or on the Wolfe condition (2.54) and (2.59). Therefore, the
convergence analysis of Algorithm 2.1 with inexact line-search will be separately presented for the
Armijo line-search and for the Wolfe line-search. The following theorem shows the convergence of
Algorithm 2.1 in which the stepsize is computed by using the Armijo line-search (2.51) (Griva, Nash,
and Sofer, 2009).
Theorem 2.25 Let f be a real-valued function continuously differentiable on ℝn. Let x0 be the initial
point and consider the sequence {xk}, defined by xkþ1 ¼ xk þ αkdk, where αk 0 is the stepsize, a
scalar, and dk is the search direction, a vector of dimension n. Assume that:
dTk ∇f ðxk Þ
ε > 0:
kdk kk∇f ðxk Þk
kd k k mk∇f ðxk Þk
kd k k M
for all k.
(v) The stepsize αk satisfies the Armijo line-search
Then,
Proof Before presenting the proof, some comments are needed. Observe that the above theorem
makes several assumptions to guarantee the convergence of Algorithm 2.1 with Armijo line-search.
Two of them refer to the minimizing function: to have a bounded level set and its gradient to be
Lipschitz continuous. The other three assumptions refer to the algorithm: the search direction has to
satisfy the sufficient descent condition and is gradient related, and the stepsize has to satisfy the
Armijo line-search.
The boundedness of the level set ensures that the function takes on its minimum value in a finite
point. The Lipschitz continuity of the gradient of f is a technical assumption.
The search direction must first of all be a descent direction, that is, dTk ∇f ðxk Þ < 0: However, the
danger is that dk satisfying dTk ∇f ðxk Þ < 0 might become arbitrarily close to being orthogonal to ∇f(xk)
while still remaining a descent direction, thus dramatically slowing down the convergence of the
algorithm. To avoid this situation, we assume that
dTk ∇f ðxk Þ
ε > 0,
kdk kk∇f ðxk Þk
for all k, where ε > 0 is a specified tolerance. From (2.86), this condition can also be written as
cos θk ε > 0,
where θk is the angle between the search direction dk and the negative gradient ∇ f(xk). In other
words, the search direction satisfies the angle condition.
The search directions dk are gradient related if kdkk mk∇f(xk)k for all k, where m > 0 is a
constant. In other words, this condition says that the norm of the search direction cannot become too
much smaller than that of the gradient.
56 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
These conditions on the search direction can normally be guaranteed by the algorithm for
minimizing function f.
Now, the assumptions that the stepsize produces a sufficient decrease in function f and it is not too
small are ensured by the Armijo line-search. This ensures a nontrivial reduction in the function value
at each iteration. Nontrivial is measured in terms of the Taylor series. More specifically, we require
that the stepsize αk should produce a decrease in the function value that is at least a certain fraction of
the decrease predicted by the linear approximation given by the Taylor series, i.e.,
where 0 < ρ < 1. When ρ is near zero, this condition is easier to satisfy since only a small decrease in
the function value is required. (Usually, ρ ¼ 0.0001.)
With these comments, let us prove the theorem. The proof has five steps. Firstly, it is shown that
f is bounded from below on S. Secondly, it is proved that limk ! 1f(xk) exists. Thirdly, we prove that
the following result limk!1αkk∇f(xk)k2 ¼ 0 holds. Then we show that if αk < 1, then αk γk∇f(xk)k2
for an appropriate constant γ > 0. Finally, it is proved that lim k∇f ðxk Þk ¼ 0:
k!1
1. f is bounded from below on S. Since f is continuous, it follows that the level set S is closed. But, by
the assumption (i), the set S is bounded. Therefore, S is a compact. A continuous function on a
compact set takes on its minimum value at some point in that set, that is, f(x) C, for some
constant C (see Theorem A3.1 – Weierstrass Extreme Value Theorem).
2. limk!1f(xk) exists. The sufficient descent condition ensures that f(xkþ1) f(xk) f(x0) so that
xk 2 S for all k. The sequence {f(xk)} is monotone decreasing and bounded from below, so it has a
limit, let us say f :
3. limk!1αkk∇f(xk)k2 ¼ 0. We have
Since f ðx0 Þ f f ðx0 Þ C < 1 it follows that the above final summation is convergent, that is,
the terms in this summation go to zero:
4. If αk < 1, then αk γk∇f(xk)k2 for an appropriate constant γ. To prove this, we use the backtracking
line-search. If αk < 1, then the sufficient descent condition is violated when the stepsize 2αk is tried,
that is,
1
f ðxk þ 2αk dk Þ f ðxk Þ 2αk dTk ∇f ðxk Þ Lk2αk dk k2 :
2
That is,
Combining this inequality with the violated condition when the stepsize was 2αk, it follows that
The sufficient descent condition (iii) and the gradient relatedness condition (iv) give
n o
αk min 1, γ k∇f ðxk Þk2 :
Hence,
h n oi
αk k∇f ðxk Þk2 min 1, γ k∇f ðxk Þk2 k∇f ðxk Þk2 0:
But, from step 3 above we know that limk!1αkk∇f(xk)k2 ¼ 0. Since γ > 0, it follows that
limk!1k∇f(xk)k ¼ 0. ♦
Now, we come back to see the convergence of Algorithm 2.1 in which the stepsize is determined
by the Wolfe line-search (2.54) and (2.59). Let us show a very useful result, due to Zoutendijk (1970).
From the proof of this result, we can get a clear idea how the properties of the minimizing function are
linked to the Wolfe conditions.
Theorem 2.26 Suppose that function f is bounded from below on ℝn and it is continuous differen-
tiable in a neighborhood N of the level set S ¼ {x 2 ℝn : f(x) f(x0)}. Suppose that the gradient g(x)
of f is Lipschitz continuous, i.e., there exists a positive constant L > 0 such that
for any x, y 2 N. Consider an iteration xkþ1 ¼ xk þ αkdk, where dk is a descent direction and αk
satisfies the weak Wolfe line-search (2.54) and (2.59). Then
X
cos 2 θk kgk k2 < 1: ð2:88Þ
k1
58 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Now, from the first Wolfe condition (2.54) and (2.89), it follows that
2
σ 1 gTk d k
f ðxkþ1 Þ f ðxk Þ þ ρ :
L kd k k2
where c ¼ ρ(σ 1)/L. Summing these relations for k 1 and since function f is bounded from below,
we get the conclusion of the theorem. ♦
The relation (2.88) is called Zoutendijk condition (Zoutendijk, 1970). It is worth mentioning that
this condition is directly involved in proving the global convergence of the general Algorithm 2.1. As
we can see, if for any k the iterations xkþ1 ¼ xk þ αkdk are in such a way that cosθk δ > 0, then from
(2.88) we get limk!1kgkk ¼ 0. In other words, if the search direction does not tend to be orthogonal
to the gradient, then the sequence of the gradients is convergent to zero. Observe that the Zoutendijk
condition is a condition on the search direction. If, for example, the search direction is exactly gk,
i.e., the steepest descent algorithm introduced for the first time by Cauchy (1847), then cosθk ¼ 1.
This shows that, in order to obtain the global convergence of the Cauchy algorithm, we need to
execute an adequate line-search. This proves the importance of the line-search in the frame of the
general Algorithm 2.1 with descent directions.
In this context, the following corollary of the Zoutendijk condition can be proved.
If cosθk δ > 0 for all k, then, from the Zoutendijk condition, it follows that k∇f(xk)k ! 0, i.e., the
general Algorithm 2.1 with weak Wolfe line-search converges to a stationary point of function f.
The limit limk!1kgkk ¼ 0 is the best global convergence result we may obtain. Obviously, there is
no guarantee that the algorithm converges to the minimum point. However, there is a guarantee that
the iterates of the algorithm enter in a domain of attraction of the stationary points.
The following theorem shows the global convergence of Algorithm 2.1 with inexact line-search.
2.6 Convergence of the Algorithm with Inexact Line-Search 59
Theorem 2.27 Suppose that in Algorithm 2.1 the search direction dk satisfies the angle
condition (2.85) and αk is computed by the Goldstein conditions (2.54) and (2.55) or by the weak
Wolfe conditions (2.54) and (2.59). If ∇f(x) exists and is uniformly continuous on the level set
S ¼ {x 2 ℝn : f(x) f(x0)}, then ∇f(xk) ¼ 0 for a k or f(xk) ! 1 or ∇f(xk) ! 0.
Proof Firstly, consider αk computed by the Goldstein conditions (2.54) and (2.55). Suppose that for
all k, gk ¼ ∇ f(xk) 6¼ 0 and f(xk) is bounded from below. It follows that f(xk) f(xkþ1) ! 0, that is, from
(2.54) we have gTk sk ! 0. Now, suppose that gk ! 0 is not true. Then, there exists a subsequence
such that kgkk ε and kskk ! 0. Since θk π/2 μ, we get
π
cos θk cos μ ¼ sin μ,
2
i.e.,
where ξk is on the line segment connecting xk with xkþ1. From the uniform continuity it follows that
∇f(ξk) ! gk when sk ! 0. Therefore,
Hence,
f ðxk Þ f ðxkþ1 Þ
! 1,
gTk sk
which contradicts the second Goldstein condition (2.55). Therefore, gk ! 0, thus proving the global
convergence when αk is determined by the Goldstein conditions.
The global convergence for the case in which the stepsize is computed by the weak Wolfe
conditions is proved similarly. Observe that from the uniform continuity of ∇f(x), it follows that
such that
gTkþ1 dk
! 1:
gTk dk
But, this contradicts the relation gTkþ1 d k =gTk dk σ < 1 from (2.59). Therefore, gk ! 0, thus
proving the global convergence when αk is determined by the Wolfe conditions. ♦
The convergence of the general unconstrained optimization Algorithm 2.1 with weak Wolfe
inexact line-search is presented in the next theorem. Mainly, it is proved that the sequence generated
by the algorithm satisfies the Zoutendijk condition.
determined by the weak Wolfe conditions (2.54) and (2.59). Then the sequence generated by
Algorithm 2.1 satisfies
∇f ðxk ÞT sk
lim ¼ 0, ð2:90Þ
k!þ1 ks k k
i.e.,
Proof Since ∇f(xk)Tsk < 0 and f is bounded from below, it follows that the sequence {xk} is well
defined and {xk} ⊂ S. Moreover, since {f(xk)} is a decreasing sequence, then it is convergent.
We prove (2.90) by contradiction. Suppose that (2.90) is not true. Then, there exists an ε > 0 and a
subsequence indexed after the set of indices K such that for any k 2 K
∇f ðxk ÞT sk
ε:
ks k k
Since {f(xk)} is convergent, it follows that the sequence {sk : k 2 K} is also convergent to zero. On
the other hand, from (2.59), for any k 0 we have
ð1 σ Þ ∇f ðxk ÞT sk ð∇f ðxk þ sk Þ ∇f ðxk ÞÞT sk :
∇f ðxk ÞT sk 1
ε k∇f ðxk þ sk Þ ∇f ðxk Þk: ð2:92Þ
ks k k 1σ
Since we proved that {sk : k 2 K} ! 0, it follows that the right hand side of (2.92) tends to zero
by the uniform continuity of ∇f on set S. But this is a contradiction which actually proves
the theorem. ♦
Observe that (2.90) involves k∇f(xk)k cos θk ! 0, which is exactly the Zoutendijk condition
expressed in (2.88) in another form. The importance of the Zoutendijk condition is if cosθk δ > 0,
then limk!1k∇f(xk)k ¼ 0. If the hypothesis of uniform continuity is replaced with the Lipschitz
condition of the gradient, then another result on the convergence of Algorithm 2.1 with inexact weak
Wolfe line-search is obtained. But, before proving such a result, let us develop a technical result
which gives a bound of the reduction of the values of the minimizing function f.
f ðxk Þ f ðxk þ αk dk Þ γ k∇f ðxk Þk2 cos 2 hdk , ∇f ðxk Þi, ð2:93Þ
i.e.,
1σ
αk kdk k kd kk∇f ðxk Þk cos hd k , ∇f ðxk Þi
Lkdk k k
1σ
¼ k∇f ðxk Þk cos hdk , ∇f ðxk Þi:
L
Now, using (2.54) it follows that
Theorem 2.29 Let f(x) be a continuously differentiable function on ℝn for which its gradient ∇f(x)
satisfies the Lipschitz condition k∇f( y) ∇ f(x)k Lky xk, where L > 0 is a constant. Let αk be the
stepsize computed by the weak Wolfe conditions (2.54) and (2.59). If the angle condition (2.85) is
satisfied, then, for the sequence {xk} generated by Algorithm 2.1, ∇f(xk) ¼ 0 for a k or f(xk) ! 1 or
∇f(xk) ! 0.
Proof Suppose that for any k, ∇f(xk) 6¼ 0. From Proposition 2.6 it follows that
where γ ¼ ρ(1 σ)/L is a positive constant independent of k. Then, for any k > 0 we can write
X
k1 X
k1
f ðx0 Þ f ðxk Þ ¼ ðf ðxi Þ f ðxiþ1 Þ γ min k∇f ðxi Þk2 cos 2 θi : ð2:94Þ
0ik
i¼0 i¼0
The above theorem is a direct consequence of the Zoutendijk and of the angle conditions.
Moreover, all these results have been obtained in mild conditions: function f is continuously
differentiable and its gradient ∇f(x) is Lipschitz continuous.
62 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
In the following, we point out a result on the reduction of the values of the minimizing function in
conditions in which it is uniformly convex. At every iteration Proposition 2.6 gives a bound of the
reduction of a general function with the gradient Lipschitz continuous. The estimation (2.93) is
expressed in terms of the Zoutendijk condition. Uniform convexity leads us to a new estimation
which depends on the bounds of the Hessian of the minimizing function. As it is known, a function
f(x) is uniformly convex (or strong convex) if there exists a constant η > 0 such that
Theorem 2.30 Let f(x) be a uniformly convex function and Algorithm 2.1 in which αk satisfies (2.54).
Then
ρη
f ðxk Þ f ðxk þ αk dk Þ pffiffiffiffiffiffiffiffiffiffi kαk d k k2 : ð2:97Þ
1 þ M=m
(ii) Suppose that dTk ∇f ðxk þ αk dk Þ > 0. Then there exists 0 < α < αk such that
dTk ∇f ðxk þ α d k Þ ¼ 0:
1
f ðxk þ αk d k Þ f ðxk þ α dk Þ mkðαk α Þdk k2 : ð2:99Þ
2
Since f(xk þ αkdk) < f(xk), from (2.98) and (2.99) it follows that
rffiffiffiffiffi!
M
αk 1 þ α :
m
Therefore,
The convergence of the general unconstrained optimization algorithm with inexact line-search
presented in this section is based on the descent condition ∇f(xk)Tdk < 0 and on the hypothesis that the
search direction dk is bounded in norm away from zero. Moreover, the convergence is proved by
assuming that the minimizing function f is at least twice continuously differentiable and its gradient is
Lipschitz continuous. Therefore, for smooth enough functions, as we can find in real optimization
applications, the above results ensure the convergence of Algorithm 2.1 with inexact line-search.
In the following, we consider another approach of the convergence of Algorithm 2.1 with inexact
line-search for uniformly (strong) convex functions when the search direction satisfies a sufficient
descent condition (Shi, 2004). Indeed, let us assume that the search direction dk satisfies the sufficient
descent condition
(i) function f is bounded from below on the level set S ¼ {x 2 ℝn : f(x) f(x0)}, where x0 2 ℝn is the
initial point,
(ii) the gradient g(x) ¼ ∇ f(x) is Lipschitz continuous on a convex set N which includes S, i.e.
there exists L > 0 such that kg(x) g( y)k Lkx yk, for any x, y 2 N,
(iii) dk is a descent direction which satisfies gTk dk < 0,
then the general unconstrained optimization Algorithm 2.1 with inexact line-searches given by
Armijo, Goldstein, the weak Wolfe, or the strong Wolfe generates an infinite sequence {xk} that
satisfies the Zoutendijk condition
T 2
gk dk
lim ¼ 0: ð2:101Þ
k!1 kd k k
Proof For the algorithm of Armijo with inexact line-search (2.51) let K1 ¼ {k : αk ¼ τk} and
K2 ¼ {k : αk < τk}. Then, from (2.51) it follows that
64 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
By the mean value theorem applied to the left side member of the above inequality, there exists a
θk 2 [0, 1] such that
From (ii) and from the Cauchy-Schwarz inequality, it follows that for any k 2 K2
βð1 ρÞgTk dk
αk :
Lkdk k2
If we set η ¼ min {ρ, βρ(1 ρ)/L}, then, from the above relations we get
T 2
gk dk
f ðxk Þ f ðxk þ αk dk Þ η :
kd k k
From (i) we get (2.101), since the search direction is a descent one.
For the algorithm of Goldstein (2.55), by using the mean value theorem as well as the Cauchy-
Schwarz inequality, it follows that there exists θk 2 [0, 1], such that
Therefore,
2.6 Convergence of the Algorithm with Inexact Line-Search 65
!
ρ gTk d k
αk :
L kd k k2
Therefore, from (i) it follows that the relation (2.101) is true for Algorithm 2.1 with Goldstein
inexact line-search.
For the general algorithm with weak Wolfe inexact line-search, from (ii), from (2.59) and from the
Cauchy-Schwarz inequality we get
Therefore,
!
1 σ gTk dk
αk :
L kd k k2
Therefore, from (ii) it follows that (2.101) is also true for Algorithm 2.1 with inexact weak Wolfe
line-search. ♦
In conclusion, for the inexact line-search procedures of Armijo, Goldstein, and Wolfe, we proved
that
where η0 > 0. These two results are very important and are to be used in proving the convergence
of the general Algorithm 2.1.
In order to establish the convergence of Algorithm 2.1, in the following we shall consider the class
of strongly convex functions. We mention that the strongly convex functions represent a natural class
of functions with very good properties that may be used to prove convergence theorems. If f is twice
continuously differentiable and strongly convex on ℝn, then the hypotheses (i) and (ii) of Theorem
2.31 are satisfied, f(x) has an unique minimum point x, and there exist the constants 0 < m M such
that for any x, y 2 ℝn
66 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
1 1
mkx x k2 f ðxÞ f ðx Þ Mkx x k2 , ð2:104Þ
2 2
i.e.,
From the Cauchy-Schwarz inequality and the mean value theorem applied to (2.106), we get
mkx x k k∇f ðxÞk Mkx x k: ð2:107Þ
Theorem 2.32 Suppose that f : ℝn ! ℝ is a strongly convex function, twice continuously differen-
tiable and
where 0 < τ 1, then the general Algorithm 2.1 with inexact line-search procedures of Armijo,
Goldstein, and weak Wolfe generates an infinite sequence {xk} such that
Proof Since f is strongly convex, it follows that there exist the constants 0 < m M such that for any
x 2 ℝn
Mkx x k k∇f ðxÞk mkx x k:
From (2.105) observe that m L. From (2.102), by using the new descendent condition (2.108),
we can write
T 2 T 2
g d g d
f ðxk Þ f ðxk þ αk d k Þ η0 kdkk kk ¼ η0 kdk kkkgk k kgk k2
k
2
η0 τ kgk k η0 τ m kxk x k2 η0 τ2 m2 ðf ðxk Þ f ðx ÞÞ:
2 2 2 2
M
Denote:
rffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
η τ 2 m2 pffiffiffiffiffiffiffiffiffiffiffiffiffi
γ¼ 2 0 and ζ ¼ 1 γ 2 :
M
Hence
Now, let us prove that for the Armijo, Goldstein, and weak Wolfe inexact line-search, γ 1.
For the Armijo inexact line-search, since
2.6 Convergence of the Algorithm with Inexact Line-Search 67
it follows that
η0 τ2 m2 2ρ2 τ2 m2 ρτ2 m
γ2 ¼ 2 ¼ τ2 ρ < 1:
M LM M
For the weak Wolfe inexact line-search, η0 ¼ ρ(1 σ)/L, and therefore
or
But,
2 2
kx k x k2 ðf ðxk Þ f ðx ÞÞ ζ 2k ðf ðx0 Þ f ðx ÞÞ
m m
2ðf ðx0 Þ f ðx ÞÞ 2k
¼ ζ ¼ ω2 ζ 2k ,
m
where
2ð f ð x 0 Þ f ð x Þ Þ
ω2 ¼ :
m
Therefore, kxk xk ωζ k, thus establishing the linear convergence of the sequence {xk}
to x. ♦
The above theorem shows that for strongly convex continuously differentiable functions, if the
search direction dk satisfies the descent condition (2.108), then the general unconstrained optimiza-
tion algorithm with inexact line-search procedures of Armijo, Goldstein, and Wolfe for minimizing
the function f is convergent in the sense of (2.109). It is possible to prove that the theorem is
also true in case in which the condition (2.108) is replaced by the sufficient descent condition
gTk dk c kgk k2 , where c is a positive constant.
68 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
For the stepsize computation, the most used algorithms are based on the inexact line-search. In these
algorithms αk is computed to approximately minimize f along the ray {xk þ αdk : α 0} or at least to
sufficiently reduce f. Plenty of inexact line-search procedures were proposed: Goldstein (1965),
Armijo (1966), Wolfe (1969, 1971), Powell (1976), Dennis and Schnabel (1983), Fletcher (1987),
Potra and Shi (1995), Lemaréchal (1981), Shanno (1983), Moré and Thuente (1990), Hager and
Zhang (2005), and many others.
Any line-search procedure requires an initial estimate α0 of the stepsize and generates a sequence
{αk} that converges to a stepsize satisfying the conditions imposed by the user (e.g., Armijo,
Goldstein, Wolfe, etc.), or it informs that such a stepsize does not exist. Mainly, line-search
procedures have two phases: a bracketing phase that finds an interval [a, b] containing an acceptable
value for the stepsize and a selection phase that locates the final stepsize. The selection phase reduces
the bracketing interval during the search and usually interpolates some values of the function and its
gradient obtained from the earlier steps of searching in order to guess the location of the minimum.
In the following, we shall present three implementations of the inexact line-search: backtracking
(Armijo), the Wolfe line-search with simple bisection, and the Wolfe line-search with safeguarding
and cubic interpolation. They enable the reader to see the subtlety and refinement of the implemen-
tation in the computing programs of line-search algorithms.
1. Backtracking (Armijo’s line-search). Figure 2.1 presents a Fortran implementation of the Armijo
line-search.
The Armijo line-search with backtracking is not efficient and robust for solving large-scale
unconstrained optimization problems. This was introduced here just to show that it is an important
component of the Wolfe line-search conditions. The Armijo line-search does not guarantee reason-
able progress of the line-search. Theorem 2.15 only shows that (2.52) is always satisfied for
sufficiently small αk, provided that dk is a descent direction, but we are not sure that αk becomes
unacceptably small. In order to avoid such cases, the curvature condition has to be introduced.
2. Wolfe line-search with simple bisection. Figure 2.2 presents a Fortran implementation of the Wolfe
line-search with simple bisection. This is a simple procedure for computing a value of αk which
satisfies the Wolfe line-search conditions (2.54) and (2.59) without any safeguarding against the
too large or too small values of αk.
3. Wolfe line-search with safeguarding and cubic interpolation. This is a variant of a line-search
procedure which is simple enough to generate safeguarded stepsizes satisfying the Wolfe
conditions (2.54) and (2.59) (proposed by Shanno, (1983), with minor modifications by Andrei,
1995). Suppose that we are at the iteration k. In order to have a simple interpretation of the
procedure and a clear description, a Fortran version of it is presented in Fig. 2.3.
The inputs of this procedure are n the number of variables, x ¼ xk a vector with the current values
of variables, f ¼ f(xk) the value of the minimizing function in x, d ¼ dk the current search direction,
gtd ¼ ∇ f(xk)Tdk the scalar product of the current gradient and the search direction, and dnorm ¼ kdkk
the l2-norm of the search direction. The outputs of the procedure are alpha ¼ αk the stepsize satisfying
the Wolfe line-search conditions, xnew ¼ xkþ1 ¼ xk þ αkdk the new point, fnew ¼ f(xkþ1) the function
value in the new point, gnew ¼ ∇ f(xkþ1) the gradient of the minimizing function in the new point,
2.7 Three Fortran Implementations of the Inexact Line-Search 69
fgcnt the number of function and its gradient calls, lscnt indicates that the line-search procedure
performed a number of iterations, and lsflag indicates that the number of iterations in the line-search
procedure is greater than a prespecified threshold.
In Fig. 2.3, maxls is the maximum number of iterations in the line-search procedure, epsm is the
epsilon machine, and evalfg(n,xnew,fnew,gnew) is the subroutine that implements the
algebraic expressions of the minimizing function and its gradient. In the input, this subroutine has
n as the number of variables and xnew as the new point. In the output, it computes fnew as the value
of function f in the new point and gnew as the gradient of f in the new point.
We can see that a line-search procedure is complicated. To be reliable, it must incorporate a lot of
features. Firstly, observe that the Wolfe conditions are implemented in a complicated form, which
takes into consideration both the ratio between the rate of the decrease of f in the direction dk at the
new point and the rate of the decrease in the direction dk at the current point xk. It also takes some
precautions to avoid too small or too large values of the stepsize. Observe that in the selection phase
of the procedure, the cubic interpolation is used. The cubic interpolation provides a good model for
the minimizing function in the searching interval. Suppose we have an interval a, b containing the
desirable stepsize and two previous stepsizes estimates αi1 and αi in this interval. A cubic function is
used to interpolate the values, φk(αi1), φk(αi), φ0k ðαi1 Þ, and φ0k ðαi Þ, where φk(α) ¼ f(xk þ αdk).
Bulirsch and Stoer (1980) proved that such a cubic function always exists and is unique. The
minimizer of this cubic function in a, b , that is, a new estimation of the stepsize, is either at one
of the endpoints or in the interior, case in which it is given by
*
Subroutine back(n,x,d,fx,gtd,rho,sigma, alpha,xnew,fxnew,gradnew,
* fgcnt,lscnt, nexp)
*-----------------------------------------------------------------------.
* Subroutine back implements the backtracking algorithm. (Armijo)
*
* Input parameters:
* =================
* n (integer) the number of variables in the function to be
* minimized.
* x (double) vector containing the current estimation to the
* minimizer.
* d (double) vector containing the current searching direction.
* fx (double) function value in the current point.
* gtd (double) scalar product: (gradient)T * direction.
* rho (double) rho parameter in backtracking.
* sigma(double) parameter for reducing in backtracking.
* nexp (integer) the number of the numerical experiment.
*
* Output parameters:
* ==================
* alpha (double) steplength satisfying the backtracking condition.
* xnew (double) vector containing the new estimation to the minimum
* of function: xnew(i) = x(i) + alpha*d(i).
* fxnew (double) function value in xnew.
* gradnew (double) the gradient in xnew.
* fgcnt (integer) the number of function and its gradient evaluations.
* lscnt (integer) the number of linear seaching.
*
* Calling subroutines:
* ====================
* call evalfg(n,x,f,g)
* This is a user supplied subroutine which calculates the function and
* its gradient at x and places them in f and g respectively.
*
* Remark:
Fig. 2.1 Subroutine back which implements backtracking (Armijo)
70 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
* =======
* Usually, the subroutine back is called with the following values of
* rho and sigma parameters: rho = 0.0001 and sigma = 0.8.
* These values do not have a significative influence on the performances
* of the searching subroutine.
*-----------------------------------------------------------------------.
do i=1,n
xnew(i) = x(i) + alpha*d(i)
end do
c2 -------------------------------------------- ! function evaluation
call evalfg(n,xnew,fxnew,gradnew, nexp)
fgcnt = fgcnt + 1
return
end
Fig. 2.1 (continued)
φ0k ðαi Þ þ b a
αiþ1 ¼ αi ðαi αi1 Þ , ð2:111Þ
φ0k ðαi Þ φ0k ðαi1 Þ þ 2b
where
φk ðαi1 Þ φk ðαi Þ
a ¼ φ0k ðαi1 Þ þ φ0k ðαi Þ 3 , ð2:112Þ
αi1 αi
1=2
b ¼ a2 φ0k ðαi1 Þφ0k ðαi Þ : ð2:113Þ
In Fig. 2.3 the new estimate αiþ1 is computed as alphatemp. The interpolation process can be
repeated by discarding the data at one of the stepsizes αi1 or αi and replacing it by φk(αiþ1) and
φ0k ðαiþ1 Þ: Observe that the interpolation step that determines a new estimation to the stepsize is
2.7 Three Fortran Implementations of the Inexact Line-Search 71
*
subroutine LSbis(n,x,f,d,gtd,alpha,xnew,fnew,gnew,fgcnt, nexp)
*-----------------------------------------------------------------------.
* Subroutine LSbis implements the Wolfe line-search conditions with
* bisection.(Andrei)
*
* Input parameters:
* =================
* n (integer) the number of variables in the function to be
* minimized.
* x (double) vector containing the current estimation to the
* minimizer.
* f (double) the function value in current point.
* d double) vector containing the current searching direction.
* gtd (double) scalar product: (gradient)T * direction.
* nexp (integer) the number of the numerical experiment.
*
* Output parameters:
* ==================
* alpha (double) steplength satisfying the backtracking condition.
* xnew (double) vector containing the new estimation to the minimum
* of function: xnew(i) = x(i) + alpha*d(i).
* fxnew (double) function value in xnew.
* gnew (double) the gradient in xnew.
* fgcnt (integer) the number of function and gradient evaluations.
*
* Calling subroutines:
* ====================
* call evalfg(n,x,f,g)
* This is a user supplied subroutine which calculates the function and
* its gradient at x and places them in f and g respectively.
*
* Remark:
* =======
* The Wolfe line-search conditions use two parameters.In this subroutine
* these parameters are cw1=0.0001d0 used in the first Wolfe condition
* and cw2=0.8d0 used in the second Wolfe condition.
*-----------------------------------------------------------------------.
parameter(ia=50000)
double precision x(n), d(n), xnew(n), gnew(n)
double precision xtemp(ia), ftemp, gtemp(ia)
double precision f, fnew, gtd, gtd1
double precision alpha, alphalow, alphahigh
integer fgcnt, nexp, ils
c alpha = 1.d0
alphalow = 0.d0
alphahigh = 0.d0
cw1 = 0.0001d0
cw2 = 0.8d0
ils = 0
10 continue
ils = ils + 1
if(ils .gt. 20) return
do i=1,n
xtemp(i) = x(i) + alpha*d(i)
end do
call evalfg(n,xtemp,ftemp,gtemp, nexp)
fgcnt = fgcnt + 1
else
Fig. 2.2 Subroutine LSbis which generate stepsizes satisfying the weak Wolfe line-search with simple bisection
72 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
alphahigh = alpha
alpha = (alphalow + alphahigh)/2.d0
go to 10
end if
50 continue
gtd1 = 0.d0
do i=1,n
gtd1 = gtd1 + gtemp(i)*d(i)
end do
go to 10
100 continue
do i=1,n
xnew(i) = x(i) + alpha*d(i)
end do
return
end
*
subroutine wolfeLS (n,x,f,d,gtd,dnorm, alpha,xnew,fnew,gnew,
+ fgcnt,lscnt,lsflag, nexp)
*-----------------------------------------------------------------------.
* Subroutine wolfeLS implements the weak Wolfe line-search conditions.
*
C SCALAR ARGUMENTS
integer n,fgcnt,lscnt,lsflag
double precision f,gtd,dnorm,alpha,fnew
C ARRAY ARGUMENTS
double precision x(n),d(n),xnew(n),gnew(n)
C LOCAL SCALARS
integer i,lsiter
double precision alphap,alphatemp,fp,dp,gtdnew,a,b
lsflag = 0
* Maximum number of Line-Search is maxls (now=20)
maxls=20
Fig. 2.3 Subroutine wolfeLS which generate safeguarded stepsizes satisfying the inexact weak Wolfe line-search with
cubic interpolation
2.7 Three Fortran Implementations of the Inexact Line-Search 73
alphap = 0.0d0
fp = f
dp = gtd
do i = 1,n
xnew(i) = x(i) + alpha * d(i)
end do
c1 ---------------------------------------- ! function evaluation
call evalfg(n,xnew,fnew,gnew, nexp)
fgcnt = fgcnt + 1
gtdnew = 0.0d0
do i = 1,n
gtdnew = gtdnew + gnew(i) * d(i)
end do
lsiter = 0
* Thest whether the new point has a negative slope and a higher function
* value than that corresponding to alpha=0. In this case, the search has
* passed through a local max and is heading for a distant local minimum.
* Reduce alpha, compute the new corresponding point, its function value
* and gradient, as well as gtdnew.
* Repeat this test until a good point has been found.
do i = 1,n
xnew(i) = x(i) + alpha * d(i)
end do
c2 ------------------------------------------------ ! function evaluation
call evalfg(n,xnew,fnew,gnew, nexp)
fgcnt = fgcnt + 1
gtdnew = 0.0d0
do i = 1,n
gtdnew = gtdnew + gnew(i) * d(i)
end do
alphap = 0.0d0
fp = f
dp = gtd
goto 20
end if
else
* The trial point is too large, halve the smallest prior point.
end if
alphap = alpha
fp = fnew
dp = gtdnew
alpha = alphatemp
do i = 1,n
xnew(i) = x(i) + alpha * d(i)
end do
c3 ----------------------------------------------- ! function evaluation
call evalfg(n,xnew,fnew,gnew, nexp)
fgcnt = fgcnt + 1
gtdnew = 0.0d0
do i = 1,n
gtdnew = gtdnew + gnew(i) * d(i)
end do
lsiter = lsiter + 1
goto 10
safeguarded in order to ensure that the new stepsize is not too close to the endpoints of the interval.
Some more details may be found, for example, in (Dennis, & Schnabel, 1983), (Shanno, 1983), and
(Nocedal, & Wright, 2006).
As we have already seen, for the stepsize αk computation along the descent direction dk, there are a lot
of algorithms for which plenty of theoretical developments subject to their definition and conver-
gence were presented. The problem we face, problem which is one of the greatest provocations of any
theory, is that of its implementation in computer programs able to solve a large diversity of
optimization problems with different structures and complexities. Therefore, in the following, we
shall consider three line-search algorithms for the stepsize computation: backtracking (see subroutine
back in Fig. 2.1), the weak Wolfe line-search (Shanno-Phua) (Shanno, & Phua, 1976, 1980), (Shanno,
1983), (see subroutine WolfeLS in Fig. 2.3), and the strong Wolfe line-search (Moré-Thuente) (Moré,
& Thuente, 1992; Andrei, 2021b) (see subroutines MTlines in Andrei, 2021b, pp. 15–22). We want to
see their performances in the context of two unconstrained optimization algorithms: the steepest
descent and the Hestenes-Stiefel conjugate gradient. We mention that these unconstrained optimiza-
tion algorithms will be analyzed in Chaps. 3 and 5, respectively.
Firstly, let us consider the steepest descent algorithm equipped with the above three line-searches.
The search direction of the steepest descent is dk ¼ gk.
with the initial point x0 ¼ [1, 2, . . ., n], and n ¼ 100. The performances of the steepest descent
algorithm with the above three line-searches are presented in Table 2.1.
2 X
n1 2 2
f 2 ðxÞ ¼ 3x1 2x21 þ 3xi 2x2i xi1 2xiþ1 þ 1 þ 3xn 2x2n xn1 þ 1
i¼2
with the initial point x0 ¼ [1, 1, . . ., 1] and n ¼ 100, Table 2.2 shows the performances of the
steepest descent algorithm equipped with three line-searches.
X
n=2
2 2
f 3 ðxÞ ¼ ð1:5 x2i2 þ x2i1 x2i Þ2 þ 2:25 x2i1 þ x2i1 x22i þ 2:625 x2i1 þ x2i1 x32i
i¼1
with the initial point x0 ¼ [1, 0.8, . . ., 1, 0.8] and n ¼ 100. Table 2.3 presents the performances of the
steepest descent algorithm equipped with three line-searches.
76 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Table 2.1 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Steepest descent
algorithm. Function f1(x)
Table 2.2 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Steepest descent
algorithm. Function f2(x)
Table 2.3 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Steepest descent
algorithm. Function f3(x)
Table 2.4 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Hestenes-Stiefel
conjugate gradient algorithm. Function f1(x)
In the next numerical experiment, let us see the performances of the three line-search algorithms
for the stepsize αk computation (backtracking, weak Wolfe, strong Wolfe) in the context of the
Hestenes-Stiefel conjugate gradient algorithm. The search direction in this algorithm is computed as
dkþ1 ¼ gk þ βkdk, in which the conjugate gradient parameter βk is computed as βk ¼ gTkþ1 yk =yTk d k ,
where yk ¼ gkþ1 gk. The Hestenes-Stiefel conjugate gradient will be presented and analyzed in
Chap. 5.
Example 2.4 Table 2.4 shows the performances of the line-search algorithms, backtracking, weak
Wolfe, and strong Wolfe, for the minimization of function f1(x) presented in Example 2.1 with the
same initial point and n ¼ 10000 and using the Hestenes-Stiefel conjugate gradient algorithm.
2.8 Numerical Studies: Stepsize Computation 77
Table 2.5 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Hestenes-Stiefel
conjugate gradient algorithm. Function f2(x)
Table 2.6 Performances of the inexact line-searches: backtracking, weak Wolfe, and strong Wolfe. Hestenes-Stiefel
conjugate gradient algorithm. Function f3(x)
In the above tables: #iter represents the number of iterations to get a solution, #fg is the number of function and its
gradient evaluations, cpu(s) is the CPU computing time in seconds, f is the value of the minimizing function in the
minimum point, kgk is the norm of the gradient in the minimum point
Example 2.5 Table 2.5 shows the performances of the line-search algorithms, backtracking, weak
Wolfe, and strong Wolfe, for the minimization of function f2(x) given in Example 2.2 with the same
initial point and n ¼ 10000 and using the Hestenes-Stiefel conjugate gradient algorithm.
Example 2.6 Table 2.6 presents the performances of the line-search algorithms, backtracking, weak
Wolfe, and strong Wolfe, for the minimization of function f3(x) with n ¼ 10000 and using the
Hestenes-Stiefel conjugate gradient algorithm.
From the above tables we can see that the inexact weak and the inexact strong Wolfe line-searches
are the best line-search procedures for the stepsize computation. Observe that the weak Wolfe line-
search is more efficient than the strong Wolfe line-search. However, from this limited set of
numerical experiments, it cannot be concluded which version of the Wolfe line-search (weak or
strong) is the better. That is why we next illustrate the running of some conjugate gradient algorithms
for solving the problems from the UOP collection (Andrei, 2020a).
Numerical Studies
1. In the following, we consider the Hestenes-Stiefel conjugate gradient algorithm in which the
stepsize is computed by the weak Wolfe line-search with cubic interpolation (Shanno) (see
Fig. 2.3) and the strong Wolfe line-search Moré-Thuente (see Andrei, 2021b) for solving the
problems from the UOP collection (Andrei, 2020a, pp. 455–466). The UOP collection includes
80 functions in generalized or extended form. For each test function ten numerical experiments
with the number of variables n ¼ 1000, 2000, . . ., 10000 have been considered, thus obtaining a
number of 800 problems. All the algorithms have been coded in double precision Fortran and
compiled with f77 (default compiler settings) and run on an Intel Pentium 4, 1.8 GHz workstation.
For the comparison of algorithms, we follow the Remark 1.1
78 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Fig. 2.4 Performances of the Hestenes-Stiefel conjugate gradient algorithm with the inexact weak Wolfe line-search
versus the inexact strong Wolfe line-search
The iterations are stopped if the inequality kgkk1 106 is satisfied, where k.k1 is the maximum
absolute component of a vector. In line-search algorithms, we set ρ ¼ 0.0001 and σ ¼ 0.8. The
maximum number of iterations was limited to 2000.
Figure 2.4 presents the Dolan and Moré (2002) performances profiles of the Hestenes-Stiefel
conjugate gradient algorithm in which the stepsize is computed by the weak Wolfe line-search with
cubic interpolation (Shanno) and the strong Wolfe line-search (Moré-Thuente).
In a performance profile plot, the top curve corresponds to the method that solved the most
problems in a time that was within a given factor of the best time. The percentage of the test problems
for which a method is the fastest is given on the left axis of the plot. The right side of the plot gives the
percentage of the test problems that were successfully solved by these algorithms, respectively. The
left side of the plot is a measure of the efficiency of an algorithm, while the right side is a measure of
the robustness of an algorithm. It is obvious that the Hestenes-Stiefel with inexact weak Wolfe line-
search is more efficient and more robust versus the same algorithm with strong Wolfe line-search.
From Fig. 2.4, when comparing weak Wolfe versus strong Wolfe line-searches subject to the
number of iterations or subject to the CPU time metric, we can see that the weak Wolfe is top
performer. The table inside the plot of Fig. 2.4 shows that, subject to the number of iterations, the
weak Wolfe is better in 366 problems (i.e., it achieved the minimum number of iterations in
366 problems). The strong Wolfe is better in 222 problems and they achieve the same number of
iterations in 92 problems, etc. Out of 800 problems considered in this numerical study, only for
680 problems does the criterion (1.3) hold. Therefore, subject to the number of iterations metric or
subject to the CPU time metric, on average, the weak Wolfe appears to slightly generate the best
stepsizes.
2. Now, let us report some numerical results obtained with a Fortran implementation of the Hager
and Zhang conjugate gradient algorithm (Hager, & Zhang, 2005), in which the stepsize is
computed by using the weak Wolfe line-search with a simple bisection technique (see Fig. 2.2),
the weak Wolfe line-search with cubic interpolation (Shanno) (see Fig. 2.3), and the strong Wolfe
line-search (Moré-Thuente) (see Andrei, 2021b) for solving 800 problems from the UOP collec-
tion with the number of variables in the range [1000, 10000].
The conjugate gradient parameter in the Hager and Zhang conjugate gradient algorithm (HZ) is
computed as
2.8 Numerical Studies: Stepsize Computation 79
βk ¼ max βNk , ηk ,
T
1 ky k k2
βk ¼ T
N
y 2 T gkþ1 , ð2:114Þ
yk d k k yk d k
1
ηk ¼ , η ¼ 0:01:
kdk k min fη, kgk kg
(This algorithm will be presented in Chap. 5.) Figure 2.5 presents the Dolan and Moré performance
profiles of these algorithms: HZ with weak Wolfe line-search (HZWOLFE), HZ with weak Wolfe
line-search with simple bisection (HZBIS), and HZ with strong Wolfe line-search (HZSWOLFE).
From Fig. 2.5 we can see that the strong Wolfe line-search is more expensive than the weak Wolfe
line-search. For example, subject to the CPU computing time, HZWOLFE is faster in solving
476 problems (out 664), and HZSWOLFE is faster in solving only 89 problems. However, the strong
Wolfe line-search has the advantage that, by decreasing σ, we have a direct control of the quality of
the search by forcing the accepted value of the stepsize α to be near enough to a local minimum. This
is important in nonlinear conjugate gradient methods for solving large-scale unconstrained
optimization.
Fig. 2.5 Performance profiles of the Hager-Zhang algorithm with different line-search procedures
80 2 Fundamentals on Unconstrained Optimization. Stepsize Computation
Table 2.7 Global performances of HZ for solving 800 unconstrained optimization problems from the UOP collection
with different line-searches
It is interesting to notice the global performances of the Hager-Zhang conjugate gradient algorithm
(HZ) with three line-search procedures: the weak Wolfe line-search with bisection, the weak Wolfe
line-search with cubic interpolation, and the strong Wolfe line-search. Table 2.7 presents the global
performances of HZ for solving this set of 800 unconstrained optimization problems with different
line-searches.
The conclusion of these intensive numerical studies is that the weak Wolfe line-search is more
efficient and more robust versus the backtracking and versus the Wolfe line-search with bisection and
versus the strong Wolfe line-search. A comparison between the subroutine WolfeLS which
implements the weak Wolfe line-search with safeguarded stepsize and cubic interpolation
(Fig. 2.3) on one side and the subroutines LSbis (Fig. 2.2) and back (Fig. 2.1) shows the importance
of the line-search in the frame of unconstrained optimization algorithms. The strong Wolfe line-
search in the implementation of Moré and Thuente (see subroutine MTlines in Andrei, (2021b),
pp. 15–22) is more sophisticated. It implements the safeguarding of stepsizes by introducing some
large limits on them, uses the quadratic or the cubic interpolation, possibly taking the average of these
quadratic and cubic steps. However, in our numerical experiments, we found that the weak Wolfe
line-search with safeguarding and cubic interpolation implemented in the subroutine WolfeLS is more
efficient and more robust than the strong Wolfe line-search implemented in the subroutine MTlines.
The steepest descent method was designed by Cauchy (1847) and is the simplest of the gradient
methods for the optimization of general continuously differential functions in n variables. Its
importance is due to the fact that it gives the fundamental ideas and concepts of all unconstrained
optimization methods. It introduces a pattern common to many optimization methods. In this pattern,
an iteration consists of two parts: the choice of a descent search direction dk followed at once by a
line-search to find a suitable stepsize αk. The search direction in the steepest descent method is exactly
the negative gradient.
Actually, this is not an efficient method for solving large-scale and complex unconstrained
optimization problems and applications. This simple strategy of moving along the negative gradient
works well for particular functions with near-circular contours, but practical optimization problems or
real applications may involve functions with narrow curving valleys which need a more sophisticated
approach.
It is common practice in optimization algorithms to introduce the steepest descent when the search
direction is not well defined. In fact, one point that emphasizes the importance of the steepest descent
in optimization algorithms is exactly this one. All the respectable optimization algorithms include this
stratagem: when the search direction is not well defined, try the steepest descent. This stratagem is
often used as protection to make sure the algorithm is running appropriately.
Observe that, if the above approximation of function f is good enough, then we want to choose the
direction d so that ∇f(xk)Td is as small as possible. Let us normalize the direction d so that kdk ¼ 1.
Then, among all the directions d with kdk ¼ 1, the direction
∇f ðxk Þ
de ¼
k∇f ðxk Þk
makes the smallest inner product with the gradient ∇f(xk). Indeed, this follows from the following
inequalities:
∇f ðxk Þ e
∇f ðxk ÞT d k∇f ðxk Þkkd k ¼ ∇f ðxk ÞT ¼ ∇f ðxk ÞT d:
k∇f ðxk Þk
Therefore, the un-normalized direction dk ¼ ∇ f(xk) is called the direction of steepest descent at
point xk.
Observe that dk ¼ ∇ f(xk) is a descent direction as long as ∇f(xk) 6¼ 0. To see this, we can write
∇f(xk)Tdk ¼ ∇ f(xk)T ∇ f(xk) < 0, so long as ∇f(xk) 6¼ 0. With these, the following algorithm, called
the steepest descent algorithm, may be presented.
1. Choose an initial point x0 and a convergence tolerance ε > 0 sufficiently small for stopping the iterations.
Set k ¼ 0
2. Compute ∇f(xk). Set dk ¼ ∇ f(xk)
3. If kdkk ε, then stop; otherwise, continue with step 4
4. Compute the stepsize αk by the exact or by the inexact line-search procedures
5. Set xkþ1 ¼ xk þ αkdk, k ¼ k þ 1 and go to step 2 ♦
Since dk ¼ ∇ f(xk) is a descent direction, it follows that f(xk+1) < f(xk). In step 4, the exact or the
inexact line-search may be used. Let us consider a numerical example to see the running of the
steepest descent algorithm.
200
180
0
160
−0.2
140
−0.4 120
−0.6 100
−0.8 80
−1 60
300
200 250 40
200
100 150
100 20
50
0 0
20 40 60 80 100 120 140 160 180 200
Fig. 3.2 (a) Evolution of the error f 1 ðxk Þ f 1 . (b) Evolution of kgkk2
the successive search directions are orthogonal. On the other hand, if the line-search is inexact, kgkk
becomes smaller and smaller along the iterations. Therefore, from Taylor’s development, we have
f ðxk αgk Þ ¼ f ðxk Þ αgTk gk þ oðkαgk kÞ, where the first order term αgTk gk ¼ αkgk k2 is very small.
Hence, the reduction of the values of the minimizing function will be very small. This is the main
drawback of the steepest descent algorithm.
∇f ðxk ÞT dk < 0,
such that f(xk þ αdk) < f(xk) for small values of α. For the above quadratic function, the value of the
stepsize α which minimizes f along the line through xk in the direction dk can be analytically
computed as
dTk r k
α¼ , ð3:3Þ
dTk Qd k
In order to prove the convergence of the steepest descent method, we need a theoretical result
known as the inequality of Kantorovich.
Inequality of Kantorovich
Let λmax and λmin be the largest and the smallest eigenvalues of a symmetric and positive definite
matrix Q, respectively. Then
T T 1
d Qd d Q d ðλ max þ λ min Þ2
β¼ T 2 :
d d 4λ max λ min
Proof Let Q ¼ RDRT. Then Q1 ¼ RD1RT, where R ¼ RT is an orthonormal matrix and the
eigenvalues of Q are 0 < λmin ¼ λ1 λ2 ⋯ λn ¼ λmax, and D ¼ diag (λ1, . . ., λn). Then
T
d RDRT d d T RD1 RT d vT DvvT D1 v
β¼ T
T
¼ ,
T
d RR d d RR d T vT vvT v
Pn
where v ¼ RTd. Now, let γ i ¼ v2i =ðvT vÞ: Then, γ i 0 and i¼1 γ i ¼ 1: Hence,
3.1 The Steepest Descent 85
Pn
X
n X
n γ i ð1=λi Þ
1 i¼1
β¼ γ i λi γi ¼ P :
λi n
i¼1 i¼1 1= γ i λi
i¼1
At this moment, applying the Kantorovich inequality to the right side term of (3.6) and noticing
that
it follows that
λ max λ min κ1
kekþ1 kQ ke k ke k , ð3:7Þ
λ max þ λ min k Q κ þ 1 k Q
where κ ¼ λmax/λmin is the condition number of Q. In other words, the convergence of the steepest
descent method for quadratic functions is linear.
Example 3.2 Let us see the running of the steepest descent algorithm for minimizing a quadratic
function. Consider the function
1
f 2 ðxÞ ¼ xT Qx,
2
where Q ¼ diag (1, 2, . . ., n) . Observe that Q is a positive definite matrix with the eigenvalues 1, 2,
. . ., n. The condition number of Q is n. For this function, ∇f(x) ¼ Qx and the stepsize is computed as
gTk gk
αk ¼ , where gk ¼ Qxk :
gTk Qgk
As we know, for this optimal selection of αk, the rate of convergence of the steepest descent
algorithm is linear
λ max λ min
kxk x kQ kx x kQ ,
λ max þ λ min k1
where kzkQ ¼ zTQz, and λmin and λmax are the smallest and the largest eigenvalues of Q, respectively.
The solution of this problem is vector zero, while the value of the function in the minimum point is
also zero. Considering n ¼ 500 , ε ¼ 106 and the initial point x0 ¼ [0.5, 0.5, ⋯, 0.5] , then, along
the iterations, the steepest descent algorithm gives the following evolution of the error |f2(xk) f2(x)|
from Fig. 3.3.
86 3 Steepest Descent Methods
Fig. 3.4 (a) Evolution of the error |f2(xk) f2(x)| . n ¼ 2. (b) Zigzag evolution
This solution is obtained in 3342 iterations. Observe the linear convergence of this algorithm,
especially in the final part of the iterations. For large values of n, it follows that (λmax λmin)/
(λmax þ λmin) tends to 1, thus proving the linear convergence.
Now, considering Q ¼ diag (1, 10), then the error |f2(xk) f2(x)| has the evolution from Fig. 3.4a.
The trajectory of variables is illustrated in Fig. 3.4b. In Fig. 3.4a we can see the linear convergence of
the algorithm, while in Fig. 3.4b the trajectory of variables is in zigzag in wright angles.
The rate of convergence of the steepest descent algorithm depends on the ratio between the largest
axis and the smallest axis of the ellipsoid associated to the matrix Q. The bigger this ratio, the slower
the convergence. Details on the convergence of the steepest descent algorithm for quadratic functions
are presented in the following theorem.
where Q is a symmetric and positive definite matrix with λmin and λmax the smallest and the largest
eigenvalues, respectively. Let x be the solution of the problem (3.8). Then, the sequence {xk}
generated by the steepest descent algorithm converges to x, the rate of convergence is at least
linear, and the following relations hold:
3.1 The Steepest Descent 87
where κ ¼ λmax/λmin.
gT g
Proof Consider the steepest descent algorithm xkþ1 ¼ xk αkgk, where αk ¼ gTkQgk and gk ¼ Qxk.
k k
Then
1 T 1 T
f ðxk Þ f ðxkþ1 Þ 2 xk Qxk 2 ðxk αk gk Þ Qðxk αk gk Þ
¼
f ðxk Þ 1 T
x Qx
2 k k
1 T 2
αk gTk Qxk α2k gTk Qgk gk gk
¼ 2 ¼ T :
1 T
xk Qxk gk Qgk gTk Q1 gk
2
Now, from the Kantorovich inequality, we get
T 2 2
f ðxkþ1 Þ gk gk 4λ max λ min λ max λ min
¼1 T T 1 ¼ 1 ¼ ,
f ðx k Þ gk Qgk gk Q gk ðλ max þ λ min Þ2 λ max þ λ min
Therefore,
2 2
λ min kxkþ1 x k2 kxkþ1 x kQ λ max λ min
,
λ max kxk x k2 kxk x k2Q λ max þ λ min
This is one of the best estimations we can obtain for the steepest descent in certain conditions.
From (3.9) we can write
2
κ ðQ Þ 1
f ðxkþ1 Þ f ðx Þ ðf ðxk Þ f ðx Þ,
κ ðQ Þ þ 1
For general nonlinear functions, it is possible to show that the steepest descent method with an
exact line-search also converges linearly, with a constant rate that is bounded by the fundamental
ratio [(κ(∇2f(x)) 1)/(κ(∇2f(x)) þ 1)]2.
For strongly convex functions for which the gradient is Lipschitz continuous, Nemirovsky and
Yudin (1983) define the global estimate of the rate of convergence of an iterative method as f(xk+1)
f(x) ch(x1 x, m, L, k), where c is a constant, h(.) is a function, m is a lower bound on the
smallest eigenvalue of the Hessian ∇2f(x), L is the Lipschitz constant, and k is the iteration number.
The faster the rate at which h converges to zero as k ! 1 , the more efficient the algorithm.
Now, we have an algorithm for minimizing continuously differentiable functions, the steepest
descent. In step 4 of this algorithm, for stepsize computation, both the exact or the inexact line-search
procedures may be used. In the following, before discussing the convergence properties of the
steepest descent algorithm, let us present a numerical study referring to a comparison between the
steepest descent with backtracking versus the steepest descent with weak Wolfe line-searches. This
study is relevant for the importance of the line-search in gradient descent algorithms.
Numerical Study
Consider the problems from the UOP collection (Andrei, 2020a), which includes 80 large-scale
unconstrained optimization problems in generalized or extended form. For each test function from
this collection, we have considered 10 numerical experiments with the number of variables increasing
as n ¼ 100, 200, . . ., 1000. Therefore, a set of 800 unconstrained optimization problems are solved in
our numerical experiments, both with steepest descent with backtracking (SDB) and steepest descent
with weak Wolfe (SDW). Both SDB and SDW use the same stopping criterion given by k∇f(xk)k2 εg
or αk gTk dk εf jf ðxkþ1 Þj, where εg ¼ 106 and εf ¼ 1016. In backtracking, ρ ¼ 0.0001, β ¼ 0.8.
Figure 3.5 presents the performances of these algorithms subject to the CPU computing time. From
Fig. 3.5 we can see that SDW is more efficient and more robust than SDB. This is not a surprise,
because the backtracking (see Fig. 2.1) is a very crude line-search procedure. In contrast, the weak
Wolfe (see Fig. 2.3) is more advanced, being able to generate an acceptable (inexact) stepsize which
emphasizes the minimization of function f. For example, the table inside the plot shows that, subject
to the CPU time, SDW is faster in 455 problems, while SDB is faster only in solving 5 problems. Out
of 800 problems considered in this numerical study, only for 541 problems does the criterion (1.3)
hold.
In the following, let us discuss the global convergence and the local rate of convergence of the
steepest descent method for general continuously differentiable functions.
Theorem 3.2 Assume that f : ℝn ! ℝ is convex and differentiable and additionally ∇f is Lipschitz
continuous, i.e., k∇f(x) ∇ f( y)k Lkx yk, for any x, y, with constant L > 0. Then the steepest
descent with fixed stepsize δ 1/L satisfies
kx 0 x k2
f ðxk Þ f ðx Þ :
2δk
Proof The theorem says that the steepest descent algorithm has the convergence rate O(1/k), that is,
in order to get f(xk) f(x) ε, it needs O(1/ε) iterations. The convergence is more emphasized if the
initial point x0 is close to the minimum point x.
From the Lipschitz continuity with constant L, it follows that
L
f ðyÞ f ðxÞ þ ∇f ðxÞT ðy xÞ þ ky xk2 ,
2
for all x, y. Now, in the above inequality, when introducing y ¼ x δ ∇ f(x), we get
Lδ
f ðy Þ f ðx Þ 1 δk∇f ðxÞk2 :
2
Considering x+ ¼ x δ ∇ f(x) and taking 0 < δ 1/L, it follows that
δ
f ðxþ Þ f ðx Þ þ ∇f ðxÞT ðx x Þ k∇f ðxÞk2
2
1
¼ f ðx Þ þ kx x k2 kxþ x k :
2
2δ
Summing over iterations we get
X
k
1 1
ðf ðx i Þ f ðx ÞÞ kx 0 x k2 kx k x k2 kx 0 x k2 :
i¼1
2δ 2δ
1X kx x k2
k
f ðx k Þ f ðx Þ ðf ðxi Þ f ðx ÞÞ 0 : ♦
k i¼1 2δk
90 3 Steepest Descent Methods
Theorem 3.3 Assume that f : ℝn ! ℝ is convex and differentiable and ∇f is Lipschitz continuous
with constant L > 0. Then the steepest descent with backtracking line-search satisfies
kx 0 x k2
f ðxk Þ f ðx Þ ,
2δ min k
where δmin ¼ min {1, β/L} and β is as in Algorithm 2.5 or Algorithm 2.6.
Observe that if β is not too small, then we do not lose much in the convergence compared to the
fixed stepsize (β/L versus 1/L ).
Now, let us discuss the convergence of the steepest descent algorithm for minimizing strongly
convex functions. Strong convexity of f means that for some m > 0, ∇2f(x) mI for any x. For strongly
convex functions, we have a better lower bound than the one from the usual convexity
m
f ðyÞ f ðxÞ þ ∇f ðxÞT ðy xÞ þ ky x k2 ,
2
for all x, y.
Theorem 3.4 Assume that f : ℝn ! ℝ is strongly convex, and its gradient is Lipschitz continuous,
i.e., k∇f(x) ∇ f( y)k Lkx yk for any x, y, with constant L > 0. Then the steepest descent with fixed
stepsize δ 2/(m þ L ) or with backtracking line-search satisfies
L
f ðxk Þ f ðx Þ ck kx0 x k2 ,
2
where 0 < c < 1. ♦
The theorem says that under strong convexity, the rate of convergence is O(ck), i.e., exponentially
fast. In other words, to get f(xk) f(x) ε, the algorithm needs O(log(1/ε)) iterations. The constant
c depends on the condition number L/m. A higher condition number involves a slower rate of
convergence.
Observe that these results are obtained under the Lipschitz continuity of the gradient of the
minimizing function and under the strong convexity of the minimizing function. A question arises:
how realistic are these conditions? The Lipschitz continuity of ∇f means that ∇2f(x) LI, where L is
the Lipschitz constant and I is the identity matrix. For example, consider f ðxÞ ¼ 12 ky Axk2 : Then,
∇2f(x) ¼ ATA, so ∇f is Lipschitz with L ¼ σ 2max ðAÞ ¼ kAk2 : On the other hand, strong convexity
means that ∇2f(x) mI, where I is the identity matrix. For example, consider again the function
f ðxÞ ¼ 12 ky Axk2 : Then, ∇2f(x) ¼ ATA and m ¼ σ 2min ðAÞ:
Theorem 3.5 Let function f : ℝn ! ℝ be continuously differentiable. Then, any accumulation point
of the sequence {xk} generated by the steepest descent Algorithm 3.1 with exact line-search is a
stationary point of function f.
Proof Consider x an accumulation point of the sequence {xk} and K an infinite set of indices such
that lim k2K xk ¼ x. Let dk ¼ ∇ f(xk). Since f is continuously differentiable, the sequence {dk : k 2 K}
is uniformly bounded and kdkk ¼ k∇f(xk)k. Since the hypotheses of Theorem 2.11 are satisfied, it
follows that k∇f ðxÞk2 ¼ 0, that is, ∇f ðxÞ ¼ 0. ♦
3.1 The Steepest Descent 91
Proof Consider the infinite case. From Algorithm 3.1 and Theorem 2.10, it follows that
1
f ðxk Þ f ðxkþ1 Þ k∇f ðxk Þk2 :
2M
Hence,
X
k1
1 X
k1
f ðx 0 Þ f ðx k Þ ¼ ½f ðxi Þ f ðxiþ1 Þ k∇f ðxi Þk2 :
i¼0
2M i¼0
The next theorem establishes the rate of convergence of the steepest descent algorithm with exact
line-search.
Theorem 3.7 Let f : ℝn ! ℝ which satisfies the hypothesis of Theorem 2.12. If the sequence {xk}
generated by the steepest descent algorithm converges to x, then the rate of convergence is linear.
The rate of convergence of the steepest descent algorithm for general twice continuously differ-
entiable functions is established by the following theorem.
f ðxkþ1 Þ f ðx Þ
¼ βk : ð3:12Þ
f ðxk Þ f ðx Þ
1
k∇f ðxk Þk2 :
2M
Using the definition of βk, we have
1
ð1 βk Þ½f ðxk Þ f ðx Þ k∇f ðxk Þk2 :
2M
92 3 Steepest Descent Methods
Suppose that
xk x
! d:
kxk x k
Obviously,
2
k∇f ðxk Þk2 ¼ kxk x k2 ∇2 f ðx Þd þ oð1Þ
and
1 T
f ðxk Þ f ðx Þ ¼ kxk x k2 d ∇2 f ðx Þd þ oð1Þ :
2
From the above inequalities, it follows that
2
k∇f ðxk Þk2 2∇2 f ðx Þd
lim ¼ T 2m: ð3:15Þ
k!1 f ðxk Þ f ðx Þ d ∇2 f ðx Þd
♦ The steepest descent algorithm is linear convergent, that is, the error f(xk) f tends to zero like a geometric series.
♦ The rate of convergence depends on the condition number of the Hessian of the minimizing function (which is
unknown). The convergence may be very slow even for functions relatively well conditioned. When the condition
number of the Hessian is large, then the steepest descent algorithm converges so slowly that it does not have any
practical value.
♦ The steepest descent with weak Wolfe line-search is way more efficient and more robust than the steepest descent
with backtracking.
♦ The parameters used in backtracking do not have a significant effect on the convergence of the algorithm. The exact
line-search improves the convergence, but without any significant effect.
It is interesting to see what happens when the stepsize αk computed by a line-search procedure is
randomly modified in [0, 1], that is, the new estimation to the minimum x is computed as
xkþ1 ¼ xk þ θk αk dk , ð3:16Þ
where dk ¼ ∇ f(xk) and θk is a random variable uniformly distributed in the interval [0, 1]. Thus, a
new algorithm called relaxed steepest gradient algorithm is obtained (Andrei, 2004b, 2005a).
3.2 The Relaxed Steepest Descent 93
In this case of quadratic positive definite functions, the relaxed steepest descent algorithm is more
efficient than the classical steepest descent algorithm. Indeed, for solving the problem, the steepest
descent algorithm needs 3342 iterations, while the relaxed steepest descent only 499 iterations. A
slightly better evolution subject to the number of iterations is obtained when θk is selected as a
random variable uniformly distributed in the interval [0, 2] . For this quadratic function, taking
different values for the number of variables n, Table 3.1 shows the number of iterations for the
steepest descent algorithm and its relaxed version, where θk 2 [0, 1] and θk 2 [0, 2].
This behavior of the relaxed steepest descent algorithm illustrates a very serious limitation of the
optimal stepsize selection as well as a cognitive misleading, since a small modification of the stepsize
determines major changes in the performances of the steepest descent algorithm. In fact, for quadratic
positive definite functions, in very mild conditions on θk 2 [0, 2], the following convergence result of
the relaxed steepest descent algorithm may be established (Raydan & Svaiter, 2002).
Table 3.1 Number of iterations of the steepest descent and of the relaxed steepest descent for the quadratic problem
from Example 3.3
gTk gk
xkþ1 ¼ xk θk αk gk ; αk ¼ , gk ¼ Qxk ,
gTk Qgk
Φ k ð θ Þ ¼ f ð x k θ α k gk Þ
We can write
gT g 2
1 k k
f ðxk θ αk gk Þ ¼ f ðxk Þ θ θ2 :
2 gTk Qgk
Observe that for θ 2 [0, 2], θ θ2/2 0. Therefore, {f(xk)} is a decreasing sequence convergent
to f(x).
There is a ξ 2 (0, 1) such that ξ < θ < 2 ξ. Since Φk(θ) is convex for all θ 2 (ξ, 2 ξ) we
have Φk(θ) < Φk(ξ). But,
Since
T 2
1 gk gk
Φ k ð 0Þ Φ k ð 1Þ ¼ ,
2 gTk Qgk
it follows that
3.2 The Relaxed Steepest Descent 95
2
ξ gTk gk
Φk ðξÞ < Φk ð0Þ :
2 gTk Qgk
Therefore,
2
ξ gTk gk ξ gTk gk
Φ k ð 0Þ Φ k ð ξ Þ > ,
T
2 gk Qgk 2 λ max
that is
ξ
f ðxk Þ f ðxk ξαk gk Þ > kg k2 :
2λ max k 2
But, f(xk) f(xk ξαkgk) ! 0, showing that gk ! 0 and hence x ! x, solution of the problem.
Since {f(xk)} is a decreasing sequence, this tends to f(x) , that is x ! x. ♦
The relaxed steepest descent algorithm can be used for solving general continuously differentiable
functions (Andrei, 2004b). The following example illustrates the performances of the steepest descent
algorithm (SDB) versus the relaxed steepest descent (RSDB), where the stepsize in both algorithms is
computed by backtracking.
Let x0 ¼ [0.001, . . ., 0.001] be the initial point and the criterion for stopping the iterations
k∇f(xk)k εg, where εg ¼ 106. Then the number of iterations and the average stepsize required
by SDB and by RSDB with backtracking ( ρ ¼ 0.0001 and σ ¼ 0.8 ), for different values of n, is
as in Table 3.2.
These numerical examples show the limits of the steepest descent algorithm. Observe that a very
simple, small multiplicative modification of the stepsize through a random variable uniformly
distributed in the interval [0, 1] determines major changes in the behavior of the steepest descent
algorithm. In other words, the steepest descent algorithm has very reduced robustness at the variations
of the stepsize. In fact, for strongly convex functions, the following result can be proved (Raydan &
Svaiter, 2002).
Table 3.2 Number of iterations and the average stepsize for SDB and RSDB with backtracking for Example 3.4
SDB RSDB
n #iter Average stepsize #iter Average stepsize
10 186997 0.103413 40462 0.327121
20 253806 0.047808 101595 0.217972
30 410108 0.031707 105885 0.172842
40 780362 0.024489 122293 0.146184
50 829749 0.020759 144316 0.126295
96 3 Steepest Descent Methods
Theorem 3.10 If the sequence {θk} has an accumulation point θ 2 (0, 1), then the sequence {xk}
generated by the relaxed steepest descent algorithm converges to x.
Proof Consider the function φ(θ) ¼ f(xk θ αkgk), where gk ¼ ∇ f(xk). We can write
1
f ðxk θ αk gk Þ ¼ f ðxk Þ θ αk gTk gk þ θ2 α2k gTk ∇2 f ðxk Þgk :
2
Since f is strongly convex, it follows that φ(θ) is a convex function and φ(0) ¼ f(xk). From the
strong convexity of f we have
Mαk 2
f ðxk θ αk gk Þ f ðxk Þ θ θ αk kgk k22 :
2
2 θ is a concave function and negative on (0, 2/Mαk) with maximum value 1/2Mαk
But, θ Mα k 2
in 1/Mαk. Therefore, for all k, f(xkþ1) f(xk) . Since f is lower bounded, it follows that
In the following, let us assume that function f is strongly convex and the level set S ¼ {x 2 ℝn :
f(x) f(x0)} is closed. Then, the following theorem can be proved, which shows the linear conver-
gence of the relaxed steepest descent algorithm with backtracking.
Theorem 3.11 For strongly convex functions, the steepest descent algorithm relaxed through the
sequence {θk}, where θk is a random variable uniformly distributed in the interval [0,1] and where the
stepsize is computed by backtracking with parameters ρ and β, is linear convergent and
!
Y
k1
f ðxk Þ f ci ðf ðx0 Þ f Þ, ð3:17Þ
i¼0
where
Proof Observe that the backtracking uses the parameters ρ and β as in Algorithm 2.5 or as in
Algorithm 2.6. Consider 0 < θ < 1, then
Mαk 2
f ðxk θ αk gk Þ f ðxk Þ θ θ αk kgk k22 :
2
Mαk 2 θ
θ θ :
2 2
Therefore,
θ
f ðxk θ αk gk Þ f ðxk Þ αk kgk k22 f ðxk Þ ρθαk kgk k22 ,
2
3.2 The Relaxed Steepest Descent 97
since ρ 1/2. Hence, the backtracking terminates with αk ¼ 1 or with a value αk β/M. With this, at
iteration k a lower bound of the reduction of function f is obtained. In the first case we have
Obviously,
But kgk k22 2mðf ðxk Þ f Þ, (see Appendix A). Combining these relations we find that
f ðxkþ1 Þ f ð1 min f2mρθk , 2mρθk β=MgÞðf ðxk Þ f Þ:
which proves the suboptimality from iteration k. Since ck < 1 the sequence {f(xk)} converges to f
like a geometrical series with a factor which depends on the bound on the condition number M/m , the
backtracking parameters, the sequence {θk} of the random numbers uniformly distributed in the
interval [0,1] as well as on the initial suboptimality. Therefore, the relaxed steepest descent algorithm
is linear convergent. ♦
This numerical study is devoted to comparing the performances of the steepest descent algorithm
(SDB) with the relaxed steepest descent algorithm (RSDB), both of them being equipped with
backtracking. To achieve this, let us consider the collection UOP (Andrei, 2020a), which includes
80 large-scale unconstrained optimization problems in generalized or extended form. For each test
function from this collection, we have considered 10 numerical experiments with the number of
variables increasing as n ¼ 100, 200, . . ., 1000. Therefore, a set of 800 unconstrained optimization
problems are solved in our numerical experiments with SDB and RSDB unconstrained optimization
algorithms. Figure 3.7 presents the performances of these algorithms subject to the CPU computing
time. Observe that the relaxed steepest descent with backtracking (RSDB) is way more efficient and
more robust than the steepest descent with backtracking (SDB).
For example, subject to the CPU computing time, we can see that RSDB is faster in solving
414 problems, while SDB is faster in solving only 44 problems. Out of 800 problems solved in this
numerical study, only for 550 does the criterion (1.3) hold.
98 3 Steepest Descent Methods
Let us present in this section the accelerated steepest descent algorithms for solving the uncon-
strained optimization problem (3.1) (Andrei, 2005b, 2006a). Suppose that function f is twice
continuously differentiable. At the current iteration k, xk, fk, gk, and the search direction dk ¼ gk
are known. Now, by the weak Wolfe line-search (2.54) and (2.59), the stepsize αk can be computed,
and thus the following point z ¼ xk αkgk is determined. The first Wolfe condition (2.54) shows that
the stepsize αk > 0 satisfies
With these, let us introduce the accelerated steepest descent algorithm by means of the following
iterative scheme:
xkþ1 ¼ xk θk αk gk , ð3:19Þ
where θk > 0 is a parameter which is to be determined in such a way as to improve the algorithm. Now,
we have
1
f ðxk αk gk Þ ¼ f ðxk Þ αk gTk gk þ α2k gTk ∇2 f ðxk Þgk þ o kαk gk k2 :
2
On the other hand, for θ > 0 it follows that
1
f ðxk θαk gk Þ ¼ f ðxk Þ θαk gTk gk þ θ2 α2k gTk ∇2 f ðxk Þgk þ o kθαk gk k2 :
2
Therefore,
f ðxk θαk gk Þ ¼ f ðxk αk gk Þ þ Ψk ðθÞ, ð3:20Þ
3.3 The Accelerated Steepest Descent 99
where
1 2
Ψ k ðθ Þ ¼ θ 1 α2k gTk ∇2 f ðxk Þgk þ ð1 θÞαk gTk gk
2
þθ2 αk o αk kgk k2 αk o αk kgk k2 : ð3:21Þ
Let us denote
ak αk gTk gk 0,
bk α2k gTk ∇2 f ðxk Þgk ,
ε k o α k kgk k2 :
Observe that Ψ0k ð0Þ ¼ ak 0: Therefore, assuming that bk þ 2αkεk > 0, then Ψk(θ) is a convex
quadratic function with the minimum value in point θm and
which is a possible improvement of the values of function f (when ak (bk þ 2αkεk) 6¼ 0).
Therefore, using this simple multiplicative modification of the stepsize αk as θkαk, where
θk ¼ θm ¼ ak/(bk þ 2αkεk), it follows that
since
ð a bk Þ 2
f ðxkþ1 Þ f ðxk Þ ρak þ k f ðxk Þ: ð3:25Þ
2bk
In order to get the algorithm, a procedure for the computation of bk is needed. For this, at point
z ¼ xk αkgk,
1
f ðzÞ ¼ f ðxk αk gk Þ ¼ f ðxk Þ αk gTk gk þ α2k gTk ∇2 f ðxek Þgk ,
2
where xek is a point on the line segment connecting xk and z. On the other hand, at point xk ¼ z þ αkdk,
1
f ðxk Þ ¼ f ðz þ αk gk Þ ¼ f ðzÞ þ αk gTz gk þ α2k gTz ∇2 f ðxk Þgz ,
2
where gz ¼ ∇ f(z) and xk is a point on the line segment connecting xk and z. Having in view the local
character of the searching and that the distance between xk and z is small enough, we can consider
xek ¼ xk ¼ xk : So, by adding the above equalities, the following value for bk is obtained:
where yk ¼ gz gk. Observe that the computation of bk needs an additional evaluation of the gradient
in point z. Therefore, neglecting the contribution of εk and considering θk ¼ θm ¼ ak/bk in (3.19), the
following algorithm can be presented.
1. Choose a starting point x0 2 dom f and compute: f0 ¼ f(x0) and g0 ¼ ∇ f(x0). Select εA > 0 sufficiently
small and positive values 0 < ρ < σ < 1 used in the Wolfe line-search conditions. Set d0 ¼ g0 and k ¼ 0
2. Test a criterion for stopping the iterations. If the test is satisfied, then stop; otherwise, continue with step 3
3. Using the weak Wolfe line-search conditions (2.54) and (2.59), determine the stepsize αk
4. Update the variables xkþ1 ¼ xk αkgk and compute fkþ1 and gkþ1. Compute sk ¼ xkþ1 xk and
yk ¼ gkþ1 gk
5. Acceleration scheme:
(a) Compute: z ¼ xk αkgk, gz ¼ ∇ f(z) and yk ¼ gz gk
(b) Compute: ak ¼ αk gTk gk , and bk ¼ αk yTk gk
(c) if |bk| < εA, then go to step 6
(d) if |bk| εA, then compute θk ¼ ak/bk. Compute z ¼ xk θkαkgk, gz ¼ ∇ f(z), sz ¼ z xk and
yz ¼ gz gk. If yTz sz > 0, then set xkþ1 ¼ z and compute fkþ1 ¼ f(xkþ1), gkþ1 ¼ ∇ f(xkþ1), sk ¼ xkþ1 xk
and yk ¼ gkþ1 gk. Go to step 6. Otherwise, if yTz sz 0, then go to step 6
6. Set k ¼ k þ 1 and go to step 2 ♦
Usually, εA is epsilon machine. The un-accelerated steepest descent algorithm can immediately be
obtained from the above algorithm by skipping step 5. If f is bounded along the direction gk, then
there exists a stepsize αk satisfying the Wolfe line-search conditions (2.54) and (2.59). Under
reasonable assumptions, the Wolfe conditions are sufficient to prove the global convergence of the
algorithm.
The algorithm is equipped with an acceleration scheme (see step 5) introduced by Andrei (2005b,
2006a). This scheme modifies the stepsize determined by the Wolfe line-search conditions in such a
way as to improve the reduction of the minimizing function values along the iterations. It is proved
that this acceleration scheme is linear convergent. However, when the acceleration scheme is used, in
some unconstrained optimization algorithms, it is necessary to monitor whether yTk sk > 0: The Wolfe
line-search implemented in step 3 of the algorithm ensures that yTk sk > 0, which is crucial in quasi-
3.3 The Accelerated Steepest Descent 101
Newton unconstrained optimization algorithms. If ∇2f(xk) is positive definite, it is easy to see that in
the new point xkþ1 ¼ xk θkαkgk we have yTk sk > 0 for k ¼ 0, 1, . . . . In general, for solving the
unconstrained optimization problems by using, for example, the accelerated conjugate gradient or the
accelerated quasi-Newton methods, if the new yTz sz 0, then the algorithm updates xkþ1 ¼ xk þ αkdk.
Otherwise, if yTz sz > 0, then the algorithm updates xkþ1 ¼ xk þ θkαkdk, where the acceleration factor
θk is computed as in Algorithm 3.2. Having in view that the contribution of the acceleration to
reducing the values of the minimizing function is small, it follows that by acceleration, the condition
yTk sk > 0 is conserved along the iterations and hence the above scheme is very seldom used.
Observe that, if |ak| > bk, then θk > 1. In this case, θkαk > αk and it is also possible that θkαk 1 or
θkαk > 1. Hence, the stepsize θkαk can be greater than 1. On the other hand, if |ak| bk, then θk 1. In
this case, θkαk αk, so the stepsize θkαk is reduced. Therefore, if |ak| 6¼ bk, then θk 6¼ 1 and the stepsize
αk computed by the Wolfe conditions will be modified by its increasing or its decreasing through
factor θk.
Neglecting εk in (3.22), we can see that Ψk(1) ¼ 0 and if |ak| bk/2, then Ψk(0) ¼ ak bk/2 0
and θk < 1. Therefore, for any θ 2 [0, 1], Ψk(θ) 0. Consequently, for any θ 2 (0, 1) it follows that
f(xk þ θαkdk) < f(xk). In this case, for any θ 2 [0, 1], θkαk αk. However, in our algorithm we selected
θk ¼ θm as the point achieving the minimum value of Ψk(θ).
In the following, for strongly convex functions, let us prove the linear convergence of the
acceleration scheme (Andrei, 2006a). For strongly convex functions, it is easy to prove that,
k∇f(x)k2 2m( f(x) f(x)), for all x 2 S ¼ {x 2 ℝn : f(x) f(x0)}, where x is a local solution of
(3.1). (See Appendix A.)
Proposition 3.1 Suppose that f is a strongly convex function on the level set S ¼ {x : f(x) f(x0)}.
Then, the sequence {xk} generated by the accelerated steepest descent algorithm 3.2 converges
linearly to x, solution to the problem (3.1).
Proof From (3.24), f(xkþ1) f(xk) for all k. Since f is bounded below, it follows that
lim ðf ðxk Þ f ðxkþ1 ÞÞ ¼ 0:
k!1
Now, since f is strongly convex, there exist positive constants m and M so that mI ∇2f(x) MI on
S. Suppose that xk αgk 2 S and xk θmαgk 2 S for all α > 0, where θm is the acceleration factor.
Therefore,
ðak bk Þ2
f ðxk θm αgk Þ f ðxk αgk Þ : ð3:27Þ
2bk
But, from the strong convexity, the following quadratic upper bound of f(xk αgk) is true
1
f ðxk αgk Þ f ðxk Þ αkgk k22 þ Mα2 kgk k22 :
2
Observe that α þ Mα2/2 is a convex function. Therefore, for any 0 α 1/M, it follows that
α þ Mα2 =2 α=2:
Hence,
1
f ðxk αgk Þ f ðxk Þ αkgk k22 þ Mα2 kgk k22
2
α
f ðxk Þ kgk k22 f ðxk Þ ραkgk k22 ,
2
since ρ 1/2.
102 3 Steepest Descent Methods
The line-search with backtracking terminates either with s ¼ 1 , or with a value α β/M. This
gives a lower bound on the reduction of the minimizing function f. For α ¼ 1 we have
ðak bk Þ2 ð1 MÞ2
kgk k22 :
2bk 2M
For α β/M
ðak bk Þ2 ð1 βÞ2
kgk k22 :
2bk 2M
Hence,
ðak bk Þ2 ð1 M Þ2 ð1 β Þ2
min , kgk k22 : ð3:29Þ
2bk 2M 2M
Therefore,
ρβ ð1 M Þ2 ð1 β Þ2
f ðxk Þ f ðxkþ1 Þ min ρ, þ min , kgk k22 :
M 2M 2M
But, f(xk) f(xkþ1) ! 0 and consequently gk tends to zero, that is, xk converges to x. Having in
view that f(xk) is a nonincreasing sequence, it follows that f(xk) converges to f(x). From (3.30) we
see that
3.3 The Accelerated Steepest Descent 103
ρβ ð1 M Þ2 ð1 β Þ2
f ðxkþ1 Þ f ðxk Þ min ρ, þ min , kgk k22 :
M 2M 2M
where
2mρβ ð1 M Þ2 m ð1 β Þ2 m
c ¼ 1 min 2mρ, min , < 1:
M M M
Therefore, f(xk) converges to f(x) at least as fast as a geometric series with a factor that depends on
the parameter ρ in the first Wolfe condition and on the bounds m and M, i.e., the convergence is at
least linearly. ♦
Remark 3.1 Basically, the acceleration scheme modifies the stepsize αk in a multiplicative way to
improve the reduction of the function values along the iterations. In the accelerated algorithm, instead
of xkþ1 ¼ xk þ αkdk, the new estimation of the minimum point is computed as
xkþ1 ¼ xk þ ηk αk dk , ð3:32Þ
where ak ¼ αk gTk gk , bk ¼ αk(gz gk)Tgk, gz ¼ ∇ f(z) and z ¼ xk αkgk. Hence, if |bk| εA, where
εA > 0 is sufficiently small, then the new estimation of the solution is computed as xkþ1 ¼ xk þ ηkαkdk;
otherwise xkþ1 ¼ xk þ αkdk. ♦
Example 3.5 In the following, let us see the running of the accelerated steepest descent with
backtracking for minimizing the function
! !2
X
n Xn
f ðx Þ ¼ n cos xj þ ið1 cos xi Þ sin xi :
i¼1 j¼1
Consider n ¼ 100, the initial point x0 ¼ [0.2, . . ., 0.2] and the parameters ρ ¼ 0.0001 and β ¼ 0.8
in the backtracking procedure. The criterion for stopping the iterations is k∇f(xk)k2 εg. For
minimizing this function, the algorithm needs 150 iterations to get the solution. In Fig. 3.8 observe
the evolution of the error |f(xk) f | and the evolution of the contribution (ak bk)2/2bk þ ρak at the
reduction of the function f; see (3.25). Figure 3.9 presents the evolution of the same elements, but this
time for ρ ¼ 0.01. In this case, for minimizing this function, the algorithm needs 114 iterations.
Observe that the quantity (ak bk)2/2bk þ ρak (ak < 0) is indeed much smaller than the error
|f(xk) f |, but it contributes to the reduction of the minimizing function even if ρ is small in the first
weak Wolfe condition.
104 3 Steepest Descent Methods
Numerical Study
This numerical study presents a comparison of the accelerated steepest descent with backtracking
(ASDB) versus the steepest descent with backtracking (SDB) and versus the relaxed steepest descent
with backtracking (RSDB). For this, the collection UOP (Andrei, 2020a), which includes 80 large-
scale unconstrained optimization problems in generalized or extended form, is used. For each test
function from this collection, 10 numerical experiments have been considered, with the number of
variables increasing as n ¼ 100, 200, . . ., 1000. Therefore, a set of 800 unconstrained optimization
problems are solved. Figure 3.10 presents the performance profiles of ASDB versus SDB. We can see
3.3 The Accelerated Steepest Descent 105
that the accelerated steepest descent algorithm ASDB is more efficient and more robust than its
un-accelerated variant SDB. Subject to the CPU computing time, ASDB is faster in solving
272 problems, while SDB is faster in solving only 170 problems. Out of 800 problems, only for
549 of them does the criterion (1.3) hold.
Figure 3.11 presents the performance profiles of ASDB versus SDB and versus RSDB. Observe
that RSDB is more efficient and more robust than SDB, but ASDB is the best.
In conclusion, if we want to minimize the continuous differentiable function f and if the current
point is xk, then, the best direction of moving to find better points is the negative gradient ∇ f(xk),
that is, the steepest descent direction. However, as soon as we move away from xk along the steepest
106 3 Steepest Descent Methods
descent direction for obtaining xkþ1, even if the value of the minimizing function decreases, this
direction ceases to be a good one. The purpose of the acceleration is to find points on the steepest
descent direction for which the reduction of the value of the minimizing function is better.
The acceleration scheme presented in Remark 3.1 was developed for the steepest descent algorithm,
but it can be applied to any other unconstrained optimization algorithms based on the descent
direction, for example, the conjugate gradient, the quasi-Newton, the limited-memory BFGS, and
the truncated Newton. In general, the acceleration scheme is recommended for those unconstrained
optimization methods for which the evolution of the stepsize is very hieratic, having up to one or two
orders of magnitude along the iterations, like the conjugate gradient algorithms. The value of ηk
computed as in (3.33) is small, and so the variables are not dramatically modified by acceleration.
When the acceleration scheme is used in conjunction with the conjugate gradient or the quasi-Newton
or the limited-memory quasi-Newton BFGS methods, it is necessary to monitor whether yTk sk > 0: If
∇2f(x) is positive definite, then in the new point xkþ1 ¼ xk þ ηkαkdk it follows that yTk sk > 0 for all
iterations k ¼ 0, 1, . . . . For solving unconstrained optimization problems by using the accelerated
scheme, Algorithm 3.2 may consider
(
xk þ ηk αk dk , if yTk sk > 0,
xkþ1 ¼ ð3:34Þ
xk þ αk dk , if yTk sk 0:
However, our intensive numerical experiments with large-scale optimization problems have
proved that (3.34) does not need to be implemented. Having in view that the contribution
(ak bk)2/2bk þ ρak is small, it follows that the condition yTk sk > 0 is conserved along the iterations
by acceleration.
The accelerated scheme proved to be a major improvement of the unconstrained optimization
algorithms (Dener, Denchfield, & Munson, 2019). We should emphasize that another acceleration
scheme of the optimization algorithms is preconditioning. Notice that preconditioning is quite
dependent on the matrix of preconditioning. If the preconditioning matrix contains useful information
about the inverse Hessian of the objective function, it is better to use it into a quasi-Newton context
than into a preconditioned conjugate gradient one. For example, for solving large-scale unconstrained
optimization problems, preconditioning the nonlinear conjugate gradient methods based on the Perry-
Shanno scheme remains an open question with very little consensus (Andrei, 2019d) (see Chap. 5).
On the other hand, the acceleration of the conjugate gradient algorithms based on the modification of
the stepsize is well understood and has proved to be extremely effective in practice (see Chap. 5).
The relaxed steepest descent algorithm was defined by Andrei (2005a). The development of the
accelerated conjugate gradient algorithms was presented by Andrei (2009c, 2009d, 2010a).
Discussions and comments on the accelerated scheme (3.32) and (3.33) were given by Babaie-
Kafaky and Rezaee (2018) and by Sun, Liu, and Liu (2021). A class of accelerated conjugate gradient
methods based on a modified secant equation was presented by Ou and Lin (2020).
The Newton Method
4
In the panoply of the optimization methods and in general, for solving problems that have an
algebraic mathematical model, the Newton method has a central position. The idea of this method
is to approximate the mathematical model through a local affine or a local quadratic model. This
chapter is dedicated to presenting the Newton method for solving algebraic nonlinear systems on the
one hand and to minimizing smooth enough functions on the other one. It is proved that, initialized
near solution, the Newton method is quadratic convergent to a minimum point of the minimizing
function. Some modifications of the Newton method and the composite Newton method are also
presented.
Then, given the estimation xk of x, the Newton method computes the next estimation xkþ1 by
solving a local linear approximation of F (local affine model) in xk, that is,
Mk ðxÞ Fðxk Þ þ J ðxk Þðx xk Þ ¼ 0: ð4:1Þ
Supposing that for any k, the Jacobian matrix J(xk) is nonsingular, then xkþ1 is defined as
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 109
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_4
110 4 The Newton Method
This is the Newton method for solving nonlinear algebraic system of equations. If J is a singular
matrix, then the Newton method is not defined, and some transformations have to be considered in
order to overcome this situation. In the following, suppose that J(x) is nonsingular. By the continuity
of J it follows that J(xk) is nonsingular for any xk near enough to x.
For solving the system F(x) ¼ 0, an initial point x0 from dom ( fi), i ¼ 1, . . ., n, must be specified
and then apply (4.2) until a criterion for stopping the iterations has been satisfied.
1. Initialization. Consider the initial point x0 2 ℝn as well as the convergence tolerance ε > 0 sufficiently
small. Set k ¼ 0.
2. ComputeF(xk) and J(xk) ¼ ∇ F(xk)
3. Solve the linear algebraic system J(xk)dk ¼ F(xk)
4. If kdkk1 ε, then stop; otherwise continue with step 5
5. Set xkþ1 ¼ xk þ dk, k ¼ k þ 1 and continue with step 2 ♦
Observe that the most delicate operations in this algorithm are in step 2, where the Jacobian matrix
must be evaluated in the current point, and also in step 3, where a linear system has to be solved,
known as the Newton system. In step 4, some other stopping criteria could be used. However, we will
prove that the Newton method initialized with a “good” starting point is quadratic convergent to a
local solution. Therefore, for stopping the iterations, the following criterion kxkþ1 xkk ε, is also
convenient.
Applying the Newton method with initial point x0 ¼ [1.4 0.8], the following results are obtained
as in Tables 4.1 and 4.2. Observe that only six iterations are needed to get the solution.
From Table 4.2 we can see that
kx x 2 k kx x3 k kx x 4 k
¼ 0:477, ¼ 0:499, ¼ 0:5
kx x 1 k 2
kx x 2 k 2
kx x 3 k2
k x1k x k2
0 .1400000000000E+01 .8000000000000E+00
1 .1070918449595E+01 .1000892713209E+01
2 .1002402519583E+01 .9999422607128E+00
3 .1000002882268E+01 .9999999985242E+00
4 .1000000000004E+01 .1000000000000E+01
5 .1000000000000E+01 .1000000000000E+01
k x * – xk F ( xk )
0 .44721359549995 8E+00 .9157627488965E+00
1 .709240680574689E– 01 .1654342180140E+00
2 .240321330115156E– 02 .5302195270017E– 02
3 .288226844402807E– 05 .6442977199172E– 05
4 .415378842433256E–11 .9288153280959E– 11
5 .000000000000000E+00 .0000000000000E+00
Observe that the local affine model Mk(x) which approximates F(x) in the current point xk is very
efficient for the determination of the next estimation of the solution. In the following theorem, the
quadratic convergence is proved, which is the main result of the Newton method.
Theorem 4.1 Let F : ℝn ! ℝn be a vectorial continuous differentiable function and F(x) ¼ 0. If:
then, for all x0 near enough to x, the Newton method defined by (4.2) generates a sequence {xk}
which is quadratic convergent to x.
Before proving this theorem, we need some technical results as follows. We can say that
J : ℝn ! ℝnn is Lipschitz continuous on the open set D 2 ℝn if there exists a positive constant L,
called the Lipschitz constant, such that kJ(x) J( y)k Lkx yk for all x, y 2 D. In other words, the
difference J(x) J( y) is proportional with x y. Observe that the Lipschitz condition on J is stronger
than the continuity of J, but weaker than the twice differentiability of J. Mainly, L gives a measure of
the nonlinearity of function F in x.
Another important point is the quadratic convergence. It is important from two points of view. On
the one hand, the quadratic convergence guarantees that, if the Newton method can be initialized near
solution, then it is rapid convergent to the solution. On the other hand, a very simple stopping
criterion, namely, kxk xk1k < ε, can be associated to the Newton method, where ε > 0 is a
sufficiently small convergence tolerance.
112 4 The Newton Method
ð1
FðbÞ ¼ FðaÞ þ J ða þ tðb aÞÞðb aÞdt, ð4:3Þ
0
Proposition 4.2 Let F : ℝn ! ℝnbe integrable on the interval [a, b], then
b b
ð ð
FðtÞdt kFðtÞkdt: ð4:4Þ
a a
Proposition 4.3 Let J : ℝm ! ℝnm be a continuously function with matrices values. If J(x) is
nonsingular, then there exists δ > 0 such that for all x 2 ℝm with kx xk < δ, J(x) is nonsingular and
kJ ðxÞk 2kJ ðx Þk, ð4:5Þ
J ðxÞ1 < 2J ðx Þ1 , ð4:6Þ
1
J ðx Þ1 1 kx x k kFðxÞk 2kJ ðx Þkkx x k: ð4:7Þ
2
Proof Let δ > 0 be sufficiently small. Then, for any x for which kx xk < δ, we have
kJ(x)k k J(x)k þ Lkx xk, where L is the Lipschitz constant associated to J(x). Therefore,
(4.5) holds if Lδ < kJ(x)k.
For proving (4.7) observe that if kx xk < δ, then tkx xk < δ holds for any 0 t 1. From
(4.5) it follows that
ð1
kFðxÞk kJ ðx þ tðx x ÞÞkkx x kdt 2kJ ðx Þkkx x k,
0
which is the right inequality in (4.7). For proving the left inequality observe that
4.1 The Newton Method for Solving Nonlinear Algebraic Systems 113
ð1
J ðx Þ1 FðxÞ ¼ J ðx Þ1 J ðx þ tðx x ÞÞdt
0
ð1
¼ ðx x Þ
I J ðx Þ1 J ðx þ tðx x ÞÞ ðx x Þdt,
0
Therefore,
1
kx x k J ðx Þ1 FðxÞ J ðx Þ1 kFðxÞk,
2
which completes the proof. ♦
Proposition 4.3 shows that the set of nonsingular matrices is an open set. The second part of the
proposition follows from the fact that if the application x ! J(x) is continuous, then x ! J(x)1 is
also continuous as soon as J(x)1 is definite. With these results, let us prove Theorem 4.1.
Proof of Theorem 4.1 Suppose that the estimation xk is sufficiently closed to x and J(xk) is
nonsingular. Consider the iteration
Now, from Proposition 4.1 we can estimate the difference F(xk) F(x) as
ð1
Fðxk Þ Fðx Þ ¼ J ðx þ tðxk x ÞÞðxk x Þdt
0
ð1 ð1
¼ J ðx Þðxk x Þdt þ ðJ ðx þ tðxk x ÞÞ J ðx ÞÞðxk x Þdt
0 0
ð1
¼ J ðx Þðxk x Þ þ ðJ ðx þ tðxk x ÞÞ J ðx ÞÞðxk x Þdt:
0
114 4 The Newton Method
Therefore,
kFðxk Þ Fðx Þ J ðx Þðxk x Þk
1
ð
¼ ðJ ðx þ tðxk x ÞÞ J ðx ÞÞðxk x Þdt
0
ð1
kðJ ðx þ tðxk x ÞÞ J ðx ÞÞðxk x Þkdt
0
ð1
kJ ðx þ tðxk x ÞÞ J ðx Þk kxk x kdt
0
ð1
L
L t kxk x k2 dt ¼ kxk x k2 :
2
0
With these
Therefore,
kxkþ1 x k I J ðxk Þ1 J ðx Þ ðxk x Þþ
J ðxk Þ1 ðFðxk Þ Fðx Þ J ðx Þðxk x ÞÞ
I J ðxk Þ1 J ðx Þ kxk x kþ
J ðxk Þ1 kFðxk Þ Fðx Þ J ðx Þðxk x Þk
L
I J ðxk Þ1 J ðx Þ kxk x k þ J ðxk Þ1 kxk x k2 :
2
From the Lipschitz continuity, we obtain the following estimation:
I J ðxk Þ1 J ðx Þ ¼ J ðxk Þ1 ðJ ðxk Þ J ðx ÞÞ
J ðxk Þ1 kJ ðxk Þ J ðx Þk LJ ðxk Þ1 kxk x k:
That is,
3L
J ðxk Þ1 kxk x k2 :
kxkþ1 x k ð4:9Þ
2
Now, using Proposition 4.3, it follows that for all xk near enough to x we have kJ(xk)1k 2M,
where M ¼ kJ(x)1k. Therefore, for xk sufficiently closed to x,
0
30
20 25
20
15
10 10
5
0 0
Example 4.2 Figure 4.1 shows the number of iterations needed by the Newton method initialized in
a lattice of points in the domain [1, 3] [1, 3] for solving the nonlinear system from Example 4.1.
Note that near the solution, the method requires a relative small number of iterations. Moreover, a
number of “plateaus” with initial points may be identified. For every point from these plateaus, the
number of iterations is the same.
The Newton method has excellent local convergence properties. Far away from the solution, there
is no guarantee that the quadratic convergence property is conserved. It is quite possible for
the method not to be well defined in the sense that there exists an estimation xk in which the
Jacobian J(xk) is a singular matrix. In such circumstances it is necessary to modify the method in
order to obtain its global convergence. Theorem 4.1 makes us sure that, if the Jacobian matrix of F(x)
in point x is nonsingular and the Lipschitz continuous and the initial point is in a neighborhood of the
solution, then the Newton method is quadratic convergent in the sense of (4.10). The next theorem
emphasizes this behavior of the Newton method.
Proof Select ε such that J(x) is nonsingular for any x 2 B(x, ε). Let us prove that the convergence is
quadratic since the local error given by the local affine model used to generate each iteration of the
Newton method is at most O(kxk xk2). Define
116 4 The Newton Method
1
ε ¼ min bη, : ð4:13Þ
2γL
Let us now prove that J(x0) is nonsingular. From kx0 xk ε, the Lipschitz continuity of J in x
and from (4.12) it follows that
1
J ðx Þ ½J ðx0 Þ J ðx Þ J ðx Þ1 kJ ðx0 Þ J ðx Þk
γLkx0 x k γLε 1=2:
Now, from the lemma of Banach (see Appendix A), we have that J(x0) is nonsigular and
1
J ðx Þ
J ðx0 Þ1 2J ðx Þ1 2γ:
1 J ðx Þ ½J ðx0 Þ J ðx Þ
1
Note that F(x) F(x0) J(x0)(x x0) is exactly the difference between F(x) and the affine
model evaluated in x. Therefore, from Theorem 2.7 and the above relation, it follows that
kx1 x k kJ ðx0 Þ1 k½Fðx ÞFðx0 Þ J ðx0 Þðx x0 Þk
L
2γ kx0 x k2 ¼ γLkx0 x k2 ,
2
thus proving (4.12). Since kx0 xk 1/(2γL), it follows that kx1 x k 12 kx0 x k , that is,
x1 2 B(x, ε), thus completing the case k ¼ 0. As above, the proof continues by induction. ♦
In the above theorem the constants γ and L can be concentrated in a single constant Lrel ¼ γL. Since
1
J ðx Þ ½J ðxÞ J ðx Þ J ðx Þ1 kJ ðxÞ J ðx Þk γLkx x k ¼ Lrel kx x k
for x 2 Bðx , b
ηÞ, we can see that Lrel is a Lipschitz constant which measures the relative nonlinearity
of function F in point x. In this context, Theorem 4.2 says that the convergence radius of the Newton
method is inversely proportional to the relative nonlinearity of F in point x. The relative nonlinearity
is a fundamental concept which defines the behavior of the Newton method. All the convergence
results can be easily reformulated by using this concept. However, we preferred to use the absolute
nonlinearity, that is, the Lipschitz constant L, since this gives us a possibility for a deep analysis of the
Newton method.
4.1 The Newton Method for Solving Nonlinear Algebraic Systems 117
Theorem 4.2 is very powerful. The bound ε given by (4.13) is an estimation of the most
disadvantageous situation, in which the domain of the quadratic convergence extends in the direction
from x in which F is the most nonlinear. On the other hand, in the direction from x in which F is the
least nonlinear, the domain of the quadratic convergence is much bigger.
If the condition J(x) is Lipschitz continuous on Bðx , b ηÞ with constant L is replaced with the
condition of H€older’s continuity, that is, kJ(x) J( y)k Lkx ykδ, where δ 2 (0, 1], then Theorem
4.2 remains true, where this time (4.12) is expressed as
Applications: The Newton Method for Solving Nonlinear Algebraic Systems of Equations
In the following, let us present the running and the performances of the Newton method for solving
some applications from the collection SMUNO (see Appendix B) as well as from the MINPACK-II
collection.
Application S5 (Stationary solution of a chemical reactor) The application S5 from the SMUNO
collection is expressed as a nonlinear algebraic system and solved with the Newton method:
1 x1 k1 x1 x6 þ r 1 x4 ¼ 0,
1 x2 k2 x2 x6 þ r 2 x5 ¼ 0,
x3 þ 2k3 x4 x5 ¼ 0,
k1 x1 x6 r 1 x4 k3 x4 x5 ¼ 0,
1, 5ðk2 x2 x6 r 2 x5 Þ k3 x4 x5 ¼ 0,
1 x4 x5 x6 ¼ 0,
Table 4.3 contains the initial point x0, the functions values in the initial point F(x0), the solution x
of this application given by the Newton method in 5 iterations, and the functions values in x.
Figure 4.2 presents the evolution of kF(xk)k.
Table 4.3 Stationary solution of a chemical reactor. Initial point, solution, functions values in these points. Newton
method. 5 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 1.09 – 35.164864 0.97424361 0.244e–14
2 1.05 – 0.2403040 0.98282907 – 0.241e–16
3 3.05 3626.94637 0.05151276 – 0.104e–10
4 0.99 – 1779.9233 0.93567106 0.524e–11
5 6.05 – 1814.7127 0.00009083 0.524e–11
6 1.09 – 7.13 0.06423809 – 0.416e–16
118 4 The Newton Method
Fig. 4.2 Evolution of kF(xk)k for applications S5, S6, S9, and S14
Application S6 (Robot kinematics problem) The application S6 from the SMUNO collection is
considered as a nonlinear algebraic system and solved with the Newton method:
Table 4.4 shows the initial point x0, the functions values in the initial point F(x0), the solution x of
this application given by the Newton method in 3 iterations, and the functions values in x. Figure 4.2
presents the evolution of kF(xk)k.
4.1 The Newton Method for Solving Nonlinear Algebraic Systems 119
Table 4.4 Robot kinematics problem. Initial point, solution, functions values in these points. Newton method.
3 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.164 0.0026823 0.16443166 0.111e–15
2 – 0.98 – 0.0098180 – 0.98638847 – 0.111e–15
3 – 0.94 0.1050028 – 0.94706369 – 0.433e–17
4 – 0.32 0.0017588 – 0.32104573 0.555e–16
5 – 0.99 – 0.0127040 – 0.99823316 – 0.111e–15
6 – 0.056 – 0.014 0.05941842 – 0.111e–15
7 0.41 – 0.016764 0.41103315 0.522e–09
8 – 0.91 – 0.0038 – 0.91162039 0
Table 4.5 Propan combustion in air – reduced variant. Initial point, solution, functions values in these points. Newton
method. 9 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 10 109.85000 0.003114068 – 0.160e–09
2 10 209.54267 34.59792428 – 0.515e–09
3 0.05 – 0.3487418 0.065041778 – 0.368e–09
4 50.5 5098.5172 0.859378096 0.158e–06
5 0.05 2659.2930 0.036951859 0.788e–07
Application S9 (Propan combustion in air – reduced variant) This application from the SMUNO
collection is written here as a nonlinear algebraic system:
x1 x2 þ x1 3x5 ¼ 0,
2x1 x2 þ x1 þ 2R10 x22 þ x2 x23 þ R7 x2 x3 þ R9 x2 x4 þ R8 x2 Rx5 ¼ 0,
2x2 x23 þ R7 x2 x3 þ 2R5 x23 þ R6 x3 8x5 ¼ 0,
R9 x2 x4 þ 2x24 4Rx5 ¼ 0,
x1 x2 þ x1 þ R10 x22 þ x2 x23 þ R7 x2 x3 þ R9 x2 x4 , þ R8 x2 þ R5 x23 þ R6 x3 þ x24 1 ¼ 0
where
R5 ¼ 0:193 R6 ¼ 0:4106217541E 3 R7 ¼ 0:5451766686E 3
R8 ¼ 0:44975E 6 R9 ¼ 0:3407354178E 4 R10 ¼ 0:9615E 6
R ¼ 10:
Table 4.5 contains the initial point x0, the functions values in the initial point F(x0), the solution x
of this application given by the Newton method in 9 iterations, and the functions values in x.
Figure 4.2 illustrates the evolution of kF(xk)k corresponding to this application.
120 4 The Newton Method
Application S14 (Circuit design) This application taken from the SMUNO collection is as follows:
ð1 x1 x2 Þx3 exp x5 g1k g3k x7 103 g5k x8 103 1
þg4k x2 g5k ¼ 0, k ¼ 1, . . . , 4,
ð1 x1 x2 Þx4 exp x6 g1k g2k g3k x7 103 g4k x9 103 1
þg4k g5k x1 ¼ 0, k ¼ 1, . . . , 4,
x1 x3 x2 x4 ¼ 0,
where
2 3
0:4850 0:7520 0:8690 0:9820
6 7
6 0:3690 1:2540 0:7030 1:4550 7
6 7
g¼6
6 5:2095 10:0677 22:9274 20:2153 77:
6 7
4 23:3037 101:7790 111:4610 191:2670 5
28:5132 111:8467 134:3884 211:4823
Table 4.6 contains the initial point x0, the functions values in the initial point F(x0), the solution x
of this application given by the Newton method in 4 iterations, and the functions values in x.
Figure 4.2 illustrates the evolution of kF(xk)k corresponding to this application.
Application N1 Solid fuel ignition. Application from the MINPACK-II collection (Averick,
Carter, & Moré, 1991), (Averick, Carter, Moré, & Xue, 1992) (Bratu’s problem).
A steady-state model of solid fuel ignition can be described in terms of the solution uλ of the
boundary value problem
where Δ is the Laplace operator, D is a domain in ℝ2 with boundary ∂D, and λ 2 ℝ is a parameter.
This problem is known as Bratu’s problem. The model simulates a thermal reaction process in a rigid
material (Aris, 1975). On the rectangular domain D ¼ (l1, u1) (l2, u2) the problem can be
Table 4.6 Circuit design. Initial point, solution, functions values in these points. Newton method. 4 iterations.
e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.7 0.95525047 0.89999995 0.124e–13
2 0.5 3.04155543 0.44998747 0.206e–12
3 0.9 – 4.16621316 1.00000648 0.973e–12
4 1.9 – 2.11846214 2.00006854 0.167e–11
5 8.1 5.636125856 7.99997144 – 0.355e–14
6 8.1 22.31397917 7.99969268 0.0
7 5.9 24.95943321 5.00003127 0.255e–12
8 1 42.18784331 0.99998772 0.284e–13
9 1.9 – 0.32000000 2.00005248 0.277e–14
4.1 The Newton Method for Solving Nonlinear Algebraic Systems 121
lambda=5 30
0.7 25
0.6
0.5 20
0.4
0.3 15
0.2
0.1
10
0
30
20 30
5
20
10 10
0 0 5 10 15 20 25 30
Fig. 4.3 Solution of Bratu’s problem
represented as a finite dimensional version using a finite-difference formulation. The vertices zi, j 2 D
are determined by choosing the grid spacings hx and hy and by defining
zi,j ¼ l1 þ ihx , l2 þ jhy , 0 i nx þ 1, 0 j ny þ 1
such that znx þ1,ny þ1 ¼ ðu1 , u2 Þ. The approximations ui, j to u(zi, j) can be obtained by using central
differences to approximate the Laplacian operator. This leads to a system of n ¼ nxny nonlinear
equations:
hy
h
where 1 i nx and 1 j ny. The solution of Bratu’s problem requires the determination of a path
u(.) such that f(u(λ), λ) ¼ 0, where f : ℝn ℝ ! ℝn is the mapping that defines the finite dimensional
version of Bratu’s problem.
Considering nx ¼ 30, ny ¼ 30, then a nonlinear algebraic system with n ¼ 900 variables is
obtained. For λ ¼ 5, the Newton method determines a solution of the above system with an accuracy
smaller than 106 in 2 iterations. Figure 4.3 presents the solution of this application.
Application N2 Flow in a drive cavity. Application from the MINPACK-II collection (Averick,
Carter, & Moré, 1991), (Averick, Carter, Moré, & Xue, 1992).
The steady flow of a viscous incompressible fluid in a planar region D is described by the Navier-
Stokes equations
νΔu þ ðu ∇Þu þ ∇p ¼ 0, ∇ u ¼ 0,
where u : D ! ℝ2 is the velocity field of the fluid, p : D ! ℝ is the pressure, and ν is the viscosity
parameter (the reciprocal of the Reynolds number R). In a classical driven cavity problem, the region
D is the unit square in ℝ2, and the boundary conditions are
ð0, 1Þ, ξ2 ¼ 1,
uð ξ 1 , ξ 2 Þ ¼
ð0, 0Þ, 0 ξ2 < 1:
122 4 The Newton Method
One of the main difficulties associated with this formulation is that there are no boundary
conditions on the pressure p. In the stream function-vorticity formulation, the pressure is eliminated,
and the problem is expressed in terms of the stream function φ and vorticity ω. The components
u1 and u2 of the velocity vector u are expressed in terms of the stream function φ by u1 ¼ ∂yφ,
u2 ¼ ∂xφ. Thus, the incompressibility condition ∇ u ¼ 0 is automatically satisfied. The vorticity
ω ∂xu2 ∂yu1 is thus given by Δφ ¼ ω. The stream function-vorticity formulation of the driven
cavity problem is then
νΔ2 φ þ ∂y φ ð∂x ωÞ ð∂x φÞ ∂y ω ¼ 0,
Δφ ¼ ω:
The formulation of the driven cavity problem in terms of the stream function requires the solution
of the following boundary value problem
Δ2 φ Re ∂y φ ð∂x φÞ ð∂x φÞ ∂y φ ¼ 0:
(Re is the Reynolds number.) The finite dimensional formulation of the driven cavity problem follows
Schreiber and Keller (1983). The vertices zi, j 2 D are determined by choosing the grid spacings hx and
hy and by defining
zi,j ¼ ihx , jhy , 0 < i nx þ 1, 0 < j ny þ 1,
such that znx þ1,ny þ1 ¼ ð1, 1Þ: The approximations ui,j to φ(zi,j) are obtained by using central
differences to approximate the Laplacian operator and the partial derivatives ∂yφ and ∂xφ. These
approximations lead to a system of n ¼ nxny equations in the n unknown ui,j of the form
f(u) ¼ Au þ b ReΦ(u), where A is the discrete biharmonic operator, b contains boundary
information, and Φ is the discrete representation of the nonlinear term.
An interesting feature of this formulation is that the discrete biharmonic approximation becomes
poorly conditioned as the dimension n increases. Thus, the problem becomes difficult to solve even
for moderate values of the Reynolds number Re. This difficulty can be overcome by preconditioning
the problem. Thus, f is preconditioned with the fast biharmonic solver bihar. The preconditioned
problem A1f(u) ¼ 0 with (nx ¼ 30, ny ¼ 30), that is, n ¼ 900 variables, is solved for various values
of the Reynolds number. Figure 4.4 illustrates the streamlines for three Reynolds numbers:
Re ¼ 200, Re ¼ 400, and Re ¼ 1000, respectively. Considering nx ¼ 30, ny ¼ 30, and Re ¼ 200,
the Newton method determines a solution of the above system in 4 iterations, with an accuracy
smaller than 106. The graphical representation of the solution is given in Fig. 4.4a. For nx ¼ 30,
ny ¼ 30, and Re ¼ 400, the Newton method gives a solution in 5 iterations, like in Fig. 4.4b.
Figure 4.4c shows the solution of the problem for nx ¼ 30, ny ¼ 30, and Re ¼ 1000 obtained by the
Newton method in 7 iterations.
4.2 The Gauss-Newton Method 123
Re=200 30
0 25
−0.02
20
−0.04
−0.06 15
−0.08
10
−0.1
30
20 30 5
20 Re=200
10 10
0 0 5 10 15 20 25 30
Re=400 30
0.02 25
0
−0.02 20
−0.04
−0.06 15
−0.08
10
−0.1
30
20 30
20 5
10 10 Re=400
0 0
5 10 15 20 25 30
Re=1000 30
0.02 25
0
20
−0.02
−0.04 15
−0.06
10
−0.08
30
20 30
5
20
10 10 Re=1000
0 0 5 10 15 20 25 30
Fig. 4.4 (a) Flow in a drive cavity (Re ¼ 200). (b) Flow in a drive cavity (Re ¼ 400). (c) Flow in a drive cavity
(Re ¼ 1000)
Many systems of nonlinear equations are expressed in the form of a vector of m independent
functions, each of them depending on n variables: f1(x), . . ., fm(x), where x 2 ℝn. Let f ¼ [f1(x), . . .,
fm(x)]T. The solution of the system fi(x) ¼ 0, i ¼ 1, . . ., m, can be obtained by forming a real-valued
function
124 4 The Newton Method
X
m
FðxÞ ¼ f i ðxÞ2 : ð4:16Þ
i¼1
In this case, the Jacobian matrix need not be a square matrix. By differentiating Fwith respect
to xj, we get
∂F X
m
∂f
¼ 2f i ðxÞ i , for j ¼ 1, . . . , n: ð4:17Þ
∂xj i¼1
∂xj
Therefore, if ∇F(x) is the gradient of F in point x, it follows that the gradient of F may be expressed
as
∇F ¼ 2J T f : ð4:18Þ
Assuming that the functions fi(x), i ¼ 1, . . ., m, are twice continuously differentiable, then (4.17)
yields
2
∂ F X ∂f ∂f
m X m 2
∂ fi
¼2 i i
þ2 f i ðxÞ ,
∂xj ∂xk i¼1
∂x j ∂x k i¼1
∂x j ∂xk
for j, k ¼ 1, . . ., n.
If the second derivatives of fi(x) are neglected, we have
2
∂ F X ∂f ∂f
m
ffi2 i i
:
∂xj ∂xk i¼1
∂xj ∂x k
Since the gradient and the Hessian of F in the current point xk are known and assuming that the
Hessian (4.19) is nonsingular, then the Newton method can be applied for solving this problem as
4.3 The Newton Method for Function Minimization 125
1
xkþ1 ¼ xk 2J ðxk ÞT J ðxk Þ 2J ðxk ÞT f ðxk Þ
1
¼ x k J ðx k ÞT J ðx k Þ J ðxk ÞT f ðxk Þ , k ¼ 0, 1, . . .
When the current point xk is in the neighborhood of the solution x, then the functions fi(xk),
i ¼ 1, . . ., m, can be accurately represented by the linear approximation of the Taylor series and
therefore, the matrix (4.19) becomes an accurate representation of the Hessian of F(xk). In this case,
the method converges very rapidly. If the functions fi(x), i ¼ 1, . . ., m, are linear, then F(x) is
quadratic, the matrix (4.19) is the exact Hessian, and the problem is solved in one iteration. Of course,
the Gauss-Newton method breaks down if the Hessian (4.19) becomes singular. In this case, the
remedy is the modification of the Gauss-Newton method by using the methods described in Sect. 4.5.
Let f : ℝn ! ℝ be a twice continuously differentiable function and consider the minimizing problem
Obviously, in the current point xk we can compute f(xk), the gradient ∇f(xk), and the Hessian
∇2f(xk), where by definition
2 2 2 2 3
∂ f ðx Þ ∂ f ðx Þ ∂ f ðx Þ
6 ∂x2 ⋯
6 1 ∂x1 ∂x2 ∂x1 ∂xn 77
6 2 7
6 ∂ f ðxÞ ∂2 f ðxÞ ∂ f ðx Þ 7
2
6 ⋯ 7
∇ f ðx Þ ¼ 6
2
6 ∂x2 ∂x1 ∂x22 ∂x2 ∂xn 77:
6 7
6 ⋮ ⋮ ⋱ ⋮ 7
6 2 7
4 ∂ f ðxÞ ∂2 f ðxÞ ∂ f ðx Þ 5
2
⋯
∂xn ∂x1 ∂xn ∂x2 ∂x2n
If f is a smooth function, then ∇2f(x) is a symmetric matrix. Suppose that with a minimal effort we
can get the analytical expression of the Hessian. With these elements the quadratic model of function f
in point xk can be defined as
1
m2k ðxÞ ¼ f ðxk Þ þ ∇f ðxk ÞT ðx xk Þ þ ðx xk ÞT ∇2 f ðxk Þðx xk Þ: ð4:21Þ
2
For solving the problem (4.20), the main idea of the Newton method is quite simple: in an iterative
manner, minimize the quadratic model (4.21) and take its solution xkþ1 as a new approximation to the
minimum point. In this new point xkþ1 compute again a new quadratic model and take it as a new
approximation to x, etc.
Minimizing (4.21) leads to the iterative formula
1. Initialization. Consider an initial point x0 2 ℝn as well as the convergence tolerance ε > 0 sufficiently
small for stopping the iterations. Set k ¼ 0
2. Compute ∇f(xk) and ∇2f(xk)
3. If k∇f(xk)k ε, then stop; otherwise, continue with step 4
4. Solve the linear algebraic system ∇2f(xk)dk ¼ ∇ f(xk)
5. Set xkþ1 ¼ xk þ dk, k ¼ k þ 1 and continue with step 2 ♦
Note that in this algorithm, the most difficult operations are in steps 2 and 4, in which the Hessian
matrix has to be evaluated in the current point and a linear algebraic system needs to be solved.
However, the Newton method has some very important properties which define its efficiency. The
most important is that its convergence is quadratic when initialized near the solution. All the
modifications of this method refer to either the evaluation of the Hessian or to the solving of the
linear algebraic system ∇2f(xk)dk ¼ ∇ f(xk), known as the Newton system.
Figure 4.5 shows the representation of the function in the domain [1, 1] [0, 2].
The solution of this problem is x ¼ [0.966616, 0.262870] and f(x) ¼ 1.1281165. Consider-
ing a lattice of the initial points in the domain [1, 1] [0, 2], then the number of the iterations
required by the Newton method for minimizing function f is shown in Fig. 4.6. We can see that near
the solution, the method needs a relatively small number of iterations. Moreover, there are some
plateaus with initial points for which the number of iterations is the same.
The following theorem shows that the Newton method (4.22) is well defined and its rate of
convergence is quadratic. The theorem is based on the Lipschitz constant of the Hessian.
Theorem 4.3 Let f : ℝn ! ℝ be twice continuously differentiable and the current point xk sufficiently
close to the solution x of the problem (4.20) for which ∇f(x) ¼ 0. If the Hessian matrix ∇2f(x) is
positive definite and ∇2f(x) is Lipschitz continuous, that is,
20
18
5
4 16
3 14
2
12
1
0 10
−1 8
−2
30 6
20 25
20 4
15
10 10 2
5
0 0 2 4 6 8 10 12 14 16 18 20
Fig. 4.5 Representation of function f
4.3 The Newton Method for Function Minimization 127
iteratii
4
1
30
30
20
20
10
10
X2 0 0
X1
2
∇ f ðxÞij ∇2 f ðyÞij Lkx yk, for all 1 i, j n
where ∇2f(x)ij is the (i, j)- element of the Hessian and L is a positive constant, then for any k the
Newton iteration (4.22) is well defined and the sequence {xk} generated by the algorithm is quadratic
convergent to x.
Therefore, xkþ1 2 Ω. By induction, it follows that the Newton iteration is well defined for all k and
khkk ! 0 when k ! 1, thus proving the convergence of the Newton method. From (4.23) we can see
that the rate of convergence of the Newton method is quadratic. ♦
128 4 The Newton Method
The following theorem shows the quadratic convergence of the Newton method, but this time the
theorem is based on the assumption that the Hessian matrix is bounded.
Theorem 4.4 Let f be a twice continuously differentiable function defined over ℝn. Assume that:
2
∇ f ðxÞ ∇2 f ðyÞ Mkx yk for any x, y 2 ℝn : ð4:26Þ
2 2
Let {xk} be the sequence generated by the Newton method (4.22), and let x be the unique
minimizer of f over ℝn. Then
M
kxkþ1 x k2 kx x k22 : ð4:27Þ
2μ k
If kx0 x k2 Mμ , then
k
2μ 1 2
kx k x k2 : ð4:28Þ
M 2
Proof Firstly, let us prove (4.27). By the fundamental theorem of calculus, it follows that
1
xkþ1 x ¼ xk ∇2 f ðxk Þ ∇f ðxk Þ x
1
¼ xk x þ ∇2 f ðxk Þ ð∇f ðx Þ ∇f ðxk ÞÞ
ð
1 1 2
¼ xk x þ ∇2 f ðxk Þ ∇ f ðxk þ tðx xk ÞÞ ðx xk Þdt
ð 0
2 1 1 2
¼ ∇ f ðx k Þ ∇ f ðxk þ tðx xk ÞÞ ∇2 f ðxk Þ ðx xk Þdt:
0
Then,
ð 1
1
2
kxkþ1 x k2 ∇2 f ðxk Þ ∇ f ð xk þ tð x
x k Þ Þ ∇ 2
f ð x k Þ ð x x k Þdt
2
ð1 0 2
2 1 2
∇ f ðx k Þ
∇ f ðxk þ tðx xk ÞÞ ∇ f ðxk Þ ðx xk Þ 2 dt
2
2 0
ð1
1
∇2 f ðxk Þ ∇2 f ðxk þ tðx xk ÞÞ ∇2 f ðxk Þ2 kx xk k2 dt
2 0
ð
1 1
Mtkxk x k22 dt
μ 0
M
¼ kxk x k22 :
2μ
4.4 The Newton Method with Line-Search 129
The interpretation of the condition (4.25) is as follows. As we know, the Taylor series of f near xk is
1
f ðxÞ ¼ f ðxk Þ þ ∇f ðxk ÞT ðx xk Þ þ ðx xk ÞT ∇2 f ðxk Þðx xk Þ þ . . . ð4:29Þ
2
The condition ∇2f(x) μI determines that the quadratic approximation of f in xk is consistent in the
sense that the quadratic term in (4.29) is large enough such that the iterative formula for the Newton
method xkþ1 ¼ xk ∇2f(xk)1gk, k ¼ 0, 1, . . ., is well defined.
On the other hand, the condition k∇2f(x) ∇2f( y)k2 Mkx yk2 can be rewritten as
2
∇ f ðxÞ ∇2 f ðyÞ
2
M,
kx yk2
where 0 < M < 1 . Therefore, this condition tells us that the tensor of the derivative of the third order
of f in xk is small enough such that the rest of the Taylor series can be very well neglected. In
conclusion, for the iterative process xkþ1 ¼ xk ∇2f(xk)1gk, k ¼ 0, 1, . . ., to work, both these
conditions (4.25) and (4.26) require that the quadratic approximation of f in xk should be a good one.
The Newton method is a local method. When the initial point x0 is far away from the solution, we are
not sure that ∇2f(xk) is positive definite, and there is no guarantee that the Newton direction dk is
descendent. Since, as we know, the line-search is a strategy of globalization, then we can define the
Newton method with line-search, (also called the damped Newton method) which guarantees the
global convergence.
The Newton method with line-search is defined as
xkþ1 ¼ xk þ αk dk , ð4:31Þ
where αk is the stepsize, which can be determined either by the exact line-search, or by the inexact
line-search. The Newton algorithm with line-search is as follows:
130 4 The Newton Method
1. Initialization. Consider an initial point x0 2 ℝn as well as the convergence tolerance ε > 0 sufficiently
small for stopping the iterations. Set k ¼ 0
2. Compute ∇f(xk) and ∇2f(xk)
3. If k∇f(xk)k ε, then stop; otherwise, continue with step 4
4. Solve the linear algebraic system ∇2f(xk)dk ¼ ∇ f(xk)
5. Compute αk by the exact line-search
f ðxk þ αk d k Þ ¼ min f ðxk þ αdk Þ
α0
or by the inexact line-search
αk ¼ argminf ðxk þ αdk Þ
α0
6. Set xkþ1 ¼ xk þ αkdk, k ¼ k þ 1 and continue with step 2 ♦
Theorem 4.5 Let f : ℝn ! ℝ be a twice continuously differentiable function on the open and convex
set D ⊂ ℝn. Suppose that for any x0 2 D there exists a constant m > 0 such that f(x) satisfies
where S ¼ {x : f(x) f(x0)} is the level set corresponding to the initial point. Then the sequence {xk}
generated by Algorithm 4.3 with exact line-search satisfies:
Proof From (4.32) it follows that f(x) is a strict convex function on ℝn. Therefore, its stationary point
is the unique global minimum. Also, the level set S is convex, bounded, and closed. Since the
sequence {f(xk)} is monotonously decreasing, then {xk} ⊂ S, that is, {xk} is bounded. Therefore,
there is a limit point x 2 S such that xk ! x and f ðxk Þ ! f ðxÞ. Now, since f is twice continuously
differentiable, from Theorem 2.12 it follows that ∇f ðxk Þ ! ∇f ðxÞ ¼ 0. Finally, observe that, since
the stationary point is unique, then the sequence {xk} is convergent to x, the unique minim. ♦
Now, let us see the convergence of the Newton algorithm with inexact line-search. If the weak
Wolfe line-search (2.54) and (2.59) are used, then from (2.93) in Proposition 2.6, it follows that
f ðxk Þ f ðxk þ αk dk Þ ηk∇f ðxk Þk2 cos 2 hdk , ∇f ðxk Þi, ð4:33Þ
where η is a constant independent of k. With these, the global convergence of the Newton method
with inexact line-search can be proved.
Theorem 4.6 Let f : ℝn ! ℝ be a twice continuously differentiable function on the open and convex
set D ⊂ Rn. Suppose that for any x0 2 ℝn there exists the constant m > 0 such that f(x) satisfies (4.32)
on the level set S. If the line-search satisfies (4.33), then the sequence {xk} generated by Algorithm 4.3
with inexact line-search satisfies
lim k∇f ðxk Þk ¼ 0 ð4:34Þ
k!1
Proof Since f(x) satisfies (4.32), then f(x) is uniformly convex on S. Also, from (4.33) it follows that
f(x) is strictly monotonously decreasing and the sequence {xk} is bounded. Therefore, there exists a
constant M > 0 such that for any k,
2
∇ f ðxk Þ M: ð4:35Þ
thus proving (4.34). Note that f(x) is uniformly convex, which means that it has only a stationary
point. Therefore, (4.34) shows that the sequence {xk} is convergent to the unique minimum x of
function f. ♦
The following result emphasizes the local rate of the convergence of the Newton method. Recall
that for all x from a vicinity of a minimum point x such that ∇2f(x) is positive definite the Hessian
∇2f(x) will also be positive definite. The Newton method will be well defined in this vicinity and will
converge quadratically, provided that the stepsizes αk are always 1 eventually.
Theorem 4.7 Suppose that f is twice continuously differentiable and that its Hessian ∇2f(x) is
Lipschitz continuous in a neighborhood of a solution x at which the sufficient optimality conditions
(Theorem 11.6) are satisfied. Consider the iteration xkþ1 ¼ xk þ d Nk , where dNk ¼ ∇2 f ðxk Þ1 gk :
Then:
(i) If the starting point x0 is sufficiently close to x, then the sequence {xk} generated by the Newton
method converges to x.
(ii) The rate of convergence of {xk} is quadratic.
(iii) The sequence of the gradients norms {kgkk} converges quadratically to zero.
Proof From the optimality condition ∇f(x) ¼ 0 and by the definition of the Newton method, it
follows that
xk þ d Nk x ¼ xk x ∇2 f ðxk Þ1 gk
¼ ∇2 f ðxk Þ1 ∇2 f ðxk Þðxk x Þ ð∇f ðxk Þ ∇f ðx ÞÞ :
But
132 4 The Newton Method
ð1
∇f ðxk Þ ∇f ðx Þ ¼ ∇2 f ðxk þ tðx xk ÞÞðxk x Þdt:
0
Therefore,
2
∇ f ðxk Þðxk x Þ ð∇f ðxk Þ ∇f ðx ÞÞ
1
ð
2
¼ ∇ f ðxk Þ ∇ f ðxk þ tðx xk ÞÞ ðxk x Þdt
2
0
ð1
∇2 f ðxk Þ ∇2 f ðxk þ tðx xk ÞÞkxk x kdt
0
ð1
1
kx k x k 2
Ltdt ¼ Lkxk x k2 ,
2
0
where L is the Lipschitz constant of ∇ f(x) for x near x. Since ∇2f(x) is nonsingular, there is a radius
2
r > 0 such that k∇2f(xk)1k 2k∇2f(x)1k (see Theorem A2.5) for all xk with kxk xk r.
Therefore,
xk þ dN x L∇2 f ðx Þ1 kxk x k2 ¼ Lekxk x k2 ,
k
where Le ¼ L∇2 f ðx Þ1 and dNk ¼ ∇2 f ðxk Þ1 ∇f ðxk Þ: Choosing x0 so that kx0 x k
n o
min r, 1= 2Le , then the above inequality may be used inductively to deduce that the sequence
{xk} converges to x and the rate of convergence is quadratic.
To prove that the gradient norms converge to zero quadratically, we use the relations xkþ1
xk ¼ dNk and ∇f ðxk Þ þ ∇2 f ðxk Þd Nk ¼ 0, to obtain that
k∇f ðxkþ1 Þk ¼ ∇f ðxkþ1 Þ ∇f ðxk Þ ∇2 f ðxk Þd Nk
1
ð
2 N 2 N
¼ ∇ f xk þ td k ðxkþ1 xk Þdt ∇ f ðxk Þd k
0
ð1
∇2 f xk þ td Nk ∇2 f ðxk Þd Nk dt
0
1 2 1 2
LdNk L∇2 f ðxk Þ1 k∇f ðxk Þk2
2 2
2L∇2 f ðx Þ1 k∇f ðxk Þk2 ,
2
showing (iii). ♦
The following theorem shows that in some mild conditions, when the iterates generated by the
Newton method are approaching the solution, then the Wolfe (or the Goldstein) line-search
conditions will accept the stepsize αk ¼ 1 for all large k.
4.5 Analysis of Complexity 133
Theorem 4.8 Suppose that f : ℝn ! ℝ is twice continuously differentiable. Consider the iteration
xkþ1 ¼ xk þ αkdk, where dk is a descent direction and αk satisfies the Wolfe line-search (2.54) and
(2.59) with ρ 1/2. If the sequence {xk} converges to a point x such that ∇f(x) ¼ 0 and ∇2f(x) is
positive definite and if the search direction satisfies
∇f ðxk Þ þ ∇2 f ðxk Þd k
lim ¼ 0,
k!1 kd k k
then:
(i) The stepsize αk ¼ 1 is admissible for all k greater than a certain index k0.
(ii) If αk ¼ 1 for all k > k0, then {xk} converges to x superlinearly. ♦
Observe that if ρ > 1/2, then the line-search would exclude the minimizer of a quadratic and the
unit stepsize may not be admissible.
This section is devoted to analyzing the complexity of the Newton method, namely, an estimation of
the number of iterations for solving an unconstrained optimization problem. From the very beginning
let us introduce some concepts. At the same time, in order to simplify the notation, instead of
xkþ1 ¼ xk þ αkdk, the following notation will be used x+ ¼ x þ αd. The Newton method is defined
by two concepts: the Newton step and the Newton decrement. The Newton decrement can be used as a
criterion for stopping the iterations (Andrei, 2004a).
is called the Newton step for function f in point x. If ∇2f(x) is positive definite, it follows that, if
∇f(x) 6¼ 0, then
Therefore, if x is not the minimum point, then the Newton step is always a descent direction.
Therefore, in order to minimize the second order approximation (4.21) of f in x, the idea is to add the
Newton step at the current point. Observe that if f is quadratic, then x þ dnt is the exact minimum of f.
If f is close to a quadratic, then our intuition tells us that x þ dnt is a very good estimation of the
minimum x of f. Moreover, since f is strictly convex and twice continuously differentiable, the
quadratic model of f will be very exact when x is near x. Therefore, as soon as x is near enough to x,
it results that the point x þ dnt is a very good approximation of x, i.e., it is very close to x. If the
optimality condition ∇f(x) ¼ 0 is linearized around x, then
∇f ðx þ dÞ ffi ∇f ðxÞ þ ∇2 f ðxÞd ¼ 0
and, as we can see, this is a linear algebraic system in d with solution d ¼ dnt. Therefore, the Newton
step dnt is exactly what is necessary to add to x in order satisfy the optimality condition.
134 4 The Newton Method
A property of the Newton step concerning its invariance at the linear coordinate or affine
transformations needs to be mentioned. Suppose that T 2 ℝnn is a nonsingular matrix and define
f ðyÞ ¼ f ðTyÞ: Then
where x ¼ Ty. With these, the Newton step for f in the variables y is
1 T
where dnt is the Newton step of f in the variables x. Therefore, the Newton steps for f and f are
The Newton Decrement The Newton decrement in point x is defined by the quantity
1=2
r ðxÞ ¼ ∇f ðxÞT ∇2 f ðxÞ1 ∇f ðxÞ : ð4:38Þ
The Newton decrement has a very important role in the analysis of the Newton method and can be
used as a criterion for stopping the iterations in the algorithm of this method. Indeed, the quantity
f ðxÞ inf y fbðyÞ where fb is the quadratic approximation of f in x can be expressed as
1
f ðxÞ inf y fbðyÞ ¼ f ðxÞ fbðx þ d nt Þ ¼ r ðxÞ2 :
2
Therefore, r2/2 is an estimation of the suboptimality f(x) f based on the quadratic approxima-
tion of f in x. Observe that the Newton decrement can be expressed as
1=2
r ðxÞ ¼ d Tnt ∇2 f ðxÞdnt , ð4:39Þ
where dnt is the Newton step. Therefore, it follows that r is exactly the norm of the Newton step
subject to the Hessian of function f
1=2
r ðxÞ ¼ kd nt k∇2 f ðxÞ ¼ d Tnt ∇2 f ðxÞdnt : ð4:40Þ
Finally, we mention that the Newton decrement is affine invariant. In other words, the Newton
decrement of f ðyÞ ¼ f ðTyÞ in y, where T is nonsingular, is the same as the Newton decrement of f in
x ¼ Ty.
In order to have a general analysis of the convergence of the Newton method, we consider that a
line-search is performed along the Newton direction. This leads to the Newton method with line-
search, which is different from the pure Newton method, in which at every iteration the stepsize is
one. In the Newton algorithm with line-search, at every iteration the Newton step and the Newton
decrement are computed. These involve the inverse of the Hessian matrix of the minimizing function
f. Numerically, this is the most delicate operation. However, from the viewpoint of the convergence,
this operation does not have any importance since it is the bounds of the Hessian which are the most
important for the strongly convex functions considered in our analysis.
Suppose that f is a twice continuous differentiable function, strongly convex with the constant m,
that is, for any x 2 S, ∇2f(x) mI. As we know, this involves that there is another constant M > 0 such
4.5 Analysis of Complexity 135
that, for any x 2 S, ∇2f(x) MI. Additionally, suppose that the Hessian matrix of f is Lipschitz
continuous on S with the constant L, that is, for all x, y 2 S, k∇2f(x) ∇2f( y)k2 Lkx yk2. The
Lipschitz constant L can be interpreted as a bound of the third order derivative of function f, which is
zero for quadratic functions. Moreover, L gives a measure of how well function f can be approximated
by a quadratic model around the current point. The smaller the Lipschitz constant, the better the
approximation of f in the current point by the quadratic model, i.e., the Newton method will work
better.
Theorem 4.9 Let f be a twice continuous differentiable function, strongly convex with constants m
and M, for which the Hessian matrix is Lipschitz continuous with the constant L. Then, there exist the
real numbers η and γ with the properties 0 < η m2/L and γ > 0, such that the following two
conditions hold:
• If k∇f(x)k2 η, then
2
L L
2 k∇f ðxkþ1 Þk2 2 k∇f ðxk Þk2 ð4:42Þ
2m 2m
Before proving the theorem, some comments are needed (Andrei, 2004a). Let us analyze the above
implications. Indeed, the first condition shows that even if the norm of the gradient is greater than a
positive constant, then the algorithm achieves a reduction of the values of the minimizing function.
The second condition is stronger and has the following interpretation. Suppose that at iteration k we
have k∇f(xk)k2 < η. Since η m2/L, it follows that k∇f(xkþ1)k2 < η, that is, the second condition is also
satisfied at iteration k þ 1. Recursively, continuing this interpretation, we conclude that as soon as the
second condition holds, it will be satisfied for all the next iterations, i.e., for all j k we have
k∇f(xj)k2 < η. Therefore, for all j k, the algorithm will take a Newton step of unitary steplength
αj ¼ 1 and
2
L
∇f xjþ1 L ∇f xj
2 2 2 2
ð4:43Þ
2m 2m
Applying this inequality recursively, for all j kwe get
2jk 2jk
L
∇f xj L k∇f ðxk Þk 1
2 2 :
2m2 2m2 2
Therefore,
3 2jkþ1
1
∇f xj 2 2m 1
f xj f ð4:44Þ
2m 2
L2 2
This inequality shows that as soon as the second condition has been satisfied, the convergence of
the algorithm is extremely rapid. Keeping in mind that in this situation the stepsizes are all equal to
136 4 The Newton Method
one, then from (4.44) we can see that the error is quadratically convergent to zero, that is, at every
iteration the number of the correct digits in the value of the minimizing function is doubled.
Every iteration of the Newton algorithm may be divided into two stages. The first one is called the
damped Newton stage, since the algorithm may select the stepsize α < 1. The second one appears as
soon as k∇f(x)k2 < η has been satisfied and is called the pure Newton stage or the Newton quadratic
convergent stage. In this stage, the stepsize is one.
With these, let us determine the complexity of the Newton algorithm with line-search. At first
determine an upper bound of the number of iterations in the damped Newton stage. Indeed, since at
every iteration, f decreases at least with γ, it follows that the number of iterations in the damped
Newton stage should not be larger than
f ðx 0 Þ f
:
γ
For finding a bound of the number of iterations corresponding to the pure Newton stage, consider
(4.44). Indeed, we can see that f(x) f ε after not more than
ε
log 2 log 2 0
ε
iterations, where ε0 ¼ 2m3/L2.
Therefore, the total number of iterations after which f(x) f ε is upper bounded by
f ðx0 Þ f
ε
þ log 2 log 2 0 ð4:45Þ
γ ε
Note that the term log2log2(ε0/ε), which upper bounds the number of iterations in the Newton
quadratic convergent stage, increases extremely slowly with the accuracy ε. Practically, if we
consider, for example, ε ¼ 5 1020ε0, then the number of iterations corresponding to the pure
Newton stage is not larger than 6.
Hence, we can say that the total number of iterations associated to the Newton method for
minimizing function f with a very good approximation is upper bounded by
f ðx0 Þ f
þ 6: ð4:46Þ
γ
Now, let us prove the above theorem. This consists of analyzing the stages of the Newton method.
Proof of Theorem 4.9 Damped Newton stage. We need to establish (4.41). Suppose that
k∇f(x)k2 η. At the very beginning let us establish a lower bound on the stepsize computed by
backtracking. From the strong convexity, it follows that on S we have ∇2f(x) MI. Hence,
Mkd nt k22 2
f ðx þ αd nt Þ f ðxÞ þ α∇f ðxÞT dnt þ α
2
2 M 2 2
f ðxÞ αr ðxÞ þ α r ðxÞ
2m
Observe that b
α ¼ m=M verifies the termination condition of the backtracking, since
m
f ðx þ b
αdnt Þ f ðxÞ r ðxÞ2 f ðxÞ ρ b
αr ðxÞ2 :
2M
4.5 Analysis of Complexity 137
Therefore, the backtracking gives a stepsize of length α βm/M, thus involving a reduction of the
function values
m
f ðxþ Þ f ðxÞ ραr ðxÞ2 ρβ r ðxÞ2
M
m m
ρβ 2 k∇f ðxÞk22 ρβη2 2 ,
M M
That is, (4.41) is satisfied for
m
γ ¼ ρβη2 : ð4:47Þ
M2
Newton quadratic convergent stage. Now, let us establish (4.42). Suppose that k∇f(x)k2 < η. Let us
prove that, if
m2
η 3ð1 2ρ Þ ,
L
then the backtracking selects stepsizes of unitary length. But the Lipschitz continuity of the Hessian
matrix
2
∇ f ðxÞ ∇2 f ðyÞ Lkx yk
2 2
This gives the possibility to determine an upper bound for φ(α) ¼ f(x þ αdnt). Indeed,
α2 00 α3
φðαÞ φð0Þ þ αφ0 ð0Þ þ φ ð0Þ þ Lkd nt k32 , ð4:48Þ
2 6
and
α2 T 2 α3
f ðx þ αd nt Þ f ðxÞ þ α∇f ðxÞT d nt þ d ∇ f ðxÞd nt þ Lkdnt k32 : ð4:49Þ
2 nt 6
Analyzing the first three terms in (4.49), observe that they are the second order approximation of
f(x þ αdnt) around α ¼ 0. The fourth gives an upper bound of the deviation from the quadratic
function. The bound (4.49) holds for any direction d. Therefore, applied to the Newton direction, we
get
α α3 3
f ðx þ αdnt Þ f ðxÞ α 1 ∇f ðxÞT ∇2 f ðxÞ1 ∇f ðxÞ þ L∇2 f ðxÞ1 ∇f ðxÞ2
2 6 ð4:50Þ
α 2 L 3
f ðxÞ α 1 r ðxÞ þ α3
r ðxÞ :
2 6m3=2
Suppose that k∇f(x)k2 η 3(1 2ρ )m2/L. From the strong convexity of function f, it follows
that
138 4 The Newton Method
and
1 L
f ðx þ dnt Þ f ðxÞ r ðxÞ2 þ 3=2 r ðxÞ3
2 6m
f ðxÞ ρ r ðxÞ2 ¼ f ðxÞ þ ρ∇f ðxÞT d nt ,
In conclusion, the Newton algorithm selects unitary stepsizes and satisfies (4.42) if k∇f(x)k2 < η,
where
m2
η ¼ min f1, 3ð1 2ρÞg : ð4:52Þ
L
Introducing (4.47) and (4.52) in (4.46), we obtain that the total number of iterations corresponding
to the Newton method is bounded by
f ðx 0 Þ f
2 þ 6: ð4:53Þ
ρβ min f1, 3ð1 2ρ Þg mL
2 m
M2
Observe that:
♦ The estimation (4.53) depends on three constants m, M, and L which are unknown for the vast
majority of practical optimization applications. Moreover, this estimation is valid only for twice
continuously differentiable, strongly convex functions.
♦ The number of iterations depends on the initial point x0. (See Figs. 4.1 and 4.6.) The closer to x
the point x0 is, that is the smaller the initial suboptimality f(x0) f is, the smaller the number of
iterations in the damped Newton stage will be. This emphasizes once more the local character of
the Newton method as well as the importance of choosing a good initial point.
♦ The number of iterations in the Newton method does not explicitly depend on the number of
variables of the problem.
♦ The parameters ρ and β from backtracking are not important in the convergence of the damped
Newton stage.
Therefore, the bound (4.53) does not have a practical value, but a conceptual one, showing that for
twice continuously differentiable, strongly convex, functions the Newton algorithm converges
quadratically to the solution if the initial point is in a neighborhood of the minimum point. If the
initial point is far way from the solution, nothing can be said about convergence.
4.5 Analysis of Complexity 139
The solution of this problem is x ¼ [3, 3, 0, ⋯, 0], for which f(x) ¼ 0. Observe that the
function is complex, and its Hessian matrix is a full matrix.
Taking n ¼ 50 and different initial points, then the initial value of function f and the number of
iterations (#iter) for the Newton method with backtracking are as in Table 4.7
For n ¼ 100, the number of iterations of the Newton method for minimizing function f are
presented in Table 4.8.
For n ¼ 300, the Newton method gives the results from Table 4.9.
From the Tables 4.7–4.9 , we can see that the bigger the initial suboptimality f(x0) f , the bigger
the number of iterations, which confirms the structure of (4.53).
Table 4.7 Initial points, value of function in initial points, number of iterations. n ¼ 50 , e ¼ 108, r ¼ 0.0001
and b ¼ 0.8
Nr. x0 f ( x0 ) #iter
1 [0.001, ... , 0.001] 450.215229 9
2 [0.01, ... , 0.01] 500.96877 16
3 [0.1, ... , 0.1] 31666.3496 28
4 [1, ... , 1] 263010248.01 44
Table 4.8 Initial points, value of function in initial points, number of iterations. n ¼ 100 , e ¼ 108, r ¼ 0.0001
and b ¼ 0.8
Nr. x0 f ( x0 ) #iter
1 [0.001, ... , 0.001] 903.46713 13
2 [0.01, ... , 0.01] 1380.68874 17
3 [0.1, ... , 0.1] 860222.816 40
4 [1, ... , 1] 0.82040405 – 1010 54
Table 4.9 Initial points, value of function in initial points, number of iterations. n ¼ 300 , e ¼ 108, r ¼ 0.0001
and b ¼ 0.8
Nr. x0 f ( x0 ) #iter
1 [0.001, ... , 0.001] 2808.6649 16
2 [0.01, ... , 0.01] 33102.2686 23
3 [0.1, ... , 0.1] 0.197075349 –10 9 66
4 [1, ... , 1] 0.196030836 – 10
13 85
140 4 The Newton Method
• In general the convergence of the Newton method is rapid, being quadratic near x. The algorithm
is immediately in the attraction basin of x, that is, the iterations are beyond the damped stage. The
algorithm gives a very accurate solution in 5 or 6 iterations at most.
• The Newton method is affine invariant, i.e., it is not sensitive to any change of the coordinate
system or to the condition number of the level sets.
• The backtracking parameters ρ and β have little influence over the performances of the Newton
method. The exact line-search does not significantly improve the performances of the method. In
the most practical implementations of backtracking, ρ ¼ 0.0001 and β ¼ 0.8.
• The Newton method is indifferent to the dimension of the problem. Its performances in solving
problems with a large number of variables are similar to its performances in solving problems with
a small number of variables.
• The method depends on the initial point. The difficulties of convergence appear in the damped
stage. In general, for nonconvex functions, if the initial point is far away from x, then the method
can be divergent. The hypothesis of convexity is crucial in the Newton method.
• The practical implementation of this method requires the computation and storage of the Hessian
of the minimizing function as well as the solving of the Newton system. These are very difficult
tasks, especially for complicated, strongly nonlinear unconstrained optimization problems or for
problems with a large number of variables. The quasi-Newton methods, which inherit some
properties of the Newton method, can be used for solving these difficult problems, but at a
superlinear rate of convergence. In other words, what we gain in the computational effort we
lose in the convergence.
As known, given the initial point x0, the Newton method is defined by the following computational
scheme:
xkþ1 ¼ xk þ αk dk , ð4:54Þ
for k ¼ 0, 1, . . . . The Newton method is well definite if and only if the following conditions hold:
(i) the Hessian ∇2f(xk) is nonsingular and (ii) the approximation (4.21) is valid. If condition (i) is
violated, then (4.55) may have an infinite number of solutions or no solution at all. On the other hand,
if condition (ii) is violated, then dk may not yield the solution in one iteration and, if ∇2f(xk) is not
positive definite, dk may not even yield a reduction in the minimizing function.
Therefore, one of the most important difficulties with this method is that the Hessian matrix ∇2f(xk)
might not be positive definite. In this case we have no certainty that the quadratic model
approximating function f around xk has a minimum point. If ∇2f(xk) is not defined, then the quadratic
4.6 The Modified Newton Method 141
model m2k ðxÞ is unbounded. In order to overcome these situations, some modifications of the Newton
method have been suggested, the most important ones discussed in this section being Levenberg
(1944) and Marquardt (1963), Goldfeld, Quandt, and Trotter (1966), Zwart (1969), Matthews and
Davies (1971), Goldstein and Price (1967), and Gill and Murray (1972). Other modified Newton
methods like Fiacco and McCormick (1968), Fletcher and Freeman (1977), second order Armijo step
rule by Goldfarb (1980), and by Moré and Sorensen (1979) were analyzed by Sun and Yuan (2006).
Some other papers on using the negative curvature directions in optimization were given by
(Forsgren, Gill, & Murray, 1995), (Facchinei, & Lucidi, 1998), (Gill, Kungurtsev, & Robinson,
2017a, 2017b), and (Goldfarb, Mu, Wright, & Zhou, 2017).
where μk 0.
Consider the symmetric matrix ∇2f(x), which may not be positive definite and let λ1, . . ., λn be its
eigenvalues with eigenvectors v1, . . ., vn. Obviously, the eigenvalues λ1, . . ., λn are real, but may not
all be positive. Now, let us consider the matrix G ¼ ∇2f(x) þ μI, where μ 0. The eigenvalues of
G are λ1 þ μ, . . ., λn þ μ. Indeed,
which shows that for all i ¼ 1, . . ., n, vi is also an eigenvector of ∇2f(x) with eigenvalue λi þ μ.
Therefore, if the parameter μ is sufficiently large, then we are sure that all the eigenvalues of G are
positive, that is, G is positive definite. In other words, if the parameter μk in the Levenberg-Marquardt
modification of the Newton method (4.56) is sufficiently large, then the search direction
dkþ1 ¼ (∇2f(xk) þ μkI)1 ∇ f(xk) always is a descent direction. If μk ! 0, then the Levenberg-
Marquardt modification of the Newton method (4.56) approaches the behavior of the pure Newton
method. On the other hand, if μk ! 1 , then the algorithm approaches a pure gradient method with
small stepsizes. In practice, the algorithm starts with a small value of μk, and then slowly it is
increased until a descent iteration is obtained, that is, until f(xkþ1) < f(xk).
bk ¼ Gk þ γI n ,
G ð4:57Þ
1þγ
where γ is set to a large value if Gk is nonpositive definite or to a small value if Gk is positive definite.
bk I n and therefore dk ∇ f(xk). As known, a nonpositive definite
Obviously, if γ is large, then G
Gk arises at points far from the solution, where the steepest descent method is most effective in
reducing the value of f(x). Therefore, the above modification (4.57) leads to an algorithm that
combines the properties of the Newton and steepest descent methods.
142 4 The Newton Method
where U is a real unitary matrix (i.e., UTU ¼ In) and ε is a diagonal n n matrix with diagonal
elements εi, i ¼ 1, . . ., n. Obviously, for the real symmetric matrix Gk, there exists a real unitary
(or orthogonal) matrix U such that UTGkU is a diagonal matrix with diagonal elements λi, i ¼ 1, . . ., n,
where λi are the eigenvalues of Gk. Therefore, from (4.58), we can see that G bk is a diagonal matrix
with the elements λi þ εi, i ¼ 1, . . ., n. If εi, i ¼ 1, . . ., n, are selected as
0, λi > 0,
εi ¼
δ λi , λi 0,
where δ is a positive constant, then Gbk will be positive definite. The matrix UTGkU can be computed
by solving the characteristic equation det(Gk λIn) ¼ 0. This method involves a minimal disturbance
of Gk, and therefore the convergence properties of the Newton method are preserved. However, the
difficulty with this method is the determination of the n roots of the characteristic polynomial of Gk.
b LT 1 :
bk ¼ L1 D
G
b LT 1 dk ¼ ∇f ðxk Þ:
L1 D ð4:59Þ
(
∇2 f ðxk Þ1 gk , cos θ η,
dk ¼
gk , otherwise,
where η > 0 is a given constant. Obviously, the direction dk satisfies the condition cosθ η, thus
obtaining the convergence of the method.
Observe that
a2 ¼ max feii g
i
is also an upper bound of νk, where eii is the i-th diagonal element of E. With these, an estimation of
νk is given by
νk ¼ min fa1 , a2 g,
X
j1
d jj ¼ gjj dpp l2jp , ð4:60Þ
p¼1
!
1 X
j1
lij ¼ gij dpp ljp lip , i j þ 1, ð4:61Þ
d jj p¼1
where gij represents the elements of Gk and djj are the diagonal elements of D. At this moment, for
defining a stable Cholesky factorization for the factors L and D, the following conditions are imposed:
where ξj ¼ gjj þ ejj, in which ejj is selected in such a way so that max|rij| ¼ β, with which, as above,
compute the j-th column of L.
At step n of this procedure, we obtain a Cholesky factorization of Gk as
Gk ¼ LDLT ¼ Gk þ E,
where E is a diagonal matrix with diagonal elements eii nonnegative. For a given matrix Gk, the
elements of the matrix E depend on β. Gill and Murray (1974a) proved that if n > 1, then
2
ξ
where ξ and γ are the maximum of the absolute value of the nondiagonal elements of Gk and the
pffiffiffiffiffiffiffiffiffiffiffiffiffi
maximum of the diagonal elements of this matrix, respectively. Since for β2 ¼ ξ= n2 1 the above
bound is minimized, then we can consider
n pffiffiffiffiffiffiffiffiffiffiffiffiffi o
β2 ¼ max γ, ξ= n2 1, εM , ð4:63Þ
where εM represents the accuracy of the machine. Introducing εM in (4.63) is motivated by the case in
which kGkk is too small. With these developments, the following modified Cholesky factorization
algorithm may be presented, in which cip ¼ lipdpp, p ¼ 1, . . ., j; i ¼ j, . . ., n are the parameters stored in
Gk for reducing the memory requirements.
4.7 The Newton Method with Finite-Differences 145
∇f ðxk ÞT sk 1
k∇f ðxk Þk:
ks k k κ
With these, under the Wolfe inexact line-search, from Theorem 2.27 it follows that the sequence
{∇f(xk)} is convergent to zero. In other words, for the modified Newton method, the following result
holds.
Theorem 4.10 Let f : D ⊂ ℝn ! ℝ be a twice continuously differentiable function on the open set D
and the level set S ¼ {x : f(x) f(x0)} a compact. If the sequence {xk} is generated by the modified
Newton method, then
lim ∇f ðxk Þ ¼ 0: ♦
k!1
We can see that in order to get a well-defined Newton method, there are a lot of procedures for
modifying the Hessian matrix of the minimizing function. We point out that there are no computa-
tional studies about the efficiency of all these modifications of the Newton method and about their
classification for seeing which one is the best.
As we have already seen, at every iteration the Newton method requires the evaluation of the Hessian
matrix of the minimizing function f and the solving of the Newton system ∇2f(xk)dk ¼ ∇ f(xk) for
determining the Newton search direction dk. For the evaluation of the Hessian matrix ∇2f(xk) in the
current point xk, we have two possibilities. The first one consists of the analytical determination of the
elements of the Hessian. The second one is automatic differentiation. The automatic differentiation is
a powerful solution and is included in some professional systems for modeling and optimization like
GAMS (Brooke, Kendrick, Meeraus, Raman, & Rosenthal, 1998), (Brooke, Kendrick, Meeraus, &
146 4 The Newton Method
Raman, 2005), and AMPL (Fourer, Gay, & Kernighan, 2002). An alternative for these two
possibilities is to use the finite-difference approximation of the derivatives.
In this section, the Newton method with finite-differences is presented, both for solving nonlinear
algebraic systems of equations and for functions minimization. At the start, let us discuss the
approximation of derivatives by finite-differences. For function f : ℝ ! ℝ the estimation of f 0(x)
by finite differencing using only values of f(x) is discussed in Appendix A.
Let F : ℝn ! ℝm. Then the element (i, j) of the Jacobian matrix J(x) of function F(x) can be
approximated as
where fi(x) is the i-th component of F(x), ej is the j-th column of the unity matrix, and h is a small
perturbation of x.
If we denote with A.j as the j-th column of the matrix A which approximates the Jacobian, then
F x þ hej FðxÞ
A:j ¼ : ð4:65Þ
h
Theorem 4.11 Let F : ℝn ! ℝm be continuously differentiable on the open and convex set D ⊂ ℝn
with J(x) Lipschitz continuous with the constant L for any x 2 D. Then, in the norm k.k which satisfies
kejk ¼ 1, for any j ¼ 1, . . ., n it follows that
L
A:j J ðxÞ:j jhj, ð4:66Þ
2
and in the norm l1,
L
kA J ðxÞk1 jhj: ð4:67Þ
2
An efficient calculation of the sparse Jacobian matrix for nonlinear systems of equations using
finite differences was presented by Andrei (1983).
Let us now consider the function f : ℝn ! ℝ. An approximation to the gradient ∇f(x) in x can be
obtained by the forward finite-difference formula
4.7 The Newton Method with Finite-Differences 147
Obviously, for the evaluation of the gradient, the function f has to be evaluated in n þ 1 points:
x and x þ hei, i ¼ 1, . . ., n. Therefore, from (2.18),
∂f ðxÞ f ðx þ hei Þ f ðxÞ
¼ þ δh , ð4:69Þ
∂xi h
where
L
jδh j h: ð4:70Þ
2
Hence, the error in approximation by the forward finite-difference is of order O(h).
A highly accurate approximation is obtained by using the central finite-difference
∂f ðxÞ f ðx þ hei Þ f ðx hei Þ
ffi : ð4:71Þ
∂xi 2h
The following theorems give bounds on the errors in the approximation of the gradient and of the
Hessian by central finite-difference.
Theorem 4.12 Let f : ℝn ! ℝ be a twice continuous differentiable function on the open and convex
set D ⊂ ℝn for which the Hessian ∇2f(x) is Lipschitz continuous with the constant L for any x 2 D.
Consider the norm k.k which satisfies keik ¼ 1 for all i ¼ 1, . . ., n. Suppose that for any i ¼ 1, . . ., n,
x þ hei, x hei 2 D. Let a 2 ℝn be a vector with the components ai, i ¼ 1, . . ., n, defined as
f ðx þ hei Þ f ðx hei Þ
ai ¼ : ð4:72Þ
2h
Then
ai j∇f ðxÞj L h2 : ð4:73Þ
i 6
If the infinite norm l1 is used, then
L
ka ∇f ðxÞk1 h2 : ð4:74Þ
6
L L
jαj h3 , jβj h3
6 6
From the triangle inequality,
L
j α β j h3 :
3
With this, from (4.75), (4.76), and (4.72), it follows that α β ¼ 2h(ai [∇f(x)]i), which
proves (4.73). Next, using the definition of l1 from (4.73), we get (4.74) at once, which proves the
theorem. ♦
Theorem 4.13 Let f : ℝn ! ℝ be a twice continuously differentiable function on the convex and open
set D ⊂ ℝn for which the Hesian ∇2f(x) is Lipschitz continuous with the constant L for any x 2 D.
Consider the norm k.k which satisfies keik ¼ 1 for all i ¼ 1, . . ., n. Suppose that x, x þ hei, x þ hej,
x þ hei þ hej 2 D for any i, j ¼ 1, . . ., n. Let A 2 Rnn be a matrix with the elements
α ¼ f x þ hei þ hej f ðxÞ hei þ hej ∇f ðxÞ hei þ hej ∇2 f ðxÞ hei þ hej ,
2
1
β ¼ f ðx þ hei Þ f ðxÞ ðhei ÞT ∇f ðxÞ ðhei ÞT ∇2 f ðxÞðhei Þ,
2
T 1
T
Then,
α β γ ¼ h2 aij ∇2 f ðxÞ ij ð4:80Þ
The Newton method with finite-difference for solving nonlinear algebraic systems of equations
F(x) ¼ 0, where F : ℝn ! ℝn is continuous differentiable, may be presented as follows.
1. Initialization. Consider an initial point x0 2 ℝn as well as the convergence tolerance ε > 0 sufficiently
small for stopping the iterations. Set k ¼ 0
2. Compute F(xk) and for j ¼ 1, . . ., n, compute the j-th column
Fðxk þhk ej ÞFðxk Þ
ðAk Þ:j ¼ hk
of matrix Ak, where hk is a small perturbation of xk
3. Solve the linear algebraic system Akdk ¼ F(xk)
4. If kdkk2 ε, then stop; otherwise continue with step 5
5. Set xkþ1 ¼ xk þ dk, k ¼ k þ 1 and go to step 2 ♦
Application S5 (Stationary solution of a chemical reactor) Table 4.3 presents the initial point, the
functions values in the initial point F(x0), solution of this application obtained by the Newton method
with ε ¼ 106 in 5 iterations, and the functions values in x. On the other hand, Table 4.10 shows the
initial point, solution of this application given by the Newton method with finite-difference with
ε ¼ 106 in 5 iterations, and the functions values in these points.
Application S6 (Robot kinematics problem) Table 4.4 shows the initial point x0, the functions values
in the initial point F(x0), the solution x of this application given by the Newton method with ε ¼ 106
in 3 iterations, and the functions values in x. Table 4.11 shows the initial point x0, the solution x of
this application given by the Newton method with finite-difference with ε ¼ 106 in 4 iterations, and
the functions values in these points.
Table 4.10 Stationary solution of a chemical reactor. Initial point, solution, functions values in these points. Newton
with finite-difference method. 5 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 1.09 –35.164864 0.97424361 0.176600e– 07
2 1.05 –0.2403040 0.98282907 0.102566e– 09
3 3.05 3626.94637 0.05151277 –0.771388e– 04
4 0.99 –1779.9233 0.93567119 0.385517e– 04
5 6.05 –1814.7127 0.00009070 0.385692e– 04
6 1.09 – 7.13 0.06423810 0.949240e–14
150 4 The Newton Method
Table 4.11 Robot kinematics problem. Initial point, solution, functions values in these points. Newton with finite-
difference method. 4 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.164 0.0026823 0.16443166 0.0
2 – 0,98 – 0.0098180 – 0.98638847 0.1110223e–15
3 – 0,94 0.1050028 – 0.94706369 0.3469446e–17
4 – 0,32 0.0017588 – 0.32104573 0.0
5 – 0,99 – 0.0127040 – 0.99823316 – 0.4440892e–15
6 –0.056 – 0.014 0.05941842 – 0.4440892e–15
7 0.41 – 0.016764 0.41103315 0.499000e–09
8 – 0.91 – 0.0038 – 0.91162039 0
Table 4.12 Propan combustion in air – reduced variant. Initial point, solution, functions values in these points.
Newton with finite-difference method. 10 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 10 109.85000 0.0031141022 –0.1600708e–09
2 10 209.54267 34.597924281 –0.4749359e–09
3 0,05 – 0.3487418 0.0650417788 –0.2873626e–09
4 50,5 5098.5172 0.8593780968 0.15903885e–06
5 0,05 2659.2930 0.0369518591 0.79210239e–07
Application S9 (Propan combustion in air – reduced variant) Table 4.5 contains the initial point x0,
the functions values in the initial point F(x0), the solution x of this application given by the Newton
method with ε ¼ 106 in 9 iterations, and the functions values in x. Table 4.12 shows the initial point,
the solution x of this application obtained by the Newton method with finite-difference with ε ¼ 106
in 10 iterations, and the functions values in these points.
Application S14 (Circuit design) Table 4.6 contains the initial point x0, the functions values in the
initial point F(x0), the solution x of this application given by the Newton method with ε ¼ 106 in
4 iterations, and the functions values in x. Table 4.13 shows the initial point x0, the solution x of this
application given by the Newton method with finite-difference with ε ¼ 106 in 4 iterations, and the
functions values in these points.
Observe that the performances of the Newton method with finite-difference are similar to those of
the Newton method.
Theorem 4.14 Let F : ℝn ! ℝn be continuously differentiable on the convex and open set D ⊂ ℝn.
Suppose that there are x 2 ℝn and the constants r, β > 0 such that B(x, r) ⊂ D, F(x) ¼ 0, J(x)1
exists and kJ(x)1k β, where J is Lipschitz continuous on B(x, r) ¼ {x 2 ℝn : kx xk < r}
centered in x of radius r. Then, there are ε, h > 0 such that if x0 2 B(x, r) and {hk} is a sequence of
real numbers with 0 < |hk| h, then the sequence {xk} generated by Algorithm 4.5 is well defined and
4.7 The Newton Method with Finite-Differences 151
Table 4.13 Circuit design. Initial point, solution, functions values in these points. Newton with finite-difference
method. 4 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.7 0.95525047 0.89999995 0.427648e –06
2 0.5 3.04155543 0.44998743 0.352005e–05
3 0.9 – 4.16621316 1.00000645 0.101280e–04
4 1.9 – 2.11846214 2.00006862 0.144598e–04
5 8.1 5.636125856 7.99997146 –0.1617286e–06
6 8.1 22.31397917 7.99969192 0.581500e –07
7 5.9 24.95943321 5.00003074 –0.1969207e–05
8 1 42.18784331 0.99998770 0.181683e–06
9 1.9 – 0.32000000 2.00005229 0.700407e–08
converges linearly to x. If lim hk ¼ 0, then the convergence is superlinear. If there is a constant c1
k!1
such that
Proof Select ε and h such that for xk 2 B(x, ε), the matrix Ak is nonsingular and |hk| < h. Consider
ε r and
1
εþh : ð4:83Þ
2βL
For k ¼ 0, let us prove that A0 is nonsingular. From Theorem 4.11 it follows that
Lh
kAð x Þ J ð x Þ k :
2
Therefore,
1
J ðx Þ ðA0 J ðx ÞÞ J ðx Þ1 A J ðx0 Þ þ ðJ ðx0 Þ J ðx ÞÞ
0
Lh 1
β þ Lε :
2 2
152 4 The Newton Method
Now, from the von Neumann theorem (see Appendix A), it follows that A0 is nonsingular and
1
A 2β: ð4:85Þ
0
x1 x ¼ x0 A1
0 Fð x 0 Þ x
1
¼ A0 f½Fðx Þ Fðx0 Þ J ðx0 Þðx x0 Þ þ½ðJ ðx0 Þ A0 Þðx x0 Þg:
By using Theorem 2.7 (see (2.18)), from (4.85) and (4.83), we get
kx1 x k A1 fkFðx Þ Fðx0 Þ J ðx0 Þðx x0 Þk þ kJ ðx0 Þ A0 kkx x0 kg
n
0 o
L L
2β kx x0 k2 þ hkx0 x k ð4:86Þ
2 2
1
βLðε þ hÞkx x0 k kx0 x k,
2
that is, (4.84) is true for k ¼ 0. Now, supposing that this result is true for k ¼ j and by using the same
technique, we can prove that the result is true for k ¼ j þ 1. Therefore, (4.83), (4.84) are true, thus
proving the linear convergence of the sequence {xk}.
For showing the superlinear and the quadratic convergence, a finer and more improved bound for
kA0 J(x0)k should be used. When limk!1hk ¼ 0, then the second term in the bracket of (4.86) tends
to zero, thus proving that
kxkþ1 x k
! 0, when k ! 1,
kx k x k
For the optimization problem minn f ðxÞ, when the gradient ∇f(x) is available, as in the case of the
x2ℝ
vast majority of applications, then a finite-difference approximation of the Hessian ∇2f(x) can be
obtained by using either the forward finite-difference formula or the central finite-difference formula.
At iteration k, the Newton method with central-difference for minimizing function f is
∇f xk þ hj ej ∇f ðxk Þ
ðAÞ:j ¼ , j ¼ 1, . . . , n,
hj
A þ AT
Ak ¼ ,
2
xkþ1 ¼ xk A1
k ∇f ðxk Þ,
where
pffiffiffi
then the Newton method with the finite-difference xkþ1 ¼ xk A1 k ∇f ðxk Þ has a quadratic rate of
convergence. An appropriate choice of the difference parameter hj can be difficult. The rounding
errors overwhelm the calculation if hj is too small, while the truncation errors dominate if hj is too
large. The Newton codes rely on forward differences, since they often yield sufficient accuracy for
reasonable values of hj. The central differences are more accurate, but they require the work twice (2n
gradient evaluations against n evaluations).
Many algorithms for optimization use the product of the Hessian ∇2f(xk) and a given vector dk. In
this case, an approximation of the product ∇2f(xk)dk is given by
∇f ðxk þ hd k Þ ∇f ðxk Þ
∇2 f ðxk Þdk ffi ,
h
where
pffiffiffiffiffi
2 εm ð1 þ kxkþ1 kÞ
h¼ ,
kd k k
for which the error is of order O(h). Observe that for obtaining this approximation, only a single
evaluation of the gradient in point xk þ hdk is necessary.
If the gradient is not available, then an approximation of the Hessian can be computed by using the
values of the minimizing function. From (4.71) we get the following approximation of the Hessian:
f xk þ hi ei þ hj ej f ðxk þ hi ei Þ f xk þ hj ej f ðxk Þ
b
Ak ¼ ,
ij hi hj
where
p ffiffiffi
hj ¼ 3
η max xj , xej sign xj ,
or
p ffiffiffi
hj ¼ eεxj ,
3
where eε is the accuracy of the machine. In this case, the forward or the central finite-difference
formula give the following approximations to the gradient:
f x k þ hj e j f ð x k Þ
ðgbk Þj ¼ , j ¼ 1, . . . , n,
hj
and
f xk þ hj ej f xk hj ej
ðgbk Þj ¼ , j ¼ 1, . . . , n,
2hj
respectively. The errors of these approximations are of order O(hj) and O h2j , respectively. In this
case, the Newton method with finite-difference is expressed as
1
xkþ1 ¼ xk Abk gbk ,
154 4 The Newton Method
where Abk and gbk are approximations by the finite-difference of the Hessian ∇2f(xk) and of the gradient
∇f(xk), respectively. In the standard hypothesis given by Theorem 4.14, we can prove that
1
L
kxkþ1 x k Abk kxk x k2 þ Abk ∇2 f ðxk Þ kxk x k þ kgbk ∇f ðxk Þk : ð4:87Þ
2
Observe that the difference between (4.87) and (4.86) is the additional term kgbk ∇f ðxk Þk. To get
the quadratic convergence, we must obviously have kgbk ∇f ðxk Þk ¼ O kxk x k2 , thus involv-
ing the selection hj ¼ O(kxk xk2). Therefore, with this selection of hj the convergence of the
Newton method with central-difference is quadratic.
It is worth mentioning that although the error of the Newton method with central-difference is of
order O h2j , which is smaller than the error corresponding to the forward-difference O(hj), the cost
of the central-difference scheme is twice greater than the forward-difference. This is the reason why
the central-difference scheme is very rarely used in practice, only for problems for which the
evaluation of the minimizing function is relatively simple or for problems requiring solutions of
great accuracy. Stewart (1967) gave some practical finite-difference schemes based on commuting
from forward-difference to central-difference schemes.
The unconstrained optimization problem becomes more difficult to solve in the presence of errors in
the evaluations of the function and its gradient. Suppose that we can compute only f approximately.
If we compute fb ¼ f þ εf rather than f, then a forward-difference gradient with the difference
increment h
fbðx þ hÞ fbðxÞ
Dh f ðxÞ ¼
h
pffiffiffiffi
differs from f 0 by O(h þ εf/h). This difference is minimized if h ¼ O εf : Therefore, the error in
pffiffiffiffi
the gradient is εg ¼ O εf : If a forward-difference Hessian is computed by using Dh as an
approximation to the gradient, then the error in the Hessian will be
pffiffiffiffiffi
1=4
Δ ¼ O εg ¼ O εf ð4:88Þ
and the accuracy in ∇2f will be much smaller than that of a Jacobian in the nonlinear system of
equations.
If εf is significantly larger than the machine roundoff, then (4.88) indicates that using the numerical
Hessians based on a second numerical differentiation of the minimizing function will not be very
accurate. Even in the best possible cases, where εf is the same size as the machine roundoff, the finite-
difference Hessians will not be very accurate and will be quite expensive to compute if the Hessian is
dense. As known, if the machine roundoff is 1016 for most computers, then (4.88) indicates that the
forward difference Hessian will be accurate to roughly four decimal digits.
Better results can be obtained with central-differences, but at a cost of twice the number of
function evaluations. A central-difference approximation to ∇f is
4.8 Errors in Functions, Gradients, and Hessians 155
fbðx þ hÞ fbðx hÞ
Dh f ðxÞ ¼
2h
1=3
and the error is O(h2 þ εf/h), which is minimized if h ¼ O εf leading to an error in the gradient of
2=3
εg ¼ O εf : Therefore, a central-difference Hessian will have an error of
2=3 4=9
Δ¼O εg ¼ O εf ,
Theorem 4.15 Suppose that f is twice continuously differentiable, ∇f(x) ¼ 0, ∇2f(x) is positive
definite and k∇2f(x) ∇2f( y)k γkx yk. Then there are K > 0, δ > 0 such that if xk 2 B(δ), then the
Newton iterate from xk given by xkþ1 ¼ xk (∇2f(xk))1 ∇ f(xk) satisfies
kekþ1 k K kek k2 ,
Proof Let δ be small enough so that the conclusions of Theorem A2.5 hold. By Theorem 2.1 it
follows that
¼ ∇ f ðxk Þ
2
∇ f ðxk Þ ∇2 f ðx þ tek Þ ek dt:
0
If Δ(xk) and εg(xk) are the errors in the Hessian and in the gradient, respectively, then the following
estimation of the error ek at the iteration k in the perturbed Newton method can be obtained (Kelley,
1999).
156 4 The Newton Method
Theorem 4.16 Suppose that f is twice continuously differentiable, ∇f(x) ¼ 0, ∇2f(x) is positive
definite and k∇2f(x) ∇2f( y)k γkx yk. Then there are K > 0, δ > 0 and δ1 > 0 such that if xk 2 B(δ)
and kΔ(xk)k < δ1, then
1
Proof Let δ be small enough such that the conclusions of Theorem A2.5 hold. Define
1
xNkþ1 ¼ xk ∇2 f ðxk Þ ∇f ðxk Þ: Observe that
1 2
1
1
xkþ1 ¼ xNkþ1 þ ∇2 f ðxk Þ ∇ f ðxk Þ þ Δðxk Þ ∇f ðxk Þ ∇2 f ðxk Þ þ Δðxk Þ εg ðxk Þ:
If
1
1 1
kΔðxk Þk ∇2 f ðx Þ ,
4
then from Theorem A2.5 we get
1
1 1
kΔðxk Þk ∇2 f ðxk Þ :
2
The Banach lemma states that ∇2f(xk) þ Δ(xk) is nonsingular and
1
1
1
2
∇ f ðxk Þ þ Δðxk Þ 2 ∇2 f ðxk Þ 4 ∇2 f ðx Þ :
Hence,
1 2
1
1
2 2
∇ f ðx k Þ ∇ f ðxk Þ þ Δðxk Þ 8 ∇2 f ðx Þ kΔðxk Þk:
Therefore, using these estimates, from (4.90) the estimate of the error (4.89) is obtained, that is, the
conclusion of the theorem. ♦
The interpretation of (4.89) is as follows. Firstly, we can see that kekþ1k is proportional to kekk2
and the factor of proportionality is independent of kΔ(xk)k and εg(xk). Observe that in the norm of the
error ekþ1, given by (4.89) the inaccuracy evaluation of the Hessian given by kΔ(xk)k is multiplied by
4.9 Negative Curvature Direction Methods 157
the norm of the previous error. On the other hand, the inaccuracy evaluation of the gradient given by
εg(xk) is not multiplied by the previous error and has a direct influence on kekþ1k. In other words, in
the norm of the error the inaccuracy in the Hessian has smaller influence than the inaccuracy of the
gradient. Therefore, in this context, from (4.89), the following remarks may be emphasized:
• If both kΔ(xk)k and εg(xk) are zero, then we get the quadratic convergence of the Newton method.
• If εg(xk) 6¼ 0 and kεg(xk)k is not convergent to zero, then there is no guarantee that the error for the
Newton method will converge to zero.
• If kΔ(xk)k 6¼ 0, then the convergence of the Newton method is slowed down from quadratic to
linear or to superlinear if kΔ(xk)k ! 0.
Therefore, we can see that the inaccuracy evaluation of the Hessian of the minimizing function is
not so important. The accuracy of the evaluation of the gradient is more important. This is the main
motivation why the diagonal quasi-Newton updating method may be used for unconstrained optimi-
zation (Andrei, 2019a, 2019b, 2020c, 2020d). (See Chap. 6, Sect. 6.3.)
As we know, the Newton method is quadratic convergent when the current point is in a neighborhood
of the minimum point, and the Hessian matrix in the current point is positive definite. If the Hessian in
the current point is an indefinite matrix and the current point is near enough to a saddle point, then the
Newton method is not defined and has to be modified. If ∇f(xk) ¼ 0, then there is no direction of
descent, and if ∇2f(xk)is indefinite, then xk is a saddle point. A vector d is termed a direction of
negative curvature if dT∇2f(xk)d < 0.
In this section, the modified Newton method is based on the concept of negative curvature. At the
beginning the stable Newton method of Gill and Murray (1972) is described, and after that two
methods of negative curvature developed by Fiacco and McCormick (1968) and Fletcher and
Freeman (1977), respectively, are presented. A definition is now given to clarify the concepts (Sun,
& Yuan, 2006).
Definition 4.1 Let f : ℝn ! ℝ be a twice continuously differentiable function on the open set
D ⊂ ℝ n.
(i) If ∇2f(x) has at least a negative eigenvalue, then we say that x is an indefinite point.
(ii) If x is an indefinite point and d satisfies the condition dT∇2f(x)d < 0, then we say that d is a
negative curvature direction of f(x) in x.
(iii) If sT ∇ f(x) 0, dT ∇ f(x) 0, dT∇2f(x)d < 0, then we say that the pair (s, d ) is a descent pair in
the indefinite point x.
If x is not an indefinite point and satisfies sT ∇ f(x) < 0, dT ∇ f(x) 0, and dT∇2f(x)d ¼ 0, then we
say that the pair (s, d ) is a descent pair in x. ♦
An example of descent pair is as follows:
s ¼ ∇f ðxÞ,
(
0, ∇2 f ðxÞ 0,
d¼
signðu ∇f ðxÞÞu,
T
otherwise,
From the above definition we can see that in a stationary point, a negative curvature direction has
to be a descent direction. In an arbitrary general point, if the negative curvature direction satisfies
dT ∇ f(x) ¼ 0, then both d and d are descent directions. On the other hand, if dT ∇ f(x) 0, then d is a
descent direction. If dT ∇ f(x) 0, then d is a descent direction.
Gk ¼ Gk þ Ek ¼ Lk Dk LTk , ð4:91Þ
where
With these, if kgkk ε and ∇2f(xk) is not positive semidefinite, then the following algorithm of
negative curvature direction is used.
Gk ¼ Gk þ Ek ¼ Lk Dk LTk ,
the modified Cholesky factorization. If the direction dk is generated by Algorithm 4.6, then dk is a
negative curvature direction in xk and at least one of the directions dk and dk is a descent direction
in xk.
Proof Since Lk is a unitary inferior triangular matrix, then the solution of the system (4.93) has the
following form
Then,
X
j1
ejj ¼ gjj gjj ¼ d jj þ l2jp dp gjj ¼ djj cjj 0,
p¼1
that is,
X
t1
ρ2p epp 0:
p¼1
Since φt < 0, it follows that dTk Gk dk < 0, that is, dk is a negative curvature direction and dk is
also a negative curvature direction. If gTk d k 0, then dk is a descent direction; otherwise dk is a
descent direction. ♦
1. Consider an initial point x0 as well as the convergence tolerance ε > 0 sufficiently small. Set k ¼ 1
2. Compute gkand Gk
3. Compute the modified Cholesky factorization by using Algorithm 4.4 Gk þ Ek ¼ Lk Dk LTk
4. If kgkk > ε, then solve the system Lk Dk LTk dk ¼ gk subject to dk and continue with step 6; otherwise, go
to step 5
5. Perform the steps of Algorithm 4.6. If the direction dk may not be generated, that is, φt 0, then stop;
otherwise, determine the direction dk and set (
dk , gTk dk > 0,
dk ¼
dk , gTk dk 0
6. Compute the stepsize αk and set xkþ1 ¼ xk þ αkdk
7. If f(xkþ1) f(xk), stop; otherwise, set k ¼ k þ 1 and go to step 2 ♦
The following theorem proves the convergence of the algorithm (Gill, & Murray, 1972).
Theorem 4.18 Let f : ℝn ! ℝ be a twice continuously differentiable function on the open set
D ⊂ ℝn. Suppose there is x 2 D such that the level set SðxÞ ¼ fx : f ðxÞ f ðxÞg is convex, bounded,
and closed. Suppose that x0 2 SðxÞ: Then the sequence {xk} generated by Algorithm 4.7 in which
ε ¼ 0 satisfies:
(i) If {xk} is a finite sequence, then the final point of this sequence is a stationary point of function
f(x).
(ii) If {xk} is an infinite sequence, then this sequence has accumulation points and all of them are
stationary points of function f(x). ♦
then
160 4 The Newton Method
1
f ðxk þ dk Þ ffi f ðxk Þ þ d Tk gk þ dTk Gk dk
2
will be reduced. Since Gk is indefinite, the Fiacco-McCormick method uses the factorization
Gk ¼ LDLT , ð4:95Þ
where L is an inferior, unitary triangular matrix and D is a diagonal matrix. If Gk is positive definite,
then the direction dk generated by the factorization (4.95) is descent. However, if there is a diagonal
element dii negative, then the following system is solved:
LT t ¼ a,
The criticism of this very simple method lies in its numerical instability. The factorization (4.95)
can amplify the errors or it may not exist. This is the reason why Fletcher and Freeman (1977)
introduced a stable symmetric factorization, which we are going to present.
PT Gk P ¼ LDLT , ð4:96Þ
where L is an inferior, unitary triangular matrix and D is a block-diagonal matrix with 1 1or 2 2-
dimensional blocks. The purpose of introducing the permutation matrix P is to conserve the
symmetry and to maintain the numerical stability of the factorization. It is worth mentioning that
the factorization (4.96) always exists and is numerically stable. This is the difference between this
method and the method of Fiacco and McCormick, which uses the numerically unstable factorization
(4.95).
In the case in which the pivot is an element 1 1-dimensional, then the matrix A, n n
-dimensional can be expressed as
ð0Þ a11 aT21
A¼A ¼ ,
a21 A22
" #
ð1Þ ð0Þ 0 0T
A ¼A d11 l1 lT1 ¼ , ð4:97Þ
0 A22 a21 aT21 =d 11
where
1 a11 1
d11 ¼ a11 , l1 ¼ ¼ :
d11 a21 a21 =d11
where this time A11 is a 2 2 dimensional matrix, A21 is (n 2) 2 -dimensional, and A22 is a
(n 2) (n 2) sub-matrix. By pivoting, the following A(2) matrix is obtained:
I
Að2Þ ¼ Að0Þ L1 D1 LT1 ¼ Að0Þ D1 I LT21
L21 ð4:98Þ
0 0
¼ T ,
0 A22 A21 D1 1 A21
where
A11 1 I I
D1 ¼ A11 , L1 ¼ D ¼ ≜ :
A21 1 A21 A1
11 L21
followed by a permutation of the rows and columns in such a way that A11 is exactly this sub-matrix.
This factorization generates the matriceal factors L and D as an inferior, unitary triangular matrix
and a block-diagonal matrix, respectively. For example, for the case in which there are 2 blocks 1 1
and 2 2, then the structure of these matriceal factors is
162 4 The Newton Method
2 3 2 3
1
6 7 6 7
6 1 7 6 7
6 7 6 7
6 0 1 7 6 7
L¼6
6
7, D ¼ 6
7 6
7
7
6 1 7 6 7
6 7 6 7
4
0 1 5 4 5
1
A similar, more economical factorization was given by Bunch and Kaufman (1977).
Therefore, let the following factorization of the symmetric indefinite matrix Gk be as Gk ¼ LDLT.
With this, solve the triangular system
LT t ¼ a, ð4:99Þ
and in the case of a 2 2 dimensional pivot, ½ ai aiþ1 T is the unitary eigenvector corresponding to
the negative eigenvalue of the sub-matrix
dii di,iþ1
:
diþ1,i diþ1,iþ1
and
gTk dk 0:
If D has at least a zero eigenvalue, then the direction dk is computed such that
If all the eigenvalues of D are positive, then all the blocks are 1 1-dimensional elements and in
this case the generated direction is exactly the usual Newton direction
Note that the negative curvature descent direction (4.100) is limited to a certain subspace. On the
other hand, the direction given by (4.101) is exactly the Newton direction limited to the subspace of
the positive curvature directions.
Even if the negative curvature directions have some attractive properties, they are not efficient,
particularly in situations when they are used at successive iterations. Although no solid theoretical
justification is known for an alternate usage of the directions given by (4.100) or by (4.101),
respectively, in practice this alternation gives better results. In the same experimental manner, if
D has eigenvalues zero, then the results obtained are better if the direction is alternately computed by
(4.101) or by (4.102), respectively.
What is important to notice is the Bunch-Parlett factorization of the symmetric indefinite matrices.
This factorization is not only found in the context of the Newton method, but in many interior point
methods from linear programming (Andrei, 2011d) or in the constrained optimization. Even if these
modifications of the Newton method have theoretical justification, they are not used in solving real
application. Some other unconstrained optimization methods are more efficient and more robust
(conjugate gradient, quasi-Newton, truncated Newton, limited memory BFGS, etc.).
xkþ1 ¼ xk þ αk dk , k ¼ 0, 1, . . . ,
where αk is the stepsize. Choosing αk less than one is important for the global convergence. As we
know, under standard assumptions the Newton method is quadratic convergent. Since the dominant
work of this method is the factorization of the n n -dimensional Jacobian matrix, then without
taking into account the work needed to evaluate the function F and its Jacobian J, the algebra required
per iteration is O(n3). If n is large, the factorization of the Jacobian matrix can be a very serious
provocation.
In order to reduce the computational effort at each iteration, the simplified Newton method can be
defined as
J ðx0 Þdk ¼ Fðxk Þ, ð4:104Þ
xkþ1 ¼ xk þ αk dk , k ¼ 0, 1, . . .
The simplified Newton method requires the factorization of J(x0) and its usage along all the
iterations. In this case, the computational effort is of order O(n2). Obviously, the convergence is only
linear, thus forcing the method to perform a larger number of iterations.
164 4 The Newton Method
Between these two possibilities given by the Newton method (4.103) and the simplified Newton
method (4.104), we can imagine another method, in which a number of m simplified Newton
iterations is performed between any Newton iterations. In other words, for these m iterations, the
same factorization of the Jacobian is used. This is known as the composite Newton method of order m,
defined as
We can see at once that exactly m linear algebraic systems with the same matrix J(xk) have to be
solved at the k-th iteration. The average computational effort on iteration is of order O((n3 þ mn2)/m),
which for m large is of order O(n2). Therefore, for m large, the behavior of the composite Newton
method of order m is like the simplified Newton method. Consequently, advanced implementations of
the composite Newton method of order m not only modify the parameter m at every Newton iteration,
but would also keep m relatively as small as possible. Under the standard Newton method
assumptions, the composite Newton method of order m has a convergence rate of m þ 2. A proof
can be found in Ortega and Rheinboldt (2000).
A composite Newton method of order 1 is of particular interest, where one Newton iteration is
composed with one simplified Newton iteration (Traub, 1964). This is defined as
The following theorem shows the cubic convergence of the composite Newton method of order
1 (Ortega, & Rheinboldt, 2000).
Proof From the Theorem 4.1 observe that the function N(x) ¼ x J(x)1F(x), which defines the
Newton method, is well defined and for any x 2 B(x, δ1) ⊂ B(x, δ) satisfies
4.10 The Composite Newton Method 165
for all x 2 B(x, δ2), then by using the above relations (4.105), (4.106), and (4.107), it follows that
kGðxÞ x k ¼ N ðxÞ J ðxÞ1 FðN ðxÞÞ x
¼ J ðxÞ1 ½J ðxÞN ðxÞ FðN ðxÞÞ J ðxÞx
J ðxÞ1 kJ ðxÞN ðxÞ FðN ðxÞÞ J ðxÞx k
βkJ ðxÞN ðxÞ FðN ðxÞÞ J ðxÞx þ Fðx Þ
þJ ðx ÞN ðxÞ J ðx Þx J ðx ÞN ðxÞ þ J ðx Þx k
βkFðN ðxÞÞ Fðx Þ J ðx ÞðN ðxÞ x Þk
þβkJ ðx Þ J ðxÞk kN ðxÞ x k
1
βLkN ðxÞ x k2 þ βLkx x k kN ðxÞ x k
2
1
βLη2 kx x k4 þ βLηkx x k3
2
h i
1
¼ βLη ηδ2 þ 1 kx x k3
2
for all x 2 B(x, δ2), thus proving the cubic convergence of the composite Newton method of
order 1. ♦
In current practice it is credited that the composite Newton method is efficient when n is large and
the function F is easy to evaluate. This is the case of the interior point methods for solving constrained
optimization problems (including the linear programming) in which the advanced implementations
use the composite Newton method (Mehrotra, 1989), (Zhang, Tapia, & Dennis, 1992), (Andrei,
1999a, 1999b).
In the following, let us present the performances of the composite Newton method of order 1 for
solving some applications from the SMUNO collection (Stationary solution of a chemical reactor,
Robot kinematics problem, Propan combustion in air – reduced variant and Circuit design). These
applications were solved by the Newton method (see Tables 4.3, 4.4, 4.5, and 4.6)
Table 4.14 Stationary solution of a chemical reactor. Initial point, solution, functions values in these points.
Composite Newton method of order 1. 4 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 1.09 –35.164864 0.97424361 0.0
2 1.05 – 0.2403040 0.98282907 – 0.622e–17
3 3.05 3626.94637 0.05151276 0.0
4 0.99 –1779.9233 0.93567106 – 0.693e–17
5 6.05 –1814.7127 0.00009083 0.681e–12
6 1.09 –7.13 0.06423809 – 0.416e–16
Table 4.15 Robot kinematics problem. Initial point, solution, functions values in these points. Composite Newton
method of order 1. 2 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.164 0.0026823 0.16443166 0.111e–15
2 –0,98 – 0.0098180 –0.98638847 0.0
3 –0,94 0.1050028 –0.94706369 0.260e–17
4 –0,32 0.0017588 –0.32104573 0.555e–16
5 –0,99 – 0.0127040 –0.99823316 0.0
6 –0.05 – 0.014 0.05941842 0.0
7 0.41 – 0.016764 0.41103315 0.110e–011
8 –0.91 – 0.0038 –0.91162039 0.0
Application S6 (Robot kinematics problem) Application S6 described in the SMUNO collection was
solved by the Newton method (see Table 4.4). Table 4.15 presents the performances of the composite
Newton method of order 1 with ε ¼ 106 for solving this application.
Application S9 (Propan combustion in air – reduced variant) This application from the SMUNO
collection was solved by the Newton method, and the performances of this method were presented in
Table 4.5. Table 4.16 shows the performances of the composite Newton method of order 1 with
ε ¼ 106 for solving this application.
Application S14 (Circuit design) The performances of the Newton method for this application taken
from the SMUNO collection were presented in Table 4.6. Table 4.17 shows the performances of the
composite Newton method of order 1 with ε ¼ 106.
By comparing Tables 4.3, 4.4, 4.5, and 4.6 and Tables 4.10, 4.11, 4.12, and 4.13, we can see that
the composite Newton method of order 1 is more efficient than the Newton method.
Remark 4.1 Observe that from the local convergence point of view, the Newton method is exactly
the same as the one for nonlinear equations applied to the problem of finding a root of ∇f. Therefore,
the positive definiteness of ∇2f can be used in an implementation of the Newton method based on the
4.10 The Composite Newton Method 167
Table 4.16 Propan combustion in air – reduced variant. Initial point, solution, functions values in these points.
Composite Newton method of order 1. 7 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 10 109.85000 0.002757177 0.664e–10
2 10 209.54267 39.24228904 0.221e–09
3 0,05 – 0.3487418 – 0.061387604 0.177e–09
4 50,5 5098.5172 0.859724425 0.885e–09
5 0,05 2659.2930 0.036985043 – 0.111e–15
Table 4.17 Circuit design. Initial point, solution, functions values in these points. Composite Newton method of order
1. 3 iterations. e ¼ 106
Nr. x0 F ( x0 ) x* F ( x* )
1 0.7 0.95525047 0.89999995 – 0.285e– 09
2 0.5 3.04155543 0.44998747 – 0.169e– 08
3 0.9 – 4.16621316 1.00000648 – 0.143e– 08
4 1.9 – 2.11846214 2.00006854 – 0.313e– 08
5 8.1 5.636125856 7.99997144 – 0.840e– 09
6 8.1 22.31397917 7.99969268 –0.365e– 08
7 5.9 24.95943321 5.00003127 – 0.401e– 08
8 1 42.18784331 0.99998772 – 0.687e– 08
9 1.9 – 0.32000000 2.00005248 0.110e–09
Cholesky factorization ∇2f ¼ LLT where L is lower triangular and has positive diagonal. The iterations
are terminated when ∇f is sufficiently small. A natural criterion for a relative decrease in k∇fk and the
termination of the iterations is
where τr is the desired reduction in the gradient norm. However, if k∇f(x0)k is very small, it may not
satisfy the above criterion (4.108) in the floating point arithmetic and an algorithm based only on
(4.108) might never terminate. A standard remedy is to augment the relative error criterion and
terminate the iteration by using a combination of the relative and absolute measures of ∇f i.e., when
where τa is an absolute error tolerance. Another practical procedure often implemented in Newton’s
method is the modified Cholesky factorization. A modified Cholesky factorization of a symmetric
matrix A is a factorization P(A + E)PT ¼ LDLT where P is a permutation matrix, L is unit lower
triangular, and D is diagonal or block diagonal and positive definite matrix. It follows that A + E is a
positive definite matrix. This corresponds to making a diagonal perturbation E to A and to computing
a Cholesky factorization of the modified matrix A+E (see Appendix A).
168 4 The Newton Method
These methods are characterized by very strong convergence properties and modest storage
requirements. They are dedicated to solving large-scale unconstrained optimization problems and
applications. The history of these methods starts with the researches of Cornelius Lanczos (1950,
1952), Magnus Hestenes (1951, 1955, 1956a, 1956b), Rosser (1953), Forsythe, Hestenes and Rosser
(1951), (Stein), and others from the Institute for Numerical Analysis – National Bureau of Standards,
Los Angeles, as well as with the researches of Eduard Stiefel (1958) from Eidgen€ ossische Technische
Hochschule Z€ urich. During over 70 years of researches in this area, an impressive number of
developments, variants, and algorithms of these methods have appeared. A thorough and detailed
presentation of these methods was given by Andrei (2020a). The search direction of these methods is
a linear combination of the negative gradient and the previous search direction. The conjugate
gradient methods require only the first order derivatives. As we will see, these methods may include
the second order information given by an approximation of the Hessian of the minimizing function,
thus increasing their convergence properties.
In this chapter we will discuss the linear and nonlinear conjugate gradient methods by presenting
their derivation, the convergence properties, and their performances for solving unconstrained
optimization problems and real optimization applications.
Observe that the Hessian of function (5.1) is independent of x. Since the Hessian A is symmetric
and positive definite, from the optimality conditions for a minimum of a differentiable function, it
follows that there is a unique minimizer x of (5.1). From (5.2) observe that x is the solution of the
linear system Ax ¼ b.
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 169
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_5
170 5 Conjugate Gradient Methods
The idea behind the conjugate gradient approach for minimizing quadratic functions (5.1) is to use
search directions which do not interfere with one another. Given a symmetric and positive definite
matrix A, the set of vectors {d0, . . ., dk 1} is a set of conjugate directions (or “A conjugate,” or even
“A orthogonal”) if and only if d Ti Ad j ¼ 0 for all i 6¼ j, where i ¼ 0, . . ., k 1 and j ¼ 0, . . ., k 1. Note
that dTi Ad i > 0 for all i, since A is positive definite.
In the economy of a conjugate gradient algorithm, the conjugacy condition is an important
ingredient. The main characteristic of conjugate directions is the minimization of a convex quadratic
function in a subspace spanned by a set of mutually conjugate directions is equivalent to the
minimization of the function along each conjugate direction in turn. However, the performances of
algorithms satisfying the conjugacy condition are strongly dependent on the accuracy of the line-
search. If the line-search procedure for the stepsize computation is highly accurate, then the
convergence of the corresponding optimization algorithm is fast.
In the conjugate gradient algorithm, the search direction dkþ1 is computed as a linear combination
of the current negative gradient and the last search direction in such a way that dkþ1 is A conjugate to
all the previous search directions.
For quadratic functions, the conjugate gradient parameter βk is chosen so that d Tkþ1 Adk ¼ 0, which
determines
gTkþ1 Adk
βk ¼ : ð5:4Þ
d Tk Ad k
The next approximation to the minimum is xkþ1. This is the unique minimum of f along the line
l(α) ¼ xk þ αdk, which is given by
xkþ1 ¼ xk þ αk dk , ð5:5Þ
where
d Tk gk
αk ¼ : ð5:6Þ
dTk Adk
This is the traditional conjugate gradient algorithm which works for quadratic functions, since it
explicitly uses the matrix A, both in (5.4) and (5.6).
Now, the problem is how the algorithm could be modified so that the quadratic nature of the
minimizing function f should not explicitly appear in the algorithm, i.e., in (5.4) and (5.6), and
remains unchanged if f is a quadratic function. As we know, the initial search direction is d0 ¼ g0.
Observe that the initial search direction does not involve the matrix A. Therefore, for nonlinear
functions, the initial search direction could be very well considered as the gradient of the minimizing
function at the initial point. As we can see, in this context two crucial elements have to be computed:
the stepsize αk and the parameter βk. To determine αk, a line-search from xk in the direction dk is
executed. For the convex quadratic functions, this line-search determines an explicit stepsize (5.6),
which is the unique minimum of function f in the direction dk. This is the advantage of quadratic
functions: there is an explicit formula for the stepsize computation. For nonlinear functions, this
formula for the stepsize computation can be replaced by a general line-search procedure (Armijo,
Goldstein, Wolfe, etc.). This will change nothing in the quadratic case, but will generalize the
algorithm to nonlinear functions. For the computation of the conjugate gradient parameter βk, from
5.1 The Concept of Nonlinear Conjugate Gradient 171
(5.4) we need to compute Adk. There are several possibilities to modify the algorithm in order to
eliminate the explicit mention of matrix A in (5.4).
One way is to see from (5.5) that xkþ1 xk ¼ αkdk. Therefore, for quadratic functions,
gkþ1 gk ¼ ðAxkþ1 bÞ ðAxk bÞ ¼ αk Ad k :
With this, since Adk ¼ (gkþ1 gk)/αk, from (5.4) it follows that
gTkþ1 yk
βk ¼ , ð5:7Þ
dTk yk
gTkþ1 yk
βk ¼ : ð5:8Þ
gTk gk
Note that if f is quadratic, (5.8) is equivalent to (5.4). Hence, (5.8) generalizes the computation of
the conjugate gradient parameter to the non-quadratic case. Formula (5.8) is exactly the Polak-
Ribière-Polyak formula (Polak, & Ribière, 1969; Polyak, 1969) for the conjugate gradient parameter
computation.
Furthermore, it is very easy to see that if f is a quadratic function, then gTkþ1 gk ¼ 0, and in this
case, from (5.8),
gTkþ1 gkþ1
βk ¼ , ð5:9Þ
gTk gk
which generalizes the computation of the conjugate gradient parameter to the non-quadratic case.
Observe that (5.9) is exactly the Fletcher-Reeves formula (Fletcher, & Reeves, 1964) for the
conjugate gradient parameter computation.
Formulae (5.7), (5.8), and (5.9) generalize the conjugate gradient algorithm to any nonlinear
differential function. They require only the gradient evaluations. For quadratic functions they are
equivalent, but they are not equivalent for nonlinear functions.
For general nonlinear functions, the matrix A should be replaced by the Hessian. Since
yk ¼ gkþ1 gk, from the mean value theorem it follows that
where τ 2 (0, 1). Therefore, from (5.10), for nonlinear functions it is reasonable to consider the
conjugacy condition as
172 5 Conjugate Gradient Methods
dTkþ1 yk ¼ 0, ð5:11Þ
or as dTkþ1 yk ¼ t gTkþ1 sk , where t > 0 is a parameter and sk ¼ xkþ1 xk, (Dai, & Liao, 2001). For
example, the Hestenes-Stiefel method has the property that the conjugacy condition (5.11) always
holds, independent of the line-search.
In general, not all the nonlinear conjugate gradient algorithms satisfy the conjugacy condition
(5.11). However, what is characteristic of nonlinear conjugate gradient algorithms is that the search
direction is computed as a linear combination between the negative gradient and the last search
direction, where the conjugate gradient parameter βk is determined in such a way that the descent
condition or the sufficient descent condition holds. Of course, as it is to be seen, to improve the
convergence of the algorithms, this linear combination between the negative gradient and the last
search direction can be modified in such a way as to take into account, for example, the second order
information of the minimizing function, or some other ingredients which accelerate the convergence.
The descent or the sufficient descent conditions are crucial in the conjugate gradient methods. The
descent condition d Tk gk < 0, (if gk 6¼ 0) is more general and leads to general convergence results for
line-search algorithms under the exact or inexact line-search (and not only for conjugate gradient
algorithms). The sufficient descent condition d Tk gk ckgk k2 , for some positive constant c, is
fundamental in conjugate gradient methods.
The linear conjugate gradient algorithm is dedicated to minimizing the convex quadratic functions
(or to solving linear algebraic systems of equations with positive definite matrices). This algorithm
was introduced by Hestenes and Stiefel (1952). Let us consider the quadratic function (5.1) where
A 2 ℝnn is a symmetric and positive definite matrix and b 2 ℝn is a known vector. From (5.1) we get
∇f(x) ¼ Ax b and ∇2f(x) ¼ A. Observe that the Hessian of function f is independent of x. Since the
Hessian A is symmetric and positive definite, from the optimality conditions for a minimum of a
differentiable function, it follows that there is a unique minimizer x of f. From (5.2) observe that x is
the solution of the linear system Ax ¼ b. Having in view that function f is quadratic, from the Taylor
theorem, for all t 2 ℝ and all y, z 2 ℝn the following identity is obtained:
t2 T
f ðy þ tzÞ ¼ f ðyÞ þ t∇f ðyÞT z þ z Az: ð5:12Þ
2
The linear conjugate gradient algorithm is exactly a line-search with a special choice of directions.
Given the current approximation xj to the minimum x as well as a direction vector dj, a line-search
algorithm computes the next approximation xjþ1 by using the following two steps:
Assuming that an initial point x0 is given, then, applying k steps of the above line-search method,
k iterates are obtained: {x0, x1, . . ., xk 1}. From (5.12) the stepsize αj is computed as
5.2 The Linear Conjugate Gradient Method 173
dTj r j
αj ¼ , ð5:13Þ
dTj Ad j
Definition 5.1 The set of directions {d0, . . ., dk 1} is a set of conjugate directions if and only if
dTj Adi ¼ 0 for all i ¼ 0, . . ., k 1, j ¼ 0, . . ., k 1 and i 6¼ j. ♦
Now, for all k ¼ 1, . . ., the following vector space and affine space are introduced:
W k ¼ spanfd 0 , . . . , dk1 g, ð5:14Þ
U k ¼ x0 þ W k ¼ fz 2 ℝn : z ¼ x0 þ wk , wk 2 W k g: ð5:15Þ
Proposition 5.1 Assume that dTi Ad j ¼ 0 for all 0 j < i, where i is a fixed integer, and that
{x0, . . ., xi} are computed by the above line-search algorithm. Then
Proof Firstly, observe that, since {x0, . . ., xi} are computed by the line-search algorithm, it follows
that xi 2 Ui. If y 2 Ui, then, from the definition of Ui, it follows that xi y 2 Wi and hence
dTi Aðxi yÞ ¼ 0: Therefore,
In the following, the fundamental property of the line-search method with conjugate directions is
presented. Obviously, at every step, the line-search algorithm minimizes f(x) only in a fixed direction.
However, if the directions are conjugate according to Definition 5.1, then a stronger result can be
proved, as in Theorem 5.1 below: a choice of conjugate directions in the line-search method leads to
obtaining a minimizer xk for the whole space Uk.
Theorem 5.1 If the directions in the line-search algorithm are conjugate and {x0, . . ., xk} are the
iterates generated after k steps of the line-search algorithm, then
for all 1 j k.
Proof The theorem is proved by induction. For k ¼ 1 the result is obtained from the definition of
x1 as a minimizer on U1. Assume that for k ¼ i,
xj ¼ arg min f ðyÞ,
y2Uj
174 5 Conjugate Gradient Methods
By the definition of Uiþ1, any x 2 Uiþ1 can be written as x ¼ y þ αdi, where α 2 ℝ and y 2 Ui. Now,
using (5.12) and Proposition 5.1, it results
α2
f ðxÞ ¼ f ðy þ αdi Þ ¼ f ðyÞ þ αdTi ∇f ðyÞ þ dTi Adi
2 ð5:17Þ
α2 T
¼ f ðyÞ þ αdi ∇f ðxi Þ þ di Adi :
T
2
Observe that (5.17) is a decoupled function. The first term of the right hand side of (5.17) does not
depend on α, and the second term does not depend on y. Therefore,
α2 T
min f ðxÞ ¼ min f ðyÞ þ min αd i r i þ di Adi :
T
ð5:18Þ
x2Uiþ1 y2Ui α2ℝ 2
dTi r i
α ¼ αi ¼ ,
dTi Adi
that is, the left hand side of (5.18) is minimized exactly for xiþ1 ¼ xi þ αidi. In other words, xiþ1 is the
minimizer of f over the set {x : x ¼ x0 þ span{d0, . . . . di}}. ♦
To show the significance of making the search directions mutually conjugate with respect to A, let
us first state and prove a technical result involving only the first two iterations of the conjugate
gradient algorithm.
Proposition 5.2 After two iterations of the conjugate gradient method, the gradient g2 ¼ Ax2 b
satisfies
dT1 g2 ¼ dT0 g2 ¼ 0:
Proof After the first iteration, the new point is x1. Therefore, g1 ¼ Ax1 b. Since the line-search is
exact, we also have d T0 g1 ¼ 0:
Now, consider the second iteration. At this iteration, the algorithm will generate a point
x2 ¼ x1 þ αd1 where g2 ¼ Ax2 b and d T1 g2 ¼ 0: But
The first term, dT0 g1 , in the right hand side of the above equality, is zero because of the line-search
on the first iteration. The second term, αdT0 Ad1 , is zero because d0 and d1 are conjugate with respect
to A. ♦
This result shows that after two iterations the gradient is orthogonal to both search directions d0
and d1. Similarly, the above result can be generalized to prove the following proposition.
5.2 The Linear Conjugate Gradient Method 175
Proposition 5.3 After k iterations of the conjugate gradient method, the gradient gk ¼ Axk b
satisfies
d Tj gk ¼ 0 for j ¼ 0, 1, . . ., k 1. ♦
This proposition implies that after k iterations, the gradient gk is restricted to the (n k)-
dimensional subspace orthogonal to the vectors d0, . . ., dk 1. From this, the important finite
termination property of the conjugate gradient method can be obtained.
Proposition 5.4 The conjugate gradient method solves an n n linear algebraic system Ax ¼ b in n
iterations at the most.
Proof Proposition 5.3 implies that, after n iterations, gn is orthogonal to the n vectors d0, . . ., dn 1.
But this means that gn must lie in a subspace of dimension zero and so gn ¼ 0, which proves that
Axn ¼ b. ♦
The finite termination property is only guaranteed when the calculations are exact. In practice, the
conclusion of Proposition 5.4 may not be exactly satisfied when the iterations are performed in real
arithmetic, being subject to rounding errors. Hence, for solving some n n linear algebraic systems,
the conjugate gradient method needs a few more than n iterations.
The result of Theorem 5.1 may now be used to present the linear conjugate gradient algorithm for
generating conjugate directions. To start with, a general recurrence relation that generates a set of
conjugate directions is presented. Next, it is shown that this recurrence relation can be reduced to a
simple expression. Finally, the linear conjugate gradient algorithm is described.
X
k1 d T Ar
j k
dk ¼ r k þ dj : ð5:19Þ
j¼0 d Tj Ad j
Proof By induction, it is shown that (5.19) generates conjugate directions. For k ¼ 1, dT1 Ad0 ¼ 0:
Assume that for k ¼ i the vectors {d0, . . ., di} are pairwise conjugate. We must show that
dTiþ1 Ad m ¼ 0 for all m i. Consider m i. Then
P
i d T Ar iþ1
j
dTiþ1 Ad m ¼ r Tiþ1 Ad m þ T
dTj Adm
j¼0 d j Ad j
T
d Ar iþ1
¼ r Tiþ1 Ad m þ Tm
d T Adm ¼ 0,
dm Adm m
Proposition 5.6 Let {d0, . . ., dk} be the directions generated by (5.19). Then:
where
r Tk r k
βk1 ¼ : ð5:21Þ
r Tk1 r k1
To prove (iv), note first that {r0, . . ., rk} form an orthogonal basis of Wkþ1. Hence, we can write
dk 2 Wkþ1 as a linear combination of {r0, . . ., rk} and then apply (iii). Indeed
Pk dT r Xk
r Tk r k r Tk r k Xk1 T
r k1 r k1
k j
dk ¼ T
r j ¼ Tr j
r ¼ r k T r
rj
j¼0 r j r j r
j¼0 j j r k1 k1 j¼0
r Tj r j
kP1 d T r
k1 j
¼ r k þ βk1 T r rj ¼ r k þ βk1 dk1 : ♦
j¼0 r j j
Remark 5.1 From (5.13) and from Proposition 5.6 (iii), it follows that
dTk r k rT rk
αk ¼ T
¼ Tk : ð5:22Þ
dk Ad k d k Ad k
With these, using Proposition 5.3 and Remark 5.1, the following linear conjugate gradient
algorithm can be presented.
The algorithm is simple and very easy to implement. The initial residual is the same as the first
gradient search direction. If the initial solution x0 is zero, then r0 ¼ b and d0 ¼ b. The major
computational efforts at each iteration are the computation of the matrix-vector product Adk and the
computation of the inner products dTk ðAdk Þ and r Tkþ1 r kþ1 : Observe that if A is not symmetric and
positive definite, then the denominator in αk may vanish, which leads to the breakdown of the
iterations.
The linear conjugate gradient algorithm is recommended only for solving large-scale systems of
equations with a symmetric and positive definite matrix. Otherwise, the Gaussian elimination, the
factorization methods (the product form of the inverse or the elimination form of the inverse), and the
singular value decomposition are preferred, since they are less sensitive to rounding errors.
Remark 5.2 Recall that the basic Newton step dNk is obtained by solving the Newton system
∇2 f ðxk ÞdNk ¼ ∇f ðxk Þ. The Newton-CG method computes the search direction dNk by applying the
linear conjugate gradient Algorithm 5.2 to the Newton system. ♦
In the following, an estimate of the convergence rate of the linear conjugate gradient algorithm is
presented. For this, the error reduction in the linear conjugate gradient algorithm is discussed,
followed by a convergence rate estimate based on the Chebyshev polynomials.
Proof For k ¼ 1, (5.24) is true. Assume that (5.24) holds for k ¼ i, and let us show that it holds for
k ¼ i þ 1. From Proposition 5.6 (i), this would be equivalent to showing that ri 2 span{r0, . . ., Air0}.
Observe that ri1 2 Wi and di1 2 Wi. By inductive assumption, we can write ri1 ¼ Ri1(A)r0 and
di1 ¼ Pi1(A)r0, where Ri1(.) and Pi1(.) are polynomials depending on the matrix A of degree less
than or equal to i 1. Hence,
In the following, let us present a general error estimate which connects kx xkkA and kx x0kA,
where, for any y 2 ℝn, kyk2A ¼ yT Ay: For this, denote Pk as the set of polynomials of degree less than
or equal to k.
ðx xk ÞT Ay ¼ r Tk y ¼ 0: ð5:26Þ
0 ¼ ðx xk ÞT Ay ¼ ðe0 wk ÞT Ay
But, from Proposition 5.7 it is known that w ¼ Qk1(A)r0, for a polynomial Qk1 2 Pk1 , where
Pk1 is the set of polynomials of degree less than or equal to k 1. Also, Ae0 ¼ r0 and
e0 w ¼ (I þ Qk1(A)A)e0 and hence
This convergence rate is rather general and does not take into account knowledge of the distribu-
tion of the eigenvalues of A. In order to refine the above results and to obtain a qualitative estimate on
the right hand side of (5.27), observe that for A symmetric and positive definite the following spectral
decomposition can be written (see Appendix A):
A ¼ UΛUT ,
where U is an orthogonal matrix whose columns are the eigenvectors of A and Λ is a diagonal matrix
with the positive eigenvalues of A, λ1 λ2 . . . λn on the diagonal. Since UUT ¼ UTU ¼ I, by the
orthogonality of U it follows that for any j,
Aj ¼ UΛj UT :
Therefore,
This, together with (5.27), implies that for any polynomial Pk(λ),
where ρ(Pk(A)) is the spectral radius of Pk(A). Since both A and Pk(A) have the same eigenvectors, it
follows that
kx x k kA min max Pk λj ke0 kA , ð5:28Þ
Pk 2Pk , Pk ð0Þ¼1 1jn
where λ1 λ2 . . . λn are the eigenvalues of A. The above inequality shows that the minimization
of the error in the linear conjugate gradient corresponds to the minimization of the polynomial Pk(λ)
over the entire range of eigenvalues [λ1, λn]. This can be accomplished via the Chebyshev
polynomials.
The Chebyshev polynomials of the first kind on the interval [1, 1] are defined as
T k ðξÞ ¼ cos ðk arccos ðξÞÞ, k ¼ 0, 1, . . . :
It is easy to see that Tk(ξ) is a polynomial if the following trigonometric identities are used:
Therefore,
T 0 ðξÞ ¼ 1, T 1 ðξÞ ¼ ξ, ð5:29Þ
for any ξ 2 ℝ.
From (5.30) for fixed ξ it follows that
where η1(ξ) and η2(ξ) are the roots of the characteristic equation η2 2ξη þ 1 ¼ 0. The constants
c1 and c2 are determined from the initial conditions (5.29). Therefore,
" qffiffiffiffiffiffiffiffiffiffiffiffiffik qffiffiffiffiffiffiffiffiffiffiffiffiffik #
1
T k ðξÞ ¼ ξ þ ξ 1 þ ξ ξ2 1
2
: ð5:31Þ
2
Observe that |Tk(ξ)| 1 for all ξ 2 [1, 1]. The polynomial that minimizes (5.28) over the interval
[λ1, λn] is
180 5 Conjugate Gradient Methods
1
λ þ λ1 λ þ λ1 2λ
Sk ð λ Þ ¼ T k n Tk n : ð5:32Þ
λn λ1 λn λ1
To prove this, assume that there exists another polynomial of degree k, Qk, which is better at
minimizing (5.28) on the appropriate interval [λ1, λn], so that Qk(0) ¼ 1,
1
λn þ λ1
Q k ðλÞ < T k :
λn λ1
The polynomial Pk Qk must have a zero at λ ¼ 0 and at k zeros of the polynomials. This means
that this polynomial must have k þ 1 zeros, which is a contradiction. Therefore, Sk from (5.32) must
be the minimizing polynomial on the interval [λ1, λn]. Therefore, from (5.28) it results that
1
λ þ λ1
kx x k kA T k n kx x 0 k A : ð5:33Þ
λn λ1
Theorem 5.2 The error after k iterations of the linear conjugate gradient algorithm can be bounded
as follows:
pffiffiffi k
2 κ1
kx xk kA
pffiffi k
pffiffi k kx x0 kA 2 pffiffiffi kx x 0 kA , ð5:34Þ
pκffiffiþ1 κffiffi1 κþ1
κ 1
þ p
κ þ1
Therefore,
"pffiffiffi k pffiffiffi k #
λn þ λ1 1 κþ1 κ1
Tk ¼ pffiffiffi þ pffiffiffi :
λn λ1 2 κ1 κþ1
Hence,
1 pffiffiffi k
λ þ λ1 2 κ1
Tk n ¼
pffiffi k
pffiffi k 2 pffiffiffi : ð5:35Þ
λn λ1 κþ1
pκffiffiþ1 þ pκffiffi1
κ 1 κ þ1
Knowing only the largest and the smallest eigenvalues of A, the bound (5.34) is the best possible.
Theorem 5.2 shows that the error kx xkkA is upper bounded by a sequence which is convergent to
5.2 The Linear Conjugate Gradient Method 181
zero. Besides, the convergence is monotone, and this explains why the linear conjugate gradient
algorithm is viewed as an iterative method. Its performance depends on both b and the spectrum of
A (see Kelley (1995), Greenbaum (1997)). The linear conjugate gradient will perform well if κ is near
1, and it may perform very poorly if κ is large. Geometrically, κ is large if the ellipsoidal level
surfaces of the quadratic function f are far from spherical.
If additional information about the eigenvalues of A in the interval [λ1, λn] is available, then the
estimate (5.34) can be improved. Suppose, for example, that A has one eigenvalue much larger than
the others, i.e., λ1 ⋯ λn1 λn, that is, λn/λn1 1. Consider a polynomial Pk that is the product
of a linear factor which is zero at λn and of the (k 1) degree scaled and shifted Chebyshev
polynomial on the interval [λ1, λn 1]:
T k1 λn1 þλ1 2λ
λn1 λ1 λ λ
Pk ð λ Þ ¼
n : ð5:36Þ
λn1 þλ1
T k1 λn1 λ1 λn
Since the second factor in (5.36) is zero at λn and less than one in absolute value at each of the other
eigenvalues, then the maximum absolute value of this polynomial in the entire spectrum {λ1, . . ., λn}
of A is less than the maximum absolute value of the first factor on {λ1, . . ., λn 1}. Therefore, using
similar arguments as those in Theorem 5.2, it follows that
pffiffiffiffiffiffiffiffiffi
κn1 1 k1
kx xk kA 2 pffiffiffiffiffiffiffiffiffi kx x 0 kA , ð5:37Þ
κn1 þ 1
where, κn1 ¼ λn1 λ1 : A detailed study of the case of isolated eigenvalues is given by Axelsson and
Lindskog (1986).
Similarly, if the matrix A has just a few large eigenvalues, say, λ1 ⋯λn m λn mþ1 ⋯ λn,
i.e., λn mþ1/λn m 1, then we can consider a polynomial Pk which is the product of an m-th degree
factor that is zero at each large eigenvalue and of a scaled and shifted Chebyshev polynomial of
degree k m on the interval [λ1, λn m]. Bounding the size of this polynomial, it results that
pffiffiffiffiffiffiffiffiffiffi
κnm 1 km
kx xk kA 2 pffiffiffiffiffiffiffiffiffiffi kx x 0 kA , ð5:38Þ
κnm þ 1
where, this time, κnm ¼ λnmλ1 : (Greenbaum (1997), Van der Vorst (1993))
It is generally true that, if the eigenvalues of the matrix A occur in m distinct clusters, then the
iterates of the linear conjugate gradient algorithm will approximately solve the problem in about
m steps. This is illustrated in the following example.
Example 5.1 In order to see the influence of the distribution of the eigenvalues on the convergence
of the linear conjugate gradient algorithm, let us consider a linear system Ax ¼ b, where A is a
diagonal matrix and b is selected in such a way that the solution of the system is always [1, 1, . . ., 1],
(Andrei, 2009f). In Algorithm 5.2, let us consider n ¼ 1000 and ε ¼ 106. In the first set of numerical
experiments, the matrix A has four distributions of the eigenvalues: (a) A ¼ diag (1, 2, . . ., 1000) for
which κ(A) ¼ 1000, (b) the diagonal elements are uniformly distributed in [0,1) with
κ(A) ¼ 997.4945, (c) the eigenvalues of A are distributed in 10 intervals with κ(A) ¼ 19.0198, and
(d) the eigenvalues of A are distributed in 5 intervals with κ(A) ¼ 9.0099. Figure 5.1 presents the norm
of the residuals corresponding to these 4 distributions of the eigenvalues.
182 5 Conjugate Gradient Methods
Fig. 5.1 Performance of the linear conjugate gradient algorithm for solving the linear system Ax ¼ b,
where (a) A ¼ diag (1, 2, . . ., 1000), (b) the diagonal elements of A are uniformly distributed in [0,1), (c) the
eigenvalues of A are distributed in 10 intervals, (d) the eigenvalues of A are distributed in 5 intervals
In the second set of numerical experiments, the matrix A has 999 eigenvalues uniformly distributed
in [0, 1] and one large eigenvalue equal to 100. In this case, the condition number is 4448807.0435,
and the linear conjugate gradient gives a solution in 185 iterations. Figure 5.2 presents the evolution
of the norm of the residuals for this distribution of the eigenvalues.
5.2 The Linear Conjugate Gradient Method 183
Suppose that the eigenvalues of A consist of m large values and of n m small eigenvalues
clustered around 1. Defining τ ¼ λnm λ1, then (5.38) tells us that after m þ 1 steps of the linear
conjugate gradient algorithm,
kx xmþ1 kA
τkx x0 kA :
Therefore, for a small value of τ, i.e., for small well-clustered eigenvalues, it follows that the
iterates of the algorithm provide a good estimate of the solution after only m þ 1 steps.
obtained from the finite difference numerical method of the one-dimensional Poisson equation
(Andrei, 2000, 2009f).
For n ¼ 1000, the linear conjugate gradient algorithm gives a solution in 500 iterations. Figure 5.3
shows the evolution of the error kb Axkk along the iterations for obtaining a solution with accuracy
less than or equal to 108.
!!
πi π 2 i2 πi 2
λi ¼ 2 1 cos
2 1 1 ¼ :
nþ1 2ð n þ 1Þ 2 nþ1
The behavior of the linear conjugate gradient algorithm illustrated in Fig. 5.3 has a plateau where,
for a large number of iterations, the error kb Axkk decreases very slowly. This behavior is typical of
the linear conjugate gradient algorithm. Greenbaum and Strakoš (1992) demonstrated that finite
precision conjugate gradient computations for solving a symmetric positive definite linear system
Ax ¼ b behave very similarly to the exact algorithms applied to any of a certain class of larger
matrices. This class consists of matrices Ae that have lots of eigenvalues spread throughout tiny
intervals around the eigenvalues of A. The width of these intervals is a modest multiple of the
machine precision multiplied by the norm of A. This analogy appears to hold unless the algorithms are
run for huge numbers of steps. See also Naiman, Babuska, and Elman (1997).
Example 5.3 In the following, let us consider the linear algebraic system Ax ¼ b, where
2 3 2 3
B I 4 1
6 7 6 7
6 I B I 7 6 1 4 ⋱ 7
6 7 6 7
A¼6 6 ⋱ ⋱ ⋱ 7 6 7,
7, and B ¼ 6 ⋱ ⋱ ⋱ 7
6 7 6 7
4 I B I 5 4 ⋱ 4 1 5
I B 1 4
obtained from the finite difference numerical method of the two-dimensional Poisson equation
(Andrei, 2000, 2009f). The matrix A has n2 blocks on the main diagonal, where each block B 2
ℝn1 n1 . Hence, A 2 ℝn n, where n ¼ n1n2. The right hand side b is chosen so that the solution of the
system Ax ¼ b is x ¼ [1, 1, . . ., 1]. Considering n ¼ 10000, the evolution of the error kb Axkk
computed by the linear conjugate gradient algorithm for five different values of n1 and n2 is presented
in Fig. 5.4.
The eigenvalues of A are as follows:
iπ jπ
λij ¼ 4 sin 2 þ 4 sin 2 , i ¼ 1, . . . , n1 , j ¼ 1, . . . , n2 :
2ð n1 þ 1Þ 2ð n2 þ 1Þ
The maximum eigenvalue is λmax ¼ 8, while the minimum eigenvalue is λmin ¼ 8sin2(π/2).
Therefore, A is positive definite and its condition number is
λ max 4
2:
λ min π
From Fig. 5.4, for n1 ¼ 5000 and n2 ¼ 2, that is when there are only two blocks on the main
diagonal of A, the linear conjugate gradient algorithm needs only 31 iterations. Therefore, the
convergence is faster. On the other hand, when n2 ¼ 100, i.e., there are 100 blocks on the main
diagonal of the matrix A, then the algorithm needs 304 iterations. So, the smaller the number of blocks
on the main diagonal of the matrix A is, the faster the convergence is.
5.2 The Linear Conjugate Gradient Method 185
Preconditioning
Having in view the above discussion, it follows that the conjugate gradient method can be accelerated
by transforming the linear system Ax ¼ b to improve the eigenvalue distribution of A. This is achieved
by a change of the variables from x to xb via a nonsingular matrix C, that is,
xb ¼ Cx: ð5:39Þ
If Algorithm 5.2 is used to minimize fb or, equivalently, to solve the linear system
T 1
C AC xb ¼ CT b,
then the rate of the convergence will depend on the eigenvalues of the matrix CTAC1 rather than on
those of A. Therefore, our purpose is to choose C such that the eigenvalues of CTAC1 are more
favorable for the theory presented above. One approach is to choose C such that the condition number
of CTAC1 is much smaller than the condition number of A, so that the constant in (5.34) is smaller.
Another approach is to select C for the eigenvalues of CTAC1 to be clustered, which, as we have
already mentioned, ensures that the number of iterates needed to find a good approximate solution is
not much larger that the number of clusters.
It follows that the transformation (5.39) does not need to be carried out explicitly. Instead, we can
apply Algorithm 5.2 directly to the problem (5.40) in terms of the variables xb and then invert the
transformations to re-express all the equations in terms of x. Define M ¼ CTC.
186 5 Conjugate Gradient Methods
1. Select an initial point x0, the preconditioner matrix M and ε > 0 sufficiently small
2. Set r0 ¼ Ax0 b
3. Solve the system My0 ¼ r0
4. Set d0 ¼ y0 and k ¼ 0
5. If krkk ε, then stop. Otherwise, continue with step 6
6. Compute:
rT y
αk ¼ dTkAdk , xkþ1 ¼ xk þ αkdk, rkþ1 ¼ rk þ αkAdk, solve the system Mykþ1 ¼ rkþ1,
k k
r Tkþ1 ykþ1
βk ¼ rTk yk
, dkþ1 ¼ ykþ1 þ βkdk
7. Set k ¼ k þ 1 and continue with step 5 ♦
The main difference between the unpreconditioned conjugate gradient Algorithm 5.2 and the
preconditioned conjugate gradient 5.3 is the need to solve the linear system My ¼ r in step 6 of
Algorithm 5.3.
The selection of the preconditioner matrix M is problem dependent. Knowing the structure and the
origin of a problem is the key to devising an effective preconditioner. The preconditioner is often
defined in such a way so that the system My ¼ r should represent a simplified version of the original
system Ax ¼ b. The most important strategies for selecting the preconditioner matrix include
symmetric successive overrelaxation, incomplete Cholesky factorization, banded preconditioners,
etc. (Golub, & Van Loan, 1996). The incomplete Cholesky factorization might be the most effective.
The idea of this factorization is as follows. Perform the Cholesky procedure, but, instead of
computing the exact Cholesky factor L that satisfies A ¼ LLT, an approximation factor L which is
T T T
sparser than L is computed. Therefore, we have A
LL and by choosing C ¼ L we obtain M ¼ LL
1 T
and CT AC1 ¼ L AL
I, so the eigenvalues distribution of CTAC1 is favorable. Obviously,
the matrix M is not explicitly computed. Instead, the factor L is stored, and the system My ¼ r is
solved by performing two triangular substitutions with L:
Remark 5.3 Two methods are known for the acceleration of conjugate gradient algorithms. The first
one consists of modifying the stepsize in a multiplicative manner in such a way as to reduce the values
of the minimizing function, as described in Sect. 3.3 (see Remark 3.1). The second one is the
preconditioning. No comparisons between these acceleration methods are known. ♦
As we have already seen in Proposition 5.4, the linear conjugate gradient algorithm has a quadratic
(finite) termination property, i.e., for convex quadratic functions, the linear conjugate gradient
algorithm with exact line-search terminates after n iterations. In (5.33), (5.34), (5.37) and (5.38),
some formulae for the convergence rates of the linear conjugate gradient algorithm have been
5.2 The Linear Conjugate Gradient Method 187
presented, showing that the convergence rate is not worse than the one of the steepest descent
algorithm, that is, it is not worse than linear.
In the following, let us have a comparison between the linear conjugate gradient algorithm and the
steepest descent algorithm subject to the reduction of the function values along the iterations (Sun, &
Yuan, 2006). Consider the quadratic function
1
f ðxÞ ¼ xT Ax, ð5:41Þ
2
where A 2 ℝnn is symmetric and positive definite. In this case, the explicit expression for the
stepsize is
dTk Axk dT g
αk ¼ T ¼ Tk k : ð5:42Þ
dk Ad k dk Adk
Therefore,
1
f ðxkþ1 Þ ¼ xTkþ1 Axkþ1
2
1
¼ ðxk þ αk d k ÞT Aðxk þ αk d k Þ ð5:43Þ
2 2
1 T 1 gTk dk
¼ xk Axk :
2 2 dTk Adk
1 T 1 kgk k
4
kþ1 ¼ 2 xk Axk 2 T
f xSD : ð5:44Þ
gk Agk
On the other hand, for the linear conjugate gradient algorithm dk ¼ gk þ βk1dk1 and from
(5.43),
1 T 1 kgk k
4
f xCG
kþ1 ¼ x Ax k : ð5:45Þ
2 k 2 d Tk Ad k
Since
it follows that
SD
kþ1 f xkþ1 :
f xCG
Therefore, the linear conjugate gradient algorithm reduces the value of the minimizing function
f at least as much as the steepest descent algorithm. Since the steepest descent algorithm has a linear
rate of convergence, it follows that the linear conjugate gradient algorithm has a convergence rate that
is not worse than the linear rate. From (5.45) it results that, for the linear conjugate gradient algorithm,
the objective function is strictly decreased along the iterations.
188 5 Conjugate Gradient Methods
xkþ1 ¼ xk þ αk dk , ð5:47Þ
where αk is the stepsize obtained by line-search and dk is the search direction computed by
dkþ1 ¼ gkþ1 þ βk dk , ð5:48Þ
for k 0, where βk is the conjugate gradient parameter and gk ¼ ∇ f(xk). In conjugate gradient
methods, d0 ¼ g0.
A popular strategy for the stepsize determination, which plays a key role in the efficiency of the
unconstrained optimization algorithms, consists in accepting a positive stepsize αk that satisfies the
Wolfe line-search conditions
∇f ðxk þ αk dk ÞT dk σd Tk gk , ð5:50Þ
where 0 < ρ < σ < 1. Often, the strong Wolfe line-search is used in the implementation of conjugate
gradient methods. These are given by (5.49) and
∇f ðxk þ αk dk ÞT dk σdT g , ð5:51Þ
k k
where again 0 < ρ < σ < 1. Observe that if σ ¼ 0, then the strong Wolfe line-search reduces to the exact
line-search. Dai and Yuan (1999, 2001) proved that the Wolfe line-search (5.49) and (5.50) ensures
the convergence and therefore can be successfully used in the current implementations in computing
programs of the conjugate gradient methods.
A conjugate gradient algorithm given by (5.47) and (5.48) generates a sequence {xk}. The interest
is to see the conditions under which this sequence converges to the solution x of the problem (5.46).
Since the algorithm given by (5.47) and (5.48) depends only on the parameter βk, it follows that the
interest is to see the values of this parameter for which the algorithm is convergent.
An important requirement for the optimization methods based on line-search is that the search
direction must be a descent one. The search direction dk satisfies the descent property, i.e., it is a
descent direction if for all k ¼ 1, 2, . . .
restart with dkþ1 ¼ gkþ1 this situation can be corrected. The search direction dk satisfies the
sufficient descent property, i.e., it is a sufficient descent direction if
gTk d k
cos θk ¼ : ð5:55Þ
kgk kkd k k
To establish the general convergence results of any method of the form (5.47) and (5.48), the
following basic assumptions on the objective function are introduced.
Assumption CG
(i) The level set S ¼ {x 2 ℝn : f(x) f(x0)} is bounded, i.e., there exists a constant B > 0 so that
kxk B for all x in the level set.
(ii) In some neighborhood N of the level set, f is continuously differentiable, and its gradient is
Lipschitz continuous, i.e., there exists a constant L > 0 so that
Note that these assumptions imply that there is a constant Γ so that kg(x)k Γ for all x from the
level set S. The boundedness assumption of the level set is not necessary in all the situations. Only the
assumption that f is bounded below on the level set can be used for the global convergence analysis.♦
Under the Assumption CG, the following theorem, due to Zoutendijk (1970) and Wolfe (1969,
1971), is essential in proving the global convergence results of the unconstrained optimization
algorithms, including the conjugate gradient or the Newton one.
Theorem 5.3 Suppose that f is bounded below in ℝn and that f is continuously differentiable in a
neighborhood N of the level set S ¼ {x 2 ℝn : f(x) f(x0)}. Also assume that the gradient is Lipschitz
continuous, i.e., there exists a constant L > 0 so that (5.56) is satisfied for all x, y 2 N. Consider any
iteration of the form (5.47), where dk is a descent direction and αk satisfies the Wolfe line-search
conditions (5.49) and (5.50). Then,
X
1
cos 2 θk kgk k2 < 1: ð5:57Þ
k¼1
ðσ 1Þ gTk dk
αk : ð5:58Þ
L kd k k2
Now, using the first Wolfe condition (5.49) and (5.58), it results that
2
ðσ 1Þ gTk dk
f kþ1 f k þ ρ : ð5:59Þ
L kd k k2
From the definition (5.55) of cosθk, it follows that (5.59) can be written as
where c ¼ ρ(σ 1)/L. Summing (5.60) for k 1 and having in view that f is bounded below, (5.57) is
obtained. ♦
The relation (5.57) is called the Zoutendijk condition, and from (5.55) it can be rewritten as
T 2
X1
gk d k
2
< 1: ð5:61Þ
k¼1 kd k k
It is interesting to see how the Zoutendijk condition is used to obtain global convergence results.
Suppose that the iteration (5.47) is in such a way, so that
In other words, if the search direction generated by any unconstrained optimization method does
not tend to be orthogonal to the gradient, then the corresponding sequence of gradients converges to
zero. For line-search methods (5.47), the limit (5.63) is the best type of the global convergence result
that can be obtained. We cannot guarantee if the method converges to the minimizers of function f,
but only that it converges to stationary points. The implications of the Zoutendijk condition are as
follows.
1. For the steepest descent with Wolfe line-search, cosθk ¼ 1 for all k. Thus, the steepest descent
method is globally convergent only if the stepsizes are adequately computed.
2. Consider the Newton-type methods, where the search direction is computed as d k ¼ B1 k gk ,
where Bk is a nonsingular symmetric matrix (Bk ¼ I, Bk ¼ ∇2f(xk) or Bk is a symmetric and positive
definite approximation of the Hessian ∇2f(xk)). Assuming that the condition number of the matrices
Bk is uniformly bounded, i.e., for any k, kBk k B1
k
Δ, where Δ > 0 is a constant, then from
(5.55) it follows that
5.3 General Convergence Results for Nonlinear Conjugate Gradient Methods 191
Hence, cosθk 1/Δ, i.e., it is bounded away from 0. Therefore, the Newton method or the quasi-
Newton methods are globally convergent if the matrices Bk are positive definite (descent condition), if
their condition number is bounded and if the line-search satisfies the Wolfe conditions. Observe that
the condition (5.62) is crucial for obtaining these results.
3. For the conjugate gradient methods, it is not possible to show the limit (5.63), but only a weaker
result, that is,
This type of result is also obtained from the Zoutendijk condition. Indeed, suppose that (5.64) does
not hold, i.e., the gradients remain bounded away from zero. In other words, suppose that there exists
a constant γ > 0 so that for any k,
kgk k γ: ð5:65Þ
In this case, from the Zoutendijk condition (5.57) again, it follows that
cos θk ! 0: ð5:66Þ
Therefore, the algorithm can only fail in the sense of (5.65) if the sequence {cosθk} converges to
zero. Hence, to establish (5.64) suffice it to show that a subsequence cos θkj of the sequence
{cosθk} is bounded away from zero.
Let us now present some conditions on βk which determine the convergence of the conjugate
gradient algorithms. Suppose that βk 0 and the search direction dk is a descent direction, i.e.,
gTk dk < 0: At this moment, we are interested in finding a βk which produces a descent direction dkþ1,
i.e., a direction which satisfies
2
gTkþ1 dkþ1 ¼ gkþ1 þ βk gTkþ1 dk < 0: ð5:67Þ
2 2
gkþ1 þ βk gTkþ1 dk ¼ gkþ1 þ βk gTkþ1 dk βk gTk dk þ βk gTk dk
2
¼ gkþ1 þ βk dTk yk þ βk gTk dk ð5:69Þ
2
gkþ1 þ βk dTk yk ,
where yk ¼ gk gk1. Therefore, the non-positivity of (5.69) is sufficient to show that the condition
(5.67) holds. Hence,
g 2 βk d T y , ð5:70Þ
kþ1 k k
The following theorem proved by Dai and Yuan (2001) shows how βk selected to satisfy (5.68)
determines the convergence of the conjugate gradient algorithm.
Theorem 5.4 Suppose that the Assumption CG holds. Let {xk} be the sequence generated by the
algorithm (5.47) and (5.48), where βk satisfies (5.68). Then, the algorithm either determines a
stationary point or it converges in the sense that
Proof From (5.48) we get dkþ1 þ gkþ1 ¼ βkdk. Squaring both sides of this relation results in
2
kd kþ1 k2 ¼ β2k kd k k2 2gTkþ1 dkþ1 gkþ1 : ð5:71Þ
2
From (5.71), dividing both sides by gTkþ1 dkþ1 , it follows that
kdkþ1 k2 ð β k Þ 2 kd k k2 gTkþ1 dkþ1 g 2
kþ1
2 ¼ 2 2 T 2 T 2
gTkþ1 d kþ1 gTkþ1 dkþ1 gkþ1 dkþ1 gkþ1 d kþ1
ð β Þ 2 kd k k2 2 g 2
kþ1
¼ k 2 T 2
gTkþ1 dkþ1 gTkþ1 dkþ1 gkþ1 dkþ1
!
ð β k Þ 2 kd k k2 1 g 2 1
¼ 2 þ T kþ1
þ 2
T
gkþ1 dkþ1 gkþ1 g d gkþ1
kþ1 kþ1
ðβ Þ2 kdk k2 1
k 2 þ
gTkþ1 dkþ1 g 2
2 ! kþ1
ðβk Þ2 gTk d k kd k k2 1
¼ 2 þ :
gT d kþ1
2
gT d k g 2
kþ1 k kþ1
Hence,
2
ðβk Þ2 gTk d k
2 2 1: ð5:73Þ
gkþ1 þ βk gTkþ1 d k
kdkþ1 k2 kd k k2 1
2 þ : ð5:74Þ
gTkþ1 dkþ1
2
gTk dk g 2
kþ1
Observe that
kd 0 k2 1
T 2 ¼ :
g0 d 0 kg0 k2
k d k k2 X 1 k
T 2 2
ð5:75Þ
gk d k i¼0 kgi k
for all k. Now, if the theorem is not true, then there exists a constant γ > 0 so that kgkk γ for all k,
i.e., from (5.75),
T 2
gk d k γ2
,
kd k k2 kþ1
which implies
T 2
X
1
gk d k
¼ 1,
k¼0 kd k k2
The following theorem shows that if βk is chosen to satisfy the condition (5.68) for all k, then, under
the strong Wolfe line-search conditions (5.49) and (5.51), the direction (5.48) satisfies the sufficient
descent condition (5.54).
Theorem 5.5 Suppose that x0 is an initial point and the Assumption CG holds. Let {xk} be the
sequence generated by the conjugate gradient algorithm (5.47) and (5.48). If βk is so that
194 5 Conjugate Gradient Methods
g 2 βk dT y and βk 0 and the stepsize αk satisfies the strong Wolfe conditions (5.49) and
kþ1 k k
(5.51), then the conjugate gradient algorithm satisfies the sufficient descent condition (5.54) with
c ¼ 1/(1 þ σ).
Proof The proof is given by induction as follows. Observe that σ > 0 implies that 1 < 1/(1 þ σ).
Therefore, for k ¼ 1 the conclusion holds, since
1
gT0 d0 ¼ kg0 k2 kg k2 ¼ ckg0 k2 ,
1þσ 0
where c ¼ 1/(1 þ σ). Suppose that (5.54) holds for some k 0. Then, from the second strong Wolfe
condition (5.51), it follows that
gTkþ1 dk
lk 2 ½σ, σ
and dTk yk > 0:
gTk dk
Hence,
gTkþ1 dk gTkþ1 dk gTk dk d Tk yk
lk 1 ¼ 1 ¼ ¼ T 6¼ 0: ð5:76Þ
gTk d k gTk d k gk d k
(ii) The case gTkþ1 dk > 0: Using the conditions on βk and (5.76), it follows that
2
gTkþ1 dkþ1 ¼ gkþ1 þ βk gTkþ1 dk
2 gkþ1 2 T gTkþ1 dk
gkþ1 þ T gkþ1 dk ¼ 1 þ T g 2
kþ1
T d k yk d k yk
gk d k 2
g ¼ 1 g 2 :
¼
dTk yk
kþ1 lk 1 kþ1
But
1 1 1
: ð5:78Þ
1 þ σ 1 lk 1 σ
From (5.78),
1
g 2 1 g 2 :
gTkþ1 dkþ1 ð5:79Þ
lk 1 kþ1 1 þ σ kþ1
From (5.77) and (5.79) it follows that at the iteration k þ 1 the sufficient descent condition is
satisfied with c ¼ 1/(1 þ σ). ♦
5.3 General Convergence Results for Nonlinear Conjugate Gradient Methods 195
The following theorem, which introduces the Nocedal condition, presents a general convergence
result for any conjugate gradient method (5.47) and (5.48) under the strong Wolfe line-search (5.49)
and (5.51). The theorem mainly says that, if kdkk2 is at most linearly increasing, i.e., if kdkk2 c1k þ c2
for all k, where c1 and c2 are some constants, then a conjugate gradient method with strong Wolfe
line-search is globally convergent. The theorem is proved by Dai (2011). Also see (Nocedal, 1996).
Theorem 5.6 Suppose that the Assumption CG holds. Consider any conjugate gradient method
(5.47) and (5.48) with dk satisfying gTk d k < 0 and with strong Wolfe line-search (5.49) and (5.51).
Then the method is globally convergent if
X
1
1
¼ 1: ð5:80Þ
k¼1 kd k k2
Applying the following inequality (a þ σb)2 (1 þ σ 2)(a2 þ b2) valid for all a, b, σ 0, with
a ¼ gTkþ1 d kþ1 and b ¼ jβk jgTk dk , (5.81) yields to
2 2 4
gTkþ1 dkþ1 þ β2k gTk d k c gkþ1 , ð5:82Þ
Assume that (5.64) is not true and there exists a constant γ > 0 so that for any k,
kgk k γ: ð5:85Þ
Observe that the Zoutendijk condition (5.61) implies that gTk dk =kdk k tends to zero. Therefore, by
(5.84) and (5.85), for sufficiently large k it results that
196 5 Conjugate Gradient Methods
2 2
gTkþ1 dkþ1 gTk dk g 4
kþ1
þ c : ð5:86Þ
kd kþ1 k2 kd k k2 kdkþ1 k2
which is a contradiction to the assumption (5.80). Therefore, the convergence relation (5.64) holds.♦
The theorem says that the iterations of the conjugate gradient method can fail in the sense of (5.85)
only if kdkk ! 1 rapidly enough. More exactly, the sequence of the gradient norms kgkk can be
bounded away from zero only if
X
1
1
< 1: ð5:87Þ
k¼1 kd k k2
In the following, we shall provide a condition on βk which is sufficient for the global convergence
of the general conjugate gradient method with strong Wolfe line-search (Dai, 2010). By Theorem 5.6
we know that, if (5.80) holds, then the conjugate gradient method is convergent in the sense of (5.64).
Otherwise, we have (5.87), which gives
kgk k Γ, ð5:89Þ
for some Γ > 0 and for all k 0. Now, from (5.48) and the above relations (5.88) and (5.89), it follows
that
kdkþ1 k
jβk jkdk k: ð5:90Þ
X
1 Y
k
β2
j ¼ 1, ð5:91Þ
k¼1 j¼0
it is possible to establish the Nocedal condition (5.80) and then, by Theorem 5.6 a contradiction to
(5.87) is obtained. The following theorem details these discussions.
Theorem 5.7 Suppose that the Assumption CG holds. Consider a conjugate gradient method given
by (5.47) and (5.48), where the search direction dk is descent, i.e., dTk gk < 0: Consider that the
stepsize is determined by the strong Wolfe line-search conditions (5.49) and (5.51). If βk satisfies
(5.91), then lim inf kgk k ¼ 0:
k!1
But,
T 2
2 g d
gkþ1
kþ1
2gTkþ1 d kþ1 kþ1
: ð5:94Þ
g 2
kþ1
Having in view the definition of cosθk in (5.55), from (5.95) it follows that
1
kd kþ1 k2 1 cos 2 θkþ1 β2k kdk k2 ⋯
! !
Y
kþ1 1 Yk
1 cos θj
2
β j kd 0 k2 :
2
ð5:96Þ
j¼1 j¼0
Hence, from the Zoutendijk condition (5.61), from the definition of cosθk and from (5.97), it
follows that
X
1
cos 2 θk < 1: ð5:98Þ
k¼1
Y
kþ1
1 cos 2 θj c, ð5:99Þ
j¼1
2
c β2
j kd 0 k2 : ð5:100Þ
kdkþ1 k j¼0
From (5.100) and (5.91) it follows that (5.80) holds. Thus, by Theorem 5.6, lim inf kgk k ¼ 0: But
k!1
this, together with (5.97), gives a contradiction, thus proving the theorem. ♦
Theorem 5.7 shows that the global convergence of any conjugate gradient algorithm is obtained if
the conjugate gradient parameters βk satisfy the condition (5.91) and the stepsize is determined by the
strong Wolfe line-search. Mainly, it is based on the Zoutendijk condition. It should be mentioned that
198 5 Conjugate Gradient Methods
in Theorem 5.7, it is the descent condition (5.52) which is used and not the sufficient descent
condition (5.54).
Dai (2010) proved that the conclusion of Theorem 5.7 for the global convergence of any conjugate
gradient method also holds under the Wolfe line-search. This result is based on the following
proposition proved by Dai and Yuan (2003).
Proposition 5.10 Consider any conjugate gradient method (5.47) and (5.48). Define ψk and tk as
follows
(
kgk k2 , for k ¼ 0,
ψk ¼
2
ð5:101Þ
β0 β1 ⋯βk1 ,
2 2 2
for k 1
and
kd k k2
tk ¼ : ð5:102Þ
ψ 2k
Xk
gTi di X k
kgi k2
tk ¼ 2 : ð5:103Þ
i¼0
ψ 2i i¼0
ψ 2i
Proof Since d0 ¼ g0 and ψ 20 ¼ kg0 k2 , (5.103) holds for k ¼ 0. For k 1, dividing (5.93) by ψ 2kþ1
and using the definitions of ψ k and tk, it follows that
2
gTkþ1 dkþ1 gkþ1
tkþ1 ¼ tk 2 : ð5:104Þ
ψ 2kþ1 ψ 2kþ1
X gi d i X
kþ1 T kþ1
kgi k2
tkþ1 ¼ t0 2 : ð5:105Þ
i¼1
ψ 2i i¼1
ψ 2i
Since t0 ¼ kg0 k2 =ψ 20 , it follows that (5.105) is equivalent to (5.103). Therefore (5.103) holds for
any k 0. ♦
To show the sufficiency of the condition (5.91) on βk, the following proposition is needed.
5.3 General Convergence Results for Nonlinear Conjugate Gradient Methods 199
Proposition 5.11 Suppose that {ai} and {bi} are two real positive number sequences satisfying:
X
k
bk c 1 þ c 2 ai , for all k,
i¼1
P P
where c1 and c2 are positive constants. If ak is divergent, then ak =bk is also divergent.
k1 k1
P
Proof Let Sk ¼ ki¼1 ai , for any k 1. Now, ∑i1ai ¼ 1 implies that limk!1Sk ¼ 1 . Observe that
the sequence {Sk} is increasing. Let c ¼ c1/c2. There exists k0 1 so that Sk c for k k0. Note that
X1
ak X
1
ak 1 X ak
1
1 X ak
1
1 X ak
1
¼ ¼ :
k¼k
bk k¼k c1 þ c2 Sk c2 k¼k c þ Sk c2 k¼k Sk þ Sk 2c2 k¼k Sk
0 0 0 0 0
Let
Xr
akþi
Aðk, r Þ ¼ , for r 1:
S
i¼1 kþi
It is easy to see that for every k 1 there exists r 1 so that Aðk, r Þ 12 : Indeed,
Xr
akþi Skþr Sk S
Aðk, r Þ ¼ ¼1 k :
S
i¼1 kþr
S kþr S kþr
But,
S
lim Aðk, r Þ lim 1 k ¼ 1:
k!1 k!1 Skþr
The following theorem proved by Dai (2010) shows that the condition (5.91) on βk is sufficient for
the global convergence of any conjugate gradient method (5.47) and (5.48).
Theorem 5.8 Suppose that the Assumption CG holds. Consider a conjugate gradient method given
by (5.47) and (5.48), where the search direction dk is descent, i.e., d Tk gk < 0 and the stepsize is
determined by the Wolfe line-search conditions (5.49) and (5.50). If βk satisfies (5.91), then
lim inf kgk k ¼ 0:
k!1
200 5 Conjugate Gradient Methods
Xk
gTi d i X k
kgi k2
2 : ð5:108Þ
i¼0
ψ 2i i¼0
ψ 2i
2 2
But gkþ1 þ 2 gTkþ1 d kþ1 0: Hence, for any k,
T 2
2 gkþ1 d kþ1
4gTkþ1 dkþ1
gkþ1 4 : ð5:109Þ
g 2
kþ1
Now, let us proceed by contradiction and assume that (5.97) holds. Then, by (5.110) and (5.106) it
follows that
X gTk dk 2
2 2
¼ 1: ð5:111Þ
k1 kgk k ψ k
2 2 t
¼ ¼ cos 2 θk ¼ 1, ð5:112Þ
k¼1 k g k k ψ k
k k¼1 k g k k 2
k d k k 2
k¼1
Observe that the proof of this theorem is based on the Zoutendijk condition. Theorem 5.8 provides
the condition (5.91) on βk which is sufficient for the global convergence of the general conjugate
gradient method with Wolfe line-search. Besides, notice that only the descent condition gTk dk < 0 for
any k is used in Theorem 5.8. This is an important contribution to the general theory of conjugate
gradient methods, since very often, in the implementation of the conjugate gradient algorithms, only
the Wolfe line-search conditions are used.
The above theorems present the necessary and sufficient condition on the conjugate gradient
parameter βk, namely, (5.91), for the global convergence of any general conjugate gradient method
under the Wolfe line-search.
5.4 Standard Conjugate Gradient Methods 201
In the following, let us present the standard conjugate gradient algorithms as well as their conver-
gence results for solving unconstrained optimization problems. The standard conjugate gradient
methods are listed in Table 5.1. These methods have simple algebraic expressions, and their
convergence results are particularizations or specializations of the general results on the convergence
of conjugate gradient algorithms. In general, the convergence results of these algorithms are based on
the Assumption CG and on some other natural hypotheses on the line-search.
A rapid inspection of Table 5.1 shows that, except for Daniel’s method (1967) which requires the
evaluation of the Hessian at each iteration, the numerator of the update parameter βk is either kgkþ1k2
or gTkþ1 yk and the denominator is either kgkk2 or dTk yk or d Tk gk : Here, yk ¼ gkþ1 gk. Mainly, these
two choices for the numerator and the three choices for the denumerator lead to six different choices
for βk
If function f is strongly convex quadratic and the line-search is exact, then, in theory all the above
choices for the update parameter βk presented in Table 5.1 are equivalent. For non-quadratic objective
functions, each choice for βk leads to algorithms with different numerical performances (number of
iterations, number of function and its gradient evaluations, or CPU time). Therefore, in the following,
the global convergence properties of the standard conjugate gradient methods with the numerator
kgkþ1k2 for the update parameter βk (FR, CD, and DY) and with gTkþ1 yk in the numerator of βk (HS,
PRP, and LS) will be separately presented. As a general remark, the convergence theory for the
methods with numerator kgkþ1k2 is better developed than the theory for the methods with numerator
gTkþ1 yk of βk. However, the methods with gTkþ1 yk in the numerator of βk perform better in practice than
the methods with kgkþ1k2 in the numerator of βk. The general algorithm for the standard conjugate
gradient methods is as follows.
1. Choose an initial point x0 and a convergence tolerance ε > 0 sufficiently small. Set d0 ¼ g0 and k ¼ 0
2. Test a criterion for stopping the iterations. If this test is satisfied, then stop; otherwise, continue with step
3
3. Using the Wolfe line-search conditions, determine the stepsize αk
4. Compute xkþ1 ¼ xk þ αkdk, fkþ1, gkþ1 and yk ¼ gkþ1 gk
5. Compute the conjugate gradient parameter βk
6. Compute the search direction dkþ1 ¼ gkþ1 þ βkdk
2
7. Restarting criterion. If gT g > 0:2 g then set dkþ1 ¼ gkþ1
kþ1 k kþ1
8. Set k ¼ k þ 1 and continue with step 2 ♦
Observe that a restarting criterion is used in step 6 of Algorithm 5.4. This is known as the Powell
restart criterion, introduced by Powell (1977). Crowder and Wolfe (1969) proved that the standard
conjugate gradient method without restart is at most linearly convergent. Yuan (1993) showed that
the convergence rate of the conjugate gradient method without restart is exactly linear for uniformly
convex quadratics. Cohen (1972) and McCormick and Ritter (1974) proved that the convergence rate
of the conjugate gradient method may be improved from linear to n-step quadratic if the method is
restarted with the negative gradient. Powell (1977) reported some numerical results with conjugate
gradient methods, showing that the immediate reduction in the objective function with restart is
usually smaller than the reduction without restart. Therefore, the current implementations of the
conjugate gradient methods use this restart criterion. Some restart procedures for conjugate gradient
methods can be found in Dai, Liao, and Li (2004).
In this section, let us discuss the methods Fletcher-Reeves (FR), Conjugate Descent by Fletcher (CD),
and Dai-Yuan (DY). A general characterization of these methods versus some other choices for the
update parameter βk is that the global convergence theorems require only the Lipschitz assumption,
not the boundedness assumption.
The first global convergence result for the FR method under the exact line-search was given by
Zoutendijk (1970). In other words, when the stepsize αk is the exact solution of the problem
minα 0f(xk þ αdk), then the FR method is global convergent. As usual, let S ¼ {x 2 ℝn : f(x) f(x0)}
be the level set.
Theorem 5.9 Suppose that f : ℝn ! ℝ is continuously differentiable on the level set S and consider
that the FR method is implemented with the exact line-search. Then, the sequence {xk} generated by
the algorithm has at least an accumulation point which is a stationary point of function f, that is:
(ii) If {xk} is an infinite sequence, then for any k, ∇f(xk) 6¼ 0. Since dkþ1 ¼ gkþ1 þ βkdk and the
line-search is exact, that is, gTkþ1 d k ¼ 0, it follows that
2 2
gTkþ1 dkþ1 ¼ gkþ1 þ βk gTkþ1 dk ¼ gkþ1 < 0, ð5:116Þ
i.e., dkþ1 is a descent direction, {f(xk)} is a monotone decreasing sequence, and consequently,
{xk} ⊂ S. Hence, {xk} is bounded and has a limit. Let x be the limit of {xk}. Then there exists a
subsequence fxk gK1 convergent to x, where K1 is the set of indices corresponding to the subsequence
from {xk}. Since fxk gK1 ⊂ fxk g, it follows that ff ðxk ÞgK1 ⊂ ff ðxk Þg: From the continuity of f we
know that for k 2 K1 (see Appendix A),
f ðx Þ ¼ f lim xk ¼ lim f ðxk Þ ¼ f :
ð5:117Þ
k!1 k!1
Similarly, {xkþ1} is a bounded sequence. Therefore, there exists a subsequence fxkþ1 gK2 conver-
gent to x, where K2 is the set of indices corresponding to the subsequence from {xkþ1}. In this case,
f ðx Þ ¼ f lim xkþ1 ¼ lim f ðxkþ1 Þ ¼ f :
ð5:118Þ
k!1 k!1
Hence,
f ðx Þ ¼ f ðx Þ ¼ f : ð5:119Þ
Now, let us prove by contradiction that ∇f(x) ¼ 0. Suppose that ∇f(x) 6¼ 0. Then, for any α small
enough it follows that
which contradicts (5.119). Therefore, this shows that ∇f(x) ¼ 0, that is, x is a stationary point of f.♦
Powell (1977) showed that the FR method with the exact line-search is susceptible of jamming,
i.e., along the iterations the algorithm could take many short steps without any significant progress to
the minimum. The modest performances of the FR method can be explained by this jamming
phenomenon, as it is detailed by Nocedal and Wright (2006).
The first global convergence result of the FR method under the inexact line-search was given by
Al-Baali (1985). Using the strong Wolfe line-search
with σ < 1/2, Al-Baali proved that the FR method generates sufficient descent directions.
Theorem 5.10 Suppose that the conjugate gradient FR is implemented with the strong Wolfe line-
search (5.122) and (5.123), where 0 < σ < 1/2. Then the FR method generates descent directions dk
satisfying the following inequalities:
1 gT d k 2σ 1
k 2 , ð5:124Þ
1 σ kgk k 1σ
for all k ¼ 0, 1, . . .
Proof At first, notice that the function u(t) ¼ (2t 1)/(1 t) on the interval [0,1/2] is monotonically
increasing and u(0) ¼ 1 and u(1/2) ¼ 0. Therefore, since σ 2 (0, 1/2), it follows that
2σ 1
1 < < 0: ð5:125Þ
1σ
The proof is given by induction as follows. For k ¼ 0 the middle term in (5.124) is 1, so, by using
(5.125) both inequalities in (5.124) are satisfied. Now, assume that (5.124) holds for some k 1.
From the definition of βFR
k given in (5.115) and from (5.114), it follows that
Taking into account the left hand side of the induction hypothesis (5.124) and substituting it in the
above inequality, it follows that
5.4 Standard Conjugate Gradient Methods 205
σ gT d kþ1 σ
1 kþ1 2 1 þ ,
1σ g 1 σ
kþ1
The theorem shows that for the FR conjugate gradient method, the sufficient descent condition
gTk dk ckgk k2 is satisfied. Therefore, from the Zoutendijk condition, it follows the global conver-
gence of the FR method. Besides, the bounds on gTk dk in (5.124) impose a limit on how fast kdkk can
grow along the iterations when the gradients are not small. For σ ¼ 1/2, dk is a descent direction;
however the analysis did not establish the sufficient descent.
The main difficulty in proving the global convergence of a conjugate gradient algorithm is to show
that the search direction dk is descent under the mild assumption on the line-search conditions. If the
line-search is exact, i.e., gTkþ1 d k ¼ 0, then dkþ1 is exactly the steepest descent, since gTkþ1 dkþ1 ¼
2
g : Using this property and supposing that the Assumption CG holds, Powell showed that the
kþ1
FR algorithm is globally convergent, i.e., liminfk!1kgkk ¼ 0. Al-Baali extended this result, showing
that the descent property holds for all k if αk is determined by the strong Wolfe line-search.
The following theorem shows that under the inexact line-search, the search directions dk generated
by the FR method satisfy the descent condition gTk dk < 0:
Theorem 5.11 If for all k the stepsize αk is determined by the strong Wolfe line-search (5.122) and
(5.123), where σ 2 (0, 1/2), then for the FR method the following inequalities hold:
X
k
gTk dk X
k
σj 2 þ σj ð5:127Þ
j¼0 kgk k2 j¼0
for any k. As soon as gk 6¼ 0 for all k, the descent property of dk is satisfied, i.e.,
Proof The theorem is proved by induction. For k ¼ 0, d0 ¼ g0, σ 0 ¼ 1 and therefore (5.127) and
(5.128) are true. Now, suppose that (5.127) and (5.128) are true for any k 0. From
dkþ1 ¼ gkþ1 þ βkdk and βk ¼ gTkþ1 gkþ1 =gTk gk (Fletcher-Reeves updating formula), it follows that
X
kþ1 X
k
gT dkþ1 X
kþ1
σ j ¼ 1 σ σ j kþ1 2 2 þ σj ,
j¼0 j¼0
g j¼0
kþ1
gTkþ1 dkþ1 X
kþ1
2 2 þ σj ð5:131Þ
g j¼0
kþ1
and
X
kþ1 X
1
1
σj < σj ¼ , ð5:132Þ
j¼0 j¼0
1σ
X
kþ1
2 þ σ j < 0:
j¼0
Therefore, from (5.128), gTkþ1 dkþ1 < 0 is obtained, proving the theorem. ♦
With this result, the global convergence of the FR method with the inexact line-search can be
proved as in the following theorem (Al-Baali, 1985).
Theorem 5.12 Assume that the function f : ℝn ! ℝ is twice continuously differentiable and the level
set S is bounded. Suppose that αk is determined by the strong Wolfe conditions (5.122) and (5.123),
where ρ < σ < 1/2. Then the sequence {xk} generated by the Fletcher-Reeves method is global
convergent, i.e.,
lim inf kgk k ¼ 0: ð5:133Þ
k!1
Proof From the second strong Wolfe condition (5.123) and from the relations (5.127) and (5.132), it
follows that
T X
k
σ
g d k σgT dk σ kg k2 σj kg k2 :
kþ1 k k
j¼0
1σ k
From the relations dkþ1 ¼ gkþ1 þ βkdk and βk ¼ gTkþ1 gkþ1 =gTk gk (Fletcher-Reeves formula), it
results that
2 FR 2
kdkþ1 k2 ¼ gkþ1 2βFRk gkþ1 d k þ βk
T
kd k k2
2 2σ
gkþ1 þ g 2 þ βFR 2 kdk k2
1 σ kþ1 k
1þσ 2 FR 2
g þ β
¼ kd k k2 :
1σ kþ1 k
4
2 FR 2 FR 2 g
kþ1
βFR
k βk1 ⋯ βki ¼ :
kgki k4
Now, let us prove (5.133) by contradiction. Suppose that (5.133) is not true. Then there exists a
positive constant ε > 0 so that for all k sufficiently large,
Since on the level set S the gradient gk is upper bounded, from (5.134) it follows that
kdk k2 c1 k, ð5:136Þ
Since σ < 1/2, introducing (5.135) and (5.136) in (5.137), it results that
X
2 X kg k2 X1
1 2σ
cos 2 θk k
c2 , ð5:138Þ
k
1σ k kd k k
2
k
k
where c2 is a positive constant. Therefore, the series ∑kcos2θk is divergent. Let M be an upper bound
of k∇2f(x)k on the level set S. Then,
T
gTkþ1 dk ¼ gk þ αk ∇2 f ðxk Þd k dk gTk d k þ αk Mkdk k2 :
it follows that
1σ T
αk gk d k : ð5:139Þ
M kd k k2
Introducing this value of αk from (5.139) in the first Wolfe condition (5.122), it results that
2
ð1 σ Þρ gTk dk
f ðxkþ1 Þ f ðxk Þ ¼ f ðxk Þ c3 kgk k2 cos 2 θk ,
M kd k k
where c3 ¼ ð1σ
M
Þρ
> 0. Since f is lower bounded, it follows that the series ∑kkgkk2cos2θ2 is conver-
gent. Hence, from (5.135), the series ∑kcos2θ2 is convergent. But this contradicts (5.138), thus
proving the theorem. ♦
208 5 Conjugate Gradient Methods
The CD Method
The CD (Conjugate Descent) method elaborated by Fletcher (1987) is very close to the FR method.
The conjugate gradient parameter βk is computed as
g 2
kþ1
βk ¼
CD
: ð5:140Þ
d Tk gk
strong Wolfe line-search, the sufficient descent condition gTk dk ckgk k2 holds. In this case, the
constraint σ 1/2 that arose in the FR method is not necessary for the CD method. For a line-search
that satisfies the generalized Wolfe conditions σ 1 d Tk gk dTk gkþ1 σ 2 dTk gk , with σ 1 < 1 and σ 2 ¼ 0,
it can be shown that 0 βCDk βk : Therefore, from the analysis given by Al-Baali (1985) the global
FR
convergence is achieved. On the other hand, if σ 1 1 or σ 2 > 0, then Dai and Yuan (1996) constructed
numerical examples where kdkk2 increases exponentially, and therefore the CD method converges to
a point where the gradient does not vanish. In particular, the CD method may not converge to a
stationary point under the strong Wolfe line-search. Details are given by Hager and Zhang (2006b).
The DY method always generates descent directions under the Wolfe line-search. Besides, when
the Lipschitz assumption holds, the DY is globally convergent.
To get (5.141), let us suppose that the current search direction dk is descent, i.e., d Tk gk < 0 and
we are interested in finding a βk for which the new search direction dkþ1 is also descent. This requires
that
2
gkþ1 þ βk gTkþ1 dk < 0:
Assume that βk > 0 and denote τk ¼ kgkþ1k2/βk. Then the above inequality is equivalent to τk >
gTkþ1 dk : Therefore, we can consider τk ¼ dTk yk , which gives the DY updating formula (5.141).
A new representation of βDY
k can immediately be obtained. From (5.114) and (5.141), the following
can be written:
g 2
kþ1
gkþ1 dkþ1 ¼
T
gT dk ¼ βDY
k gk d k :
T
ð5:142Þ
dTk yk k
Therefore, βDY
k is
gTkþ1 dkþ1
βDY
k ¼ : ð5:143Þ
gTk dk
Observe that (5.141) is well defined because the Wolfe line-search implies that d Tk yk > 0: If the
line-search in this method is exact, then the DY method is the same as the FR method. The
convergence of this method is given by the following theorem.
5.4 Standard Conjugate Gradient Methods 209
Theorem 5.13 Suppose that the initial point x0 satisfies the Assumption CG and let {xk} be the
sequence generated by the general algorithm (5.113) and (5.114), where βk is computed as in (5.143).
Then the algorithm either terminates at a stationary point of f or converges in the sense
Proof If the algorithm does not terminate after a finite number of iterations, then kgkk > 0 for all k.
Firstly, let us show that the search directions are descent, i.e.,
for all k. For k ¼ 1 the above inequality (5.145) is satisfied. Now, let us prove it for all k > 1 by
induction. Assume that (5.145) holds for k. From the second Wolfe line-search condition
∇f ðxk þ αk d k ÞT d k σdTk gk , it follows that
From (5.142) it follows that (5.145) holds for k þ 1. Hence, the search direction given by βDY
k is
descent for all the values of k.
Now, (5.114) can be written as
kd k k2 X 1 k
T 2 2
, ð5:150Þ
gk d k i¼0 kgi k
for all k. If the theorem is not true, then there exists a positive constant c > 0 so that
kgk k c ð5:151Þ
kd k k2 k
T 2 2 ,
gk d k c
Observe that the relation (5.152) contradicts the condition (5.61). This contradiction proves the
theorem. ♦
In the following, let us consider the conjugate gradient methods Hestenes-Stiefel (HS), Polak-
Ribière-Polyak (PRP), and Liu-Storey (LS). Even if for the methods with kgkþ1k2 in the numerator
of βk a strong convergence theory has been developed, these methods have modest performances,
mainly because of the jamming phenomenon. Namely, these methods begin to take small steps
without making significant progress to the minimum. On the other hand, the HS, PRP, and LS
methods, having gTkþ1 yk in the numerator of βk, possess a built-in restart feature that addresses the
jamming. When the step sk ¼ xkþ1 xk is small (i.e., close to the minimum), then the factor
yk ¼ gkþ1 gk in the numerator of βk tends to zero. Hence, βk becomes small, and the new search
direction dkþ1 is essentially the steepest descent direction gkþ1. This property of the PRP method is
important for its analysis. Such a method with this property is said to have Property (*). These
methods automatically adjust βk in order to avoid jamming. Therefore, the numerical performance of
these methods is better than the numerical performance of the methods with kgkþ1k2 in the numerator
of βk.
gTkþ1 yk
βPRP
k ¼ : ð5:153Þ
gTk gk
If f is strongly convex and the line-search is exact, then Polak and Ribière (1969) and Polyak
(1969) established the global convergence of the PRP method. Powell (1977) proved that for a
general nonlinear function f, if (i) the stepsize sk ¼ xkþ1 xk tends to zero, (ii) the line-search is exact
and (iii) the Lipschitz continuity holds, then the PRP method is globally convergent. On the other
hand, in a laborious paper Powell (1984) constructed a counter-example with three variables and
showed that the PRP method may cycle infinitely without approaching any solution. Therefore, the
assumption that the stepsize tends to zero is needed for convergence.
Later on, under the assumption that the search direction is a descent direction, Yuan (1993)
established the global convergence of the PRP method for strongly convex functions and the Wolfe
line-search. However, Dai (1997), in his Ph.D. Thesis, presented an example which showed that even
when the objective function is strongly convex and σ 2 (0, 1) is sufficiently small, the PRP method
may still fail by generating an ascent search direction. Dai, Han, Liu, Sun, Yin, and Yuan (1999)
constructed an example showing that the boundedness of the level set is necessary for the
5.4 Standard Conjugate Gradient Methods 211
convergence of the PRP method even if the line-search is exact. Therefore, the convergence of the
PRP method is not certain. However, this method proved to be one of the most efficient for solving
large-scale unconstrained optimization problems.
In order to prove the convergence of the PRP method, we need a technical result presented in the
following proposition.
Proposition 5.12 Let ∇f(x) be uniformly continuous on the level set S. Consider the angle θk between
dk and ∇ f(xk), where dk is a descent direction. If
π
θk μ, for such μ > 0, ð5:154Þ
2
then ∇f(xk) ¼ 0 for a certain k, or f(xk) ! 1, or ∇f(xk) ! 0.
Proof Suppose that for all k, ∇f(xk) 6¼ 0 and that f(xk) is lower bounded. Since {f(xk)} is monotone
decreasing, this sequence has a limit. Hence
f ðxk Þ f ðxkþ1 Þ ! 0: ð5:155Þ
Suppose, by contradiction, that ∇f(xk) ! 0 is not true. Then, there exists an ε > 0 so that
k∇f(xk)k ε. Therefore,
∇f ðxk ÞT dk
¼ k∇f ðxk Þk cos θk ε sin μ ε1 ð5:156Þ
kd k k
Observe that
where ξk is on the line segment connecting xk and xk þ αdk. Since ∇f(x) is uniformly continuous on S,
there exists α so that, when 0 αkd k k α we have
1
k∇f ðξk Þ ∇f ðxk Þk ε1 : ð5:158Þ
2
From (5.155)–(5.158) it follows that
dk ∇f ðxk ÞT d k 1 1
f xk þ α f ðxk Þ þ α þ ε1 f ðxk Þ αε1 :
k kk
d k kk
d 2 2
Hence,
d 1
f ðxkþ1 Þ f xk þ α k f ðxk Þ αε1 ,
kd k k 2
With this, for strongly convex functions and under the exact line-search, the following result on the
convergence of the PRP method can be proved.
212 5 Conjugate Gradient Methods
Theorem 5.14 Consider f : ℝn ! ℝ twice continuously differentiable and suppose that the level set
S is bounded. Assume that there exists a positive constant m > 0 so that for x 2 S and any y 2 ℝn,
Then, the sequence {xk} generated by the PRP method with exact line-search converges to the
unique minimum x of function f.
Proof From Proposition 5.12 it follows that it is enough to prove (5.154), that is, there exists a
positive constant ω > 0, so that
gTkþ1 dkþ1 ω gkþ1 kdkþ1 k, ð5:160Þ
i.e., cosθk ω > 0. Observe that gk ! 0 and g(x) ¼ 0. From (5.159) it follows that {xk} ! x, which
is the unique minimum of function f. Since the line-search is exact, from dkþ1 ¼ gkþ1 þ βkdk and
2
from the fact that gT dk ¼ 0, it follows that gT d kþ1 ¼ g : Then (5.160) is equivalent to
kþ1 kþ1 kþ1
g
kþ1
ω: ð5:161Þ
kdkþ1 k
Having in view that dkþ1 ¼ gkþ1 þ βkdk and the line-search is exact, from (5.6) the following
value for αk is obtained
gTk dk kg k2
αk ¼ T ¼ Tk , ð5:162Þ
d k Ak d k d k Ak d k
where
Z1
Ak ¼ ∇2 f ðxk þ tαk d k Þdt: ð5:163Þ
0
Using the mean value theorem (see Appendix A), from (5.163),
gkþ1 gk ¼ ∇f ðxk þ αk dk Þ ∇f ðxk Þ ¼ αk Ak dk : ð5:164Þ
Therefore, βPRP
k can be expressed as
gTkþ1 gkþ1 gk g T Ak d k
βPRP
k ¼ T ¼ αk kþ1 2
gk gk kgk k
T ð5:165Þ
gkþ1 Ak dk
¼ T :
d k Ak d k
Since the level set S is bounded, there exists a positive constant M > 0, so that for x 2 S and any
y 2 ℝ n,
PRP gkþ1 kAk dk k M gkþ1
β : ð5:167Þ
k
m kd k k2 m kd k k
Hence,
kdkþ1 k gkþ1 þ βPRP kd k k
k
M M
gkþ1 þ gkþ1 ¼ 1 þ g ,
kþ1
m m
that is,
g
M 1
kþ1
1þ , ð5:168Þ
kdkþ1 k m
Later on, Gilbert and Nocedal (1992) proved the global convergence of the conjugate gradient
methods with nonnegative βk under inexact line-search. The PRP+ method was introduced to rectify
the convergence failure of the PRP method when implemented with Wolfe line-search. A modified
Polak-Ribiére-Polyak conjugate gradient algorithm for unconstrained optimization was given by
Andrei (2011a).
gTkþ1 yk
βHS
k ¼ : ð5:170Þ
dTk yk
d Tkþ1 yk ¼ 0 ð5:171Þ
is always satisfied, independent of the line-search used. For the exact line-search, βHS k ¼ βk .
PRP
Therefore, the global convergence properties of the HS method are similar to the global convergence
properties of the PRP method. In particular, by Powell’s example (1984), the HS method with exact
line-search may not converge for general nonlinear functions.
gTkþ1 yk
βLS
k ¼ : ð5:172Þ
dTk gk
214 5 Conjugate Gradient Methods
For the exact line-search, the LS method is identical to the PRP method. Liu and Storey (1991)
studied this method, proving its global convergence. The techniques developed for the analysis of the
PRP method may be applied to the LS method.
In this section, some numerical results with the standard conjugate gradient methods are presented.
For this, consider 80 unconstrained optimization problems from the UOP collection (Andrei, 2020a),
each with the number of variables n ¼ 1000, 2000, . . ., 10000. The comparisons of algorithms are
given in the context of Remark 1.1. The maximum number of iterations was limited to 2000.
Figures 5.5 and 5.6 present the Dolan and Moré’s performance profiles of the standard conjugate
gradient methods. The tables inside the plots show the performances of the algorithms subject to the
number of iterations (#iter), the number of function and its gradient evaluations (#fg), and subject to
the CPU time metric (cpu) in seconds. When comparing HS versus FR (see Fig. 5.5) subject to the
number of iterations, we can see that HS was better in 406 problems (i.e., it achieved the minimum
number of iterations in 406 problems). FR was better in 157 problems. Both methods achieved the
same number of iterations in 157 problems, etc. Out of 800 problems considered in this numerical
experiment, only for 720 problems does the criterion (1.3) hold. From Fig. 5.5 we can see that, subject
to the CPU time metric, HS is the fastest. Close to HS are PRP+ and LS. Observe that HS is much
better than FR, CD, and DY. One explanation is that the HS method satisfies the conjugacy condition
(5.171), independent of the line-search. From Figs. 5.5 and 5.6, we notice that PRP+ is more efficient
than FR, PRP, CD, and DY. Close to PRP+ is LS, but LS is slightly more robust. From Fig. 5.6 we can
see that LS is better than FR, CD, and DY. Close to CD is DY. At least, for this set of 800 uncon-
strained optimization problems, HS and PRP+, are the best methods. HS, PRP+ and LS automatically
adjust βk to avoid jamming. Figure 5.7 presents a global comparison of the standard conjugate
gradient methods. Note that there is an experimental confirmation of the classification of conjugate
gradient methods in two classes according to the formula for βk computation: with kgkþ1k2 or with
gTkþ1 yk at the numerator of βk.
We can see that HS, PRP, PRP+, and LS (all with gTkþ1 yk at the numerator of βk) are more efficient
and more robust subject to the CPU time metric than FR, CD, and DY (all with kgkþ1k2 at the
numerator of βk). Despite the strong convergence theory that has been developed for methods with
kgkþ1k2 in the numerator of βk, these methods have modest numerical performances in comparison
with the methods with gTkþ1 yk at the numerator of βk. Some more details on the performance profiles of
conjugate gradient algorithms for unconstrained optimization are presented by Andrei (2008e).
In the second set of numerical experiments, let us present the performances of the standard
conjugate gradient methods for solving five applications from the MINPACK-2 collection described
in Appendix D, where nx ¼ 200 and ny ¼ 200. The conjugate gradient algorithms implement the same
stopping criterion kgkk1 εg, where εg ¼ 106 and the stepsize is computed by the Wolfe line-search
(5.49) and (5.50) with ρ ¼ 0.0001 and σ ¼ 0.9.
Tables 5.2, 5.3, and 5.4 present the performances of the standard conjugate gradient methods for
solving these applications. In these tables, n is the number of variables of the application, #iter is the
number of iterations, #fg the number of function and its gradient evaluations, and cpu is the CPU time
(in seconds) for solving the application. The last line in these tables contains the total number of
iterations, the total number of function and its gradient evaluations, and the total CPU time for solving
these five applications for each conjugate gradient method. Observe that for solving them, CD, HS,
and PRP require the minimum time. For example, CD needs 137.09 seconds, HS 139.65, and PRP
5.4 Standard Conjugate Gradient Methods 215
Table 5.2 Performances of HS, FR, and PRP for solving five applications from the MINPACK-2 collection
HS FR PRP
n #iter #fg cpu #iter #fg cpu #iter #fg cpu
A1 40,000 359 457 8.89 1082 1164 24.05 601 857 5.73
A2 40,000 1286 1650 34.65 2698 2885 35.40 1036 1477 12.84
A3 40,000 1510 1730 45.55 20001 25625 411.04 3001 4035 65.31
A4 40,000 841 1069 41.32 2070 2167 83.06 809 1148 43.91
A5 40,000 583 714 9.24 1830 1931 24.65 668 927 11.63
Total ─ 4579 5620 139.65 27681 33772 578.20 6115 8444 139.42
Table 5.3 Performances of PRP+ and CD for solving five applications from the MINPACK-2 collection
PRP+ CD
n #iter #fg cpu #iter #fg cpu
A1 40,000 604 862 6.67 944 1097 12.80
A2 40,000 2335 1901 21.05 1887 2138 32.17
A3 40,000 3219 4306 69.73 2148 2287 37.52
A4 40,000 915 1314 50.17 1032 1148 43.99
A5 40,000 810 1125 14.09 759 836 10.61
Total ─ 7883 9508 161.71 6770 7506 137.09
139.42 seconds. PRPþ and LS have comparable performances. However, FR and DY need the
longest time for solving all these five applications. Details on the performances of conjugate gradient
algorithms for solving the applications from the MINPACK-2 collection are found in (Andrei,
2006b).
218 5 Conjugate Gradient Methods
Table 5.4 Performances of LS and DY for solving five applications from the MINPACK-2 collection
LS DY
n #iter #fg cpu #iter #fg cpu
A1 40,000 642 886 10.51 464 488 6.08
A2 40,000 1085 1526 19.01 1031 1062 14.72
A3 40,000 2398 3120 50.76 8393 8423 141.57
A4 40,000 1455 2033 77.50 886 909 35.22
A5 40,000 591 821 10.25 2382 2410 31.61
Total ─ 6171 8386 168.03 13156 13292 229.20
The idea behind the hybrid conjugate gradient methods is to combine the standard conjugate gradient
methods in order to exploit the attractive features of each of them. The standard conjugate gradient
methods may be combined in two distinct ways, thus obtaining two classes of hybrid conjugate
gradient methods. The first class is based on the projection concept. They consider a pair of standard
conjugate gradient methods and use one of them as soon as a certain criterion has been satisfied.
When the criterion is violated, then the other conjugate gradient method from the pair is used. The
hybrid conjugate gradient methods based on the projection concept have a simple algebraic expres-
sion. As soon as a conjugate gradient method has entered a jamming phase, the hybrid scheme
triggers another conjugate gradient method in the pair, thus trying to improve the numerical
performances of the hybrid one. The second class is based on the convex combination of the standard
methods. In this case, some standard conjugate gradient methods are combined in a convex manner,
thus obtaining a hybrid conjugate gradient method. In general, the hybrid methods are more efficient
and more robust than the standard ones (Andrei, 2020a).
Table 5.5 presents some hybrid selections of the parameter βk based on the projection of the standard
conjugate gradient methods presented in Table 5.1.
As it can be seen, there is a large variety of hybrid conjugate gradient methods. Their purpose is to
combine the properties of the standard ones in order to get new ones, rapidly convergent to the
solution. The idea is to avoid jamming. As we know, the FR method has strong convergence
properties, but it may not perform well in computational experiments. On the other hand, although
the PRP method and the HS method may not generally converge, they often perform better than
FR. Therefore, the combination of these methods tries to exploit the attractive features of each one.
Thus, in the hybrid conjugate gradient method TAS proposed by Touati-Ahmed and Storey (1990), if
the iterations are affected by jamming, the method commutes from FR to PRP.
The same motivation is for the hybrid computational scheme PRP-FR proposed by Hu and Storey
(1991). Indeed, the PRP method possesses a built-in restart feature that directly addresses the
jamming. When the step sk is small, the factor yk in the numerator of βPRP k tends to zero. Hence, in
this case, the search direction dkþ1 computed as in (5.3) with βk ¼ βPRP k is essentially the steepest
descent direction gkþ1. The DY method has even better global convergence properties than the FR
method. Consequently, Dai and Yuan (2001) combined their algorithm with the HS algorithm and
5.5 Hybrid Conjugate Gradient Methods 219
2
g k 1 g k 1 ( g kT1 g k ) / g k Proposed by Dai and Wen
β kDPRP 2
(2012). μ ! 1 is a parameter
μ g kT1d k g k
2 Proposed by Jian, Han, and Jiang
g k 1 g k 1 max{0,( g kT1 g k )} / g k
β kJHJ 2
(2015)
max{ g k , d kT yk }
The VFR hybrid conjugate gradient, which is a variation of the FR method proposed by Wei, Li,
and Qi (2006a), satisfies the sufficient descent condition gTk d k ð1 μ1 =μ2 Þkgk k2 independent of
the line-search.
The VPRP hybrid conjugate gradient method proposed by Wei, Yao, and Liu (2006b) is a variant
of the PRP method. This hybrid conjugate gradient method inherits the properties of PRP. Under the
strong Wolfe line-search with 0 < σ < 1/4, Huang, Wei, and Yao (2007) showed that the search
direction of the VPRP method satisfies the sufficient descent condition and the algorithm is globally
convergent. An interesting property of VPRP is that it has the Property (*), first introduced by Gilbert
and Nocedal (1992).
The YWH hybrid method proposed by Yao, Wei, and Huang (2007) is a variant of the HS method.
They established that under the strong Wolfe line-search with σ 2 (0, 1/3), the YWH method
generates sufficient descent directions.
Jiao, Chen, and Pan (2007) proposed a hybrid conjugate gradient method JCP and established the
global convergence under the Goldstein line-search (2.56).
The hybrid conjugate gradient method LS-CD was proposed by Andrei (2008g). Its global
convergence under the Wolfe line-search was proved by Yang, Luo, and Dai (2013). Numerical
experiments showed that the hybrid LS-CD method outperforms both the LS and the CD methods.
Dai and Wen (2012) proposed the hybrid DPRP method, where μ > 1. They proved that the
corresponding search direction satisfies the sufficient descent condition for any line-search. They also
proved that the DPRP method is globally convergent under the Wolfe line-search.
A hybridization of the HS and DY conjugate gradient methods was proposed by Babaie-Kafaki
and Ghanbari (2015). In their algorithm, the hybridization parameter is computed by solving the least-
squares problem of minimizing the distance between the search direction of the hybrid method and
the search direction corresponding to the three-term conjugate gradient method of Zhang, Zhou, and
Li (2007), which possesses the sufficient descent property.
The hybrid method JHJ proposed by Jian, Han, and Jiang (2015) generates sufficient descent
directions for any line-search and is globally convergent under the Wolfe line-search.
Other hybrid conjugate gradient methods were proposed by Zhang (2009a, 2009b), Han, Zhang,
and Chen (2017). Two descent hybrid conjugate gradient algorithms as a projection of PRP and HS,
and also of HS and DY, respectively, were developed by Zhang and Zhou (2008).
The following general result proved by Dai, Han, Liu, Sun, Yin, and Yuan (1999) shows that there
are a lot of possibilities to generate hybrid conjugate gradient methods by taking into consideration
the FR method.
Theorem 5.15 Suppose that the Assumption CG holds and consider any general method of the form
(5.47)–(5.48) where the stepsize is determined by the strong Wolfe line-search (5.49) and (5.51) with
0 < ρ < σ < 1 and βk satisfying
σ jβk j σβFR
k , ð5:173Þ
Xk Y k 2
g 2 βi
kþ1 c2 k, ð5:174Þ
j¼0 i¼j βFR
i
Proof As known, βFR k ¼ gkþ1 gkþ1 =gk gk : Then, from (5.48), from the strong Wolfe line-search
T T
gðxk þ αk dk ÞT dk σgT d k and from (5.173), it results that
k
T
gTkþ1 d kþ1 gT d k βk gkþ1 dk
¼ 1 βk kþ1 2 ¼ 1 FR
g 2 g βk kgk k2
kþ1
kþ1 !
βk σgTk dk gTk dk
1 þ FR 1þσ ð5:176Þ
βk kgk k2 kg k2
! k
Pk gT0 d 0 1 σ kþ1 1
⋯ σ j þ σ kþ1 ¼ < :
j¼0 kg 0 k 2 1 σ 1 σ
gTkþ1 dkþ1 1 σk
2 1 σ > 0: ð5:177Þ
g 1σ
kþ1
Thus,
P
k Q
k
kdkþ1 k2 2gTkþ1 dkþ1 2 β2i gTj dj
j¼0 i¼j
0 1
k
2
ð5:179Þ
Pk Q g T
B j jCd
¼ 2gTkþ1 dkþ1 2 gkþ1 βi
4
@ 4 A :
βFR
i
j¼0 i¼j
gj
If the theorem is not true, then (5.174) holds and there exists a positive constant γ so that kgkk γ
for all k. Thus, from (5.176) and (5.179), it results that
k k 2 !
kdkþ1 k2 2 g 2 X Y β
kþ1
2 1þ i
: ð5:180Þ
g 1σ γ 2
j¼0 i¼j βFR
i
kþ1
natural. The theorem extends the result of Gilbert and Nocedal (1992) and Hu and Storey (1991) to
222 5 Conjugate Gradient Methods
the case when σ ¼ 1=2, i.e., when 2σ jβk j < βFR : If σ 2 ð0, 1=2Þ, then from (5.177) it follows that the
2 k
sufficient descent g d kþ1 c g
T holds for any positive constant c. However, if σ ¼ 1=2,
kþ1 kþ1
then only
gTk d k 1
kgk k2 2k
In the following, let us present the performances of some hybrid conjugate gradient methods based on
the projection concept: TAS, PRP-FR, GN, hDY, HS-DY, and LS-CD. For this, the set of 800 uncon-
strained optimization problems from the UOP collection is used (Andrei, 2020a).
Figure 5.8 presents the Dolan and Moré performance profiles of some hybrid conjugate gradient
methods subject to the CPU time metric. The tables inside the plots show the performances of the
algorithms subject to the number of iterations (#iter), the number of function and its gradient
evaluations (#fg), and the CPU time in seconds (cpu).
For example, when comparing TAS versus PRP-FR in Fig. 5.8, we can see that TAS was better in
150 problems (i.e., TAS achieved the minimum number of iterations in 150 problems). PRP-FR was
better in 307 problems, and they achieved the same number of iterations in 291 problems, etc. Out of
800 problems considered in this numerical experiment, only for 748 problems does the criterion (1.3)
hold. From Fig. 5.8, subject to the CPU time metric, it is clear that the TAS method is less efficient
and less robust than PRP-FR, GN, HS-DY, hDY, and LS-CD. On the other hand, the PRP-FR hybrid
conjugate gradient method is faster than hDY. Notice that HS-DY is more efficient than LS-CD, etc.
Figure 5.9 presents a global comparison of the hybrid conjugate gradient methods. Concerning
their robustness, for this set of unconstrained optimization problems, subject to the CPU time metric,
observe that the LS-CD algorithm is top performer, being more robust than the hybrid conjugate
gradient methods considered in this study. On the other hand, HS-DY is the most efficient. TAS and
GN are less efficient. Anyway, the performance profiles of the compared hybrid methods are grouped,
one method being slightly more efficient or more robust than the other one. Out of 800 problems in
this numerical experiment, only for 714 problems does the criterion (1.3) hold. The table inside
Fig. 5.9 shows that, out of 714 problems, HS-DY was faster in 328 problems, followed by hDY,
which was faster in 316 problems, etc.
From all these computational experiments with a large set of nonlinear unconstrained optimization
problems with different structures and complexities, we can see that the hybrid conjugate gradient
methods do not have spectacular performances versus the standard conjugate gradient methods,
subject to the CPU time metric. The first hybrid conjugate gradient method based on the projection
concept was given by Touati-Ahmed and Storey (1990) and by Hu and Storey (1991). The motivation
of introducing the hybrid conjugate gradient methods was to use the PRP update parameter when the
iterations jam. However, the PRP-FR method is less efficient and less robust than LS, HS, and PRP+.
In the following, the performances of the hybrid conjugate gradient methods based on the
projection concept for solving some applications from the MINPACK-2 applications are presented.
Tables 5.6 and 5.7 show the performances of the hybrid conjugate gradient methods for solving five
MINPACK-2 applications, each of them having 40,000 variables.
5.5 Hybrid Conjugate Gradient Methods 223
Fig. 5.8 Performance profiles of some hybrid conjugate gradient methods based on the projection concept
224 5 Conjugate Gradient Methods
Table 5.6 Performances of TAS, PRP-FR, and GN for solving five applications from the MINPACK-2 collection
TAS PRP-FR GN
n #iter #fg cpu #iter #fg cpu #iter #fg cpu
A1 40,000 402 576 6.80 385 540 6.65 460 650 7.97
A2 40,000 602 1179 15.46 602 1179 15.46 602 1179 15.45
A3 40,000 806 1615 36.76 806 1615 34.86 806 1615 34.55
A4 40,000 294 595 30.21 294 595 30.29 294 595 30.21
A5 40,000 368 701 11.45 368 701 11.42 368 701 11.44
Total ─ 2472 4666 100.68 2455 4630 98.68 2530 4740 99.62
Table 5.7 Performances of HS-DY, hDY, and LS-CD for solving five applications from the MINPACK-2 collection
It appears that the hybrid PRP-FR is the fastest, followed by GN, etc. The most time consuming is
HS-DY. Observe that Table 5.3 shows that for solving all five applications, CD needs only
137.09 seconds, the minimum time among all the methods considered in the numerical study. Clearly,
the hybrid methods are top performers versus the standard ones.
5.5 Hybrid Conjugate Gradient Methods 225
The hybrid conjugate gradient methods based on the convex combination of the standard conjugate
gradient methods are defined by (5.113) and (5.114), where the conjugate gradient parameter βk is
computed as
βk ¼ ð1 θk ÞβM1
k þ θk βk ,
M2
ð5:181Þ
where βM1
k and βk are the conjugate gradient parameters of the standard conjugate gradient methods
M2
which we want to hybridize (see Table 5.1) and 0 θk 1 is a parameter. The idea is to combine the
standard algorithms in a convex way in order to get algorithms with better performances. The
parameter θk in the convex combination (5.181) can be determined by means of two procedures.
The first one is given by the conjugacy condition yTk dkþ1 ¼ 0, where
d kþ1 ¼ gkþ1 þ ð1 θk ÞβM1 k þ θk βk
M2
dk : ð5:182Þ
From the equality yTk d kþ1 ¼ 0, where dkþ1 is given by (5.182), the following value for the
parameter θk is obtained:
T
yTk gkþ1 βM1 yk d k
θk ¼ M2 k
: ð5:183Þ
β k βkM1
yTk dk
Obviously, instead of the standard conjugacy condition yTk d kþ1 ¼ 0, it is quite possible to use the
Dai and Liao conjugacy condition
where t 0 is a scalar parameter. In this case, from (5.184) where dkþ1 is given by (5.182), it results
that
T
yT g tsT g βM1 y dk
θk ¼ k kþ1 M2 k kþ1 k
k : ð5:185Þ
βk βM1k y Td
k k
This is another value for the parameter θk obtained from the Dai and Liao conjugacy condition
(5.184). However, a value for t must be chosen in this case, which is rather difficult (see Andrei
(2011b)).
On the other hand, if the point xkþ1 is close enough to a local minimizer x, then a good direction to
follow is the one given by the Newton direction, that is, dkþ1 ¼ ∇2f(xkþ1)1gkþ1. Therefore, the
second procedure to determine θk in (5.181) considers the formal equality between the search
direction of the hybrid algorithm and the Newton direction, i.e.,
gkþ1 þ ð1 θk ÞβM1 k þ θk βk
M2
d k ¼ ∇2 f ðxkþ1 Þ1 gkþ1 : ð5:186Þ
Observe that (5.186) is only a technical argument to get a value for θk. With some simple algebraic
manipulations, from (5.186),
226 5 Conjugate Gradient Methods
T 2
sTk ∇2 f ðxkþ1 Þgkþ1 sTk gkþ1 βM1 sk ∇ f ðxkþ1 Þdk
θk ¼ M2 T 2 k
: ð5:187Þ
βk βM1k sk ∇ f ðxkþ1 Þdk
Both these procedures for the θk computation are operational and can be used to generate hybrid
conjugate gradient methods. The salient point in (5.187) for the θk computation is the presence of the
Hessian ∇2f(xkþ1). For large-scale problems, in practice, choices for the update parameters that do not
require the evaluation of the Hessian are preferred over the methods that require the Hessian at each
iteration. In order to avoid the exact computation of ∇2f(xkþ1), a solution is to use the secant equation.
In quasi-Newton methods, the secant equation plays an essential role for the approximation of the
Hessian of the objective function at each iteration. Therefore, in the second procedure for the θk
computation, the search direction dk can be calculated as solution of the following algebraic linear
system Bkdk ¼ gk, where Bk is an approximation of ∇2f(xk). In the quasi-Newton methods, the
matrix Bk, which is symmetric and positive definite, is effectively updated to obtain a new matrix,
Bkþ1, also symmetric and positive definite, as an approximation of ∇2f(xkþ1). The matrix Bkþ1 needs
to satisfy some suitable equations, namely, the secant equations, which include the second order
information. The most popular is the standard secant equation
Bkþ1 sk ¼ yk : ð5:188Þ
By using the standard secant equation in (5.187), the following value for θk could be obtained:
T
yTk gkþ1 sTk gkþ1 βM1 y dk
θk ¼ k
k : ð5:189Þ
β k βk
M2 M1 T
yk d k
The parameter θk, computed as in (5.183), (5.185), (5.187), or (5.189), may be outside the interval
[0,1]. To get a convex combination in (5.181), a simple procedure is followed: if θk 0, then in
(5.181) θk ¼ 0, that is, βk ¼ βM1
k ; if θ k 1, then θ k ¼ 1 in (5.181), that is, βk ¼ β k :
M2
Hence, the general hybrid conjugate gradient method based on the convex combination of the
standard conjugate gradient methods is as follows:
Algorithm 5.5 General hybrid conjugate gradient algorithm by using the convex combination of
standard schemes
1. Choose an initial point x0 2 ℝn, ε 0 sufficiently small and εb 0. Compute f(x0) and g0. Set d0 ¼ g0
and the initial guess α0 ¼ 1/kg0k. Set k ¼ 0
2. Test a criterion for stopping the iterations. For example, if kgkk1 ε, then stop; otherwise, continue
with step 3
3. Compute the stepsize αk satisfying the Wolfe line-search conditions
4. Set xkþ1 ¼ xk þ αkdk. Compute f(xkþ1) and gkþ1. Compute sk ¼ xkþ1 xk and yk ¼ gkþ1 gk
T
5. If βM2
k βk
M1
yk dk εb , then set θk ¼ 0. Otherwise, compute θk by (5.183), (5.185) or by (5.189)
according to the selected procedure
6. If 0 < θk < 1, then compute βk by (5.181). If θk 0, then set βk ¼ βM1k : If θk 1, then set β k ¼ β k
M2
The method is based on a convex combination of LS and DY (see Table 5.1) (Liu and Li, 2014). In it,
Using the Dai and Liao conjugacy condition (5.184), from (5.185), where βM1
k and βk are given as
M2
It is interesting to see the value of θk obtained from the second procedure based on the equality of
the Newton direction and the direction corresponding to the hybrid conjugate gradient algorithm.
Indeed, from (5.189), where βM1 k and βk are given as in (5.190), after some algebraic manipulations,
M2
it results that
T
yk gkþ1 dTk gkþ1 sTk gkþ1 dTk gk
θk ¼
NT
T : ð5:192Þ
g 2 d T g þ y T g d y
kþ1 k k k kþ1 k k
Observe that θDLk ¼ θ k when t ¼ 1. Therefore, an interesting property of this hybrid conjugate
NT
gradient algorithm is that the search direction dkþ1 not only satisfies the Dai and Liao conjugacy
condition, but it is also the Newton direction when t ¼ 1. Hence, in this hybrid algorithm t ¼ 1 is
considered.
The algorithm corresponding to this convex combination of LS and DY, which we call
NDLSDY, is a particularization of Algorithm 5.5, where step 5 is modified as follows: “If
2 T
g d T g þ yT g
kþ1 k k k kþ1 d y εb , then set θk ¼ 0. Otherwise, compute θk by (5.192)” and
k k
set βM1
k ¼ βLS
k andβM2
k ¼βDY
k in step 6.
The following theorem shows that the search direction dk generated by the algorithm NDLSDY
satisfies the sufficient descent condition.
Theorem 5.16 Let {gk} and {dk} be the sequences generated by the algorithm NDLSDY with strong
Wolfe line-search. Then, the search direction dk satisfies the sufficient descent condition
d Tk gk ckgk k2 ð5:193Þ
Proof Assume that the Powell restart criterion does not hold, i.e.,
T
g g < 0:2 g 2 : ð5:194Þ
kþ1 k kþ1
The proof is given by induction. For k ¼ 0, gT0 d0 ¼ kg0 k2 : Since c < 1, it follows that (5.193) is
satisfied. Now, assume that (5.193) holds for some k 1.
From the second strong Wolfe condition ∇f ðxk þ αk dk ÞT dk σdTk gk , it results that
Now, when θk 1, as seen in step 6 of the algorithm NDLSDY, it follows that βk ¼ βDYk :
Therefore, from the above relations (5.195) and (5.196), it results that
2 gkþ1 2 T
dkþ1 gkþ1 gkþ1 þ T
T d g 1 2σ g 2 : ð5:197Þ
d k yk k kþ1 1 σ kþ1
Finally, when θk 2 (0, 1), as seen in step 6 of the algorithm NDLSDY, βk is computed as in (5.181).
Observe that βDY
k can be written as β k ¼ d kþ1 gkþ1 =d k gk : Now, by using (5.194), the above relations
DY T T
2 T
dTkþ1 gkþ1 gkþ1 þ βLS d g þ βDY dT g
2 T
k k kþ1
k k kþ1
gkþ1 þ σ βLS d g þ σ βDY dT g
2 Tk
k k
T k k k
¼ gkþ1 þ σ gkþ1 yk þ σ dkþ1 gkþ1 ð5:199Þ
2 2 T T
gkþ1 þ σ gkþ1 þ σ gkþ1 gk þ σ d kþ1 gkþ1
2 2
gkþ1 þ 1:2σ gkþ1 þ σ dTkþ1 gkþ1 :
Since σ < 0.5, it follows that there always is a constant v > 0 so that
dTkþ1 gkþ1 σ dTkþ1 gkþ1 ¼ v d Tkþ1 gkþ1 :
Therefore,
2
d Tkþ1 gkþ1 q gkþ1 , ð5:200Þ
where q ¼ (1 1.2σ)/v, v ¼ 1 þ σ or 1 σ.
In conclusion, (5.197), (5.198), and (5.200) show that (5.193) holds for k þ 1. ♦
5.5 Hybrid Conjugate Gradient Methods 229
Suppose that the Assumption CG holds. Then the following theorem proves the global conver-
gence of the algorithm NDLSDY.
Theorem 5.17 Suppose that the Assumption CG holds. Let {gk} and {dk} be the sequences generated
by the algorithm NDLSDY with strong Wolfe line-search. Then, lim inf kgk k ¼ 0:
k!1
Proof From the Assumption CG it follows that there exists a positive constant Γ > 0 so that kg(x)k Γ
for all x 2 S. Observe that from Proposition 2.4, αk λ, where λ is a positive constant.
Suppose that lim inf kgk k 6¼ 0: Then there exists a positive constant r > 0 so that for all
k!1
k sufficiently large,
kgk k r: ð5:201Þ
According to the selection of the parameter βk, in step 6 of the algorithm NDLSDY, when
θk 2
= (0, 1), it is obvious that the above inequality also holds. Therefore,
j β j ks k MD
kdkþ1 k gkþ1 þ jβk jkd k k ¼ gkþ1 þ k k Γ þ E,
αk λ
On the other hand, from (5.193), (5.201) and from the Zoutendijk condition, it results that
X 1 X c2 kg k4 X gTk dk 2
2 4
c r 2
k
2
2
< 1,
k0 kd k k k0 kd k k k0 kd k k
which contradicts (5.204). Hence, (5.201) does not hold and hence lim inf kgk k ¼ 0 is proved. ♦
k!1
New hybrid conjugate gradient algorithms for the unconstrained optimization were designed by
Andrei (2008b, 2008d, 2008g, 2009a, 2010a).
230 5 Conjugate Gradient Methods
In the following, let us present some numerical results with NDLSDY for solving unconstrained
optimization problems from the UOP collection, as well as some comparisons with standard conju-
gate gradient methods and with hybrid methods based on the projection concept.
Figure 5.10 presents Dolan and Moré’s performance profiles of NDLSDY versus LS, DY, PRP,
CD, FR, and HS conjugate gradient methods for solving the problems from the UOP collection. For
this set of unconstrained optimization test problems, Fig. 5.10 shows that NDLSDY, as a convex
combination of LS and DY, is more efficient than DY. However, LS is slightly more efficient and
more robust than NDLSDY. Figure 5.6 points out the computational evidence that LS is more
efficient and more robust than DY. Therefore, in this convex combination of LS and DY, the main
role is played by LS. Comparisons with PRP show that NDLSDY is more efficient, but PRP is slightly
Fig. 5.10 Performance profiles of NDLSDY versus the standard conjugate gradient methods LS, DY, PRP, CD, FR,
and HS
5.6 Conjugate Gradient Methods as Modifications of the Standard Schemes 231
Table 5.8 Performances of NDLSDY for solving five applications from the MINPACK-2 collection
NDLSDY
n #iter #fg cpu
A1 40,000 451 521 13.39
A2 40,000 1411 1740 23.55
A3 40,000 1166 1272 38.44
A4 40,000 1018 1172 65.59
A5 40,000 274 301 4.04
Total ─ 4320 5006 145.01
more robust. NDLSDY is seen as being more efficient and more robust than CD and than FR. Even if
HS is slightly more robust than NDLSDY, NDLSDY is close to HS as regards its efficiency.
In the following, Table 5.8 presents the performances of the NDLSDY hybrid conjugate gradient
method for solving five applications from the MINPACK-2 collection.
Table 5.8 shows that, subject to the CPU time metric, the hybrid convex combination of HS and
DY based on the Newton direction is more efficient. Tables 5.2 and 5.4 show that HS with
139.65 seconds is top performer versus DY with 229.20 seconds. Table 5.4 reveals that LS with
168.03 seconds is again better than DY. In another realm of numerical experiments, in the above
hybrid algorithms, DY with kgkþ1k2 in the numerator of βk, is combined in a convex way with HS and
LS, which have gTkþ1 yk in the numerator of βk. Notice that the hybrid convex combination with the
Newton direction using HS is top performer versus the hybrid combination with LS.
Due to their simplicity and low memory requirements, conjugate gradient methods represent an
important contribution to the class of methods for solving unconstrained optimization problems.
These methods have good convergence properties and their iterations do not involve any matrices,
making them extremely attractive for solving large-scale problems.
In this section, some conjugate gradient methods obtained as modifications of the standard scheme
are developed. The idea is to modify the formula of the standard conjugate gradient methods for
computing the conjugate gradient parameter βk in order to improve the numerical performances of the
algorithm. Any standard conjugate gradient method (see Table 5.1) may be modified, but some
modifications of the HS method are to be presented in the following.
A modification of the HS method is CG-DESCENT of Hager and Zhang (2005). CG-DESCENT is
interpreted as a particular value of the parameter in the Dai-Liao conjugate gradient algorithm.
Another interpretation of CG-DESCENT is a particularization of the Perry-Shanno self-scaling
memoryless BFGS algorithm. A deeper modification of the HS method is to determine the search
direction satisfying both the sufficient descent and the conjugacy conditions. Thus, the DESCON
conjugate gradient algorithm is obtained, in which the stepsize is determined by a modification of the
Wolfe line-search (Andrei, 2013c). Before presenting them, let us discuss the Dai-Liao conjugate
gradient method.
232 5 Conjugate Gradient Methods
For general nonlinear functions, by the mean value theorem (see Appendix A), there exists ξ 2 (0, 1)
so that d Tkþ1 gkþ1 ¼ dTkþ1 gk þ αk d Tkþ1 ∇2 f ðxk þ ξαk d k Þdk : Defining yk ¼ gkþ1 gk, the following can
be written dTkþ1 yk ¼ αk dTkþ1 ∇2 f ðxk þ ξαk dk Þd k : Therefore, for the nonlinear optimization, it is
reasonable to replace the conjugacy condition from the linear case with d Tkþ1 yk ¼ 0:
But, for unconstrained optimization methods, the search direction dkþ1 can be written as
dkþ1 ¼ Hkþ1gkþ1, where Hkþ1 is an approximation to the inverse of the Hessian ∇2f(xkþ1),
symmetric and positive definite, which satisfies the secant equation Hkþ1yk ¼ sk, where sk ¼ xkþ1 xk.
Therefore,
T
dTkþ1 yk ¼ H kþ1 gkþ1 yk ¼ gTkþ1 ðH kþ1 yk Þ ¼ gTkþ1 sk :
Hence, the conjugacy condition dTkþ1 yk ¼ 0 is satisfied if the line-search is exact, since, in this case
gTkþ1 sk ¼ 0: However, in practical situations, the exact line-search is not used. Therefore, it is quite
natural to replace the conjugacy condition d Tkþ1 yk ¼ 0 with
where t 0 is a scalar. To determine the parameter βk in the search direction (5.48) that satisfies the
conjugacy condition (5.205), let us multiply (5.48) by yk and use (5.205), thus obtaining
gTkþ1 yk tg Tkþ1 sk
k ¼
βDL , ð5:206Þ
yTk dk
known as the Dai-Liao conjugate gradient parameter. The method where the search direction is
computed as in (5.48) with βk computed as in (5.206) is called the Dai- Liao conjugate gradient
method (Dai, & Liao, 2001). It is obvious that
gTkþ1 sk
βDL
k ¼ βk t
HS
, ð5:207Þ
yTk d k
showing that the DL method is a modification of the HS method. If the line-search is exact
(gTkþ1 sk ¼ 0), then βDL
k ¼ β k : Dai and Liao (2001) proved that for strongly convex functions, the
HS
norm of the search directions generated by the DL method is bounded. Therefore, the DL method with
strong Wolfe line-search is globally convergent.
In order to ensure the global convergence for general nonlinear functions, similar to the PRP+
method introduced by Powell (1984), Dai and Liao restrict βDL k to be positive, thus suggesting β k
DLþ
,
where
T
gkþ1 yk gTkþ1 sk
βDLþ
k ¼ max , 0 t : ð5:208Þ
dTk yk dTk yk
If the Lipschitz and boundedness assumptions hold and if dk satisfies the sufficient descent
condition gTk dk ckgk k2 where c > 0 is a constant, then Dai and Liao (2001) showed that DL+
with strong Wolfe line-search is globally convergent.
5.6 Conjugate Gradient Methods as Modifications of the Standard Schemes 233
For solving the problem (5.46), Hager and Zhang (2005, 2006a) proposed one of the most respected
conjugate gradient algorithms:
xkþ1 ¼ xk þ αk dk , ð5:209Þ
N
dkþ1 ¼ gkþ1 þ βk dk , d0 ¼ g0 , ð5:210Þ
N
βk ¼ max βNk , ηk , ð5:211Þ
1
ηk ¼ , ð5:212Þ
kd k k min fη, kgk kg
T
1 ky k k2
βNk ¼ T y 2 T d k gkþ1 , ð5:213Þ
yk d k k yk d k
where η > 0 is a constant (η ¼ 0.01). In order to achieve the global convergence for general nonlinear
functions, similar to the PRP+ method, the truncation (5.211) is introduced. Observe that in the
N
restricted scheme (5.211), the lower bound on βk is dynamically adjusted in order to make the lower
bound smaller as the iterates converge. Observe that (5.213) is a modification of the HS method.
Hager and Zhang obtained this scheme by deleting a term from the direction of the memoryless
quasi-Newton method of Perry (1976, 1977) and Shanno (1978b). Indeed, the search direction of
Hager and Zhang may be written as
yTk yk d Tk gkþ1 yTk gkþ1
dHZ
kþ1 ¼ g kþ1 2 dk : ð5:214Þ
dTk yk d Tk yk yTk yk
(The Perry-Shanno direction is to be presented in the next section.) Observe that the relationship
between the search direction of Perry/Shanno and that of Hager/Zhang is as follows:
sTk yk dTk gkþ1
d PS ¼ d HZ
þ y , ð5:216Þ
kþ1
yTk yk kþ1 yTk dk k
or
yTk yk PS d Tk gkþ1
kþ1 ¼
d HZ d y: ð5:217Þ
yTk sk kþ1 yTk dk k
Obviously, d HZ
kþ1 may be written as
" #
dk yTk yTk yk
dkþ1 ¼ I T þ 2
HZ
2 dk dk gkþ1 Qkþ1 gkþ1 :
T HZ
ð5:218Þ
yk d k T
y dk k
234 5 Conjugate Gradient Methods
Observe that QHZ kþ1 is not symmetric and does not satisfy the quasi-Newton equation, properties
satisfied by dkþ1 : If in a canonical manner QHZ
PS
kþ1 is symmetrized and imposed to satisfy the quasi-
Newton equation, the Perry/Shanno direction (5.215) is obtained. From (5.216), when the angle
between dk and gkþ1 is sufficiently small and f is strongly convex, we can see that the term dHZ kþ1
dominates the yk term. In this case, the directions d HZ
kþ1 are approximately multiples of d PS
kþ1 : The
Perry/Shanno scheme, analyzed by Shanno and Phua (1980) and by Shanno (1985), has global
convergence for convex functions and an inexact line-search (Shanno, 1978b), but in general it
does not necessarily converge, even when the line-search is exact (Powell, 1984). However, the
Perry/Shanno scheme is convergent if the restarts are employed, but in this case the speed of
convergence can decrease. Han, Liu, and Yin (1997) proved that if the Wolfe line-search is employed,
then the convergence to a stationary point of the minimizing function f is achieved when
limk ! 1kykk ¼ 0 and the gradient of f is Lipschitz continuous.
The following theorem shows that if yTk dk 6¼ 0, a condition which is satisfied when f is strongly
convex or the line-search satisfies the Wolfe conditions, then the computational method given by
(5.209)–(5.213) always generates descent directions (Hager, & Zhang, 2005).
7
gTk d k kgk k2 : ð5:220Þ
8
Proof Since d0 ¼ g0, it follows that gT0 d0 ¼ kg0 k2, which satisfies (5.220). Suppose that τ ¼ βNk.
Multiplying (5.219) by gTkþ1 it results that
2
gTkþ1 d kþ1 ¼ gkþ1 þ βNk gTkþ1 d k !
2 y T
g k y k 2 T
d g
¼ gkþ1 þ k T kþ1 2 k k 2kþ1 gTkþ1 d k
yk d k yT dk
T T T k 2 T 2 2
yk gkþ1 yk dk gkþ1 d k gkþ1 yk dk 2kyk k2 gTkþ1 dk
¼ T 2
yk d k
Now, for the first term yTk gkþ1 yTk dk gTkþ1 dk from the above equality, let us apply the classical
inequality juT vj 12 kuk2 þ kvk2 , where u ¼ 12 yTk d k gkþ1 and v ¼ 2 gTkþ1 dk yk, to get (5.220). On
the other hand, if τ 6¼ βNk , then βNk τ 0: After multiplying (5.219) by gTkþ1 , it follows that
2
gTkþ1 d kþ1 ¼ gkþ1 þ τgTkþ1 d k :
In the following, let us see the performances of CG-DESCENT (version 1.4) of Hager and Zhang for
solving 80 unconstrained optimization problems from the UOP collection (Andrei, 2020a), where the
number of variables is n ¼ 1000, 2000, . . ., 10000. The numerical experiments are given in the
context of Remark 1.1. The maximum number of iterations was limited to 2000.
Figure 5.11 presents the Dolan and Moré performance profiles of CG-DESCENT (version 1.4)
with Wolfe line-search versus the standard conjugate gradient methods HS, PRP, DY, and LS. On the
other hand, Fig. 5.12 presents the performance profiles of CG-DESCENT with approximate Wolfe
line-search (CG-DESCENTaw) versus the standard conjugate gradient methods HS, PRP, DY, and
LS.
From Figs. 5.11 and 5.12, it is clear that CG-DESCENT and CG-DESCENTaw are more efficient
and more robust than the standard conjugate gradient methods considered in this numerical study.
CG-DESCENT is a modification of the self-scaling BFGS method of Perry and Shanno. Therefore, it
is able to capture the curvature of the minimizing function better. Besides, CG-DESCENTaw
implements the approximate Wolfe line-search (2.67). The difference between these two versions
of CG-DESCENT is important. In contrast to the Wolfe conditions, the approximate Wolfe
conditions (2.67) are satisfied at a minimizer of φk(α) ¼ f(xk þ αdk). Therefore, when trying to satisfy
the approximate Wolfe conditions, we focus on minimizing φk; when trying to satisfy the usual Wolfe
conditions, we focus on minimizing ψ k ðαÞ ¼ φk ðαÞ φk ð0Þ αρφ_ k ð0Þ:
Since ψ k(0) ¼ 0, it is required that the local minimizer α satisfy ψ k(α) < 0 and ψ 0k ðα Þ ¼ 0: But,
these two relations together imply that the Wolfe conditions hold in a neighborhood of α when ρ < σ.
Although there is no theory to guarantee the convergence of the algorithm with approximate Wolfe
conditions, however, Hager and Zhang pointed out that there is a numerical advantage in using the
Fig. 5.11 Performance profiles of CG-DESCENT versus HS, PRP, DY, and LS
236 5 Conjugate Gradient Methods
Fig. 5.12 Performance profiles of CG-DESCENTaw (CG-DESCENT with approximate Wolfe conditions) versus HS,
PRP, DY, and LS
approximate Wolfe conditions: with approximate Wolfe conditions the local minimizers are
computed with the accuracy on the order of the machine epsilon rather than with the accuracy on
the order of the square root of the machine epsilon.
We must emphasize that the conjugate gradient method has an n-step quadratic convergence
property when αk is the minimum of φk(α) ¼ f(xk þ αdk).
Figure 5.13 shows the performance profiles of CG-DESCENT and CG-DESCENTaw versus DL
(t ¼ 1) and DLþ (t ¼ 1). Both CG-DESCENT and CG-DESCENTaw are more efficient and more
robust than DL or DLþ.
The performances of CG-DESCENT with Wolfe line-search (CG-DESCENT) and of
CG-DESCENT with approximate Wolfe line-search (CG-DESCENTaw) for solving the
MINPACK-2 applications are presented in Table 5.9. (#f represents the number of function calls.)
For solving the applications from the MINPACK-2, the performances of CG-DESCENTaw are
similar to those of CG-DESCENT.
For solving the unconstrained optimization problem (5.46), Andrei (2013c) developed the following
conjugate gradient algorithm:
5.6 Conjugate Gradient Methods as Modifications of the Standard Schemes 237
Fig. 5.13 Performance profiles of CG-DESCENT and CG-DESCENTaw (CG-DESCENT with approximate Wolfe
conditions) versus DL (t ¼ 1) and DLþ (t ¼ 1)
Table 5.9 Performances of CG-DESCENT and CG-DESCENTaw for solving five applications from the MINPACK-
2 collection
CG-DESCENT CG-DESCENTaw
n #iter #f cpu #iter #f cpu
A1 40,000 323 647 9.67 323 647 7.77
A2 40,000 788 1577 31.35 788 1577 27.05
A3 40,000 1043 2088 64.96 1043 2088 66.03
A4 40,000 435 871 81.40 435 871 72.24
A5 40,000 286 573 9.89 286 573 13.25
Total ─ 2875 5756 197.27 2875 5756 186.34
xkþ1 ¼ xk þ αk dk , ð5:221Þ
where αk > 0 is obtained by a variant of the Wolfe line-search discussed below and the directions dk
are generated as
d kþ1 ¼ θk gkþ1 þ βk sk , ð5:222Þ
d0 ¼ g0, where θk and tk are scalar parameters which are to be determined. Observe that in dkþ1
given by (5.222), gkþ1 is scaled by parameter θk while parameter tk in (5.223) is changed at every
iteration. Algorithms of this form or their variations were studied in many papers. For example,
Andrei (2007a, 2007b, 2007c, 2008c) considered a preconditioned conjugate gradient algorithm
238 5 Conjugate Gradient Methods
where the preconditioner is a scaled memoryless BFGS matrix and the parameter scaling the gradient
is selected as the spectral gradient. Andrei (2012) developed another conjugate gradient algorithm, in
which the search direction satisfies both the descent and the conjugacy condition at every iteration.
Stoer and Yuan (1995) studied the conjugate gradient algorithm on a subspace, where the search
direction dkþ1 is taken from the subspace span{gkþ1, dk}. Observe that, if for every k 1, θk ¼ 1
and tk ¼ t, then (5.222) reduces to the Dai and Liao search direction.
Suppose that the Assumption CG holds. Therefore, there exists a constant Γ 0 so that k∇f(x)k Γ
for all x 2 S ¼ {x 2 ℝn : f(x) f(x0)}. Besides, it is easy to see that
kskk ¼ kxkþ1 xkk kxkþ1k þ kxkk 2B, where B 0 is a scalar.
In our algorithm, for all k 0 the scalar parameters θk and tk in (5.222) and (5.223), respectively,
are determined in such a way so that both the sufficient descent and the conjugacy conditions are
satisfied. Therefore, from the sufficient descent condition
2
gTkþ1 d kþ1 w gkþ1 ð5:224Þ
it follows that
T T 2
2 yk gkþ1 sTk gkþ1 sk gkþ1 2
θk gkþ1 þ tk ¼ w gkþ1 ð5:225Þ
yTk sk yTk sk
it results that
θk yTk gkþ1 þ yTk gkþ1 tk sTk gkþ1 ¼ v sTk gkþ1 , ð5:227Þ
where v > 0 and w > 0 are known scalar parameters. Observe that in (5.225) the classical sufficient
descent condition (5.224) is modified with equality. As known, the main condition in any conjugate
gradient algorithm is the descent condition gTk dk < 0 or the sufficient descent condition (5.224). In
(5.224), w is selected close to 1. This is quite a reasonable value. For example, Hager and Zhang
(2005, 2006a) showed that in their CG-DESCENT algorithm, w ¼ 7/8. On the other hand, the
conjugacy condition is not so strict. In fact, very few conjugate gradient algorithms satisfy this
condition. For example, the Hestenes and Stiefel algorithm has the property that the pure conjugacy
condition always holds, independent of the line-search.
If v ¼ 0, then (5.227) is the “pure” conjugacy condition. However, in order to improve the
algorithm and to incorporate the second order information, v > 0 is taken.
Now, let us define
2
Δk yTk gkþ1 sTk gkþ1 gkþ1 yTk sk , ð5:228Þ
Δk sTk gkþ1 Δk , ð5:229Þ
ak v sTk gkþ1 þ yTk gkþ1 , ð5:230Þ
2
bk w gkþ1 yTk sk þ yTk gkþ1 sTk gkþ1 : ð5:231Þ
Supposing that Δk 6¼ 0 and yTk gkþ1 6¼ 0, then, from the linear algebraic system given by (5.225)
and (5.227), tk and θk can be determined as
5.6 Conjugate Gradient Methods as Modifications of the Standard Schemes 239
2
bk yTk gkþ1 ak yTk sk gkþ1
tk ¼ , ð5:232Þ
Δk
ak tk sTk gkþ1
θk ¼ , ð5:233Þ
yTk gkþ1
with which the parameter βk and the direction dkþ1 can immediately be computed. Observe that by
using (5.232) in (5.233), θk can be expressed as
" T 2 #
ak yk sk gkþ1 b
θk ¼ T 1þ k: ð5:234Þ
yk gkþ1 Δk Δk
Note that the crucial element in our algorithm is Δk : Therefore, the proposed conjugate gradient
algorithm with guaranteed descent and conjugacy conditions is defined by (5.221) and (5.222), where
the scalar parameters θk and βk are given by (5.234) and (5.235), respectively, and αk is computed by a
variant of the Wolfe line-search, which is discussed in the following.
Modified Wolfe line-search conditions. In order to define the algorithm, a small modification of the
second Wolfe line-search condition (5.50) is considered as
where σ k is a sequence of the parameters satisfying the condition 0 < ρ < σ k < 1 for all k. The
interpretation of (5.236) is that the rate of decrease of f in the direction dk at xkþ1 is larger than a
fraction σ k of the rate of decrease of f in the direction dk at xk. Note that σ k is modified at every
iteration. The condition ρ < σ k for all k 0 guarantees that the Wolfe line-search (5.49) and (5.236)
can be satisfied simultaneously. Relations (5.49) and (5.236) are called the modified Wolfe line-search
conditions.
Proposition 5.13 If
1 g 2
kþ1
< σk , ð5:237Þ
2 yT g þ g 2
k kþ1 kþ1
σ k T
gTkþ1 sk y s: ð5:240Þ
1 σk k k
Since yTk sk > 0 (if kgkk 6¼ 0), the combination of this lower bound for gTkþ1 sk with the upper bound
(5.238) gives
T
g sk yT sk max 1, σ k : ð5:241Þ
kþ1 k 1 σk
Algorithm 5.6 Guaranteed descent and conjugacy conditions with a modified Wolfe line-search:
DESCON / DESCONa
1. Select a starting point x0 2 dom f and compute: f0 ¼ f(x0) and g0 ¼ ∇ f(x0). Select some positive values
for ρ and σ 0 as well as for v and w. Set d0 ¼ g0 and k ¼ 0. Select the small positive constants εA and εm
sufficiently small
2. Test a criterion for stopping the iterations. If the test is satisfied, then stop; otherwise, continue with step
3
3. Determine the stepsize αk by the modified Wolfe line-search conditions (5.49) and (5.246). Update the
variables as xkþ1 ¼ xk þ αkdk. Compute fkþ1 and gkþ1. Compute yk ¼ gkþ1 gk and sk ¼ xkþ1 xk
5.6 Conjugate Gradient Methods as Modifications of the Standard Schemes 241
Under reasonable assumptions, the modified Wolfe line-search conditions and the Powell restart
criterion are sufficient to prove the global convergence of the algorithm. The first trial of the stepsize
crucially affects the practical behavior of the algorithm. At every iteration k 1, the starting guess for
the step αk in the line-search is computed as αk 1kdk 1k/kdkk. Observe that in the line-search
procedure (step 3 of the algorithm), the stepsize αk is computed by using the updated value of the
parameter σ k computed as in step 8. For strongly convex functions, the linear convergence of the
acceleration scheme is proved as in Andrei (2009c).
The convergence for general nonlinear functions. In order to prove the global convergence of
DESCON, assume that the stepsize αk satisfies the strong Wolfe line-search conditions (5.49) and
gðxk þ αk d k ÞT dk σ k gT dk , ð5:247Þ
k
where ρ and σ k are arbitrary positive constants so that 0 < ρ < σ k < 1. Observe that, since ρ is small
enough, the parameter σ k in (5.247) can be selected at each iteration as in (5.246), thus satisfying the
above condition 0 < ρ < σ k < 1.
In the following, let us prove that in very mild conditions the direction dk generated by (5.222),
where θk and βk are given by (5.234) and (5.235), respectively, is bounded.
Theorem 5.19 Suppose that the Assumption CG holds and kgkk γ > 0 for all k 0. Consider the
conjugate gradient algorithm (5.221), where the direction dkþ1 given by (5.222) and (5.223) satisfies
the descent condition gTk d k ¼ wkgk k2 , where w > 1 and the stepsize αk is obtained by the strong
Wolfe line-search (5.49) and (5.247), where 1/2 σ k < 1. Then, lim inf kgk k ¼ 0:
k!1
Proof From (5.223), by using (5.232), after some algebraic manipulations, we have
yTk gkþ1 bk g 2
kþ1
βk ¼ T 1 þ ak : ð5:248Þ
yk sk Δk Δk
From: the definition of ωk, the modified Wolfe condition (5.236) and from the descent condition
¼ wkgk k2 , since kgkk γ > 0 and σ k < 1 for all k 0, it follows that
gTk dk
T
y g ksk k ky k g ksk k Lksk k2 Γ LΓð2BÞ2 :
k kþ1 k kþ1
Therefore,
T
y g LΓð2BÞ2 1 c
k kþ1
¼ , ð5:249Þ
y T sk wω ð 1 σ k Þγ 2 ks k
k k skk
k
where
LΓð2BÞ2
c¼ :
wωð1 σ k Þγ 2
Now, observe that, since for all k 0, Δk < 0 and bk > 0, it follows that bk =Δk > 0: Besides,
from (5.228) and (5.231), it follows that
T
bk yk gkþ1 sTk gkþ1
¼ w þ ð1 þ wÞ : ð5:250Þ
Δk Δk
Since Δk > 0 and sTk gkþ1 tends to zero along the iterations, it follows that bk =Δk tends to
w > 0. Hence 1 bk =Δk tends to 1 þ w. Therefore, there exists a positive constant c4 > 1 so that
1 < 1 bk =Δk c4 :
Again, from the Assumption CG,
T
y sk ksk k ky kksk k2 Lksk k3 Lð2BÞ3 :
k k
Therefore, yTk sk Lð2BÞ3 =ksk k: Now, from (5.230) and (5.241), the following estimation is
obtained
jak j ¼ v sTk gkþ1 þ yTk gkþ1 vsTk gkþ1 þ yTk gkþ1
σk
vyTk sk max 1, þ yTk gkþ1
1 σk ð5:251Þ
Lð2BÞ3 σk LΓð2BÞ2
v max 1, þ :
ks k k 1 σk ks k k
Since 1/2 σ k < 1, there exists a positive constant c5 > 0 so that max{1, σ k/(1 σ k)} c5. Hence,
1 cb
jak j vLc5 ð2BÞ3 þ LΓð2BÞ2 ¼ , ð5:252Þ
ksk k ksk k
where cb ¼ vLc5 ð2BÞ3 þ LΓð2BÞ2 : With this, from (5.248) the following estimation is obtained:
T
yk gkþ1 b g 2 cc cbΓ2 1
jβk j T 1 þ jak j 4 þ
k kþ1
ks k k c 3 ks k k
Δk Δk
y s ð5:253Þ
k k
cbΓ2 1
¼ cc4 þ :
c 3 ks k k
kdkþ1 k jθk j gkþ1
þ jβk j2ksk k
cbΓ 1 ð5:254Þ
c2 Γ þ cc4 þ ks k E,
c3 ksk k k
where E is a positive constant. Hence, for all k 0, kdkk E implies ∑k 11/kdkk ¼ 1. Since dk is a
descent direction, it follows that lim inf kgk k ¼ 0: ♦
k!1
Let us solve the problems from the UOP collection with the number of variables n ¼ 1000, 2000, . . .,
10000. The DESCON algorithm implements the Wolfe line-search conditions with ρ ¼ 0.0001,
2
2
σ ¼ g = yT g þ g : In DESCON we take w ¼ 7/8 and v ¼ 0.05. The numerical
kþ1 k kþ1 kþ1
experiments are given in the context of Remark 1.1. Figure 5.14 shows the performance profiles of the
accelerated variant of DESCON (DESCONa) versus the standard conjugate gradient algorithms HS
and PRP.
Figure 5.15 shows the performance profiles of DESCONa versus DL (t ¼ 1) and versus
CG-DESCENT (version 1.4) with Wolfe line-search.
The performance profiles of accelerated DESCON (DESCONa) versus CG-DESCENT with
approximate Wolfe line-search (CG-DESCENTaw) are illustrated in Fig. 5.16.
Table 5.10 Performances of DESCONa for solving five applications from the MINPACK-2 collection
DESCONa
n #iter #fg cpu
A1 40,000 241 510 4.12
A2 40,000 631 1297 12.11
A3 40,000 1036 2100 32.25
A4 40,000 299 632 23.80
A5 40,000 278 576 6.71
Total ─ 2485 5115 78.99
Figure 5.16 points out that DESCONa is top performer in comparison with CG-DESCENTaw.
However, CG-DESCENT with approximate Wolfe line-search is more efficient than DESCONa.
Figure 5.15 shows that both DESCONa and CG-DESCENT with Wolfe line-search practically have
the same efficiency. From the table inside Fig. 5.15 notice that DESCONa was faster in 241 problems,
while CG-DESCENT in 252 problems. Once again, this illustrates the importance of the line-search
in conjugate gradient algorithms. An accurate line-search increases the performances of the
algorithm.
Table 5.10 presents the performances of DESCONa for solving the applications from the
MINPACK-2 collection, where nx ¼ 200 and ny ¼ 200.
The purpose of this section is to see how the second order information of the minimizing function
may be used in the formula for the search direction computation. Thus, new conjugate gradient
algorithms with better convergence properties are obtained. In fact, these methods include a special
preconditioning of conjugate gradient algorithms by using the BFGS updating. Memoryless quasi-
Newton methods were first introduced by Perry (1977) and Shanno (1978a). These methods can be
5.7 Conjugate Gradient Methods Memoryless BFGS Preconditioned 245
considered as the quasi-Newton methods, for which the approximation to the inverse of the Hessian is
taken as the identity matrix at every iteration.
Four such BFGS preconditioned conjugate gradient methods are known. The first preconditioned
conjugate gradient method called CONMIN, developed by Shanno (1983), is based on the idea that
the conjugate gradient methods are exactly the BFGS quasi-Newton method, where the approxima-
tion to the inverse Hessian of the minimizing function is restarted as the identity matrix at every
iteration. The second one, developed by Andrei (2007a, 2007b, 2007c, 2010b), is using scaling in the
frame of the memoryless BFGS method. In the third method, called DK/CGOPT, the search direction
is chosen in one-dimensional manifold closest to the Perry-Shanno self-scaling memoryless BFGS
method, developed by Dai and Kou (2013). Finally, using the trace and the determinant or a
combination of these operators of the self-scaling memoryless BFGS iteration matrix, a new
conjugate gradient method is developed (Andrei, 2019c). Only CONMIN and DK/CGOPT are
presented in this section (Andrei, 2020a).
Perry (1976) noted that the search direction dkþ1 ¼ gkþ1 þ βkdk, where βk is given by
βk ¼ gTkþ1 yk =dTk yk , can be written as
d k yT
dkþ1 ¼ I T k gkþ1 : ð5:255Þ
yk d k
Defining sk ¼ αkdk ¼ xkþ1 xk and since d k yTk =yTk dk ¼ sk yTk =yTk sk , (5.255) can be rewritten as
sk y T
d kþ1 ¼ I T k gkþ1 : ð5:256Þ
y k sk
Perry relaxed the assumption that αk is chosen to minimize f(xk þ αdk) and added the correction
term sk sTk =yTk sk to the matrix from (5.256) and proposed the modified search direction
sk yTk sk sTk
d kþ1 ¼ I T þ T gkþ1 Qkþ1 gkþ1 , ð5:257Þ
yk sk yk sk
Hkþ1 yk ¼ sk , ð5:259Þ
where Hkþ1 is an approximation to the inverse Hessian. If the line-search is exact, then sTk gkþ1 ¼ 0
and (5.257) is identical to the HS method.
The major difficulty with this approach, not corrected by Perry, is that the matrix Qkþ1 is not
symmetric and therefore it is not positive definite. Thus, the search directions dkþ1 given by (5.257)
are not necessarily descent directions and hence numerical instabilities can result, ruining the
convergence of the algorithm. To overcome this difficulty, Shanno (1978a, 1978b) investigated the
relationship between the conjugate gradient and the BFGS methods.
246 5 Conjugate Gradient Methods
As known, the best quasi-Newton method is BFGS, where the updating to the inverse Hessian of
the minimizing function is given by
sk yTk H k þ H k yk sTk yTk Hk yk sk sTk
Hkþ1 ¼ Hk þ 1þ T : ð5:260Þ
yTk sk y k sk yTk sk
The major difference between the conjugate gradient and the quasi-Newton methods is the
presence of the matrix Hk in the updating formula for the search direction dkþ1. For problems with
a large number of variables, it is impossible to store an approximation to the inverse Hessian, and
therefore the conjugate gradient methods are preferred.
As in Shanno (1978a), to see the relationship between the conjugate gradient and the BFGS
methods, the matrix Qkþ1 defined by (5.257) is first symmetrized to get
Afterwards, let us force Qkþ1 defined by (5.261) to satisfy the quasi-Newton eq. (5.259), yielding
the symmetric update
sk yT þ y sT yT y sk sT
Qkþ1 ¼ I k T k k þ 1 þ kT k T k : ð5:262Þ
y k sk y k sk y k sk
Observe that, if in (5.260) Hk ¼ I then it results precisely Qkþ1 from (5.262). Therefore, the
important result noticed for the first time by Shanno was that the conjugate gradient methods are
precisely the BFGS quasi-Newton methods, where the approximation to the inverse Hessian is
restarted as the identity matrix at every iteration. Hence, the conjugate gradient methods are often
called memoryless quasi-Newton methods.
By using Proposition 5.14, a conjugate gradient method in which the search directions are
computed as
dkþ1 ¼ Qkþ1 gkþ1 ð5:263Þ
does not explicitly require the construction of Qkþ1. Indeed, from (5.263) and (5.262), it is easy to get
y T y sT g yT g sT g
d kþ1 ¼ gkþ1 1 þ kT k k Tkþ1 k T kþ1 sk þ k Tkþ1 yk , ð5:264Þ
yk sk yk sk yk sk yk sk
which shows that no additional information is needed more than that required by the known standard
conjugate gradient methods.
To get a superlinear convergence of a conjugate gradient method in which the search direction is
computed as dkþ1 ¼ gkþ1 þ βkdk with βk given by the HS method, Beale (1972) suggested a
modification of the search direction as
5.7 Conjugate Gradient Methods Memoryless BFGS Preconditioned 247
where
yTt gkþ1
μk ¼ , with t < k < t þ n ð5:267Þ
yTt d t
In particular, starting with t ¼ 0, at every n iterations a new pair of vectors dt and yt are stored,
known as the restart vectors of Beale, and the generated search directions are conjugate subject to
these restart vectors as well as to the previous ones. After n iterations, the restart direction is replaced
by the current one.
Powell (1977) made a modification of the restarting of the conjugate gradient methods. Powell’s
criterion was to use (5.266) whenever
T
g g 0:2 g 2 :
kþ1 k kþ1
where Pk, which modifies the gradient gkþ1, is an update using the information from two prior points.
It is easy to show that if f(x) is quadratic and the line-search is exact, then Pk is a projection matrix of
rank n 2 rather than rank n 1 of the matrix from (5.255).
Using this double update with information in two points and keeping the philosophy behind the
matrix Qkþ1 from (5.262), based on the fact that the conjugate gradient method is exactly the
memoryless BFGS method, Shanno (1978a) suggested the following search direction:
where
!
b Tb bk y
bk H k yk sk þ sk yk H k þ
T
yT H sk sTk
H kþ1 ¼H T
1þ kT k , ð5:270Þ
yk sk y k sk yTk sk
with
b yt sTt þ st yTt yTt yt st sTt
Hk ¼ I þ 1þ T : ð5:271Þ
yTt st yt st yTt st
T
bk gkþ1 þ sk gkþ1 H
dkþ1 ¼ H bk yk
y Ts
" k !
k # ð5:272Þ
yTk Hbk yk sTk gkþ1 yTk Hbk gkþ1
1þ T sk ,
yk sk yTk sk yTk sk
It should be emphasized that the implementation of this method requires only seven vectors to
store: xk, xkþ1, gk, gkþ1, dk, dt and yt. By the time the update has been accomplished, the information in
xk is no longer required and so, H bk yk from (5.274) may be stored in xk. Once H bk yk and the scalars yT sk
k
and yT H bk yk have been computed, gk is no longer needed, so H bk gkþ1 from (5.273) can be explicitly
k
computed and stored in gk. This double update scheme was first proposed by Perry (1976, 1977), but
with yt and st replaced by yk 1 and sk 1, respectively.
Another modified conjugate gradient method can be obtained as
yT y sT g yT g sT g
dkþ1 ¼ γgkþ1 1 þ γ kT k k Tkþ1 γ k T kþ1 sk þ γ k Tkþ1 yk , ð5:275Þ
yk sk yk sk yk sk y k sk
where
yTk sk
γ¼ , ð5:276Þ
yTk yk
where γ is a scaling parameter used only at the initial step. Now, substituting (5.276) in (5.275), after
some simple algebraic manipulations, it results that
T
y T sk s g yT g sT g
d kþ1 ¼ Tk gkþ1 2 k Tkþ1 k T kþ1 sk þ k T kþ1 yk , ð5:277Þ
yk yk y k sk yk yk yk yk
kþ1 ) search direction. Again, observe that if sk gkþ1 ¼ 0, that is, if the
which is the Perry/Shanno (d PS T
so the effect is one of multiplying the search direction (5.256) with a scalar, thus the n- step
convergence to the minimum of a quadratic function being maintained.
Therefore, using this scaling technique in (5.271), it follows that
b st yTt þ yt sTt yTt yt st sTt st sTt
Hk ¼ γ t I þ þ , ð5:279Þ
yTt st yTt st yTt st yTt st
where
5.7 Conjugate Gradient Methods Memoryless BFGS Preconditioned 249
yTt st
γt ¼ :
yTt yt
With these developments, the conjugate gradient memoryless BFGS preconditioned algorithm is
defined by (5.272), where, this time, the vectors H bk gkþ1 and H bk yk are computed as
T
b yTt st sTt gkþ1 st gkþ1 yTt gkþ1
H k gkþ1 ¼ T gkþ1 T yt þ 2 T T s, ð5:280Þ
yt yt yt yt y t st yt yt t
T T
T T
Hbk yk ¼ yt st yk st yk yt þ 2 st yk yt yk st : ð5:281Þ
yTt yt yTt yt yTt st yTt yt
As a final remark of these developments, the fact that, under the exact line-search the conjugate
gradient methods are simple projections of the gradient, they make their initial length a poor
approximation to the desired stepsize. Fletcher (1987) proposed scaling dkþ1 by
2ðf ðxkþ1 Þ f ðxk ÞÞ
dbkþ1 ¼ dkþ1 :
d Tkþ1 gkþ1
Observe that this scaling of the search direction includes the function values in two successive
steps.
1. Choose an initial point x0 2 ℝn and ε > 0 sufficiently small. Set k ¼ 0. Compute f(xk), gk ¼ ∇ f(xk) and set
dk ¼ gk
2. Compute the stepsize αk > 0 satisfying the Wolfe line-search conditions (5.49) and (5.50)
3. Compute xkþ1 ¼ xk þ αkdk, f(xkþ1), gkþ1, yk ¼ gkþ1 gk and sk ¼ xkþ1 xk
4. Test a criterion for stopping the iterations. If this criterion is satisfied, then stop; otherwise continue with
step 5
5. Test the criterion for restarting the iterations. If:
(a) Iteration k is a multiple of n, or
2
(b) gTkþ1 gk 0:2 gkþ1 ,
then compute the search direction dkþ1 as in (5.275). Set st ¼ dk, yt ¼ yk, k ¼ k þ 1 and continue with
step 2. Otherwise, continue with step 6
6. Compute the search direction dkþ1 as in (5.272), where the vectors H bk gkþ1 and H
bk yk are computed as in
(5.280) and (5.281), respectively
7. Scale the search direction dkþ1 as
d kþ1 ¼ 2ðf ðxkþ1 Þ f ðxk ÞÞ=d Tkþ1 gkþ1 d kþ1 ,
set k ¼ k þ 1 and continue with step 2 ♦
For convex functions, using the exact line-search, Shanno (1978b) proved the convergence of
Algorithm 5.7 when the Hessian of the minimizing function is strictly bounded. However, since the
search direction is computed using the BFGS updating strategy and since the line-search is based on
the Wolfe conditions and the Beale restart is implemented, the convergence of the algorithm is
ensured. For general nonlinear functions bounded below with the level set bounded, Shanno showed
that the algorithm is not possible to converge to a point where the gradient is bounded away from
zero. Cycling in the form defined by Powell is the only way in which the conjugate gradient
memoryless BFGS preconditioned can possibly fail to converge on general nonlinear functions.
250 5 Conjugate Gradient Methods
Fig. 5.17 Performance profiles of CONMIN versus HS, PRP, DY, and LS
CONMIN is one of the oldest and most respectable conjugate gradient methods, implemented by
Shanno (1983). In the following, let us present some results with this method and its comparisons
versus some other methods for solving the unconstrained optimization test problems from the UOP
collection (Andrei, 2020a).
In the first set of numerical experiments, CONMIN is compared versus the standard conjugate
gradient methods HS, PRP, DY, and LS. Figure 5.17 shows the Dolan and Moré performance profiles
of these methods. We can see that CONMIN is top performer, being more robust versus all these
methods.
Comparisons of CONMIN versus the modified conjugate gradient methods DL (t ¼ 1), DLþ
(t ¼ 1), CG-DESCENT (version 1.4), and DESCONa are presented in Fig. 5.18. Observe that
CONMIN is more robust than DL and DL+. However, both CG-DESCENT and DESCONa are
more efficient and slightly more robust than CONMIN. CG-DESCENT and CONMIN are based on
the memoryless BFGS quasi-Newton method. The search direction in CG-DESCENT is obtained
from the Perry/Shanno search direction by deleting a term. On the other hand, DESCON is a
modification of the HS method with guaranteed sufficient descent and conjugacy conditions and a
modified Wolfe line-search.
In the second set of numerical experiments, let us present the performances of CONMIN for
solving the applications from the MINPACK-2 collection, each of them with 40,000 variables.
Table 5.11 shows the performances of CONMIN for solving these applications.
5.7 Conjugate Gradient Methods Memoryless BFGS Preconditioned 251
Fig. 5.18 Performance profiles of CONMIN versus DL (t ¼ 1), DLþ (t ¼ 1), CG-DESCENT and DESCONa
Table 5.11 Performances of CONMIN for solving five applications from the MINPACK-2 collection
CONMIN
n #iter #fg cpu
A1 40,000 241 484 5.67
A2 40,000 827 1674 21.25
A3 40,000 1094 2217 41.65
A4 40,000 486 985 40.21
A5 40,000 374 757 11.39
Total ─ 3022 6117 120.17
The Conjugate Gradient Method Closest to the Scaled Memoryless BFGS Search
Direction (DK / CGOPT)
The search directions in the quasi-Newton methods are computed as d k ¼ H k gk , where H k 2 ℝnn
is an approximation to the inverse Hessian of the minimizing function (see Chap. 6). At the iteration k,
the approximation Hk to the inverse Hessian is updated to achieve H kþ1 as a new approximation to the
inverse Hessian in such a way, so that H kþ1 satisfies a particular equation, namely, the secant
equation, which includes the second order information. The most used is the standard secant equation
H kþ1 yk ¼ sk , where sk ¼ xkþ1 xk and yk ¼ gkþ1 gk.
Given the initial approximation H0 to the inverse Hessian as an arbitrary symmetric and positive
definite matrix, the most known quasi-Newton updating formula is the BFGS update
252 5 Conjugate Gradient Methods
sk yTk H k þ H k yk sTk yTk Hk yk sk sTk
Hkþ1 ¼ Hk þ 1þ T : ð5:282Þ
yTk sk y k sk yTk sk
The self-scaling memoryless BFGS method of Perry (1977) and Shanno (1978a) is obtained by
updating the scaled identity matrix (1/τk)I by the BFGS updating formula (5.282), i.e., by considering
H k ¼ ð1=τk ÞI in (5.282), where I is the n n identity matrix and τk is the scaling parameter.
Therefore, the search direction in the self-scaling memoryless BFGS method is computed as
where
2
1 sk yT þ y sT 1 kyk k sk sTk
Hkþ1 ¼ I k T k k þ 1þ , ð5:284Þ
τk yk sk τk yTk sk yTk sk
and τk is the scaling parameter, known as the SSML-BFGS updating. Now, substituting (5.284) in
(5.283), the SSML-BFGS search direction, i.e., the self-scaling memoryless BFGS search direction of
Perry and Shanno (with a multiplier difference) is obtained as
T
gkþ1 yk kyk k2 gTkþ1 sk gT sk
dPS ¼ g þ τ k þ sk þ kþ1 y: ð5:285Þ
kþ1 kþ1 T
y k sk T
y k sk T
y k sk yTk sk k
(Observe that the Perry/Shanno search direction (5.277) is a scaling of (5.285), with a particular
value for the scaling parameter τk.) Thus, subject to the parameter τk, a family of the Perry-Shanno
self-scaling memoryless BFGS quasi-Newton methods is obtained. Now, the following particular-
izations of the search direction dPS
kþ1 may be considered.
1. Having in view that sk ¼ αkdk, by deletion of the last term in (5.285) the following search direction
is obtained:
yTk gkþ1 kyk k2 sTk gkþ1
dkþ1 ¼ gkþ1 þ τk þ T dk : ð5:286Þ
yTk dk y k sk yTk dk
ky k k2
τOS
k ¼ , ð5:287Þ
yTk sk
then (5.286) reduces to the well-known conjugate gradient algorithm CG-DESCENT, proposed by
Hager and Zhang (2005)
where
To establish the global convergence for general nonlinear functions, the conjugate gradient
parameter is truncated as
1
βk
CGDESCENTþ
¼ max βk CGDESCENT
, , ð5:290Þ
kdk k min fη, kgk kg
where η > 0 is a constant (η ¼ 0.01). The numerical experiments showed that CG-DESCENT is
more efficient and more robust than the self-scaling memoryless BFGS method given by (5.285)
(Dai and Kou, 2013).
Other values for the scaling parameter τk in (5.286) were proposed as follows. Oren (1974) and
Oren and Luenberger (1984) proposed for τk the value yTk sk = sTk Bk sk with Bk ¼ H 1
k : If Hk is the
identity matrix, then this value reduces to
yTk sk
τOL
k ¼ : ð5:291Þ
ks k k2
For a general nonlinear convex objective function, Nocedal and Yuan (1993) proved the global
convergence of the self-scaling BFGS method with τk given by (5.291) and with Wolfe line-
search. They also presented numerical results indicating that the unscaled BFGS method is in
general superior to the self-scaling BFGS with τk given by (5.291).
2. Observe that the self-scaling memoryless BFGS search direction of Perry and Shanno (5.285) is a
three-term conjugate gradient algorithm. A more reasonable way to deal with the last term in
(5.285) was suggested by Dai and Kou (2013), who proposed to seek the search direction closest to
kþ1 as a vector on the manifold Skþ1 ¼ {gkþ1 þ βdk : β 2 ℝ}. This approach is not new. For
dPS
example, Andrei (2017b) presented accelerated adaptive Perry conjugate gradient algorithms
based on the minimization of the Frobenius norm of the difference between the symmetrical
scaled Perry conjugate gradient direction and the self-scaling memoryless BFGS update. Also,
Livieris, Tampakas, and Pintelas (2018) developed a convex hybridization of the conjugate
gradient algorithms DY and HS, in which the hybridization parameter is computed by minimizing
the distance between the hybrid direction and the self-scaling memoryless BFGS direction.
which is
where
254 5 Conjugate Gradient Methods
!
gT y k ky k k2 sTk yk gTkþ1 sk
βDK
k ðτ k Þ ¼ kþ1 τk þ T : ð5:294Þ
yTk sk y k sk ksk k2 yTk sk
If the line-search is exact, sTk gkþ1 ¼ 0, then the second term in (5.294) is missing and the search
direction reduces to the HS formula.
In order to avoid the non-convergence of the algorithm, similar to Gilbert and Nocedal (1992),
who proved the global convergence of the PRP methods for general nonlinear functions by restricting
βk 0, (5.294) is truncated, being replaced by
( )
gTkþ1 d k
βk ðτk Þ ¼ max βk ðτk Þ, η
DKþ DK
, ð5:295Þ
kd k k2
and
( )
dTk gkþ1
βDKþ
k ¼ max βDK
k ,η , ð5:297Þ
kd k k2
where η 2 [0, 1). Observe that (5.296) is exactly the Dai-Liao conjugate gradient algorithm with
t ¼ kyk k2 = sTk yk : Again, note that (5.296) differs from the Hager and Zhang algorithm only in a
constant coefficient in the second term. Thus, the family of Dai-Kou self-scaling memoryless BFGS
quasi-Newton methods is obtained.
If τk in (5.294) is selected as τOL
k , then the CGOPT conjugate gradient algorithm of Dai and Kou
(2013) is obtained, where the search direction is computed as
dCGOPT
kþ1 ¼ gkþ1 þ βCGOPT
k dk , ð5:298Þ
where
then the second term in (5.294) or in (5.289) or in (5.299) is missing and the search direction reduces
to that of the HS algorithm.
Dai and Kou (2013) (see Lemma 2.1) proved that if yTk sk > 0, then the search direction given by
(5.293) and (5.294) satisfies
ks k2 3
g 2 :
gTkþ1 d kþ1 min τk Tk , kþ1 ð5:300Þ
y k sk 4
More generally, if function f is continuously differentiable and bounded below and its gradient g is
Lipschitz continuous, then Dai and Kou (2013) (see Lemma 2.2) proved that the search direction
(5.293), where τk in (5.294) is chosen to be any of τOS k , τk , τk or τ k and yk sk > 0 , satisfies
OL H B T
gT dkþ1 c g for some positive constant c > 0.
2
kþ1 kþ1
Dai and Kou (2013) implemented the algorithm (5.2) with (5.298) and (5.299) endowed with two
ingredients which improve its performances. The first ingredient is an improved Wolfe line-search,
which avoids the numerical drawback of the first Wolfe line-search condition and guarantees the
global convergence of the algorithm. The second one is an adaptive restart of the algorithm along the
negative gradient based on how the minimizing function is close to some quadratic function.
The improved Wolfe line-search consists in the modified first Wolfe condition as
ψ k ðαÞ ψ k ð0Þ þ min εψ 0k ð0Þ, ραψ 0k ð0Þ þ ηk , ð5:301Þ
where ψ k(α) ¼ f(xk þ αdk), ε > 0 is a given constant and {ηk} is a positive sequence satisfying
∑k 1ηk < 1 , as well as in the second Wolfe line-search
k ¼ 0, . . . . If rk is close to 1, then it can be supposed that ψ k(α) ¼ f(xk þ αdk) is close to some
quadratic function. If there are continuously a number of iterations so that rk is close to 1, then the
algorithm is restarted with the steepest descent direction.
In the following, let us present the performances of the conjugate gradient algorithm denoted as
DKþw, given by (5.47), where the search direction is computed as
and βDKþ
k is given by (5.297) with Wolfe line-search (5.49) and (5.50), for solving all the
problems from the UOP collection. Even if βDKþ
k βCGOPTþ
k , where βCGOPTþ
k ¼
256 5 Conjugate Gradient Methods
n o
max βCGOPT
k , η sTk gkþ1 =ksk k2 , the algorithm given by (5.304) and (5.297) with Wolfe line-search
is called DKþw because we did not implement in it the dynamic restart strategy used in CGOPT or
any other ingredients specific to CGOPT. For each test problem from the UOP collection (Andrei,
2020a), 10 numerical experiments were run, with the number of variables n ¼ 1000, . . ., 10000. The
initial value for the stepsize is computed as α0k ¼ αk1 kdk1 k=kd k k: All the numerical experiments
were run in the context of Remark 1.1.
Figure 5.19 presents the performance profiles of DKþw with Wolfe line-search versus
CG-DESCENT (version 1.4) and versus DESCONa. CG-DESCENT is more efficient than DKþw,
but DKþw is slightly more robust. DESCONa is clearly more efficient and more robust than DKþw.
Figure 5.20 shows the performance profiles of DKþaw (DKþ with approximate Wolfe line-
search) versus CONMIN and versus CG-DESCENTaw (CG-DESCENT with approximate Wolfe
line-search.
To see the performances of the DKþ algorithm with the improved Wolfe line-search, in (Andrei,
2019c), we manufactured a new code implementing (5.304) with (5.297), where this time the stepsize
is determined by the improved Wolfe line-search (5.301) and (5.302) (without the dynamic restart
strategy).
The algorithm using (5.304), (5.297), with improved Wolfe line-search (5.301) and (5.302) is
called DKþiw (DKþ with improved Wolfe line-search). The improved Wolfe line-search is
implemented with ε ¼ 106 and ηk ¼ 1/(k2), where k is the iteration number.
5.8 Solving Large-Scale Applications 257
Table 5.12 Performances of DKþw and DKþaw for solving five applications from the MINPACK-2 collection
DK+w DK+aw
n #iter #fg cpu #iter #fg cpu
A1 40,000 406 637 7.92 323 647 7.17
A2 40,000 940 1508 20.54 791 1583 32.64
A3 40,000 4001 6260 182.63 987 1976 65.87
A4 40,000 670 1065 84.22 435 871 80.42
A5 40,000 417 654 8.80 289 580 9.54
Total ─ 6434 10124 304.11 2825 5657 195.64
Figure 5.21 presents the performance profiles of DKþiw (DKþ with improved Wolfe line-search)
versus DKþw (DKþ with Wolfe line-search) and DKþaw (DKþ with approximate Wolfe line-
search). Observe that DKþiw is more efficient and more robust than DKþw.
In the following, let us present the performances of DKþw and DKþaw for solving the
applications from the MINPACK-2 collection as in Table 5.12.
Table 5.12 points out that DKþ with the approximate Wolfe line-search (DKþaw) is top
performer versus DKþ with the Wolfe line-search (DKþw).
Nonlinear conjugate gradient algorithms are used in solving large-scale unconstrained optimization
problems. They have the significant advantage of a low storage requirement over most of the
other unconstrained optimization algorithms discussed in this book, only the steepest descent
being an exception. A practical conjugate gradient algorithm uses restart procedures. The most
important theoretical result about restarting is the n-step quadratic convergence, that is,
kxkþn xk ¼ O(kxk xk2). The critical point with these algorithms is the procedure for stepsize
computation. The conjugate gradient algorithms implement the weak Wolfe line-search (5.49) and
(5.50) or the strong Wolfe line-search (5.49) and (5.51). In the advanced conjugate gradient
algorithms, the stepsize is computed by means of the approximate Wolfe line-search (2.67) of
Hager and Zhang, the modified Wolfe line-search (5.49) and (5.236) of Andrei, or the improved
Wolfe line-search (2.72) and (5.50) of Dai and Kou. Tables 5.13, 5.14, and 5.15 show the
performances of CG-DESCENT with Wolfe and with approximate Wolfe line-searches
(CG-DESCENTaw), the performances of DESCON with modified Wolfe line-search and the
258 5 Conjugate Gradient Methods
Table 5.13 Performances of CG-DESCENT and of CG-DESCENTaw for solving five large-scale applications from
the MINPACK-2 collection
CG-DESCENT CG-DESCENTaw
n #iter #f cpu #iter #f cpu
A1 250,000 610 1221 92.42 610 1221 136.47
A2 250,000 1752 3505 382.78 1752 3505 448.94
A3 250,000 2370 4742 878.06 2370 4742 943.39
A4 250,000 925 1851 902.03 925 1851 961.31
A5 250,000 635 1271 145.72 635 1271 196.56
Total ─ 6292 12590 2401.01 6292 12590 2686.67
Table 5.14 Performances of DESCON and of DESCONa for solving five large-scale applications from the
MINPACK-2 collection
DESCON DESCONa
n #iter #fg cpu #iter #fg cpu
A1 250,000 602 950 53.01 591 1209 69.58
A2 250,000 2578 4056 309.55 1495 3021 261.97
A3 250,000 5001 7626 1134.73 2342 4727 607.68
A4 250,000 1644 2577 868.62 727 1489 468.01
A5 250,000 1070 1674 216.98 655 1334 130.31
Total ─ 10895 16883 2582.89 5810 11780 1537.55
Table 5.15 Performances of DKþw and of DKþiw for solving five large-scale applications from the MINPACK-2
collection
DK+w DK+iw
n #iter #fg cpu #iter #fg cpu
A1 250,000 693 1093 107.58 613 1227 145.21
A2 250,000 2299 3650 413.70 1762 3525 457.22
A3 250,000 4001 6257 1048.29 2354 4710 1007.74
A4 250,000 1396 2211 846.27 923 1847 937.49
A5 250,000 931 1455 227.40 622 1245 202.24
Total ─ 9320 14666 2643.24 6274 12554 2749.90
accelerated DESCON with modified Wolfe line-search (DESCONa), and the performances of
DK/CGOPT with Wolfe line-search (DKþw) and DK/CGOPT with improved Wolfe line-search
(DKþiw), respectively, for solving 5 applications from the MINPACK2 collection described in
Appendix D, each of them with 250,000 variables.
Firstly, observe that the conjugate gradient algorithms can solve large-scale unconstrained opti-
mization applications. Besides, from the above tables, we can see that the accelerated DESCON with
modified Wolfe line-search is the fastest. From the practical point of view, both the acceleration and
the modified Wolfe line-search play a crucial role in establishing the performances of DESCON.
Even if the acceleration at each iteration involves one additional evaluation of the gradient of the
minimizing function, the efficiency of the algorithm endowed with the acceleration scheme is
significantly improved.
5.8 Solving Large-Scale Applications 259
(2017a). Using a special approximation of the inverse Hessian of the objective function, which
depends on a positive parameter, a search direction is obtained, satisfying both the sufficient descent
condition and the Dai–Liao conjugacy condition. In the first approach, the parameter in the search
direction is determined by clustering the eigenvalues of the matrix defining it. The second approach
uses the minimization of the condition number of the matrix representing the search direction. The
conclusion of these two approaches is that basically they represent two different ways to pursue
similar ideas based on eigenvalues or on singular values of the iteration matrix, respectively. See also
Andrei (2018b), where a Dai-Liao conjugate gradient algorithm with the clustering of the eigenvalues
is presented. A modification of the Dai-Yuan conjugate computational scheme with sufficient descent
condition is presented in (Andrei, 2009b, 2010c). An accelerated conjugate gradient algorithm with
modified secant condition for unconstrained optimization is developed by Andrei (2009g). In this
algorithm, the modified secant equation of Zhang, Deng, and Chen (1999) is used.
Another class is represented by the three-term conjugate gradient algorithms introduced by Beale
(1972) and developed by Powell (1984), Nazareth (1977, 1986), Dai and Yuan (1999), Narushima,
Yabe, and Ford (2011), and Andrei (2013a, 2013b, 2013d, 2020a). A family of three-term conjugate
gradient methods with sufficient descent property was presented by Al-Baali, Narushima, and Yabe
(2015). Even if these three-term conjugate gradient algorithms are based on different concepts which
include satisfying the descent and conjugacy conditions (Andrei, 2013b), the subspace minimization
(Andrei, 2014), and the minimization of one-parameter quadratic model of the minimizing function
(Andrei, 2015b), they have similar performances. A numerical comparison of conjugate gradient
algorithms for the unconstrained optimization is given in (Andrei, 2007d).
The most important modern packages implementing different variants of the conjugate gradient
algorithms for solving large-scale unconstrained optimization problems are CONMIN (Shanno,
1983), CG-DESCENT (Hager, & Zhang 2005, 2006a), CGOPT (Dai, & Kou, 2013), and DESCON
(Andrei, 2013c).
In Andrei (2011b), some open questions regarding the conjugate gradient algorithms are
disscused: Why is the initial search direction d0 ¼ g0 critical? Can we take advantage of the
problem structure to design more effective nonlinear conjugate gradient algorithms? Which is the
best conjugacy condition? Which is the best hybrid conjugate gradient algorithm? What is the most
convenient restart procedure of the conjugate gradient algorithms? etc.
Quasi-Newton Methods
6
The idea of these methods is not to use the Hessian ∇2f(xk) of the minimizing function in the current
point at every iteration, but instead to use an approximation of it. In this chapter, consider Bk as an
approximation to ∇2f(xk) and Hk an approximation to the inverse Hessian ∇2f(xk)1. Obviously, both
these approximations Bk or Hk may be used, but the use of Bk involves the solving of a linear algebraic
system. The quasi-Newton method requires only the gradient of the minimizing function, gradient
which must be supplied by the user at every iteration. The purpose of this chapter is to present these
methods together with the theoretical aspects concerning their convergence to solution, as well as
their performances for solving large-scale complex optimization problems and applications. In quasi-
Newton methods, the approximations to the Hessian (or to the inverse Hessian) may be achieved
through matrices of rank one or through matrices of rank two. From the multitude of quasi-Newton
methods, this chapter will present only the rank-two updating methods, that is, Davidon-Fletcher-
Powell (DFP) and Broyden-Fletcher-Goldfarb-Shanno (BFGS), and the rank one, that is, Symmetric
Rank 1 (SR1), together with some modifications of them.
Since the quasi-Newton methods use only the gradient of the minimizing function, they are very
attractive for solving large classes of complex, large-scale unconstrained optimization problems and
applications. Moreover, since the second derivatives are not required, sometimes quasi-Newton
methods are more efficient and more robust than the Newton method. It is worth mentioning that
the development of the automatic differentiation techniques gives the user the possibility not to
supply second derivatives in the Newton method. The automatic differentiation is not applicable in
many situations, and it is more difficult to work with second derivatives in it than with the gradient.
This is the reason why quasi-Newton methods represent an important class of methods for the
unconstrained optimization.
where f : ℝn ! ℝ is twice continuously differentiable and bounded below. In the current point xk, let
us consider the following quadratic model of the minimizing function f
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 261
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_6
262 6 Quasi-Newton Methods
1
mk ðdÞ ¼ f ðxk Þ þ ∇f ðxk ÞT d þ dT Bk d, ð6:2Þ
2
where Bk 2 ℝnn is a symmetric and positive definite matrix which, as we said, will be updated at
every iteration. Observe that the minimizer dk of (6.2) can be explicitly written as
dk ¼ B1
k gk , ð6:3Þ
xkþ1 ¼ xk þ αk dk , ð6:4Þ
where αk is the stepsize computed by line-search, for example, the Wolfe line-search:
Therefore,
Bkþ1 αk d k ¼ ∇f ðxkþ1 Þ ∇f ðxk Þ: ð6:8Þ
Let us define
sk ¼ xkþ1 xk ¼ αk dk , yk ¼ ∇f ðxkþ1 Þ ∇f ðxk Þ: ð6:9Þ
Bkþ1 sk ¼ yk , ð6:10Þ
If f is strongly convex, the curvature condition (6.11) will be satisfied for any two points xk and
xkþ1. However, this condition will not always hold for nonconvex functions. In these cases, the
curvature condition (6.11) has to be enforced by imposing restrictions on the line-search procedure
that computes the stepsize αk. In fact, the curvature condition (6.11) is guaranteed to hold if the
stepsize is computed by the weak Wolfe conditions (6.5) and (6.6) or by the strong Wolfe conditions
(6.5) and (6.12)
∇f ðxk þ αk dk ÞT dk σ∇f ðxk ÞT dk : ð6:12Þ
where sk and yk satisfy the curvature condition (6.11) and Bk is symmetric and positive definite.
Obviously, different norms in (6.13) may be used, each of them determining different quasi-Newton
methods. A norm that allows an easy solution of the minimization problem (6.13) is the weighted
P P
Frobenius norm defined as kAkW kW1/2AW1/2kF, where kCkF ¼ ni¼1 nj¼1 c2ij (see Appendix A).
1
Now, selecting W ¼ Gk , where Gk is the average Hessian
ð1
Gk ¼ ∇2 f ðxk þ tαk d k Þdt
0
observe that yk ¼ Gk sk : This choice of the weighting matrix W has an important property that is
non-dimensional, i.e., the solution of (6.13) is not dependent on the units of the problem.
With the selection of the weighting matrix and of the norm, the unique solution of (6.13) is
ðDFP directÞ Bkþ1 ¼ I ρk yk sTk Bk I ρk sk yTk þ ρk yk yTk , ð6:14Þ
where
264 6 Quasi-Newton Methods
1
ρk ¼ : ð6:15Þ
yTk sk
The update (6.14) is called the DFP update, since it was proposed by Davidon (1959, 1980) and
studied and popularized by Fletcher and Powell (1963). After simple algebraic manipulations, from
(6.14) and (6.15), another expression of Bkþ1 is obtained as
Bk sk yTk þ yk sTk Bk sTk Bk sk yk yTk
ðDFP directÞ Bkþ1 ¼ Bk þ 1 þ : ð6:16Þ
yTk sk yTk sk yTk sk
Hk yk yTk H k sk sTk
ðDFP inverseÞ H kþ1 ¼ Hk þ T : ð6:17Þ
yTk H k yk y k sk
Observe that the Hk matrix in (6.17) is modified by two terms, each of them of rank one. Also,
(6.16) is a rank-two modification of Bk.
Even if the DFP updating is efficient and robust for solving unconstrained optimization problems,
it was superseded by the BFGS updating. The BFGS introduced by Broyden (1970), Fletcher (1970),
Goldfarb (1970), and Shanno (1970) follows the same methodology as above, but on the inverse
Hessian Hk. Obviously, the updated Hessian Hkþ1 must be a symmetric and positive definite matrix
which satisfies the secant equation
H kþ1 yk ¼ sk : ð6:18Þ
As above, the updated Hessian Hkþ1 closests to Hk is determined as the unique solution of the
minimizing problem
min kH Hk k
H
subject to ð6:19Þ
H ¼ H , Hyk ¼ sk :
T
Using the same weighted Frobenius norm, where this time the weight matrix W satisfies Wsk ¼ yk,
the unique solution Hkþ1 of the problem (6.19) is
ðBFGS inverseÞ H kþ1 ¼ I ρk sk yTk Hk I ρk yk sTk þ ρk sk sTk , ð6:20Þ
where ρk is defined in (6.15). After some simple algebraic manipulation, from (6.20) and (6.15), we
get
sk yTk H k þ H k yk sTk yTk H k yk sk sTk
ðBFGS inverseÞ H kþ1 ¼ H k þ 1þ T : ð6:21Þ
yTk sk y k sk yTk sk
Bk sk sTk Bk yk yTk
ðBFGS directÞ Bkþ1 ¼ Bk þ T : ð6:22Þ
sTk Bk sk y k sk
Note that the DFP and the BFGS updating formulae are duals of each other in the sense that one
can be obtained from the other one by making the interchanges sk $ yk and Bk $ Hk.
In the current implementations of the BFGS algorithm, the inverse update Hkþ1 is used for the
search direction computation dkþ1 ¼ Hkþ1 ∇ f(xkþ1). This is very appealing because it can be
performed at a cost of O(n2) arithmetic operations.
The implementation of the BFGS algorithm requires the initial matrix H0. This is often taken as the
identity matrix or the identity matrix multiplied by a parameter τ. If τ is too large, then the first step
d0 ¼ τg0 is too long, and many function evaluations may be required for determining a suitable
stepsize α0. Thus, to obtain H1, Nocedal and Wright recommend selecting H0 as
yT0 s0
H0 ¼ I
yT0 y0
before applying (6.17) and (6.21). The BFGS algorithm can be presented as follows.
1. Initialization. Consider an initial point x0 2 ℝn, the inital approximation H0 to the inverse Hessian as well
as the convergence toleance ε > 0 sufficiently small. Set k ¼ 0
2. Test a criterion for stopping the iterations. For example, if k∇f(xk)k ε, then stop, otherwise set k ¼ k þ 1
and go to step 3
3. Compute the descent direction dk ¼ Hk ∇ f(xk)
4. Compute the stepsize αk which satisfies the Wolfe line-search conditions
5. Compute xkþ1 ¼ xk þ αkdk
6. Compute sk ¼ xkþ1 xk and yk ¼ ∇ f(xkþ1) ∇ f(xk)
7. For DFP compute Hkþ1 by (6.17). For BFGS compute Hkþ1 by (6.21)
8. Set k ¼ k þ 1 and go to step 2 ♦
In step 4 of the algorithm, the stepsize is determined by the weak Wolfe conditions (6.5) and (6.6)
(or by the strong Wolfe conditions (6.5) and (6.12)), which should always try the initial stepsize
αk ¼ 1. Numerical experiments showed that, eventually, this stepsize will always be accepted, thus
producing the superlinear convergence of the algorithm.
The following numerical example illustrates the importance of the initial approximation H0 on the
performances of the algorithms DFP and BFGS.
which has the minimum x ¼ [2, 1]T with f(x) ¼ 0. In the minimum point, we have
0 2 0
∇f ðx Þ ¼ , ∇ 2 f ðx Þ ¼ :
0 0 2
266 6 Quasi-Newton Methods
Consider x0 ¼ [1.1, 0]T and H0 ¼ I. Then, the DFP (6.17) and the BFGS (6.21) methods with weak
Wolfe line-search (6.5) and (6.6) implemented in subroutine wolfeLS with cubic interpolation (see
Fig. 2.3) give the following results.
DFP BFGS
x15 ¼ [2 0.999999]T x13 ¼ ½ 2 1 T
f(x15) ¼ 0.1022e 24 f(x13) ¼ 0.7674e 24
0:500732 0:000125 0:500089 0:000135
H 15 ¼ H 13 ¼
0:000125 0:5002158 0:000135 0:500195
Now, from the initial point x0 ¼ [1.1, 0]T and with H0 ¼ ∇2f(x0), then the DFP and the BFGS
methods give the following results.
DFP BFGS
T
x25 ¼ ½ 2 0:999999 x32 ¼ ½ 2 1 T
f(x25) ¼ 0.2317e 23 f(x32) ¼ 0.141342e 14
0:5 0:408111e 6 0:4995756 0:423871e 3
H 25 ¼ H 32 ¼
0:408111e 6 0:5 0:423871e 3 0:4995739
From the initial point x0 ¼ [1.1, 0]T and with H0 ¼ sT0 y0 =yT0 y0 I, then the DFP and the BFGS
methods give the following results.
DFP BFGS
x14 ¼ ½ 2 1 T x14 ¼ ½ 1:999999 0:999999 T
f(x14) ¼ 0.6751e 13 f(x14) ¼ 0.6006455e 13
0:500222 0:113729e 3 0:5002339 0:115678e 3
H 14 ¼ H 14 ¼
0:113729e 3 0:50005778 0:1156781e 3 0:50005478
Proposition 6.1 Let Bk be a symmetric and positive definite matrix, and assume that Bkþ1 is obtained
from Bk using the BFGS update formula. Then, Bkþ1 is positive definite if and only if yTk sk > 0:
Proof If Bk is positive definite, then it can be factored as Bk ¼ Lk LTk , where Lk is nonsingular. (This
is exactly the Cholesky factorization of Bk. ) Now, if this factorization is introduced into the BFGS
formula for the Bkþ1 computation, then
Bkþ1 ¼ Lk W k LTk ,
where
b
sk b
sTk ybk ybTk 1
Wk ¼ I b b
T þ T , sk ¼ Lk sk , yk ¼ Lk yk :
T
b
sk b
sk ybk b sk
6.1 DFP and BFGS Methods 267
Observe that Bkþ1 will be positive definite if and only if Wk is positive definite. To see that Wk is
positive definite, let us test if vTWkv > 0 for all v 6¼ 0. Let θ1 be the angle between v and b
sk , θ2 the
angle between v and ybk , and θ3 the angle between b sk and ybk : Then,
2 2
ðv T b
sk Þ ðvT yb Þ
vT W k v ¼ vT v þ Tk
bsk b
T
sk ybk b
sk
kvk kb2
sk k cos 2 θ1 kvk2 kybk k2 cos 2 θ2
2
¼ kv k2 þ
kbs k k2 kybk kkbs k cos θ3
k
k b
y k cos 2
θ 2
¼ kvk2 1 cos 2 θ1 þ k
kbsk k cos
θ3
kyb k cos 2 θ2
¼ kvk2 sin 2 θ1 þ k :
kbsk k cos θ3
The new update Bkþ1 matrix will be positive definite only if yTk sk > 0: This property can be
guaranteed by performing an appropriate line-search, for example, the Wolfe line-search. Therefore,
the quasi-Newton method based on the BFGS updating formula is often implemented with the (weak)
Wolfe line-search (6.5) and (6.6).
Fig. 6.1 Performance profiles of BFGS versus CONMIN, DESCON, CG-DESCENT, and CG-DESCENTaw
Bk sk sTk Bk yk yTk
Bkþ1 ¼ Bk þ T þ Φk sTk Bk sk vk vTk , ð6:23Þ
sTk Bk sk yk sk
The BFGS and DFP algorithms are members of this family. By setting Φk ¼ 0, the BFGS update is
obtained, while by setting Φ ¼ 1, the DFP is obtained.
Observe that the last term in (6.23) is a rank-one correction, which, by the interlacing eigenvalue
theorem, increases the eigenvalues of the matrix Bkþ1 when Φk is positive. Therefore, Bkþ1 is positive
definite for all Φk 0. On the other hand, when Φk is negative, the last term in (6.23) decreases the
eigenvalues of Bkþ1. Obviously, when Φk is decreasing, Bkþ1 becomes singular and then indefinite.
By simple algebraic manipulations, we obtain that Bkþ1 is singular for Φk ¼ Φck , where
T 1 T
1 y k Bk y k s k B k s k
Φk ¼
c
, and μk ¼ T 2 : ð6:25Þ
1 μk y sk
k
6.1 DFP and BFGS Methods 269
By the Cauchy-Schwarz inequality, we see that μk 1, and therefore, Φck 0: If the initial Hessian
approximation B0 is symmetric and positive definite and if yTk sk > 0 and Φk > Φck for each k, then all
the matrices Bk generated by the Broyden update (6.23) remain symmetric and positive definite.
Moreover, for general nonlinear functions, when the line-search is exact, all the methods in the
Broyden class with Φk Φck generate the same sequence of iterates because, when all the line-
searches are exact, the directions generated by the Broyden class of updates differ only in their
lengths.
Applied with exact line-searches to quadratic functions, the Broyden class of methods has some
remarkable properties, as it is stated in the following theorem.
Theorem 6.1 Suppose that a method in the Broyden class is applied to minimize the strongly convex
quadratic function f ðxÞ ¼ 12 xT Ax þ bT x, where x0 is the initial point and B0 is any symmetric and
positive definite matrix. Assume that αk is the exact stepsize and that Φk Φck for all k, where Φck is
given by (6.25). Then, the following statements are true:
1. The iterates are independent of Φk and converge to the minimum point in at most n iterations.
2. The secant equation is satisfied for all previous search directions, that is, Bksj ¼ yj, j ¼ k 1,
k 2, . . ., 1.
3. If the initial matrix B0 ¼ I, then the iterations are identical to those generated by the conjugate
gradient method. In particular, the search directions are conjugate, that is, sTi Asj ¼ 0, for i 6¼ j.
4. If n iterations are performed, then Bn ¼ A. ♦
Theorem 6.1 can be generalized in the sense that it continues to hold if the Hessian approximations
remain nonsingular, but not necessarily positive definite. More than that, if the initial matrix B0 is not
the identity matrix, then the Broyden class of methods is identical to the preconditioned conjugate
gradient method that uses B0 as preconditioner.
Since BFGS and DFP conserve the positive definiteness of the Hessian approximations when
yTk sk > 0, it follows that the same property will hold for the Broyden family if 0 Φk 1. The
restricted Broyden class is obtained by restricting Φk to the interval [0,1).
The following result shows the convergence of the restricted Broyden class of update formulae
(Byrd, Nocedal, & Yuan, 1987a). The theorem assumes that ∇2f(x) is always positive definite, that is,
the objective function f is strictly convex. It excludes the DFP formula.
Theorem 6.2 Let f : ℝn ! ℝ be a real-valued function. Let x0 be an initial point and {xk} a sequence
where xkþ1 ¼ xk þ αkdk, αk 0 is a scalar, and dk 2 ℝn. Assume that the level set S ¼ {x : f(x) f(x0)}
is bounded, f(x), ∇f(x), and ∇2f(x) are continuous for all x 2 S, ∇2f(x) is positive definite for all x, the
search directions {dk} are computed as solutions of the linear systems Bkdk ¼ ∇ f(xk), where
B0 ¼ I, and the matrices {Bk} are updated using the restricted Broyden class, with 0 Φk < 1, the
stepsizes {αk} satisfy the Wolfe line-search (6.5) and (6.6) with 0 < ρ < σ < 1, and the line-search uses
αk ¼ 1 whenever possible. Then,
lim xk ¼ x ,
k!1
where x is the unique global minimizer of f and the rate of convergence of {xk} is superlinear. ♦
270 6 Quasi-Newton Methods
gTk dk
ε, ð6:26Þ
kgk kkd k k
where ε > 0. This condition bounds the elements of the sequence {dk} of the search directions from
being arbitrarily close to the orthogonality to the gradient. Often, the line-search methods are so that
dk is defined in a way that satisfies the sufficient descent condition (6.26), even though an explicit
value for ε > 0 is not known.
Theorem 6.3 Suppose that {Bk} is a sequence of bounded and positive definite symmetric matrices
whose condition number is also bounded, i.e., the smallest eigenvalue is bounded away from zero. If
dk is defined to be the solution of the system Bkdk ¼ gk, then {dk} is a sequence of sufficient descent
directions.
Proof Let Bk be a symmetric positive definite matrix with eigenvalues 0 < λk1 λk2 ⋯ λkn :
Therefore, from Bkdk ¼ gk, it follows that
gTk dk d T Bk d k kd k k2 kd k kd k λk
¼ k λk1 ¼ λk1 k λk1 k k ¼ 1k > 0:
kgk kkd k k kgk kkd k k kgk kkd k k kgk k λn kd k k λn
The quality of the search direction dk can be determined by studying the angle θk between the
steepest descent direction gk and the search direction dk. Hence, by applying this result to each
matrix in the sequence {Bk}, we get
gTk dk λk 1
cos θk ¼ 1k , ð6:28Þ
kgk kkd k k λ n M
where M is a positive constant. Observe that M is a positive constant and it is well-defined since the
smallest eigenvalue of the matrices Bk in the sequence {Bk} generated by the algorithm is bounded
away from zero. Therefore, the search directions {dk} generated as solutions of Bkdk ¼ gk form a
sequence of sufficient descent directions. ♦
The main consequence of this theorem on how to modify the quasi-Newton system defining the
search direction dk is to ensure that dk is a solution of a system that has the same properties as Bk.
A global convergence result for the BFGS method was given by Powell (1976). Using the trace and
the determinant to measure the effect of the two rank-one corrections on Bk in (6.22), he proved that if
f is convex, then for any starting point x0 and any positive definite starting matrix B0, the BFGS
method gives liminfk!1kgkk ¼ 0. In addition, if the sequence {xk} converges to a solution point at
which the Hessian matrix is positive definite, then the rate of convergence is superlinear. The analysis
of Powell was extended by Byrd, Nocedal, and Yuan (1987a) to the Broyden class of quasi-Newton
methods (see Theorem 6.2).
6.1 DFP and BFGS Methods 271
With the Wolfe line-search, the BFGS approximation is always positive definite, so the line-search
works very well. It behaves “almost” like the Newton method in the limit (the convergence is
superlinear). DFP has the interesting property that, for a quadratic objective, it simultaneously
generates the directions of the conjugate gradient method while constructing the inverse Hessian.
However, DFP is highly sensitive to the inaccuracies in the line-searches.
Consider the BFGS algorithm with the Wolfe line-search for minimizing a twice continuously
differentiable function from an arbitrary initial point x0 and from any initial approximation of the
Hessian B0, that is, a symmetric and positive definite matrix. The following assumptions are supposed
to be satisfied by the minimizing function f:
Assumption A
(i) The minimizing function f is twice continuously differentiable.
(ii) The level set S ¼ {x 2 ℝn : f(x) f(x0)} is convex, and there exist the positive constants m and M
such that
Observe that (ii) implies that the Hessian G(x) is positive definite on S and, therefore, f has a unique
minimum.
Now, since yk ¼ Gk sk , where Gk is the average Hessian, from (6.29), it follows that
yTk sk sTk Gk sk
¼ T m: ð6:30Þ
sTk sk sk sk
1=2
On the other hand, by Assumption A, Gk is positive definite, and defining zk ¼ Gk sk , it follows
that
2
yTk yk sTk Gk sk zTk Gk zk
¼ ¼ T M: ð6:31Þ
yTk sk sTk Gk sk zk zk
For proving the global convergence of the BFGS method, instead of establishing a bound on the
condition number of the Hessian approximations Bk as it was considered for proving the convergence
of the descent direction algorithms (see Chap. 2), Byrd, Nocedal, and Yuan (1987a) introduced two
new tools based on the trace and determinant in order to estimate the size of the largest and the
smallest eigenvalues of the Hessian approximations.
Theorem 6.4 Let B0 be any symmetric and positive definite initial matrix, and consider x0 as the
starting point for which Assumption A is satisfied. Then, the sequence {xk} generated by the BFGS
Algorithm 6.1 is convergent to the minimizer x of f.
Proof Define
yTk sk yTk yk
mk ¼ , M k ¼ : ð6:32Þ
sTk sk yTk sk
mk m, Mk M: ð6:33Þ
k Bk s k k 2 k y k k 2
traceðBkþ1 Þ ¼ traceðBk Þ þ T ð6:34Þ
sTk Bk sk y k sk
and
yTk sk
detðBkþ1 Þ ¼ detðBk Þ T : ð6:35Þ
s k Bk s k
sTk Bk sk s T Bk s k
cos θk ¼ , qk ¼ k T , ð6:36Þ
ks k kk Bk s k k sk sk
Now, a combination of the trace and determinant is introduced by the following function of a
positive definite matrix B:
φðBÞ ¼ traceðBÞ ln ðdetðBÞÞ, ð6:38Þ
where ln(.) is the natural logarithm. Fletcher (1991) observed that both the BFGS and the DFP
formulae can be derived by a variational argument using function φ. This is an elegant and efficient
tool for analyzing the global behavior of quasi-Newton methods. Observe that function φ works
simultaneously with trace and determinant, thus simplifying the analysis of the quasi-Newton
methods. In fact, this function is a measure of the matrices involving all the eigenvalues of B, not
only the smallest and the largest, as it is traditionally used in the analysis of the quasi-Newton
methods based on the condition number of matrices (Andrei, 2015c, 2016, 2017a). Observe that this
function is strictly convex on the set of symmetric and positive definite matrices and is minimized by
B ¼ I. Besides, it becomes unbounded as B becomes singular or infinite, and therefore, it works as a
barrier function that keeps B positive definite.
Since the function h(t) ¼ 1 t þ ln (t) is nonpositive for all t > 0, it follows that the term inside the
brackets is nonpositive, and thus, from (6.33) and (6.39), it follows that
X
k
0 < φðBkþ1 Þ φðB0 Þ þ cðk þ 1Þ þ ln cos 2 θj , ð6:40Þ
j¼0
6.1 DFP and BFGS Methods 273
where without the loss of the generality, we can assume that the constant c ¼ M ln (m) 1 is
positive.
Observe that cosθk defined by (6.36) is the angle between the steepest descent direction and the
search direction, which is crucial in the global convergence of the descent direction algorithms. We
know that the sequence {kgkk} generated by the line-search algorithm is bounded away from zero
only if cosθj ! 0 (see Corollary 2.1).
Now, let us proceed by contradiction, and assume that cosθj ! 0. Then, there exists k1 > 0 such
that for all j > k1 we have ln(cos2θj) < 2c, where c is the constant defined above. Therefore, from
(6.40), it follows that for all k > k1 we have
X
k1 X
k
0 < φð B0 Þ þ c ð k þ 1 Þ þ ln cos 2 θj þ ð2cÞ
j¼0 j¼k1 þ1
X
k1
¼ φð B0 Þ þ ln cos 2 θj þ 2ck1 þ c ck:
j¼0
However, the right-hand side is negative for large k, thus giving a contradiction. Therefore, there
exists a subsequence of indices {jk}k¼1, 2, . . . such that cos θjk δ > 0: By the Zoutendijk condition, it
follows that lim inf k∇f(xk)k ! 0. Since the problem is strongly convex, this limit is sufficient to
prove that xk ! x. ♦
Theorem 6.4 has been generalized to the entire restricted Broyden class, except for the DFP
method. That is, Theorem 6.4 holds for all Φk 2 [0, 1).
The BFGS method has many interesting properties. For example, the BFGS updating formula has
effective self-correcting properties. If the matrix Bk incorrectly estimates the curvature of the
minimizing function, and if this bad estimate slows down the iteration, then the Hessian approxima-
tion will tend to correct itself within a few steps. The DFP method is less effective in correcting bad
Hessian approximations, and it is believed that this is the reason for its poorer practical performances.
The self-correcting property of BFGS holds only when the Wolfe line-search is used for the stepsize
determination.
The BFGS updating formula is known to have the so-called bounded deterioration property
(Broyden, Dennis, & Moré, 1973), namely, the approximate Hessians do not drift too far from the
exact Hessian if the initial data are good. An updating formula for the Hessian approximation Bk
satisfies the bounded deterioration property if there exists a constant c > 0 so that for all xk and Bk the
new xkþ1 and Bkþ1 satisfy
Bkþ1 ∇2 f ðx Þ Bk ∇2 f ðx Þ ð1 þ σÞ þ cσ,
where σ ¼ max {kxk xk, kxkþ1 xk}. If a quasi-Newton method satisfies the bounded
deterioration property and there exist the positive constants ε and δ so that kx0 xk ε and
kB0 ∇2f(x)k δ, then the sequence {xk} generated by the algorithm is well-defined and converges
q-linearly to x. In order to have q-superlinearly convergence of the algorithm, it is necessary to have
the consistency of it. A quasi-Newton method is consistent if {xk} converges to x, then {Bk}
converges to ∇2f(x). The consistency condition is sufficient but not necessary.
Assuming that the initial point x0 is sufficiently close to the solution x and that the initial Hessian
approximation is sufficiently close to ∇2f(x), then using the bounded deterioration property we can
prove that the iteration cannot stay away from the solution.
274 6 Quasi-Newton Methods
Therefore, a superlinear convergence rate can be attained even if the sequence of the quasi-Newton
matrices Bk does not converge to ∇2f(x); suffice it to say that the Bk become increasingly accurate
approximations to ∇2f(x) along the search directions dk. Specifically, we have
Theorem 6.5 Suppose that f : ℝn ! ℝ is twice continuously differentiable, and consider the iteration
xkþ1 ¼ xk þ αkdk, where dk is a descent direction and αk satisfies the Wolfe line-search conditions
(6.5) and (6.6) with ρ 1/2. If the sequence {xk} converges to a point x such that ∇f(x) ¼ 0 and
∇2f(x) is positive definite, and if the search direction satisfies
∇f ðxk Þ ∇2 f ðxk Þd k
lim ¼ 0,
k!1 kd k k
then the stepsize αk ¼ 1 is admissible for all k greater than a certain index k0; if αk ¼ 1 for all k > k0,
then {xk} converges to x superlinearly.
The following theorem emphasizes that the Dennis-Moré condition (6.41) is both necessary and
sufficient for the superlinear convergence of the quasi-Newton methods.
Theorem 6.6 Suppose that f : ℝn ! ℝ is twice continuously differentiable. Consider the iteration
xkþ1 ¼ xk þ dk, that is, the stepsize αk is uniformly one and dk ¼ B1
k ∇f ðxk Þ. Let us assume that the
sequence {xk} converges to a point x such that ∇f(x) ¼ 0 and ∇2f(x) is positive definite. Then, the
sequence {xk} converges superlinearly if and only if the Dennis-More´ condition (6.41) holds.
Proof Let dNk ¼ ∇2 f ðxk Þ1 ∇f ðxk Þ be the Newton step. Let us show that (6.41) is equivalent to
Assuming that (6.41) holds and since k∇2f(xk)1k is bounded above for xk sufficiently close to x
and since ∇2f(x) is positive definite, then it follows that
dk dNk ¼ ∇2 f ðxk Þ1 ∇2 f ðxk Þdk þ ∇f ðxk Þ
¼ ∇2 f ðxk Þ1 ∇2 f ðxk Þ Bk dk
2
¼ O ∇ f ðxk Þ Bk ¼ oðkdk kÞ:
Therefore, kdkk ¼ O(kxk xk), that is, kxk þ dk xk o(kxk xk), proving the superlinear
convergence of {xk}. ♦
6.1 DFP and BFGS Methods 275
An extension of this analysis shows that the rate of convergence of the BFGS algorithm is linear.
More exactly, we can show that the sequence {kxk xk} converges to zero rapidly enough, so that
X
1
kxk x k < 1: ð6:43Þ
k¼1
If the minimizing function is twice continuously differentiable and the iterates generated by the
BFGS algorithm converge to a minimizer x at which the Hessian ∇2f(x) is Lipschitz continuous and
(6.43) holds, then {xk} converges to x at a superlinear rate. More exactly, the local superlinear
convergence of the BFGS algorithm can be established by the following arguments, presented for
completeness.
Consider that the Hessian ∇2f(x) is Lipschitz continuous, i.e., k∇2f(x) ∇2f(x)k Lkx xk for
all x near enough x and L, a positive constant. Let us introduce the following quantities:
e
sk ¼ G1=2 ek ¼ G1=2
sk , y yk , Bek ¼ G1=2
Bk G1=2
sTk Bek e
e sk sT Bek e
e sk e k ¼ kyek k , m
2
yeTk e
sk
cos e
θk ¼ , qek ¼ k 2 , M e ¼ T :
ke e
sk k B k esk ke
sk k yek e
T
sk
k
e
sk esk
Now, pre- and post-multiplying (6.22) by ∇2F(x)1/2 and grouping the terms, we obtain
kyek e sk k
cεk , ð6:45Þ
kesk k
for some positive constant c: This inequality has a crucial role in the local superlinear convergence of
the BFGS method.
Theorem 6.7 Suppose that f is twice continuously differentiable and the sequence {xk} generated by
the BFGS algorithm converges to the minimum point x at which the Hessian is Lipschitz continuous.
Also suppose that (6.43) holds. Then, the sequence {xk} converges to x at a superlinear rate.
276 6 Quasi-Newton Methods
Proof From (6.45) and from the triangle inequality, it follows that kyek k ke
sk k cεk ke
sk k,
sk k kyek k cεk ke
ke sk k, so that
sk k kyek k ð1 þ cεk Þke
ð1 cεk Þke sk k: ð6:46Þ
ð1 cεk Þ2 ke
sk k2 2e sk þ ke
yTk e sk k2 kyek k2 2e sk þ ke
yTk e sk k2 c2 ε2k ke
s k k2 ,
and therefore,
yTk e
2e sk k2 ¼ 2ð1 cεk Þke
sk 1 2cεk þ c2 ε2k þ 1 c2 ε2k ke s k k2 :
Hence,
yeTk e
sk
ek ¼
m 1 cεk : ð6:47Þ
e
sTk e
sk
e k ¼ kyek k 1 þ cεk :
2
M ð6:48Þ
yeTk e
sk 1 cεk
Since xk ! x, it follows that εk ! 0. By (6.48), there exists a positive constant c > c such that the
following inequalities hold for all sufficiently large k:
ek 1 þ 2c
M ε 1 þ cεk : ð6:49Þ
1 cεk k
This relation and (6.47) imply that for k large enough, we have
ek Þ ln ð1 cεk Þ 2cεk > 2cεk :
ln ðm ð6:50Þ
" #!
X
1
qej qej
X1
1
ln 1 þ ln φ Be0 þ 3c εj < þ1
j¼0 cos 2e
θj cos 2eθj cos 2eθj j¼0
Since the term in the square brackets is nonpositive and since ln 1= cos 2e
θj 0 for all j, it
follows that
!
1 qej qej
lim ln ¼ 0, lim 1 þ ln ¼ 0,
j!1 cos e
2 θj j!1 cos e2 θj cos 2eθj
lim cos e
θj ¼ 1, lim qej ¼ 1: ð6:52Þ
j!1 j!1
kðBk G Þsk k
lim ¼ 0:
k!1 ks k k
Theorem 6.5 implies that the unit stepsize αk ¼ 1 will satisfy the Wolfe line-search near the
solution, and therefore, the rate of convergence is superlinear. ♦
The corresponding search direction is dkþ1 ¼ Hkþ1gkþ1, where Hkþ1 is given by (6.53), i.e.,
T T
y g sk þ sT g y yT y sk gkþ1 sk
dkþ1 ¼ gkþ1 þ k kþ1 T k kþ1 k 1 þ kT k : ð6:54Þ
y k sk y k sk yTk sk
Observe that the numerical computation of dkþ1 from (6.54) involves only four scalar products:
yTk sk , yTk yk , yTk gkþ1 , and sTkþ1 gkþ1 : Therefore, it is very suitable to solve large-scale problems. It is
worth seeing that the search direction corresponding to the memoryless BFGS updating has three
terms. Besides, it is easy to prove that this search direction satisfies the Dai-Liao conjugacy condition,
i.e., yTk dkþ1 ¼ sTk gkþ1 : For the exact line-search, that is, when sTk gkþ1 ¼ 0, the memoryless BFGS
search direction is exactly the search direction of Hestenes and Stiefel. Therefore, there is a close
connection between the quasi-Newton and the conjugate gradient methods. Shanno (1978a, 1978b)
278 6 Quasi-Newton Methods
was the first who observed that the conjugate gradient methods are precisely the quasi-Newton
methods where the approximation to the inverse to the Hessian is restarted as the identity matrix at
every iteration.
In the following, some modifications of the BFGS updating method, both subject to its updating
formula and to the line-search conditions, are going to be presented. Intensive numerical experiments
on minimizing functions with different dimensions and complexities showed that the BFGS method
may require a large number of iterations or function and gradient evaluations on certain problems
(Gill, & Leonard, 2003). The sources of the inefficiency of the BFGS method may be caused by a poor
initial approximation to the Hessian or, more importantly, by the ill-conditioning of the Hessian
approximations along the iterations. To improve the efficiency and the robustness of the BFGS
method and to overcome the difficulties, some modified versions of it were given. All these modified
BFGS methods can be classified into three large classes: the scaling of the BFGS update matrix, the
BFGS update with modified secant equation, and the modified BFGS method using different line-
search conditions for the stepsize computation. The scaling of the BFGS update has two
developments: sizing, i.e., multiplying the approximate Hessian matrix by an appropriate scalar
before it is updated in the BFGS method (Contreras and Tapia (1993), Oren and Luenberger
(1974), Oren and Spedicato (1976), Shanno and Phua (1978), Yabe, Martı́nez, and Tapia (2004)),
and the proper scaling of the terms on the right-hand side of the BFGS updating formula with positive
factors (Biggs (1971, 1973), Oren (1972), Liao (1997), Nocedal and Yuan (1993), Andrei (2018a,
2018c, 2018d, 2018f)). The purpose of the BFGS update with modified secant equation is to
approximate the curvature of the objective function along the search direction more accurately than
the standard secant equation does (Yuan (1991), Yuan and Byrd (1995), Al-Baali (1998), Zhang,
Deng, and Chen (1999), Zhang, and Xu (2001), Wei, Yu, Yuan, and Lian (2004), Zhu, and Wen
(2006), Yabe, Ogasawara, and Yoshino (2007), Al-Baali, and Grandinetti (2009), Yuan, and Wei
(2010), Wu, and Liang (2014), Arzam, Babaie-Kafaki, and Ghanbari (2017)). The BFGS methods
with new line-search conditions for the stepsize computation try to ensure the global convergence by
modifying the Wolfe line-search conditions (Wan, Huang, and Zheng (2012), Wan, Teo, Shen, and
Hu (2014), Yuan, Wei, and Lu (2017), Yuan, Sheng, Wang, Hu, and Li (2018), Dehmiry, 2019).
k Bk s k k 2 k y k k 2
tr ðBkþ1 Þ ¼ tr ðBk Þ þ T :
sTk Bk sk y k sk
yTk sk
detðBkþ1 Þ ¼ detðBk Þ :
sTk Bk sk
As it is known, the efficiency of the BFGS method is dependent on the structure of the eigenvalues
of the approximation to the Hessian matrix (Nocedal, 1992). Powell (1987) and Byrd, Liu, and
Nocedal (1992) emphasized that the BFGS method actually suffers more from the large eigenvalues
than from the small ones. Observe that the second term on the right-hand side of tr(Bkþ1) is negative.
Therefore, it produces a shift of the eigenvalues of Bkþ1 to the left. Thus, the BFGS method is able to
correct large eigenvalues. On the other hand, the third term on the right-hand side of tr(Bkþ1) being
positive produces a shift of the eigenvalues of Bkþ1 to the right. If this term is large, Bkþ1 may have
large eigenvalues, too. Therefore, a correction of the eigenvalues of Bkþ1 can be achieved by scaling
the corresponding terms in (6.22), and this is the main motivation for which the scaled BFGS methods
is used. There must be a balance between these eigenvalue shifts; otherwise, the Hessian approxima-
tion could either approach singularity or become arbitrarily large, thus ruining the convergence of the
method. The scaling procedures of the BFGS update (6.22) with one or two parameters know the
following developments.
1. One parameter scaling the third term on the right-hand side of the BFGS update. In this case, the
general scaling BFGS updating formula is
Bk sk sTk Bk yk yTk
Bkþ1 ¼ Bk þ γ k , ð6:55Þ
sTk Bk sk yTk sk
where γ k is a positive parameter. For the selection of the scaling factor γ k in (6.55), the following
procedures have been considered in literature.
1.1 Scaling BFGS with Hermite interpolation conditions (Biggs, 1971, 1973). If the objective
function is cubic along the line segment connecting xk1 and xk if the Hermite interpolation is
used on the same line between xk1 and xk, Biggs (1971) proposed the following value for the
scaling factor γ k:
6
γk ¼ f ðxk Þ f ðxkþ1 Þ þ sTk gkþ1 2: ð6:56Þ
yTk sk
For one-dimensional problems, Wang and Yuan (1992) showed that the scaling BFGS (6.55)
with γ k given by (6.56) and without line-search is r-linearly convergent.
1.2 Scaling BFGS with a simple interpolation condition (Yuan, 1991). By using a simple interpola-
tion condition on the quadratic approximation of the minimizing function f, the value for the
scaling parameter in (6.55) suggested by Yuan (1991) is
2
γk ¼ f ðxk Þ f ðxkþ1 Þ þ sTk gkþ1 : ð6:57Þ
yTk sk
Powell (1986a) showed that the scaling BFGS update (6.55) with γ k given by (6.57) is globally
convergent for convex functions with inexact line-search. However, for general nonlinear
functions, the inexact line-search does not involve the positivity of γ k. In these cases, Yuan
280 6 Quasi-Newton Methods
restricted γ k in the interval [0.01, 100] and proved the global convergence of this variant of the
scaling BFGS method.
1.3 Spectral scaling BFGS (Cheng, & Li, 2010). In this update, the scaling parameter γ k in (6.54) is
computed as
yTk sk
γk ¼ , ð6:58Þ
ky k k2
which is obtained as solution of the problem: minksk γ kykk2.Observe that γ k given by (6.58) is
exactly one of the spectral stepsizes introduced by Barzilai and Borwein (1988). Therefore, the
scaling BFGS method (6.55) with γ k given by (6.58) is viewed as the spectral scaling BFGS
method. It is proved that this spectral scaling BFGS method with the Wolfe line-search is
globally convergent and r-linearly convergent for convex optimization problems. Cheng and Li
(2010) presented the computational evidence that their spectral scaling BFGS algorithm is the top
performer versus the standard BFGS and also versus the scaling BFGS algorithms by Al-Baali
(1998), Yuan (1991), and Zhang and Xu (2001).
1.4 Scaling BFGS with diagonal preconditioning and conjugacy condition (Andrei, 2018a). Andrei
(2018a) introduced another scaling BFGS update given by (6.54), in which the scaling parameter
γ k is computed in an adaptive manner as
( )
yTk sk
γ k ¼ min ,1 , ð6:59Þ
ky k k2 þ β k
where βk > 0 for all k ¼ 0, 1, . . . . Since under the Wolfe line-search conditions (6.5) and (6.6)
yTk sk > 0 for all k ¼ 0, 1, . . ., it follows that γ k given by (6.59) is bounded away from zero, i.e.,
0 < γ k 1. If γ k is selected as in (6.59), where βk > 0 for all k ¼ 0, 1, . . ., then the large eigenvalues
of Bkþ1 given by (6.55) are shifted to the left (Andrei, 2018a). Intensive numerical experiments
showed that this scaling BFGS algorithm with βk ¼ sTk gkþ1 is one of the best, being more
efficient and more robust versus the standard BFGS algorithm as well as versus some other
scaling BFGS algorithms, including the versions of Biggs (1971, 1973), Yuan (1991), and Cheng
and Li (2010).
Andrei (2018a) gives the following theoretical justification for selecting the parameter γ k as in
(6.59) with βk ¼ sTk gkþ1 : To have a good algorithm, we need γ kI to be a diagonal preconditioner
of ∇2f(xkþ1) that reduces the condition number to the inverse of ∇2f(xkþ1). Such matrix γ kI should
be a rough approximation to the inverse of ∇2f(xkþ1). Therefore, γ k can be computed to minimize
ksk γ kykk2. On the other hand, for nonlinear functions, as known, the classical conjugacy
condition used by Hestenes and Stiefel (1952) for quadratic functions which incorporate the
second-order information is dTkþ1 yk ¼ sTk gkþ1 : Therefore, in this algorithm, γ kI is selected to be
a diagonal preconditioner of ∇2f(xkþ1) and also to minimize the conjugacy condition, i.e., γ k is
selected to minimize a combination of these two conditions:
n o
min ksk γ k yk k2 þ γ 2k sTk gkþ1 :
2. One parameter scaling the first two terms of the BFGS update ((Oren, & Luenberger, 1974) and
(Nocedal, & Yuan 1993)). This scaling BFGS update was introduced by Oren and Luenberger
6.2 Modifications of the BFGS Method 281
(1974) in their study on self-scaling variable metric algorithms for the unconstrained optimization
and was defined as
Bk sk sTk Bk y yT
Bkþ1 ¼ δk Bk T þ kT k , ð6:60Þ
s k Bk s k y k sk
yTk sk
δk ¼ T
ð6:61Þ
sk Bk sk
as being one of the best factors, since it simplifies the analysis of the eigenvalues structure of the
inverse Hessian approximation. Furthermore, Nocedal and Yuan (1993) presented a deep analysis
of this scaling quasi-Newton method and showed that even if the corresponding algorithm with
inexact line-search is superlinear convergent on general functions, it is computationally expensive
as regards the stepsize computation.
3. Two parameters scaling the terms on the right-hand side of the BFGS update ((Liao, 1997) and
(Andrei, 2018c, 2018d, 2018f)). In these methods, the scaling parameters of the terms on the right-
hand side of the BFGS update are selected to modify the structure of the eigenvalues of the
iteration matrix Bkþ1, mainly to cluster them and to shift the large ones to the left. The following
two approaches are known.
3.1 Scaling the first two terms on the right-hand side of the BFGS update with a positive
parameter and the third one with another positive parameter (Andrei, 2018c). Motivated by
the idea of changing the structure of the eigenvalues of the BFGS approximation to the
Hessian matrix, Andrei (2018c) proposed a double parameter scaling BFGS method in
which the updating of the approximation Hessian matrix Bkþ1 is computed as
Bk sk sT Bk y yT
Bkþ1 ¼ δk Bk T k þ γ k kT k , ð6:62Þ
sk B k sk yk sk
where δk and γ k are positive parameters. In this scaling BFGS method, the parameter δk is
selected to cluster the eigenvalues of Bkþ1. On the other hand, γ k is determined to reduce the
large eigenvalues of Bkþ1, i.e., to shift them to the left, thus obtaining a better distribution of
the eigenvalues:
( )
yTk sk
γ k ¼ min , 1 ð6:63Þ
ky k2 þ s T g
k k kþ1
and
2
n γ k kyyTkskk
δk ¼ k
2 : ð6:64Þ
n ksBTkBskkskk
k
Theorem 6.8 If the stepsize αk is determined by the Wolfe line-search (6.5) and (6.6), Bk is positive
definite, and γ k > 0, then Bkþ1 given by (6.62) is also positive definite. ♦
282 6 Quasi-Newton Methods
For general nonlinear functions, this scaling BFGS algorithm with inexact line-search is globally
convergent under the very reasonable condition that the scaling parameters are bounded. Intensive
numerical experiments using over 80 unconstrained optimization test problems of different structures
and complexities showed that this double parameter scaling BFGS update is more efficient than the
standard BFGS algorithm and also than some other well-known scaling BFGS algorithms, including
those by Biggs (1971, 1973), Cheng and Li (2010), Liao (1997), Nocedal and Yuan (1993), and
Yuan (1991).
3.2 Scaling the first two terms on the right-hand side of the BFGS update with a positive parameter
and the third one with another positive parameter using the measure function of Byrd and
Nocedal (Andrei, 2018d, 2018f). In this method, the BFGS update is scaled as in (6.62), where
parameters δk and γ k are computed to minimize the measure function φ(.) of Byrd and Nocedal
(1989). Minimizing the function φ(Bkþ1) ¼ tr(Bkþ1) ln (det(Bkþ1)) with respect to the
parameters δk and γ k, where Bkþ1 is given in (6.62), the following values are obtained:
n1
δk ¼ 2 : ð6:65Þ
trðBk Þ ksBTkBskkskk
k
yTk sk
γk ¼ : ð6:66Þ
ky k k2
Theorem 6.9 If the stepsize αk is determined by the Wolfe line-search (6.5) and (6.6), then the
scaling parameters δk and γ k given by (6.65) and (6.66), respectively, are the unique global solution
of the problem min δk >0,γk >0 φðBkþ1 Þ: ♦
Intensive numerical experiments in Andrei (2018d) proved that this scaling procedure of the BFGS
with two parameters is more efficient and more robust than the other scaling procedures, including
those of Biggs (1971, 1973), Cheng and Li (2010), Yuan (1991), Nocedal and Yuan (1993), Liao
(1997), and Andrei (2018c).
3.3 Scaling the last terms on the right-hand side of the BFGS update with two positive parameters
(Liao, 1997). Liao (1997) introduced the two parameter scaling BFGS method as
Bk sk sTk Bk yk yTk
Bkþ1 ¼ Bk δk þ γ k ð6:67Þ
sTk Bk sk yTk sk
and proved that this method corrects the large eigenvalues better than the standard BFGS method
given by (6.22). In other words, it was proved that this scaling BFGS method has a strong self-
correcting property with respect to the determinant (Liao, 1997). In Liao’s method, the
parameters scaling the terms in the BFGS update are computed in an adaptive way subject to
the values of a positive parameter as
6.2 Modifications of the BFGS Method 283
8
< sTk Bk sk yTk sk sTk Bk sk
, , if τk ,
ðδ k , γ k Þ ¼ sT Bk sk þ yTk sk sTk Bk sk þ yTk sk sTk Bk sk þ yTk sk ð6:68Þ
: k
ðτk , 1Þ, otherwise,
where 0 < τk < 1. (Liao proposed τk ¼ exp (1/k2). ) Liao proved that the scaling BFGS method
given by (6.67) and (6.68) with the Wolfe line-search generates iterations which converge
superlinearly to the optimal solution. Limited numerical experiments with Liao’s scaling
BFGS method proved that this is competitive with the standard BFGS method, and it corrects
large eigenvalues better than the standard BFGS method does. However, subject to other scaling
BFGS updates, the scaling BFGS update by Liao is less efficient and less robust (Andrei, 2018d).
Numerical Study: Scaling the Terms on the Right-Hand Side of the BFGS Update
In the following, let us consider the set of 80 unconstrained optimization test problems from the UOP
collection (Andrei, 2020a) each of them with n ¼ 100 variables. The following algorithms were
compared: BFGS defined by (6.22), BFGSB defined by (6.55) with (6.56), BFGSY defined by (6.55)
with (6.57), BFGSC defined by (6.55) with (6.58), BFGSD defined by (6.55) with (6.59), BFGSE
defined by (6.62) with (6.63) and (6.64), and BFGSFI defined by (6.62) with (6.65) and (6.66). For the
BFGSB and BFGSY, the scaling parameter γ k given by (6.56) and (6.57), respectively, is restricted in
the interval [0.01, 100]. Besides, at the very first iteration of these methods, the scaling is not applied.
The stepsize is computed by the Wolfe line-search conditions (6.5) and (6.6), where σ ¼ 0.8 and
ρ ¼ 0.0001. The iterations are stopped if the inequality kgkk1 105 is satisfied, where k.k1 is the
maximum absolute component of a vector, or if the number of iterations exceeds 1000. Figure 6.2
presents the Dolan and Moré performance profiles of these algorithms for this set of unconstrained
optimization test problems based on the CPU time metric.
From Fig. 6.2, we can see that BFGSFI is more efficient versus BFGS, BFGSB, and BFGSY and
more robust versus the same algorithms. Scaling is an important ingredient in increasing the
performances of BFGS.
Fig. 6.2 Performance profiles of BFGSFI versus BFGS, BFGSB, BFGSC, BFGSD, BFGSE, and BFGSY. CPU time
metric
1
sTk ∇2 f ðxkþ1 Þsk ¼ sTk yk þ 2 f k f kþ1 þ sTk gk þ gkþ1 þ sTk ðT kþ1 sk Þsk þ O ksk k4 :
3
Therefore, neglecting the terms which include the tensor, the following approximation is obtained:
where
6.2 Modifications of the BFGS Method 285
ϑk ¼ 2 f k f kþ1 þ sTk gk þ gkþ1 : ð6:71Þ
where uk 2 ℝn is a vector satisfying sTk uk ¼ 6 0 (see: Yuan (1991), Yuan and Byrd (1995), Babaie-
Kafaki (2011)).
Another modified secant equation was suggested by Zhang, Deng, and Chen (1999). From the
Taylor series, we get
1
sTk gk ¼ sTk gkþ1 sTk ∇2 f ðxkþ1 Þsk þ sTk ðT kþ1 sk Þsk þ O ksk k4 : ð6:73Þ
2
Now, combining (6.69) and (6.73) and cancelling the terms including the tensor, it follows that
sTk ∇2 f ðxkþ1 Þsk ¼ sTk yk þ 3ϑk þ O ksk k4 ,
where ϑk is defined in (6.71). Therefore, the following modified secant equation can be obtained:
3ϑk
Bkþ1 sk ¼ wk , wk ¼ yk þ uk , ð6:74Þ
sTk uk
Theorem 6.10 If the function f is sufficiently smooth and kskk is small enough, then the following
estimating relations hold:
1
sTk ∇2 f ðxkþ1 Þsk sTk yk ¼ sTk ðT kþ1 sk Þsk þ O ksk k3 ,
2
1
sTk ∇ f ðxkþ1 Þsk sTk zk ¼ sTk ðT kþ1 sk Þsk þ O ksk k4 ,
2
3
sk ∇ f ðxkþ1 Þsk sk wk ¼ O ksk k4 ,
T 2 T
In this context, we can see that for quadratic objective functions, ϑk ¼ 0, and therefore, the
modified secant equations (6.72) and (6.74) reduce to the standard secant equation. As regards the
vector uk, it can usually be selected as uk ¼ sk or uk ¼ yk provided that the line-search satisfies the
Wolfe conditions (6.5) and (6.6). To get positive definite quasi-Newton approximations for the
Hessian based on the modified secant equations (6.72) or (6.74), we should have sTk zk > 0 and
sTk wk > 0, respectively. To overcome this difficulty, a simple procedure is to replace ϑk in (6.72)
and (6.74) by max{0, ϑk}.
For nonconvex objective functions, Li and Fukushima (2001a, 2001b) proposed a new modified
BFGS (called cautious BFGS), for which the local and the global superlinear convergence were
proved. The method is based on the following modified secant equation:
286 6 Quasi-Newton Methods
for a positive constant C. In the cautious BFGS method, the update of Bk is defined as
8 T T T
< B Bk sk sk Bk þ yk yk , if yk sk εkg kγ ,
k
Bkþ1 ¼ T
s k Bk s k T
y k sk ksk k2
k
ð6:76Þ
:
Bk , otherwise,
where ε and γ are positive constants. For the modified secant equation (6.75), yTk sk > 0 independent of
the line-search conditions and of the objective function convexity. This ensures the heredity of the
positive definiteness of the corresponding BFGS update (Guo, Liu, & Wang, 2008).
Recently, Babaie-Kafaki (2012, 2013, 2014) and Babaie-Kafaki and Ghanbari (2014) proposed
scaled memoryless BFGS methods with modified secant equations (6.72), (6.74), or (6.75) which
satisfy the sufficient descent property dTk gk ckgk k2 , where c is a positive constant. A new
approach using the polynomial interpolation of the data from the most recent m steps in modified
secant equations was developed by Ford and Moghrabi (1994, 1996a, 1996b) and by Ford,
Narushima, and Yabe (2008).
Another interesting modification of the strong Wolfe line-search (6.12) was given by Wan, Teo,
Shen, and Hu (2014). In the Wolfe line-search, the choice of σ can affect the cost of finding a stepsize
satisfying (6.5) and (6.6) or (6.5) and (6.12). For a larger value of σ, the cost of searching a stepsize
decreases. Therefore, it seems reasonable to select a sufficiently large value for σ. On the other hand,
for a large value for σ, the obtained stepsize might be far away from the optimal one, i.e., the one
obtained by the exact line-search. With the value of sTk yk far away from sTk gk , it is clear that
g(xk þ αkdk)Tdk is far away from zero. In other words, a large value for σ may give rise to a stepsize
which is not a good approximation to the one obtained by the exact line-search. To overcome this
difficulty, Wan, Teo, Shen, and Hu (2014) replaced the strong Wolfe condition (6.12) by
6.3 Quasi-Newton Methods with Diagonal Updating of the Hessian 287
1 þ σU sTk gk sTk yk 1 σL sTk gk , ð6:78Þ
where σL and σU are two sufficiently small constants satisfying 0 σL σ < 1 and 0 σU σ (see
also Al-Baali and Grandinetti, (2009)). As above, it is proved that if kBkskk b1kskk and
b2 ksk k2 sTk Bk sk , where Bk is the BFGS update, then lim inf kgk k ¼ 0, where b1 and b2 are positive
k!1
constants. Numerical experiments reported by the authors show that this variant of the BFGS with
modified line-search (6.78) is competitive versus the standard BFGS or the cautious BFGS (6.76).
Dai (2003) presented a numerical example showing that the standard BFGS method fails in the
case of nonconvex functions under the Wolfe line-search. Therefore, the question is “are there any
other inexact line-searches that possess the global convergence of the BFGS method for general
functions?” A positive answer was given by Yuan, Wei, and Lu, (2017) and Yuan, Sheng, Wang, Hu,
and Li (2018). They presented the following modified Wolfe line-search:
n o
α
f ðxk þ αk dk Þ f k þ ραk gTk dk þ αk min ρ1 gTk dk , ρ k kdk k2 , ð6:79Þ
2
n o
gðxk þ αk dk ÞT dk σgTk dk þ min ρ1 gTk d k , ραk kdk k2 , ð6:80Þ
where ρ 2 (0, 1/2), ρ1 2 (ρ/2, ρ), and σ 2 (ρ, 1). Under classical assumptions, if kBkskk b1kskk and
b2 ksk k2 sTk Bk sk , where Bk is the BFGS update (6.22), then, for the corresponding algorithm with
modified line-search given by (6.79) and (6.80), liminfk!1kgkk ¼ 0, where b1 and b2 are positive
constants.
An improvement of the global convergence of the BFGS method with Yuan-Wei-Lu line-search
(6.79) and (6.80) was presented by Dehmiry (2019)
α2k
f ðxk þ αk dk Þ f k þ ραk gTk d k ρ kd k2 , ð6:81Þ
2βk k
ραk
gðxk þ αk dk ÞT dk σgTk dk kd k k2 , ð6:82Þ
βk
βk ð1 σÞ gTk d k
αk < , ð6:83Þ
ε 0 β k þ ρ kd k k2
where ρ 2 (0, 1/2), σ 2 (ρ, 1), ε0 is a small parameter (ε0 ¼ 106) and {βk} is an arbitrary increasing
sequence of positive numbers so that limk!1βk/k ¼ þ 1 . Like in Byrd and Nocedal (1989),
Dhemiry (2019) proved that there exist the constants b1 > b2 > 0 such that kBkskk b1kskk and
b2 ksk k2 sTk Bk sk for at least t/2 values of k 2 {1, . . ., t} with any positive integer t. Therefore, the
sequence {gk} generated by the corresponding algorithm with the modified line-search given by
(6.81), (6.82), and (6.83) satisfies liminfk!1kgkk ¼ 0. Numerical experiments with the BFGS
algorithm, where the stepsize is determined by the modified Yuan-Wei-Lu line-search (6.81),
(6.82), and (6.83), show that it is more efficient and more robust versus the algorithm with Yuan-
Wei-Lu line-search (6.79) and (6.80) and versus the Li and Fukushima (2001b) algorithm.
A relative recent idea to generate simple minimization algorithms for the unconstrained optimization
in the frame of the quasi-Newton methods is to approximate the Hessian of the minimizing function
by a diagonal matrix with positive diagonal elements. This approach is motivated by Theorem 4.16
288 6 Quasi-Newton Methods
which shows that, for the Newton method, in the norm of the error, the inaccuracy in the Hessian has a
smaller influence than the inaccuracy of the gradient. These methods were introduced by Gill and
Murray (1979) and discussed by Gilbert and Lemaréchal (1989). The search direction is computed as
dkþ1 ¼ B1
kþ1 gkþ1 , ð6:84Þ
where Bkþ1 ¼ diag b1kþ1 , . . . , bnkþ1 is a positive definite diagonal matrix retaining only the diagonal
elements of the BFGS update matrix (6.22)
i 2 i 2 i 2
bk s k yk
bkþ1 ¼ bk Pn
i i
þ T , i ¼ 1, . . . , n: ð6:85Þ
i i 2 y
b s
i¼1 k k k sk
This diagonal-updating approach uses only O(n) storage. If we assume that yTk sk > 0, then Bkþ1 is
positive definite.
Another quasi-Newton algorithm with diagonal approximation to the Hessian is based on the weak
quasi-Newton equation sTk Bkþ1 sk ¼ sTk yk and was introduced and studied by Dennis and Wolkowicz
(1993). The update proposed by Dennis and Wolkowicz is as follows:
sTk yk sTk Bk sk
Bkþ1 ¼ Bk þ T
T
2 Bk s k s k B k , ð6:86Þ
sk Bk sk
where Bk is positive definite. The condition sTk yk > 0 implies that Bkþ1 in (6.86) is also positive
definite. If Bk is taken to be a positive definite diagonal matrix Bk ¼ diag b1k , . . . , bnk , then (6.86)
can be restricted to update only the diagonal elements of Bkþ1 as
P 2
sTk yk ni¼1 bik sik i 2 i 2
bkþ1 ¼ bk þ
P
i i
2 bk sk , i ¼ 1, . . . , n, ð6:87Þ
n i i 2
i¼1 bk sk
yielding a positive definite diagonal matrix. The search direction in this algorithm is computed as in
(6.84), where the diagonal elements of Bkþ1 are computed as in (6.87).
The diagonal quasi-Newton approximation algorithm presented by Zhu, Nazareth, and Wolkowicz
(1999) is as follows. Suppose that Bk is a positive definite diagonal matrix and Bkþ1, which is also
diagonal, is the updated version of Bk.The algorithm requires that the updated Bkþ1 satisfy the quasi-
Newton secant equation and the deviation between Bk and Bkþ1 be minimized under a variational
principle. The search direction is computed as dkþ1 ¼ B1 kþ1 gkþ1 , where the diagonal elements of
Bkþ1 ¼ diag b1kþ1 , . . . , bnkþ1 are computed as
P 2
sTk yk ni¼1 bik sik i 2
bikþ1 ¼ bik þ Pn i 4 sk , i ¼ 1, . . . , n: ð6:88Þ
i¼1 sk
In the same way of developments, Andrei (2019a) presented a new diagonal quasi-Newton updating
method, where the elements of the diagonal matrix approximating the Hessian are determined by
minimizing both the size of the change from the previous estimate and the trace of the update, with
respect to the weak secant equation. The search direction in this algorithm is computed as
6.3 Quasi-Newton Methods with Diagonal Updating of the Hessian 289
gikþ1
dikþ1 ¼ , i ¼ 1, . . . n, ð6:89Þ
bikþ1
and
P 2
sTk yk þ sTk sk ni¼1 bik sik i 2
bikþ1 ¼ bik þ Pn i 4 sk 1, i ¼ 1, . . . n: ð6:90Þ
i¼1 sk
Another approach that uses the same paradigm of the diagonal quasi-Newton updating method was
given by Andrei (2018e), where the diagonal elements are determined by minimizing the measure
function of Byrd and Nocedal. The components of the search direction in this approach are computed
as
2
d ikþ1 ¼ gikþ1 1 þ λ sik , i ¼ 1, . . . , n, ð6:91Þ
where
(
r þ θ, if λ < r, t sTk gkþ1 yTk gkþ1
λ¼ and λ¼P
i 2 ,
λ if λ r, n
y i gi
i¼1 k kþ1 sk
and
2 n 2 o
r ¼ 1= sjk ¼ max i¼1,...,n; sik 6¼0 1= sik :
where gik is the i-th component of the gradient in xk and d ik is the i-th component of the search direction
dk. Therefore, in this approach, the element bikþ1 may be considered as an approximation of the
second-order derivative of the function f, corresponding to the i-th diagonal element of the Hessian
computed in xkþ1 by a scaled forward finite differences directional derivative scheme.
Numerical Study
Consider the set of 80 unconstrained optimization test functions from the UOP collection (Andrei,
2020a). Figure 6.3 presents the Dolan and Moré performance profiles of YONS defined by (6.92) with
(6.93) versus QND defined by (6.84) with (6.85), WQND defined by (6.84) with (6.87), QCD defined
by (6.84) with (6.88), and DNRTR defined by (6.84) with (6.90), for minimizing this set of
unconstrained optimization test problems with n ¼ 500 variables, subject to the CPU time metric.
290 6 Quasi-Newton Methods
Fig. 6.3 Performance profiles of YONS versus QND, WQND, QCD, and DNRTR. CPU time metric, n ¼ 500
The stepsize is determined by the Wolfe line-search conditions (6.5) and (6.6), implemented with
σ ¼ 0.8 and ρ ¼ 0.0001. The iterations are stopped if the inequality kgkk1 εg is satisfied, where
k.k1 is the maximum absolute component of a vector, or if the number of iterations exceeds a
prespecified limit (50000).
Observe that YONS is significantly more efficient and more robust versus all the algorithms
considered in this numerical study. More numerical results with quasi-Newton methods with diagonal
updating to the Hessian, presented in Andrei (2018e, 2019a, 2019b, 2020b), proved that the algorithm
in which the diagonal elements of the approximation to the Hessian are computed by a scaled forward
finite differences directional derivative scheme is competitive among the algorithms in this class.
Therefore, the corresponding search direction based on this inverse BFGS formula is
6.4 Limited-Memory Quasi-Newton Methods 291
Note that this formula requires no matrix storage except for storage of Hk and, therefore, uses only
vector operations. This is one version of a limited-memory BFGS method. However, more elaborate
formulae can be developed as it is going to be presented in the following.
The limited-memory quasi-Newton methods are dedicated to solving large-scale unconstrained
optimization problems whose Hessian matrix cannot be computed and stored at a reasonable cost
(Nocedal, 1980). Instead of storing an n n approximation to the Hessian, these methods save only a
few vectors which can be used to represent the approximation implicitly. Among different limited-
memory methods, the best known and used is L-BFGS, which is based on the BFGS update. The main
idea of this method is to use the curvature information only from the most recent iterations in order to
construct the Hessian approximation.
As known, each step of the BFGS method is computed as
xkþ1 ¼ xk αk H k gk , k ¼ 0, 1, . . . , ð6:94Þ
where αk is the stepsize, gk ¼ ∇ f(xk), and Hk is the approximation to the inverse Hessian updated by
the formula
where
1
ρk ¼ , V k ¼ I ρk yk sTk : ð6:96Þ
yTk sk
Since the inverse Hessian Hk is generally a dense matrix, the limited-memory BFGS method will
implicitly store a modified version of Hk by storing only a certain number (say m) of the vector pairs
{si, yi} used in the updating formulae (6.95) and (6.96). After the new iterate has been computed, the
oldest vector pair in the set of pairs {si, yi} is replaced by the new pair {sk, yk} obtained from the
current iteration. Therefore, the set of vector pairs includes the curvature information from the most
recent m iterations. It is worth mentioning that only a small number of vector pairs, between 3 and
11, needs to be used for solving large-scale optimization problems. The product Hkgk is computed
during the updating process by performing a sequence of inner products and vector summations
involving only gk and the pairs {si, yi}. Nocedal and Wright (2006) presented a two-loop recursion
L-BFGS algorithm to compute the product Hkgk in (6.94). At iteration k, the current iterate is xk, and
the set of vector pairs is given by {si, yi} for i ¼ k m, . . ., k 1. Choose some initial Hessian
approximation H 0k , and by repeated application of (6.95), find that the L-BFGS approximation Hk
satisfies the following formula:
H k ¼ V Tk1 ⋯V Tkm H 0 ðV km ⋯V k1 Þ
þρkm V Tk1 ⋯V Tkmþ1 skm sTkm ðV kmþ1 ⋯V k1 Þ
þρkmþ1 V Tk1 ⋯V Tkmþ2 skmþ1 sTkmþ1 ðV kmþ2 . . . V k1 Þ
þ⋯
þρk1 sk1 sTk1 :
292 6 Quasi-Newton Methods
This expression of Hk may be used to derive a recursive procedure for computing the product
Hk ∇ f(xk). Given H0k , the two-loop recursion algorithm for the search direction computation is as
follows (Liu, & Nocedal, 1989).
Usually, H 0k is chosen as a diagonal matrix. Often, H 0k ¼ γ k I, where γ k ¼ sTk1 yk1 =kyk1 k2 : The
parameter γ k is a scaling factor that attempts to estimate the size of the true Hessian along the most
recent search direction. This selection of γ k ensures that the search direction is well scaled, and
therefore, as a by-product, the stepsize αk ¼ 1 is accepted in most iterations (Gilbert & Lemaréchal,
1989). In the implementation of Liu and Nocedal (1989), L-BFGS is one of the best algorithms (and
computing programs) for minimizing large-scale unconstrained optimization functions. Now, the
limited-memory BFGS algorithm can be presented as follows.
1. Initialization. Choose the initial point x0, the convergence tolerance ε > 0 sufficiently small, and a value
for integer m, and set k ¼ 0
2. Test a criterion for stopping the iterations. For example, if k∇f(xk)k ε, then stop; otherwise, set
k ¼ k þ 1 and go to step 3
3. Choose H 0k : For example, H 0k ¼ γ k I, where γ k ¼ sTk1 yk1 =kyk1 k2
4. Use Algorithm 6.2 (two-loop recursion) to compute dk ¼ Hk ∇ f(xk)
5. Compute the stepsize αk by using the Wolfe line-search
6. Compute xkþ1 ¼ xk þ αkdk
7. If k > m, then discard the vector pair {sk m, yk m} from the storage
8. Compute and save sk ¼ xkþ1 xk and yk ¼ ∇ f(xkþ1) ∇ f(xk)
9. Set k ¼ k þ 1 and go to step 2 ♦
During the first m 1 iterations, if the initial matrix H0 is the same in both algorithms and if
L-BFGS chooses H 0k ¼ H 0 at each iteration, then Algorithm 6.3 is equivalent to Algorithm 6.1 (BFGS
method). Observe that the performance of Algorithm 6.3 is subject to the level of memory m.
Table 6.1 shows the performances of L-BFGS (Liu & Nocedal, 1989) for solving five unconstrained
optimization problems, where ε ¼ 106. The steplength is determined at each iteration by means of
the line-search routine MCVSRCH, which is a slight modification of the routine CSRCH written by
Moré and Thuente (1990, 1992, 1994).
6.4 Limited-Memory Quasi-Newton Methods 293
Fig. 6.4 Performance profiles of L-BFGS versus CONMIN, DESCONa, CG-DESCENT, and CG-DESCENTaw
From Table 6.1, we can see that the optimal choice of m is problem dependent. For large values of
m, the cost of each iteration increases, and therefore, L-BFGS requires more CPU computing time.
The best CPU time is obtained for small values of m.
0.2
0.1
0
200
150 200
100 150
100
50 50
0 0
Table 6.3 Performances of L-BFGS Pressure distribution in a journal bearing. n ¼ 40, 000. e ¼ 106
Observe that L-BFGS is more robust than all these conjugate gradient algorithms. However,
DESCON, CG-DESCENT, and CG-DESCENTaw are more efficient than L-BFGS.
0.2
0.1
0
200
150 200
100 150
100
50 50
0 0
Table 6.4 Performance of L-BFGS. Optimal design with composite materials. n ¼ 40, 000. e ¼ 106
Figure 6.6 illustrates the solution of this application for nx ¼ 200, ny ¼ 200, and m ¼ 3.
Figure 6.7 shows the solution of this application for nx ¼ 200, ny ¼ 200, and m ¼ 3.
0.4
0.2
0
200
150 200
100 150
100
50 50
0 0
Table 6.6 Performances of L-BFGS. Minimal surfaces with Enneper boundary conditions. n ¼ 40, 000. e ¼ 106
Figure 6.8 illustrates the solution of this application for nx ¼ 200, ny ¼ 200, and m ¼ 3.
Table 6.7 Performances of L-BFGS. Inhomogeneous superconductors: 1-D Ginzburg-Landau. n ¼ 1000. e ¼ 106
7.715
7.71
7.705
7.7
7.695
7.69
7.685
7.68
0 100 200 300 400 500 600 700 800 900 1000
Hessian matrix Bk, not to its inverse. In the following, we show that, by representing quasi-Newton
matrices in a compact form, an efficient implementation of all quasi-Newton formulae and their
inverse can be derived. These compact representations are useful in designing limited-memory
methods for the constrained optimization, where the approximations to the Hessian or to the reduced
Hessian of the Lagrangian are needed.
In the following, let us describe the limited-memory updating that is based on representing quasi-
Newton matrices in compact form. This is illustrated for the case of the BFGS approximation Bk to the
Hessian (Byrd, Nocedal, & Schnabel, 1994b).
298 6 Quasi-Newton Methods
Theorem 6.11 Consider B0 a symmetric and positive definite matrix, and assume that the k vector
pairs {si, yi} satisfy sTi yi > 0, for all i ¼ 0, . . ., k 1. Using (6.22), let Bk be obtained by applying k
BFGS updates with these vector pairs to B0. Then,
" #1 " #
STk B0 Sk Lk STk B0
Bk ¼ B0 ½ B 0 S k Y k , ð6:97Þ
LTk Dk Y Tk
where
Observe that the conditions sTi yi > 0, i ¼ 0, . . ., k 1, ensure that the middle matrix in (6.97) is
nonsingular, so Bk is well-defined. Now, let us consider this result in the limited-memory updating.
As we know, the L-BFGS algorithm keeps the m most recent pairs {si, yi}, and at every iteration,
this set of vectors is refreshed by removing the oldest pair and by adding a newly generated
pair. Obviously, during the first m iterations, the update procedure described in Theorem 6.11 can
be used without any modification, except that Bk0 ¼ δk I for the initial matrix, where δk ¼ 1/γ k and
γ k ¼ sTk1 yk1 = yTk1 yk1 :
For the iterations k > m, the update procedure has to be slightly modified in order to take into
consideration the vector pairs {si, yi} for i ¼ k m, k m þ 1, . . ., k 1. Define
Sk ¼ ½skm , . . . , sk1 2 ℝnm , Y k ¼ ½ykm , . . . , yk1 2 ℝnm : ð6:100Þ
As soon as the new iterate xkþ1 has been generated, the matrix Skþ1 is obtained by deleting skm
from Sk and by adding the new sk. The matrix Ykþ1 is updated in a similar way. Similarly, the new
matrices Lkþ1 and Dkþ1 are obtained.
Since the middle matrix in (6.101) is of small dimension 2m, its factorization requires a negligible
amount of computation. The idea of the compact representation (6.101) is that the corrections to the
initial matrix can be expressed as the outer product of ½ δk Sk Y k and its transpose with an
intervening multiplication by a small 2m 2m matrix. The limited-memory updating of Bk requires
approximately 2mn þ O(m3) operations and the matrix-vector products of the form Bkv which can be
6.5 The SR1 Method 299
performed at a cost of (4m þ 1)n þ O(m2) multiplications. Therefore, updating the direct limited-
memory BFGS matrix Bk is economical when m is small (m ¼ 3, or m ¼ 5).
This approximation Bk can be used in methods for the bound constrained and the general
constrained optimization. For example, the program L-BFGS-B (Byrd, Lu, Nocedal, & Zhu,
1995b; Zhu, Byrd, Lu, & Nocedal, 1997) makes extensive use of compact limited-memory
approximations to solve large-scale nonlinear optimization problems with bound constraints (see
Chap. 12). Other codes for the general constrained optimization like KNITRO (Byrd, Hribar, &
Nocedal, 1999) and IPOPT (Wächter, & Biegler, 2001, 2006) also make use of the compact limited-
memory matrix Bk to approximate the Hessian of the Lagrangians (see Chaps. 15, 17, and 19,
respectively).
A formula similar to (6.97), but this time for a compact representation of the inverse BFGS
approximation Hk, was developed by Byrd, Nocedal, and Schnabel (1994b). An implementation of
the unconstrained L-BFGS algorithm based on this expression requires a similar amount of computa-
tion as the algorithm described above.
The symmetric rank-one SR1 update formula can be derived as solution of the following simple
problem. “Given a symmetric matrix Bk and the vectors sk and yk, find a new symmetric matrix Bkþ1
such that Bkþ1 Bk has rank one, such that the secant equation Bkþ1sk ¼ yk is satisfied.” It is easy to
see that if (yk Bksk)Tsk 6¼ 0, then the unique solution of the above problem is
ð y k B k s k Þ ð y k Bk s k Þ T
ðSR1directÞ Bkþ1 ¼ Bk þ : ð6:103Þ
ð y k Bk s k Þ T s k
If yk ¼ Bksk, then the solution is Bkþ1 ¼ Bk. However, if (yk Bksk)Tsk ¼ 0 and yk 6¼ Bksk, then there
is no solution to the problem.
Let Hk be the inverse approximation to the Hessian at iteration k. By using the Sherman-Morrison-
Woodbury formula, from (6.103), the following update to the inverse Hessian for SR1 is obtained as
ðsk H k yk Þðsk H k yk ÞT
ðSR1inverseÞ H kþ1 ¼ H k þ : ð6:104Þ
ðsk H k y k ÞT y k
This variant of the algorithm is only applicable in cases in which the inverse Hk exists. The main
drawbacks of the SR1 update are as follows:
1. The denominator (yk Bksk)Tsk of the SR1 update term in (6.103) may vanish, i.e.,
(yk Bksk)Tsk ffi 0, cases in which Bkþ1 is not well-defined.
2. The step directions computed by using the SR1 updating formula given by (6.103) may no longer
be uniform linear independent, thus leading to slowing down the convergence or even the stalling.
3. The SR1 Hessian approximation may not be positive definite along the iterations, thus resulting in
a direction that does not produce descent.
To prevent the method from failing because of the first drawback, one simple remedy is to set
Bkþ1 ¼ Bk. However, this may slow down the convergence of the method. Conn, Gould, and Toint
(1991b) and Khalfan, Byrd, and Schnabel (1993) showed that the denominator of (6.103) rarely
300 6 Quasi-Newton Methods
vanishes in practice, and setting Bkþ1 ¼ Bk does not have a significant impact on the performances of
the SR1 method subject to the number of the iterations or runtimes.
The second drawback is more delicate, being in close connection with the uniform linear
independence of the search directions generated by the SR1 algorithm. A more precise definition
of the uniform linear independence was given by Conn, Gould, and Toint (1991b). “A sequence {sk}
is uniformly linearly independent if there exist ξ > 0, k0 and m n such that, for each k k0, there are
n distinct indices k k1 k2 . . . kn k þ m for which the minimum singular value of the matrix
s
S ¼ sk1 , ⋯, ksskkn k is at least ξ.” Roughly speaking, uniformly linearly independent steps mean
k k1 k n
that the steps do not tend to fall in a subspace of dimension less than n.
Conn, Gould, and Toint (1991b) proved that the sequence of matrices generated by the SR1
formula converges to the exact Hessian when the sequence of iterates converges to a limit point and
the sequence of steps is uniformly linearly independent. Kelley and Sachs (1998) provided similar
convergence results by removing the first of these assumptions. Fiacco and McCormick (1968)
showed that if the search directions are linearly independent and the denominator of (6.103) is always
non-zero, then the SR1 method without line searches minimizes a strongly convex quadratic function
in at most n þ 1 steps. In this case, Bnþ1 is exactly the Hessian of the quadratic function. Observe that
this result is significant since it does not require the exact line-search as in the case of the BFGS
update. Generally, the above condition given by the definition of the uniform linear independency is
not implemented in practice, but it serves only as one of the main assumptions of a proof that the SR1
approximations to the Hessian converge to the true Hessian as the iterates converge to the solution of
(6.1).
Subject to the uniform linear independency of the search directions, Khalfan, Byrd, and Schnabel
(1993) showed that many problems do not satisfy this requirement. Instead, they proved the local
convergence of the SR1 method by using only the positive definiteness and boundedness assumptions
for the approximate Hessian. Moreover, Conn, Gould, and Toint (1991b) proved that if the
minimizing function f is twice continuously differentiable and its Hessian is bounded and Lipschitz
continuous, the iterates generated by the SR1 method converge to a point x, and in addition, if for
all k,
ðy Bk sk ÞT sk ξky Bk sk kksk k, ð6:105Þ
k k
for some ξ 2 (0, 1), (ξ ¼ 108), and the steps sk are uniformly linearly independent, then
lim Bk ∇2 f ðx Þ ¼ 0: ð6:106Þ
k!1
The SR1 methods have the ability to generate good Hessian approximations. Let us prove this
property for the quadratic functions. Observe that for the functions of this type, the choice of the
stepsize does not affect the update. Therefore, to examine the properties of this update, we can assume
a uniform step of length 1, that is, dk ¼ Hk ∇ f(xk) and xkþ1 ¼ xk þ dk, i.e., sk ¼ dk. In fact, the
following results can be proved.
Theorem 6.12 Suppose that f ðxÞ ¼ 12 xT Ax þ bT x is a strongly convex quadratic function, where
x 2 ℝn and A is symmetric positive definite. Then, for any initial point x0 and any initial symmetric
matrix H0, the iterates {xk} generated by the SR1 method (6.104) converge to the minimizer in at most
n steps, provided that (sk Hkyk)Tyk 6¼ 0 for all k. Assume a uniform step length of 1. Moreover, if n
steps are performed and if the search directions dk ¼ Hk ∇ f(xk) are linearly independent, then
Hn ¼ A1.
6.5 The SR1 Method 301
Proof Since (sk Hkyk)Tyk 6¼ 0, it follows that that the SR1 method is well-defined. Let us show that
H k yj ¼ sj , j ¼ 0, 1, . . . , k 1: ð6:107Þ
In other words, let us show that the secant equation is satisfied not only along the most recent
search directions but also along all the previous directions.
Observe that H1y0 ¼ s0. Assume that (6.107) holds for a certain value k > 1, and show that it also
holds for k þ 1. From (6.107), since f is a quadratic function, we have yi ¼ Asi. Therefore,
ðsk H k yk ÞT yj ¼ sTk yj yTk H k yj ¼ sTk yj yTk sj ¼ 0, for all j < k:
Using this in (6.104), we get Hkþ1yj ¼ Hkyj ¼ sj, for all j < k. Since Hkþ1yk ¼ sk by the secant
equation, it follows that (6.107) holds for k þ 1. By induction, this relation holds for all k.
If the algorithm performs n steps and if the steps {sj} are linearly independent, we obtain
sj ¼ Hnyj ¼ HnAsj, for j ¼ 0, 1, . . ., n 1. Hence, HnA ¼ I, that is, Hn ¼ A1. In other words, the
step taken at xn is the Newton step. Therefore, the next iterate xnþ1 will be the solution and the
algorithm terminates.
Now, consider the case in which the steps become linearly dependent. For this, suppose that sk is a
linear combination of the previous steps, that is, sk ¼ ξ0s0 þ . . . þ ξk 1sk 1, for some scalars ξi,
i ¼ 0, 1, . . ., k 1. From (6.107), we have
Hk yk ¼ H k Ask
¼ ξ0 H k As0 þ . . . þ ξk1 H k Ask1
¼ ξ0 H k y0 þ . . . þ ξk1 Hk yk1
¼ ξ0 s0 þ . . . þ ξk1 sk1 ¼ sk :
By the nonsingularity of Hk, it follows that ∇f(xkþ1) ¼ 0, that is, xkþ1 is the minimum point. ♦
The relation (6.107) proved in Theorem 6.12 for SR1 shows that, for quadratic functions, the
secant equation is satisfied along all the previous search directions, no matter how the line-search is
implemented. Such a result is established for the BFGS updating only under the assumption of the
exact line-search.
It is important to notice that for general nonlinear functions, under certain conditions, the SR1
update continues to generate good Hessian approximations, as shown further:
Theorem 6.13 Suppose that f is twice continuously differentiable and its Hessian is bounded and
Lipschitz continuous in a neighborhood of a point x. Let {xk} be any sequence of iterates such that
xk ! x for some x 2 ℝn. Additionally, suppose that (6.105) holds for all k, where ξ 2 (0, 1), and that
the steps sk are uniformly linearly independent. Then, the matrices Bk generated by the SR1 updating
formula (6.103) satisfy
lim Bk ∇2 f ðx Þ ¼ 0: ♦
k!1
302 6 Quasi-Newton Methods
Often, the condition (6.105) is used in the implementations of SR1 to make sure this update
behaves well. If this condition is not satisfied, then the update is skipped. Conn, Gould, and Toint
(1991b) and Khalfan, Byrd, and Schnabel (1993) provided theoretical and computational results,
respectively, that if the uniform linear independence assumption is satisfied, then the approximations
to the Hessian generated by the SR1 method are more accurate than those generated by BFGS, and
SR1 converges faster than BFGS to the true Hessian. Therefore, if all the above drawbacks are
addressed in a reliable and efficient manner, then SR1 can be used for solving (6.1) instead of the
rank-two updates. More details on the SR1 method concerning the undefined updates, the choice of
the initial approximate B0, and the uniform linear independence of the steps are found in Benson and
Shanno (2018) and Chen, Lam, and Chan (2019).
The convergence properties of the SR1 method are not understood so well as those of the BFGS
method. No global results like in Theorem 6.3 have been established for SR1, apart from some results
for quadratic functions. We emphasize that there is no rank-one update formula that maintains both
the symmetry and the positive definiteness of the Hessian approximations. However, there is an
infinity of rank-two formulae that does it. The most widely used and considered to be the most
effective is the BFGS update formula (6.22).
yk ¼ γ k Bkþ1 sk , ð6:108Þ
where γ k is a positive parameter. The generalized secant equation is obtained from the requirement
that the quadratic model of the minimizing function with scaled approximation to the Hessian should
match the gradient of the minimizing function at the latest two iterations xk and xkþ1.
Suppose that in the current point xk we know the approximation Bk to the Hessian to be a
symmetric matrix. To derive the SR1 method with generalized secant equation, we establish that
Bkþ1, which is the approximation to the Hessian in xkþ1, satisfies (6.108) and is obtained after a rank-
one update of Bk, i.e., it has the form
where δk is a scalar and u 2 ℝn. Substituting this form into the generalized secant equation, we get
yk ¼ γ k Bk sk þ γ k δk uuT sk ,
or, alternatively,
yk γ k Bk sk ¼ γ k δk uT sk u:
Since γ kδk(uTsk) is a scalar, in order to satisfy this equation, we can simply set δk ¼ γ 1
and
k ðu
Ts Þ
k
u ¼ yk γ kBksk. Therefore, introducing these elements in (6.109), the SR1 method with generalized
secant equation is obtained as
ðyk γ k Bk sk Þðyk γ k Bk sk ÞT
Bkþ1 ¼ Bk þ : ð6:110Þ
γ k ðyk γ k Bk sk ÞT sk
6.5 The SR1 Method 303
Note that the SR1 update formula (6.110) is unique, that is, there is exactly one rank-one update
satisfying the generalized secant equation. Moreover, if γ k ¼ 1 in (6.110), then the SR1 update (6.103)
is obtained.
If yk ¼ γ kBksk, then the solution is Bkþ1 ¼ Bk. However, if (yk γ kBksk)Tsk ¼ 0 and yk 6¼ γ kBksk,
then there is no solution to the problem.
Let Hk be the inverse approximation to the Hessian at iteration k. By using the Sherman-Morrison-
Woodbury formula in (6.110), the following update to the inverse Hessian for SR1 with generalized
secant equation is obtained as
ðH k yk γ k sk ÞðH k yk γ k sk ÞT
H kþ1 ¼ H k : ð6:111Þ
ðH k yk γ k sk ÞT yk
This variant of the algorithm is only applicable in cases in which the inverse Hk exists.
From (6.111), the search direction corresponding to the inverse Hessian SR1 updating with
generalized secant equation is dkþ1 ¼ Hkþ1gkþ1, i.e.,
ðH k yk γ k sk ÞT gkþ1
dkþ1 ¼ H k gkþ1 þ ðHk yk γ k sk Þ: ð6:112Þ
ðH k y k γ k sk ÞT y k
Now, the memoryless SR1 method with generalized secant equation is obtained by considering
Bk ¼ I in (6.110), i.e.,
ðyk γ k sk Þðyk γ k sk ÞT
Bkþ1 ¼ I þ : ð6:113Þ
γk ðyk γ k sk ÞT sk
Observe that this is a very simple updating formula, in which the information about the Hessian is
not accumulated from iteration to iteration. Besides, we can see that the memoryless SR1 method
with generalized secant equation has the same drawbacks as the SR1 method, i.e., when the
denominator (yk γ ksk)Tsk is zero, or is very close to zero, then the method is not defined.
Now, choosing in (6.111) Hk ¼ I, i.e.,
ðyk γ k sk Þðyk γ k sk ÞT
H kþ1 ¼ I , ð6:114Þ
ðy k γ k sk ÞT y k
the memoryless inverse of SR1 with generalized secant equation is obtained. Therefore, from (6.114),
the memoryless SR1 search direction with generalized secant equation is dkþ1 ¼ Hkþ1gkþ1, that is,
ðyk γ k sk ÞT gkþ1
d kþ1 ¼ gkþ1 þ ðyk γ k sk Þ: ð6:115Þ
ðyk γ k sk ÞT yk
The main advantage of the memoryless SR1 update (6.115) is that, for its implementation in
computer programs, only two scalar products (yk γ ksk)Tgkþ1 and (yk γ ksk)Tyk must be computed.
This is advantageous for solving large-scale problems. Observe that in this memoryless SR1 update,
the information from the previous iteration is not accumulated into the current iteration.
304 6 Quasi-Newton Methods
Proposition 6.2 If
yTk yk
γk > , ð6:116Þ
sTk yk
then the memoryless SR1 search direction with generalized secant equation (6.115) is a descent
direction.
Proof From (6.116), it follows that (yk γ ksk)Tyk < 0. Therefore, by direct computation, from
(6.115), we get
2
T
2 ð y k γ k s k Þ g kþ1
gTkþ1 d kþ1 ¼ gkþ1 þ T < 0, ♦
ðy k γ k sk Þ y k
Note that the memoryless SR1 search direction with generalized secant equation (6.115) has three
terms. The first is the negative gradient gkþ1; the last two terms involve sk and yk, both of them being
multiplied by some scalars. It is obvious that the search direction (6.115) satisfies the conjugacy
condition, i.e., yTk dkþ1 ¼ γ k sTk gkþ1 , where γ k is a positive parameter. Therefore, the memoryless
SR1 method with generalized secant equation is a conjugate gradient method which satisfies the Dai
and Liao (2001) conjugacy condition.
The memoryless algorithms corresponding to SR1 with generalized secant equation
(MM-SR1gen) and to the memoryless BFGS (MM-BFGS) are very simple. In both of them, the
stepsize is computed by the Wolfe line-search. The search direction in the memoryless SR1 method
with generalized secant equation is computed as in (6.115), while the search direction in the
memoryless BFGS method is computed as in (6.54). In the numerical experiments with these
algorithms, an acceleration scheme developed by Andrei (2006b, 2009c) was implemented.
MM-SR1gen MM-BFGS
1. Consider an initial point x0. Set k ¼ 0. Select some values for the Wolfe line-search conditions σ and ρ
with 0 < ρ < σ < 1. Compute g0 ¼ ∇ f(x0) and set d0 ¼ g0. Select the sufficiently small parameters: ε > 0
used in the criterion for stopping the iterations, εq > 0 used in the search direction computation, and εA > 0
used in the acceleration scheme
2. Test a criterion for stopping the iterations: if kgkk1 ε, then stop the iterations; otherwise, go to step 3
3. Compute the stepsize αk using the Wolfe line-search conditions
4. Update the variables xkþ1 ¼ xk þ αkdk and compute fkþ1 and gkþ1. Compute sk ¼ xkþ1 xk and
yk ¼ gkþ1 gk
5. Acceleration scheme:
a) Compute: z ¼ xk þ αkdk, gz ¼ ∇ f(z), and yk ¼ gk gz
b) Compute:
ak ¼ αk gTk dk and bk ¼ αk yTk d k
c) If bk εA , then compute ηk ¼ ak =bk and update the variables as xkþ1 ¼ xk þ ηkαkdk. Otherwise,
update the variables as xkþ1 ¼ xk þ αkdk. Compute fkþ1 and gkþ1. Compute yk ¼ gkþ1 gk and
sk ¼ xkþ1 xk
6. Select
T a value for the parameter γ k as in (6.116). If If yTk sk εq , compute the search direction
y y γ k sT y εq , then compute the search dkþ1 as in (6.54). Otherwise, set
k k k k
direction dkþ1 as in (6.115). Otherwise, set dkþ1 ¼ gkþ1
dkþ1 ¼ gkþ1
7. Restart the iterations. If gTkþ1 dkþ1 > 103 gkþ1 kd kþ1 k, then set dkþ1 ¼ gkþ1
8. Consider k ¼ k þ 1 and go to step 2 ♦
6.5 The SR1 Method 305
Observe that the algorithm is equipped with an acceleration scheme (see step 5). This scheme
modifies the stepsize determined by the Wolfe line-search conditions in such a way as to improve the
reduction of the minimizing function values along the iterations. It is proved that this acceleration
scheme is linear convergent, but the reduction in the function value is significantly improved (see
Sect. 3.4 in Chap. 3).
If f is bounded along the direction dk, then there exists a stepsize αk satisfying the Wolfe line-
search conditions (6.5) and (6.6). The first trial of the stepsize crucially affects the practical behavior
of the algorithm. At every iteration k 1, the starting guess for the step αk in the line-search is
computed as αk1kdk1k/kdkk. Observe that in step 6 of the algorithms, if the search direction for the
memoryless SR1 method with generalized secant equation is not defined, i.e., if |(yk γ ksk)Tyk| is
close to zero or if the search direction for the memoryless BFGS is not defined, i.e., if yTk sk is close to
zero, then the search direction is commuted to be the steepest descent. A restarting condition has been
introduced in our algorithm. If this condition is satisfied, then the algorithm is restarted with the
negative gradient.
(A1) The level set S ¼ {x 2 ℝn : f(x) f(x0)} is bounded, i.e., there exists a constant b > 0 such that
for any x 2 S, kxk b.
(A2) The function f : ℝn ! ℝ is continuously differentiable, and its gradient is Lipschitz continuous
in a neighborhood N of S, i.e., there exists a constant L > 0 such that k∇f(x) ∇ f( y)k
Lkx yk, for any x, y 2 N.
Note that under these assumptions, there exists a constant Γ > 0 such that k∇f(x)k Γ for any x 2 S.
Proposition 6.3 Suppose that (yk γ ksk)Tyk < 0 and (yk γ ksk)(yk γ ksk)T is a matrix bounded
above in norm. Then, the memoryless SR1 with generalized secant equation update matrix Hkþ1 given
by (6.114) is bounded above in norm.
Proof From (6.114), since the denominator (yk γ ksk)Tyk is strictly negative, the numerator
(yk γ ksk)(yk γ ksk)T is bounded above in norm, and kskk ¼ kxkþ1 xkk kxkþ1k þ kxkk 2b,
it follows that Hkþ1 given by (6.114) is bounded above in norm. ♦
Proposition 6.4 Suppose that (yk γ ksk)Tyk < 0. Then, the memoryless SR1 with generalized secant
equation search direction (6.115) is a descent direction, that is, gTkþ1 dkþ1 < 0: Besides, kdkþ1k D
for some D > 0.
Proof Observe that the numerator of the update (6.114) is a rank-one positive semidefinite matrix
and the denominator of (6.114) is strictly negative. Therefore, the update matrix Hkþ1 given by
(6.114) is positive semidefinite. Without loss of generality, it follows that Hkþ1 given by (6.114) is
positive definite. Thus, gTkþ1 d kþ1 ¼ gTkþ1 H kþ1 gkþ1 < 0:
The boundedness of dkþ1 may be established as follows. If the restart condition is satisfied, then
dkþ1 ¼ gkþ1. Therefore, kdkþ1k ¼ kgkþ1k < D, where D ¼ Γ by assumption (A2). On the other
hand, for non-restart iterations, the search direction is computed as dkþ1 ¼ Hkþ1gkþ1, where Hkþ1
is given by (6.114). In this case, by Proposition 6.3, the sequence of the Hessian matrices given by
306 6 Quasi-Newton Methods
(6.114) remains bounded above in norm. Therefore, kdkþ1k ¼ kHkþ1gkþ1k kHkþ1kkgkþ1k, which
is bounded above by some constant D > 0. ♦
Theorem 6.14 Suppose that the assumptions (A1) and (A2) are satisfied, and assume that the
generated matrix Hk is positive definite, and there are the positive constants m and M such that
mI Hk MI. Furthermore, assume that the stepsize αk satisfies the weak Wolfe conditions (6.5) and
(6.6) and that the function f is bounded below in ℝn. Then, lim k∇f ðxk Þk ¼ 0:
k!1
Proof From the first Wolfe condition (6.5), it follows that f ðxk þ αk dk Þ < f ðxk Þ þ ραk gTk d k : Taking
the summation of both sides from 0 to k, we have
X
k
f ðxkþ1 Þ < f ðx0 Þ þ ρ αi gTi di :
i¼0
Since from Proposition 6.4 the algorithm generates descent directions and the function f is
P
bounded below, it follows that ki¼0 αi gTi di is bounded above by a positive scalar. Now, by
Proposition 2.4, for any i, the stepsize αi is bounded below as
T
1 σ gi d i
αi :
L kd i k2
Therefore,
2
ρð1 σÞ X gTi d i
k
f ðx0 Þ f ðxkþ1 Þ 2
:
i¼0 kd i k
L
In other words,
T 2
X
1
gi d i Lðf ðx0 Þ f min Þ
γ, where γ¼ 0,
i¼0 kd i k 2 ρð 1 σ Þ
where fmin is the minimum value of the sequence ff ðxk Þg1k¼1 : Since di ¼ Higi, we have
T 2 T 2
gi d i gi H i gi m2
2
¼ T 2 kgi k2 :
kd i k gi H i H i gi M
Therefore,
T 2
m2 X X
1 1
gi d i
2
kgi k
2
2
< γ,
M i¼1 i¼0 kd i k
that is,
X
1
M2
kgi k2 γ < 1,
i¼0
m2
Hence, the algorithm MM-SR1gen is globally convergent to a point in which the first-order
optimality conditions are satisfied.
From Fig. 6.11, we can see that MM-SR1gen is more efficient and more robust than MM-BFGS. In
the second set of numerical experiments, we compare the performances of the accelerated
MM-SR1gen versus BFGS which is implemented in CONMIN (Shanno, 1983). The CONMIN
package includes two optimization algorithms: a BFGS preconditioned conjugate gradient and a
variant of the BFGS quasi-Newton algorithm. Figure 6.12 shows the performance profiles of these
algorithms for solving 800 unconstrained optimization problems from our collection, with the number
of variables in the range [100, 1000].
Obviously, MM-SR1gen is more efficient and more robust than BFGS from CONMIN, one of the
best implementations of this quasi-Newton method. Observe that subject to the CPU computing time,
MM-SR1 is faster in 664 problems, while BFGS from CONMIN is faster only in nine problems.
The BFGS from CONMIN is a variable metric method with initial scaling which approximately needs
n2/2 þ 11n/2 double precision words of working storage. By comparison, MM-SR1gen requires
approximately 6n double precision words of working storage.
BFGS requires more memory and involves a greater computational effort. We emphasize that at
every iteration, BFGS from CONMIN updates an approximation to the Hessian by accumulating the
information from the previous iterations. On the other hand, at every iteration, the memoryless
MM-SR1gen algorithm updates the identity matrix (see (6.113), or (6.114) for the inverse Hessian
308 6 Quasi-Newton Methods
Table 6.8 Performances of MM-SR1gen versus MM-BFGS (40,000 variables, cpu seconds)
MM-SR1gen MM-BFGS
#iter #fg cpu #ig #iter #fg cpu #ig
A1 40,000 372 772 7.79 0 6711 20133 180.56 6611
A2 40,000 1257 2547 31.97 0 9312 27937 298.50 8883
A3 40,000 4093 10001 202.28 0 861 2584 53.28 15
A4 40,000 609 1260 65.10 0 666 1997 140.00 416
A5 40,000 308 697 9.47 0 2177 6520 148.46 199
Total 6639 15277 316.61 0 19727 59171 820.80 16124
updating). Obviously, MM-SR1gen does not accumulate the information from iteration to iteration
when updating the approximation to the Hessian. However, MM-SR1gen, having a very simple
updating formula, is way more efficient and more robust than BFGS from CONMIN.
Now, let us present comparisons between the MM-SR1gen and MM-BFGS algorithms for solving
five applications from the MINPACK-2 collection, each of them with 40,000 variables (see Appendix
D). The performances of the MM-SR1gen method versus the MM-BFGS method are given in
Table 6.8 where #iter is the number of iterations, #fg is the number of function and its gradient
evaluations, #ig is the number of iterations in which the search direction is the negative gradient, and
cpu is the CPU computing time for solving these applications in seconds.
From Table 6.8, we can see that MM-SR1gen is more efficient for solving these applications from
the MINPACK-2 collection. We can see that MM-SR1gen needs 316.61 seconds, while MM-BFGS
needs 820.80 seconds, i.e., MM-SR1gen is 2.60 times faster than MM-BFGS. It is worth pointing out
that, for solving all these applications, MM-SR1gen does not use the negative gradient in any
iteration. This is in sharp contrast with MM-BFGS, which, out of 19727 iterations for solving all
the five applications, the negative gradient is used in exactly 16124 iterations (i.e., 81.73%).
The performances of MM-SR1gen and of MM-BFGS should be compared with the performances
of the conjugate gradient algorithms in Tables 5.2, 5.3, 5.4, 5.6, 5.7, 5.9, 5.10, 5.11, and 5.12. Observe
that the conjugate gradient algorithms are more efficient than MM-SR1gen or MM-BFGS.
6.6 Sparse Quasi-Newton Updates 309
Both these algorithms, MM-SR1gen and MM-BFGS, are memoryless, i.e., they do not accumulate
the information from iteration to iteration. They use the same initialization and exactly the same
implementation of the Wolfe line-search conditions (6.5) and (6.6). The differences are in the formula
for the search direction computation.
These updates are designed for solving large-scale optimization problems. The idea is that the quasi-
Newton approximations Bk have the same sparsity pattern as the true Hessian. Obviously, this
approach would reduce the storage requirement and perhaps would generate a more accurate Hessian
approximations (Toint, 1977, 1981).
Consider
n o
Ω≜ ði, jÞ : ∇2 f ðxÞ i,j 6¼ 0 for some x in the domain of f :
Suppose that the current Hessian approximation Bk has the same zero/nonzero structure of the
exact Hessian, i.e., (Bk)i, j ¼ 0 for all (i, j) 2
= Ω.. Now, in updating Bk to get Bkþ1, the following
requirements are imposed: Bkþ1 satisfies the secant condition, and it has the same sparsity pattern as
Bk and is as close as possible to Bk. Specifically, Bkþ1 is defined as solution of the following quadratic
minimization problem
X
2
min kB Bk k2F ¼ Bi,j ðBk Þi,j ,
B
ði, jÞ2Ω
subject to ð6:117Þ
Bsk ¼ yk , B¼B , T
and Bi,j ¼ 0 for ði, jÞ=
2Ω:
The solution Bkþ1 of this problem can be obtained by solving an n n linear system whose sparsity
pattern is Ω, the same as the sparsity of the true Hessian. The main drawbacks of this approach are as
follows: the possible Bkþ1 solution of (6.117) is not positive definite and the updating process is not
scale invariant under linear transformations of the variables. However, the fundamental weakness of
this approach is that (6.117) is an inadequate model and can produce poor Hessian approximations.
An alternative approach is to relax the secant equation by requiring that it should be approximately
satisfied along the last few steps rather than on the latest step. For this, define Sk and Yk as in (6.100) so
that they contain the m most recent difference pairs. The new Hessian approximation Bkþ1 is obtained
as solution of the following quadratic problem:
This minimizing problem has a solution which is not easy to compute. Moreover, this approach
can produce singular or poorly conditioned Hessian approximations (Nocedal and Wright, 2006).
Details on sparse quasi-Newton update can be found in Toint (1981); Gill, Murray, Saunders, and
Wright (1982); Lucia (1983); Spedicato and Zhao (1993); Byrd, Nocedal, and Schnabel (1994b);
Fletcher (1995); and Yamashita (2005).
310 6 Quasi-Newton Methods
A separable function f(x) : ℝn ! ℝ is a function which can be decomposed into a sum of element
functions, each element function depending on different components of the vector x. For example, the
function
2 2
f ðxÞ ¼ x3 x21 þ x34 x2 ð6:119Þ
where each of the element function fi depends on only a few components of x and no component of
x appears in more than one element function. Separable unconstrained minimization consists of the
minimization of each element function in turn. It is easy to see that the gradient and the Hessian of the
function (6.120) are
X
ne X
ne
∇f ðxÞ ¼ ∇f i ðxÞ, ∇2 f ðxÞ ¼ ∇2 f i ðxÞ:
i¼1 i¼1
The quasi-Newton approximations of the Hessian ∇2f(x) of the function f can be computed and
handled by computing the quasi-Newton approximations of the Hessians ∇2fi(x), i ¼ 1, . . ., ne,
corresponding to each element function.
To clarify the concept and explain the quasi-Newton method with separable functions, let us
consider the function from (6.119). Observe that f1 is a function which formally depends on x, but it
actually depends only on x1 and x3, which we call element variables. Assembling the element
variables into a vector x[1] ¼ [x1, x3]T and defining the compactifying matrix
1 0 0 0
U1 ¼ ,
0 0 1 0
2
we get x[1] ¼ U1x. Introducing the function φ1 ðz1 , z2 Þ ¼ z2 z21 , we can write f1(x) ¼ φ1(U1x). By
applying the chain rule, we get
The idea of using the quasi-Newton method with separable functions is instead of storing and
handling a quasi-Newton approximation to ∇2f1, it is more profitable to store and handle a 2 2-
6.7 Quasi-Newton Methods and Separable Functions 311
dimensional quasi-Newton approximation B[1] of ∇2φ1 and use (6.121) to transform it into a quasi-
Newton approximation to ∇2f1. Obviously, after a typical iteration from x to xþ, both s½1 ¼ xþ
½1 x½1
and y½1 ¼ ∇φ1 xþ½1 ∇φ1 x½1 have to be recorded and used in the BFGS or SR1 updating
formulae to obtain a new approximation Bþ
½1 of ∇ φ1(U1x). With this, the approximation of the
2
Therefore, the n n-dimensional quasi-Newton approximation to the full Hessian ∇2f is obtained
by summing the quasi-Newton approximations B[i] i ¼ 1, . . ., ne of the element function as follows:
X
ne
B¼ U Ti B½i Ui : ð6:122Þ
i¼1
With this approximation to the Hessian, the search direction can be computed as solution of the
system Bkdk ¼ ∇ f(xk). Of course, for solving this system, it is not necessary to assemble Bk
explicitly, but rather use the conjugate gradient algorithm which is based only on matrix-vector
products of the form Bkv by performing operations with the matrices Ui and B[i], i ¼ 1, . . ., ne.
It is important to compare these two approaches. Suppose that we have to minimize a separable
function which depends on 1000 variables and where each element function depends only on two
variables. Of course, ignoring the partially separable structure of the minimizing function, a quasi-
Newton approximation BFGS or SR1 to a 1000 1000-dimensional matrix has to be computed. In
this case, many iterations are needed to get a good quality quasi-Newton approximation of ∇2f(x). By
contrast, in the quasi-Newton with separable functions, the functions φi still depend only on two
variables, so that each quasi-Newton approximation to the Hessian B[i] is a 2 2-dimensional matrix.
After a few iterations, we have enough directions s[i] and differences y[i] to compute each B[i] as an
approximate to ∇2φi accurate enough. Therefore, the full quasi-Newton approximation (6.122) tends
to be a very good one to ∇2f(x).
Obviously, there is no guarantee that the curvature condition sT½i y½i > 0 is satisfied for all i ¼ 1, . . .,
ne. In this case, even if the full Hessian ∇2f(x) is at least positive semidefinite at the solution x, some
of the element Hessians ∇2φi(.) may be indefinite. A solution to overcome this situation is to apply the
SR1 update to each of the element Hessians. This approach is used in the LANCELOT package
(Conn, Gould, & Toint, 1992b), which is designed to take full advantage of the partial separability of
the minimizing function.
The main limitations of this approach based on the separability of the minimizing function are the
difficulty of identifying a good partially separable structure of f and the cost of the step computation
management.
Another possibility to take advantage of the separability of the minimizing function f is to identify
the vectors g[i] with the components of the gradient ∇f(x) corresponding to the components of each x[i]
and solve the systems ∇2φi(Ux)d[i] ¼ g[i], for i ¼ 1, . . ., ne, thus obtaining the components
d[i] of the search direction. In this context, another idea is to compute ∇2φi(.) by finite-differences (see
Chap. 4).
312 6 Quasi-Newton Methods
The quasi-Newton methods are more efficient than the Newton methods. Using only the change in
gradients, the quasi-Newton methods construct a model of the minimizing function that produces
superlinear convergence. Optimization software libraries contain a large variety of quasi-Newton
programs for solving unconstrained, constrained, and large-scale optimization problems. From the
practical viewpoint, the most popular quasi-Newton method is BFGS, in which the stepsize is
computed by using the Wolfe line-search. The performances of BFGS can degrade if the line-search
is not based on the Wolfe conditions.
Two difficulties affect the BFGS method: the storage and the strategy for dealing with the
possibility that yTk sk 0: The storage difficulty is solved by using an efficient storage way to compute
the BFGS step by using the history of the iteration rather than the full matrix storage (Byrd, Nocedal,
& Schnabel, 1994b). A strategy based on reducing the storage cost to one vector for each iteration was
described by Kelley (1999). Another strategy is the limited-memory BFGS method (L-BFGS) (see
Nocedal (1980)). Neither of these approaches for controlling the storage, although essential in
practice for large-scale problems, has the superlinear convergence properties like the full-storage
BFGS algorithm. On the other hand, when yTk sk is not sufficiently positive, the BFGS update is
restarted with the identity matrix. One of the best implementations of the limited-memory BFGS,
with a highly practical efficiency, is L-BFGS of Liu and Nocedal (1989).
Another point which should be emphasized is the Hessian initialization of the L-BFGS method. A
popular Hessian initialization is H0 ¼ yTk yk =yTk sk I: There are also more sophisticated Hessian
initializations. Gilbert and Lemaréchal (1989) proposed a sparse Hessian initialization.
Table 6.9 shows the performances of L-BFGS (m ¼ 5) of Liu and Nocedal for solving five
applications from the MINPACK-2 collection, each of them with 250,000 variables.
Comparisons of L-BFGS (m ¼ 5) (see Table 6.9) versus the modern conjugate gradient algorithms
CG-DESCENT (Table 5.13), DESCON (Table 5.14), and DK (Table 5.15) show that L-BFGS
(m ¼ 5) is faster. Subject to the number of iterations, DESCONa, with 5810 iterations for solving
all the five applications, is better than L-BFGS (m ¼ 5).
MM-SR1gen is very easy to implement and requires only two scalar products (yk γ ksk)Tgkþ1 and
(yk γ ksk)Tyk per iteration, where γ k is given by (6.114). In our numerical experiments, γ k is computed
as γ k ¼ 100 yTk yk =sTk yk : Table 6.10 presents the performances of MM-SR1gen for solving five
applications from the MINPACK2 collection, each of them with 250,000 variables.
Observe that the limited-memory BFGS, L-BFGS (m ¼ 5) is more efficient than the memoryless
SR1 method with the generalized secant equation MM-SR1gen. This is because MM-SR1gen does
not accumulate information about the Hessian from iteration to iteration.
Table 6.9 Performances of L-BFGS (m ¼ 5) for solving five applications from the MINPACK-2 collection (250,000
variables, cpu seconds)
Table 6.10 Performances of MM-SR1gen for solving five applications from the MINPACK-2 collection (250,000
variables, cpu seconds)
The limited-memory BFGS method was designed by Nocedal (1980). The main weakness of the
L-BFGS method is that it slowly converges on ill-conditioned problems, that is, on problems for
which the Hessian matrix contains a wide distribution of eigenvalues.
Plenty of papers were dedicated to the modifications of the BFGS quasi-Newton method. They are
based on sizing, i.e., multiplying by an appropriate scalar the approximate Hessian matrix before it is
updated in the BFGS method, on the proper scaling of the terms on the right-hand side of the BFGS
updating formula with positive factors, on the modified secant equation in order to approximate the
curvature of the objective function along the search direction more accurately than the standard
secant equation does, and on the new line-search conditions for the stepsize computation to ensure the
global convergence by modifying the Wolfe line-search conditions.
The quasi-Newton methods with diagonal updating of the Hessian are based on Theorem 4.16 (see
4.89), which shows that for the Newton method, in the norm of the error, the inaccuracy in the
Hessian has a smaller influence than the inaccuracy of the gradient. In other words, the inaccuracy
evaluation of the Hessian of the minimizing function is not so important. It is the accuracy of the
evaluation of the gradient which is more important. A diagonal approximation of the Hessian by finite
differences for the unconstrained optimization was developed by Andrei (2020c) (see also Andrei,
2019a, 2019b, 2020d).
The memoryless SR1 method with generalized secant equation was introduced by Andrei (2021c,
2021d).
314 6 Quasi-Newton Methods
Sparse quasi-Newton updates were studied by Toint (1977, 1981), Fletcher (1995), and Fletcher,
Grothey, and Leyffer (1996). An efficient computation of the sparse Jacobian was presented by
Andrei (1983).
The numerical experience with the limited-memory quasi-Newton (and the truncated Newton)
methods is described in Zou, Navon, Berger, Phua, Schlick, and Le Dimet (1993). Limited-memory
BFGS methods are implemented in L-BFGS (Liu, & Nocedal, 1989), M1QN3 (Gilbert, &
Lemaréchal, 1989), E04DGF (Gill, & Murray, 1979), and BBVSCG (Buckley, & Lenir, 1985). Gill
and Leonard (2003) give a variant of the limited-memory BFGS that requires less storage and appears
to be quite efficient. The compact limited-memory representations are used in L-BFGS-B (Zhu, Byrd,
Lu, & Nocedal, 1997), IPOPT (Wächter & Biegler, 2000) (see Chap. 19), and KNITRO (Byrd,
Hribar, & Nocedal, 1999) (see Chaps. 15 and 17).
The quasi-Newton methods for partially separable functions were developed by Griewank and
Toint (1982a, 1982b). The LANCELOT package by Conn, Gould, and Toint (1992b) implements the
concept of partial separability of the minimizing functions.
Inexact Newton Methods
7
The main idea behind the inexact Newton method, also known as the truncated Newton method,
introduced by Dembo, Eisenstat, and Steihaug (1982) and analyzed by Dembo and Steihaug (1983)
and Deuflhard (1990) is to approximate the solution of the Newton system
for the search direction dk. Since far away from a local minimum the objective function cannot be
well approximated by a quadratic model, it follows that it is not necessary to spend too much time on
computing an accurate Newton search vector. Therefore, in the following, we describe some
procedures for obtaining approximations of the search direction dk, which are good enough and
inexpensive to calculate. Solving (7.1) in an iterative manner has the advantage of avoiding the
factorization of the Hessian ∇2f(xk) and, therefore, the fill-in during the factorization. Besides, these
methods can be implemented in a Hessian-free manner, so the Hessian ∇2f(xk) need not be explicitly
calculated or stored. Solving (7.1) is based on using the conjugate gradient method with some
modifications to handle the negative curvature in the Hessian.
The criterion for terminating the iterative method for solving (7.1) is based on the residual
where dk is the inexact Newton step. Usually, the conjugate gradient iterations are terminated when
where the sequence {ηk} with 0 < ηk < 1 for all k is called the forcing sequence. Therefore, in the
inexact Newton method, the linear algebraic system (7.1) for the Newton step is solved by an iterative
method and (7.3) is considered the termination criterion. It is standard to refer to the sequence of the
Newton steps {xk} as the outer iteration and to the sequence of iterates for solving (7.1) as the inner
iterations (Nash, 1984b, 1985). In this context, the naming convention is that the Newton-CG, for
example, refers to the Newton iterative method in which the conjugate gradient algorithm is used to
perform the inner iterations (see Remark 5.2). The Newton-CC is particularly appropriate for the
large-scale optimization since we expect positive definite Hessians near a local minimizer.
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 315
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_7
316 7 Inexact Newton Methods
In the following, let us discuss the inexact Newton method for solving nonlinear algebraic systems
FðxÞ ¼ 0, ð7:4Þ
As we know, for solving (7.4) the Newton method is defined by the Newton system
J ðxk Þsk ¼ Fðxk Þ ð7:5Þ
and
xkþ1 ¼ xk þ sk , ð7:6Þ
where
kr k k ηk kFðxk Þk ð7:8Þ
and
xkþ1 ¼ xk þ sk : ð7:9Þ
represents the residual, while {ηk}, with 0 < ηk < 1 is a forcing sequence which controls the
approximation with which the Newton system is solved. We are interested in the local convergence
of this method.
Proof Denote α ¼ kJ(x)1k. For a β < α1, choose δ so that, when ky xk < δ with y 2 D, it follows
that
kJ ðx Þ J ðyÞk β:
Using the von-Neumann lemma (see Appendix A), it results that J( y) is nonsingular, and therefore
(7.11) is true with ξ ¼ α/(1 βα). Hence,
1
J ðx Þ J ðyÞ1 ¼ J ðx Þ1 ðJ ðyÞ J ðx ÞÞJ ðyÞ1
αξkJ ðx Þ J ðyÞk αβξ ≜ ε,
With this, the convergence of the inexact Newton method can be established as follows:
Theorem 7.1 Let F : ℝn ! ℝn be a function which satisfies the assumptions H1–H3. Suppose that
the forcing sequence {ηk} satisfies 0 ηk η < t < 1. Then, for ε > 0, if the initial point x0 is
sufficiently close to x, the sequence {xk} generated by the inexact Newton method (7.7), (7.8), and
(7.9) converges to x, and the rate of convergence is linear, that is,
kxkþ1 x k tkxk x k , ð7:13Þ
where
n o
μ ¼ max kJ ðx Þk, J ðx Þ1 : ð7:15Þ
Let kx0 xk ε. We prove (7.13) by induction. From (7.14), (7.15), and the inductive
hypothesis, it follows that
When y ¼ xk, it follows that (7.17), (7.18), and (7.19) are true. Since
318 7 Inexact Newton Methods
J ðx Þðxkþ1 x Þ
¼ J ðx Þ xk x J ðxk Þ1 Fðxk Þ þ J ðxk Þ1 r k
1
¼ hJ ðx ÞJ ðxk Þ ðJ ðxk Þðxk x Þ Fiðxk Þ þ r k Þ ð7:20Þ
¼ I þ J ðx Þ J ðxk Þ1 J ðx Þ1 ½r k þ ðJ ðxk Þ J ðx ÞÞðxk x Þ
ðFðxk Þ Fðx Þ J ðx Þðxk x ÞÞ,
However,
therefore,
To prove the superlinear convergence of the inexact Newton method, some conditions on the
residual have to be introduced.
1
α ¼ max kJ ðx Þk þ , 2β ,
2β
where β ¼ kJ(x)1k. Then, for ky xk sufficiently small, the following inequality
1
ky x k kFðyÞk αky x k: ð7:23Þ
α
holds.
Proof Since Fis continuously differentiable, then there exists δ > 0 sufficiently small, so that as soon
as ky xk < δ,
1
kFðyÞ Fðx Þ J ðx Þðy x Þk ky x k:
2β
However,
7.1 The Inexact Newton Method for Nonlinear Algebraic Systems 319
Therefore,
kFðyÞk kJ ðx Þkky x
k þ kFðyÞ Fðx Þ J ðx Þðy x Þk
1 ð7:24Þ
kJ ðx Þk þ ky x k:
2β
Theorem 7.2 Let F : ℝn ! ℝn be a function which satisfies the assumptions H1–H3. Suppose that
the sequence {xk} generated by the inexact Newton method (7.7), (7.8), and (7.9) converges to x.
Then, the convergence is superlinear if and only if
k r k k ¼ o ð k Fð x k Þ k Þ ð7:26Þ
for k ! 1.
Proof Suppose that the sequence {xk} is superlinear convergent to x. Therefore,
r k ¼ Fðxk Þ þ J ðxk Þðxkþ1 xk Þ
¼ ½Fðxk Þ Fðx Þ J ðx Þðxk x Þ ½J ðxk Þ J ðx Þðxk x Þ
þ½J ðx Þ þ ðJ ðxk Þ J ðx ÞÞðxkþ1 x Þ:
Having in view the assumptions H1–H3 and that {xk} is superlinear convergent, it follows that
k r k k kFð x k Þ Fð x Þ J ð x Þ ð x k x Þ k þ kJ ð x k Þ J ð x Þ k kx k x k
þ½kJ ðx Þk þ kJ ðxk Þ J ðx Þkkxkþ1 x k
¼ oðkxk x kÞ þ oð1Þkxk x k þ ½kJ ðx Þk þ oð1Þoðkxk x kÞ:
On the contrary, let us suppose that krkk ¼ o(kF(xk)k). Then, from (7.20), it follows that
h i
kxkþ1 x k J ðx Þ1 þ J ðxk Þ1 J ðx Þ1
h½kr k k þ kJ ðxk Þ iJ ðx Þkkxk x k þ kFðxk Þ Fðx Þ J ðx Þðxk x Þk
¼ J ðx Þ1 þ oð1Þ ½oðkFðxk ÞkÞ þ oð1Þkxk x k þ oðkxk x kÞ:
320 7 Inexact Newton Methods
which proves the superlinear convergence of {xk} generated by the inexact Newton method (7.7),
(7.8), and (7.9). ♦
Observe that if {ηk} ! 0, then the sequence {xk} generated by the inexact Newton method (7.7),
(7.8), and (7.9) converges to x superlinearly. This result can be proved as the following corollary.
Corollary 7.1 Suppose that the sequence {xk} generated by the inexact Newton method (7.7), (7.8),
and (7.9) converges to x. If {ηk} is convergent to zero, then the sequence {xk} is superlinear
convergent to x.
Theorem 7.3 Let F : ℝn ! ℝn be a function which satisfies the assumptions H1–H3. Suppose that
the forcing sequence {ηk} satisfies 0 ηk η < 1. For ε > 0, if the initial point x0 is sufficiently close
to x, then the sequence {xk} generated by the inexact Newton method (7.7), (7.8), and (7.9) converges
to x, and the rate of convergence is linear, that is, for k sufficiently large,
kxkþ1 x k ckxk x k, ð7:28Þ
where 0 < c < 1. If ηk ! 0, then the sequence {xk} is superlinear convergent to x. If ηk ¼ O(kF(xk)k),
then the sequence {xk} is quadratic convergent to x.
Hence,
kFðxkþ1 Þk ηk kFðxk Þk þ O kFðxk Þk2 : ð7:31Þ
Now, dividing both members of (7.31) by kF(xk)k and having in view that ηk < η < 1, then, for
k ! 1 , we obtain
7.1 The Inexact Newton Method for Nonlinear Algebraic Systems 321
kFðxkþ1 Þk
lim sup η < 1: ð7:32Þ
k!1 k Fð x k Þ k
kxkþ1 x k kFðxkþ1 Þk
lim sup C lim sup , ð7:33Þ
k!1 kxk x k k!1 kFð x k Þ k
where C is a constant. Therefore, if xk is sufficiently close to x and Cη < 1, then, locally, the sequence
{xk} is linear convergent to x.
Now, let us suppose that ηk ! 0. Then,
kr k k
lim sup ¼ 0,
k!1 kFðxk Þk
kFðxkþ1 Þk
lim sup ¼ 0, ð7:34Þ
k!1 kFðxk Þk
thus proving the superlinear convergence of the values of the function F(x). As above, from
Proposition 7.2, it follows that
kxkþ1 x k
lim sup ¼ 0: ð7:35Þ
k!1 kxk x k
If ηk ¼ O(kF(xk)k), then there exists a constant c1 so that ηk c1kF(xk)k. From (7.8), we get
kr k k
lim sup c1 ,
k!1 k Fð x k Þ k 2
kFðxkþ1 Þk
lim sup ¼ c, ð7:36Þ
k!1 k Fð x k Þ k 2
where c is an arbitrary constant, thus proving the quadratic convergence of the sequence {F(xk)},
that is,
kxkþ1 x k
lim sup ¼ c: ♦
k!1 kx k x k 2
322 7 Inexact Newton Methods
where f : ℝn ! ℝ is twice continuously differentiable, the Newton method in the current point xk
minimizes the quadratic model
1
m2 ðd Þ ¼ f ðxk Þ þ dT ∇f ðxk Þ þ d T ∇2 f ðxk Þd ð7:38Þ
2
and considers the new approximation to the minimizer x of the function f as
xkþ1 ¼ xk þ αk dk , ð7:39Þ
where dk is the minimum point of m2(d ) and αk > 0 is the stepsize. Obviously, the minimum of m2(d),
i.e., the search direction dk, is obtained as solution of the following algebraic linear system
where, as above, the sequence {ηk} with 0 < ηk < 1 for all k is called the forcing sequence. The local
convergence of the truncated Newton method is simply obtained by ensuring that the sequence {ηk} is
bounded away from 1.
The following results proved by Dembo, Eisenstat, and Steihaug (1982) are local and show the
convergence of the inexact Newton method.
Theorem 7.4 Suppose that ∇2f(x) exists and is continuous in a neighborhood of a minimizer x, with
∇2f(x) positive definite. Consider the iteration xkþ1 ¼ xk þ dk, where dk satisfies krkk ηkkgkk, and
assume that ηk η for some constant η 2 (0, 1). If the starting point x0 is sufficiently close to x, then
the sequence {xk} generated by the truncated Newton method converges to x and satisfies
2
∇ f ðx Þðxkþ1 x Þ bη∇2 f ðx Þðxk x Þ, ð7:43Þ
Proof In the following, an informal proof will be presented (Nocedal & Wright, 2006). Since the
Hessian matrix ∇2f(x) is positive definite at x and continuous near x, it follows that there exists a
positive constant L such that k∇2f(xk)1k L for all xk sufficiently close to x. Therefore, from (7.41)
and since krkk ηkk∇f(xk)k where ηk < 1, it follows that the inexact Newton step satisfies
ð1
∇f ðxkþ1 Þ ¼ ∇f ðxk Þ þ ∇ f ðxk Þd k þ ð∇f ðxk þ td k Þ ∇f ðxk ÞÞdk dt
2
0
ð7:44Þ
¼ ∇f ðxk Þ þ ∇ f ðxk Þd k þ oðkdk kÞ
2
When xk is close enough to x, it follows that the o(1) term in the last estimate is bounded by
(1 η)/2. Therefore, from (7.45), we obtain
1þη
k∇f ðxkþ1 Þk ðηk þ ð1 ηÞ=2Þk∇f ðxk Þk k∇f ðxk Þk, ð7:46Þ
2
that is, the norm of the gradient decreases by a factor of (1 þ η)/2 at this iteration. By choosing the
initial point x0 sufficiently close to x, it follows that this rate of decreases occurs at every iteration.
To prove (7.43), observe that under the smoothness assumptions, we have
Therefore, for xk close to x, it can be shown that the gradient ∇f(xk) differs from the scaled error
∇ f(x)(xk x) by only a relatively small perturbation. A similar estimate holds at xkþ1, so (7.43)
2
k∇f ðxkþ1 Þk
lim ¼ 0, ð7:48Þ
k!1 k∇f ðxk Þk
showing the superlinear convergence of the gradient norms k∇f(xk)k to zero. As a consequence, we
have the superlinear convergence of the iterates {xk} to x.
324 7 Inexact Newton Methods
By making the additional assumption that the Hessian ∇2f(x) is Lipschitz continuous near x, the
quadratic convergence of {xk} to x is obtained. In this case, the estimate (7.44) can be tightened to
∇f ðxkþ1 Þ ¼ r k þ O k∇f ðxk Þk2 :
thus indicating the quadratic convergence of the gradient norms to zero and also the quadratic
convergence of the iterates {xk} to x. These remarks can be assembled in the following theorem.
Theorem 7.5 Suppose that the conditions of Theorem 7.4 hold and assume that the iterates {xk}
generated by the inexact Newton method converge to x. Then, the rate of convergence is superlinear
if ηk ! 0. If in addition ∇2f(x) is Lipschitz continuous for x near x and if ηk ¼ O(k∇f(xk)k), then the
convergence is quadratic. ♦
The best selection of the sequence {ηk} is unknown. The only requirement is ηk ! 0. If ηk ! 0,
then the rate of convergence of the inexact Newton method is superlinear. If in addition ∇2f(x) is
Lipschitz continuous for x near x and if ηk ¼ O(k∇f(xk)k), then the convergence is quadratic. To
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
obtain the superlinear convergence, set ηk ¼ min 0:5, k∇f ðxk Þk : The quadratic convergence is
obtained for ηk ¼ min {0.5, k∇f(xk)k}.
In this method, the search direction is computed by applying the conjugate gradient method to the
Newton system (7.1) until the termination test (7.3) is satisfied. Recall that the conjugate gradient
method is designed to solve positive definite linear systems. However, it is quite possible for the
Hessian ∇2f(xk) to have negative eigenvalues when xk is far away from x. Therefore, the algorithm
terminates as soon as a direction of negative curvature is generated. This adaptation of Algorithm 5.2
produces a search direction dk which is a descent direction. Moreover, the adaptation guarantees that
the fast convergence rate of the pure Newton method is preserved, provided that the stepsize αk ¼ 1 is
used whenever it satisfies the acceptance criteria.
The following algorithm is a modification of Algorithm 5.2, which implements the inner iterations
to compute the search direction dk. In this algorithm, the linear system (7.1) is written as Bkd ¼ gk,
where Bk represents ∇2f(xk) and gk is ∇f(xk). For the inner conjugate gradient iterations, the search
directions are denoted by dj, and the sequence of iterates generated is denoted by zj. When Bk is
positive definite, the inner iteration sequence {zj} converges to the Newton step dNk , solution of
Bkd ¼ gk. At each outer iteration, a tolerance εk is computed, which specifies the accuracy of the
computed solution. To obtain the superlinear convergence, the forcing sequence is selected to be
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
ηk ¼ min 0:5, k∇f ðxk Þk :
7.4 Comparison of TN Versus Conjugate Gradient Algorithms 325
The main differences between the inner loop of Algorithm 7.1 and of Algorithm 5.2 are as follows:
the specific starting point z0 ¼ 0 is used; the positive tolerance εk allows the conjugate gradient
iterations to terminate at an inexact solution; and the negative curvature test dTj Bk dj 0 ensures that
dk is a descent direction for f at xk. If the negative curvature is detected at the very first iteration j ¼ 0,
then the returned direction d ¼ ∇ f(xk) is both a descent direction and a direction of nonpositive
curvature for f at xk (Nocedal & Wright, 2006). Algorithm 7.1 can be modified by introducing the
preconditioning in conjugate gradient iterations.
It is worth saying that the line-search Newton-CG algorithm does not require explicit knowledge
of the Hessian Bk ¼ ∇2f(xk). Instead, it requires only the Hessian-vector products of the form Bkd for a
given vector d. When the second-order derivatives are difficult to compute or the Hessian requires too
much storage, then the finite differencing can be used to calculate the Hessian-vector products. In this
case, the product ∇2f(xk)d can be approximated as
∇f ðxk þ hdÞ ∇f ðxk Þ
∇2 f ðxk Þd ¼ ð7:49Þ
h
for a certain small differencing interval h. The differencing interval h can be computed as
pffiffiffiffiffi
2 εm ð1 þ kxk kÞ
h¼ , ð7:50Þ
1 þ kd k k
where εm is the epsilon machine.
Observe that the truncated Newton method has two imbedded loops. The first outer loop implements
the Newton algorithm. The second inner loop implements the mechanism for an approximate solution
326 7 Inexact Newton Methods
Fig. 7.1 Performance of TN (Nash) versus conjugate gradient algorithms CONMIN, DESCON, CG-DESCENT, and
CG-DESCENTaw
to the Newton system. Two implementations of this method are known. In the first one (TN), given by
Nash (1985), a BFGS approximation of the Hessian is computed and an approximate solution to the
Newton system is determined by the Newton-CG algorithm. In the second one (TNPACK), given by
Schlick and Fogelson (1992a, 1992b), the Hessian matrix is computed by finite differences, and an
approximate solution to the preconditioned Newton system is computed by the Newton-CG
algorithm.
In the following, let us present a comparison between the truncated Newton method TN and the
conjugate gradient methods CONMIN, DESCON, CG-DESCENT with Wolfe line-search
(CG-DESCENT), and CG-DESCENT with the approximate Wolfe line-search (CG-DESCENTaw),
for solving 800 unconstrained optimization problems from the UOP collection, with the number of
variables in the range [1000, 10000]. Figure 7.1 illustrates the performance profile of these
algorithms.
Figure 7.1 illustrates that the conjugate gradient algorithms CONMIN, DESCON, CG-DESCENT,
and CG-DESCENTaw are way more efficient and more robust than TN. For example, subject to the
CPU time metric, observe that CG-DESCENTaw is the fastest in solving 526 problems, while TN is
the fastest in solving only 67 problems, etc. The modern conjugate gradient algorithms are able to
better catch the curvature of the minimizing function, thus reducing the number of the function and its
gradient evaluations and implicitly the CPU computing time. All these conjugate gradient algorithms
implement a lot of ingredients which improve their numerical performances: automatic restarts,
storing some additional information, using the approximate or the modified Wolfe line-search, etc.
7.5 Comparison of TN Versus L-BFGS 327
On the other hand, by taking an approximate solution of the Newton system, TN spends more time in
using the approximate search direction compared to the conjugate gradient algorithms.
A numerical study on the performances of the limited-memory BFGS method L-BFGS (Liu &
Nocedal, 1989) and on the truncated-Newton TN (Nash, 1985) was given by Nash and Nocedal
(1991). Some details on the truncated Newton method in the implementation of TN, given by Nash,
and on the limited-memory BFGS in the implementation of L-BFGS, given by Liu and Nocedal, are
as follows.
At each outer iteration of TN, an approximate solution to the Newton system is computed. This is
done by using an inner iteration based on a preconditioned linear conjugate gradient algorithm, as
described by Concus, Golub, and O’Leary (1976). If indefiniteness in the Hessian is detected, then the
inner iteration is stopped. This approximate solution, that is, the search direction, is then used in a
line-search to get a new point which approximates the minimizer of the minimizing function. TN
implements the strong Wolfe line-search described by Gill and Murray (1979). In TN, the conjugate
gradient used in the inner iteration is preconditioned by a scaled two-step limited memory BFGS
method with Powell’s restarting strategy used to reset the preconditioner periodically. More than that,
the matrix-vector products in TN required by the inner conjugate gradient algorithm are obtained by
finite differencing. The truncated Newton method TN requires storage for 16 vectors of length n.
The limited memory L-BFGS in the implementation of Liu and Nocedal uses a scaling at the first
iteration by a diagonal matrix suggested by Oren and Spedicato (1976). In L-BFGS, the approxima-
tion of the inverse Hessian is obtained by applying m BFGS corrections to the initial diagonal matrix,
using the m previous stored vectors si and yi. The stepsize is computed by using the strong Wolfe line-
search implemented in the subroutine CVSRCH of Moré and Thuente (1990) and by trying the
stepsize αk ¼ 1 first. The L-BFGS method requires 2m(n þ 1) þ 4n storage locations.
The conclusions of Nash and Nocedal (1991) for comparing TN with L-BFGS are as follows.
L-BFGS and TN use different principles to compute the search direction. L-BFGS uses a fixed,
low-cost formula requiring no extra derivative information. TN uses an elaborate, variable-cost
iteration with partial second-derivative information. Both of them use the cubic interpolation to
obtain the strong Wolfe conditions. The numerical experiments showed that neither algorithm is
clearly superior to the other one. In terms of the CPU computing time, neither algorithm is a clear
winner: the higher iteration cost of TN is compensated by a much lower iteration count, on average.
The performance of these algorithms appears to be correlated with the degree of nonlinearity: for
quadratic and approximately quadratic problems, TN outperforms L-BFGS. For highly nonlinear
problems, L-BFGS is the best. In terms of function evaluations, L-BFGS is preferable to TN for more
highly nonlinear problems. However, TN almost always requires fewer iterations than L-BFGS, and
therefore, if the number of the gradient evaluations in the inner iteration could be significantly
reduced, TN would be competitive or more efficient than L-BFGS. Subject to the distribution of
the eigenvalues of the Hessian, there is no clear correlation between the success of the methods and
the eigenvalue structure. For problems with ill-conditioned Hessians, TN seems to be better. The
clustering of the eigenvalues at the solution does not seem to be beneficial to one method more than to
the other one.
In the following, we shall present the performances of the L-BFGS (m ¼ 5) in the implementation
of Liu and Nocedal (1989) and of TN in the implementation of Nash (1985) for solving 80 uncon-
strained optimization test problems from our UOP collection, with n ¼ 1000, . . ., 10000. Figure 7.2
presents the Dolan and Moré performance profiles of TN versus L-BFGS (m ¼ 5) for solving this set
328 7 Inexact Newton Methods
of 800 unconstrained optimization test problems subject to the iterations calls, function calls, and
CPU time metric, respectively.
By comparing L-BFGS versus TN (see Fig. 7.2) subject to the number of iterations, we can see that
L-BFGS is better in 310 problems (i.e., it achieved the minimum number of iterations in
310 problems), while TN is better in 387 problems, etc. Out of 800 problems considered in this set
of numerical experiments, only for 728 problems does the criterion (1.3) hold.
Note that, subject to the number of iterations and to the number of function calls, TN is a top
performer. However, subject to the CPU time metric, L-BFGS is more efficient and more robust. Both
these algorithms are reliable for solving a large variety of large-scale unconstrained optimization
7.6 Solving Large-Scale Applications 329
problems. In our numerical experiments, we noticed that the performances of these methods do not
depend on the structure of the Hessian matrix of the problems.
Let us now present the performances of these algorithms for solving the applications from the
MINPACK-2 collection (see Appendix D). Table 7.1 presents the performances of TN in the
implementation of Nash (1985) for solving these applications, where n is the number of variables
(n ¼ nx ny, nx ¼ 200, ny ¼ 200), #iter is the number of iterations to get the solution, #fg is the
number of function and its gradient calls, and cpu is the CPU computing time in seconds for solving
the application.
Comparing Table 7.1 with Tables 6.2, 6.3, 6.4, 6.5, and 6.6, we can see that, subject to the number
of iterations and to the function calls, TN is better than L-BFGS, but subject to the CPU computing
time metric, both L-BFGS and TN have similar performances, L-BFGS being slightly faster.
The inexact or truncated Newton methods are designed for solving large-scale unconstrained optimi-
zation problems. Since for large-scale problems the factorization of the Hessian is prohibitive, it
follows that it is preferable to compute an approximate solution to the Newton step by using iterative
linear algebra techniques. TN by Nash implements such a technique. The resulting algorithm has the
global convergence property and with appropriate parameters may be superlinear convergent to the
solution. Besides, TN finds an effective search direction when the Hessian ∇2f(xk) is indefinite, being
implemented in a “Hessian-free” manner without explicit computation or storage of the Hessian.
Table 7.2 shows the performances of TN for solving five applications from the MINPACK-
2 collection, each of them with 250,000 variables (n ¼ nx ny, nx ¼ 500, ny ¼ 500).
Comparing the performances of TN subject to the CPU computing time versus the modern
conjugate gradient algorithms CG-DESCENT (Table 5.13) with 2401.01 seconds versus DESCON
(Table 5.14) with 1537.55 seconds and versus DKþ (Table 5.15) with 2643.24 seconds, we can see
that TN (Table 7.2) with 1223.89 seconds is a top performer. In the same realm of comparisons,
Table 7.1 Performances of TN for solving five applications from the MINPACK-2 collection (40,000 variables)
Table 7.2 Performances of TN for solving five applications from the MINPACK-2 collection (250,000 variables)
subject to the CPU time metric, we can see that TN (Table 7.2) with 1223.89 seconds is slightly faster
than L-BFGS (m ¼ 5) (Table 6.9) with 1247.09 seconds.
In the unconstrained optimization, two approaches are fundamental: the line-search and the trust-
region. Both of them generate steps by using a quadratic model of the minimizing function, but in
different ways. The line-search methods, presented in the previous chapters, generate a descent search
direction d and then determine a suitable stepsize α along this direction, hoping that the function
values will be reduced. On the other hand, the trust-region methods define a region around the current
iterate within which we trust the quadratic model to be an adequate representation of the minimizing
function and to choose the step which is the approximate minimizer of the model in this region.
Therefore, the trust-region methods choose the direction and the stepsize simultaneously. Of course,
if a step is not acceptable, the size of the region will be reduced and a new minimizer will be found.
The size of the trust-region is important in the economy of each step. If the region is too small, then
the algorithm will take small steps. If it is too large, the minimizer of the model may be far from the
minimizer of the function. The size of the region is selected based on the performance of the
algorithm at the previous iteration.
The purpose of this chapter is to present the trust-region method as well as its properties for
solving unconstrained optimization problems. For this, the concept of trust-region, the convergence
of the corresponding algorithm, and different techniques for solving the subproblems associated to
this method are to be developed. One of the best descriptions of the trust-region method is given by
Nocedal and Wright, (2006). We follow their developments.
Consider the problem min{f(x) : ℝn ! ℝ}, where f is continuously differentiable. Assume that for the
function f, around the current point xk, a quadratic model mk is used, which is based on the Taylor
series development
1
f ðxk þ dÞ ¼ f ðxk Þ þ gTk d þ d T ∇2 f ðxk þ td Þd, ð8:1Þ
2
where gk ¼ ∇ f(xk) and t is a scalar in the interval (0,1). Considering an approximation Bk to the
Hessian of the minimizing function f, the model mk is defined as
1
mk ðd Þ ¼ f ðxk Þ þ gTk d þ dT Bk d, ð8:2Þ
2
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 331
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_8
332 8 The Trust-Region Method
where Bk is a symmetric matrix. Observe that the difference between f(xk þ d) and mk(d) is of order
O(kdk2), which is small when kdk is small.
When Bk is equal to the true Hessian ∇2f(xk), the above difference is of order O(kdk3), showing that
the model is accurate when kdk is small. This choice of Bk ¼ ∇2f(xk) defines the trust-region Newton
method.
The step of the trust-region method is computed as solution of the following subproblem:
1
min mk ðd Þ ¼ f ðxk Þ þ gTk d þ dT Bk d,
d2ℝn 2
subject to ð8:3Þ
kd k Δ k ,
where the scalar λ 0 is the Lagrange multiplier associated to the trust-region constraints, the matrix
(∇2f(xk) þ λI) is positive semidefinite and
λðΔk kdk kÞ ¼ 0:
If ∇2f(xk) is positive definite and Δk is sufficiently large, then the solution of (8.3) is the solution of
the linear system
where f(xk) f(xk þ dk) is called the actual reduction and mk(0) mk(dk) is called the predicted
reduction (predicted by the model). The value of rk is crucial in the trust-region method.
Since the step dk is obtained by minimizing the model mk over a domain that includes d ¼ 0, it
follows that the predicted reduction will always be nonnegative. Therefore, if rk is negative, then the
new value of the minimizing function f(xk þ dk) is greater than the current value f(xk), and in this case,
this step must be rejected. On the other hand, if rk is close to 1, then there is a good agreement between
the model mk and the function f over this step, so it is safe to expand the trust-region for the next
iteration. Finally, if rk is positive but significantly smaller than 1, then the trust-region is not altered,
but if it is close to zero or negative, the trust-region is shrank by reducing Δk at the next iteration. This
strategy is described on steps as the trust-region algorithm.
1. Initialization. Select an initial point x0 and the initial trust-region radius Δ0 > 0. Choose the constants
0 < μ < η < 1 (e.g., μ ¼ 1/4 and η ¼ 3/4). Set k ¼ 0
2. For k ¼ 0, 1, . . .
(i) If xk is optimal, stop
(ii) Compute dk as an approximate solution of (8.3)
(iii) Evaluate the ratio rk from (8.4)
(iv) If rk μ, then set xkþ1 ¼ xk (unsuccessful step), else set xkþ1 ¼ xk þ dk (successful step)
(v) Update Δk:
If rk μ, then set Δkþ1 ¼ Δk/2,
If μ < rk < η, then set Δkþ1 ¼ Δk,
If rk η, then set Δkþ1 ¼ 2Δk.
End for ♦
In Algorithm 8.1, observe that the radius is increased only if kdkk actually reaches the boundary of
the trust-region. Otherwise, if the step stays strictly inside the region, then the value of the radius is
not changed for the next iteration. The value of rk shows how well the model predicts the reduction in
the function value. If rk is small, that is, rk μ, then the actual reduction in the function value is much
smaller than the one predicted by mk(dk), that is, the model cannot be trusted for a radius as large as
Δk. In this case, the step dk will be rejected and Δk will be reduced. On the other hand, if rk is large,
that is, rk η, then the model is adequately predicting the reduction in the function value, suggesting
that the model can be trusted over an even wider region. In this case, the radius Δk will be increased.
We now state a convergence theorem of the trust-region methods (see Griva, Nash, & Sofer,
2009). Additional theoretical results and discussions of the second-order optimality conditions can be
found in the paper by Moré (1983).
Proof Before presenting the proof, some comments are needed. Observe that the theorem does not
state that the sequence {xk} converges to a local minimum of f. It only states that ∇f(xk) ! 0. The
proof has two parts.
In the first part, it is proved that a subsequence of {k∇f(xk)k} converges to zero. The proof is by
contradiction. If no such subsequence converges to zero, then, for all sufficiently large values of k, it
follows that k∇f(xk)k ε > 0, where ε is a constant. However, we are interested only in the asymptotic
behavior of the trust-region algorithm, and therefore, the early iterations may be ignored, that is, we
may as well assume that k∇f(xk)k ε for all k. The first part of the proof has five major steps. The first
two steps establish the relationships among the quantities f(xk) f(xkþ1), mk(dk), Δk, and k∇f(xk)k.
The remaining steps use the assumption that k∇f(xk)k ε to obtain a contradiction. Step 3 shows that
limk ! 1Δk ¼ 0. If Δk is small, then kdkk is too, and the quadratic model must be a good prediction of
the actual reduction in the function value, that is, limk ! 1rk ¼ 1. If this it true, then the trust-region
algorithm will not reduce Δk, that is, limk ! 1Δk 6¼ 0, thus contradicting the result of step 3 and
proving the overall result. Let M be a constant satisfying k∇2f(xk)k M for all k. Observe that this
upper bound M exists because ∇2f(x)is continuous on the level set S that is closed and bounded
(compact).
The first part of the proof is as follows:
1 k∇f ðxk Þk
f ðxk Þ mk ðd k Þ k∇f ðxk Þk min Δk ,
2 M
by investigation how small mk could be if dk is a multiple of ∇ f(xk). For this, define the function
∇f ðxk Þ
ΦðαÞ ¼ mk α f ðxk Þ
k∇f ðxk Þk
T 2
∇f ðxk ÞT ∇f ðxk Þ 1 2 ∇f ðxk Þ ∇ f ðxk Þ ∇f ðxk Þ
¼ α þ α
k∇f ðxk Þk 2 k∇f ðxk Þk2
1
¼ αk∇f ðxk Þk þ α2 Mk ,
2
where Mk ¼ ∇ f(xk)T(∇2f(xk)) ∇ f(xk)/k∇f(xk)k2 k∇2f(xk)k M. Let α be the minimizer of Φ on the
interval [0, Δk]. Observe that α > 0. If 0 < α < Δk, then α can be determined by setting Φ0(α) ¼ 0,
showing that α ¼ k∇f(xk)k/Mk and
1 1
Φðα Þ ¼ k∇f ðxk Þk2 =Mk k∇f ðxk Þk2 =M:
2 2
On the other hand, supposing that α ¼ Δk, it follows that MkΔk k∇f(xk)k. This follows from the
fact that if Mk 0, then this is trivially satisfied; otherwise, this is a consequence of setting Φ0(α) ¼ 0,
since the solution of this equation must be Δk. Thus,
1 1
Φðα Þ ¼ ΦðΔk Þ ¼ Δk k∇f ðxk Þk þ Δ2k Mk Δk k∇f ðxk Þk:
2 2
Therefore, the desired result is obtained by observing that mk(dk) f(xk) Φ(α).
8.1 The Trust-Region 335
where μ is the constant used to test rk in the trust-region algorithm. Hence, from step 1, it follows that
f ðxk Þ f ðxkþ1 Þ ðf ðxk Þ mk ðdk ÞÞμ
1 k∇f ðxk Þk
μk∇f ðxk Þk min Δk , :
2 M
3. limk!1Δk ¼ 0: Since f is bounded below on S and the trust-region algorithm ensures that
f cannot increase at any iteration, it follows that limk!1f(xk) exists and is finite. Assume that
k∇f(xk)k ε > 0. If k is a successful step, then step 2 shows that
n o
1 ε
f ðxk Þ f ðxkþ1 Þ με min Δk , :
2 M
The limit of the left-hand side is zero, so lim ki !1 Δki ¼ 0, where {ki} are the indices of the
iterations where successful steps are taken. At successful steps, the trust-region radius is either kept
constant or doubled; at unsuccessful steps, the radius is reduced. Therefore, between successful steps,
2Δki Δki þ1 ⋯ Δkiþ1 : Thus, limk ! 1Δk ¼ 0.
4. limk ! 1rk ¼ 1: From the Taylor series of f(xk þ dk), it follows that
jf ðxk þ d k Þ mk ðdk Þj
1
¼ f ðxk Þ þ ∇f ðxk ÞT dk þ dTk ∇2 f ðxk þ ξk dk Þdk mk ðdk Þ
2
1 1
¼ dTk ∇2 f ðxk Þd k þ d Tk ∇2 f ðxk þ ξk d k Þdk
2 2
1 1
Mkdk k2 þ Mkd k k2 ¼ Mkdk k2 MΔ2k :
2 2
Using the bound from step 1 and the result of step 3, for large values of k, we get
1
f ðxk Þ mk ðd k Þ εΔk :
2
Therefore,
f ðx k Þ f ðx k þ d k Þ
jr k 1j ¼ 1
f ðxk Þ mk ðd k Þ
j f ðx k þ d k Þ m k ðd k Þj
¼
jf ðxk Þ mk ðd k Þj
MΔ2k 2M
¼ Δ ! 0:
εΔk =2 ε k
336 8 The Trust-Region Method
5. limk!1Δk 6¼ 0: If limk!1rk ¼ 1, then, for large values of k, the trust-region algorithm will not
decrease Δk. Therefore, Δk will be bounded away from zero.
where ε1 ¼ (με)/8. Because kxkþ1 xkk ¼ 0 for an unsuccessful step, it follows that this result holds
for ki k < li. Using this result repeatedly, we obtain
ε 1 kx k i x l i k
ε1 ðkxki xki þ1 k þ kxki þ1 xki þ2 k þ ⋯ þ kxli 1 xli kÞ
f ðxki Þ f ðxki þ1 Þ þ f ðxki þ1 Þ f ðxki þ2 Þ þ ⋯ þ f ðxli 1 Þ f ðxli Þ
¼ f ðxki Þ f ðxli Þ:
Since the right-hand side of the above result goes to zero, it follows that the left-hand side can be
made arbitrarily small. Since ∇f(x) is continuous on S and S is a compact, by choosing i large enough
it is possible to guarantee that
ε
k∇f ðxki Þ ∇f ðxli Þk :
4
With this, the following contradiction is obtained:
ε k∇f ðxki Þk ¼ kð∇f ðxki Þ ∇f ðxli ÞÞ þ ∇f ðxli Þk
ε ε ε
k∇f ðxki Þ ∇f ðxli Þk þ k∇f ðxli Þk þ ¼ < ε:
4 4 2
Therefore, limk!1k∇f(xk)k ¼ 0. ♦
The main problem with Algorithm 8.1 is how to solve the trust-region subproblem (8.3). In the
following, three strategies for obtaining an approximate solution of the subproblem (8.3) are
presented. They are based on the Cauchy point. This point is the minimizer of mk along the steepest
descent direction given by the negative gradient subject to the trust-region bound. The first approxi-
mate strategy is the dogleg method, which is appropriate when the Hessian Bk is positive definite. The
8.2 Algorithms Based on the Cauchy Point 337
second strategy, known as the two-dimensional subspace minimization, can be used when Bk is
indefinite. The third strategy, known as the trust-region Newton-CG strategy, is based on the
conjugate gradient method to minimize mk and is appropriate when Bk is large and sparse.
We emphasize that we seek an optimal solution for (8.3), but for the global convergence, it it enough
to find an approximate solution dk that lies inside the trust-region and gives a sufficient reduction in
the model.
It is more elaborate to obtain τk from (8.6), and for that, according to the sign of gTk Bk gk , the
following two cases should be considered. When gTk Bk gk 0, the function mk τd sk monotonically
decreases with τ whenever gk 6¼ 0. Therefore, in this case, τk is the largest value that satisfies the trust-
region bound, that is, τk ¼ 1. For the case gTk Bk gk > 0, mk τdsk is a convex quadratic function in τ. In
this case, τk is either the unconstrained minimizer of this quadratic, that is, kgk k3 = Δk gTk Bk gk , or the
boundary value 1, whichever comes first. In conclusion, the solutions of (8.5) and (8.6) are as follows:
Δk
d Ck ¼ τk g, ð8:8Þ
k gk k k
where
8
< 1, if gTk Bk gk 0,
n o
τk ¼ 3 ð8:9Þ
: min kgk k = Δk gTk Bk gk , 1 , otherwise:
Observe that the Cauchy point is not difficult to compute and is of a crucial importance in the
economy of the trust-region algorithm. Besides, the Cauchy point does not strongly depend on the
matrix Bk, which is used only in the computation of the step length. Obviously, a rapid convergence of
338 8 The Trust-Region Method
the algorithm is expected only if Bk is used in determining the direction and the length of the step and
if Bk contains useful curvature information about the minimizing function f. Some variants of the
trust-region algorithms compute the Cauchy point as above and then try to improve it. The improve-
ment strategy is designed in such a way so that the full step d Bk ¼ B1
k gk is chosen whenever Bk is
B
positive definite and dk Δk : When Bk is the exact Hessian ∇ f(xk) or a quasi-Newton approxi-
2
mation of it, then this improvement strategy can be expected to yield superlinear convergence. Now,
let us describe the methods for finding the approximate solutions to the subproblem (8.3).
ensures that the quadratic term in mk has little effect on the solution of (8.3). For such a small Δk, an
approximation to dk(Δk) can be obtained by omitting the quadratic term in (8.3) and by writing
gk
dk ðΔk Þ Δk , ð8:10Þ
kgk k
For the intermediate values of Δk, the solution dk ðΔk Þ follows a curved trajectory. The dogleg
method finds an approximate solution by replacing the curved trajectory for dk ðΔk Þ with a path
consisting of two line segments. The first-line segment runs from the origin to the minimizer of mk
along the steepest descent direction, which is
gTk gk
k ¼
dU g, ð8:11Þ
gTk Bk gk k
e
while the second-line segment runs from dU k to d k : This trajectory is denoted by d k ðτÞ for τ 2 [0, 2],
B
where
(
e τd U
k, 0 τ 1,
d k ðτ Þ ¼ B ð8:12Þ
dk þ ðτ 1Þ d k dk , 1 τ 2:
U U
The dogleg method chooses dk to minimize the model mk along this path subject to the trust-region
bound. The following proposition shows that the minimum along the dogleg path can be easily found.
Proof We restrict the analysis to the case τ 2 [1, 2]. For τ 2 [0, 1], both (i) and (ii) are easy to show.
For (i), let us define the function h(α) by
8.2 Algorithms Based on the Cauchy Point 339
2
1
hðαÞ ¼ dek ð1 þ αÞ
2
1 2
¼ d U
k þ α dBk d U
k
2
1
2 þ α d U T dB d U þ 1 α2 dB d U 2 :
¼ d U
k k k k k k
2 2
To prove (i), we must show that h0(α) 0 for α 2 (0, 1). However,
T U
h0 ð α Þ ¼ d U k dk dBk þ αdU k dk
B 2
T U
dU k dk dBk
gTk gk T gTk gk 1
¼ T g T g þ B k gk
g k Bk g k k gk Bk g k k
T 2 !
gTk B1
k gk gk gk
¼ gk gk T
T
1 T 0,
gk Bk g k gk Bk gk gTk B1
k gk
T
¼ dBk d U
k gk þ Bk dBk ¼ 0,
Let us now discuss the case in which the exact Hessian ∇2f(xk) is available to be used in the model
1
problem (8.3). When ∇2f(xk) is positive definite, simply set Bk ¼ ∇2f(xk), that is, dBk ¼ ∇2 f ðxk Þ gk,
and apply the above procedure to find the Newton-dogleg step. Otherwise, dBk can be computed by
choosing Bk to be one of the positive definite modified Hessian, as described in Sect. 4.5, and proceed
to find the dogleg step as above. d Bk will be set to the usual Newton step, near a solution that satisfies
the second-order sufficient conditions (see Theorem 11.13), thus allowing a rapid local convergence
of the Newton method. However, to use the modified Hessian in the Newton-dogleg method is not
benefic. A modified factorization perturbs the diagonal elements of ∇2f(xk) in an arbitrary way, and so
340 8 The Trust-Region Method
the benefits of the trust-region method may not be achieved. Anyway, the Newton-dogleg method
is most appropriate when the minimizing function is convex (i.e., ∇2f(xk) is always positive
semidefinite).
The Cauchy point dCk is feasible for (8.13), so the optimal solution of this subproblem yields at
least as much reduction in the model mk as the Cauchy point, thus ensuring the global convergence of
the algorithm. Observe that the two-dimensional subspace minimization strategy is obviously an
extension of the dogleg method, since the entire dogleg path lies in span gk , B1k gk : The case of
indefinite Bk was considered by Byrd, Schnabel, and Schultz (1988) and Schultz, Schnabel, and Byrd
(1985). When Bk has negative eigenvalues, the two-dimensional subspace in (8.13) is changed to
h i
span gk , ðBk þ αI Þ1 gk for some α 2 ðλ1 , 2λ1 , ð8:14Þ
where λ1 is the most negative eigenvalue of Bk.Of course, this choice of α ensures that Bk þ αI is
positive definite. When k(Bk þ αI)1gkk Δk, then the subspace search (8.13) and (8.14) is
discarded; instead, the step is defined as
where vk is a vector satisfying vTk ðBk þ αI Þ1 gk 0: This condition ensures that
1
kdkk k(Bk þ αI) gkk. When Bk has zero eigenvalues but no negative eigenvalues, the step is
defined to be the Cauchy point, i.e., dk ¼ dCk : Observe that the computational effort with this method
lies in a single factorization of Bk or of Bk þ αI.
In the following, let us discuss the finding of an approximate solution to the trust-region subproblem
(8.3) that produces improvements of the Cauchy point. This strategy is based on a modified conjugate
gradient algorithm and was designed by Steihaug (1983). The following algorithm, Algorithm 8.3,
generates the step dk which is used in Algorithm 8.1 for some choice of tolerance εk at each iteration.
The Steihaug algorithm finds an approximate solution to the subproblem (8.3), where Bk ¼ ∇2f(xk).
Denote the search directions of the modified conjugate gradient iteration by dj and the sequence of
iterates that it generates by zj.
8.4 The Global Convergence 341
Some remarks are as follows. The first “if” statement inside the loop stops the algorithm if its
current search direction dj is a direction of nonpositive curvature along Bk, while the second “if”
statement inside the loop determines the termination if zjþ1 violates the trust-region bound. In both
cases, the algorithm returns the step dk obtained by intersecting the current search direction with the
trust-region boundary. The choice of the tolerance εk at each iteration of Algorithm 8.3 is important in
keeping the overall cost of the trust-region Newton-CG method at a low level. Near a well-behaved
solution x, the trust-region bound becomes inactive, and the method reduces to the inexact (truncated)
Newton method analyzed in Chap. 7 (see Theorems 7.4 and 7.5). Therefore, the rapid convergence can
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
be obtained by choosing εk ¼ min 0:5, k∇f ðxk Þk k∇f ðxk Þk (see Algorithm 7.1).
The initialization of z0 to zero in Algorithm 8.3 is a crucial feature of the algorithm. Provided
k∇f(xk)k2 εk, Algorithm 8.3 terminates at a point dk for which mk ðdk Þ mk dCk , that is, when the
reduction in the model equals or exceeds the reduction of the Cauchy point. To show it, consider
several cases. First, if dT0 Bk d0 ¼ ð∇f ðxk ÞÞT Bk ∇f ðxk Þ 0, then the condition in the first “if”
statement is satisfied, and the algorithm returns the Cauchy point dk ¼ Δk(∇f(xk))/k∇f(xk)k.
Otherwise, Algorithm 8.3 defines z1 as follows:
If kz1k < Δk, then z1 is exactly the Cauchy point. Subsequent steps of Algorithm 8.3 ensure that
the final dk satisfies mk(dk) mk(z1). On the other hand, when kz1k Δk, the second “if” statement
is activated, and Algorithm 8.3 terminates at the Cauchy point. Another crucial property of Algorithm
8.3 is that the sequence of vectors {zj} generated by the algorithm satisfies
0 ¼ kz0 k2 < ⋯ < zj 2 < zjþ1 2 < ⋯ < kdk k2 Δk :
We start the global convergence analysis in this section by giving an estimate of the decrease in the mk
model achieved by the Cauchy point. Then, by using this estimate, we prove that the sequence of
gradients {gk} generated by Algorithm 8.1 has an accumulation point at zero, that is, this sequence
342 8 The Trust-Region Method
converges to zero when η is strictly positive. The first result is that the dogleg, the two-dimensional
subspace minimization, and the Steihaug algorithm produce approximate solutions dk to the subprob-
lem (8.3), solutions that satisfy the following estimate of the decrease in the model function
kgk k
mk ð0Þ mk ðdk Þ c1 kgk k min Δk , , ð8:16Þ
k Bk k
where c1 2 (0, 1] is a constant. In the next proposition, we show that the Cauchy point satisfies (8.16)
with c1 ¼ 1/2.
Proposition 8.2 The Cauchy point dCk satisfies (8.16) with c1 ¼ 1/2, that is,
C 1 kgk k
mk ð0Þ mk d k kgk k min Δk , : ð8:17Þ
2 k Bk k
kgk k 3
1: ð8:18Þ
Δk gTk Bk gk
From (8.9), it follows that τk ¼ kgk k3 = Δk gTk Bk gk . Now, from (8.8), it follows that
kg k4 1 kg k4
mk d Ck mk ð0Þ ¼ T k þ gTk Bk gk k 2
gk B k gk 2 g T Bk g k k
4
1 kgk k
¼
2 gTk Bk gk
4
1 kgk k
2 k Bk k kg k k 2
2
1 kgk k
¼
2 kB k k
1 kgk k
kgk k min Δk , ,
2 k Bk k
The last case is the one in which (8.18) does not hold, that is,
kgk k3
gTk Bk gk < : ð8:19Þ
Δk
To satisfy (8.16), the approximate solution dk has only to achieve a reduction that is at least some
fixed fraction c2 of the reduction achieved by the Cauchy point. This is shown in the following
theorem.
Then, dk satisfies (8.16) with c1 ¼ c2/2. If dk is the exact solution dk of (8.3), then it satisfies (8.16)
with c1 ¼ 1/2.
Observe that both the dogleg and the two-dimensional subspace minimization algorithms satisfy
(8.16) with c1 ¼ 1/2, because they all produce approximate solutions dk for which mk ðdk Þ mk dCk
(Nocedal & Wright, 2006).
The convergence to the stationary points depends on whether the parameter η in Algorithm 8.1 is
set to zero or to some small positive values. When η ¼ 0, then we can prove that the sequence of
gradients {gk} has a limit point at zero. When η > 0, then a stronger result follows, that is, gk ! 0.
Assume that the approximate Hessians Bk are uniformly bounded in norm and the minimizing
function f is bounded below on the level set
S ¼ fx : f ðxÞ f ðx0 Þg: ð8:20Þ
The following two theorems, proved by Nocedal and Wright (2006), show the global convergence
of Algorithm 8.1, both for the case η ¼ 0 and for η > 0.
Theorem 8.3 Let η ¼ 0 in Algorithm 8.1. Suppose that kBkk β for some constant β, f is bounded
below on the level set S defined by (8.20) and Lipschitz continuously differentiable in the neighbor-
hood S(R0) for some R0 > 0 and that all the approximate solutions of (8.3) satisfy the inequalities
(8.16) and (8.22) for some positive constants c1 and γ. Then,
Theorem 8.4 Let η 2 (0, 1/4) in Algorithm 8.1. Suppose that kBkk β for some constant β, f is
bounded below on the level set S defined by (8.20) and Lipschitz continuously differentiable in the
neighborhood S(R0) for some R0 > 0 and that all the approximate solutions dk of (8.3) satisfy the
inequalities (8.16) and (8.22) for some positive constants c1 and γ. Then,
lim kgk k ¼ 0: ♦
k!1
In this section, let us describe a technique for solving the subproblem (8.3). This is based on the
characterization of the exact solutions of (8.3), which is given by the following theorem due to Moré
and Sorensen (1983). The theorem shows that the solution dk of (8.3) satisfies
for some λ 0.
if and only if dk is feasible, and there is a scalar λ 0 such that the following conditions are satisfied:
λ Δk d k ¼ 0 ð8:25bÞ
Before proving the theorem, let us discuss some aspects of the conditions (8.25). The condition
(8.25b) is a complementarity condition that states that at least one of the nonnegative quantities λ and
Δk dk must be zero. Therefore, when the solution lies strictly inside the trust-region, we must
have λ ¼ 0 and, therefore, Bk dk ¼ gk with Bk positive semidefinite, from (8.25a) and (8.25c),
respectively.
Theorem 8.5 suggests an algorithm for finding the solution dk of (8.24). Either λ ¼ 0 satisfies
(8.25a) and (8.25c) with kdkk Δk, or else define
for λ sufficiently large such that (Bk þ λI) is positive definite and seeks a value λ > 0 such that
kdk ðλÞk ¼ Δk : ð8:26Þ
Observe that if λ > λ1, it follows that λj þ λ > 0 for all j ¼ 1, . . ., n. Therefore, kdk(λ)k is a
continuous, nonincreasing function of λ in the interval (λ1, 1). In fact, we have
lim kdk ðλÞk ¼ 0: ð8:29Þ
λ!1
Therefore, when qT1 gk 6¼ 0, then there is a unique value λ 2 (λ1, 1) such that kdk(λ)k ¼ Δ. Of
course, there might be other smaller values of λ for which kdk(λ)k ¼ Δ, but they will fail to satisfy
(8.25c).
346 8 The Trust-Region Method
Now, we are in the position to describe a procedure for computing λ 2 (λ1, 1) for which
kdk(λ)k ¼ Δ. Actually, there are two procedures: one for the case in which qT1 gk 6¼ 0 and the other
one for the case in which qT1 gk ¼ 0, as follows:
Case qT1 gk 6¼ 0: When Bk is positive definite and B1
k gk Δk , then the value λ ¼ 0 satisfies
(8.25), so the procedure can be terminated with λ ¼ 0. Otherwise, by using the Newton method, we
can find the value λ > λ1 that solves
φ1 ðλÞ ¼ kd k ðλÞk Δk ¼ 0: ð8:31Þ
Nocedal and Wright (2006) show that the disadvantage of this approach can be seen by consider-
ing the form of kdk(λ)k when λ is greater than, but close to λ1. For such a λ, the function φ1 can be
approximated by a rational function as
C1
φ1 ð λ Þ þ C2 ,
λ þ λ1
where C1 > 0 and C2 are constants. Obviously, this approximation is highly nonlinear and the Newton
method for the root-finding will be unreliable or slow. If the problem (8.31) is reformulated to be
almost linear near the optimal λ, the results obtained are better. By defining
1 1
φ2 ðλÞ ¼ ,
Δk kd k ðλÞk
from (8.28), it can be shown that for λ slightly greater than λ1, we have
1 λ þ λ1
φ 2 ðλÞ ,
Δk C3
for some C3 > 0. Therefore, φ2 is almost linear near λ1 and the Newton method for root-finding will
perform well, provided that it maintains λ > λ1. For solving the equation φ2(λ) ¼ 0, the Newton
method generates a sequence of iterates λ(l ) by setting
ðlþ1Þ ðlÞ φ2 λðlÞ
λ ¼ λ 0 ðlÞ , l ¼ 0, 1, . . . ð8:32Þ
φ2 λ
Algorithm 8.4 can be made practical by adding some safeguarding, for instance, when λ(l ) < λ1,
the Cholesky factorization Bk þ λðlÞ I ¼ RTk Rk will not exist. Anyway, an improved version of
8.5 Iterative Solution of the Subproblem 347
Algorithm 8.4 always converges to a solution of (8.26). The most difficult operation in Algorithm 8.4
is the Cholesky factorization of Bk þ λ(l )I. Of course, it is not necessary to get an accurate solution for
(8.26). Algorithm 8.4 is stopped after two or three iterations when an approximate solution is
computed.
Case qT1 gk ¼ 0: This case is a little more difficult because the limit (8.30) does not hold for λj ¼ λ1,
and therefore, there might not be a value λ 2 (λ1, 1) such that kdk(λ)k ¼ Δk. Of course, in this case,
the root-finding techniques described above will not work, since there is no solution for λ in the open
interval (λ1, 1). However, Theorem 8.4 assures us that the right value of λ lies in the interval
[λ1, 1), so there is only one possibility: λ ¼ λ1.
Observe that (Bk λ1I ) is singular. Therefore, there is a vector z such that kzk ¼ 1 and
(Bk λ1I)z ¼ 0. In fact, z is an eigenvector of Bk corresponding to the eigenvalue λ1, so, by the
orthogonality of Q, we have qTj z ¼ 0 for λj 6¼ λ1. From this property, it follows that, if we set
X qTj gk
d k ðλÞ ¼ q þ τz ð8:33Þ
λj þ λ j
j:λj 6¼λ1
j:λj 6¼λ1 λj þ λ
so it is always possible to choose τ to ensure that kdk(λ)k ¼ Δk. Therefore, the condition (8.25) holds
for this choice of dk and for λ ¼ λ1.
The following proposition deals with the unconstrained minimization of quadratics with the
Hessian positive semidefinite and constitutes a support for proving Theorem 8.5.
(i) m attains a minimum if and only if B is positive semidefinite and g is in the range of B. If B is
positive semidefinite, then every d satisfying Bd ¼ g is a global minimizer of m.
(ii) m has a unique minimizer if and only if B is positive definite.
Proof
(i) The “if” part. Since g is in the range of B, there is a d such that Bd ¼ g. For all w 2 ℝn, we can
write
1
mðd þ wÞ ¼ gT ðd þ wÞ þ ðd þ wÞT Bðd þ wÞ
2
1 T 1
¼ g d þ d Bd þ gT w þ ðBd ÞT w þ wT Bw
T
2 2 ð8:35Þ
1 T
¼ mðdÞ þ w Bw
2
mðdÞ,
For the “only if” part, let d be a minimizer of m. Since ∇m(d ) ¼ Bd þ g ¼ 0, it follows that g is in
the range of B. Also, we have ∇2m(d ) ¼ B positive semidefinite, giving the result.
(ii) The “if” part. The same argument as in (i) suffices with the additional argument that wTBw > 0
whenever w 6¼ 0. For the “only if” part, deduce as above that B is positive semidefinite. If B is not
positive definite, then there is a vector w 6¼ 0 such that Bw ¼ 0. Therefore, from (8.35), it follows
that m(d þ w) ¼ m(d), so the minimizer is not unique, giving a contradiction. ♦
λ
mk ðdÞ mk dk þ Δ2k d T d :
2
Therefore, from λ 0, it follows that mk ðd Þ mk dk for all d with kdk Δk. Therefore, d k is a
global minimizer of (8.24).
Conversely, we assume that d k is a global solution of (8.24) and show that there is a λ 0 that
satisfies (8.25). In the case d k < Δk , d k is an unconstrained minimizer of mk, and so
∇mk d k ¼ Bk dk þ gk , ∇2 mk dk ¼ Bk is positive semidefinite, and so the properties (8.25) hold
for λ ¼ 0.
For the remainder of the proof, assume that dk ¼ Δk : Then, (8.25b) is immediately satisfied, and
therefore, d k also solves the constrained problem
min mk ðdÞ subject to kdk ¼ Δk :
By applying the optimality conditions for this problem, we find that there is a λ such that the
Lagrangian function defined by
λ T
Lðd, λÞ ¼ mk ðdÞ þ d d Δ2k
2
has a stationary point at dk : By setting ∇d L d k , λ to zero, it follows that
λ
T
mk ðdÞ mk dk þ dk dk dT d :
2
Now, substituting the expression of gk from (8.38) into the above expression, we get
1 T
d dk ðBk þ λI Þ d dk 0: ð8:39Þ
2
Since the set of directions
(
d dk
w : w ¼
d d , for some d with kd k ¼ Δk g
k
The key to attaining the fast rate of convergence is that the solution of the trust-region subproblem
is well inside the trust-region and becomes closer and closer to the true Newton step. The steps that
satisfy this property are said to be asymptotically similar to the Newton steps. The following result
applies to any algorithm of the form of Algorithm 8.1 that generates steps that are asymptotically
similar to the Newton steps whenever the Newton steps satisfy the trust-region bound.
Then, the trust-region bound Δk becomes inactive for all k sufficiently large, and the sequence {xk}
converges superlinearly to x.
Proof Firstly, we seek a lower bound on the predicted reduction mk(0) mk(dk) for all the
sufficiently large k. Assume that k is sufficiently large, so that o dNk in (8.40) is smaller than
N N N N
d : When d Δk =2, it follows that kd k k d þ o d 2dN , while if dN >
k k k k k k
Δk =2, it follows that kdk k Δk < 2dNk : Therefore, in both cases,
kd k k 2dNk 2∇2 f ðxk Þ1 kgk k,
and so kgk k 12 kdk k=∇2 f ðxk Þ1 :
350 8 The Trust-Region Method
Since xk ! x, by the continuity of ∇2f(x) and by the positive definiteness of ∇2f(x), it follows that
the following bounds hold for all ksufficiently large
c1 c1
2 2 2 2 2 2 ≜ c 3 ,
4∇ f ðxk Þ∇ f ðxk Þ
1
8∇ f ðx Þ∇ f ðx Þ1
mk ð0Þ mk ðdk Þ c3 kd k k2 ,
for all k sufficiently large. By the Lipschitz continuity of ∇2f(x) near x and by using Taylor’s theorem,
it follows that
kd k k3 ðL=4Þ L L
j r k 1j ¼ kd k Δ: ð8:41Þ
c 3 kd k k2 4c3 k 4c3 k
As we know, the trust-region can be reduced only if rk < 1/4, so, from (8.41), it follows that the
sequence {Δk} is bounded away from zero. Since xk ! x, d Nk ! 0, and therefore, from (8.40),
kdkk ! 0. Therefore, for k sufficiently large, the trust-region bound is inactive, and eventually, the
bound dNk Δk =2 is always satisfied.
To prove the superlinear convergence, from (8.40), we have
kxk þ dk x k xk þ dNk x þ d Nk d k
¼ o kxk x k2 þ o d Nk ¼ oðkxk x kÞ,
Observe that if d k ¼ d Nk for all k sufficiently large, it follows that the sequence {xk} converges to
x . Under the condition of Theorem 8.6, a reasonable implementation of the dogleg and the subspace
8.6 The Scaled Trust-Region 351
Table 8.1 Performances of TRON for solving five applications from the MINPACK-2 collection
In this table, n is the number of variables, #iter is the number if iterations for solving the application, #f is the number
of function evaluations, #g is the number of gradient evaluations, #h is the number of the Hessian evaluations, #Hv is the
number of the Hessian-vector evaluations, #cg is the number of the conjugate gradient iterations, and cpu is the CPU
computing time in seconds
minimization with Bk ¼ ∇2f(xk) will eventually use the steps dk ¼ dNk , and therefore, the convergence
is quadratic. In the case of the dogleg and of two-dimensional subspace minimization methods, the
exact step d Nk is a candidate for dk, since d Nk lies inside the trust-region along the dogleg path and
inside the two-dimensional subspace (Nocedal & Wright, 2006).
The poor scaling of the problem is when the minimizing function is highly sensitive to small changes
in certain components of the variable x and relative insensitive to changes in other components of the
variable x. Poor scaling of function f means that x lies in a narrow valley, that is, the contours of the
minimizing function near x are eccentric ellipses. Since the trust-region around the current iterate
within the model mk(.) is an adequate representation of the minimizing function f, it is easy to see that
a spherical trust-region may not be appropriate when f is poorly scaled. Therefore, better is to use the
elliptical trust-regions in which the axes are short in the sensitive directions and longer in the less
sensitive directions. Elliptical trust-regions are defined by
kDd k k Δk ,
where D is a diagonal matrix with positive diagonal elements. Elliptical trust-region yield to the
following scaled trust-region subproblem:
352 8 The Trust-Region Method
1
min mk ðd Þ ≜ f ðxk Þ þ dT gk þ d T Bk d, subject to kDd k k Δk :
d2ℝn 2
When the minimizing function f is highly sensitive to the value of the i-th component xi of vector x,
then the corresponding diagonal element dii of D is assigned to a large value, while dii is small for
less-sensitive components of x. Obviously, the diagonal elements of the scaling matrix D may be
2
obtained from the second derivatives ∂ f =∂x2i :
For scaled trust-region method, the Cauchy point calculation is changed according to the following
algorithm.
and
8
>
> 1, if gTk D2 Bk D2 gk 0,
< ( 1 3 )
τk ¼ D g
>
> min 1,
k
, otherwise:
: Δk gTk D2 Bk D2 gk
dCk ¼ τk dsk :
The scaling matrix D may be changed from iteration to iteration; most of the theoretical results on
trust-region methods will still apply with minor modifications under condition that each diagonal
element dii of D satisfies 0 < dlo dii < dhi < 1 , where dlo and dhi define a range [dlo,dhi].
software for trust-region methods before 1982 were presented by Moré (1983). Dennins and Schnabel
(1989) survey trust-region methods emphasizing important developments in literature. The general
theory of the inexact trust-region methods was presented by Byrd, Schabel, and Schultz (1988). They
introduced the two-dimensional subspace minimization method for trust-region and discussed the
case of indefinite B to ensure stronger convergence results than that given by Theorems 8.3 and 8.4.
An exhaustive presentation of the state of the art in trust-region methods both for unconstrained and
constrained optimization could be found in the monograph of Conn, Gould, and Toint (2000). For the
convergence of trust-region algorithms for unconstrained minimization without derivatives, see
Powell (2011).
In our presentation, the trust-region method was defined in Euclidian norm, but it could be defined
in other norms as kdkk1 Δk or kdkk1 Δk, or scaled as kDdkk1 Δk or kDdkk1 Δk, where D is a
diagonal positive definite matrix. The most advantageous is the 1-norm, in which case the feasible
region is the rectangular box defined by xk þ d 0, d Δke, and d Δke, where e ¼ [1, 1, . . ., 1]T.
In this case, the solution of the subproblem is easily computed by using the simple bound-constrained
optimization (see Chap. 12).
The trust-region algorithm is also implemented in filterSQP (Fletcher & Leyffer, 1998) which is a
sequential quadratic programming solver with a filter to promote global convergence and in
KNITRO/INTERIOR-CG (Byrd, Hribar, & Nocedal, 1999) with sequential quadratic programming.
Direct Methods for Unconstrained
Optimization 9
where f : ℝn ! ℝ is bounded from below on ℝn and n is relatively small, let us say n 50. Many
algorithms have been proposed to solve this problem, but in this chapter, we are interested in dealing
with the case in which the derivatives of this function are unavailable, impractical to obtain, or
unreliable. The optimization methods that use only the function values are called derivative-free
optimization or direct search methods or zeroth-order methods.
Excellent reviews and perspectives with an emphasis on highlighting recent developments of the
derivative-free optimization methods both for unconstrained and constrained optimization with
deterministic, stochastic, or structured objectives were given by Kolda, Lewis, and Torczon (2003),
Rios and Shainidis (2013), and Larson, Menickelly, and Wild (2019). A review of the derivative-free
algorithms followed by a systematic comparison of 22 related implementations using a test set of
502 problems was given by Rios and Shainidis (2013). Their conclusion is not definitive. They
emphasize that the ability of all these solvers to obtain good solutions diminishes with the increasing
problem size. Besides, attaining the best solutions even for small problems is a challenge for most
current derivative-free solvers, and there is no single solver whose performance dominates the
performances of all the others. The dimensionality of the problems and the non-smoothness rapidly
increase the complexity of the search and decrease the performances of all the solvers. In conclusion,
there is a large diversity of derivative-free optimization methods with an impressive development.
More details on derivative-free methods can be found in Andrei (2021a).
Addressing the optimization problems that arise from scientific engineering, from artificial
intelligence applications, or from some other areas of activity for which the objective and the
constraints are available as a mixture of a mathematical model and the output of a black-box or a
simulation oracle that does not provide derivative information, this chapter has a special position in
the architecture of the book. From the multitude of derivative-free optimization algorithms, we have
selected only the algorithm of Nelder-Mead (NELMED) (see Nelder & Mead, 1965), Powell
(NEWUOA) (see Powell, 2003, 2004, 2006), and Andrei (DEEPS) (see Andrei, 2021a).
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 355
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_9
356 9 Direct Methods for Unconstrained Optimization
The Nelder-Mead algorithm has numerous interpretations. In the following, one of the simplest but
sufficiently complete will be discussed. This method is based on simplexes. A simplex in ℝn is a n þ 1
element set of n-dimensional vertices with a nondegenerate set of edges. More exactly, a simplex
S ⊂ ℝn is a set of n þ 1 vertices {x1, . . ., xnþ1} ⊂ ℝn connected by the edges
E ¼ ðx2 x1 , x3 x1 , . . . , xnþ1 x1 Þ
In this context, the vertex xk1 with the lowest function value is referred to as the lowest vertex. The
vertex with the highest value is the highest vertex.
At the beginning of each iteration, the centroid point is computed as
1X k
n
x¼ x:
n i¼1 i
At each step, a trial point is computed. Each iteration may have one of the following two
outcomes: (1) one of the computed trial points with a lower function value replaces the highest
vertex or (2) a shrink operation is performed.
The Nelder-Mead simplex algorithm uses four different trial points xr, xe, xoc, and xic as follows:
1: Re flection ðρ > 0Þ : xkr ¼ x þ ρ x xknþ1 , ð9:3Þ
2: Expansion ðη > max f1, ρgÞ : xke ¼ x þ η xkr x , ð9:4Þ
3: Outside contraction ð0 < γ < 1Þ : xkoc ¼ x þ γ xkr x , ð9:5Þ
4: Inside contraction ð0 < γ < 1Þ : xkic ¼ x γ x xknþ1 : ð9:6Þ
If none of the trial points yields improvement of the minimizing function, then a shrink operation is
performed. Standard values of the parameters in (9.3, 9.4, 9.5, and 9.6) are ρ ¼ 1, η ¼ 2, γ ¼ 1/2. A
shrink operation transforms the simplex vertices xk2 , . . . , xknþ1 according to the following rule:
xeki ¼ xk1 þ σ xki xk1 , ð9:7Þ
The hope is that the successive decreases of the values of the function f at the simplex vertices
eventually lead to the convergence to x. The convergence of the algorithm was established only for
problems with a small number of variables (Lagarias, Reeds, Wright, & Wright, 1998).
Since the algorithm is based only on comparisons among the function values, then a reasonable
stopping criterion is f xknþ1 f xk1 ε, where ε is a positive constant, sufficiently small. Another
stopping criterion is based on the volume of the simplex V(Sk) ε, where V(Sk)is computed as
jdetðEk Þj
V ð Sk Þ ¼ :
n!
As regards the initial simplex, a practical choice is to compute the vertices as x0iþ1 ¼ x01 þ λi ei ,
i ¼ 1, . . ., n, where x01 is the given starting point x0, λi for i ¼ 1, . . ., n, are given scalars, and ei are the
unit vectors corresponding to the i-th coordinate axis. In this case, the volume of the initial simplex
can be computed as
1 Y
nþ1
V ð S0 Þ ¼ x0 x0 :
n! i¼2 i 1
Several details on the properties and convergence of the Nelder-Mead algorithm can be found in
Lagarias, Reeds, Wright, and Wright (1998). A convergent variant of the Nelder-Mead algorithm was
given by Price, Coope, and Byatt (2002).
NEWUOA is an iterative algorithm which seeks the least value of a function f : ℝn ! ℝ, when f can
be computed for any vector of variables x. A short description of NEWUOA is as follows. At the
358 9 Direct Methods for Unconstrained Optimization
beginning of each iteration, the NEWUOA algorithm uses a quadratic model Q which is embedded
into a trust region procedure for adjusting the variables. The model Q is revised at each iteration.
When Q is revised, the new Q interpolates f at m points, where the recommended value of m is 2n þ 1.
The remaining freedom in the new Q is taken up by minimizing the Frobenius norm of the change to
∇2Q. Only one interpolating point is altered at each iteration. Therefore, the amount of work per
iteration is only of order (m þ n)2.
At the beginning of each iteration, the model Q(x) has to satisfy only m interpolating conditions
Q(xi) ¼ f(xi), i ¼ 1, . . ., m, where the position of different points xi, i ¼ 1, . . ., m, is generated
automatically. The algorithm implements a technique that is suggested by the symmetric Broyden
method for updating ∇2Q when the first derivatives of f are available. Let the old model Qold be known
and the new model Qnew be asked to satisfy some conditions that are compatible and that leave some
freedom in the parameters of Qnew. The technique tries to minimize k∇2Qnew ∇2QoldkF, where k.kF
is the Frobenius norm. The conditions on the new model Q ¼ Qnew are the interpolating equations
Q(xi) ¼ f(xi), i ¼ 1, . . ., m. Thus, ∇2Qnew is uniquely defined and Qnew itself is also unique.
At the beginning of the current iteration, the variables are updated as xnew ¼ xopt þ d, where xopt
corresponds to f(xopt), the least calculated value of f so far. If the error |f(xnew) Qold(xnew)| is
relatively small, then the model predicted well the new value of f, even if the errors of the
approximation ∇2Q ∇2f are substantial. On the other hand, if |f(xnew) Qold(xnew)| is relatively
large, then by satisfying Qnew(xnew) ¼ f(xnew), the updating technique should improve the accuracy of
the model. The change in the variables d is an approximate solution to the trust region subproblem
min Q xopt þ d subject to kdk Δ:
The algorithm uses a number of parameters: ρbeg, ρend, ρold, ρnew, and Δ. The initial interpolating
points xi, i ¼ 2, . . ., m, include x0, while the other points have the property kxi x0k1 ¼ ρbeg. The
parameter ρend, which has to satisfy ρend ρbeg, should have the magnitude of the required accuracy
in the final values of variables. The parameter ρ is a lower bound on the trust region radius Δ from the
interval [ρend, ρbeg]. The purpose of ρ is to maintain enough distance between the interpolating points.
The value of Δ is revised on most iterations.
On steps, the algorithm NEWUOA is as follows:
1. Select the initial interpolating points. Let xopt be an initial point where f is the least
2. Compute d by approximately minimizing Q(xopt þ d ) subject to kdk < Δ
3. If kdk ρ/2, then go to step 4; otherwise, go to step 10
4. Calculate f(xopt þ d ) and set r ¼ (f(xopt) f(xopt þ d ))/(Q(xopt) Q(xopt þ d )). Thus, Δ is revised subject to
Δ ρ. The parameter move is set to zero or to the index of the interpolating point that will be dropped next
5. If move > 0, then Q is modified so that Q interpolates f at xopt þ d instead of xmove. If f(xopt þ d ) < f(xopt),
then xopt is overwritten by xopt þ d. Go to step 6
6. If r 0.1, then go to step 2; otherwise, go to step 7
7. Let xmove be the current interpolating point that maximizes the distance dist ¼ kxmove xoptk
8. If dist 2Δ, then xmove is replaced by xopt þ d, set r ¼ 1 and go to step 5. Otherwise, if max{kdk, Δ} ρ
and r 0, go to step 9
9. If ρ ¼ ρend, then compute f(xopt þ d ) and stop. Otherwise, reduce ρ about a factor of 10 subject to
ρ ρend. Reduce Δ ¼ max [ρold/2, ρnew] and go to step 2
10. If three recent values of kdk and f Q are small, then go to step 9; otherwise, reduce Δ by a factor of
10 or to its lower bound ρ. Set r ¼ 1. Set xmove to be the current interpolating point that maximizes the
distance dist ¼ kxmove xoptk and go to step 8 ♦
In the following, we present a new derivative-free random search method at two levels, which is
completely different from the known randomized methods for the unconstrained optimization.
Roughly speaking, our method is close to pure random search, but extended at two levels (Andrei,
2021a)
Suppose that all the variables are in a domain D ⊂ ℝn defined by some bounds on variables. Some
of these bounds are imposed by the physical constraints which define the problem. Others are
artificially introduced, for being used in our algorithm. Anyway, we consider that all the variables
are bounded by some known bounds, the same for all of them. Suppose that the minimum value of the
function f is known as f opt. Assume that the function f is continuous and bounded below on ℝn.
The idea of the algorithm is as follows. Set the current iteration iter ¼ 1 and assign a value to the
maximum number of iterations admitted by the algorithm as maxiter. Suppose that the searching of
the minimum of the function f starts from the initial point x0 2 ℝn. Consider an initial domain
D ⊂ ℝn defined by its bounds (lower and upper) to each of the n variables. These limits may be the
same for all the variables, let us say lobnd and upbnd. In other words, if on components we have
xi ¼ x1i , . . . , xni , then assume that lobnd xli upbnd for all l ¼ 1, . . ., n. Of course, the bounds
lobnd and upbnd can be different for different components of the variables xi, but in the following, we
assume that they are the same for each component xli , l ¼ 1, . . . , n: We emphasize that these bounds
lobnd and upbnd may be the bounds defining the optimization problem and imposed by the
engineering constructive specifications of the minimizing problem.
Around the initial point x0, we randomly generate over D a number N of trial points, x1, . . ., xN,
where xj 2 ℝn, for j ¼ 1, . . ., N. If N ¼ n þ 1, then these points define a simplex in Rn, i.e., the convex
hull of its n þ 1 points x1, . . ., xnþ1. Otherwise, if N 6¼ n þ 1, we say that we have a geometric
structure which we call a complex in ℝn. Obviously, N may be larger or smaller than the number
of variables n, or even equal to n. Evaluate the minimizing function f in these points, thus obtaining
f(x1), . . ., f(xN).
Now, for every trial point xj, j ¼ 1, . . ., N, let us define the local domains Dj ⊂ ℝn by specifying
the bounds, let us say lobndc and upbndc. Of course, these bounds may be different for every trial
point, but in our development, we consider them equal for every trial point. Using these bounds
lobndc and upbndc around each trial point xj, we randomly generate M local trail points x1j , . . . xM j ,
where xij 2 ℝn , for i ¼ 1, . . ., M. In other words, around the trial point xj, the local trial points
x1j , . . . xM
j are bounded by the limits lobndc and upbndc. Usually, the local domains Dj are smaller
than the domain D, but this is not compulsory. Now, evaluate the function f in these local trial points,
thus obtaining f x1j , . . . , f xM
j for any j ¼ 1, . . ., N.
With this, determine the local point xkj corresponding to the minimum value from the set
n
o
n
o
f x1j , . . . , f xM
j , i.e., f xkj ¼ min f x1j , . . . , f xMj : The following decision is now
taken: if f xkj < f xj , then replace the trial point xj with the local trial point xkj and the value f(xj)
with f xkj :
The above procedure is repeated for every trial point xj, j ¼ 1, . . ., N. At the end of this cycle, if the
case, the trial points xj, j ¼ 1, . . ., N, are replaced by the local trial points xkj , j ¼ 1, . . ., N, for which
the function value f xkj might be smaller than f(xj). Let us denote these new trial points by y1, . . ., yN,
360 9 Direct Methods for Unconstrained Optimization
i.e., yj ¼ xkj , j ¼ 1, . . ., N, and the function values in these points by f(y1), . . ., f(yN), i.e.,
f yj ¼ f xkj , j ¼ 1, . . ., N.
Now, determine the point yk corresponding to the minimum values of the minimizing function,
i.e., f(yk) ¼ min {f(y1), . . ., f(yN)}.
For j ¼ 1, . . ., N, j 6¼ k, where k is the index corresponding to the minimum value f(yk), compute the
middle point zj ¼ (yk þ yj)/2 and evaluate the minimizing function in this point, thus obtaining f(zj).
For j ¼ 1, . . ., N, j 6¼ k, if f(zj) < f(yj), then replace the point yj with zj and the value f(yj) with f(zj);
otherwise, do not replace them. Set zk ¼ yk and f(zk) ¼ f(yk). At this step of the algorithm, another set
of new trial points denoted as z1, . . ., zN is obtained, for which the function values f(z1), . . ., f(zN) might
be smaller than the previous values of the minimizing function f.
Now, determine f max ¼ max {f(z1), . . ., f(zN)}, corresponding to the trial point zmax from the set of
points {z1, . . ., zN}. Similarly, determine f min ¼ min {f(z1), . . ., f(zN)}, corresponding to the trial
point zmin from the set of points {z1, . . ., zN}. Compute the middle point zm ¼ (zmax þ zmin)/2 and the
function value in this point f(zm).
In the following, for j ¼ 1, . . ., N, where the index j is different from the indices corresponding to
the minimum and maximum points zmin and zmax, respectively, if f(zm) < f(zj), then compute the
reflected point zr ¼ αzm zj, and if f(zr) < f(zj), then replace zj by the reflected point zr, i.e., set zj ¼ zr
and f(zj) ¼ f(zr). Notice that α is a positive coefficient known as the reflection coefficient, often
selected as α 2 [1, 2], usually close to 2.
At the end of this cycle, some of the trial points zj, j ¼ 1, . . ., N, have been replaced by their
reflected points. Therefore, we have a new set of trial points {z1, . . ., zN} for which the function
values {f(z1), . . ., f(zN)} might be smaller than the previous values.
Intensive numerical experiments have shown that the values of the minimizing function are
significantly reduced in the first few iterations, after which the algorithm is stalling, i.e., the function
values are very slowly reduced along the iterations. In order to accelerate the algorithm, the following
step is implemented. If the difference between the minimum values of the minimizing function at two
successive iterations is smaller than a positive, small enough threshold δ, then a simple line-search
with a positive step β or with a negative step β is initiated from the current minimum point along the
direction determined by the minimum point and the second minimum point. Thus, if the function
value is reduced, then the minimum point is replaced by the new trial point. Again, at the end of this
step, it is possible for the minimum trial point zmin to be replaced by another point for which the
function value is smaller. Therefore, another set of trial points {z1, . . ., zN} is obtained, for which the
function values {f(z1), . . ., f(zN)} might be smaller than the previous values.
Now, determine f max ¼ max {f(z1), . . ., f(zN)} corresponding to the trial point zmax from the set of
trial points {z1, . . ., zN}. Similarly, determine f min ¼ min {f(z1), . . ., f(zN)} corresponding to the trial
point zmin from the set of trial points {z1, . . ., zN}.
From this set of trial points {z1, . . ., zN}, at the iteration iter, determine the point zk corresponding
to the minimum values of the minimizing function, i.e., f(zk) fiter ¼ min {f(z1), . . ., f(zN)}.
At the iteration iter, compute the difference: diter ¼ |f(zk) f opt| |fiter f opt|. With these, the
following decisions are implemented:
• If |f max| > B, where B is a positive constant sufficiently large, then reduce the bounds lobnd and
upbnd, as, for example, lobnd/2 and upbnd/2, respectively. Set iter ¼ iter þ 1 and go to generate
around the initial point x0 a new set of trial points by using the reduced bounds lobnd/2 and upbnd/
2. At the end of this decision, the bounds lobnd and upbnd are likely to be reduced.
9.3 The DEEPS Algorithm 361
• If diter 6¼ diter1, then, if diter > ε, set iter ¼ iter þ 1 and diter 1 ¼ diter. If iter > max iter, then go to
the final step, else go to the next step. If diter ¼ diter 1, then reduce the bounds of the local domain,
i.e., set lobndc ¼ lobndc/2 and upbndc ¼ upbndc/2. If diter > ε, then set iter ¼ iter þ 1, and if
iter > max iter, then go to the final step, else go to the next step. At the end of this decision, the
lower and upper bounds of the local domains lobndc and upbndc might be reduced.
• Here we have the next step, where the following decision is taken: if |fiter fiter1| < t, where t is a
prespecified small threshold, then reduce the complex, i.e., for j ¼ 1, . . ., N, compute
zj ¼ zmin þ (zj zmin)/2.
At this iteration, set fiter1 ¼ fiter, and for j ¼ 1, . . ., N, set xj ¼ zj and go to the next iteration by
generating M local trail points x1j , . . . xM
j around each new trial points xj, j ¼ 1, . . ., N.
The final step: improve the minimum point obtained as above by randomly selecting a number
Q of points in a domain C defined by the bounds lobndcc and upbndcc, smaller than lobndc and
upbndc, respectively. Evaluate the minimizing function in these Q points, and select the minimum
value from them, which corresponds to the solution of the problem.
More exactly, on steps, the algorithm may be described as follows:
1. Initialization. Select: an initial point x0, the number N of a set of trial points and the number M of the set
of local trial points around each trial point. Select ε > 0 small enough. Select the bounds lobndand upbnd
which determine the set of trial points, the bounds lobndc and upbndcwhich determine the set of local
trail points, the bounds lobndcc and upbndcc which determine the final trail points around the minimum,
as well as the threshold t small enough. Select B a positive constant sufficiently large. Select a value for
the coefficient α used in the reflection of points and a value for the coefficient β used in a line-search
along the direction determined by the minimum trial point and by the second minimum trial point. Select
a value for the parameter δ used in initiating the above line-search. Set iter ¼ 1 and maxiter as the
maximum number of iterations admitted by the algorithm
2. Around x0, randomly generate N trial points x1, . . ., xN in a domain D defined by the lower bound
lobndand by the upper bound upbnd on variables
3. Evaluate the minimizing function f in the trial points f(x1), . . ., f(xN)
4. For j ¼ 1, . . ., N, around xj do:
(a) Generate M points x1j , . . . xMj in the domains Dj defined by the bounds lobndc and upbndc,
smaller than
thebounds of
the domain D. Evaluate the function in these points, thus obtaining
the values f x1j , . . . , f xM
j
(b) Determine the point xkj corresponding to the minimum values f xkj ¼
n
o
min f x1j , . . . , f xM
j
(c) If f xkj < f xj , then replace the trial point xj by xkj and the value f(xj) by f xkj
End for
[By these replacements, at the end of this cycle, another set of new trial points denoted as y1, . . ., yN is
obtained, for which the function values are f(y1), . . ., f(yN).]
5. Determine the point yk corresponding to the minimum values of the minimizing function:
f(yk) ¼ min {f(y1), . . ., f(yN)}
6. For j ¼ 1, . . ., N, j 6¼ k, do:
(a) Compute the point zj ¼ (yk þ yj)/2
(b) Evaluate the minimizing function in this point, thus obtaining f(zj)
(c) If f(zj) < f(yj), then replace the point yj by zj and the value f(yj) by f(zj)
End for
362 9 Direct Methods for Unconstrained Optimization
Else
Go to step 19
End if
End if
min
17. If f iter min
f iter1 < t, then reduce the complex:
For j ¼ 1, . . ., N
compute zj ¼ zmin þ (zj zmin)/2
End for
End if
18. min
Set f iter1 ¼ f iter
min
To ensure the convergence, the algorithm implements three actions in steps 14, 16, and 17.
1. At step 14, if the maximum absolute value of the minimizing function f computed in the current
trial points is greater than a prespecified value B sufficiently large, let us say B ¼ 105, then the
bounds lobnd and upbnd are halved. Therefore, the algorithm generates a sequence of points in
bounded domains.
2. Based on the differences between the minimum values of the minimizing function and the known
optimum value at two successive iterations, step 16 implements a procedure for halving the bounds
lobndcand upbndc of the local domains, thus shrinking the local search domains.
3. If the difference between the minimum values of the minimization function at two successive
iterations is smaller than a threshold t, then the algorithm reduces the complex in step 17.
The algorithm keeps a balance between the threshold δ for initiating the line-searches in step
12 and the threshold t for reducing the complex in step 17. In general, the values for δ are selected as
being smaller than those of t. Usually, δ ¼ 104 and t ¼ 102, but some other values are acceptable.
Numerical experiments have shown that the algorithm has two phases: the reduction phase and the
stalling one. In the reduction phase, for some problems, the function values are significantly reduced
for the first few iterations. After that, the algorithm gets into the stalling phase, where the function
values are reduced very slowly. Both thresholds δ and t are introduced to accelerate the algorithm, i.e.,
to diminish the stalling. Depending on the value of the threshold δ, a line-search is initiated from the
minimum point along the direction determined by the minimum point and the second minimum point,
corresponding to the current set of trial points. Similarly, depending on the value of the threshold t,
the algorithm reduces the complex.
In the following, let us discuss and present some key elements of the algorithm by illustrating the
evolution of the maximum distance among the trial points, as well as the evolution of the maximum
distance among the trial points and the local trial points along the iterations.
At iteration iter,for any two points xi and xj, from the set of trials points, let us define the distance
ij ¼ xi xj 2 , for i, j ¼ 1, . . ., N, i 6¼ j. Of course, this distance depends
between these points as d iter
on the bounds lobnd and upbnd. Now, let us determine a pair of trial points xu and xv, from the set of
trials points, so that
uv ¼ kxu xv k2 ¼
d iter max diter
ij , ð9:8Þ
i, j¼1, ..., N, j>i
364 9 Direct Methods for Unconstrained Optimization
iter
i.e., d iter
uv is the maximum distance among the trial points. With this, define the sphere S centered in
point cuv ¼ (xu þ xv)/2 of ray r uv ¼ d uv =2: Obviously, the volume of this sphere is
iter iter
π 3
V iter ¼ d iter
uv : ð9:9Þ
6
Proposition 9.1 At iteration iter, all the trial points belong to the sphere Siter.
Proof Suppose by contradiction that a trial point xp 2 = Siter. Then, if kxu xpk kxu xvk, then
kxv xpk kxu xvk, i.e., d uv is not the maximum distance among the trail points at iteration iter.
iter
Similarly, if kxv xpk kxu xvk, then kxu xpk kxu xvk, i.e., diter
uv is not the maximum distance
among the trail points at iteration iter. Therefore, xp has to belong to Siter. ♦
min
Proposition 9.2 At iteration iter, if f iter min
f iter1 < t, then Viter ¼ Viter 1/8.
Proof Let d iter1 be the maximum distance among the trial points at iteration iter 1 determined by
uv min
the trial points xu and xv. Observe that at iteration iter, if f iter min
f iter1 < t, then algorithm DEEPS
reduces the complex, i.e., for j ¼ 1, . . ., N, the new trial points are computed as xj ¼ xmin þ (xj xmin)/
2, where xmin is the trial point corresponding to the minimum value of function f. Therefore, the
distance from any trial point xi to any trial point xj is
diter
ij ¼ xi xj 2 ¼ x min þ xi x min =2 x min xj x min =22
1 1 ð9:10Þ
¼ xi xj 2 ¼ diter1 :
2 2 ij
In particular, for the points xu and xv which define the maximum distance among the trial points at
uv ¼ d uv
iteration iter, it follows that diter iter1
=2: Therefore, from (9.9), Viter ¼ Viter 1/8. ♦
min
Hence, at iteration iter, if f iter min
f iter1 < t, then the complex is reduced, and the DEEPS
algorithm generates the trial points in a sphere of smaller volume.
Now, let us consider the situation in which at a certain iteration iter 1, around the point x0, a
number N of trial points are generated as
xiter1
j ¼ x0 þ r j ðupbnd lobnd Þ þ eðlobnd Þ, j ¼ 1, . . . , N,
h iT
where r j ¼ r 1j , . . . , r nj is a vector with the components r kj , k ¼ 1, . . ., n, random numbers in and
e ¼ [1, . . ., 1] 2 ℝn and lobndand upbnd are the bounds of the domain D,(see step 2). As we know, the
distance among these trial points is
iter1 iter1
d iter1
ij ¼ x i x j ¼ r i r j 2 jupbnd lobnd j, i, j ¼ 1, . . . , N, i 6¼ j: ð9:11Þ
2
2
1=2
Pn
pffiffiffi pffiffiffi
However, r i r j 2 ¼ k
k¼1 r i r kj n: Therefore, diter1
ij njupbnd lobnd j,
for any i, j ¼ 1, . . ., N, i 6¼ j.
max
Proposition 9.3 If at the iteration iter f iter > B, where B is a large enough prespecified parame-
ter, then, at this iteration, the distance among the trial points is reduced.
9.3 The DEEPS Algorithm 365
Proof In this case, at step 14 the algorithm DEEPS reduces the bounds lobnd and upbnd as lobnd/2
and upbnd/2, respectively, and go to generate a new set of trial points in step 2 using these
new bounds. Hence, at this iteration, the new trial points are computed as xiter j ¼ x0 þ
2 r j ðupbnd
lobnd Þ þ 12 eðlobnd Þ, for j ¼ 1, . . ., N, where again rj is a vector with components
1
random numbers in [0, 1]. Therefore, at this iteration, the distance among the new trial points is
iter 1
1 iter1
ij ¼ xi
diter xiter
j ¼ 2 r i r j 2 jupbnd lobnd j ¼ 2 d ij , ð9:12Þ
2
for any i, j ¼ 1, . . ., N, i 6¼ j. ♦
min min
If f iter f opt iter ¼ f iter1 f opt iter1 , then, at step 16 of the algorithm DEEPS, the local bounds
lobndcand upbndc are halved. Now, at iteration iter, for every trail point xj, j ¼ 1, . . ., N, let us define
j , j ¼ 1, . . ., N, from xj, j ¼ 1, . . ., N, to the local points xj , k ¼ 1, . . .M, generated by
the distance diter k
With this, at iteration iter, let us determine a trial point xw for which
n o
d iter
w ¼ max d iter
j : j ¼ 1, . . . , N : ð9:14Þ
Again, since at every iteration the algorithm DEEPS chooses the minimum point among the
generated local points and at some specific iteration the bounds lobndc and upbndc are halved, it
follows that the maximum distance between the trial points and the local trial points tends to zero.
With these, the convergence of the algorithm DEEPS can be proved as follows.
Theorem 9.1 Let f be a continuous function bounded from below. Then, the algorithm DEEPS
initialized in a point x0 generates a sequence {xk} convergent to a point x where f(x) f(x0).
Proof Since at every iteration k DEEPS chooses the minimum point xk from the trial points, it
follows that the sequence {f(xk)} is monotonously decreasing, i.e., f(xk) f(xk 1), for any k ¼ 1,
2, . . . . Function f is bounded from below, and therefore, the sequence {f(xk)} is convergent. By
continuity, it follows that there is a point x such that lim f ðxk Þ ¼ f lim xk ¼ f ðx Þ: ♦
k!1 k!1
Observe that x is only a point where f(x) f(x0). Since we do not have access to the gradient (and
the Hessian) of function f, nothing can be said about its optimality. Having in view the derivative
scarcity of information about the minimizing function f, the result given by DEEPS may be
acceptable from a practical point of view. More details on DEEPS algorithm can be found in Andrei
(2021a).
366 9 Direct Methods for Unconstrained Optimization
In this presentation of DEEPS, there are some (open) problems which need to be clarified:
selection of the parameters N and M, selection of the lower and upper bounds, the use of the line-
search procedure in step 12, etc. Our intensive numerical experiments with DEEPS show that all these
elements have a marginal effect on the performances of DEEPS (Andrei, 2021a).
In the first set of numerical experiments, consider the minimization of the following function:
X
n1
f ðx Þ ¼ ðjxi j þ 2jxiþ1 j 9Þ2 þ ð2jxi j þ jxiþ1 j 13Þ2 ,
i¼1
where x0 ¼ [1, . . ., 1]. For minimizing this functions with different values for n, Tables 9.1, 9.2, and
9.3 show the performances of NELMED, NEWUOA with ρend ¼ 106, and DEEPS, respectively.
For minimizing this function for different values of n, from Tables 9.2 and 9.3 observe that
NEWUOA needs a total of 859.23 seconds, while DEEPS needs only 14.08 seconds. Observe that
both NEWUOA and DEEPS give a highly accurate solution.
In the second set of numerical experiments, let us solve the applications from the SMUNO
collection presented in Appendix B. This collection includes 16 real applications from different
Table 9.4 Performances of NELMED for solving 16 small-scale applications from the SMUNO collection
Table 9.5 Performances of NEWUOA for solving 16 small-scale applications from the SMUNO collection
areas of activity: chemical reaction, solution of a chemical reactor, robot kinematics problem, solar
spectroscopy, propane combustion in air-reduced variant, gear train of minimum inertia, human
heart dipole, neurophysiology, combustion application, circuit design, thermistor, and optimal design
of a gear train. The largest application has 10 variables. Table 9.4 shows the performances of
NELMED for solving these applications.
Observe that NELMED needs 249817527 iterations and 31.301 seconds. Table 9.5 includes the
performances of NEWUOA. We can see that for solving all the 16 applications, NEWUOA needs
97 iterations and 14.3 seconds. Table 9.6 presents the performances of DEEPS. The total number of
368 9 Direct Methods for Unconstrained Optimization
Table 9.6 Performances of DEEPS for solving 16 small-scale applications from the SMUNO collection
Table 9.7 Performances of NEWUOA for solving 10 large-scale applications from the SMUNO collection
iterations required by DEEPS for solving all these 16 applications is 9053, while the CPU computing
time is of 37.74 seconds. Observe that NEWUOA is more efficient than NELMED and DEEPS.
In the last set of numerical experiments, Tables 9.7 and 9.8 present the numerical performances of
NEWUOA with ρend ¼ 106 and DEEPS with ε ¼ 106 for solving 10 unconstrained optimization
problems from the LACOP collection, with the number of variables in the range [100,300]. To get an
accurate solution in NEWUOA, the number of function’s evaluations was limited to 100000. Observe
that both these algorithms are able to solve problems with a relative large number of variables, but the
differences are significant. For solving all these 10 problems, NEWUOA needs a total of 59 iterations
and 10557.60 seconds. On the other hand, DEEPS needs a total of 3976 iterations and 239.04 seconds.
In the above tables, we have n ¼ the number of variables, #iter ¼ the number of iterations to get a
local solution, #nf ¼ the number of function evaluations, cpu ¼ the CPU computing time (seconds),
vfomin ¼ the minimum value of the minimizing function at solution, vf0 ¼ the value of the
minimizing function in the initial point, and name ¼ the name of the application.
9.4 Numerical Study: NELMED, NEWUOA, and DEEPS 369
Table 9.8 Performances of DEEPS for solving 10 large-scale applications from the SMUNO collection
Subject to CPU computing time the most critical resources, it seems that DEEPS is more efficient
than NEWUOA. However, the solution given by NEWUOA is more accurate. The direct optimization
methods are recommended for minimizing functions with a small number of variables for which the
derivative information are difficult to obtain or are unreliable.
Toint (1997b); Powell (1998); Lewis, Torczon, and Trosset (2000); Kolda, Lewis, and Torczon
(2003); Rios and Shainidis (2013); and Andrei (2021a, b, c, d).
The main software packages for the derivative-free optimization include COBYLA (Powell,
2003), DFO (Conn, Scheinberg, & Toint, 1997b), UOBYQA (Powell, 2002), WEDGE (Marazzi, &
Nocedal, 2002), NEWUOA (Powell, 2004) implementing the model-based methods using linear or
quadratic models, APPS (Hough, Kolda, & Torczon, 2001) using a pattern-search method, NELMED
(O’Neill, 1971), DIRECT (Jones, Perttunen, & Stuckman, 1993; Finkel, 2003) for the global optimi-
zation, and DEEPS (Andrei, 2021a, b, c, d). E04FCC (NAG – The Numerical Algorithms Group) is a
comprehensive algorithm for finding an unconstrained minimum of a sum of squares of m nonlinear
functions in n variables (m n).
Constrained Nonlinear Optimization
Methods: An Overview 10
min f ðxÞ
subject to ð10:1Þ
cðxÞ ¼ 0, x 0,
where f : ℝn ! ℝ is the objective function and c : ℝn ! ℝm are the constraints assumed to be twice
continuously differentiable. For the problem (10.1), denote the multipliers corresponding to the
equality constraint by y and the multipliers of the inequality constraints by z 0. Observe that
(10.1) may have inequality constraints, simple bounds on variables, or even range constraints of the
form li ci(x) ui, i ¼ 1, . . ., m, which are here omitted for the sake of simplifying the presentation
(Leyffer & Mahajan, 2010). To solve (10.1), the iterative methods are used in a reductionist approach.
The problem (10.1) is approximated by a sequence of subproblems. Their solving gives a sequence of
solutions {xk} starting from an initial point x0. The solution of a subproblem is the initial guess for the
next subproblem in this sequence, and all the process has a number of the so-called major iterations.
In this frame, every subproblem is also solved by an iterative process through the so-called minor
iterations. A simple prototype for solving (10.1) to generate the sequence {xk} is as follows:
In the following, the main components of Algorithm 10.1 for solving the problem (10.1) are
discussed in a critical manner. The real sense of the word “criticism” does not mean “destruction,”
but “creation.” Consequently, some issues may be looked upon: how the approximate subproblem
that determines an improved new iterate is computed, the globalization strategy that ensures the
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 371
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_10
372 10 Constrained Nonlinear Optimization Methods: An Overview
convergence of the algorithm initialized in remote starting points by indicating whether a new
estimate of the solution is better than the current estimate, the refining mechanisms that reduces the
step computed by the local model to enforce the globalization strategy to work far away from the
solution, and the convergence tests as well as the termination conditions that check for the optimal
solution or for the failure of the algorithm. The nonlinear optimization algorithms are classified by the
choice with which they implement each of these fundamental components of Algorithm 10.1.
Usually, the convergence tests are based on the Karush-Kuhn-Tucker conditions (see Theorem
11.15). For example, for the problem (10.1), suitable approximate convergence tests may be
presented as
kc ð x k Þ k ε 1 , ð10:2aÞ
where εi > 0, i ¼ 1, 2, 3, are tolerances and the “min” in (10.2c) corresponding to the complementarity
condition is taken componentwise. (Here ∇f(xk) is the gradient of f and ∇c(xk) is the Jacobian of
c computed at point xk.) It is quite possible for the convergence of the algorithm not to be ensured to
an approximate KKT point (see Theorem 11.15), for example, if the constraints do not satisfy a
constraint qualification (see Remark 11.2). In these cases, the test (10.2b) is replaced by
corresponding to a Fritz John point. It is also possible for the termination conditions to be modified to
include the “relative error,” as used in some algorithms. The specific norm used in the above criteria
depends upon the number of variables. For small-scale problems, the two-norm is satisfactory, while
for large-scale problems, the infinity norm is recommended.
The limits of these convergence tests are the feasibility conditions and those of optimality are
separated, so that we may obtain a feasible solution which is not optimal and vice versa. However, the
feasibility of the constraints is always the most important criterion for terminating the iteration. From
the practical point of view, the decision that the iterate xk is an adequate approximation to the
solution is based on two major tests: whether xk almost satisfies the sufficient conditions for optimality
and whether the sequence {xk} appears to have converged.
As already seen in Algorithm 10.1, one needs an initial point x0 to start the iterations. The computa-
tion of an initial point is a problem in itself. Unless the problem is convex or some restrictive
assumptions are made, Algorithm 10.1 cannot guarantee the convergence even to a feasible point.
Besides, there are many cases in which the points of the sequence {xk} determined by Algorithm 10.1
must be feasible. In these cases, a procedure for certifying the feasibility is needed. An appropriate
converge test and feasibility subproblem is based on the following feasibility problem:
10.3 Approximate Subproblem: Local Models and Their Solving 373
which, as can be seen, may be formulated as a smooth optimization problem by introducing the slack
variables. For solving the problem (10.4), one can use Algorithm 10.1, as the feasibility problem can
be reformulated as a smooth nonlinear optimization problem by introducing additional variables. The
objective function of (10.4) can be replaced by a weighted norm. In this case, suitable tests are
where yk are the multipliers or the weights corresponding to the norm used in the objective of (10.4).
In step 3 of Algorithm 10.1, the elaboration of a local model of the problem (10.1) around the current
point xk is needed. The key difference among the nonlinear optimization algorithms is how the local
model is constructed around the current point. The idea is to generate a local model of the problem
for which a solution can be easily obtained and which can improve the current iterate. Three broad
classes of local models are known: sequential linear models, sequential quadratic models, and
interior point models.
The sequential linear programming (SLP) methods construct a linear approximation to (10.1).
Usually, these linear programming programs are unbounded. Therefore, these methods require an
additional trust-region constraint
where Δk > 0 is the radius of the trust-region. To ensure the convergence, in general, Δk ! 0 must
converge to zero. This method was used by Griffith and Stewart (1961) with some success, without
introducing a trust-region constraint. The sequential linear programming method can be considered as
a steepest descent method and typically converges only linearly. If at the solution point there are
exactly n active constraints and the normals of these constraints are linearly independent, then the
sequential linear programming method reduces to the Newton method for solving a square system of
nonlinear equations, which is superlinear convergent.
The sequential quadratic programming (SQP) methods minimize a quadratic model mk(d ) subject
to a linearization of the constraints about the current point xk
1
min d mk ðdÞ≜∇f ðxk ÞT d þ dT Bk d
2
subject to ð10:7Þ
cðxk Þ þ ∇cðxk ÞT d ¼ 0,
xk þ d 0,
where Bk ≜∇2xx Lðxk , λk Þ is the Hessian of the Lagrange function associated to the problem (10.1) and
λk are the Lagrange multipliers, to obtain the search direction d ≜ x xk. The new iterate is given by
xkþ1 ¼ xk þ d together with the Lagrange multipliers λkþ1 associated to the linearized constraints of
374 10 Constrained Nonlinear Optimization Methods: An Overview
(10.7). If the matrix Bk is not positive definite on the null space of the active constraint normals, then
the quadratic subproblem (10.7) is nonconvex and the SQP methods determine a local minimum of
(10.7). In case of large-scale problems, the solution of the quadratic subproblems can become
computationally expensive because the null space method for solving the quadratic subproblem
requires the factorization of a dense-reduced Hessian matrix.
The sequential linear-quadratic programming (SLQP) methods combine the advantages of the
SLP method (fast solution of the linear programming subproblem) and of the SQP methods (fast local
convergence) by adding an equality constraint to the SLP method [(Fletcher & de la Maza, 1989),
(Chin & Fletcher, 2003), (Byrd, Gould, Nocedal, & Waltz, 2002, 2004a)]. In these methods, two
subproblems are solved: the first one is a linear programming subproblem which gives a step for the
n o
next iteration and also an estimate of the active set Ak ≜ i : ½xk þ dbi ¼ 0 obtained from a solution
i
db of (10.6). (Here [xk]i is the component i of vectorxk.) This estimation of the active set is used to
construct and solve the second problem, which is an equality constrained quadratic programming
problem defined by the active constraints
1
min d qk ðdÞ≜∇f ðxk ÞT d þ dT Bk d
2
subject to ð10:8Þ
cðxk Þ þ ∇cðxk ÞT d ¼ 0,
½xk i þ d i ¼ 0, i 2 Ak :
If Bk is positive definite on the null space of the constraint normals, then the solution of (10.8) is
equivalent to the following linear algebraic system:
2 32 3 2 3
Bk ∇cðxk Þ I k x ∇f ðxk Þ þ Bk xk
6 T 76 7 6 7
4 ∇cðxk Þ 0 0 54 yk 5 ¼ 4 cðxk Þ þ ∇cðxk ÞT xk 5, ð10:9Þ
T
Ik 0 0 zk 0
obtained by applying the KKT conditions to the subproblem (10.8). (Here, I k ¼ ½ei i2Ak are the
normals of the active inequality constraints; yk and zk are the Lagrange multipliers.) It is always
possible to choose a basis from the linear programming subproblem (by simplex algorithm) such that
the augmented matrix [Ak Ik] has full rank. If Bk is not positive definite on the null space of the active
constraint normals, then the inertia of this matrix can be corrected by adding to Bk a multiple of the
identity matrix, thus ensuring the descent step of the subproblem (10.8).
The sequential quadratic-quadratic programming (SQQP) methods have been recently introduced
by Gould and Robinson (2008, 2010). From the very beginning, they construct and solve a quadratic
programming subproblem by using a positive definite Hessian of the Lagrangian. The solution of this
convex subproblem is used into an equality constrained quadratic programming model with the exact
second derivative of the Lagrangian. More precisely, the SQQP procedure is a second derivative
method that is globalized via the l1 merit function. Given an estimate xk of the solution to the problem
(10.1), a search direction at this point is generated from the combination of three steps: a predictor
step defined as a solution to a strictly convex quadratic programming subproblem, a Cauchy step
(driving convergence of the algorithm) which is computed from a special univariate global minimi-
zation problem, and a SQP step computed from a local solution of a special nonconvex quadratic
programming subproblem. The algorithm is embedded into the trust-region approach.
10.3 Approximate Subproblem: Local Models and Their Solving 375
Remark 10.1 As a general characterization of these sequential linear and quadratic programming
methods, the following theoretical aspects can be mentioned. If Bk is the exact Hessian of the
Lagrange function and the Jacobian of the active constraints has full rank, then the SQP methods
are quadratic convergent near a minimizer that satisfies both a constraint qualification and a second-
order sufficient condition (the Hessian of the Lagrangian is positive definite on the null space of the
active constraint normals) (Boggs & Tolle, 1995). Moreover, under the additional assumption of
strict complementarity, all the four methods based on sequential linear or quadratic programming
identify the optimal active set in a finite number of iterations. The above sequential methods are also
known as active-set methods because the solution of each linear or quadratic subproblem provides
not only a suitable new iterate but also an estimate of the active set at the solution point (Leyffer, &
Mahajan, 2010).
Additionally, two major concerns are associated to the SQP methods: incompatible linearized
constraints and unbounded solutions of the quadratic subproblems. For handling the unbounded
solutions of (10.7), two approaches are possible. The first one is to use a positive definite approxima-
tion to the Hessian in (10.7). Thus, a strictly convex-bounded quadratic program is obtained with a
unique minimizer. The second approach allows for a nonconvex quadratic program by explicitly
bounding the solution via a trust-region constraint. Both approaches are effective in practice. The
issue of incompatible subproblems is more challenging. Observe that the quadratic programming
subproblem (10.7) may be naturally incompatible. In this case, different techniques have been
suggested for dealing with incompatible subproblems: the “constraint shifting” (Vardi, 1985), the
use of the “elastic mode” (Gill, Murray, & Saunders, 2002, 2005) (see Chap. 15), and a “feasibility
restoration phase” (Fletcher & Leyffer, 2002) (see Chap. 18). ♦
The interior point methods are an alternative approach to the active set methods. Essentially, these
are perturbed Newton methods which postpone the determination of the active constraints set at the
end of the iterative process for solving the problem. Plenty of interior point methods are known, but
the most successful one is the primal-dual, which can be viewed as the Newton method applied to the
perturbed first-order optimality conditions of problem (10.1). The first-order optimality conditions
include the stationary condition of the Lagrange function, the feasibility condition (satisfying the
constraints of the problem), and the complementarity condition (see Definition 11.14). In the interior
point methods, only these complementarity conditions are perturbed, as in the following nonlinear
algebraic system:
2 3
∇f ðxÞ ∇cðxÞT y z
6 7
Fμ ðx, y, zÞ ¼ 4 c ðx Þ 5 ¼ 0, ð10:10Þ
Xz μe
where μ > 0 is the barrier parameter, X ¼ diag (x) is a diagonal matrix with the components of the
vector x on the main diagonal, and e is a vector with all the components equal to one. The interior
point methods start the computations from an interior point x0, z0 > 0 and generate a sequence of
interior points xk, zk > 0 as approximate solutions of the system (10.10), for a decreasing sequence of
barrier parameters. By applying the Newton method to the nonlinear primal-dual system (10.10)
around xk, we get the local model (i.e., the approximate subproblem):
2 32 3
Bk ∇cðxk Þ I Δx
6 T 76 7
4 ∇cðxk Þ 0 0 54 Δy 5 ¼ Fμ ðxk , yk , zk Þ, ð10:11Þ
Zk 0 Xk Δz
376 10 Constrained Nonlinear Optimization Methods: An Overview
where Bk is an approximate to the Hessian of the Lagrange function and Zk ¼ diag (zk) is a diagonal
matrix with the components of the vector zk on the main diagonal. (Xk ¼ diag (xk).) The next step is
computed as
xkþ1 , ykþ1 , zkþ1 ¼ ðxk , yk , zk Þ þ αx Δx, αy Δy, αz Δz ,
where the stepsizes αx, αy, and αz are computed to ensure that xkþ1, zkþ1 > 0 remain strictly positive. A
simple variant of the interior point algorithms is as follows.
1. Choose an initial point estimate (x0, y0, z0) such that x0 > 0 and z0 > 0. Choose a value for the barrier
parameter μ0, the parameter 0 < σ < 1 and a decreasing sequence εk. Set k ¼ 0
2. Evaluate a criterion for stopping the iterations concerning the optimality of (xk, yk, zk).
3. Set (xk, 0, yk, 0, zk, 0) ¼ (xk, yk, zk) and j ¼ 0
4.
If Fμk xk,j , yk,j , zk,j εk , then go to step 6. Otherwise, continue with step 5
5. Approximately solve the Newton system (10.11) for a new iterate (xk, jþ1, yk, jþ1, zk, jþ1). Set j ¼ j þ 1 and
go to step 4
6. Reduce the barrier parameter μkþ1 ¼ σμk set k ¼ k þ 1 and go to step 2 ♦
Observe that this algorithm has two loops: one responsible for solving the problem and the other
one for approximately solving the Newton system. Notice that this is a general prototype interior
point algorithm, and many other ingredients are needed to make it efficient and robust.
At this point, it is very instructive to see the relationship of the interior point methods with the
barrier methods developed by Fiacco and McCormick (1990). The importance of the barrier methods
comes from the fact that they can provide polynomial-time algorithms for the linear programming
problems [(Wright, 1991), (Forsgren, Gill, & Wright, 2002), (Nemirovskii, & Todd, 2008)]. The
barrier methods approximately solve a sequence of barrier subproblems of the following form:
X
n
min x2ℝn f ðxÞ μ log ðxi Þ
i¼1
subject to ð10:12Þ
cðxÞ ¼ 0,
for a decreasing sequence of the barrier parameters μ > 0. The first-order optimality conditions for the
problem (10.12) are given by
cðxÞ ¼ 0: ð10:13bÞ
Now, applying the Newton method to the nonlinear system (10.13), the following linear algebraic
system is obtained:
" # " #
Bk þ μX2
k ∇cðxk Þ Δx ∇f ðxk Þ μX1
k e ∇cðxk Þyk
¼ :
∇cðxk ÞT 0 Δy cðxk Þ
" # " #
Bk þ Zðxk ÞX1
k ∇cðxk Þ Δx ∇f ðxk Þ μX1
k e ∇cðxk Þyk
¼ :
∇cðxk ÞT 0 Δy c ðx k Þ
has been eliminated. Therefore, the main difference between the classical barrier methods as
elaborated by Fiacco and McCormick and the primal-dual interior point methods is that the matrix
Zk is not free for the barrier methods, but it is chosen as the primal multiplier Zðxk Þ≜μX1 k : This
freedom in the primal-dual interior point methods avoids some difficulties with the ill-conditioning of
the Hessian to the barrier function. This was the main reason for rejecting the barrier methods in
solving nonlinear optimization problems.
Remark 10.2 As a characterization of the interior point methods, we can state: if there exists a
compact set of isolated local minimizers of the problem (10.1) with at least one point in the closure of
the strictly feasible set, then it follows that the barrier methods converge to a local minimum of the
problem (10.1) (Wright, 1991). On the other hand, for the convex nonlinear optimization problems,
the interior point methods, as in the case of linear programming, lead to polynomial-time algorithms
(Nesterov, & Nemirovskii, 1994). ♦
The local models discussed above guarantee the convergence only in a small neighborhood of a
regular point (see Definitions 11.13 and 11.16). However, the initialization of the algorithms near the
unknown optimal solution is a difficult task. Therefore, the globalization strategies are concerned
with ensuring the convergence from the remote starting points to the stationary points (see Theorem
11.3). The globalization strategy should not be confused with the global optimization. To ensure the
convergence from the remote starting points, the progress of iterates generated by the approximate
subproblems must be monitored. For the unconstrained optimization, monitoring is very simple
because the progress of the algorithm can be measured by comparing the values of the objective
function. For the constrained optimization, it is necessary to take into account the constraint violation.
Three broad classes of strategies exist: the augmented Lagrangian methods, the penalty and merit
function methods, and the filter methods.
The augmented Lagrangian methods for the problem (10.1) use the augmented Lagrangian as
ρ
Lðx, y, ρÞ ¼ f ðxÞ cðxÞT y þ kcðxÞk22 , ð10:14Þ
2
where ρ > 0 is a penalty parameter. In this context, there are two possibilities to develop the
algorithms based on the augmented Lagrangian.
(a) Linearly constrained Lagrangian methods. These methods minimize a modified Lagrangian
subject to a linearization of the constraints. The modified Lagrangian is defined as
ρ
Lðx, y, ρÞ ¼ f ðxÞ pk ðxÞT y þ kpk ðxÞk22 , ð10:15Þ
2
378 10 Constrained Nonlinear Optimization Methods: An Overview
where pk(x) collects the higher-order nonlinear terms from the Taylor series at the current iterate xk,
i.e.,
Therefore, this approach consists in forming and solving the following local model:
min x Lðx, yk , ρk Þ
subject to ð10:17Þ
cðxk Þ þ ∇cðxk ÞT ðx xk Þ ¼ 0,
x 0,
for a fixed value of the penalty parameter ρk. The Lagrange multipliers are updated by using a first-
order multiplier update rule:
ykþ1 ¼ yk ρk cðxkþ1 Þ, ð10:18Þ
where xkþ1 is the solution of (10.17). Therefore, the local model (10.17) is used in an iterative scheme
for a decreasing sequence of the penalty parameters. This approach is implemented in MINOS
(Chap. 14) (Murtagh & Saunders, 1980, 1982, 1987, 1995). Another modification of the augmented
Lagrangian as a combination of penalty and barrier terms is used in SPENBAR (Chap. 14) (Andrei,
1996a, 1996b, 1996c, 1998a).
(b) Bound-constrained Lagrangian methods. These methods approximately minimize the augmented
Lagrangian for the problem (10.1) subject to simple bounds on the variables,
min x Lðx, yk , ρk Þ
subject to ð10:19Þ
x 0,
for a sequence of increasing penalty parameters. The advantage of this approach is that efficient
methods for the simple bounds on the variables optimization can be applied: gradient projection
conjugate gradient approach by Moré and Toraldo (1991); limited memory BFGS with bounds by
Byrd, Lu, Nocedal, and Zhu (1995b); spectral projected gradient method by Birgin, Martı́nez, and
Raydan (2000, 2001); truncated Newton with simple bounds by Nash (1984a, b, 1985); etc. (see
Chap. 12). The idea of an iteration which uses the local model given by (10.19) is as follows. For a
fixed value of the penalty parameter ρk, solve the subproblem (10.19). Thus, an approximate solution
xck is obtained. If c xck ηk , then update the Lagrange multipliers as ykþ1 ¼ yk ρk c xck ;
otherwise, increase the value of the penalty parameter, for example, ρkþ1 ¼ 10ρk. Here, {ηk} is a
forcing sequence which controls the progress to the feasibility of the nonlinear constraints. Each
minimization of (10.19) can be started from the previous iterate. Representative for the bound-
constrained Lagrangian method is LANCELOT (Conn, Gould, & Toint, 1992a, 1992b).
Remark 10.3 As a general characterization of the augmented Lagrangian methods, we mention the
linearly constrained augmented Lagrangian method can be made globally convergent by adding
slack variables in order to handle the infeasible subproblems (Friedlander & Saunders, 2005). On the
other hand, a bound-constrained Lagrangian method converges globally if the sequence {xk} is
bounded and if the Jacobian of the constraints at all the limit points of {xk} has the column rank not
10.4 Globalization Strategy: Convergence from Remote Starting Points 379
smaller than m (the number of constraints) (Conn, Gould, & Toint, 1991a, b). The difficulty with the
augmented Lagrangian methods is the procedure for selecting the penalty parameters. Introducing
the filter methods by Fletcher and Leyffer (2002) avoids this difficulty. ♦
The penalty and merit function methods combine the objective function and a measure of the
constraint violation into a single function whose local minimizers correspond to the local minimizers
of the problem (10.1). The convergence from the remote starting points can be ensured by forcing the
descent of the penalty or the merit function by using one of the mechanisms discussed in the next
section. The exact penalty functions are alternative to the augmented Lagrangian and are defined as
Pρ ðxÞ ¼ f ðxÞ þ ρkcðxÞk, ð10:20Þ
where ρ > 0 is the penalty parameter. In (10.20), the most used norm is l1. If ρ kykD, where y is the
Lagrange multiplier corresponding to the nonlinear constraints and k.kD is the dual norm of k.k (i.e.,
the l1norm in the case of the l1 exact penalty function), then the local minimum x of the exact
penalty function Pρ(x) is a local minimum of the problem (10.1) (Fletcher, 1987). Therefore, the
classical approach minimizes a sequence of penalty subproblems Pρ(x) for an increasing sequence of
the penalty parameters. Some other merit functions are known, for example, the quadratic penalty
function f ðxÞ þ ρkcðxÞk22 , the oldest one. The corresponding algorithm based on this penalty function
is convergent to a local solution only if the sequence of the penalty parameters is divergent to infinity.
The global convergence is also ensured by using the augmented Lagrange and the penalty functions
of the type f(x) þ c(x)Ty þ ρkc(x)k. A major difficulty with these penalty functions is the possibility
that near a strictly isolated minimum, the step given by the Newton method should not be accepted.
This phenomenon is known as the Maratos effect (Maratos, 1978). The remedy for the Maratos effect
is the introduction of second-order corrections or the use of the nonmonotone line-search. However,
the greatest difficulty with the penalty methods is the selection and the updating of the penalty
parameters.
The filter methods try to harmonize two objectives, always present in any optimization problem:
minimization of the objective function and minimization of the violation of the constraints (see
Chap. 18). The filter methods keep a record of the objective function value fl ¼ f(xl) and of the
constraint violation hl ¼ kc(xl)k for a number of previous iterates xl, l 2 Fk, where Fk is the filter at
iteration k (Fletcher & Leyffer, 2002). A new iterate is acceptable in the filter if it improves either the
objective function or the constraint violation, compared to all the previous iterates recorded in the
filter. In other words, the point xb is acceptable in the filter if f ðxbÞ f ðxl Þ γhðxl Þ or hðxbÞ βhðxl Þ,
for any l 2 Fk, where γ > 0 and 0 < β < 1 are constants which ensure that the iterates cannot accumulate
at infeasible limit points. To ensure the convergence to a local minimizer, the filter algorithm uses a
standard sufficient reduction condition taken from the unconstrained optimization:
f ðxk Þ f ðxk þ dÞ σmk ðdÞ, ð10:21Þ
where σ > 0 is the fraction of the predicted decrease and mk(d ) is the model reduction from the
approximate subproblem. This condition is used only if the model predicts a decrease in the objective
function. Therefore, the filter method uses a switching condition mk(d) γh(xk)2 to decide when
(10.21) should be enforced. A new iterate that satisfies both these conditions is called an iteration of
type f, while an iterate for which the switching condition fails is called an iteration of type h.
Remark 10.4 The general characteristic of the filter method is that it avoids the complications with
selecting and updating the penalty parameter from the augmented Lagrangian or the penalty function
methods. However, the difficulty with this method is the selection of the parameters which determine
380 10 Constrained Nonlinear Optimization Methods: An Overview
the convergence as well as the specification of the heuristics for ensuring the feasibility of the
subproblems and the convergence to a local solution. ♦
The idea of refining the local model is to reduce the stepsize that is computed by the approximate
subproblem. Two mechanisms for refining the local model are known: line-search methods and trust-
region methods. Both these mechanisms can be used in the frame of any of the approximate
subproblems and of any globalization strategies for the convergence from the remote starting points.
Therefore, a great variety of nonlinear optimization algorithms result, with different capabilities for
solving complex and large-scale optimization problems.
The line-search methods enforce the convergence by using a backtracking line-search along the
direction s. For the sequential quadratic programming methods, the searching direction is given by the
quadratic programming problem (10.7), s ¼ d. For the interior point methods, the searching direction
s ¼ (Δx, Δy, Δz) is the solution of the primal-dual linear algebraic system (10.11). To ensure that the
model produces a descent direction, one must have ∇P(xk)Ts < 0, where P(x) is a merit or a penalty
function. A very popular line-search is the Armijo rule (Armijo, 1966) (see (Andrei, 2009e)). A
prototype algorithm with line-search is as follows.
Algorithm 10.3 Prototype of the line-search method for the nonlinear optimization
Observe that the algorithm has two loops. The inner loop determines the stepsize by backtracking.
The outer loop is responsible for the search direction determination, i.e., the solution of the problem.
The line-search methods with filters can be defined in a similar way, but, instead of checking the
descent in the merit function, a filter method is used to check the acceptance to a filter (Leyffer, &
Mahajan, 2010).
The trust-region methods restrict the step in an explicit way by adding a trust-region constraint of
the form kdk Δk, where the used norm is l1, l2, or l1. Most methods use the l1 norm in the trust-
region constraints, which can be represented by the simple bounds on the variables. The trust-region
radius Δk > 0 is adjusted at every iteration, depending on how well the approximate subproblem
agrees with the nonlinear optimization problem (10.1). A prototype of the optimization algorithm
with trust-region is as follows.
10.5 The Refining the Local Model 381
Algorithm 10.4 Prototype of the trust-region method for the nonlinear optimization
1. Choose an initial point x0 and a value for the trust-region radius Δ0 > 0. Set k ¼ 0
2. Evaluate a criterion for stopping the iterations. If xk is the optimal solution of the problem, stop;
otherwise, go to step 3
3. Approximately solve the local model of the problem (10.1), i.e. the sub-problem (10.7) in which a trust-
region constraint kdk Δk is introduced
4. If xk þ d is sufficiently better than xk, then increase Δk and continue with step 5; otherwise, reduce Δk, for
example, Δk ¼ Δk/2 and go to step 3
5. Set k ¼ k þ 1 and go to step 2 ♦
The trust-region methods are related to the regularization techniques, which refer to the positive
definiteness of the Hessian matrix Bk. These techniques are implemented by adding a multiple of the
identity matrix to the Hessian. Locally, the solution of the regularized problem is equivalent to the
solution of a trust-region problem with an l2 norm trust-region. Clearly, the disadvantage of the trust-
region methods is that the subproblems may become inconsistent as Δk ! 0. This situation can be
dealt with in three different ways: a penalty function approach (Nocedal & Wright, 2006) (see
Chap. 14), a restoration phase in which the algorithm minimizes the constraint violation (Fletcher
& Leyffer, 2003) (see Chap. 18), or a composite step approach (Omojokun, 1989) (see Chap. 15). All
these refining mechanisms of the local model are used in nonlinear optimization algorithms. The
difficulties are related to the computation of the stepsize, to the selection of the merit function, and to
the techniques for regularization.
In conclusion, a large variety of constrained nonlinear optimization algorithms are known. All of
them use four major ingredients: a local model of the problem around the current point, a globaliza-
tion strategy which ensures the convergence of the algorithm from remote initial points, a refining
mechanism which reduces the stepsize computed by the local model to enforce the convergence, and
some convergence tests which certify the type of the limit point obtained by the algorithm. The
diversity of the optimization algorithms is given by the way in which all these ingredients are
implemented. Besides, the optimization algorithms implement a multitude of other ingredients
which are crucial in the efficiency and robustness for solving complex large-scale nonlinear optimi-
zation problems. Example of such ingredients are sparse or dense linear algebra techniques, factori-
zation of indefinite matrices, inertia correction of matrices, complement Schur computation,
identification of the active constraints, initialization of the algorithms with respect to the primal
and dual variables, updating procedures for the barrier parameter or a trust-region radius, updating the
parameter of the central trajectory, solving the infeasibilities (elastic programming), etc.
The most efficient and robust nonlinear optimization algorithms use combinations of the active-set
methods (local models based on sequential linear or quadratic programming), or interior point
methods with globalization strategies (augmented Lagrangian, penalty and merit function or filters
methods) and refining mechanisms (line-search or trust-region methods), all of them in a frame where
advanced computational linear algebra techniques are used. The most advanced nonlinear optimi-
zation algorithms implementing the above concepts are illustrated in the chapters of this book.
linear or quadratic model. This model is solved in a specific way. Thus, the obtained solution is
considered as the next approximation to the solution of the original problem and as the starting point
for solving the next approximation of the problem. For the termination of this iterative process, some
criteria for stopping the iterations are used. A large variety of nonlinear optimization algorithms is
known. The differences among them are the strategy for initialization, the construction of the local
models, the globalization, the refining mechanism, and the stopping criteria. Extremely important is
the computational linear algebra for implementing the different steps of the nonlinear optimization
algorithms. These ingredients of an advanced nonlinear optimization algorithm are found in different
publications, like Luenberger (1973, 1984); Gill, Murray, and Wright (1981); Dennis and Schnabel
(1983); Peressini, Sullivan, and Uhl (1988); Bazaraa, Sherali, and Shetty (1993); Bertsekas (1999);
Conn, Gould, and Toint (2000); Nocedal, and Wright (2006); Sun and Yuan (2006); Bartholomew-
Biggs (2008); Kelley (1999); Andrei (1999a, 1999b, 2009e, 2009f, 2015a, 2017c, 2020a); Leyffer and
Mahajan (2010); and Luenberger and Ye (2016).
It is noteworthy that the optimization methods and techniques have two main traditions: the linear
programming and the calculus of variations. These two topics have evolved along two disjoint paths
with no connection between them. The situation dramatically changed in 1984, when Karmarkar
(1984) announced a new polynomial-time interior-point algorithm for linear programming, for which
he reported performance times that were 50 times faster than those of the simplex algorithm.
Immediately after, in 1985, it was shown that there was a formal equivalence between Karmarkar’s
method and the classical logarithmic barrier method applied to linear programming problems. Since
then, interior methods have continued to transform both the theory and the practice of constrained
optimization. This was the first unification between linear programming and nonlinear optimization.
At present, both the simplex algorithm and different variants of the interior-point algorithms coexist
as important methods for solving linear and nonlinear optimization problems.
On the other hand, a wide variety of problems arising in the system and control theory can be
reduced to a few standard convex or quasiconvex optimization problems involving linear matrix
inequalities. In other words, many constraints in the system and control theory, including convex
quadratic inequalities, matrix norm inequalities, Lyapunov matrix inequalities, the positive-real
lemma, the bounded-real lemma, etc., can be expressed as linear matrix inequalities. Interior-point
methods are important since these optimization problems can be solved numerically very efficiently
using the polynomial-time algorithms (see Boyd, El Ghaoui, Feron, & Balakrishnan, 1994), thus
achieving the second unification of optimization and of the system and control theory.
We can see that the interior-point methods were the instrument that unified linear and nonlinear
optimization with the system and control theory by emphasizing the problem of complexity of the
optimization algorithms. Modern constrained optimization methods are based on a combination of
the interior-point with the sequential linear-quadratic programming with line-search or filters in an
advanced computational linear algebra environment, as we can to see in the chapters of this book.
Optimality Conditions for Nonlinear
Optimization 11
The optimization problems considered in this book involve the minimization or maximization of a
function of several real variables subject to one or more constraints. The constraints may be the
non-negativity of variables, the simple bounds on variables, and the equalities or inequalities as
functions of these variables. These problems are known as continuous nonlinear constrained optimi-
zation or nonlinear programming.
The purpose of this chapter is to introduce the main concepts and the fundamental results in
nonlinear optimization, known as optimality conditions. Plenty of very good books dedicated to these
problems are known in literature: Luenberger (1973); Gill, Murray, and Wright (1981); Peressini,
Sullivan, and Uhl (1988); Bazaraa, Sheraly, and Shetty (1993); Bertsekas (1999); Boyd and
Vandenberghe (2004); Nocedal and Wright (2006); Sun and Yuan (2006); Chachuat (2007); Andrei
(2009e, 2015a, 2017c); etc.
The general continuous nonlinear optimization problem is expressed as
min f ðxÞ
subject to ð11:1Þ
ci ðxÞ 0, i ¼ 1, . . . , m,
hi ðxÞ ¼ 0, i ¼ 1, . . . , p,
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 383
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_11
384 11 Optimality Conditions for Nonlinear Optimization
conditions which guarantee that x is a local minimizer are the sufficient conditions. The key to
understand the nonlinear optimization is the Karush-Kuhn-Tucker (KKT) optimality conditions. This
is a major result which identifies an algebraic system of equalities and inequalities, which
corresponds to the solution to any nonlinear optimization problem. This system can often be used
to develop algorithms for computing a solution for the problem or to get some additional information
about the sensitivity of the minimum value of the problem subject to changes in the constraints. In
general, many optimization algorithms can be interpreted as methods for numerically solving the
KKT nonlinear system of equations.
In the mathematical optimization, the KKT conditions are first-order necessary conditions for a
solution in nonlinear optimization to be optimal, provided that some regularity conditions are
satisfied. For problems with inequality constraints, the KKT approach generalizes the method of
Lagrange multipliers, which allows only equality constraints. For the development of the KKT
optimality conditions, three possible approaches can be used. One is based on the separation and
support theorems from the convex set theory. Another one uses the penalty functions, and the third
one comes from the theory of Lagrange multipliers. Each of these approaches has its own virtues and
provides its own insights on the KKT Theorem. In this text, we consider the optimality conditions for
the continuous nonlinear optimization (the mathematical programming), using the formalism of
Lagrange.
In the following, we shall present some definitions and results used in the context of nonlinear
programming. At the same time, we shall define a particular class of nonlinear programs, the convex
programming. In this section, X ⊂ ℝ denotes a nonempty set of real numbers.
Definition 11.1 (Upper Bound, Lower Bound). A real number α is called an upper bound for X if
x α for all x 2 X. The set X is said to be bounded above if it has an upper bound. Similarly, a real
number α is called a lower bound for Xif x α for all x 2 X. The set X is said to be bounded below if it
has a lower bound.
Definition 11.2 (Least Upper Bound, Greatest Lower Bound). A real number α is called the least
upper bound (or supremum, or sup) of X, if (i) α is an upper bound for X; and (ii) there does not exist
an upper bound for X that is strictly smaller than α. The supremum, if it exists, is unique and is
denoted by supX. A real number α is called the greatest lower bound (or infimum, or inf) of X, if (i) α
is a lower bound forX; and (ii) there does not exist a lower bound forX that is strictly greater than α.
The infimum, if it exists, is unique and is denoted by infX.
It is worth saying that for sups and infs, the following equivalent definition is useful.
Definition 11.3 (Supremum, Infimum). The supremum of X, provided it exists, is the least upper
bound for X, i.e., a real number α, satisfying (i) z α for any z 2 Xand (ii) for any α < α, there exists
z 2 X such that z > α: Similarly, the infimum of X,provided it exists, is the greatest lower bound for X,
i.e., a real number α satisfying (i) z α for any z 2 Xand (ii) for any α > α, there exists z 2 X such
that z < α:
Definition 11.4 (Maximum, Minimum). The maximum of a set X is its largest element if such an
element exists. The minimum of a set X is its smallest element if such an element exists.
11.1 General Concepts in Nonlinear Optimization 385
The key differences between the supremum and the maximum concepts are as follows. If a set has a
maximum, then the maximum is also a supremum for this set, but the converse is not true. A finite set
has always a maximum which is also its supremum, but an infinite set does not need to have a
maximum. The supremum of a set X does not need to be an element of the set X itself, but the
maximum of X must always be an element of X.
Concerning the existence of infima and suprema in ℝ, fundamental is the axiom of completeness.
“If a nonempty subset of real numbers has an upper bound, then it has a least upper bound. If a
nonempty set of real numbers has a lower bound, it has a greatest lower bound.” In other words, the
completeness axiom guarantees that, for any nonempty set of real numbers that is bounded above, a
supremum exists (in contrast to the maximum, which may or may not exist).
Let us consider the minimization problem
min ff ðxÞ : x 2 Xg, ð11:2Þ
where X ⊂ ℝn represents the feasible set. Any point x 2 X is a feasible point or an admissible point.
Any point x 2 ℝn\X is called to be infeasible.
Definition 11.5 (Global Minimum, Strict Global Minimum). A point x 2 Xis said to be a global
minimum of f on X if f(x) f(x) for any x 2 X. A point x 2 Xis said to be a strict global minimum of f
on X if f(x) > f(x) for any x 2 Xwith x 6¼ x.
Definition 11.6 (Global Maximum, Strict Global Maximum). A point x 2 Xis said to be a global
maximum of f on X if f(x) f(x) for any x 2 X. It is a strict global maximum of f on X if f(x) < f(x) for
any x 2 Xwith x 6¼ x.
The point x is called an optimal solution of the optimization problem. The real number f(x) is
known as the optimal value of the objective function subject to the constraints x 2 X.
Observe the distinction between the minimum/maximum and the infimum/supremum. The value
min{f(x) : x 2 X} must be attained at one or more points x 2 X. On the other hand, the value inf
{f(x) : x 2 X} does not necessarily have to be attained at any points x 2 X. However, if a minimum
(maximum) exists, then its optimal value equals the imfimum (supremum).
If a minimum exists, it is not necessarily unique. That is, there may be a finite number or even an
infinite number of feasible points x that satisfy the inequality f(x) f(x) for any x 2 X. The notation
arg min ff ðxÞ : x 2 Xg≜fx 2 X : f ðxÞ ¼ inf ff ðxÞ : x 2 Xgg
is reserved for the set of the minima of function fon X,that is, a set in ℝn.
Definition 11.7 (Local Minimum, Strict Local Minimum). A point x 2 X is said to be a local
minimum of f on X if there exists ε > 0 such that f(x) f(x) for any x 2 B(x, ε) \ X, where B(x, ε) is
the open ball centered at x of radius ε. Similarly, a point x 2 X is said to be a strict local minimum of
f on X if there exists ε > 0 such that f(x) > f(x) for any x 2 B(x, ε)\{x} \ X.
Definition 11.8 (Local Maximum, Strict Local Maximum). A point x 2 X is said to be a local
maximum of f on X if there exists ε > 0 such that f(x) f(x) for any x 2 B(x, ε) \ X. Similarly, it is
said to be a strict local maximum of f on X if there exists ε > 0 such that f(x) < f(x) for any x 2 B(x, ε)
\{x} \ X.
386 11 Optimality Conditions for Nonlinear Optimization
Theorem 11.1 (Weierstrass). Let X be a nonempty and compact set. Assume that f : X ! ℝ is
continuous on X. Then, the problem min{f(x) : x 2 X} attains its minimum.
Proof If f is continuous on X and X is both closed and bounded, it follows that f is bounded below on
X. Now, since X is nonempty, from the axiom of completeness, there exists a greatest lower bound
α ¼ inf {f(x) : x 2 X}. Let 0 < ε < 1 and consider the set Xk ¼ {x 2 X : α f(x) α þ εk}, k ¼ 1, 2, . . .
By the definition of the infimum, for each k it follows that Xk 6¼ ∅ . Therefore, a sequence of points
{xk} ⊂ X can be constructed by selecting a point xk for each k ¼ 1, 2, . . . Since X is bounded, there
exists a convergent subsequence {xk}K ⊂ X indexed by the set K ⊂ ℕ with x as its limit. Since
X is closed, it follows that x 2 X. By continuity of f on X, since α f(xk) α þ εk, we have
α ¼ limk!1 , k2Kf(xk) ¼ f(x). Therefore, there exists a solution x 2 X so that f(x) ¼ α ¼ inf {f(x) : x 2 X},
i.e., x is a minimizing solution. ♦
All the hypotheses of this theorem are important. The feasible set must be nonempty; otherwise,
there are no feasible points at which the minimum is attained. The feasible set must be closed, i.e., it
must contain its boundary points. The objective function must be continuous on the feasible set;
otherwise, the limit at a point may not exist or it may be different from the value of the function at that
point. Finally, the feasible set must be bounded; otherwise, even continuous functions can be
unbounded on the feasible set.
Definition 11.9 (Convex Program). Let C be a convex set in ℝn and let f : C ! ℝn be a convex
function on C. Then, min{f(x) : x 2 C} is called a convex optimization problem, or a convex program.
Theorem 11.2 Let x be a local minimum of a convex program. Then, x is also a global minimum.
Proof If x is a local minimum, then there exists ε > 0 such that f(x) f(x) for any x 2 B(x, ε). Now,
suppose that x is not a global minimum. Then, there exists y 2 C such that f( y) < f(x). Let λ 2 (0, 1)
be chosen such that the point z ¼ λy þ (1 λ)x 2 B(x, ε). By convexity of C, z 2 C. Therefore,
Let us consider the problem of minimizing a function f(x) without constraints on the variables x 2 ℝn:
min ff ðxÞ : x 2 ℝn g:
For a given point x 2 ℝn, the optimality conditions determine whether or not a point is a local or a
global minimum of f. To formulate the optimality conditions, it is necessary to introduce some
concepts which characterize an improving direction along which the values of the function fdecrease.
11.2 Optimality Conditions for Unconstrained Optimization 387
The following result shows that every d 2 C0(x) is a descent direction at x.
f ðx þ λd Þ f ðx Þ
¼ ∇f ðx ÞT d þ kdkoðλdÞ:
λ
Since ∇f(x)Td < 0 and limλ ! 0o(λd) ¼ 0, it follows that there exists a δ > 0 such that
∇f(x)Td þ kdko(λd) < 0 for all λ 2 (0, δ). ♦
Theorem 11.3 (First-Order Necessary Conditions for a Local Minimum). Suppose that f : ℝn ! ℝ is
continuously differentiable at x. If x is a local minimum, then ∇f(x) ¼ 0.
Proof Suppose that ∇f(x) 6¼ 0. If we consider d ¼ ∇ f(x), then ∇f(x)Td ¼ k∇f(x)k2 < 0. By
Proposition 11.1, there exists a δ > 0 such that for any λ 2 (0, δ), f(x þ λd) < f(x). However, this is in
contradiction with the assumption that x is a local minimum for f. ♦
Observe that the above necessary condition represents a system of n algebraic nonlinear equations.
All the points x which solve the system ∇f(x) ¼ 0 are called stationary points. Clearly, the stationary
points need not all be local minima. They could very well be local maxima or even saddle points. In
order to characterize a local minimum, we need more restrictive necessary conditions involving the
Hessian matrix of the function f.
Theorem 11.4 (Second-Order Necessary Conditions for a Local Minimum). Suppose that f : ℝn ! ℝ
is twice continuously differentiable at point x. If x is a local minimum, then ∇f(x) ¼ 0 and ∇2f(x) is
positive semidefinite.
Proof Consider an arbitrary direction d. Then, using the differentiability of f at x, we get
388 11 Optimality Conditions for Nonlinear Optimization
1
f ðx þ λdÞ ¼ f ðx Þ þ λ∇f ðx ÞT d þ λ2 dT ∇2 f ðx Þd þ λ2 kdk2 oðλd Þ,
2
where limλ!0o(λd) ¼ 0. Since x is a local minimum, ∇f(x) ¼ 0. Therefore,
f ðx þ λd Þ f ðx Þ 1 T 2
¼ d ∇ f ðx Þd þ kdk2 oðλdÞ:
λ2 2
Since x is a local minimum, for λ sufficiently small, f(x þ λd) f(x). For λ ! 0, it follows from
the above equality that dT∇2f(x)d 0. Since d is an arbitrary direction, it follows that ∇2f(x) is
positive semidefinite. ♦
In the above theorems, we have presented the necessary conditions for a point x to be a local
minimum, i.e., these conditions must be satisfied at every local minimum solution. However, a point
satisfying these necessary conditions need not be a local minimum. In the following theorems, the
sufficient conditions for a global minimum are given, provided that the objective function is convex
on ℝn (see Appendix A).
Theorem 11.5 (First-Order Sufficient Conditions for a Strict Local Minimum). Suppose that
f : ℝn ! ℝ is continuously differentiable at x and convex on ℝn. If ∇f(x) ¼ 0, then x is a global
minimum of f on ℝn.
Proof Since f is convex on ℝn and continuously differentiable at x, then from the property of convex
functions given by the Proposition A4.5, it follows that for any x 2 ℝn f(x) f(x) þ ∇ f(x)T(x x).
However, x is a stationary point, i.e., f(x) f(x) for any x 2 ℝn. ♦
The following theorem gives the second-order sufficient conditions characterizing a local mini-
mum point for those functions which are strictly convex in a neighborhood of the minimum point.
Theorem 11.6 (Second-Order Sufficient Conditions for a Strict Local Minimum). Suppose that
f : ℝn ! ℝ is twice continuously differentiable at point x. If ∇f(x) ¼ 0 and ∇2f(x) is positive
definite, then x is a local minimum of f.
Proof Since f is twice continuously differentiable, for any d 2 ℝn, we can write
1
f ðx þ d Þ ¼ f ðx Þ þ ∇f ðx ÞT d þ dT ∇2 f ðx Þd þ kdk2 oðdÞ,
2
where limd!0o(d ) ¼ 0. Let λ be the smallest eigenvalue of ∇2f(x). Since ∇2f(x) is positive definite, it
follows that λ > 0 and dT∇2f(x)d λkdk2. Therefore, since ∇f(x) ¼ 0, we can write
λ
f ðx þ d Þ f ðx Þ þ oð d Þ kd k2 :
2
Since limd!0o(d ) ¼ 0, then there exists a η > 0 such that |o(d )| < λ/4 for any d 2 B(0, η). Hence,
λ
f ðx þ dÞ f ðx Þ kd k2 > 0
4
for any d 2 B(0, η)\{0}, i.e., x is a strict local minimum of function f. ♦
11.3 Optimality Conditions for Problems with Inequality Constraints 389
In the following, we shall discuss the nonlinear optimization problems with inequality constraints:
min f ðxÞ
subject to ð11:3Þ
x 2 X,
where X is a general set. Further on, we will be more specific and will define the problem as to
minimize f(x) subject to c(x) 0, where c(x) is the vector of constraint functions.
Definition 11.11 (Feasible direction). Let X be a nonempty set in ℝn.A nonzero vector d 2 ℝn is a
feasible direction at x 2 cl(X) if there exists a δ > 0 such that x þ ηd 2 X for any η 2 (0, δ).
Moreover, the cone of feasible directions at x, denoted by Cfd(x), is given by
Cfd ðx Þ≜fd 6¼ 0, there is δ > 0 such that x þ ηd 2 X, for any η 2 ð0, δÞg:
Clearly, a small movement from x along the direction d 2 Cfd(x) leads to feasible points. On the
other hand, a similar movement along a direction d 2 C0(x) (see Definition 11.10) leads to solutions
which improve the value of the objective function. The following theorem, which gives a geometrical
interpretation of the local minima, shows that a necessary condition for local optimality is that every
improving direction is not a feasible direction.
Theorem 11.7 (Geometric Necessary Condition for a Local Minimum). Let X be a nonempty set in
ℝn, and let f : ℝn ! ℝ be a continuously differentiable function. Suppose that xis a local minimum of
the problem (11.3). Then, C0(x) \ Cfd(x) ¼ ∅ .
Proof Suppose that there exists a nonzero vector d 2 C0(x) \ Cfd(x). By the Proposition 11.1 of the
algebraic characterization of a descent direction, there exists δ1 > 0 such that f(x þ ηd) < f(x) for any
η 2 (0, δ1). On the other hand, by Definition 11.11 of feasible direction, there exists δ2 > 0 such that
x þ ηd 2 Xfor any η 2 (0, δ2). Therefore, there exists x 2 B(x, η) \ X such that f(x þ ηd) < f(x), for
every η 2 (0, min{δ1, δ2}), which contradicts the assumption that x is a local minimum of f on X (see
Definition 11.7). ♦
So far, we have obtained a geometric characterization of the optimality condition for the problem
(11.3) given by Theorem 11.7 where Cfd(x) is the cone of feasible directions. To get a practical
optimality condition, implementable in computer programs, we need to convert this geometric
condition into an algebraic one. For this, we introduce the concept of active constraints at x and
define a cone Cac(x) ⊆ Cfd(x) in terms of the gradients of these active constraints. Now, we specify
the feasible set X as
390 11 Optimality Conditions for Nonlinear Optimization
where ci : ℝn ! ℝ, i ¼ 1, . . ., m, are continuous functions. Define the vector c(x) ¼ [c1(x), . . ., cm(x)].
Definition 11.12 (Active Constraint, Active Set). Let ci : ℝn ! ℝ, i ¼ 1, . . ., m, which define the
feasible set X ¼ {x : ci(x) 0, i ¼ 1, . . ., m}, and consider x 2 X a feasible point. For each i ¼ 1, . . .,
m, the constraint ci is said to be active or binding at x if ci(x) ¼ 0. It is said to be inactive at x if
ci(x) < 0. The set
Aðx Þ≜fi : ci ðx Þ ¼ 0g
The following proposition gives an algebraic characterization of a feasible direction showing the
relation between a cone Cac(x) expressed in terms of the gradients of the active constraints and the
cone of the feasible directions.
Proof Suppose that Cac(x) is a nonempty set. Let d 2 Cac(x). Observe that ∇ci(x)Td < 0 for each
i 2 A(x). Therefore, by Proposition 11.1, the algebraic characterization of a descent direction, it
follows that d is a descent direction for ci at x, i.e., there exists δ2 > 0 such that ci(x þ ηd ) < ci(x) ¼ 0
for any η 2 (0, δ2) and for any i 2 A(x). On the other hand, since ci is differentiable at x, it follows
that it is continuous at x. Therefore, since ci(x) < 0 and ci is continuous at x for each i 2 = A(x), there
exists δ1 > 0 such that ci(x þ ηd) < 0 for any η 2 (0, δ1) and for any i 2 = A(x ). Besides, for all
η 2 (0, min{δ1, δ2}), the points x þ ηd 2 X. Therefore, by Definition 11.11 of feasible direction,
d 2 Cfd(x). ♦
Remark 11.1 From the Theorem 11.7, we know that C0(x) \ Cfd(x) ¼ ∅. However, from
Proposition 11.2, we have that Cac(x) ⊆ Cfd(x). Therefore, C0(x) \ Cac(x) ¼ ∅, for any local
optimal solution x. ♦
The above geometric characterization of the local optimal solution (see Theorem 11.7) holds either
at the interior points intX ≜ {x 2 ℝn : ci(x) < 0, i ¼ 1, . . ., m}, or at the boundary points. For the
interior points, any direction is feasible, and the necessary condition C0(x) \ Cac(x) ¼ ∅ reduces to
the very well-known condition ∇f(x) ¼ 0, which is identical to the necessary optimal condition for
the unconstrained optimization (see Theorem 11.3).
It is important to notice that the condition C0(x) \ Cac(x) ¼ ∅ can be satisfied by non-optimal
points, i.e., this condition is necessary but not sufficient for a point x to be a local minimum of the
function f on X. For example, at any point x for which ∇ci(x) ¼ 0, for an arbitrary index i 2 A(x), the
condition C0(x) \ Cac(x) ¼ ∅ is trivially satisfied.
In the following, in order to get an algebraic necessary optimality condition to be used in
numerical computation, we want to transform the geometric necessary optimality condition
C0(x) \ Cac(x) ¼ ∅ to a statement in terms of the gradient of the objective function and the
11.3 Optimality Conditions for Problems with Inequality Constraints 391
gradient of the constraints. Thus, the first-order optimality conditions, known as the Karush-Kuhn-
Tucker (KKT) necessary conditions, are obtained. In order to formulate the KKT conditions, we need
to introduce the concept of regular point and of KKT point.
μ 0, ð11:6Þ
cðx Þ 0, ð11:7Þ
In Definition 11.14, the scalars μi, i ¼ 1, . . ., m, are called the Lagrange multipliers. The first
condition (11.5) is known as the primal feasibility condition. The conditions (11.6) and (11.7) are
known as dual feasibility conditions. The last condition (11.8), expressed as μi ci ðx Þ ¼ 0, i ¼ 1, . . .,
m, is the complementarity slackness (or transversality) condition.
We are now in the position to present the KKT necessary conditions for the optimality of the
nonlinear optimization problem with inequality constraints. For this, a very useful result is given by
the Theorem of Gordan (see Theorem A4.3). This is extensively used in the derivation of the
optimality conditions of linear and nonlinear programming problems.
Proof We know that x is an optimal solution for the problem min{f(x) : c(x) 0}. Therefore, using
the Remark 11.1, no direction d 2 ℝn exists such that ∇f(x)Td < 0 and ∇ci(x)Td < 0, for any i 2 A(x),
are simultaneously satisfied. Now, let A 2 ℝðcardðAðx ÞÞþ1Þn be the matrix whose rows are ∇f(x)T
T
and ∇ci(x ) , i 2 A(x ). By the Gordan Theorem (see Theorem A4.3), there exists a nonzero vector
p ¼ u0 , u1 , . . . , ucardðAðx ÞÞ 0 in ℝcardðAðx ÞÞþ1 such that ATp ¼ 0. Therefore,
X
u0 ∇f ðx Þ þ ui ∇ci ðx Þ ¼ 0,
i2Aðx Þ
where u0 0 and ui 0 for i 2 A(x) and u0 , u1 , . . . , ucardðAðx ÞÞ is not the vector zero. Considering
= A(x), the following conditions are obtained:
ui ¼ 0 for all i 2
392 11 Optimality Conditions for Nonlinear Optimization
u0 ∇f ðx Þ þ uT ∇cðx Þ ¼ 0,
uT cðx Þ ¼ 0,
u0 0, u 0,
ðu0 , uÞ 6¼ ð0, 0Þ,
where u is the vector with components ui for i ¼ 1, . . ., m, some of them being u0 , u1 , . . . , ucardðAðx ÞÞ
and the others being zero. Observe that u0 6¼ 0, because otherwise the assumption that the gradient of
the active constraints are linear independent at x is not satisfied. Now, considering the vector μ as
the vector u whose components are divided by u0, we get that (x, μ) is a KKT point. ♦
The above theorem shows the importance of the active constraints. A major difficulty in applying
this result to get optimization algorithms for solving (11.3) with (11.4) is that we do not know in
advance which constraints are active and which are inactive at the solution of the problem. In other
words, we do not know the active set. The majority of algorithms for solving this optimization
problem with inequalities face this difficulty of identifying the active set. Of course, the idea of
investigating all possible active sets of a problem in order to get the points satisfying the KKT
conditions is usually impractical. More exactly, this difficulty may be detailed as follows:
A different approach for solving inequality constrained problems which avoid the combinatorial
difficulty of nonlinear optimization with inequalities is given by the interior point (or barrier) methods
(see Chap. 17). These methods generate iterates that stay away from the boundary of the feasible set
defined by the inequality constraints. While the solution of the nonlinear optimization problem is
being approached, the barrier effects are weakened, thus allowing an increasingly accurate estimation
of the solution to be obtained. Thus, interior point methods avoid the combinatorial difficulty of the
inequality constrained optimization.
Remark 11.2 (Constrained Qualification). Observe that not every local minimum is a KKT point.
For a local minimum x to be a KKT point, an additional condition must be introduced on the
behavior of the constraints. Such a condition is known as the constraint qualification. Observe that the
first-order Taylor series expansion of the functions defining the problem about x is used to form an
11.4 Optimality Conditions for Problems with Equality Constraints 393
approximate problem in which both the objective and the constraints are linear. If, near the current
point x, the linearization is fundamentally different from the feasible set, then the linear approxima-
tion of the problem does not yield useful information about the original problem. Therefore, certain
assumptions about the nature of the constraints ci that are active at x must be introduced to ensure that
near x, the linearized approximation is similar to the feasible set. Given the point x and the active set
A(x),the linear independence constraint qualification (LICQ) holds if the set of active constraint
gradients {∇ci(x), i 2 A(x)} is linear independent. In Theorem 11.8, such a constraint qualification is
that x is a regular point, which is also known as the linear independence constraint qualification. The
Lagrange multipliers are guaranteed to be unique in Theorem 11.8 if LICQ holds. In general, if LICQ
holds, none of the active constraint gradients can be zero. Another (weaker) constraint qualification is
the Mangasarian-Fromovitz constraint qualification (MFCQ). It requires that there exists (at least)
one direction d 2 Cac(x), i.e., such that ∇ci(x)Td < 0, for each i 2 A(x). The MFCQ is weaker than
LICQ, i.e., the Lagrange multipliers are guaranteed to be unique if LICQ holds, while this uniqueness
property may be lost under MFCQ. Finally, observe that the constraint qualifications are sufficient
conditions for the linear approximation of the problem to be adequate, they are not necessary
conditions. ♦
In the following theorem, we present a sufficient condition which guarantees that any KKT point
of an inequality constrained nonlinear optimization problem is a global minimum of the problem. Of
course, this result is obtained under the convexity hypothesis.
On the other hand, the set {x 2 ℝn : ci(x) 0, i 2 A(x)} contains the feasible set {x 2 ℝn : ci(x) 0,
i ¼ 1, . . ., m}. Therefore, x is a global minimum for the problem with inequality constraints. ♦
In this section, the nonlinear optimization problem with equality constraints is considered:
min f ðxÞ
subject to ð11:9Þ
hi ðxÞ ¼ 0, i ¼ 1, . . . , p,
satisfies the constraints from (11.9), i.e., hi(x) ¼ 0, i ¼ 1, . . ., p, it is said to be feasible. Otherwise, it
is called infeasible.
The optimality of x can be seen as a balance between the function minimization and the constraint
satisfaction. A move away from xcannot be made without either violating a constraint or increasing
the value of the objective function. Formally, this can be stated as the following proposition.
Proposition 11.3 (Balance Between Function and Constraints). If x is a solution of (11.9) and
x þ δx is a nearby point, then:
In order to establish the optimality conditions for the nonlinear optimization problems with
equality constraints, we need to introduce some relevant concepts. An equality constraint h(x) ¼ 0
defines in ℝn a set which can be viewed as a hypersurface. When there are p equality constraints
hi(x) ¼ 0, i ¼ 1, . . ., p, then their intersection defines a (possible empty) set:
X≜f x 2 ℝn : hi ðxÞ ¼ 0, i ¼ 1, . . . , pg:
If the functions defining the equality constraints are continuously differentiable, then the set X is
said to be a differentiable manifold, or a smooth manifold.
Now, in any point on a differentiable manifold, the tangent set can be defined as follows. A curve η
on a manifold X is a continuous application η : I ⊂ ℝ ! X, i.e., a family of points η(t) 2 X
continuously parameterized by t in the interval I ⊂ ℝ. Clearly, a curve passes through the point x if
x ¼ η(t) for some t 2 I. The derivative of a curve at t, if it exists, is defined in a classical manner as
ηðt þ ξÞ ηðt Þ
η_ ðt Þ≜ lim ξ!0 :
ξ
Definition 11.15 (Tangent Set). Let X be a differentiable manifold in ℝn and a point x 2 X. Consider
the collection of all the continuously differentiable curves on X passing through x.Then, the
collection of all the vectors tangent to these curves at x is the tangent set to X at x, denoted by
TX(x).
If the constraints are regular in the sense of the above definition, then X is a subspace of dimension
n p. In this case, TX(x) is a subspace of dimension n p, called tangent space. At regular points,
the tangent space can be characterized in terms of the gradients of the constraints (Luenberger, 1973).
11.4 Optimality Conditions for Problems with Equality Constraints 395
Proof Let TX(x) be the tangent space at x and M(x) ¼ {d : ∇ h(x)Td ¼ 0}. Consider any curve η(t)
passing through x at t ¼ t, having derivative η_ ðt Þ such that ∇hðx ÞT η_ ðt Þ 6¼ 0: Since such a curve
would not lie on X, it follows that TX(x) ⊂ M(x). Now to prove that TX(x) ⊃ M(x), we must show
that if d 2 M(x), then there is a curve on X passing through x with derivative d. In order to construct
such a curve, we consider the equations
h x þ td þ ∇hðx ÞT uðtÞ ¼ 0,
where for fixed t the vector u(t) 2 ℝp is unknown. Observe that we have a nonlinear system of
pequations with p unknowns, continuously parameterized by t. At t ¼ 0, there is a solution u(0) ¼ 0.
The Jacobian matrix of the above system with respect to u at t ¼ 0 is the matrix ∇h(x) ∇ h(x)T which
is nonsingular, since ∇h(x) is of full rank if x is a regular point. Thus, by the implicit function
theorem (see Theorem A2.6), there is a continuous solution u(t) for a t a. The curve
η(t) ¼ x þ td þ ∇ h(x)Tu(t) by construction is a curve on X. By differentiating the above nonlinear
system with respect to t at t ¼ 0, we get
d
0 ¼ hðηðtÞÞ ¼ ∇hðx ÞT d þ ∇hðx Þ∇hðx ÞT u_ ð0Þ:
dt t¼0
Theorem 11.10 (Geometric Necessary Condition for a Local Minimum). Let f : ℝn ! ℝ and
hi : ℝn ! ℝ, i ¼ 1, . . ., p, be continuously differentiable functions. Suppose the x is a local minimum
point of the problem min{f(x) : h(x) ¼ 0}. Then, ∇f(x) is orthogonal to the tangent space TX(x), i.e.,
C0 ðx Þ \ T X ðx Þ ¼ ∅:
Proof Assume that there exists a d 2 TX(x) such that ∇f(x)Td 6¼ 0. Let η : I ¼ [a, a] ! X, a > 0, be
any smooth curve passing through x, with η(0) ¼ x and η_ ð0Þ ¼ d: Also let φ be the function defined
as φ(t) ≜ f(η(t)) for any t 2 I. Since x is a local minimum of f on X ≜ {x 2 ℝn : h(x) ¼ 0}, by
396 11 Optimality Conditions for Nonlinear Optimization
Definition 11.7, it follows that there exists δ > 0 such that φ(t) ¼ f(η(t)) f(x) ¼ φ(0) for any
t 2 B(0, δ) \ I. Therefore, t ¼ 0 is an unconstrained local minimum point for φ, and
The conclusion of this theorem is that if x is a regular point of the constraints h(x) ¼ 0 and a local
minimum point of f subject to these constraints, then all d 2 ℝn satisfying ∇h(x)Td ¼ 0 must also
satisfy ∇f(x)Td ¼ 0.
The following theorem shows that this property that ∇f(x) is orthogonal to the tangent space
implies that ∇f(x) is a linear combination of the gradients of hi(x), i ¼ 1, . . ., p, at x. This relation
leads to the introduction of Lagrange multipliers and the Lagrange function.
Observe that C1 and C2 are convex sets and C1 \ C2 ¼ ∅ . Therefore, by the separation of two
convex sets, given by Proposition A4.2, there exists a nonzero vector (μ, λ) 2 ℝp þ 1 (μ 2 ℝ, λ 2 ℝp)
such that for any d 2 ℝn and for any (z1, z2) 2 C2
h i
μ∇f ðx ÞT d þ λT ∇hðx ÞT d μz1 þ λT z2 :
Now, considering z2 ¼ 0 and having in view that z1 can be made an arbitrary large negative
number, it follows that μ 0. Additionally, considering (z1, z2) ¼ (0, 0), we must have
[μ ∇ f(x) þ λT ∇ h(x)]Td 0, for any d 2 ℝn. In particular, letting d ¼ [μ ∇ f(x) þ λT ∇ h(x)],
it follows that kμ ∇ f(x) þ λT ∇ h(x)k2 0, and thus,
Observe that μ > 0, for otherwise the above relation would contradict the assumption that ∇hi(x),
i ¼ 1, . . ., p, are linear independent. The conclusion of the theorem follows letting λ ¼ λ/μ and noting
that the linear independence assumption implies the uniqueness of the λ. ♦
Remark 11.3 The first-order necessary optimality conditions given by the Theorem 11.11 together
with the constraints of the problem (11.9):
hðx Þ ¼ 0, ð11:13bÞ
represent a total of n þ p nonlinear equations in the variables (x, λ). These conditions determine, at
least locally, a unique solution (x, λ). However, as in the unconstrained case, a solution to the first-
order necessary optimality conditions does not have to be a local minimum of the problem (11.9). ♦
Definition 11.17 (Lagrange multipliers). The scalars λ1 , . . . , λp in (11.12) are called the Lagrange
multipliers.
Definition 11.18 (Constraint normals). The vectors ∇h1(x), . . ., ∇ hp(x) are called the constraint
normals.
The condition (11.12) shows that ∇f(x) is linearly dependent on the constraint normals. Therefore,
a constrained minimum occurs when the gradients of the objective function and the gradients of the
constraints interact in such a way that any reduction in f can only be obtained by violating the
constraints (see Proposition 11.3).
Remark 11.4 (Regularity Assumption). For a local minimum to satisfy the above first-order neces-
sary conditions (11.13) and, in particular, for unique Lagrange multipliers to exist, it is necessary that
the equality constraints hi(x) ¼ 0, i ¼ 1, . . ., p, satisfy a regularity condition. As already seen, for a
local minimum of an inequality constrained nonlinear optimization problem to be a KKT point, a
constrained qualification is needed. For the equality constrained nonlinear optimization problems, the
condition that the minimum point is a regular point corresponds to linear independence constrained
qualification. ♦
If xis a regular local minimum of (11.9), then the first-order necessary optimality conditions
(11.13) can be rewritten as
∇x Lðx , λ Þ ¼ 0, ð11:15aÞ
∇λ Lðx , λ Þ ¼ 0: ð11:15bÞ
Observe that the second condition (11.15b) is a restatement of the constraints. The solution of the
optimization problem (11.9) corresponds to a saddle point of the Lagrangian.
398 11 Optimality Conditions for Nonlinear Optimization
and
d T ∇ 2 f ð x Þ þ ∇2 h ð x Þ T λ d 0 ð11:17Þ
Proof The first condition ∇f(x) þ ∇ h(x)Tλ ¼ 0 follows from the Theorem 11.11. Now we
concentrate to the second condition. Let x be a regular point and consider d an arbitrary direction
from TX(x), i.e., ∇h(x)Td ¼ 0. Let η : I ¼ [a, a] ! X, a > 0, be an arbitrary twice-differentiable
curve passing through x with η(0) ¼ x and η_ ð0Þ ¼ d: Consider φ a function defined as φ(t) ≜ f(η(t)),
for any t 2 I. Since x is a local minimum of f on X ≜ {x 2 ℝn : h(x) ¼ 0}, it follows that t ¼ 0 is an
unconstrained local minimum point for φ. Therefore, by Theorem 11.4, it follows that
The above theorem says that if TX(x) is the tangent space to X at x, then the matrix
∇2xx Lðx , λ Þ ¼ ∇2 f ðx Þ þ ∇2 hðx ÞT λ is positive semidefinite on TX(x).
then h(x þ εd) ¼ O(ε2). Therefore, a move away from x along d keeps the constraints satisfied to
first-order accuracy. In particular, if all the constraints in (11.9) are linear, then x þ εd is a feasible
point for all ε > 0. On the other hand, if any of the hi(x) in (11.9) are nonlinear, then d is a direction
tangential to the constraints at x. It is easy to see that the condition (11.12) implies that, for any
feasible direction d,
11.4 Optimality Conditions for Problems with Equality Constraints 399
dT ∇f ðx Þ ¼ 0:
1. If the constraint functions hi are all linear, the second-order condition that guarantees x is a
minimum of problem (11.9) is
dT ∇2 f ðx Þd > 0
2. If the constraint functions hi are nonlinear, the second-order condition that guarantees x is a
minimum of problem (11.9) is
dT ∇2 Lðx , λ Þd > 0
Remark 11.6 (Eigenvalues in Tangent Space). Geometrically, the restriction of the matrix
∇2xx Lðx , λ Þ to TX(x) corresponds to the projection PT X ðx Þ ∇2xx Lðx , λ Þ : A vector y 2 TX(x) is
2
an eigenvector of the projection PT X ðx Þ ∇xx Lðx , λ Þ if there is a real number ν such that
PT X ðx Þ ∇2xx Lðx , λ Þ y ¼ νy:
The real number ν is called the eigenvalue of PT X ðx Þ ∇2xx Lðx , λ Þ : To obtain a matrix represen-
tation for PT X ðx Þ ∇2xx Lðx , λ Þ , it is necessary to introduce a basis of the tangent subspace TX(x). It is
best to introduce an orthonormal basis, say E ¼ [e1, . . ., en p]. Any vector y 2 TX(x) can be written
as y ¼ Ez, where z 2 ℝnp. Now, ∇2xx Lðx , λ ÞEz represents the action of ∇2xx Lðx , λ Þ on such a
vector. To project this result back into TX(x) and to express the result in terms of the basis E ¼ [e1,
. . ., enp], it is necessary to multiply by ET. Therefore, ET ∇2xx Lðx , λ ÞEz is the vector whose
components give the representation in terms of the basis E. The (n p) (n p) matrix
ET ∇2xx Lðx , λ ÞE is the matrix representation of ∇2xx Lðx , λ Þ restricted to TX(x). The eigenvalues
of ∇2xx Lðx , λ Þ restricted to TX(x) can be determined by computing the eigenvalues of
ET ∇2xx Lðx , λ ÞE: These eigenvalues are independent of the particular choice of the basis E. ♦
Recall that the conditions given in Theorems 11.11 and 11.12 are necessary conditions. These
must hold at each local minimum point. However, a point satisfying these conditions may not be a
local minimum. As in the unconstrained case, it is possible to derive second-order conditions for
constrained optimization problems. The following theorem provides sufficient conditions for a
stationary point of the Lagrange function to be a local minimum.
∇x Lðx , λ Þ ¼ 0, ð11:18aÞ
∇λ Lðx , λ Þ ¼ 0, ð11:18bÞ
and
where λ ¼ λ þ chðxÞ: Since (x, λ) satisfy the sufficient conditions, by the Theorem A4.4, we obtain
that ∇x Lðx , λ Þ ¼ 0 and ∇2xx Lðx , λ Þ > 0, for sufficiently large c. L being positive definite at
(x, λ), it follows that there exist ρ > 0 and δ > 0 such that
ρ
Lðx, λ Þ Lðx , λ Þ þ kx x k2
2
for kx xk < δ. Besides, since Lðx, λ Þ ¼ f ðxÞ when h(x) ¼ 0, we get
ρ
f ðxÞ f ðx Þ þ kx x k2
2
if h(x) ¼ 0, kx xk < δ, i.e., x is a strict local minimum. ♦
where δ is a known scalar. If the solution of the perturbed problem is x þ u, then by using the
Taylor’s expansion, a first-order estimate of the optimum function value is f(x þ u) f(x) þ uT ∇ f(x).
However, the optimality condition for the original problem given by (11.12) states that ∇f ðx Þ ¼
λ1 ∇h1 ðx Þ, where λ1 is the Lagrange multiplier. Hence,
11.4 Optimality Conditions for Problems with Equality Constraints 401
In other words, the Lagrange multiplier is an approximate measure of the change in the objective
function that will occur if a unit amount is added to the right-hand side of the constraint. In general,
we have the following theorem.
Theorem 11.14 (Interpretation of the Lagrange Multipliers). Consider the family of problems min
{f(x) : h(x) ¼ w}, where f : ℝn ! ℝ and h : ℝn ! ℝp are twice continuously differentiable. Suppose
for w ¼ 0 there is a local solution x that is a regular point and that, together with its associated
Lagrange multiplier vector λ, satisfies the second-order sufficient conditions for a strict local
minimum. Then, for every w 2 ℝp in a region containing 0, there is a x(w), depending continuously
on w, such that x(0) ¼ x and such that x(w) is a local minimum of the problem. Furthermore,
∇w f ðxðwÞÞjw¼0 ¼ λ:
∇f ðxÞ þ ∇hðxÞT λ ¼ 0,
hðxÞ ¼ w:
By hypothesis, when w ¼ 0, there is a solution x, λ to this system. The Jacobian matrix of this
system, at this solution, is
" #
Lðx Þ ∇hðx ÞT
,
∇hðx Þ 0
However, since h(x) ¼ w, it follows that ∇h(x)∇wx(0) ¼ I. On the other hand, from
∇f(x) þ ∇ h(x)Tλ ¼ 0, it follows that ∇wf(x(c))|w ¼ 0 ¼ λ. ♦
402 11 Optimality Conditions for Nonlinear Optimization
We now present a generalization of Theorems 11.8, 11.11, 11.12, and 11.13 to nonlinear optimization
problems with equality and inequality constraints:
min f ðxÞ
subject to ð11:20Þ
ci ðxÞ 0, i ¼ 1, . . . , m,
hj ðxÞ ¼ 0, j ¼ 1, . . . , p,
Remark 11.7 (Discarding the Inactive Constraints). Let us consider the nonlinear optimization
problem min{f(x) : ci(x) 0, i ¼ 1, . . ., m}. Suppose that x is a local minimum point for this
problem. Clearly, x is also a local minimum of the above problem, where the inactive constraints
= A(x) have been discarded. Therefore, the inactive constraints at x can be ignored in the
ci(x) 0, i 2
statement of the optimality conditions. On the other hand, the active constraints can be treated as
equality constraints at a local minimum point. Hence, x is also a local minimum point to the equality
constrained problem:
min ff ðxÞ : ci ðxÞ ¼ 0, i 2 Aðx Þg
The difficulty is that we do not know the set of the active constraints at x.
From Theorem 11.11, it follows that if x is a regular point, there exists a unique Lagrange
multiplier vector μ 2 ℝm such that
X
∇f ðx Þ þ μi ∇ci ðx Þ ¼ 0:
i2Aðx Þ
∇f ðx Þ þ ∇cðx ÞT μ ¼ 0,
2Aðx Þ:
μi ¼ 0, i=
hj(x) ¼ 0, j ¼ 1, . . ., p}. A point x 2 X is a regular point of the constraints from (11.20) if the
gradients ∇ci(x), i 2 A(x), and ∇hj(x), j ¼ 1, . . ., p, are linearly independent. ♦
Definition 11.20 introduces the linear independence constraint qualification (LICQ) for general
nonlinear optimization problems, i.e., the gradients of the active inequality constraints and the
gradients of the equality constraints are all linearly independent at x. Another constraint qualification
is the linear constraint qualification (LCQ), i.e., ci(x), i ¼ 1, . . ., m, and hj : ℝn ! ℝ, j ¼ 1, . . ., p, are
affine functions. Another one is the Slater condition for a convex problem, i.e., there exists a point x
such that ci ðxÞ < 0, i ¼ 1, . . ., m, and hðxÞ ¼ 0:
We emphasize that the constraint qualification ensures that the linearized approximation to the
feasible set X captures the essential shape of X in a neighborhood of x.
μ 0, ð11:21bÞ
cðx Þ 0, ð11:21cÞ
hðx Þ ¼ 0, ð11:21dÞ
and
yT ∇2 f ðx Þ þ ∇2 cðx ÞT μ þ ∇2 hðx ÞT λ y 0, ð11:22Þ
Proof Observe that since μ 0 and c(x) 0, (11.21e) is equivalent to the statement that a
component of μ is nonzero only if the corresponding constraint is active. Since x is a minimum
point over the constraint set, it is also a minimum over the subset of that set defined by setting the
active constraints to zero. Therefore, for the resulting equality constrained problem defined in a
neighborhood of x,there are Lagrange multipliers. Hence, (11.21a) holds with μi ¼ 0 if ci(x) 6¼ 0.
It remains to show that μ 0. This is a little more elaborate. Suppose that for some k 2 A(x),
μk< 0: Let X and T be the surface and the tangent space, respectively, defined by all the other active
constraints at x. By the regularity assumptions, there is a d such that d 2 T and ∇ck(x)Td < 0. Let η(t)
be a curve on X passing through x at t ¼ 0 with η_ ð0Þ ¼ d: Then, for small t 0, it follows that η(t) is
feasible and
df
ðηðtÞÞ ¼ ∇f ðx ÞT d < 0
dt t¼0
The conditions (11.21) are known as the Karush-Kuhn-Tucker conditions, or KKT conditions. The
conditions (11.21e) written as μi ci ðx Þ ¼ 0, i ¼ 1, . . ., m, are the complementary conditions. They
show that either constraint i is active or the corresponding Lagrange multiplier μi ¼ 0, or possibly
both. For a given nonlinear optimization problem (11.20) and a solution point x, there may be many
Lagrange multipliers (μ, λ) for which the conditions (11.21) and ((11.22) are satisfied. However,
when x is a regular point (the LICQ is satisfied), the optimal (μ, λ) is unique.
The KKT conditions motivate the following definition which classifies constraints according to
whether or not their corresponding Lagrange multiplier is zero.
Definition 11.21 (Strongly Active (Binding)–Weakly Active Constraints). Let x be a local solution
to the problem (11.20) and the Lagrange multipliers (μ, λ) which satisfy the KKT conditions
(11.21). We say that an inequality constraint ci(x) is strongly active or binding if i 2 A(x) and the
corresponding Lagrange multiplier μi > 0: We say that ci(x) is weakly active if i 2 A(x) and the
corresponding Lagrange multiplier μi ¼ 0: ♦
Definition 11.22 (Strongly Active Simple Bound Constraints–Binding Simple Bound Constraints).
Let xbe a local solution to the problem min{f(x) : x 2 ℝn, li xi ui, i ¼ 1, . . ., n}. Let g ¼ ∇ f(x)
be the gradient of the minimizing function in x. Then, the inequality constraint li xi ui is a
strongly active simple bound constraint in x if xi ¼ li and gi 0, or xi ¼ ui and gi 0, where gi is
the i-th component of g. ♦
The non-negativity condition (11.21b) on the Lagrange multiplier for the inequality constraints
ensures that the function f(x) will not be reduced by a move off any of the binding constraints at x to
the interior of the feasible region.
A special case of complementarity is important because it introduces the concept of degeneracy in
optimization.
Definition 11.23 (Strict Complementarity). Let x be a local solution to the problem (11.20) and the
Lagrange multipliers (μ, λ) which satisfy the KKT conditions (11.21). We say that the strict
complementarity holds if exactly one of μi and ci(x) is zero for each index i ¼ 1, . . ., m. In other
words, we have μi > 0 for each i 2 A(x). ♦
Usually, satisfaction of strict complementarity is beneficial for algorithms and makes it easier to
determine the active set A(x) so that convergence is more rapid.
Remark 11.8 (Degeneracy). A property that causes difficulties for some optimization algorithms is
degeneracy. This concept refers to the following two situations:
• The gradients of the active constraints ∇ci(x), i 2 A(x), are linearly dependent at the solution
point x. Linear dependence of the gradients of the active constraints can cause difficulties during
the computation of the step direction because certain matrices that must be factorized become rank
deficient.
• Strict complementarity fails to hold, that is, there is some index i 2 A(x) such that all the Lagrange
multipliers satisfying the KKT conditions (11.21) have μi ¼ 0: In the case when the problem
contains weakly active constraints, it is difficult for an algorithm to determine whether these
constraints are active at the solution. For some optimization algorithms (active-set algorithms and
gradient projection algorithms), the presence of weakly active constraints can cause the algorithm
to zigzag as the iterates move on and off the weakly constraints along the successive iterations. ♦
11.5 Optimality Conditions for General Nonlinear Optimization Problems 405
∇hðx ÞT y ¼ 0, ð11:23cÞ
where L(x, μ, λ) ¼ f(x) þ μTc(x) þ λTh(x), then x is a strict local minimum of the problem.
Proof The theorem says that the Hessian of the Lagrangian is positive definite on the critical cone
C(x, μ, λ) defined by (11.23) for x, μ and λ satisfying the KKT conditions (11.21a), (11.2b),
(11.2c), (11.2d), and (11.21e).
Assume that x is not a strict local minimum, and let {yk} be a sequence of feasible points
converging to x such that f(yk) f(x). Consider yk of the form yk ¼ x þ δksk with δk > 0 and
kskk ¼ 1. Assume that δk ! 0 and sk ! s. Clearly, ∇f(x)Ts 0 and ∇hj(x)s ¼ 0 for j ¼ 1, . . ., p.
On the other hand, for each active constraint ci, we have ci(yk) ci(x) 0. Therefore,
∇ci(x)Ts 0.
If ∇ci(x)Ts ¼ 0, for all i 2 l : cl ðx Þ ¼ 0, μl > 0 , then the proof is similar to that in Theorem
11.13. If ∇ci(x)Ts < 0 for at least one i 2 l : cl ðx Þ ¼ 0, μl > 0 , then
The KKT sufficient conditions for convex programming with inequality constraints given in
Theorem 11.9 can immediately be generalized to nonlinear optimization problems with convex
inequalities and affine equalities.
Theorem 11.17 (KKT Sufficient Conditions for General Problems). Let f : ℝn ! ℝ and ci : ℝn ! ℝ,
i ¼ 1, . . ., m, be convex and continuously differentiable functions. Also, let hi : ℝn ! ℝ, i ¼ 1, . . ., p,
be affine functions. Consider the problem minf(x) subject to x 2 X ≜ {x 2 ℝn : c(x) 0, h(x) ¼ 0}. If
(x, μ, λ) satisfies the KKT conditions (11.21a)–(11.21e), then x is a global minimum for fon X. ♦
importance in the system of the constraints. Otherwise, as in Theorem 11.14, the following theorem
can be presented.
Theorem 11.18 (Interpretation of the Lagrange Multipliers for General Problems). Consider the
family of problems min{f(x) : c(x) v, h(x) ¼ w}, where f : ℝn ! ℝ, c : ℝn ! ℝm and h : ℝn ! ℝp
are twice continuously differentiable. Suppose for v ¼ 0, w ¼ 0 there is a local solution x that is a
regular point and that, together with its associated Lagrange multiplier μ 0, λ, satisfies the
second-order sufficient conditions for a strict local minimum. Then, for every (v, w) 2 ℝm þ p, in a
region containing (0, 0) 2 ℝm þ p, there is a solution x(v, w) continuously depending on (v, w), such
that x(0, 0) ¼ xand such that x(v, w) is a local minimum of the problem. Furthermore,
∇v f ðxðv, wÞÞj0,0 ¼ μ ,
11.6 Duality
In optimization, the duality theory shows how to construct an alternative problem from functions and
data that define the original optimization problem. In this context, the original problem is called the
primal problem. In some cases, the dual problem is easier to solve than the original problem. Besides,
the dual problem can be used to obtain a lower bound on the optimal value of the objective for the
primal problem.
Let us consider the nonlinear optimization problem (primal problem)
min f ðxÞ subject to cðxÞ 0, ð11:24Þ
x2ℝn
where f : ℝn ! ℝ is a continuously differentiable function and c(x) ≜ [c1(x), . . ., cm(x)]T, with ci(x),
i ¼ 1, . . ., m, are all convex functions. The Lagrangian function for (11.24) is
where λ 2 ℝm is the Lagrange multiplier vector. With this, the dual objective function q : ℝn ! ℝ is
defined as
Obviously, for some problems, the infimum in (11.26) is 1 for some values of λ. The domain of
q is defined as the set of λ for which q is finite, that is, D ≜ {λ : q(λ) > 1}. Observe that the
infimum in (11.26) involves finding the global minimizer of the function L(., λ) for a given λ, which is
a very difficult problem. However, when f and ci, i ¼ 1, . . ., m, are all convex functions and λ 0, it
follows that the function L(., λ) is also convex. In this case, all the local minimizers are also global
minimizers. The dual problem of (11.24) is defined as
max qðλÞ subject to λ 0: ð11:27Þ
λ2ℝm
Theorem 11.19 The function q defined by (11.26) is concave and its domain D is convex.
Proof For any λ0 2 ℝm and λ1 2 ℝm, any x 2 ℝn, and any α 2 [0, 1], it follows that
Lðx, ð1 αÞλ0 þ αλ1 Þ ¼ ð1 αÞLðx, λ0 Þ þ αLðx, λ1 Þ:
As we know, the infimum of a sum is greater than or equal to the sum of the infimums. Therefore,
taking the infimum of both sides in the above expression and using (11.26), we obtain
qðð1 αÞλ0 þ αλ1 Þ ð1 αÞqðλ0 Þ þ αqðλ1 Þ,
showing the concavity of q. Now, if both λ0 and λ1 belong to D, it follows that q((1 α)λ0 þ αλ1) 1.
That is, (1 α)λ0 þ αλ1 2 D, i.e., D is convex. ♦
Theorem 11.20 For any xb feasible for (11.24) and any b
λ 0, it follows that q b
λ f ðxbÞ:
Proof We have b
λ 0 and cðxbÞ 0: Therefore,
q bλ ¼ inf f ðx Þ b
λ cðxÞ f ðxbÞ b
T T
x
λ cðxbÞ f ðxbÞ: ♦
Theorem 11.20, called the weak duality theorem, tells us that value of the dual problem (11.27)
gives a lower bound on the optimal objective value for the primal problem (11.24).
The KKT optimality conditions for the primal problem (11.24) are as follows:
∇f ðxbÞ ∇cðxbÞb
λ ¼ 0, ð11:28aÞ
cðxbÞ 0, ð11:28bÞ
b
λ 0, ð11:28cÞ
b
λi ci ðxbÞ ¼ 0, i ¼ 1, . . . , m, ð11:28dÞ
where ∇c(x) 2 ℝn m is the Jacobian matrix defined by ∇c(x) ¼ [∇c1(x), . . ., ∇cm(x)]. The next
theorem, due to Wolfe (1961), shows that the optimal Lagrange multipliers for (11.24) are solutions
of the dual problem (11.27).
Theorem 11.21 Suppose that xb is a solution of (11.24) and that f and ci, i ¼ 1, . . ., m, are convex
functions on ℝn that are continuously differentiable. Then, any b
λ for which xb, bλ satisfies the KKT
conditions (11.28) is a solution of the dual problem (11.27).
Proof Suppose that xb, bλ satisfies (11.28). Since b
λ 0, it follows that L :, b
λ is a convex and
differentiable function. Therefore, having in view (11.28a), for any x, it follows that
T
L x, b
λ L xb, bλ þ ∇x L xb, b
λ ðx xbÞ ¼ L xb, b λ :
q b
λ ¼ inf L x, b
λ ¼ L xb, bλ ¼ f ðxbÞ b
T
λ cðxbÞ ¼ f ðxbÞ:
x
From Theorem 11.20, it follows that qðλÞ f ðxbÞ for all λ 0. Therefore, from q bλ ¼ f ðxbÞ, it
follows that bλ is a solution of the dual problem (11.27). ♦
We have dealt so far with the duality in the Lagrange sense. In the following, we present a slightly
different form of the duality, the so-called the Wolfe duality (1961), which is very convenient for
computations. The Wolfe dual of (11.24) is
max Lðx, λÞ ð11:29aÞ
x, λ
subject to
ð11:29bÞ
∇x Lðx, λÞ ¼ 0, λ 0:
The following theorem shows the relationship between these dual problems.
Theorem 11.22 Suppose that f and ci, i ¼ 1, . . .m, are convex and continuously differentiable on
ℝn. Suppose that xb, b λ is a solution of (11.24) at which the linear independence constrained
qualification holds. Then, xb, b
λ solves the dual problem (11.29).
Proof From the KKT optimality conditions (11.28), it follows that xb, b λ satisfies (11.29b) and
L xb, b
λ ¼ f ðxbÞ: Therefore, having in view the convexity of L(., λ), for any pair (x, λ) that satisfies
(11.29b), we have
L xb, bλ ¼ f ðxbÞ f ðxbÞ λT cðxbÞ ¼ Lðxb, λÞ
Lðx, λÞ þ ∇x Lðx, λÞT ðxb xÞ ¼ Lðx, λÞ,
showing that xb, bλ maximizes L over the constraints (11.29b), i.e., solvers (11.29). ♦
Since G is positive definite and L(., λ) is a strictly convex quadratic function, it follows that the
infimum is achieved when ∇xL(x, λ) ¼ 0, that is, when Gx þ c ATλ ¼ 0. Therefore, x ¼ G1(ATλ c).
Introducing it in the infimum, we get the dual objective as
1 T T
qð λ Þ ¼ A λ c G1 AT λ c þ bT λ:
2
The KKT conditions were originally named after Harold W. Kuhn (1925–2014) and Albert
W. Tucker (1905–1995), who first published them in 1951 (Kuhn & Tucker, 1951). Later on, the
scholars discovered that the necessary conditions for this problem had been stated by William Karush
(1917–1997) in his master’s thesis in 1939 (Karush, 1939). Another approach of the optimality
conditions for the nonlinear optimization problem was given in 1948 by Fritz John (1910–1994) (John
1948). Also see Cottle (2012).
Simple Bound Constrained
Optimization 12
The simple bound constrained optimization is a class of nonlinear optimization problems with a
special structure, found in many real practical applications. The mathematical model of these
problems is as follows:
min f ðxÞ
subject to ð12:1Þ
x 2 X ¼ fx 2 ℝn , li xi ui , i ¼ 1, . . . , ng:
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 411
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_12
412 12 Simple Bound Constrained Optimization
method, on the limited memory BFGS with simple bounds, and on the truncated Newton with simple
bounds.
As we know, for a continuously differentiable function of one variable, the necessary conditions for
the unconstrained optimality at x are simply f 0(x) ¼ 0, and if f is twice continuously differentiable,
00
f (x) 0. For a simple bound constrained problem in which the variables restrict the domain of f to
an interval [a, b], the necessary condition must be changed in order to admit the possibility for the
minimizer to be one of the endpoints of the interval [a, b]. If x ¼ a is a local minimizer, then
00
f(x) f(a) for all a x sufficiently near a. Therefore, f 0(a) 0. Nothing can be said about f .
0
Similarly, if x ¼ b is a local minimizer, then f (b) 0. Hence, all three possibilities x ¼ a, x ¼ b,
and a < x < b can be expressed by the following theorem:
Theorem 12.1 Let f be a continuously differentiable function of one variable on the interval
[a, b]. Let x be a local minimum of f on [a, b]. Then,
As in the unconstrained case, the stationary points are said to satisfy the first-order necessary
conditions.
In order to present the second-order necessary conditions for the problem (12.1), the reduced
Hessian is introduced. Let f be twice continuously differentiable at x 2 X. The reduced Hessian
∇2R f ðxÞ is the matrix
(
2 δij , i 2 AðxÞ, j 2 AðxÞ,
∇R f ðxÞ ij ¼ 2 ð12:5Þ
∇ f ðxÞ ij , otherwise:
Theorem 12.2 Let f be twice Lipschitz continuously differentiable and let x be the solution of the
problem (12.1). Then, the reduced Hessian ∇2R f ðx Þ is positive semidefinite.
Proof Assume that at point x there are t inactive indices and n t active indices. With this, the vector
x 2 X can be partitioned by reordering the variables as x ¼ [z, y], where z corresponds to the inactive
indices and y to the active ones. Then, the map ψ(z) ¼ f(z, y) has an unconstrained local minimizer at
z 2 ℝt, and hence, ∇2ψ is positive semidefinite. However, the reduced Hessian can be written as
12.1 Necessary Conditions for Optimality 413
" #
∇2 ψ ðx Þ
∇2R f ðx Þ ¼
I
Let P be the projection onto X, i.e., the map that takes x to the nearest point (in the l2 norm) in X to
x. Then,
8
>
< li , if ðxÞi li ,
PðxÞi ¼ ðxÞi , if li < ðxÞi < ui , ð12:6Þ
>
:
ui , if ðxÞi ui :
The following theorem proved in Kelley (1999) states the necessary condition for optimality.
Theorem 12.3 Let f be continuously differentiable. A point x 2 X is stationary for the problem
(12.1) if and only if
x ¼ Pðx α∇f ðx ÞÞ ð12:7Þ
for all α 0. ♦
∇f ðx Þ λ þ μ ¼ 0,
λ 0, ðl x ÞT λ ¼ 0,
μ 0, ðx uÞT μ ¼ 0,
l x u,
where λ, μ 2 ℝn are the KKT multipliers. In this context, the strict complementarity is said to hold at
the KKT point (x, λ, μ) as follows: if xi ¼ li implies λi > 0 and xi ¼ ui implies μi > 0: Another
equivalent way to present the KKT conditions is as follows:
l x u,
li < xi < ui ) ∇f ðx Þi ¼ 0,
xi ¼ li ) ∇f ðx Þi 0,
xi ¼ ui ) ∇f ðx Þi 0:
l x u, ∇P f ðx Þ ¼ 0:
414 12 Simple Bound Constrained Optimization
The sufficient conditions are formulated by using the definition of the reduced Hessian. Observe that
if x is stationary, i 2 I(x), and ei is a unit vector in the i-th coordinate direction, then x tei 2 X for
all t sufficiently small. Since
df ðx tei Þ
¼ ∇f ðx ÞT ei 0,
dt
it follows that
ð∇f ðx ÞÞi ¼ 0 for all i 2 I ðx Þ: ð12:8Þ
In order to formulate the sufficient conditions for optimality, the concept of nondegenerate
stationary point is introduced. A point x 2 X is a nondegenerate stationary point for the problem
(12.1) if x is a stationary point and
ð∇f ðx ÞÞi 6¼ 0 for all i 2 Aðx Þ: ð12:9Þ
The following theorem proved in Kelley (1999) gives the sufficiency conditions associated to
problem (12.1).
Theorem 12.4 Let x 2 X be a nondegenerate stationary point for the problem (12.1). Let f be twice
continuously differentiable in a neighborhood of x, and assume that the reduced Hessian at x is
positive definite. Then, x is a solution of the problem (12.1) and, hence, a nondegenerate local
minimizer.
Proof Let x 2 X and define φ(t) ¼ f(x þ t(x x)). We prove that either (i) φ0(0) > 0 or (ii) φ0(0) ¼ 0,
00
φ (0) > 0. Consider e ¼ x x. Observe that
However, from the stationarity, we have ∇f(x)TPI(e) ¼ 0. Now, if PA(e) 6¼ 0, then, from
nondegeneracy, it follows that ∇f(x)TPA(e) > 0, i.e., (i) holds. On the other hand, if PA(e) ¼ 0, then
φ00 ð0Þ ¼ ðx x ÞT PI ∇2 f ðx Þ PI ðx x Þ ¼ ðx x ÞT ∇2R f ðx Þðx x Þ > 0,
One of the methods for solving simple bound optimization problems is the active-set method. Polyak
(1969) proposed an extension of the conjugate gradient method to this class of problems with
12.3 Methods for Solving Simple Bound Optimization Problems 415
quadratic objective. In this method, the conjugate gradient method is used to explore a face of the
feasible set, and the negative gradient is used to leave a face. At every iteration, the algorithm of
Polyak only added or dropped one constraint. Dembo and Tulowitzki (1983) proposed an algorithm
which could add and drop many constraints at an iteration. Later, Yang, and Tolle (1991) further
developed Polyak’s algorithm to obtain a finite termination even when the problem was degenerate at
the local minimizer. Another variant of this algorithm, which includes a rigorous convergence
analysis, was given by Wright (1990). Moré and Toraldo (1991) improved this algorithm by
proposing a gradient projection method to identify a working face of the feasible set, followed by a
conjugate gradient method to explore the face. For a simple bound optimization problem, at point
x 2 X, the following two sets L(x) ¼ {i : xi ¼ li} and U(x) ¼ {i : xi ¼ ui} can be defined. Clearly,
A(x) ¼ L(x) [ U(x). If x is a local minimizer of f in X, then x is a local minimizer of f(x) subject to
xi ¼ li, i 2 L(x) and xi ¼ ui, i 2 U(x). The active-set methods aim at predicting L(x) and U(x) by
using in an iterative way the disjoint sets L, U ⊆ {1, . . ., n}. The idea of the active-set method is as
follows: given the sets L and U, the following problem
minf ðxÞ
subject to
xi ¼ li , i 2 L and xi ¼ ui , i 2 U
weakness in any line-search method which uses ∇2f when far from the minimizer. To accelerate the
convergence of these methods, more research has been developed on the Newton and trust-region
methods. For the nondegenerate bound optimization problems, the superlinear and quadratic conver-
gence was established by Conn, Gould, and Toint (1988a, b, 1991a) and Facchinei, Júdice, and Soares
(1998). For the degenerate problems, these convergence results were established by Facchinei,
Lucidi, and Palagi (2002); Friedlander, Martı́nez, and Santos (1994); Lescrenier (1991); and Lin
and Moré (1999). Computing the Newton step can be expensive. Therefore, approximation
techniques, such as the sparse or incomplete Cholesky factorization, have been suggested in order
to reduce the computational expense.
A gradient projection method with the limited memory BFGS matrix to approximate the Hessian of
the objective function was developed by Byrd, Lu, Nocedal, and Zhu (1995b). In this algorithm, the
gradient projection method is used to determine a set of active constraints at each iteration. This is a
line-search algorithm (as opposed to trust-region) that uses the limited memory BFGS matrices.
Another algorithm that uses the limited-memory quasi-Newton methods to update the inactive
variables and a projected gradient method to update the active variables was given by Ni and
Yuan (1997).
A trust-region Newton method is the TRON method (Lin & Moré, 1999). It uses the gradient
projection to generate a Cauchy step, a preconditioned conjugate gradient method with an incomplete
Cholesky factorization to generate a direction, and a projected search to compute the step. Using the
projected searches allows TRON to examine the faces of the feasible domain by generating a small
number of minor iterations.
The affine-scaling interior point method by Coleman and Li (1994, 1996, 1997) represents a
different approach, related to the trust-region method. Some developments of this strategy are
presented in Dennis, Heinkenschlos, and Vicente (1998); Heinkenschlos, Ulbrich, and Ulbrich
(1999); and Ulbrich, Ulbrich, and Heinkenschlos (1999). These methods are characterized by a
reformulation of the necessary optimality conditions obtained by multiplication with a scaling matrix.
The resulting system is solved by using the Newton method. In another way of research, Zhang (2004)
proposes an interior point approach for solving this linear system.
As we have already said, a projected Newton-like method for the solution of (12.1) is the truncated
Newton method for the large-scale box constrained optimization given by Facchinei, Lucidi, and
Palagi (2002). This method is based on the works of Facchinei and Lucidi (1992a, b). At each
iteration k, the estimates L(xk) and U(xk) of the variables are defined that will supposedly be at their
lower and upper bounds at the solution, respectively. At the same time, the estimate F(xk) of the
variables which we believe to be free is computed. This partition of variables suggests performing an
unconstrained minimization in the space of the free variables, a typical approach in the active-set
methods. For a locally fast convergent method, an obvious choice for the unconstrained minimization
in the subspace of the free variables is the Newton method. In order to compensate the loss of the
curvature information that we have in the subspace of those variables which are active but with zero
multiplier, Facchinei, Lucidi, and Palagi (2002) introduced a correction term in the right-hand term of
the Newton system. Other approaches also based on the truncated Newton method are those given by
Schlick and Fogelson (1992a, b) and Nash (1984a, b, 1985).
A nonmonotone spectral projected gradient (SPG) for solving simple bound optimization
problems is the one given by Birgin, Martı́nez, and Raydan (2000, 2001). This algorithm combines
the projected gradient method of Bertsekas (1976) with two new features in optimization. The first
one is based on the nonmonotone line-search developed by Grippo, Lampariello, and Lucidi (1986).
The second one uses the spectral step length introduced by Barzilai and Borwein (1988) and further
analyzed by Raydan (1993, 1997).
12.4 The Spectral Projected Gradient Method (SPG) 417
Another approach that we mention and that was given by Sainvitu and Toint (2006) is the filter-
trust-region method for the simple bound constrained optimization. The algorithm combines the
filter-trust-region algorithm of Gould, Sainvitu, and Toint (2005b) with a gradient projection method.
Finally, a direct method for solving (12.1) is BOBYQA, by Powell (2009), where a quadratic
approximation of the objective function is minimized at each iteration. Recent advances in the simple
bound constrained optimization have been presented by Hager and Zhang (2006b).
In the following, we present the spectral projected gradient method (SPG) by Birgin, Martı́nez, and
Raydan (2000, 2001), the limited-memory BFGS algorithm with gradient projection (L-BFGS-B) by
Byrd, Lu, Nocedal, and Zhu (1995b), and the truncated Newton with simple bounds (TNBC) by Nash
(1984a, b, 1985) for solving simple bound constrained optimization problems.
The gradient projected algorithm and its spectral variant are natural extensions of the steepest descent
algorithm to simple bound constrained problems (Bertsekas, 1976). Let us consider a current iteration
x. The new iteration is computed as
where α is the stepsize computed by the Armijo rule or by some other line-search procedures. The
gradient projected algorithm determines a sequence of iterations which satisfies the simple bounds of
the problem (12.1) and achieves a sufficient decrease of the function f. For α > 0, define
The sufficient decrease condition for the line-search in simple bound constrained problems is
expressed as
ρ
f ðxðαÞÞ f ðxÞ kx xðαÞk2 , ð12:12Þ
α
where ρ is a positive parameter (ρ ¼ 104 (Dennis & Schnabel, 1983)). Therefore, the general
gradient projected algorithm can be presented as the following algorithm.
1. Select an initial point x0 and a value for the parameter β 2 (0, 1). Set k ¼ 1
2. Test a criterion for stopping the iterations
3. Compute f(xk) and ∇f(xk)
4. (Armijo rule) Find the least integer m such that (12.12) holds for α ¼ βm
5. Set xkþ1 ¼ x(α), k ¼ k þ 1 and go to step 2 ♦
The spectral projected gradient method is a method of projected gradient which includes two
ingredients. The first one is an extension to the simple bound optimization problem and an extension
of the globalization techniques used in the unconstrained optimization and based on the
non-monotone line-search by Grippo, Lampariello and Lucidi (1986). The second one consists in
using the spectral stepsize introduced by Barzilai and Borwein (1988) and analyzed by Raydan
(1993). Mainly, the scaled gradient projected algorithm is a version of the gradient projected
algorithm by Bertsekas, which uses the Armijo rule along a nonlinear trajectory of projections.
418 12 Simple Bound Constrained Optimization
Consider the problem (12.1) where the function f is defined and has continuous partial derivatives
on an open set that contains X. Assume that f is bounded from below on X. Consider a point x 2 ℝn.
Then, the orthogonal projection of x onto X is PX(x) with
ðPX ðxÞÞi ¼ max fli , min fxi , ui gg, i ¼ 1, . . . , n: ð12:13Þ
For any x 2 X, the algorithm uses the spectral projected gradient defined as
gt ðxÞ ¼ ½PX ðx t∇f ðxÞÞ x, ð12:14Þ
where t > 0 is a spectral selection of the stepsize. Observe that zeroing the spectral projected gradient
is equivalent to the optimality conditions of the first order. Therefore, the norm of the spectral
projected gradient is a criterion for stopping the iterations.
The algorithm starts with an initial point x0 2 ℝn and uses an integer m 1 used in the
nonmonotone line-search, a small parameter αmin > 0, a large parameter αmax > αmin, a small
parameter ε1 > 0, a sufficient decrease parameter γ 2 (0, 1), and the safeguarding parameters
0 < σ 1 < σ 2 < 1 used as protection in the quadratic interpolation. Initially, α0 2 [αmin, αmax] is
arbitrary. The step length is computed by the quadratic or cubic interpolation.
1. Initialization. Consider some numerical values for the above described parameters, as well as the initial
point x0 2 ℝn. If x0 2
= X, then set x0 ¼ PX(x0). Set k ¼ 0
2. Compute f(xk) and ∇f(xk)
3. Compute the gradient projected PX(xk ∇ f(xk))
4. Compute the initial spectral step length
n as n oo
α ¼ min α max , max α min , 1
kPX ðxk ∇f ðxk ÞÞxk k1
If at < σ 1 or at > σ 2α, then set at ¼ at/2. Set α ¼ at. Compute xkþ1 ¼ xk þ αd and go to step 8.
Cubic interpolation. If α ¼ 1, then compute
α2 ðdT ∇f ðxk ÞÞ
αt ¼ 2 f ðx Þf ðx Þα dT ∇f ðx Þ
ð kþ1 k ð k ÞÞ
pαp
a ¼ α2 α2 ααp , b ¼ α2 þ α2 ααp ,
p q 1 qα 1
p p
r ¼ b2 3a(dT ∇ f(xk)).
12.4 The Spectral Projected Gradient Method (SPG) 419
If a ¼ 0, then set
ðd T ∇f ðxk ÞÞ
αt ¼ 2b ,
otherwise,
pffi
αt ¼ bþ
3a :
r
The algorithm is based on the spectral projected gradient direction PX(xk αk ∇ f(xk)) xk, where
αk is the safeguarded inverse Rayleigh quotient sTk sk = yTk sk : Observe that sTk sk = yTk sk is a
R1
Rayleigh quotient corresponding to the average Hessian matrix ∇2 f ðxk þ tsk Þdt:
0
The line-search uses the protected quadratic interpolation or the cubic interpolation implemented
in steps 9 and 10, according to a value of a parameter, not explained here. The protection of the
quadratic interpolation is given by the parameters σ 1 and σ 2, which are initialized in step 1 of the
algorithm. The quadratic interpolation acts when the minimum of the one-dimensional quadratic
function q(.) defined in such a way that q(0) ¼ f(xk), q(α) ¼ f(xk þ αdk), and ∇qð0Þ ¼ dTk ∇f ðxk Þ lies
outside the interval [σ 1, σ 2α] and not when this minimum lies outside the interval [σ 1α, σ 2α], as
usually implemented. This means that when the interpolation tends to reject 90% (for σ 1 ¼ 0.1) of the
original search interval (let us say [0,1]), then we say that its prediction is not reliable and a more
conservative bisection is preferred. On the other hand, the cubic interpolation considers an approxi-
mation of the minimizing function f by a cubic polynomial and uses four interpolation conditions
based on the function values and its derivatives, each of them computed in two different points.
The convergence of this algorithm is proved by Birgin, Martı́nez, and Raydan (1999).
Theorem 12.5 The algorithm SPG is well defined, and any accumulation point of the sequence it
generates is a constrained stationary point for the problem (12.1). ♦
The proof is based on the results of Bertsekas (1999), which refer to the Armijo rule in the context
of projections. Mainly, from the convexity of the domain X, it follows that for any x 2 X and
t 2 (0, αmax], the following results are true:
These results are used in Theorem 12.5 to prove that any accumulation point x of the sequence
{xk} generated by the algorithm SPG is a stationary point, i.e., for any x 2 X, it follows that
∇f ðxÞT ðx xÞ 0:
420 12 Simple Bound Constrained Optimization
The SPG algorithm with both quadratic and cubic interpolation was implemented in double precision
Fortran, compiled with f77 (default compiler settings), and run on a Workstation Intel Pentium 4 with
1.8 GHz. We selected a number of 80 large-scale simple bound optimization test functions in
generalized or extended form presented in the UOP collection (Andrei, 2020a). For each test function,
we considered 10 numerical experiments with the number of variables increasing as n ¼ 1000,
2000, . . ., 10000. Therefore, a set of 800 simple bound optimization problems is obtained. Each
problem is solved with SPG in two variants: SPG with quadratic interpolation (SPGp) and SPG
with cubic interpolation (SPGc). The parameters used in SPG were initialized as m ¼ 10, αmin ¼ 103,
αmax ¼ 103, γ ¼ 104, σ 1 ¼ 0.1, σ 2 ¼ 0.9, ε1 ¼ 0.
Figure 12.1 shows the Dolan and Moré (2002) performance profiles of SPGp versus SPGc, subject
to the CPU time metric. From Fig. 12.1, we can see that, subject to the CPU time metric, SPGp is
more efficient than SPGc, but they have the same robustness for solving this set of simple bound
constrained optimization problems, SPGp being slightly more robust. Comparing SPGp versus SPGc
subject to the number of iterations, we can see that SPGp was better in 255 problems (i.e., it achieved
the minimum number of iterations in solving 255 problems). SPGc was better in 162 problems, and
they achieved the same number of iterations in solving 295 problems. Therefore, subject to the
number of iterations, SPGp is more efficient than SPGc. Similarly, SPGp is faster than SPGc.
Both these algorithms find local optimal solutions. Out of 800 problems considered in this
numerical study, only for 712 problems does the criterion (1.3) hold. The conclusion of this numerical
study is that both these scaled gradient projected algorithms with quadratic or cubic interpolation in
the line-search represent efficient and robust algorithms for solving a large variety of simple bound
optimization problems.
This section presents a very efficient and reliable algorithm for solving the simple bound optimization
problem (12.1) based on the limited memory BFGS update which approximates the Hessian of the
function f. The algorithm is described by Byrd, Lu, Nocedal, and Zhu (1995b) and is based on the
developments given by Conn, Gould, and Toint (1988a) and Moré and Toraldo (1989). It uses the
gradient projection method to determine a set of active constraints at each iteration. The main
ingredient is the compact representation of the limited memory BFGS matrices described by Byrd,
Nocedal, and Schnabel (1994b).
Description of the algorithm Suppose that at the current iterate xk, the following elements are
known: the value of the objective function fk, the gradient gk ¼ ∇ f(xk), and a positive definite
limited memory approximation Bk of the Hessian ∇2f(xk). Therefore, the following quadratic model of
f can be formed:
1
mk ðxÞ ¼ f ðxk Þ þ gTk ðx xk Þ þ ðx xk ÞT Bk ðx xk Þ: ð12:15Þ
2
The algorithm approximately minimizes mk(x) subject to the simple bounds li xi ui, i ¼ 1, . . .,
n. It is done by using the gradient projection method to find a set of active constraints, followed by a
minimization of mk(x), where the bounds are equality constraints.
For this, let us consider the piecewise linear path
xðtÞ ¼ PX ðxk tg k , l, uÞ
obtained by projecting the steepest descent direction onto the feasible set X, where
8
>
< li , xi < li ,
PX ðx, l, uÞi ¼ xi , li xi ui , ð12:16Þ
>
:
ui , x i > ui :
In the following, the generalized Cauchy point xc is computed, which is defined as the first local
minimizer of the univariate piecewise quadratic
qk ðtÞ ¼ mk ðxðtÞÞ:
All the variables whose value at point xc are at the lower or at the upper bound and which form the
active set A(xc) are held fixed. With this, the following quadratic programming problem over the
subspace of free variables
min mk ðxÞ : xi ¼ xci , 8i 2 Aðxc Þ
subject to ð12:17Þ
li xi ui , 8i=
2Aðxc Þ,
is considered. Firstly, an approximate solution of (12.17) is computed by ignoring the bounds on the
free variables and by using xc as the starting point. After an approximate solution xkþ1 of the problem
(12.17) has been obtained, the new iteration xkþ1 is computed by line-search along the direction
dk ¼ xkþ1 xk using the strong Wolfe line-search conditions
422 12 Simple Bound Constrained Optimization
g d k
σ
gT d k
, ð12:19Þ
kþ1 k
where αk is the step length and ρ and σ are positive parameters used in the Wolfe line-search. With all
these elements, the gradient at xkþ1 is evaluated, a new limited-memory Hessian approximation Bkþ1
is computed, and the process is repeated.
Observe that the generalized Cauchy point xc, which is a minimizer of mk(x) on the projected
steepest descent direction, satisfies mk(xk) > mk(xc) if the projected gradient is nonzero. Since xkþ1 is
on the path from xc to the minimizer of (12.17), along which mk decreases, it follows that the value of
mk at xkþ1 is not larger than its value at xc, i.e.,
1
f ðxk Þ ¼ mk ðxk Þ > mk ðxc Þ mk ðxkþ1 Þ ¼ f ðxk Þ þ gTk dk þ d Tk Bk dk : ð12:20Þ
2
Therefore, if Bk is positive definite and dk is not zero, the inequality (12.20) implies that gTk d k < 0:
In conclusion, since in our algorithm every Hessian approximation Bk is positive definite, it follows
that the approximate solution xkþ1 of the quadratic problem (12.17) defines a descent direction
dk ¼ xkþ1 xk for the objective function f.
Limited-memory BFGS updates The limited memory BFGS matrices used in the algorithm are
represented in compact form. At every iteration xk, the algorithm stores a small number, let us say m,
of correction pairs {si, yi}, i ¼ k 1, . . ., k m, where sk ¼ xkþ1 xk and yk ¼ gkþ1 gk. These
correction pairs contain information about the curvature of the function f, and in the frame of the
BFGS formula, they define the limited-memory iteration matrix Bk. In the following, as described in
Byrd, Nocedal, and Schnabel (1994b), we shall represent these matrices without explicitly
forming them.
Now, if θ is a positive scaling parameter and if the m correction pairs {si, yi}, i ¼ k 1, . . ., k m,
satisfy the condition yTi si > 0, i ¼ k 1, . . ., k m, then the matrix obtained by updating θI m-times
using the BFGS updating formula and the pairs {si, yi}, i ¼ k 1, . . ., k m, can be written as
Bk ¼ θI W k Mk W Tk , ð12:22Þ
where
W k ¼ ½Y k θSk , ð12:23Þ
" #1
Dk LTk
Mk ¼ , ð12:24Þ
Lk θSTk Sk
Dk ¼ diag yTkm skm , . . . , yTk1 sk1 : ð12:26Þ
Since Mk is a 2m 2m matrix and since m is chosen to be a small integer, the cost of computing the
inverse in (12.24) is negligible. The compact representation (12.22) is very efficient in numerical
computations and involves the product of Bk with a vector, which often occurs in the algorithm.
In this context, as it is explained in Byrd, Nocedal, and Schnabel (1994b), there is a similar
representation of the inverse limited-memory BFGS matrix Hk that approximates the inverse Hessian
matrix
1 T
H k ¼ I þ W k Mk W k , ð12:27Þ
θ
where
h i
1
Wk ¼ Y Sk , ð12:28Þ
θ k
2 3
0 R1
k
Mk ¼ 4 5, ð12:29Þ
1
RT RT Dk þ Y Tk Y k R1
k k θ k
yTkm1þj skm1þi , i j,
ðRk Þij ¼ ð12:30Þ
0, i > j:
Since the bounds on variables possibly prevent the line-search from satisfying the second Wolfe
condition (12.19), there is no guarantee that the curvature condition yTk sk > 0 always holds. Therefore,
in order to maintain the positive definiteness of the limited-memory BFGS matrix, if the curvature
condition yTk sk > εkyk k2 is not satisfied for a small positive constant ε, then the correction pairs
(sk, yk) are discarded.
The generalized Cauchy point A very important element in the frame of the L-BFGS-B algorithm is
the computation of the generalized Cauchy point as the first local minimizer of the quadratic model
along the piecewise linear path obtained by projecting the points along the steepest descent direction
xk tgk onto the feasible domain. For this, define x0 ¼ xk and drop the index k, so that x, g, and B stand
for xk, gk, and Bk, respectively. However, subscripts are used to denote the component of a vector; for
example, gi is the i-th component of g. Superscripts will be used to represent the iterates during the
piecewise search for the Cauchy point.
To define the breakpoints in each coordinate direction, the following elements are computed
8
< xi ui =gi ,
> gi < 0,
0
and sorted in an increasing order to get the ordered set {t j : t j t jþ1, j ¼ 1, . . ., n}. In the following,
a search along PX(x0 tg, l, u) is done; thus a piecewise linear path expressed as
424 12 Simple Bound Constrained Optimization
(
x0i tg i , t ti ,
xi ðt Þ ¼ i ¼ 1, . . . , n, ð12:32Þ
x0i ti gi , t > ti ,
is obtained. Now, suppose that the interval [t j1, t j] is examined. Let us define the ( j 1)-th
breakpoint as x j1 ¼ x(t j1), such that on [t j1, t j] we have x(t) ¼ x j1þΔtd j1, where Δt ¼ t t j1
and
gi , tj1 < ti ,
dj1
i ¼ i ¼ 1, . . . , n: ð12:33Þ
0, tj1 ti ,
With this notation, on the line segment [x(t j 1), x(t j)], the quadratic (12.15) can be written as
1 T
mðxÞ ¼ f þ gT ðx x0 Þ þ x x0 B x x0
2 ð12:34Þ
1 T
¼ f þ gT zj1 þ Δtd j1 þ zj1 þ Δtd j1 B zj1 þ Δtd j1 ,
2
where
Therefore, on the line segment, [x(t j 1), x(t j)] m(x) can be written as a quadratic in Δt
1 T T
mbðΔtÞ ¼ f þ gT zj1 þ zj1 Bzj1 þ gT d j1 þ d j1 Bzj1 Δt
2
1 j1 T j1
þ d Bd Δt2 ð12:36Þ
2
1
¼ f j1 þ f 0j1 Δt þ f 00j1 Δt2 ,
2
where
1 j1 T j1
f j1 ¼ f þ gT zj1 þ z Bz , ð12:37Þ
2
T
f 0j1 ¼ gT dj1 þ dj1 Bzj1 , ð12:38Þ
T
f 00j1 ¼ dj1 Bd j1 : ð12:39Þ
From the equation dm bðΔtÞ=dΔt ¼ 0 , we get Δt ¼ f 0j1 =f 00j1 : Since B is positive definite, it
follows that this represents a minimizer, provided that t j1 þ Δt lies on [t j1, t j). Otherwise, the
generalized Cauchy point lies at x(t j1) if f 0j1 0, or beyond it, or even at x(t j) if f 0j1 < 0:
If, after exploring the interval [t j1, t j], the generalized Cauchy point has not been found, we set
and update the directional derivatives f 0j and f 00j as the search moves to the next interval. As in Byrd,
Lu, Nocedal, and Zhu (1995b), let us assume that only one variable becomes active at t j, and let us
denote its index by b. Then, tb ¼ t j and we zero out the corresponding component of the search
direction as
12.5 L-BFGS with Simple Bounds (L-BFGS-B) 425
dj ¼ d j1 þ gb eb , ð12:41Þ
where eb is the b-th unit vector. From (12.34) and (12.40), it follows that
and
T
f 00j ¼ dj Bdj
T
¼ dj1 Bd j1 þ 2gb eTb Bdj1 þ g2b eTb Beb ð12:44Þ
¼ f 00j1 þ 2gb eTb Bd j1
þ g2b eTb Beb :
The only expensive computations in (12.43) and (12.44) are eTb Bzj , eTb Bd j1 , and eTb Beb , which
may require O(n) operations since B is a dense limited-memory matrix. Therefore, it seems that the
computation of the generalized Cauchy point could require O(n2) operations, since, in the worst case,
n segments of the piecewise linear path can be examined. For large-scale problems, this cost would be
prohibitive. However, by using the limited-memory BFGS formulae (12.22) and (12.33), the updating
formulae (12.43) and (12.44) become
f 00j ¼ f 00j1 θg2b 2gb wTb MW T dj1 g2b wTb Mwb , ð12:46Þ
where wTb stands for the b-th row of the matrix W. The only O(n) operations remaining in (12.45) and
(12.46) are WTz j and WTd j1. However, from (12.41) and (12.42), it follows that z j and d j are updated
at every iteration by a simple computation. Therefore, if we store the two 2m-dimensional vectors
pj ≜W T dj ¼ W T dj1 þ gb eb ¼ pj1 þ gb wb , ð12:47Þ
cj ≜W T zj ¼ W T zj1 þ Δtj1 dj1 ¼ cj1 þ Δtj1 pj1 , ð12:48Þ
f 00j ¼ f 00j1 θg2b 2gb wTb Mpj1 g2b wTb Mwb , ð12:50Þ
the updating of f 0j and f 00j will require only O(m2) operations. If more than one variable becomes active
at t j, then the above updating process is repeated before examining the new interval [t j, t jþ1].
Observe that, during the computation of the generalized Cauchy point, the examination of the first
segment of the projected steepest descent path requires O(n) operations. All the subsequent segments
require only O(m2) operations, where m is the number of correction pairs stored in the limited
426 12 Simple Bound Constrained Optimization
memory matrix. Since m is usually small, let us say less than 10, the cost of examining all the
segments after the first segment is negligible. Besides, observe that it is not necessary to keep track of
z j 2 ℝn, since only the component zjb corresponding to the bound that has become active is needed to
update f 0j and f 00j :
In the last step of Algorithm 12.3, the 2m-vector c is updated so that in the end, c ¼ WT(xc xk).
This vector will be used to initialize the subspace minimization when the primal direct method or the
conjugate gradient method is used.
Once the generalized Cauchy point xc has been computed, an approximate minimum of the
quadratic model mk over the space of the free variable is determined. In Byrd, Lu, Nocedal, and
Zhu (1994a, 1995b), three approaches to minimize the model are developed: a direct primal method
based on the Sherman-Morrison-Woodbury formula, a primal iterative method using the conjugate
gradient method, and a direct dual method using the Lagrange multipliers. In all these approaches,
the minimization of mk is done by ignoring the bounds. After that, an appropriate point truncates the
move so as to satisfy the bound constraints. In the direct primal approach, n t variables are fixed at
their bounds at the generalized Cauchy point xc, and the quadratic model (12.17) is solved over the
subspace of the remaining t free variables, starting from xc and imposing the free variables at the
corresponding bounds from (12.17).
In the algorithm L-BFGS-B, the iterations are terminated when the projected gradient is small
enough, i.e.,
12.5 L-BFGS with Simple Bounds (L-BFGS-B) 427
where εg > 0 is a parameter. Observe that PX(xk gk, l, u) xk is the projected gradient. With this, a
formal description of the L-BFGS-B algorithm can be presented as follows:
1. Consider an initial point x0, as well as an integer m that determines the number of limited memory
corrections stored (si, yi), i ¼ 1, . . ., m. Select the values of the parameters ε > 0 and εg > 0
2. If the convergence test (12.51) is satisfied, stop
3. Using Algorithm 12.3, compute the generalized Cauchy point
4. Compute the search direction dk by the direct primal method, the conjugate gradient method or by the
dual method
5. Using the strong Wolfe line-search (12.18) and (12.19), perform a line-search along dk subject to the
bounds on the problem in order to compute a stepsize αk
6. Set xkþ1 ¼ xk þ αkdk. Compute f(xkþ1) and ∇f(xkþ1)
7. If yk satisfies the curvature condition yTk sk > εkyk k2 , then the correction pair (sk, yk) is added to the
matrices Sk and Yk. If more than m updates are stored, delete the oldest columns from Sk and Yk and place
the new ones instead
8. Update: STk Sk , Y Tk Y k , Lk, Rk and set θ ¼ yTk yk =yTk sk
9. Set k ¼ k þ 1 and continue with step 2 ♦
More details on the L-BFGS-B algorithm are given in Byrd, Lu, Nocedal, and Zhu (1994a, 1995b).
In the following, we present a numerical study and comparisons versus the SPG algorithm.
Consider the same set of 800 simple bound optimization problems from the UOP collection used in
the previous numerical experiment on the SPG algorithm with quadratic or cubic interpolation. L-
BFGS-B implements two criteria for stopping the iterations
f k f kþ1
τεm or kPX ðxk gk , l, uÞ xk k1 < εg ,
max f k , f kþ1 , 1
where τ is a factor controlling the accuracy of the solution, εm is the precision of the machine, and εg is
the tolerance on the projected gradient. If one of these two criteria is satisfied, then the iterations are
stopped. The numerical values of the parameter τ are as follows: τ ¼ 1. d þ 12 for small accuracy,
τ ¼ 1. d þ 7 for medium accuracy, and τ ¼ 1. d þ 1 for high accuracy. In this numerical study, we
have considered τ ¼ 1. d þ 7 and εg ¼ 1. d 5. The number of correction pairs stored in computing
BFGS with limited memory is m ¼ 5.
Figures 12.2 and 12.3 show the performance profiles of L-BFGS-B (m ¼ 5) versus SPG with
quadratic interpolation (SPGp) and versus SPG with cubic interpolation (SPGc), respectively. In
Figs. 12.2 and 12.3, we have the computational evidence that both SPGp and SPGc are more efficient
than L-BFGS-B, but subject to robustness, we can see that L-BFGS-B is more robust than both SPGp
and SPGc. The algorithm SPG is more simple than L-BFGS-B, at each iteration requiring a
projection, the computation of the spectral gradient, as well as a nonmonotone linear search. On
the other hand, L-BFGS-B is more complicated, involving the computation of the generalized Cauchy
428 12 Simple Bound Constrained Optimization
point, the determination of the search direction, a linear search by strong Wolfe conditions (12.18)
and (12.19), as well as the limited-memory BFGS update.
This method, called TNBC, elaborated by Nash (1984a, b, 2000) is especially developed to solve
simple bound constrained optimization problems. The method is based on a line-search with a
classical active-set strategy for treating the bounds. TNBC is a truncated Newton method (Dembo
12.6 Truncated Newton with Simple Bounds (TNBC) 429
& Steihaug, 1983) that uses the conjugate gradient projection method to obtain a new search
direction. However, it computes only an approximation to the Newton direction because it is
truncated before the solution to the subspace minimization problem is obtained. In other words, in
the truncated Newton method, the current estimate of the solution is updated (i.e., a step is computed)
by the approximate solving of the Newton system by making use of an iterative algorithm. Therefore,
the algorithm implements a double iterative method: an outer iteration for the nonlinear optimization
problem and an inner iteration for the Newton system. The inner iteration is stopped or “truncated”
before the solution to the Newton system is obtained. The motivation of this approach is that far away
from the solution; the Newton system does not need to be solved very accurately. Therefore, the
Newton iterations can be truncated. The search direction dk is determined such that
2
∇ f ðxk Þdk þ ∇f ðxk Þ
ηk k∇f ðxk Þk,
where {ηk} is known as the “forcing sequence.” The Hessian matrix with the second-order informa-
tion is not given. Therefore, the Hessian vector product Bkv for a given vector v required by the inner
conjugate gradient algorithm is obtained by finite differencing as
∇f ðxk þ hvÞ ∇f ðxk Þ
∇2 f ðxk Þv ffi ,
h
pffiffiffi
where h ¼ 1 þ kxk k2 ε and ε is the relative machine precision. Each matrix vector product
requires one gradient evaluation. The truncated Newton algorithm differs from the standard Newton
approach, mainly in its use of the parameter ηk which determines the accuracy with which the Newton
system ∇2f(xk)dk ¼ ∇ f(xk) is solved in order to obtain a search direction.
The conjugate gradient inner algorithm is preconditioned by a scaled two-step limited-memory
BFGS method with Powell’s restarting strategy used to reset the preconditioner periodically (Nash,
1985).
The line-search is based on the cubic interpolation and is terminated when the strong Wolfe
conditions are satisfied, as described in Gill and Murray (1979).
Consider the same set of 800 simple bound optimization problems used in the previous numerical
experiments, where, this time, n ¼ 100, 200, . . ., 1000. Figures 12.4 and 12.5 present the
performances of the truncated Newton method with simple bounds in the implementation of Nash
(1984b) versus L-BFGS-B (m ¼ 5) and SPGp and SPGc, respectively.
From Figs. 12.4 and 12.5, we can see that L-BFGS-B is more robust than TNBC, SPGp, and SPGc.
Both SPGp and SPGc are more efficient than L-BFGS-B and TNBC. From Fig. 12.4, we can see that
SPGp is faster in solving 531 problems. In contrast, L-BFGS-B is faster in solving 425 problems,
while TNBC is faster in solving 379, etc.
12.7 Applications
This section presents the numerical performances of the simple bounds optimization algorithms SPG
and L-BFGS-B for solving five real industrial applications taken from the MINPACK-2 test problem
collection (Averick, Carter, & Moré, 1991; Averick, Carter, Moré, & Xue, 1992). The mathematical
models of these applications are expressed as unconstrained optimization problems and are described
in Appendix D. All these applications without simple bounds have been solved with the SCALCG
algorithm, which implements a double BFGS preconditioned conjugate gradient (Andrei 2008a,
2010b). In these numerical experiments, for all the applications, some simple bounds on the variables
were introduced and solved with SPG and L-BFGS-B, respectively.
Considering D ¼ (0, 1) (0, 1), c ¼ 5, and nx ¼ 200, ny ¼ 200, a minimization problem with 40,000
variables is obtained. The solution of this application without simple bounds is illustrated in Fig. 12.6.
By introducing the simple bounds 0 v 0.01, the algorithm SPG gives the solution presented in
Fig. 12.7.
12.7 Applications 431
0.2
0.1
0
200
150 200
100 150
100
50 50
0 0
0.006
0.004
0.002
0
200
150 200
100 150
50 100
50
0 0
Table 12.1 contains the performances of the SPG algorithm with quadratic or cubic interpolation in
the line-search for different values of the simple bounds: 0 v 1, 0 v 0.1, and 0 v 0.01. In
this table, #iter represents the number of iterations to get the solution; #f and #g are the number of
evaluations of the function and the number of evaluations of its gradient, respectively. cpu is the CPU
running time in seconds. The number of values of the objective functions retained in the
nonmonotone linear search is M ¼ 10. Observe that the cubic interpolation is slightly more benefic
versus the quadratic interpolation.
Table 12.2 presents the performances of the algorithm L-BFGS-B for solving this application. In
this table, #sg represents the total number of segments explored during the search of the generalized
Cauchy point, while #act is the number of the active constraints in the final generalized Cauchy point.
Here, m ¼ 5 is the number of the pairs {si, yi}, i ¼ 1, . . ., m, stored for the memoryless BFGS
updating.
432 12 Simple Bound Constrained Optimization
−0.1
−0.2
200
150 200
100 150
100
50 50
0 0
Table 12.3 shows the performances of TNBC for solving this application, where #fg is the number
of callings of the subroutine for the evaluation of the minimizing function and its gradient and #fgt is
the number of function and its gradient evaluations, including the evaluations in the conjugate
gradient for solving the Newton system for the line-search.
Observe that TNBC is very sensitive to the value of the bounds on variables. The closer the bounds
are, the more degraded the performances are.
Considering b ¼ 10 and ε ¼ 0.1, as well as a discretization nx ny of the domain D ¼ (0, 2π) (0, 2b),
where nx ¼ 200 and ny ¼ 200, then an optimization problem with 40,000 variables is obtained. The
solution of this application without simple bounds is represented in Fig. 12.8. When introducing the
simple bounds as 0 v 1, the SPG algorithm gives the solution from Fig. 12.9.
Tables 12.4 and 12.5 present the performances of SPG and L-BFGS-B for different simple bounds,
respectively.
12.7 Applications 433
0.1
0.05
0
200
150 200
100 150
100
50 50
0 0
Table 12.6 Optimal design with composite materials. SPG. 40,000 variables. M ¼ 10
Considering μ1 ¼ 1 and μ2 ¼ 2, then Tables 12.6 and 12.7 show the performances of SPG and
L-BFGS-B, respectively. Figure 12.10 presents the solution of this application obtained with SPG for
nx ¼ 200 and ny ¼ 200. Figure 12.11 shows the solution of this application given by L-BFGS-B with
the simple bounds 0.02 v 0.
434 12 Simple Bound Constrained Optimization
Table 12.7 Optimal design with composite materials. L-BFGS-B. 40,000 variables. m ¼ 5
−0.01
−0.015
−0.02
200
150 200
100 150
100
50 50
0 0
Considering λ ¼ 5, Fig. 12.12 shows the solution of this application where nx ¼ 200 and ny ¼ 200.
Figure 12.13 presents the solution of the application with the simple bounds 0 v 0.2, where λ ¼ 5,
nx ¼ 200, and ny ¼ 200.
Tables 12.8 and 12.9 give the performances of SPG and of L-BFGS-B for solving this application
with different simple bounds on variables.
From these tables, we note that, subject to the CPU computing time, L-BFGS-B is the best
algorithm, followed by SPG with cubic interpolation and then by SPG with quadratic interpolation.
12.7 Applications 435
0.4
0.2
0
200
150 200
100 150
100
50 50
0 0
0.03
0.02
0.01
0
200
150 200
100 150
100
50 50
0 0
Considering d ¼ 3.2 Å and the temperature T ¼ 5, for n ¼ 1000, the solution of this application
without simple bounds is presented in Fig. 12.14. When introducing the simple bounds on the
variables 0 v 0.001, the corresponding solution given by SPG is given in Fig. 12.15.
Tables 12.10 and 12.11 present the performances of SPG and L-BFGS-B for solving this applica-
tion with different simple bounds.
9.999
9.998
9.997
9.996
9.995
0 100 200 300 400 500 600 700 800 900 1000
12.7 Applications 437
Real applications of nonlinear optimization always have simple bounds on variables. In other
words, for a problem with n variable, every variable xj has a finite lower bound lj and a finite upper
bound uj, where lj uj, j ¼ 1, . . ., n. These bounds are imposed by the engineering constructive
relationships of the process modeled as an optimization problem. Therefore, the simple bound
optimization is an important problem with numerous practical applications.
Both SPG and L-BFGS-B are able to solve simple bound optimization problems, L-BFGS-B being
slightly faster. TNBC is very sensitive to the interval in which the bounds on variables are defined.
One of the most important nonlinear optimization problems is the quadratic programming, in which a
quadratic objective function is minimized with respect to linear equality and inequality constraints.
These problems are present in many methods as subproblems and in real applications from different
areas of activity as mathematical models of these applications. In the beginning, we consider the
equality constrained quadratic programming, after which the inequality constrained quadratic pro-
gramming is presented. Finally, methods based on the elimination of variables are discussed.
where G is an n n symmetric matrix and ai, i 2 E, are vectors in ℝn. All the vectors ai, i 2 E, can be
assembled into the matrix A such that the constraints from (13.1) can be compactly written as
Ax þ b ¼ 0, where A is an m n matrix. Suppose that m n. If the Hessian matrix G is positive
semidefinite, we say that (13.1) is a convex quadratic program. In this case, the problem is similar in
difficulty to a linear program. Strictly convex quadratic programs are those in which G is positive
definite. Nonconvex quadratic programs have G an indefinite matrix.
The first-order optimality conditions for (13.1) are
Gx þ c AT λ ¼ 0, ð13:2aÞ
Ax þ b ¼ 0, ð13:2bÞ
where x is the solution and λ is the vector of the Lagrange multipliers. Rearranging (13.2), these
equations become a system of n þ m linear equations known as the KKT system
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 439
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_13
440 13 Quadratic Programming
" #
G AT x c
¼ : ð13:3Þ
A 0 λ b
In the following, we consider Z to denote the n (n m) matrix whose columns is a basis for the
null space of A. That is, Z has full rank and satisfies AZ ¼ 0.
For solving (13.1), the direct way, known as the factorization of the full KKT system, is to form the
linear system (13.3) and to find x and λ by solving it, let us say by the Gaussian elimination. Observe
that although the matrix from (13.3) is symmetric, the zeros on the main diagonal of this matrix imply
that it is not positive definite, that is, the Cholesky factorization is not suitable. If G is positive
definite, then the feasible stationary point obtained from (13.3) is the minimum of (13.1). Otherwise,
to confirm that x is the minimum point, the second-order condition
must be checked.
The system (13.3) can be rearranged in a very suitable form for computation by expressing x as
x ¼ x þ d, where x is some estimation of the solution and d is the desired step. Using this notation,
from the system (13.3), we obtain
" #
G AT d g
¼ , ð13:4Þ
A 0 λ h
Theorem 13.1 Let A be of full rank and assume that ZTGZ is positive definite. Then, the KKT matrix
" #
G AT
K¼ ð13:5Þ
A 0
is nonsingular, and therefore, there is a unique vector pair (x, λ) satisfying (13.3).
Proof Suppose that there are the vectors w and v, such that
" #
G AT w
¼ 0: ð13:6Þ
A 0 v
However, w lies in the null space of A. Therefore, there is a vector u 2 ℝnm, such that w ¼ Zu.
With this, we have
13.1 Equality Constrained Quadratic Programming 441
0 ¼ wT Gw ¼ uT ZT GZu,
which by the positive definiteness of ZTGZ implies u ¼ 0. Therefore, w ¼ 0, and by (13.6), ATv ¼ 0.
Now, suppose that A is of full rank on rows. Therefore, v ¼ 0. The conclusion is that the equation
(13.6) is satisfied only if w ¼ 0 and v ¼ 0, i.e., the matrix K is nonsingular. ♦
Theorem 13.2 Let A be of full rank and assume that ZTGZ is positive definite. Then, x satisfying
(13.3) is the unique global solution of (13.1).
Proof Let x be any other feasible point satisfying Ax ¼ b. Let d ¼ x x. Since Ax ¼ b, we
have Ad ¼ 0. Substituting x ¼ x d in q(x) from (13.1), we get
1
qðxÞ ¼ ðx dÞT Gðx d Þ þ cT ðx dÞ
2
1
¼ dT Gd dT Gx cT d þ qðx Þ:
2
However, from (13.3), we have Gx ¼ c þ ATλ. Therefore, from Ad ¼ 0, we have
dT Gx ¼ dT c þ AT λ ¼ dT c:
With this,
1
qðxÞ ¼ dT Gd þ qðx Þ:
2
Since d lies in the null space of A, there is a vector u 2 ℝnm, such that d ¼ Zu. Hence,
1
qðxÞ ¼ uT Z T GZu þ qðx Þ:
2
However, ZTGZ is positive definite, hence q(x) > q(x), except for the situation in which u ¼ 0, that
is, when x ¼ x. Therefore, x is the unique global solution of (13.1). ♦
The use of (13.3) to get a solution for (13.1) may be efficient only when the matrices G and A are
sparse. Otherwise, another method, known as the Schur-complement, may be used, in which x and λ
are separately determined. For example, if we multiply (13.2a) by AG1 and then use (13.2b) to
eliminate x, we can obtain λ as solution of the following linear system:
1 T
AG A λ ¼ AG1 c b: ð13:7Þ
Gx ¼ AT λ c: ð13:8Þ
A rough analysis of the computational effort shows that solving (13.7) and (13.8) requires
O(m3) þ O(n3) multiplications. This is less than O((n þ m)3) multiplications needed to solve
(13.3). However, this approach requires to perform operations with G1 and to compute a factoriza-
tion of the m m matrix AG1AT.
442 13 Quadratic Programming
The name Schur complement derives from the fact that, by applying the block Gaussian elimina-
tion to (13.3) using G as pivot, the following block upper triangular system
" #
G AT x c
¼ ð13:9Þ
0 AG1 AT λ b AG1 c
is obtained. In linear algebra terminology, the matrix AG1AT is called the Schur complement of G.
This method does not require that the matrix G should be nonsingular. It assumes only that A has full
row rank and that the matrix ZTGZ is positive definite, where Z is an n (n m) matrix whose
columns span the null space of A. The matrix ZTGZ is called the reduced Hessian. Clearly, this
method requires knowledge of the null space basis matrix Z.
The method considers a solution in terms of its components in two subspaces which are normal
and tangential to the constraints. As we know (see Chap. 11), the optimality conditions involve
feasible directions which lie in the tangent space of the constraints. If an n-variable optimization
problem involves m linear constraints, Ax ¼ b, then a feasible direction can be any member of the
(n m)-dimensional subspace of the vectors z which satisfy Az ¼ 0. As we said before, let Z be an
n (n m) matrix whose columns span the null space of A. This means that Zw is a feasible direction
for any (n m) vector w. Also, let Y be an n m-dimensional arbitrary matrix, such that the matrix
½ Y Z is nonsingular. Suppose that d in (13.4) is partitioned, so that
d ¼ YdY þ Zd Z , ð13:10Þ
where dY 2 ℝm and dZ 2 ℝnm. In this context, the components YdY and ZdZ are called the vertical step
and the horizontal step, respectively.
Substituting d given by (13.10) into the second equation from (13.4), since AZ ¼ 0, we get
ðAY Þd Y ¼ h: ð13:11Þ
A½ Y Z ¼ ½ AY 0 ð13:12Þ
Since ZTGZ is a symmetric positive definite matrix, it follows that dZ is well defined as solution of
the system (13.14). Since the reduced Hessian ZTGZ is positive definite, then the Cholesky factoriza-
tion can be used to solve (13.14). In conclusion, the total step d can be computed as d ¼ YdY þ ZdZ,
where dY is the solution of (13.11) and dZ is the solution of (13.14), computed in this order.
13.1 Equality Constrained Quadratic Programming 443
To obtain the Lagrange multipliers, we multiply the first line of (13.4) by YT to get the linear
system
In this method, solving the linear algebraic systems (13.11) and (13.14) requires O(m2) þ
O((n m)3) multiplications, which can be significantly less than O((n þ m)3) multiplications needed
to solve the KKT system (13.3), especially when m n.
Example 13.1 Let us consider the null-space method for solving the following quadratic program-
ming problem:
1 2
min QðxÞ ¼ x1 þ x22 þ 2x23 þ x24 þ x25 þ ðx1 þ x3 þ x5 Þ
2 |fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl} |fflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflffl}
xT Gx cT x
A x5 b
In this problem, n ¼ 5 and m ¼ 3. A basis Z for the null space of A is obtained by using the reduced
echelon technique. The matrix Y is selected, such that ½ Y Z 2 ℝnn is nonsingular. Then,
2 3 2 3
13 3 1 0 0
6 7 6 7
6 15 3 7 60 1 07
6 7 6 7
Z¼6 6 5 1 772ℝ
nðnmÞ
, Y¼6 7
60 0 17 2 ℝ :
nm
6 7 6 7
4 1 0 5 40 0 05
0 1 0 0 0
h ¼ Ax b ¼ ½ 3 4 5 T , g ¼ Gx þ c ¼ ½ 1 1 1 1 2 T :
1 T
dZ ¼ Z T GZ Z GYd Y þ Z T g
" #(" # " #) " #
1 21 94 3 8 0:163064
¼ þ ¼ :
509 94 445 1 3 0:825147
Using the known initial estimation x, the local optimal solution of the problem is
2 3
1:355609
6 7
6 0:970519 7
6 7
x ¼ x þ d ¼ 6 7
6 0:990173 7:
6 7
4 1:163064 5
0:174853
The most complicated steps of the algorithm are the determination of a basis of the null space of
A and the solving of the linear algebraic systems (13.11) and (13.14). ♦
Remark 13.1 (Bartholomew-Biggs, 2008) The null-space method for quadratic programming with
equality constraints can be very easily extended to the nonlinear optimization with linear equality
constraints:
Bd þ ∇f ðxÞ AT λ ¼ 0,
Ad þ ðAx þ bÞ ¼ 0:
Next, we apply the technique of the null-space method. Let Z be an n (n m) matrix whose
columns span the null space of A. The choice of Z is not unique, but one way of getting it is by the
13.1 Equality Constrained Quadratic Programming 445
d ¼ Yy þ Zz:
AYy þ ðAx þ bÞ ¼ 0:
Now, premultiplying the optimality condition Bd þ ∇ f(x) ATλ ¼ 0 by ZT and having in view
that AZ ¼ 0, we get Z T BZz þ ZT ∇f ðxÞ þ ZT BYy ¼ 0: Therefore, z can be found by solving the
system
where ZTBZ is a symmetric positive definite matrix. Knowing y and z, we can compute d ¼ Yy þ Zz
as a correction of the estimate x.
As in the quadratic case, in this context ZT ∇ f(x) is called the reduced gradient of f and ZTBZ is the
reduced Hessian of f. Observe that both Y and Z, basis matrices for the range- and null-spaces of the
constraints matrix A, are kept constant along the iterations of the algorithm. The corresponding
algorithm is as follows:
1. Choose an initial feasible point x0. Choose B0 as a positive definite approximation of ∇2f(x0). Compute
Y and Z as basis matrices for the range- and the null-spaces of the constraints matrix A. Choose ε > 0
sufficiently small. Set k ¼ 0 and compute ∇f(x0)
2. Test of convergence. If kZT ∇ f(xk)k ε, then stop
3. Determine y as solution of the system AYy ¼ ðAxk þ bÞ
4. Determine z as solution of the system Z T Bk Z z ¼ Z T ∇f ðxk Þ Z T Bk Yy
5. Set dk ¼ Yy þ Zz
6. Compute the estimate of the Lagrange multipliers λkþ1 as solution of the linear system
(AY)Tλ ¼ YT ∇ f(xk) þ YTBkdk
7. Perform a line-search to determine s such that f(xk þ sdk) < f(xk). Set xkþ1 ¼ xk þ sdk as a new estimate of
the solution
8. Using a quasi-Newton update, from Bk compute a new estimate Bkþ1. Set k ¼ k þ 1 and continue with
step 2 ♦
Since the objective is not quadratic, it follows that xk þ dk is not guaranteed to be a better point
than xk. Therefore, Algorithm 13.1 is equipped with a line-search (in step 7) which may be exact or
based on the Wolfe line-search conditions.
446 13 Quadratic Programming
The algorithm uses a quasi-Newton update of Bk to get Bkþ1 as a new estimate of the Hessian. The
BFGS update has the advantage of generating positive definite matrices Bkþ1. This will ensure that the
approximation of the reduced Hessian ZTBkZ is also positive definite, and hence, dk is a descent
direction. ♦
It is noteworthy that in the nonlinear constrained optimization, the true Hessian ∇2f(x) is often
indefinite. This suggests that a positive definite updating scheme, based, for example, on BFGS
formula, may be inconsistent with making Bk a good approximation. However, this is not a problem,
because the second-order optimality conditions only relate to the null space of the binding constraint
normals. In this subspace, the optimality conditions require that the Hessian should be positive
definite.
Under reasonable assumptions about function and constraints and about the Hessian, it can be
shown that the search directions and the step lengths in the feasible subspace will satisfy the Wolfe
conditions. Therefore, the iterations will converge to a point where the reduced gradient is close
to zero.
Large-Scale Problems
where A 2 ℝmn of full rank, with m < n, so that the constraints Ax ¼ b are consistent. For solving
large-scale quadratic programming problems, the direct factorization methods of the KKT system
(13.3) are not very effective. The iterative methods are more suitable. As we know, the conjugate
gradient methods are dedicated to solving very large systems of linear equations with positive definite
matrices. However, the conjugate gradient methods directly applied to the KKT system (13.3) are not
recommended because they can be unstable on systems with matrices that are not positive definite. It
is better to apply the conjugate gradient methods to the reduced system (13.14).
where xY 2 ℝm and xZ 2 ℝnm. Z 2 ℝn(nm) is a basis for the null space of A, i.e., AZ ¼ 0. Y 2 ℝnm
is a matrix, such that ½ Y Z 2 ℝnn is nonsingular. Observe that, since A is of full row rank,
it follows that A½ Y Z ¼ ½ AY 0 is also of full row rank, so that the matrix AY is nonsingular.
We would like to choose Y so that the matrix AY is conditioned as much as possible. This can be
achieved by the QR factorization of AT, which has the form
13.1 Equality Constrained Quadratic Programming 447
R
A P ¼ ½ Q1
T
Q2 , ð13:20Þ
0
AYxY ¼ b, ð13:21Þ
which determines the component xY of x. Now, introducing (13.19) in (13.18), it follows that xZ is a
solution of the unconstrained reduced problem
1 T T
min x Z GZxZ þ cTZ xZ , ð13:22Þ
xZ 2 Z
where
cZ ¼ Z T GYxY þ ZT c: ð13:23Þ
Obviously, from (13.22), we can see that xZ satisfies the following linear system:
Since ZTGZ is positive definite, it follows that the system (13.24) can be solved by applying the
conjugate gradient algorithm. In conclusion, with these algebraic constructions, we can see that since
AY is nonsingular, the component xY can be obtained from (13.21); since ZTGZ is positive definite, the
component xZ can be obtained from (13.24), and thus, the solution x of (13.18) can be computed from
(13.19).
In the following, let us present the preconditioned conjugate gradient algorithm for solving the
reduced system (13.24). Suppose that a preconditioner WZZ is given. Then, the preconditioned
conjugate gradient algorithm applied to the (n m)-dimensional reduced system (13.24) is as
follows:
In Algorithm 13.2, the steps produced by the conjugate gradient are denoted by dZ. It is worth
saying that it is not necessary to explicitly form the reduced Hessian ZTGZ. This is because the
conjugate gradient algorithm requires only the computation of a matrix-vector product involving this
matrix. The preconditioner WZZ 2 ℝ(nm) (nm) is a symmetric, positive definite matrix, which may
1=2 1=2
be chosen to cluster the eigenvalues of W ZZ ZT GZ W ZZ , that is to reduce the span between the
smallest and the largest eigenvalues. One of the best selections of the preconditioner is one for which
1=2 1=2
W ZZ Z T GZ W ZZ ¼ I, that is, WZZ ¼ ZTGZ. This is the main motivation for which we take the
preconditioners of the following form:
W ZZ ¼ Z T HZ, ð13:25Þ
Another algorithm for solving (13.1) can be obtained by rewriting Algorithm 13.2 to work in the
n-dimensional space. For this, the following n-vectors are introduced: x, r, g, and d, which satisfy
x ¼ ZxZ þ YxY, ZTr ¼ rZ, g ¼ ZgZ, and d ¼ ZdZ, respectively. The scaled projection matrix P 2 ℝnn is
also defined as P ¼ Z(ZTHZ)1ZT, where H is the preconditioning matrix from (13.24). Hence, the
projected conjugate gradient algorithm is as follows:
5. Go to step 3 ♦
Observe that g+, which is called preconditioned residual, is a vector defined in the null space of A.
Therefore, in exact arithmetic, all the search directions d generated by Algorithm 13.3 also lie in the
null space of A, that is, all the iterates satisfy Ax ¼ b. The iterations of Algorithm 13.3 are well defined
if ZTGZ and ZTHZ are positive definite. There are two simple choices of the preconditioning matrix H:
H ¼ diag (|Gii|) and H ¼ I. Nocedal and Wright (2006) give some details how to compute Pr without
knowing a representation of the null space basis Z. Consider the case in which H ¼ I. In this case, P is
the orthogonal projection operator onto the null space of A. This special case of P is denoted as P,
that is,
1
P ¼ Z ZT Z ZT : ð13:26Þ
13.2 Inequality Constrained Quadratic Programming 449
The computation of the preconditioned residual gþ ¼ Pr þ can be performed in two different ways.
1
The first one, called the normal equations approach, expresses P by P ¼ I AT AAT A and thus
computes gþ ¼ Pr þ : Therefore, we can write g+ ¼ r+ ATv+, where v+ is the solution of the system
AAT vþ ¼ Ar þ : ð13:27Þ
The system (13.27) can be solved by using the Cholesky factorization of AAT.
The second one, called the augmented system approach, is to express the projection Pr+ as the
solution of the following augmented system:
" #
I AT g þ rþ
¼ ð13:28Þ
A 0 vþ 0
Of course, we have
1 1
gþ ¼ Pr þ ¼ r þ AT vþ ¼ r þ AT AAT Ar þ ¼ I AT AAT A r þ ¼ Pr þ :
All these developments allow us to compute an initial point that satisfies Ax ¼ b. The computation
of g+ ¼ Pr+ relies on the factorization of AAT from which we can compute x ¼ AT(AAT)1b. Note that
these approaches for computing g+ can give rise to significant round-off errors, so the use of the
iterative refinement is recommended in order to improve the accuracy (Nocedal & Wright, 2006).
aTi x bi , i 2 I, ð13:29cÞ
where G is an n n symmetric matrix, c, x, and {ai}, i 2 E [ I, are vectors in ℝn, and E and I are finite
sets of indices. The Lagrangian for this problem is
1 X
Lðx, λÞ ¼ xT Gx þ cT x λi aTi x bi :
2 i2E[I
As in Definition 11.12, the active set A(x) consists of the indices of the constraints from (13.29),
for which the equality holds at x:
Supposing that the constraint qualification LICQ is satisfied and specializing the general KKT
conditions (11.21) and (11.22) to this problem, we find that any solution x of (13.29) satisfies the
following first-order optimality conditions for some Lagrange multipliers λi , i 2 A(x):
450 13 Quadratic Programming
X
Gx þ c λi ai ¼ 0, ð13:31aÞ
i2Aðx Þ
If G is positive definite, then (13.29) is called convex quadratic programming. For the convex
quadratic programming, the conditions (13.31) are sufficient for x to be a global solution, as proved
in the next theorem.
Theorem 13.3 If x satisfies the conditions (13.31) for some λi , i 2 A(x), and G is positive
semidefinite, then x is a global solution of (13.29).
Proof If x is any other feasible solution for (13.29), then we have aTi x ¼ bi , for all i 2 E, and
aTi x bi , for all i 2 A(x) \ I. Hence, aTi ðx x Þ ¼ 0 for all i 2 E and aTi ðx x Þ 0 for all
i 2 A(x) \ I. Now, using (13.31a) and (13.31d), it follows that
X X
ðx x ÞT ðGx þ cÞ ¼ λi aTi ðx x Þ þ λi aTi ðx x Þ 0: ð13:32Þ
i2E i2Aðx Þ\I
If the reduced Hessian ZTGZ is positive definite, where Z is a null-space basis matrix for the active
constraint Jacobian matrix, which is the matrix whose rows are aTi for all i 2 A(x), then the second-
order sufficient conditions for x to be a local minimum hold. If G is not positive definite, then the
general problem (13.29) may have more than one strict local solution. Such problems are called
nonconvex quadratic programming or indefinite quadratic programming.
For solving the inequality constrained quadratic programming problems (13.29), we can use the
active-set methods or the interior-point methods. In case of the convex quadratic programming, there
are three varieties of active-set methods: primal (Beale, 1959; Fletcher, 1971; Bunch & Kaufman,
1977), dual (Lemke, 1962), and primal-dual (Goncalves, 1972; Goldfarb & Idnani, 1983). The
active-set methods find a step from one iteration to the next one by solving a quadratic subproblem
in which some of the inequality constraints (13.29c) and all the equality constraints (13.29b) are
imposed as equalities. This subset of constraints is referred to as the working set, which at iteration
k is denoted as Wk. The case in which G is an indefinite matrix raises some complications in the
algorithms which are beyond the purpose of this book. For the nonconvex quadratic programming,
see Gould, Orban, and Toint (2005a). In the following, we shall discuss the primal active-set method
and the primal-dual active-set method by Goldfarb and Idnani (1983).
13.2 Inequality Constrained Quadratic Programming 451
The idea of the primal active-set method is as follows. Given the iterate xk and the working set Wk, test
whether xk minimizes the quadratic q in the subspace defined by the working set. If not, a step d is
computed by solving an equality constrained quadratic programming subproblem in which the
constraints corresponding to the working set Wk are regarded as equalities and the rest of constraints
are temporarily ignored. Let us define
d ¼ x xk , gk ¼ Gxk þ c:
Let dk be the solution of (13.33). Since aTi ðxk þ αd k Þ ¼ aTi xk ¼ bi for all α, observe that for each
i 2 Wk, it follows that the value of aTi x does not change as we move along dk. Therefore, since the
constraints in Wk are satisfied at xk, they are also satisfied at xk þ αdk for any value of α. Since G is
positive definite, it follows that the solution of (13.33) can be computed by any method for solving
equality constrained quadratic programming.
Supposing that the optimal dk is nonzero, the question is how far we can move along this direction
to conserve the feasibility. If xk þ dk is feasible with respect to all the constraints, we set xkþ1 ¼ xk þ dk.
Otherwise, set
xkþ1 ¼ xk þ αk dk , ð13:34Þ
where the stepsize αk is computed to be the largest value in the range [0, 1] for which all the
constraints are satisfied. We must consider the definition of αk for the constraints i 2 = Wk, since, as
we said before, the constraints in Wk are satisfied at xk þ αdk for any value of α. If ai dk 0 for some
T
i2= Wk, then for all αk 0 we have aTi ðxk þ αk dk Þ aTi xk bi : Therefore, the constraint i will be
satisfied for all nonnegative αk. On the other hand, if aTi dk < 0 for some i 2 = Wk, then
ai ðxk þ αk d k Þ bi only if
T
bi aTi xk
αk : ð13:35Þ
aTi d k
To maximize the decrease in q, we must take αk to be as large as possible in [0, 1] subject to the
satisfying feasibility. Hence, αk is determined as
452 13 Quadratic Programming
bi aTi xk
αk ≜ min 1, min 2W k , aTi d k < 0
, i= : ð13:36Þ
aTi d k
The constraint i for which the minimum in (13.36) is achieved is called blocking constraint, like in
linear programming (Andrei, 2011d).
If αk < 1, that is, the step along dk was blocked by some constraint not in Wk, then a new working
set Wkþ1 is generated by adding one of the blocking constraints to Wk.
The iterations are continued in this way, by adding constraints to the working set until a point xbthat
minimizes the quadratic objective function over its current working set W b has been attained. Such a
point is easy to be recognized because the subproblem (13.33) has as solution d ¼ 0. Since d ¼ 0
satisfies the optimality conditions (13.3) corresponding to (13.33), we have
X
aib
λi ¼ g ¼ Gb
xþc ð13:37Þ
b
i2W
1. Compute a feasible initial point x0. Set W0 to be a subset of the active constraints at x0. Set k ¼ 0
2. Test a criterion for stopping the iterations
3. Solve the equality quadratic programming sub-problem (13.33) to find dk
4. If dk ¼ 0, then compute the Lagrange multipliers bλi that satisfy (13.37) with Wb ¼ W k : If bλi 0, for all
n o
i 2 Wk \ I, then stop with the solution x ¼ xk; otherwise, determine j ¼ arg min bλj : j 2 W k \ I and
Some properties of the algorithm are given by Nocedal and Wright (2006), where plenty and
important details on the primal active-set method are presented. These properties refer to the signs of
the multipliers corresponding to the inequality constraints in the working set (the indices i 2 W b \ IÞ,
various techniques that are used to determine an initial feasible point, the strategy of removing the
constraint corresponding to the most negative Lagrange multiplier, the strategy of adding or deleting
one constraint at each iteration at most, the finite termination of the active-set algorithm on strictly
convex quadratic programming, updating the factorizations, etc.
Algorithm 13.4 can be adapted to the situations in which the Hessian is indefinite by modifying the
computation of the search direction and of the stepsize. To explain the need for modification, let us
consider the computation of the step by the null-space method, that is, d ¼ Zdz, where dz is given by
(ZTGZ)dz ¼ ZTg. If the reduced Hessian ZTGZ is positive definite, then the step d is directed to the
minimizer of the subproblem (13.33), and the iteration need not be changed. On the other hand, if
ZTGZ has negative eigenvalues, then d is directed to a saddle point of (13.33), and therefore, it is not a
suitable step any more. In this case, an alternative direction sz is sought, which is a direction of
negative curvature for the reduced Hessian ZTGZ. In this case, q(xk þ αZsz) ! 1 , as α ! 1 .
13.2 Inequality Constrained Quadratic Programming 453
Additionally, if necessary, the sign of sz is changed to ensure that Zsz is a non-ascent direction for q at
the current point. By moving along the direction Zsz, we encounter a constraint that can be added to
the working set for the next iteration. Now, if the reduced Hessian for this new working set is not
positive definite, the above procedure is repeated until enough constraints have been added to make
the reduced Hessian positive definite.
Another practical class of algorithms for indefinite quadratic programming is that of inertia
controlling methods. These methods never allow the reduced Hessian to have more than one negative
eigenvalue. At each iteration, the algorithm will either add or remove a constraint from the working
set. If a constraint is added, then the reduced Hessian is of smaller dimension and must remain
positive definite or be the null matrix. Therefore, an indefinite reduced Hessian can arise only when
one of the constraints is removed from the working set, which happens only when the current point is
a minimizer with respect to the current working set. In this case, we will choose the new search
direction to be a direction of negative curvature for the reduced Hessian. The algorithms for indefinite
quadratic programming differ in the way they detect the indefiniteness and they compute the negative
curvature direction and in the handling of the working set (Fletcher, 1971; Gill & Murray, 1978).
This active-set algorithm is based on a repeated use of the optimality conditions for an equality
quadratic programming problem. In the following, we consider the quadratic programming which has
only inequality constraints. The extension to mixed equality and inequality quadratic problems is
straightforward. Therefore, let us consider the problem
1 T
min x Gx þ cT x ð13:38aÞ
2
subject to
b þ bb 0,
Ax ð13:38bÞ
where we assume that G is positive definite. The method begins by identifying an active set of
constraints. This is an estimate of those which are binding at the solution. Now, let A be the matrix and
b the vector formed from the rows of Ab and bb corresponding to the active constraints. With this, let
xe, e
λ be a trial solution by minimizing (13.38a) subject to
Ax þ b ¼ 0,
bx þ bb 0,
Ae ð13:39aÞ
eT
λ Ae bx þ bb ¼ 0 and eλ 0, ð13:39bÞ
then the optimality conditions (13.31) are all satisfied and the problem (13.38) is solved by x ¼ xe and
λ ¼ eλ: On the other hand, if xe, e
λ is not optimal, we must change the active set and solve another
equality constrained quadratic programming subproblem. This process is repeated until the active set
has become the binding set for the problem (13.38). The choice of a new active set is based on
(13.39). Two ideas are followed here. The first one is that any new constraint which is violated at xe
454 13 Quadratic Programming
can be regarded as a candidate for being added to the current active set. Secondly, any active
constraint which corresponds to a negative component of bλ is a candidate for deletion from the
current active set (Bartholomew-Biggs, 2008). The following algorithm formalizes the ideas just
b
outlined, where abi denotes the i-th row of A:
The algorithm may have different variants according to the methods for solving the problems in
step 5 and to the rules with regard to how many constraints may be added to or dropped from the
active set. The stepsize computed in step 7 checks all the inactive constraints that might be violated by
a step along the search direction p and ensures that no more than one constraint can be added to the
active set on the current iteration. Details can be found in Fletcher (1971).
The active-set strategy combined with the null-space approach can be very easily extended to
solving problems with the nonquadratic objective function f(x) and with linear inequality constraints
abTi x þ bbi 0, i ¼ 1, . . ., m. In this case, the Y and Z matrices used in the null-space method must be
computed whenever the active set is changed (Bartholomew-Biggs, 2008).
1. Choose an initial point x0 and set λ0 ¼ 0. Choose B0 as a positive definite estimate of ∇2f(x0). Select a
tolerance ε > 0. Set k ¼ 0
2. Compute gk ¼ ∇ f(xk)
3. Select active constraints as those with abT xk þ bbi ¼ 0 and λk 0
i i
4. Consider Ak as the matrix of active constraint normals at xk
5. Compute Yk and Zk as basis matrices for the range and the null spaces of matrix Ak
6. Determine z as solution of the linear system Z Tk Bk Z k z ¼ Z Tk gk : Set dk ¼ Zkz
7. Find λkþ1 as solution of the linear system Y Tk ATk λ ¼ Y Tk gk þ Y Tk Bk dk
13.2 Inequality Constrained Quadratic Programming 455
8. Step length computation. Perform a line-search to get xkþ1 ¼ xk þ sdk so that f(xkþ1) < f(xk)
9. Compute a quasi-Newton update of Bk to get Bkþ1
10. Test of convergence. If Z Tk gk ε, then stop; otherwise, set k ¼ k þ 1 go to step 2 ♦
Observe that in step 8 the computations of the step length must ensure that no new constraints are
violated. Therefore, the stepsize s is subject to an upper limit which allows at most one new constraint
to become binding at xkþ1. This can be computed as in step 7 of Algorithm 13.5. The difficulty with
this algorithm is that the matrices Y and Z used in the null-space method must be computed whenever
the active set is changed in step 4 of the algorithm.
An important situation in which Z can be very easily computed and, therefore, makes the reduced-
gradient approach very attractive is when the problem has only simple bounds on variables: li xi ui,
i ¼ 1, . . ., n. Suppose that li < ui, i ¼ 1, . . ., n. In this case, at the start of each iteration the variables are
classified in two classes: those which are fixed (i.e., on their bounds) and those which are free. If xk is
the current estimate at the start of iteration k, then the bound on the i-th variable is active if xk is fixed,
which means that
xki ¼ li and gki > 0 or xki ¼ ui and gki < 0 :
In this case, the matrix Z whose columns span the space of the free variables can be simply taken as
a partition of the identity matrix. When the iterate xkþ1 is computed from xk along a search direction
dk, the stepsize must ensure that no new bounds are violated. A maximum stepsize to force each
variable xki to stay within its bounds can be computed as
ðui xki Þ=d ki if d ki > 0,
simax ¼
ðli xki Þ=dki if dki < 0:
1. Choose an initial point x0 and B0 as a positive definite estimate of ∇2f(x0). Select a tolerance ε > 0. Set
k¼0
2. Compute gk ¼ ∇ f(xk)
3. Set Zk as the n n identity matrix
4. For i ¼ 1, . . ., n repeat: if xki satisfies (xki ¼ li and gki > 0) or (xki ¼ ui and gki < 0), then delete the i-th
column of Zk
5. Determine z as solution of the linear system Z Tk Bk Z k z ¼ Z Tk gk : Set dk ¼ Zkz
6. Use a line-search along dk to find s so that f(xk þ sdk) < f(xk)
7. For each free variable xki compute simax and set s ¼ min s, simax
8. Set xkþ1 ¼ xk þ sdk
9. Compute a quasi-Newton update of Bk to get Bkþ1
10. Test of convergence. If Z Tk gk ε, then stop; otherwise, set k ¼ k þ 1 go to step 2 ♦
In the following, we present the algorithm by Goldfarb and Idnani (1983) for solving the inequality
constrained quadratic programming problems
1
min QðxÞ≜ xT Gx þ cT x ð13:40aÞ
2
subject to
si ðxÞ ¼ aTi x þ bi ¼ 0, i ¼ 1, . . . , me , ð13:40bÞ
l x u, ð13:40dÞ
where G is an n n symmetric and positive definite matrix and ai 2 ℝn for all i ¼ 1, . . ., m. In general,
the algorithms for quadratic programming have two phases. In the first one, a feasible point is
obtained, and then, in the second phase, the optimality is achieved while maintaining the feasibility.
The algorithm of Goldfarb and Idnani is of the active-set type. By an active set, we mean a subset
of the m constraints in (13.40) that are satisfied as equalities by the current estimate x of the solution to
the quadratic programming problem (13.40). If we denote the set of indices of the constraints (without
simple bounds) by I ¼ {1, . . ., m}, then the active set is denoted by A ⊆ I. Let P(J ) be the
subproblem with the objective function (13.40a) subject only to the subset of the constraints indexed
by J ⊂ I. For example, P(∅) is the problem of finding the unconstrained minimum of (13.40). If the
solution x of a subproblem P(J ) lies on some linearly independent active set of constraints indexed by
A ⊆ J, then the pair (x, A) is called a solution. Clearly, if (x, A) is a solution for the subproblem P(J),
then it is also a solution for the subproblem P(A). By linear independence of a set of constraints, we
mean that the normals corresponding to these constraints are linearly independent. In the following,
we outline the algorithm given by Goldfarb and Idnani (1983):
Since G is positive definite, it follows that the unconstrained minimum of the function Q(x) defined
in (13.40a) is x0 ¼ G1c. Therefore, the above procedure can start with the pair (x0, ∅).
For describing the algorithm, we have to introduce some notations like in Goldfarb and Idnani
(1983). The matrix of the normal vectors of the constraints in the active set A is denoted by N, and the
cardinality of A is denoted by q. Denote A+ ¼ A [ {p}, where p 2 I\A, and A is a proper subset of A,
which contains one fewer element than A. N+ and N represent the matrices of normals corresponding
to A+ and A, respectively. ei represents the i-th column of the unity matrix, and Ik is the k k identity
matrix. n+ represents the normal vector np added to N to obtain N+; n represents the column deleted
from N to get N.
13.2 Inequality Constrained Quadratic Programming 457
If the columns from N are linearly independent, then we may introduce the following operators:
1
N ¼ N T G1 N N T G1 ð13:41Þ
and
1
H ¼ G1 ðI NN Þ ¼ G1 G1 N N T G1 N N T G1 : ð13:42Þ
We can see that N is the pseudo-inverse, or the generalized Moore-Penrose inverse, of N in the
space of variables obtained through the transformation y ¼ G1/2x. On the other hand, H is the inverse
of the reduced Hessian of the function Q(x) with respect to the active set of constraints. If xb is a point
where the vector of Lagrange multipliers uðxÞ 0: From the definitions of N and H, it follows that at
such a point we have
uðxÞ ¼ N gðxÞ 0 ð13:44Þ
and
HgðxÞ ¼ 0: ð13:45Þ
Observe that these conditions are necessary as well as sufficient for x to be the optimal solution of
P(A). Let us define r ¼ Nn+ as the Lagrange multipliers associated to the infeasible constraints.
Define H+ as in (13.42) with N replaced by N+. A similar notation is used for (N+) and u+.
The algorithm presented below follows the dual approach described above and makes use of the
operators N and H defined in (13.41) and (13.42), respectively (Goldfarb & Idnani, 1983). An
efficient implementation does not explicitly compute and does not store these operators. Instead, this
implementation stores and updates the matrices J ¼ QTL1 and R obtained from the Cholesky and QR
R
factorization of G ¼ LLT and L1 N ¼ Q .
0
1. Find the unconstrained minimum of function Q(x) from (13.40a). Compute x ¼ G1c, H ¼ G1,
A ¼ ∅, and q ¼ 0
2. Choose a violated constraint, if any, and compute sj(x) for all j 2 I \ A
If V ¼ {j 2 I \ A : sj(x) < 0} ¼ ∅ , then stop; the current solution is optimal. Otherwise, choose p 2 V and
set n+ ¼ np and uþ ¼ ½ u 0 T
If q ¼ 0, then set u ¼ 0. (A+ ¼ A [ {p})
3. Determine the search direction.
Compute z ¼ Hn+ as the direction in the primal space. If q > 0, then set r ¼ Nn+ the negative of the
direction in the dual space
4. Compute the step length.
(i) Compute t1 the maximum step in the dual space without violation of the dual feasibility. If r 0 or
q ¼ 0, then set t1 ¼ 1 ; otherwise, set
458 13 Quadratic Programming
nuþ ðxÞ o
uþ ðxÞ
t1 ¼ min j
rj : r j > 0, j ¼ 1, . . . , q ¼ l rl :
In step 5 below, the element k 2 I corresponds to the l-th element form A.
(ii) Compute t2 the minimum step in the primal space such that the p-th constraint becomes feasible. If
|z| ¼ 0, then set t2 ¼ 1 ; otherwise, set
s ðxÞ
t2 ¼ zpT nþ :
(iii) Step length computation: t ¼ min (t1, t2)
5. Determine the pair and take the step.
(i) If t ¼ 1 , no step in the primal or dual space is executed and stop. The subproblem P(A+) is infeasible
and hence problem (13.40) is infeasible.
r
(ii) If t2 ¼ 1 , then set uþ ¼ uþ þ t and delete the constraint k, i.e., set A ¼ A\{k}, q ¼ q 1,
1
update H and N , and go to step 3.
r
(iii) Step in the primal and dual space. Set x ¼ x þ tz, uþ ¼ uþ þ t :
1
If t ¼ t2, then set u ¼ u and add the constraint p to A, that is, A ¼ A [ {p}, set q ¼ q þ 1, update H and N,
+
and go to step 2.
If t ¼ t1, then drop the constraint k, i.e., set A ¼ A\{k}, q ¼ q 1, update H and N, and go to
step 3 ♦
Goldfarb and Idnani (1983) prove that the algorithm will solve the quadratic programming
problem (13.40) or indicate that it has no feasible solution in a finite number of steps.
The implementation of the above algorithm in a stable manner is based on the Cholesky
factorization
G ¼ LLT ð13:46Þ
of the n q matrix
B ¼ L1 N: ð13:48Þ
H ¼ J 2 J T2 ð13:49Þ
and
N ¼ R1 J T1 , ð13:50Þ
where
½ J1 J 2 ¼ LT Q1 LT Q2 ¼ LT Q ¼ J: ð13:51Þ
Although the algorithm is based on the QR factorization, the orthogonal matrix Q from (13.47) is
not stored; instead, the matrix J ¼ LTQ is stored and updated, as whenever Q is called by the
algorithm, it appears in conjunction with LT.
13.2 Inequality Constrained Quadratic Programming 459
In Algorithm 13.8, it is necessary to compute the vectors z ¼ Hn+ and r ¼ Nn+. If we compute
" #
T þ J T1 þ d1
d¼J n ¼ T
n ¼ , ð13:52Þ
J2 d2
z ¼ J 2 d2 , r ¼ R1 d 1 : ð13:53Þ
In the following, like in Goldfarb and Idnani (1983), let us present some details concerning the
updating of the factors J and R when a constraint is added to or deleted from the active set.
Updating the factors J and R Whenever a constraint is added to or deleted from the set of the active
constraints, the factors J and R must be updated. Numerically stable methods for updating the QR
factorization of a matrix when it is modified by the addition or deletion of a single column are well
known (Daniel, Graggs, Kaufman, & Stewart, 1976; Gill, Golub, Murray, & Saunders, 1974;
Goldfarb, 1975). In the updating scheme described by Goldfarb and Idnani (1983), the Givens
matrices Qij are used. They are equal to the identity matrix with the elements (i, i), (i, j), ( j, i), and
( j, j) replaced by t, s, s, and t, respectively, where t ¼ cos θ and s ¼ sin θ for some value of θ.
Having in view their special structure, the computations involving the Givens matrices can be
illustrated by considering the 2 2 matrix
b¼ t s
Q :
s t
w1 w2
t¼ and s ¼ :
ω ω
b ¼Q
To compute yb ¼ Qy bT y, where y ¼ ½ y y T , the algorithm follows the scheme given in
1 2
Gill, Golub, Murray, and Saunders (1974) and determines
w2 s
v¼ ¼ ,
ω þ w1 1 þ t
and
n 1 multiplications, but introduces n þ 1 additions over the usual procedure for matrix
multiplications. Also, observe that the sign of ω is chosen so that there is no cancelation in the
computation of ν.
460 13 Quadratic Programming
Adding a constraint When the constraint p with the normal n+ is added to the active set A, then the
factorization (13.47) is replaced by
þ
1 þ
þ Rþ
B ¼ B L n ¼Q : ð13:55Þ
0
where δ ¼ kd2k and Q ¼ Q1,2 Q2,3 ⋯Qnq1,nq is the product of the Givens matrices chosen, so that
Qd2 ¼
δe1 : ð13:56Þ
Moreover,
h i
J þ ¼ LT Qþ ¼ J 1 J2Q
T
¼ Jþ
1 Jþ
2 , ð13:57Þ
T
where J1 has q columns, J 2 Q has n q columns, J þ þ
1 has q þ 1 columns, and J 2 has n q 1
columns.
Dropping a constraint When the l-th constraint is deleted from the active set, that is, when the l-th
column of N is deleted to form N+, then
T T 1 R1 S
Q1 B ¼ Q1 L N ¼ ,
0 T
where the partitioned matrix on the right is equal to R but with its l-th column eliminated. If l 6¼ q,
then T is a (q l þ 1) (q l ) upper-Hessenberg matrix. Again, a sequence of q l Givens matrices
can be chosen, so that the product of these matrices Q ¼ Qql,qlþ1 ⋯Q2,3 Q1,2 reduces T to an upper
triangular matrix R2, i.e.,
QT ¼ R2 : ð13:58Þ
The matrices Q from (13.56) and (13.58) are not computed. Instead, the Givens matrices from
which they are formed, which successively introduce zeros into d2 and T, are applied directly to the
rows of JT using the computational scheme (13.55).
13.2 Inequality Constrained Quadratic Programming 461
When the step directions z for the primal variables and r for the dual variables given by (13.53)
are computed, we need the vector d ¼ JTnþ. When a constraint is deleted from the active set, then the
same orthogonal transformations that are applied to update JT can be applied to d. If these operations
are executed, then the updated d can be used to compute the new vectors z and r after the basis change
and to determine the appropriate orthogonal transformation Q in (13.56) needed when the p-th
constraint is finally added to the active set.
Algorithm 13.8 (dual for quadratic programming) is one of the most advanced algorithms for
solving quadratic programming problems with equality and inequality constraints. Its efficiency
comes from two sources: the dual method and the implementation of an advanced computational
scheme based on the QR factorization which is updated by the Givens matrices. One of the first
implementations of Algorithm 13.8 was given by Powell (1983) (Fortran package ZQPCVX). A
professional extension was given by Schittkowski (2005) (Fortran package QLD).
Example 13.2 Let us consider the following quadratic programming problem (Andrei, 1999a,
p. 792, 2003, p. 329):
P
15 P
14
min QðxÞ x2i þ ðxi þ xiþ1 Þ
i¼1 i¼1
subject to
0:1x1 þ 0:1x7 þ 0:3x8 þ 0:2x9 þ 0:2x11 1 ¼ 0,
0:1x2 þ 0:2x8 þ 0:3x9 þ 0:4x10 þ x11 2 ¼ 0,
0:1x3 þ 0:2x8 þ 0:3x9 þ 0:4x10 þ 2x11 3 ¼ 0,
x4 þ x8 þ 0:5x9 þ 0:5x10 þ x11 x12 3 ¼ 0,
2x5 þ x6 þ 0:5x7 þ 0:5x8 þ 0:25x9 þ 0:25x10 þ 0:5x11 x13 4 ¼ 0,
x4 þ x6 þ x8 þ x9 þ x10 þ x11 x14 5 ¼ 0,
0:1x1 þ 1:2x7 þ 1:2x8 þ 1:4x9 þ 1:1x10 þ 2x11 x15 6 ¼ 0,
0 xi 2, i ¼ 1, . . . , 15:
Table 13.1 contains information on the optimization process given by Algorithm 13.8 in the QLD
implementation by Schittkowski (2005). To get a solution, the algorithm needs eight iterations. In
Table 13.1, we can see the evolution of the values of the objective function along the iterations. Also
In this table, we have #k ¼ the number of iterations, Q(xk) ¼ the value of the objective function, svr ¼ the sum of the
constraints violation, #nra ¼ the number of the active constraints, t ¼ the stepsize, and kkt ¼ the value of the KKT
conditions at xk
462 13 Quadratic Programming
l x0 x* u
1 0 2.1 0.400273 2
2 0 2.1 0.130566 2
3 0 2.1 0 2
4 0 2.1 0 2
5 0 2.1 0.903379 2
6 0 2.1 0.416858 2
7 0 2.1 0 2
8 0 2.1 1.509334 2
9 0 2.1 1.522805 2
10 0 2.1 0.537945 2
11 0 2.1 1.013057 2
12 0 1 0.552766 2
13 0 1 0 2
14 0 1 0 2
15 0 1 0.601009 2
notice the evolution of the sum of the constraints violation, which tends to zero, as well as the
evolution of the norm of the KKT conditions. The number of the active constraints is 7; the problem
has only equality constraints. The stepsize is equal to 1 along the iterations, like in the Newton
method from the unconstrained optimization.
In Table 13.2, we can note the initial point, the bounds on variables, and the solution given by
QLD. Observe that the initial point is not feasible.
Application Q1. DYNAMIC This application is a representation of the problem concerning the
scheduling of three generators to meet the demand for power over a given period of time. The
variables x3kþi denote the output from the generator i at time tk. The constraints of the problem are
upper and lower limits on the power available from each generator, bounds on the amount by which
the output from a generator can change from time tk to tkþ1, as well as the condition that at each time
tk, the power generated must at least satisfy the demand. The mathematical model is described in Pant,
Thangaraj, and Singh (2009) and is as follows:
4
P
min 2:3x3kþ1 þ 0:0001x23kþ1 þ 1:7x3kþ2 þ 0:0001x23kþ2 þ 2:2x3kþ3 þ 0:00015x23kþ3
k¼0
subject to
x1 þ x2 þ x3 60,
x4 þ x5 þ x6 50,
x7 þ x8 þ x9 70,
x10 þ x11 þ x12 85,
x13 þ x14 þ x15 100,
7 x3kþ1 x3k2 6, k ¼ 1, . . . , 4,
7 x3kþ2 x3k1 7, k ¼ 1, . . . , 4,
7 x3kþ3 x3k 6, k ¼ 1, . . . , 4,
13.3 Interior Point Methods 463
Considering the initial point x0i ¼ ðli þ ui Þ=2, i ¼ 1, . . ., 15, Algorithm 13.6 gives the following
solution:
In the following, let us present the interior point methods for solving quadratic programming
problems. We consider the convex quadratic programs with inequality constrains (Nocedal & Wright,
2006):
464 13 Quadratic Programming
1
min qðxÞ ¼ xT Gx þ cT x,
x 2
subject to ð13:60Þ
Ax b,
where G is symmetric and positive semidefinite and A ¼ [a1, . . ., am]T 2 ℝmn and b ¼ [b1, . . .,
bm]T 2 ℝm. The KKT optimality conditions for (13.60) are as follows:
Gx AT λ þ c ¼ 0,
Ax b 0,
ðAx bÞi λi ¼ 0, i ¼ 1, . . . , m,
λ 0:
Gx AT λ þ c ¼ 0, ð13:61aÞ
Ax y b ¼ 0, ð13:61bÞ
λ 0: ð13:61dÞ
Observe that the matrix G is positive semidefinite. Therefore, these KKT conditions are both
necessary and sufficient, and consequently, the convex quadratic problem (13.60) can be solved by
finding the solutions of the system (13.61).
For this, let us consider the current iterate (x, y, λ) that satisfies y > 0 and λ > 0. Define the
complementarity measure μ as
yT λ
μ¼ : ð13:62Þ
m
With this, we define the path-following primal-dual methods by considering the perturbed KKT
conditions
2 3
Gx AT λ þ c
6 7
Fðx, y, λ; σμÞ ¼ 4 Ax y b 5 ¼ 0, ð13:63Þ
YΛe σμe
where
and σ 2 [0, 1]. The solutions of (13.63) for all positive values of σ and μ define the central path, which
is a trajectory that leads to the solution of the quadratic problem (13.60) as σμ tends to zero.
Now, fixing μ and applying the Newton method to (13.63), the following linear system is obtained:
2 32 3 2 3
G 0 AT Δx r d
6 76 7 6 7
4 A I 0 54 Δy 5 ¼ 4 r p 5, ð13:64Þ
0 Λ Y Δλ ΛYe þ σμe
13.3 Interior Point Methods 465
where
r d ¼ Gx AT λ þ c, r p ¼ Ax y b: ð13:65Þ
which can be solved by a modified Cholesky algorithm (see Appendix A) to get Δx.
Stepsize Selection
Like in Nocedal and Wright (2006), suppose that the new iterate is defined as
where α prim and αdual are the stepsizes that ensure the positivity of x+ and λ+. From (13.64) and
(13.65), it follows that the new residuals satisfy the following relations:
rþ
p ¼ 1α
prim
rp , ð13:70aÞ
rþ
d ¼ 1α
dual
r d þ αprim αdual GΔx: ð13:70bÞ
þ
If α prim ¼ αdual ¼ α, then r þp ¼ ð1 αÞr p and r d ¼ ð1 αÞr d , that is, both residuals decrease
linearly for all α 2 (0, 1). For different stepsizes, the residual r þ
d may increase for certain values of
α prim and αdual. Therefore, the interior point algorithms use equal stepsizes, as in (13.66), and set
αprim
τ ¼ max fα 2 ð0, 1 : y þ αΔy ð1 τÞyg, ð13:71Þ
αdual
τ ¼ max fα 2 ð0, 1 : λ þ αΔλ ð1 τÞλg: ð13:72Þ
The interior point algorithm for convex quadratic programming is based on the Mehrotra
predictor-corrector method, originally developed for linear programming (Mehrotra, 1992).
Firstly, an affine scaling step (Δxaff, Δyaff, Δλaff) is computed by setting σ ¼ 0 in (13.64). Next,
this step is improved by computing a corrector step and the centering parameter σ ¼ (μaff/μ)3, where
466 13 Quadratic Programming
T
μaff ¼ y þ b
αaff Δyaff λþb
αaff Δλaff =m: The total step is obtained by solving the following linear
system:
2 32 3 2 3
G 0 AT Δx r d
6 76 7 6 7
4A I 0 54 Δy 5 ¼ 4 r p 5: ð13:73Þ
0 Λ Y Δλ ΛYe ΔΛ ΔY þ σμe
aff aff
1. Compute (x0, y0, λ0) such that y0 > 0 and λ0 > 0. Set k ¼ 0
2. Test a criterion for stopping the iterations
3. Set σ ¼ 0. Set (x, y, λ) ¼ (xk, yk, λk) and solve (13.64) subject to (Δxaff, Δyaff, Δλaff)
4. Compute μ ¼ yTλ/m
To accelerate the convergence, τk can be selected to approach 1 as the iterates approach the
solution. The performances of the algorithm are dependent on the initial point. A simple procedure for
selecting the initial point is as follows. Firstly, an initial point x, y, λ is defined and moved far
enough from the boundary of the region (y, λ) 0 to permit the algorithm to take long steps on the
early iterations. Next, the affine scaling step (Δxaff, Δyaff, Δλaff) from the supplied initial point
where G 2 ℝnn is a symmetric and positive definite matrix and A 2 ℝmn is of full row rank m,
where m < n. For solving this problem, the following methods can be presented:
Gx þ c AT λ ¼ 0, ð13:75aÞ
Ax þ b ¼ 0: ð13:75bÞ
If G is positive definite and A has full row rank, then the matrix
" #
G AT
A 0
is nonsingular, and the solution x of (13.75) is the unique global minimizer of the convex equality
quadratic programming problem (13.74). Therefore, the solution x and the Lagrange multipliers λ
can be expressed as
1 1
λ ¼ AG1 AT AG c þ b , ð13:76aÞ
x ¼ G1 AT λ c : ð13:76bÞ
However, the solution of the symmetric system (13.75) can be obtained by using numerical
methods that are often more efficient and more reliable than the formulae (13.76) (Golub, & Van
Loan, 1996).
x ¼ V r z þ Aþ b, ð13:79Þ
where Q 2 ℝnn is an orthogonal matrix and R 2 ℝmm is an upper triangular matrix (see Appendix
A). Therefore, the constraints Ax ¼ b can be expressed as RT xb1 ¼ b, where xb1 is the vector composed
of the first m components of xb with xb ¼ QT x: Let us denote
xb1
xb ¼ and Q ¼ ½Q1 Q2 ,
z
x ¼ Q1 xb1 þ Q2 z ¼ Q2 z þ Q1 RT b,
x ¼ Qb ð13:80Þ
x ¼ Q2 z þ Q1 RT b,
b ¼ b
where z is a solution of the linear system equations Gz c, where G b and cb are given by (13.81).
Of course, in both approaches presented above if G b is positive definite, then the linear system of
b ¼ b
equations Gz c can be efficiently solved by the Cholesky factorization.
In the following, let us discuss the minimization of the quadratics in which the variables are simple
bounded by using the gradient projection approach. This is a very nice application of the optimization
with simple bounds on variables, presented in Chap. 12. Unlike the active-set method, the gradient
projection method allows the active set to rapidly change from iteration to iteration, thus reducing the
number of iterations for getting a solution. Consider the following problem:
13.5 Quadratic Programming with Simple Bounds: The Gradient Projection Method 469
1
min qðxÞ ¼ xT Gx þ cT x
2
subject to ð13:82Þ
l x u,
where G is a symmetric matrix and l and u are vectors of lower and upper bounds on variables. The
feasible region defined by l x u is called a box, because of its rectangular shape. Assume that
li < ui for all i. It is not necessary to make any positive definiteness assumptions on G, because the
gradient projection method can be applied for both convex and nonconvex problems.
Every iteration of the gradient projection method has two stages. In the first one, from the current
point x, searching is executed along the steepest descent direction, that is, along the direction Gx c.
Whenever a bound is encountered, the search direction is bent so that it stays feasible. Therefore, the
search continues along a piecewise-linear path until the first local minimizer of q denoted by xc and
referred to as the Cauchy point is located. The working set is defined as the set of the bounds
constraints that are active at the Cauchy point, denoted by A(xc). In the second stage, a face of the
feasible box on which the Cauchy point lies is inspected by solving a subproblem in which the active
components xi, i 2 A(xc) are fixed at the values xci :
The projection of an arbitrary point x on the feasible region l x u is defined as a vector whose i-th
component is
8
>
< li , if xi < li ,
Pðx, l, uÞi ¼ xi if li xi ui , ð13:83Þ
>
:
ui if xi > ui ,
Starting from the current point x, the piecewise-linear path x(t) obtained by projecting the steepest
descent direction at x onto the feasible region l x u is given by
xðtÞ ¼ Pðx tg, l, uÞ, ð13:84Þ
where g ¼ Gx þ c. The Cauchy point xc is defined as the first local minimizer of the piecewise-
quadratic function q(x(t)), for t 0. Every line segments that define x(t) is examined to determine
this minimizer point. For this, the values of t for which each component reaches its bound along
g are determined. These values ti are computed as
8
< ðxi ui Þ=gi , if gi < 0 and ui < þ1,
>
ti ¼ ðxi li Þ=gi , if gi > 0 and li > þ1, ð13:85Þ
>
:
1 otherwise:
To determine the first local minimizer along P(x tg, l, u), first eliminate the duplicate values and
the zero of ti from the set ft1 , . . . , tn g: Secondly, all these values are sorted, thus obtaining the
470 13 Quadratic Programming
reduced set of breakpoints {t1, . . ., tl} with 0 < t1 < ⋯ < tl. After that, the intervals [0, t1], [t1, t2], . . .
are examined in this order. Suppose that we have examined these intervals up to tj 1 and no local
minimizer has been found. For the interval [tj 1, tj], it follows that
xðtÞ ¼ x tj1 þ ðΔtÞdj1 ,
where
Δt ¼ t tj1 2 0, tj tj1 , ð13:87Þ
gi , if tj1 < ti ,
dj1
i ¼ ð13:88Þ
0, otherwise:
Therefore, on the line segment [x(tj 1), x(tj)], (13.82) can be written as
1 T
qðxðtÞÞ ¼ cT x tj1 þ ðΔtÞdj1 þ x tj1 þ ðΔtÞdj1 G x tj1 þ ðΔtÞdj1 ,
2
which can be rewritten as
1
qðxðtÞÞ ¼ f j1 þ f 0j1 Δt þ f 00j1 ðΔtÞ2 , ð13:89Þ
2
where Δt 2 [0, tj tj 1], and the coefficients f j1 , f 0j1 and f 00j1 are given by
1 T
f j1 ≜ cT x tj1 þ x tj1 Gx tj1 ,
2
T
f 0j1 ≜ cT d j1 þ x tj1 Gd j1 ,
T
f 00j1 ≜ dj1 Gd j1 :
To determine Δt, the minimum of (13.89), we differentiate q(x(t)) with respect to Δt and set
0
q (x(t)) ¼ 0 to obtain Δt ¼ f 0j1 =f 00j1 : The following three cases can occur. (i) If f 0j1 > 0, then
there is a local minimizer of q(x(t)) at t ¼ tj 1. (ii) If Δt 2 [0, tj tj 1), then there is a minimizer
at t ¼ tj 1 þ Δt. (iii) In all the other cases, continue the search with the next interval
[tj, tjþ1]. Obviously, for the next interval, the new direction d j from (13.88) needs to be computed,
with which the new values f j , f 0j , and f 00j are computed, etc.
Subproblem Minimization
After the Cauchy point xc has been computed, the active set Aðxc Þ ¼ i : xci ¼ li , or xci ¼ ui g is
determined. As we said, in the second stage of the gradient projection method, the quadratic
programming problem obtained by fixing the components xi for i 2 A(xc) at the values xci is solved.
That is, the remaining components xi for i 2
= A(xc) are determined as solution of the subproblem
13.6 Elimination of Variables 471
1
minqðxÞ ¼ xT Gx þ cT x
2
subject to ð13:90Þ
li xi ui , i=
2 Að x Þc
xi ¼ xci , i 2 Að x c Þ
Obviously, (13.90) does not need to be solved exactly. To obtain the global convergence of the
gradient projection algorithm, it suffices to determine an approximate solution xa of (13.90), which
satisfies the bounds and has an objective value q(xa) q(xc). For this, Algorithm 13.2 (preconditioned
conjugate gradient for reduced systems) or Algorithm 13.3 (projected conjugate gradient) can be
used. Having in view the equalities constraints from (13.90), it follows that the Jacobian and the null-
space basis matrix Z used in Algorithm 13.2 have simple forms. The idea is to apply the conjugate
gradient to minimize q(x) from (13.90) subject to the equality constraints xi ¼ xci , i 2 A(xc) and to
terminate as soon as a bound l x u is encountered. Another strategy is to continue the iterations by
ignoring the bounds and finally to project the obtained solution onto the box constraints.
The gradient projection algorithm for quadratic programming with simple bounds can be presented
as follows.
Algorithm 13.10 Gradient projection for quadratic programming with box constraints
If the strict complementarity holds (Definition 11.23), that is, the Lagrange multipliers associated
with all the active bounds are nonzero, then the active sets A(xc) generated by Algorithm 13.10 are
equal to the optimal active set for all k sufficiently large.
Of course, Algorithm 13.10 can be applied for minimizing the quadratic forms subject to linear
inequality constraints (13.60) aTi x bi , i ¼ 1, . . ., m. However, in this case, the difficulty is to
perform the projection on the feasible set. For this, to compute the projection of a given point xk onto
the set defined by aTi x bi , i ¼ 1, . . ., m, the following convex quadratic programming problem
has to be solved. However, this is a difficult problem; the cost of its solving may approach the cost of
solving the original problem. Therefore, for minimizing quadratic forms subject to linear inequality
constraints, it is not advisable to apply the gradient projection algorithm.
Often, quadratic programming with equality constraints can be solved by eliminating the variables. In
this method, the equality constraints are used to eliminate the variables, thus obtaining another
simplified quadratic programming problem with a smaller number of variables. Consider the problem
472 13 Quadratic Programming
1
minqðxÞ xT Gx þ cT x
2
subject to ð13:91Þ
Ax þ b ¼ 0,
where G is an n n symmetric matrix, A 2 ℝmn with rank(A) ¼ m and m < n. The method of
eliminating the variables can be implemented in different manners, as follows:
where GB 2 ℝmm, GN 2 ℝ(nm) (nm), GBN 2 ℝm(nm), GNB ¼ GTBN , cB 2 ℝm, and cN 2 ℝnm.
Now, substituting xB into the objective function (13.92), we obtain a reduced quadratic programming
problem in xN, i.e.,
1 Tb
min x G x þ cbTN xN ð13:93Þ
xN 2ℝnm 2 N N N
bN and cbN are obtained from the algebraic manipulation of the above substitution, that is,
where G
The Lagrange multipliers λ at x are obtained from the equation c þ Gx ¼ Aλ, using the above
partition of vectors and matrices.
If GbN is positive semidefinite, then, when
bþ Þb
bN G
ðI þ G N cN ¼ 0, ð13:95Þ
i.e., when cbN 2 R GbN , the minimization problem (13.93) has a solution, and its solution is
xN ¼ Gbþ cbN þ I Gbþ G bþ is the generalized inverse of
bN xe, where xe 2 ℝnm is any vector and G
N N N
GbN : If (13.95) does not hold, then the problem (13.93) has no lower bound, and thus the problem
(13.91) also has no lower bound, i.e., it has no finite solution.
13.6 Elimination of Variables 473
bN has negative eigenvalues, it is clear that the minimization problem (13.93) has no lower
If G
bound.
This method of elimination of variables is simple, but when B is close to a singular matrix, then
computing the solution (13.94) is numerically unstable.
x ¼ Y ðAY Þ1 b þ Zb
x: ð13:96Þ
Supposing that ZTGZ is positive definite, then the solution of (13.97) can be written as
1 T
xb ¼ ZT GZ Z c Z T GY ðAY ÞT b : ð13:98Þ
Moreover, from the KKT condition it follows that c þ Gx ¼ ATλ. Therefore, since AY is
nonsingular, we have λ ¼ (AY)TYT(c þ Gx), where x is given by (13.99).
Observe that the generalized elimination of variables uses the linear independent column vectors
{z1, . . ., znm} which form the matrix Z, which is a base of the null space of AT. This transforms the
quadratic programming problem (13.91) into an unconstrained minimization problem (13.97). That is
why this method is called the null-space method, in which the matrix ZTGZ is the reduced Hessian and
the vector ZT(c GY(AY)Tb) is the reduced gradient. The null-space method is very useful for
small- and medium-scale problems and when the computation of the null space and the factorization
of the reduced Hessian are not very expensive.
Another approach for eliminating the variables is based on the elimination of the balance
constraints (Andrei & Bărbulescu, 1993; Andrei, 2011d). In the system of constraints from (13.91),
474 13 Quadratic Programming
This chapter introduces two very important concepts in the constrained nonlinear optimization. These
are penalty and augmented Lagrangian. Both concepts replace the original problem by a sequence of
subproblems in which the constraints are expressed by terms added to the objective function. The
penalty concept is implemented in two different methods. The quadratic penalty method adds a
multiple of the square of the violation of each constraint to the objective function and solves a
sequence of unconstrained optimization subproblems. Although simple and intuitive, this approach
has some major deficiencies. The nonsmooth exact penalty method, on the other hand, solves a single
unconstrained optimization problem. In this approach, a popular function is the l1 penalty function.
The problem is that the nonsmoothness may create complications in numerical implementations.
Finally, the second concept is the multipliers method or the augmented Lagrangian method, which
explicitly uses Lagrange multiplier estimates in order to avoid the ill-conditioning of the quadratic
penalty method.
The modern and best known methods for solving nonlinear optimization problems combine the
penalty concept with the augmented Lagrangian in a penalty barrier with quadratic approximation of
the inequality constraints (SPENBAR), or the minimization of a modified augmented Lagrangian
subject to the linearized constraints (MINOS), or the minimization of the augmented Lagrangian
subject to the simple bounds on variables (LANCELOT). In this chapter, we present the theory behind
the algorithms SPENBAR (Andrei, 1996a, b, c, 1998a, 2001, 2015a, 2017c) and MINOS (Murtagh &
Saunders, 1978, 1980, 1982, 1987, 1995) together with some numerical results for solving some
applications from the LACOP collection.
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 475
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_14
476 14 Penalty and Augmented Lagrangian Methods
σX 2
Qðx, σ Þ≜f ðxÞ þ h ðxÞ, ð14:2Þ
2 i2E i
where σ > 0 is the penalty parameter. Observe that if σ is increased to 1, the constraint violations are
penalized. Therefore, the idea is to consider a sequence of {σ k} with σ k ! 1 as k ! 1 and to seek
the approximate minimum xk of Q(x, σ k) for each k. Since the penalty term in (14.2) is smooth, any
unconstrained optimization method can be used for xk computation. Therefore, a sequence of
unconstrained minimization subproblems min x2ℝn Qðx, σ k Þ is solved for each value of the penalty
parameter σ k. Clearly, in searching for xk, the approximate minimum xk1 of the previous subproblem
may be used.
Now, let us consider the general nonlinear optimization problem
where [y] ¼ max {y, 0}. In this case, the quadratic penalty function may be less smooth than the
original objective and constraints functions of problem (14.1).
The quadratic penalty method is based on the minimization of the quadratic penalty function in the
following framework.
1. Consider an initial starting point xs0 : Select an initial value σ 0 > 0 for the penalty parameter and a
nonnegative sequence {τk} with τk ! 0. Set k ¼ 0
2. Find an approximate minimum xk of the sub-problem min x2ℝn Qðx, σ k Þ starting at xsk , and terminate the
iterations when k∇xQ(x, σ k)k τk
3. If a test of convergence of the method is satisfied, then stop with xk as an approximate solution of the
problem
4. Choose a new penalty parameter σ kþ1 > σ k
5. Choose a new starting point xskþ1 , set k ¼ k þ 1 and go to step 2 ♦
1. The sequence of the penalty parameters {σ k} may be adaptively selected with respect to the
difficulty in minimizing the penalty function at each iteration k. When the minimization of
Q(x, σ k) is too expensive, then σ kþ1 can be chosen near σ k, for example, σ kþ1 ¼ 1.5σ k. On the
other hand, if the minimization of Q(x, σ k) is relatively easy to be done, then σ kþ1 can be selected
larger than σ k, for example, σ kþ1 ¼ 10σ k. Of course, some other schemes for enlarging σ k may be
adopted.
2. In case the problem has only equality constraints, then Q(x, σ k) is smooth. Therefore, the
algorithms for the unconstrained optimization (in step 2) can be used to find an approximate
solution xk. However, the minimization of Q(x, σ k) becomes more difficult as σ k becomes larger.
14.1 The Quadratic Penalty Method 477
Near the minimum, the Hessian ∇2Q(x, σ k) becomes ill-conditioned, and in this case, the quasi-
Newton or the conjugate gradient methods perform very poorly.
Theorem 14.1 Suppose that xk for any k 0 is the exact global minimum of Q(x, σ k) defined in
(14.2), determined by Algorithm 14.1. Suppose that σ k ! 1 . Then, every limit point x of the
sequence {xk} is a global solution of the problem (14.1).
Proof Let x be a global solution of (14.1), that is, f ðxÞ f ðxÞ for all x satisfying hi(x) ¼ 0, i 2 E.
Since xk is a minimum of Q(x, σ k) for each k, we have Qðxk , σ k Þ Qðx, σ k Þ, which leads to the
inequality
σ X 2 σ X 2
f ðxk Þ þ k hi ð x k Þ f ð x Þ þ k h ðxÞ ¼ f ðxÞ: ð14:5Þ
2 i2E 2 i2E i
Suppose that x is a limit point of {xk} so that there is an infinite sequence K, such that
limk 2 Kxk ¼ x. By taking the limit as k ! 1 , k 2 K, on both sides of (14.6), we obtain
X X 2
h2i ðx Þ ¼ lim h2i ðxk Þ lim ½f ðxÞ f ðxk Þ ¼ 0,
k!1, k2K k!1, k2K σ k
i2E i2E
where the last equality follows from the fact that σ k ! 1 . Therefore, we have hi(x) ¼ 0 for all i 2 E,
so that x is feasible. Additionally, by taking the limit as k ! 1 for k 2 K in (14.5) and by the
nonnegativity of σ k and of each h2i ðxk Þ, we get
σk X 2
f ðx Þ f ðx Þ þ lim hi ðxk Þ f ðxÞ:
k!1, k2K 2
i2E
Since x is a feasible point whose objective function is not larger than that of the global solution x,
it follows that x is also a global solution, as claimed. ♦
Observe that this result requires finding the global minimum of each subproblem. In general, this
property of convergence to the global solution of (14.1) cannot be attained. Nocedal and Wright
(2006) prove the convergence of the sequence {xk} when the inexact minimization of Q(x, σ k) is
allowed, as in the following theorem.
Theorem 14.2 Suppose that the tolerances and the penalty parameters satisfy τk ! 0 and σ k ! 1 .
Then, if a limit point x of the sequence {xk} is infeasible, then there is a stationary point of the
function kh(x)k2. On the other hand, if a limit point x is feasible and the constraint gradients ∇hi(x),
i 2 E, are linearly independent, then x is a KKT point for the problem (14.1). For such points, for any
infinite sequence K such that limk 2 Kxk ¼ x, we have
478 14 Penalty and Augmented Lagrangian Methods
Therefore, from the termination criterion in step 2 of Algorithm 14.1, it follows that
X
∇f ðxk Þ þ σ k hi ðxk Þ∇hi ðxk Þ τk : ð14:9Þ
i2E
Let x be a limit point of the sequence {xk}. Then, there is a subsequence K such that limk 2 Kxk ¼ x.
When k ! 1 for k 2 K, τk þ k∇f(xk)k ! k∇f(xk)k. Since σ k ! 1 , the right-hand side of (14.10)
approaches zero. Therefore, from the corresponding limit of the left-hand side of (14.10), we have
X
hi ðx Þ∇hi ðx Þ ¼ 0: ð14:11Þ
i2E
Now, if the constraints gradients ∇hi(x) are linearly dependent, then from (14.11), hi(x) 6¼ 0. In
this case, x is a stationary point of the function kh(x)k2. On the other hand, if the constraint gradients
∇hi(x) are linearly independent at the limit point x, from (14.11), it follows that hi(x) ¼ 0 for all
i 2 E, i.e., x is feasible. Hence, the KKT condition (11.13b) is satisfied. We need to check (11.13a)
and to show that (11.15) holds.
Let A(x)T ¼ [∇hi(x)]i2E be the matrix of the constraint gradients and λk ¼ σ kh(xk). From (14.9), it
follows that
For all k 2 K sufficiently large, the matrix A(xk) is of full rank; therefore, A(xk)A(xk)T is
nonsingular. From the first relation of (14.12), we get
h i1
λk ¼ Aðxk ÞAðxk ÞT Aðxk Þ½∇f ðxk Þ ∇Qðxk , σ k Þ: ð14:13Þ
i.e., λ satisfies the first KKT condition (11.13a) for the problem (14.1). In conclusion, x is a KKT
point for (14.1) with the unique Lagrange multiplier vector λ. ♦
Observe that the quantities σ khi(xk) may be used as estimates of the Lagrange multipliers λi , i 2 E.
This is important for the analysis of the augmented Lagrangian method.
Let us study the ill-conditioning of the Hessian ∇2Q(x, σ k). This analysis is extremely important in
choosing effective algorithms for the minimization in step 2 of Algorithm 14.1, as well as the linear
algebra calculations at each iteration k. From (14.2), we get
X
∇Qðx, σ k Þ ¼ ∇f ðxÞ þ σ k hi ðxÞ∇hi ðxÞ: ð14:16Þ
i2E
X
∇2 Qðx, σ k Þ ¼ ∇2 f ðxÞ þ σ k hi ðxÞ∇2 hi ðxÞ þ σ k AðxÞT AðxÞ, ð14:17Þ
i2E
where A(x)T ¼ [∇hi(x)]i2E. In the conditions of Theorem 14.2, from (14.7), it follows that the sum of
the first two terms on the right-hand side of (14.17) is approximately equal to the Hessian of the
Lagrangian function. Therefore, when x is close to the minimum point of Q(x, σ k), it follows that
Note that ∇2Q(x, σ k) is the sum of two matrices: a matrix whose elements are independent of σ k
and a matrix of rank card(E) whose nonzero eigenvalues are of order σ k. Usually, the number of
constraints card(E) is smaller than the number of variables n. In this case, the last term in (14.18) is
singular. Therefore, the whole matrix ∇2Q(x, σ k) has some eigenvalues approaching a constant, while
the others are of order σ k. Since σ k ! 1 , it follows that the ill-conditioning of the matrix ∇2Q(x, σ k)
is increasing as k is increasing. This is the major difficulty associated to the quadratic penalty method.
Note that this ill-conditioning is responsible for a possible inaccuracy in the computations of the
Newton step p for the subproblem min x2ℝn Qðx, σ k Þ, which is obtained by solving the linear algebraic
system
Clearly, the poor conditioning of this system will lead to significant errors in the value of p,
regardless of the computational technique used to solve (14.19).
As already seen, the quadratic penalty function is not exact. Its minimum point is generally not the
same as the solution of the nonlinear optimization problem for any positive value of the penalty
parameter σ. This penalty function is called inexact. In this context, the exact penalty function is
introduced, in which for certain choices of its penalty parameter, a single minimization with respect to
x can yield the exact solution of the nonlinear optimization problem (Han & Mangasarian, 1979). In
this section, we consider the nonsmooth exact penalty functions (Nocedal & Wright, 2006).
480 14 Penalty and Augmented Lagrangian Methods
For the general nonlinear optimization problem (14.3), the l1 penalty function is defined by
X X
φ1 ðx, σ Þ ¼ f ðxÞ þ σ jhi ðxÞj þ σ ½ci ðxÞ , ð14:20Þ
i2E i2I
where [y] ¼ max {0, y}. The following result is proved by Han and Mangasarian (1979).
Theorem 14.3 Suppose that x is a strict local solution of the problem (14.3) at which the first-order
necessary optimality conditions (11.21) hold with the Lagrange multipliers μi , i 2 I, and λi , i 2 E.
Then, x is a local minimum of φ1(x, σ) for all σ > σ , where
σ ¼ max max i2I μi , max i2E λi : ð14:21Þ
If, in addition, the second-order sufficient conditions (11.22) hold and σ > σ , then x is a strict
local minimum of φ1(x, σ). ♦
The following definition characterizes the stationary points of φ1, even if φ1 is not differentiable.
The following theorem shows that under some mild assumptions, the stationary points of φ1(x, σ)
correspond to the KKT points of the constrained nonlinear optimization problem (14.3).
Theorem 14.4 Suppose that x is a stationary point of the penalty function φ1(x, σ) for all σ > σ > 0,
where σ is a certain threshold. Then, if x is feasible for the nonlinear optimization problem (14.3), it
satisfies the KKT optimality conditions (11.22) for (14.3). If x is not feasible for (14.3), then it is an
infeasible stationary point.
where AðxÞ is the set of active constraints at x: Consider any direction p that satisfies ∇hi ðxÞT p ¼ 0
for all i 2 E and ∇ci ðxÞT p 0 for all i 2 I \ AðxÞ: Therefore,
X X h i
∇hi ðxÞT p þ ∇ci ðxÞT p ¼ 0: ð14:24Þ
i2E i2I\AðxÞ
14.2 The Nonsmooth Penalty Method 481
for some coefficients λi with λi 0, i 2 I \ AðxÞ: However, this expression implies that the KKT
optimality conditions (11.21) hold. The second part of the proof is very simple and it is omitted
here. ♦
With these results, the following algorithm based on the classical l1 penalty function may be
presented.
1. Consider an initial starting point xs0 : Select an initial value σ 0 > 0 for the penalty parameter and a tolerance
τ > 0. Set k ¼ 0
2. Starting with xsk , find an approximate minimum xk of φ1(x, σ k)
3. If g(xk) τ, then stop, with xk as an approximate solution of the problem
4. Choose a new penalty parameter σ kþ1 > σ k
5. Choose a new starting point xskþ1 , set k ¼ k þ 1, and go to step 2 ♦
Because of nonsmoothness, the minimization of φ1(x, σ k) in step 2 above is the most difficult
operation in Algorithm 14.2. A practical l1 penalty method will be presented below.
The scheme for updating the penalty parameter σ k in step 4 is to increase it by an arbitrary constant
factor, for example, σ kþ1 ¼ 5σ k. If σ k is too small, then many cycles of Algorithm 14.2 may be
required. On the other hand, if σ k is too large, then the penalty function will be difficult to minimize.
Obviously, φ1(x, σ k) is nonsmooth. The gradient of φ1(x, σ k) is not defined at any x for which
ci(x) ¼ 0 for some i 2 I and hi(x) ¼ 0 for some i 2 E. In order to avoid the difficulties for minimizing
φ1(x, σ k), the strategy is to consider a simplified model of this function and try to find the minimum of
this model. The most direct idea is to define the model by linearizing the constraints and by replacing
the objective function with a quadratic function, as follows:
1
qðp; σ Þ ¼ f ðxÞ þ ∇f ðxÞT p þ pT Wp
P 2 Ph i
þσ hi ðxÞ þ ∇hi ðxÞT p þ σ ci ðxÞ þ ∇ci ðxÞT p , ð14:25Þ
i2E i2I
where W is a symmetric matrix which contains second derivatives information about the functions of
the problem (14.3). The model (14.25) is not smooth, but it can be reformulated as a smooth quadratic
programming problem by introducing the artificial variables ri, si, i 2 E, and ti, i 2 I, as follows:
482 14 Penalty and Augmented Lagrangian Methods
1 X X
min p,r,s,t f ðxÞ þ ∇f ðxÞT p þ pT Wp þ σ ðr i þ si Þ þ σ ti
2 i2E i2I
subject to: ð14:26Þ
hi ðxÞ þ ∇hi ðxÞT p ¼ r i si , i 2 E,
ci ðxÞ þ ∇ci ðxÞT p ti , i 2 I,
r, s, t 0:
This section discusses the augmented Lagrangian method, known as the method of multipliers.
Hestenes (1969) and Powell (1969) independently proposed these methods as a possibility of
reducing the ill-conditioning by introducing explicit Lagrange multiplier estimates into the function
to be minimized, known as the augmented Lagrange function. In the following, we consider the
problems with equalities constraints: min{f(x) : hi(x) ¼ 0, i 2 E}. As seen in Theorem 14.2, the
approximate minimum xk of Q(x, σ k) does not satisfy the feasibility constraints hi(x) ¼ 0, i 2 E.
Instead, the constraints are perturbed (see Eq. (14.7)) so that
achieves this goal by including the explicit estimate of the Lagrange multipliers λi. Observe that the
augmented Lagrangian (14.28) is a combination of the Lagrangian function and of the quadratic
penalty function. An algorithm based on the augmented Lagrangian function at iteration k fixes the
penalty parameter σ to a value σ k > 0 and fixes λ at the current estimate λk. Thus, a minimization of the
augmented Lagrangian with respect to x is performed. Let xk be the approximate minimum of
LA(x, λk, σ k). Therefore, by the optimality conditions for unconstrained optimization (see Theorem
11.3), we have
14.3 The Augmented Lagrangian Method 483
X
∇LA xk , λk , σ k ¼ ∇f ðxk Þ λki σ k hi ðxk Þ ∇hi ðxk Þ ¼ 0: ð14:29Þ
i2E
Now, comparing this result with the optimality condition (14.15) for (14.1), it follows that
for all i 2 E. Therefore, if λk is close to the optimal multiplier vector λ, the infeasibility at xk will be
much smaller than (1/σ k), more than being proportional to (1/σ k) as in (14.27). The relation (14.30)
suggests a formula for updating the current estimate λk of the Lagrange multiplier vector by using the
approximate minimum xk already calculated as
λkþ1
i ¼ λki σ k hi ðxk Þ, i 2 E: ð14:31Þ
With these theoretical developments, the augmented Lagrangian algorithm for nonlinear optimi-
zation problems with equality constraints can be presented as follows.
1. Consider the initial starting points xs0 and λ0. Select an initial value σ 0 > 0 for the penalty parameter and a
tolerance τ0 > 0. Set k ¼ 0
2. Find an approximate minimum xk of the LA(x, λk, σ k) starting at xsk : If k∇LA(xk, λk, σ k)k τk, stop the
iterations
3. If a convergence test for (14.1) is satisfied, then stop with xk as an approximate solution of the problem
4. Update the Lagrange multipliers as in (14.31) to get λkþ1
5. Choose a new penalty parameter σ kþ1 σ k
6. Set the starting point for the new iteration as xskþ1 ¼ xk
7. Choose the tolerance τkþ1, set k ¼ k þ 1, and go to step 2 ♦
It was proved that the convergence of this method is assured without increasing σ indefinitely. In
other words, the ill-conditioning of this method is reduced; thus, the choice of the starting point xskþ1
is less critical than in the previous algorithms based on the quadratic or the nonsmooth penalty
methods. The tolerance τk could be chosen by using the infeasibility measure ∑i2Ejhi(xk)j, and the
penalty parameter σ may be updated (increased) if the reduction in this infeasibility measure is
insufficient at the current iteration (Nocedal & Wright, 2006).
Theorem 14.5 Let x be a local solution of (14.1) at which the gradients ∇hi(x), i 2 E, are linearly
independent and the second-order sufficient conditions given in Theorem 11.13 are satisfied for
λ ¼ λ. Then, there is a threshold σ such that for all σ σ, x is a strict local minimum of the
augmented Lagrangian LA(x, λ, σ).
Proof We show that x satisfies the second-order sufficient conditions for a strict local minimum of
LA(x, λ, σ) given in Theorem 11.6, for all σ sufficiently large, i.e.,
484 14 Penalty and Augmented Lagrangian Methods
Now, as x is a local solution of (14.1) at which LICQ is satisfied, from Theorem 11.11 (see
Remark 11.3), it follows that ∇L(x, λ) ¼ 0 and hi(x) ¼ 0, i 2 E. Therefore,
P
∇LA ðx , λ , σ Þ ¼ ∇f ðx Þ λi σhi ðx Þ ∇hi ðx Þ
P
i2E
¼ ∇f ðx Þ λi ∇hi ðx Þ ¼ ∇Lðx , λ Þ ¼ 0
i2E
0 wTk ∇2 LA ðx , λ , kÞwk ¼ wTk ∇2 Lðx , λ Þwk þ kkAðx Þwk k22 , ð14:34Þ
and therefore,
1
kAðx Þwk k22 wTk ∇2 Lðx , λ Þwk ! 0, ð14:35Þ
k
as k ! 1 . Since the vectors {wk} lie in a compact set (the surface of the unit sphere), they have an
accumulation point w. From (14.35), it follows that A(x)w ¼ 0. Now, from (14.34), we have
So, by taking the limits, we have wT∇2L(x, λ)w 0. However, this inequality contradicts the
second-order condition in Theorem 11.13, which states that we must have wT∇2L(x, λ)w > 0 for all
nonzero vectors w with A(x)w ¼ 0. Therefore, (14.33) holds for all σ sufficiently large. ♦
The following theorem, proved by Bertsekas (1999), gives the conditions under which there is a
minimum of the augmented Lagrangian LA(x, λ, σ) that lies close to x, conditions that specify some
error bounds on both xk and λkþ1, solutions of the subproblem at iteration k.
Theorem 14.6 (Bertsekas) Suppose that the assumptions of Theorem 14.5 are satisfied at x and λ.
Let σ be chosen as in the theorem. Then, there exist positive scalars δ, ε, and M, such that the
following claims hold:
The theorem of Bertsekas (1999) is important. It illustrates some salient properties of the
augmented Lagrangian approach. The bound (14.37) shows that xk will be close to x if λk is accurate
or if the penalty parameter σ k is large. Therefore, in this approach of the augmented Lagrangian
method, there are two ways of improving the accuracy of xk, whereas in the quadratic penalty
approach, there is only one: increase σ k. The bound (14.37) shows that the accuracy of the multipliers
can be increased by choosing a sufficiently large value of σ k. Finally, the last observation of the
theorem shows that under the given conditions, the second-order sufficient optimality conditions for
the unconstrained minimization are satisfied for the k-th subproblem. Therefore, very good numerical
performances can be expected by applying any standard unconstrained minimization technique.
Example 14.1 Let us solve the following optimization problem by using the augmented Lagrangian
method
Consider the initial point x0 ¼ [0 4]T, the initial values for the penalty parameter σ 0 ¼ 1, and the
Lagrange multiplier λ0 ¼ 0. By using the Newton method for minimizing the augmented Lagrange
function in step 2 of Algorithm 14.3, we get the results from Table 14.1.
As a comparison, in Table 14.2, we present the optimization process for solving the problem by
using the quadratic penalty method.
This example shows that the inclusion of the Lagrange multiplier term in the augmented Lagrang-
ian LA(x, λ, σ) represents a significant improvement of the quadratic penalty method.
k σ λ x1 x2 f ( xk ) h1 ( xk )
0 1 0 0 4 128 0
1 10 3.767400 1.882353 0.235294 3.986159 −1.88235
2 100 6.837930 3.418960 0.427370 13.15051 −0.153661
3 1000 7.108704 3.554350 0.444290 14.21260 −0.00135
4 10,000 7.1111 3.555555 0.444444 14.22222 −0.120e-5
486 14 Penalty and Augmented Lagrangian Methods
k σ x1 x2 f ( xk ) h1 ( xk )
0 1 0 4 128 0
1 10 1.882353 0.235294 3.986151 −1.882350
2 100 3.265306 0.408163 11.99500 −0.326530
3 1000 3.524229 0.440528 13.97271 −0.035242
4 10,000 3.552390 0.444049 14.19697 −0.003552
5 100,000 3.555240 0.444404 14.21969 −0.000355
6 1,000,000 3.555524 0.444440 14.22197 −0.355e−4
7 10,000,000 3.555555 0.444444 14.22222 −0.355e−5
Let us see the fundamentals of the penalty and of the augmented Lagrangian methods. For this, we
consider the nonlinear optimization problem with equality constraints:
min ff ðxÞ : hi ðxÞ ¼ 0, i 2 Eg, ð14:39Þ
hðxÞ ¼ 0, ð14:40bÞ
X
∇2 Qðx, σ Þ ¼ ∇2 f ðxÞ þ λi ∇2 hi ðxÞ þ σ∇hðxÞT ∇hðxÞ, ð14:44Þ
i2E
If the Jacobian matrix ∇hðxÞ has full row rank and x is a unique local minimizer for (14.39), we
can show that the full Hessian ∇2Q(x, σ) is positive definite at (x(σ), λ(σ)) for sufficiently large σ.
Thus, the penalty function is convex for large σ and the minimum x(σ) exists. Therefore, the problem
(14.41) can be very well solved by the Newton method.
We note that the Newton method for minimizing (14.41) would generate a search direction d by
solving the linear system ∇2Q(x, σ)d ¼ ∇ Q(x, σ), i.e.,
∇2 Lðx, λÞ þ σ∇hðxÞT ∇hðxÞ d ¼ ∇f ðxÞ þ σ∇hðxÞT hðxÞ , ð14:46Þ
where ∇2L(x, λ) is defined with λ ¼ σh(x). The difficulty with this approach is that the system (14.46)
is ill-conditioned for large σ (assuming p < n). This is one reason why the quadratic penalty approach
(convenient enough as smoothness) proved unsuccessful for solving nonlinear optimization
problems. A solution for eliminating this deficiency was given by Gould (1986), who introduced
the vector q ¼ σ(h(x) þ ∇ h(x)d) at the current point x. With this, the Newton system (14.46) is
equivalent to
2 2 3
∇ Lðx, λÞ ∇hðxÞT d
∇f ðxÞ
4 5 ¼ , ð14:47Þ
1 hð x Þ
∇hðxÞ I q
σ
which contains no large numbers and may be preferable for computing the search direction d. If (x, λ)
is close to a local optimum (x, λ) and σ is large, any ill-conditioning in (14.47) reflects the
sensitivity of (x, λ) to perturbations in the data of the problem.
Unfortunately, although d can be reliably computed from (14.47) when σ is large, this does not
save the quadratic penalty method. When h(x) is not very small, then d leads away from the
linearization of the constraints h(x) ¼ 0 at the current point x, and therefore, the Newton method is
likely to be too slow. It is obvious that the algebraic trick used does not eliminate the deficiency of the
quadratic Newton approach.
Let us now continue to study the problem (14.39) with equality constraints, bearing in mind the
difficulties encountered with the quadratic penalty method when σ becomes very large. Let (x, λ) be
a local minimizer, and assume that the Jacobian matrix ∇h(x) has full row rank at x, i.e.,
rank(∇h(x)) ¼ p. In this minimum point, the gradient of the Lagrange function must be zero.
Therefore, the required solution (x, λ) is a stationary point of the Lagrangian. In general, we cannot
find x by minimizing L(x, λ) as a function of x, even if we set λ ¼ λ. The second-order optimality
condition for (x, λ) to be an isolated local minimizer is that the Hessian of the Lagrange function
∇2L(x, λ) should be positive definite within the null space of ∇h(x). That is, the Hessian should
satisfy the condition zT∇2L(x, λ)z > 0 for all nonzero vectors z satisfying ∇h(x)Tz ¼ 0. The
following result, proved by Debreu (1952) on quadratic forms, is relevant.
488 14 Penalty and Augmented Lagrangian Methods
This result suggests that we should add to the Lagrangian function a term whose Hessian is
σ ∇ h(x)T ∇ h(x). It is exactly what we already did when we introduced the augmented Lagrangian
1
LA ðx, λ, σ Þ ¼ f ðxÞ λT hðxÞ þ σ khðxÞk2 : ð14:48Þ
2
This may be looked upon as a modification of the Lagrangian or as a shifted quadratic penalty
function. For a given λ and σ, the derivatives of LA(.) are
where x 2 ℝn, E ≜ {1, . . ., me} and Ic ≜ {1, . . ., m}. The functions ci : ℝn ! ℝ, i 2 Ic [ E, are
assumed to be twice continuously differentiable on ℝn. Il, Iu ⊆ {1, . . ., n}. To simplify the
presentation of the algorithm, the simple bounds on the variables are also denoted ci(x). Define Isb
as the set of indices, such that for all j 2 Il [ Iu there is an i 2 Isb with the property
The set of all the inequality constraints including the simple bounds is denoted by I ¼ Ic [ Isb.
Let |I| ¼ p, i.e., I has p elements. Suppose that
(i) The domain XB ¼ {x 2 ℝn : lj xj, j 2 Il, xj uj, j 2 Iu}, which is a compact set, has a nonempty
interior.
(ii) The functions f(x), ci(x), i 2 E [ Ic are twice continuously differentiable on XB.
The main idea of the penalty-barrier method to find a solution for the problem (14.50) is to solve a
sequence of unconstrained minimization subproblems where the solution xk of the subproblem at
iteration k is considered as an initial point for the subproblem at the next iteration. The suggested
algorithm combines the augmented Lagrangian with a penalty function (a composite function which
includes the augmented Lagrangian and the log-barrier function) in which the parameters are updated
in such a way as to obtain a KKT point for problem (14.50). The constraints are treated separately as
follows.
The equality constraints ci(x) ¼ 0, i 2 E, are embedded into the augmented Lagrangian. Therefore,
to minimize f(x) subject to ci(x) ¼ 0, i 2 E, the augmented Lagrangian is defined as
X
me
1 X
me
Lðx, σ, λÞ≜f ðxÞ þ λi ci ðxÞ þ cðxÞ2 , ð14:52Þ
i¼1
2σ i¼1
where λi, i ¼ 1, . . ., me, are the estimates of the Lagrange multipliers and σ > 0 is the penalty
parameter. The reason for introducing the augmented Lagrangian function is to make sure that the
penalty parameter σ does not need to be enlarged too much as to avoid the ill-conditioning of the
augmented Lagrangian.
The inequality constraints ci(x) 0, i 2 Ic, are embedded into a logarithmic penalty function.
Therefore, to minimize f(x) subject to ci(x) 0, i 2 Ic, we consider the log-barrier function
X
m
Bðx, σ Þ≜f ðxÞ σ log ðci ðxÞÞ, ð14:53Þ
i¼1
where σ > 0 is the penalty parameter. For solving the problem min{f(x) : ci(x) 0, i ¼ 1, . . ., m}, the
following algorithm can be presented.
1. Select an initial feasible point x0 and a value for the penalty parameter σ 0 > 0. Set k ¼ 0
2. Solve the subproblem min x2ℝn Bðx, σ k Þ obtaining a local solution xkþ1
3. If σ k is small enough, then stop. Otherwise, select σ kþ1 < σ k, set k ¼ k þ 1, and go to step 2 ♦
490 14 Penalty and Augmented Lagrangian Methods
Observe that when σ k ! 0, the Hessian of B(xk, σ k) is ill-conditioned. On the other hand, it is
difficult to select a good value for σ kþ1. The first-order minimizing condition for B(x, σ k) is
Xm
σk
∇f ðxÞ ∇ci ðxÞ ¼ 0: ð14:54Þ
c
i¼1 i
ðxÞ
If σ k ! 0, then σ k/ci(x) ! λi, which is the Lagrange multiplier associated to the i-th inequality
constraint. Therefore, the estimates of the Lagrange multipliers associated to the active constraints are
computed as the ratio of two quantities, both of them tending to zero. More exactly, observe that when
1 > ci(x) > 0, i 2 Ic, then log(ci(x)) < 0. Hence, the second term on the right-hand side of (14.53)
implies B(x, σ)
f(x) when any of the constraint functions is small and positive. Suppose that the
inequality constraint problem min{f(x) : ci(x) 0, i 2 Ic} has a solution (x, λ). Also suppose that σ is
a positive constant such that for all σ k < σ, the Hessian matrix ∇2B(x, σ k) of the barrier function
(14.53) is positive definite for all feasible x. If xk denotes the solution of the unconstrained problem
min{B(x, σ k)}, then xk ! x as σ k ! 0. Moreover, from (14.54), σ k =ci ðxk Þ ! λi , i 2 Ic, as σ k ! 0.
Jittorntrum and Osborne (1980) modified the log-barrier function (14.53) by introducing the
estimates of the Lagrange multipliers as
X
m
J ðx, σ, λÞ≜f ðxÞ σ λi log ðci ðxÞÞ: ð14:55Þ
i¼1
However, this modified log-barrier function presents the same numerical difficulties as those of
function B(x, σ).
Polyak (1992) suggested the following modified log-barrier function:
X
c ðxÞ
Mðx, σ, λÞ≜f ðxÞ σ λi log 1 þ i , ð14:56Þ
i2I
σ
where λi, i ¼ 1, . . ., p, are nonnegative estimates of the Lagrange multipliers associated to the
inequality constraints and σ > 0 is the barrier parameter. For this modified log-barrier function, Polyak
(1992) established the convergence properties similar to those given by Bertsekas (1982b) for the
multiplier method. Under reasonably mild conditions, Polyak showed that there exists a threshold
value σ > 0 of the barrier parameter, such that for any fixed σ < σ, i.e., by only updating the
Lagrange multipliers λi, i ¼ 1, . . ., p, the sequence (xk, λk) converges, at least at a linear rate, to a local
solution (x, λ) of the problem (14.50). Very encouraging computational results based on the
log-barrier function (14.53) were reported in Breitfeld and Shanno (1994a); Ben-Tal, Yuzefovich,
and Zibulevsky (1992); and Nash, Polyak, and Sofer (1994).
The simple bounds xj lj, j 2 Il, xj uj, j 2 Iu, are handled by means of the classical logarithmic
barrier terms.
Therefore, the classical log-barrier function for inequality constraints is defined by
X
Cðx, σ Þ≜f ðxÞ σ log ðci ðxÞÞ, ð14:57Þ
i2I
where σ > 0 is the barrier parameter. The log-barrier function (14.57) was introduced by Frisch (1955)
and developed by Fiacco and McCormick (1968).
Our approach considers a combination of all the above functions which define a general penalty-
barrier function. This is embedded into the general scheme of the penalty method for which the
14.5 A Penalty-Barrier Algorithm (SPENBAR) 491
global convergence was proved. Mainly, the algorithm considers a sequence of simple bounded
minimization subproblems which are solved by means of the simple bound minimization techniques
(see Chap. 12).
Having in view the above developments, for the general nonlinear optimization problem (14.50), the
following penalty-barrier function is defined:
P
F x, σ k , λk , sk , βk ¼ f ðxÞ σ k λki Ψk ðci ðxÞÞ
i2I
P
me
1 X
me ð14:58Þ
þ λki ci ðxÞ þ c ðxÞ2 ,
i¼1 2σ k i¼1 i
where k 0 and
c ðxÞ
Ψk ðci ðxÞÞ ¼ log ski þ i , for ci ðxÞ βk σ k ski and i 2 I c , ð14:59aÞ
σk
Ψk ðci ðxÞÞ ¼ Qk ðci ðxÞÞ,for ci ðxÞ < βk σ k ski and i 2 I c , ð14:59bÞ
ci ðxÞ
Ψ ðci ðxÞÞ ¼ log
k
, for i 2 I sb , ð14:59cÞ
σk
1 2βk
qbi ¼ 2 , ð14:62Þ
ski σ k 1 βk
βk 2 3βk k
qci ¼ þ log si 1 β :
k
ð14:63Þ
k 2
2 1β
The values of the penalty parameter σ k are positive scalars which tend to zero as k goes to infinity.
For the shifts ski and the extrapolation parameter βk, we impose
0 βk βu < 1, ð14:64aÞ
The algorithm finds an approximate local minimum of (14.50) by repeatedly solving the k-th
subproblem
min x2XB F x, σ k , λk , sk , βk , ð14:65Þ
such that
∇x F xkþ1 , σ k , λk , sk , βk εk , ð14:66Þ
2
ci ðx Þ ¼ 0, i 2 E: ð14:68dÞ
The initialization of the estimates of the Lagrange multipliers is given by a vector λ0 computed as
solution of the problem
X
min λI 0 ∇f ðx0 Þ λi ∇ci ðx0 Þ , ð14:69Þ
i2E[I
2
where λI ¼ (λi)i2I and x0 is the initial estimation of x. Having in view the combinatorial nature of
solving (14.69), a procedure is to compute a solution bλ of (14.69) by neglecting the restrictions λI 0
and then setting
8 n n o o
>
< min max λl , b λi , λu , if i 2 I or i ¼ 1, . . . , me , b λi 0,
λ0i ¼ n n o o ð14:70Þ
>
: max min λl , b λi , λu , if i ¼ 1, . . . , me , b
λi < 0,
where λl and λu are the lower and upper bounds for the initial estimates of the multipliers, which are
imposed by numerical reasons. Usually, λl ¼ 1 and λu ¼ 100.
14.5 A Penalty-Barrier Algorithm (SPENBAR) 493
where qai and qbi are given by (14.61) and (14.62), respectively. The first-order optimality conditions
(14.68) and (14.71) suggest the following scheme for updating the Lagrange multiplier estimates:
8
< λk ci ðxkþ1 Þ , i 2 E,
λkþ1 ¼ i σk ð14:73Þ
i
: k 0
σ k λi Ψ ðci ðxkþ1 ÞÞ, i 2 I,
where xkþ1 is the solution of the k-th subproblem (14.65) satisfying (14.66). Observe that (14.73)
requires that the components λ0i , i 2 I, should be positive; otherwise, if there is a j 2 I with λ0j ¼ 0,
then for all k 1, λkj ¼ 0:
The penalty-barrier parameter σ is initialized by a positive scalar σ 0 and then updated by
σk
σ kþ1 ¼ , ð14:74Þ
γ
βkþ1 ¼ βk θk , ð14:75Þ
for k 0, where β0 and θk are scalars such that 0 βk βu for all k 0 with βu < 1. (β0 ¼ 0.9 and
θk ¼ 1, for all k 0.)
The shifting parameters s allow the scaling of the constraints in order to avoid the ill-conditioning
of the terms (14.59b). We can show it by introducing the general shifts s into the modified barrier
terms. The scaling of the inequality constraints, such that kc(x)k ¼ 1, can be achieved without
reformulating the problem (14.50). To see this, consider x for which kc(x)k > 0 and let s ¼ kc(x)k > 0.
Then, the scaled constraint is defined as cbðxÞ ¼ cðxÞ=s 0: Clearly, kcbðxÞk ¼ 1: With this, Polyak’s
modified log-barrier term (14.56) for cbðxÞ is
494 14 Penalty and Augmented Lagrangian Methods
cbðxÞ cðxÞ cðxÞ
log 1 þ ¼ log 1 þ ¼ log s þ log ðsÞ:
σ sσ σ
The last term, log(s), is constant with respect to x, so it can be ignored in the minimization of the
penalty-barrier function. Therefore, the scaling of the inequality constraints can be readily achieved
by simply choosing the appropriate shifts s.
On the other hand, in order to avoid the ill-conditioning of the penalty-barrier function introduced
by the quadratic extrapolation, we set
for all i 2 Ic and k 0, which basically scales the quadratic terms with respect to the constraint values.
Usually, su ¼ 103.
Concerning the stopping criteria, we take the advantage of estimating the Lagrange multipliers
along the iterations for solving (14.65). Therefore, a KKT point can be identified, and we terminate
the penalty-barrier method for a k 0 for which
vk1 τ, ð14:77Þ
or
vk1 ¼ max f max i¼1,...,me fjci ðxk Þjg, min i2I fci ðxk Þg,
9
P k
P k >
λ i ci ðxk Þ ∇f ðxk Þ λi ∇ci ðxk Þ >>
i2E[I
i2E[I >=
1
, ,
1 þ kxk k2 1 þ kx k k2 >
>
>
>
;
vk2 ¼ max f max i2E jci ðxk Þj, min i2I ci ðxk Þg,
jf ðxk Þ f ðxk1 Þj
vk3 ¼ :
1 þ jf ðxk Þj
Observe that if vk1 τ, then the feasibility, the scaled complementarity, and the scaled first-order
optimality conditions are satisfied, i.e., the current point is a KKT point with accuracy τ.
Finally, for having the penalty-barrier algorithm, we must specify the optimization method used
for solving (14.65) for each set of parameters (σ k, λk, sk, βk). Since (14.65) is a simple bounded
constrained optimization problem, we can apply any method for solving this type of problems (the
spectral projected gradient algorithm by Birgin, Martı́nez, & Raydan, 2000, 2001); the limited-
memory BFGS with gradient projection by Byrd, Lu, and Nocedal (1995a); or the truncated Newton
with simple bounds (Nash, 1984a, b, 1985). In our implementation of the algorithm, we have used the
truncated Newton with simple bounds (TNBC) (Nash, 1984a, b, 1985). The approximate solution xk is
used as the starting point for the next subproblem. Now, the following penalty-barrier algorithm with
quadratic extrapolation of the inequality constraints can be presented (Andrei, 1996a, b, c, 1998a).
14.5 A Penalty-Barrier Algorithm (SPENBAR) 495
1. Choose: x0 2 int (XB), τ > 0 and the sequences {εk} and {θk}. Determine λ0 as in (14.70) and
s0i ¼ min f max f1, ci ðx0 Þg, su g, i 2 I. Set k ¼ 0
2. Test of convergence. If vk1 τ or if vk2 τ and vk3 τf , stop. Otherwise, go to step 3
3. Using xk as the initial point, determine xkþ1 2 int (XB) for which
k∇x Fðx, σk , λk , sk , βk Þk2
1þkxk εk
2
We notice that SPENBAR has two types of iterates. The first one is the so-called major (external)
iteration, in which the test of convergence in step 2 is checked. The second is the minor (internal)
iteration, in which the simple bounded optimization subproblem (14.65) in step 3 is solved.
Global Convergence
Let {xk} be the sequence generated by the penalty-barrier algorithm. The global convergence is
proved under the assumption that the sequence {xk} converges. To prove the global convergence of
{xk}, suppose that the following three additional assumptions hold:
The following two propositions proved by Breitfeld and Shanno (1994c) refer to the estimates of
the Lagrange multipliers that correspond to the inequality constraints including the simple bounds,
under the updating formula (14.73).
Proposition 14.1 (Positivity of the Lagrange Multipliers). Suppose that (i), (ii), and (v) hold. Under
the updating scheme (14.73), the estimates of the Lagrange multipliers λki are positive for all i 2 I
and k 0.
Proof For all i 2 I, by assumption, λ0i > 0: The proposition is proved by induction, and suppose
that λki > 0 for all i 2 I and some k 0. For the case (14.59a) and for all i 2 Ic and k 0, from (14.73),
we get
496 14 Penalty and Augmented Lagrangian Methods
λki
λkþ1 ¼ > 0:
i
ski þ ci ðxkþ1 Þ=σ k
ci ðxkþ1 Þ
ski þ ski 1 βk 1 βu > 0,
σk
where βu < 1 is the upper bound of β. For the case (14.59b), from (14.61), since ci ðxkþ1 Þ < βk σ k ski, it
follows that
!
c i ð x kþ1 Þ 1 2β k
λkþ1
i ¼ σ k λki 2 þ k 2
ski σ k 1 βk si σ k ! 1 βk
βk 1 2βk λk λk
> λki þ ¼ k i k i > 0
sk 1 β k
i
2
sk 1 β k
i
2
si 1 β su
for all i 2 Ic and k 0, where su is the upper bound of the shifts s. For the simple bounds, since σ k > 0
and xkþ1 is strictly feasible with respect to the simple bounds, it follows that
σk
λkþ1 ¼ λki > 0,
i
ci ðxkþ1 Þ
Proposition 14.2 (Complementarity Slackness). Suppose that (i), (ii), and (v) hold and the sequence
{xk} generated by the algorithm converges to the point x: Let I in ðxÞ ¼ fi : ci ðxÞ > 0, i 2 I g be the
set of indices of the inactive inequality constraints at x: Then,
k
λi k0 ! λi ¼ 0
Proof For every i 2 I in ðxÞ, there is a δ > 0 such that ci ðxÞ δ: Therefore, for all k k and i 2 I in ðxÞ,
there exists a k 0 such that
δ
ci ðx k Þ > 0: ð14:79Þ
2
Observe that for the positive general constraints, the logarithmic terms (14.59a) are utilized. For
estimating the multipliers of the general constraints, from (14.73), (14.79), and ski 1, it follows that
λki
λkþ1 ¼
i
ski þ ci ðxkþ1 Þ=σ k ð14:80Þ
σk σk
λki λki ,
σ k þ ci ðxkþ1 Þ σ k þ δ=2
for all i 2 I in ðxÞ \ I c and k k: On the other hand, for the simple bounds,
14.5 A Penalty-Barrier Algorithm (SPENBAR) 497
σk σ
λkþ1 ¼ λki λki k ð14:82Þ
i
ci ðxkþ1 Þ δ=2
for all i 2 I in ðxÞ \ I sb and k k: Since σ k ! 0, there is a kb k such that σ k δ/2 for all k k,
b and
therefore, (14.82) implies λkþ1 b Using this together with (14.81), we get
< λki for k k:
i
bσ
λkþ1 λki k ð14:83Þ
i
δ=2
for all k kband i 2 I in ðxÞ: Since σ k ! 0 as k ! þ 1 , λki is positive from Proposition 14.1 and since
b
λki is finite, it follows that λki k0 ! 0 for all i 2 I in ðxÞ, which proves the proposition. ♦
The following result establishes the convergence of the sequence {xk} and of the estimates
sequence of the Lagrange multipliers to a KKT point which satisfies the first-order optimality
conditions (14.68). We follow the proof given by Breitfeld and Shanno (1994c).
Theorem 14.8 (KKT Theorem). Suppose that {xk} converges to a point x and the assumptions (i)–
(v) hold. Then, the sequence of the multiplier estimates {λk} converges to a limit point λ such that
x, λ satisfies the first-order optimality conditions (14.68), i.e., it is a KKT point of the problem
(14.50).
Proof The assumptions (i) and (ii) guarantee that F(x, σ k, λk, sk, βk) is well defined for all x 2 int (XB),
k 0, and there is an xb 2 intðXB Þ for which
F xb, σ k , λk , sk , βk < 1: ð14:84Þ
Observe that F(x, σ k, λk, sk, βk) is continuous and XB is a compact set because it is bounded and
closed. Therefore, by Theorem 11.1 (Weierstrass), F(x, σ k, λk, sk, βk) attains its minimum in XB,
which together with (14.84) and (14.85) imply that the approximate minimum xkþ1 2 int (XB), for all
k 0. Therefore x 2 XB :
Now, let us show that the estimates of the Lagrange multipliers corresponding to the active
constraints are convergent. For simplicity, let us denote F(xk, σ k1, λk1, sk1, βk1) by Fk. There-
fore, from (14.71) and (14.73), we have
X X
∇x Fk ¼ ∇f ðxk Þ λki ∇ci ðxk Þ λki ∇ci ðxk Þ, ð14:86Þ
i2I i2E
for all k 1. In the following, we consider the multiplier estimates of the inactive constraints at x
separately from the others. The vectors or the matrices corresponding to the constraints that are
inactive at x are denoted by the subscript in. For example, the vector of the multiplier estimates of the
inactive constraints at x is denoted by λin with λin ¼ ðλi Þi2Iin ðxÞ : On the other hand, the vectors and the
matrices corresponding to the remaining constraints are denoted by the subscript ac. These are all
equalities and inequalities that are active at x, i.e., all the indices i 2 E [ I∖I in ðxÞ: With this, (14.86)
can be rewritten as
498 14 Penalty and Augmented Lagrangian Methods
where ∇Cac(.) is the Jacobian matrix whose rows are the gradients of the constraints ci,
i 2 E [ I∖I in ðxÞ and ∇Cin(.) is the Jacobian matrix corresponding to the inactive constraints at x:
Observe that (iv) implies that ∇Cac ðxÞ has full rank. Therefore, there is a k 0 such that ∇Cac(xk) has
full rank for all k k: Thus, (14.87) can be rewritten as
h i1 h i
λkac ¼ ∇Cac ðxk Þ∇Cac ðxk ÞT ∇Cac ðxk Þ ∇f ðxk Þ ∇Cin ðxk ÞT λkin ∇x Fk
for all k k: Since x 2 int (XB), it results that ∇Cin(x) is a bounded matrix (by assumption (ii)),
λki ! 0 for i 2 I in ðxÞ (by Proposition 14.2), and k∇xFkk ! 0, so it follows that if k ! þ 1 , then
h i1
λkac ! ∇Cac ðxÞ∇Cac ðxÞT ∇Cac ðxÞ∇f ðxÞ: ð14:88Þ
Observe that by (ii), the components of λac are finite. From (14.87) and (14.89), since k∇xFkk ! 0
and λki ¼ 0 for all i 2 I in ðxÞ, we get
X
∇f ðxÞ λi ∇ci ðxÞ ¼ 0:
i2E[I
From Proposition 14.2 and from (14.88), we can see that there exist δ > 0 and k 0 with
λi δ λki λi þ δ for all i 2 E [ I and k k, which means that the sequence λk kk is bounded.
From (14.73), we get
ci ðxkþ1 Þ
λkþ1 ¼ λki , ð14:90Þ
i σk
for all i 2 E and k 0. This, together with the boundedness of λk, implies that the sequence
fci ðxkþ1 Þ=σ k gkk is bounded for all i 2 E. Since σ k ! 0, we must have ci ðxÞ ¼ 0 for all i 2 E.
Therefore, the feasibility of x with respect to the equality constraints is established.
Now, let us show that x is feasible with respect to the inequality constraints, i.e., ci ðxÞ 0 for all
i 2 I. Observe that it is necessary to consider the general constraints ci, i 2 Ic, because the simple
bounds are always strictly feasible. Let us assume that there is an index j 2 Ic with cj ðxÞ ¼ δ < 0:
Then, there exists a k 0 such that
δ
cj ðx k Þ ð14:91Þ
2
for all k k: Now, from (14.64), it follows that βk σ k skj ! 0 when σ k ! 0. Thus, there is a kb k
with
14.5 A Penalty-Barrier Algorithm (SPENBAR) 499
δ
cj ðxk Þ < βk σ k skj ð14:92Þ
2
b and hence, the quadratic extrapolation is used. Consequently, (14.64) and (14.91)
for all k k,
imply that
0 1
kB cj ðxkþ1 Þ 1 2βk C
λkþ1
j ¼ σ k λ j @
2 þ 2 A
skj σ k 1 βk skj σ k 1 βk
0 1
!
B δ=2 1 C k δ=2 1
λkj @
2 k 2 A λ j σ s2 ð14:93Þ
σ k skj 1 βk sj 1 β k k u ð1 βu Þ2
λi ci ðxÞ ¼ 0 ð14:95Þ
for all i 2 E [ I. If ci ðxÞ ¼ 0 for some i 2 E [ I, it is clear that (14.95) is satisfied. Otherwise,
ci ðxÞ ¼ δ > 0, from Proposition 14.2, it follows that λi ¼ 0: Thus, (14.95) holds. Furthermore, from
Proposition 14.1, it follows that λi 0 for all i 2 I.
In conclusion, we have proved that (xk, λk) converges to a point x, λ satisfying (14.68).
Hence, the limit point is a KKT point of the problem (14.50), which completes the proof of the
theorem. ♦
The convergence of the penalty-barrier algorithm without assuming that the sequence of iterates
{xk} is convergent is proved in Breitfeld and Shanno (1994c). The convergence of the algorithm when
{xk} is not convergent is proved under the assumptions that the gradients of the active constraints at a
limit point of {xk}k2K are linearly independent, where K is a subset of {k : k 0} and the sequence of
the Lagrange multiplier estimates {λk}k0 stays bounded. The proof is quite technical and it is not
presented here.
For the convex programming, the convergence results under mild conditions are given by Ben-Tal
and Zibulevsky (1993). For the modified log-barrier method, under the convexity assumption, the
convergence is given in Jensen and Polyak (1992). Moreover, Polyak (1992) proves the convergence for
the modified log-barrier method applied to non-convex nonlinear programs under nondegeneracy and
second-order sufficiency assumptions. The above theoretical results assume the exactness of the
solutions to the unconstrained subproblems. For an augmented Lagrangian algorithm, Conn, Gould,
500 14 Penalty and Augmented Lagrangian Methods
and Toint (1991a) establish the global convergence, allowing the inexact minimization of the aug-
mented Lagrangian without the assumption that the sequence of the Lagrange multiplier estimates stays
bounded. A similar approach used in the SPENBAR algorithm is considered by Conn, Gould, and Toint
(1992a). The Lagrangian barrier function comprises similar modified barrier terms, as (14.59a). Conn,
Gould, and Toint (1992a) remark that the convergence theory extends to a composite Lagrangian
barrier, i.e., the augmented Lagrangian algorithm. In this algorithm, the update strategy also allows to
show that the penalty parameter is bounded away from zero, and therefore, the potential ill-conditioning
of the augmented Lagrangian function can be avoided. Also, Powell (1969) suggests updating the
parameters in a similar way, depending on the reduction in the infeasibility of the constrained problem.
In the following, let us present some examples illustrating the numerical performances of
SPENBAR, in which the subproblems (14.65) are solved by the truncated Newton with simple
bounds (TNBC).
Consider the initial point x0 ¼ [0.1, 0.1, . . ., 0.1], for which f(x0) ¼ 3.282377. Table 14.3
presents the results given by SPENBAR.
k 1 2 3 4 5
σk 0.1 0.01 0.001 0.0001 0.00001
#itin 40 41 39 8 2
#nf 200 162 175 42 9
x1 1.460992 1.46663 1.468803 1.468808 1.468808
x2 1.940633 1.983322 1.983970 1.983971 1.983971
x3 0.464774 0.354626 0.351885 0.351878 0.351878
x4 1.202136 1.195411 1.195342 1.195342 1.195342
x5 0.577817 0.570095 0.569399 0.569396 0.569396
x6 0.774228 0.784720 0.784745 0.784746 0.784746
x7 1.379950 1.411455 1.412121 1.412122 1.412122
f ( x) −37.68229 −37.41242 −37.41296 −37.41296 −37.41296
In this table, #itin and #nf represent the number of iterations and the number of function evaluations, respectively, in the
truncated Newton method for solving subproblem (14.65).
14.5 A Penalty-Barrier Algorithm (SPENBAR) 501
Note that towards the end of the solving process, the number of iterations itin is smaller and
smaller. This is a characteristic of SPENBAR (Andrei, 1996a, b, c). Observe that SPENBAR takes
5 major iterations, at each of them one subproblem (14.65) being solved, and a total of 130 minor
iterations for solving (14.65) by the truncated Newton with simple bounds. The total number of
function evaluations is 588. Observe that along the iterations, the values of the penalty parameter σ k
are quite reasonable. In SPENBAR, the Jacobian matrices ∇c(x) are considered as sparse matrices.
Therefore, it is able to solve large-scale nonlinear optimization problems.
Example 14.3 (Optimization of a heavy body) (Brown & Bartholomew-Biggs, 1987; Andrei, 2003,
Application A10, p. 356).
where
z ¼ 0:1ðx1 þ x3 þ x4 Þ þ 0:01 x21 þ 2x1 x3 þ 2x1 x4 cos x2 þ 0:01x24 cos x5 ,
y ¼ 1 þ 0:1ðx1 þ x3 þ x4 Þ þ 0:01 x21 þ 2x1 x3 þ 2x1 x4 sin x2 þ 0:01x24 sin x5 ,
u ¼ 0.1 þ 0.02(x1 cos x2 þ x4 cos x5),
v ¼ 0.1 þ 0.02(x1 sin x2 þ x4 sin x5).
Considering the initial point x0 ¼ [5.67, 5.23, 11.96, 23.88, 2.61, 2.34, 3.45, 4.89], for which
f(x0) ¼ 35.53, Table 14.4 presents the results of the optimization process, as well as the solution.
Table 14.4 Iterations generated by SPENBAR. s0 ¼ 0.1, b ¼ 0.9, t ¼ 108. Optimization of a heavy body
k 1 2 3 4 5 6 7
σk 0.1 0.01 0.001 0.0001 1.e−5 1.e−6 1.e−7
#itin 44 117 190 290 5 4 1
#nf 264 665 1018 1412 20 17 6
x1 0.203143 0.007214 0.305438 0.39424 0.39417 0.39417 0.39417
x2 7.237269 5.48815 7.430341 7.42649 7.4266 7.4266 7.4266
x3 7.695956 2.232681 13.48405 13.70247 13.703 13.703 13.703
x4 0.081001 9.94434 23.58007 24.03176 24.0325 24.0325 24.0325
x5 −0.90282 −1.23978 −1.91034 −1.91831 −1.9183 −1.9183 1.9183
x6 0.305193 −0.18e−8 0.543286 0.619871 0.61981 0.61981 0.61981
x7 −2.75607 1.49421 3.67206 3.701685 3.70175 3.70175 3.70175
x8 −0.32e−9 −3.15316 −4.85593 −4.90222 −4.9023 −4.9023 −4.9023
f ( x) 4.13212 11.06789 30.62753 31.27724 31.2782 31.2782 31.2782
502 14 Penalty and Augmented Lagrangian Methods
Table 14.5 Performances of SPENBAR. s0 ¼ 0.1, b ¼ 0.9, t ¼ 108. Application DES. Thomson problem
In this table, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #itM ¼ the number of the major iterations; #itm ¼ the number of the minor iterations in the
truncated Newton method for solving (14.65), #nf ¼ the total number of evaluations of functions in the truncated
Newton method for solving (14.65), #qe ¼ the total number of quadratic extrapolations, cpu ¼ the cpu time (seconds) to
get a local solution to the problem, and vfo ¼ the optimal value of the objective function.
Table 14.6 Performances of SPENBAR. s0 ¼ 0.1, b ¼ 0.9, t ¼ 108. Application HANG. Dog curve
For solving this problem, SPENBAR needs 7 major iterations and a total of 651 minor iterations
used by the truncated Newton method. The total number of function evaluations is 3402. The final
value of the objective at the local optimum is f(x) ¼ 31.27823435. ♦
Application DES (Distribution of Electrons on a Sphere). (Dolan, Moré, & Munson, 2004; Andrei,
2015a). This is application L10 form the LACOP collection, known as the Thomson problem, as
described in Appendix C. In Table 14.5, we present the performances of SPENBAR for solving this
application for different numbers of electrons on the sphere.
Application HANG (Hanging Chain). This is application L11 from the LACOP collection
presented in Appendix C. Table 14.6 contains the performances of SPENBAR for solving this
application for different numbers of discretization points, with a ¼ 1, b ¼ 3, and L ¼ 4.
In Appendix C, we have presented the LACOP collection, which contains a number of 18 real
nonlinear optimization applications. In Table 14.7 of this numerical study, we can see the numerical
performances of SPENBAR for solving nine applications.
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 503
Table 14.7 Performances of SPENBAR for solving nine applications from the LACOP collection. s0 ¼ 0.1,
b ¼ 0.9, t ¼ 108
This section presents one of the most respectable algorithms and software for solving general
nonlinear optimization problems, elaborated by Murtagh and Saunders (1978, 1980, 1982, 1995).
The main idea behind this method is to generate a step by minimizing the Lagrangian or the
augmented Lagrangian, subject to the linearizations of the constraints.
The origins of the linearly constrained augmented Lagrangian method can be found in the papers
of Robinson (1972) and Rosen and Kreuser (1972). Let us consider the general nonlinear optimization
problem with the equality constraints
min ff ðxÞ : hðxÞ ¼ 0, l x ug ð14:96Þ
For a given point (xk, λk), Robinson’s method defines the following:
Thus, the next iteration of Robinson’s method is obtained as solution of the following subproblem:
min x2ℝn Mk ðxÞ : hk ðxÞ ¼ 0, l x u : ð14:97Þ
Under suitable conditions, Robinson (1972) proves that the sequence of the subproblem solutions
{(xk, λk)} converges quadratically to a solution of (14.96).
On the other hand, in MINOS, as described in Murtagh and Saunders (1982), the penalty term of
the augmented Lagrangian is included in the subproblem objective in an attempt to improve the
convergence from arbitrary starting points. Therefore, a modified augmented Lagrangian subproblem
is obtained:
n o
1
min x2ℝn f ðxÞ λTk d k ðxÞ þ σ k dk ðxÞ2
2 ð14:98Þ
subject to
hk ðxÞ ¼ 0, l x u:
504 14 Penalty and Augmented Lagrangian Methods
Observe that this is equivalent to the normal augmented Lagrangian because dk(x) and h(x) are the
same when the linearized constraints are satisfied hk ðxÞ ¼ 0 : An important benefit is the following:
if h(x) involves only some of the variables nonlinearly, i.e., it is not hard nonlinear, then Mk(x) has the
same property, whereas kh(x)k2 appears to be more nonlinear.
MINOS uses the simplex or the reduced-gradient iterations to satisfy the linearized constraints for
each subproblem. It limits the number of “minor iterations” performed on (14.98) in a heuristic way in
order to avoid excessive optimization within a wrong subspace. MINOS also monitors kxkþ1 xkk
and kλkþ1 λkk, and if they seem to be large, then the step towards (xkþ1, λkþ1) is heuristically
shortened. Only if kh(x)k has increased substantially should σ k be increased.
subject to
Ax ¼ b, ð14:99bÞ
l x u, ð14:99cÞ
where A is an m n matrix with m n. The vector x is partitioned into the linear portion xL and the
nonlinear portion xN:
xN
x¼ :
xL
The components of xN are called the nonlinear variables. On the other hand, the components of xL
are the linear variables. Observe that in the objective function, the nonlinear variables are
incorporated in a nonlinear part of it. Possibly, the part of cTx involving xN may be included into
f(xN). It is quite clear that if f(xN) ¼ 0, then (14.99) is a linear programming problem. MINOS is an
extension of the revised simplex method (Dantzig, 1963; Vanderbei, 2001) and is able to deal with
nonlinear terms by using quasi-Newton procedures.
As known, in the simplex method, a basic solution is characterized by having at most m basic
variables lying between their bounds, while the rest of n m nonbasic variables are equal to one
bound or to another. An associated nonsingular square basis matrix B is extracted from the columns of
the constraint matrix A, and along the iterations of the simplex algorithm, the columns of B are
replaced one at a time.
In the case of nonlinear optimization problems, we cannot expect an optimal point to be a basic
solution. However, if the number of nonlinear variables is small, then it seems reasonable to suppose
that an optimal solution will be nearly basic. Thus, as described in Murtagh and Saunders (1978), as a
generalization of the simplex algorithm, the concept of superbasic variables is introduced. Therefore,
partitioning the vector x as x ¼ [xB xS xN]T, the linear constraints (14.99b) may be written as
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 505
2 3
xB
6 7
Ax ¼ ½B S N 4 xS 5 ¼ b: ð14:100Þ
N
x
The matrix B is square and nonsingular, as in the simplex algorithm. Therefore, it is invertible. The
matrix S is m s with 0 s n m and N is given by the remaining columns of A. Clearly, the
associated variables xB, xS, and xN are called the basics, superbasics, and nonbasics, respectively. As
in the simplex algorithm, both the basics and superbasics are free to vary between their bounds. The
superbasic variables may be moved in any direction in order to improve the objective value. On the
other hand, the basic variables are obliged to change in a definite way to maintain the feasibility of the
constraints Ax ¼ b.
The following theorem shows that the optimal solutions of a nonlinear optimization problem are
often near basic (Murtagh & Saunders, 1978).
Theorem 14.9 Let us suppose that a nonlinear optimization problem has t variables occurring
nonlinearly in either the objective function or in the constraints. Then, there is an optimal solution in
which the number of superbasic variables s satisfies s t.
Proof Let us assume that the nonlinear variables are fixed at their optimal values. The remaining
problem is a linear programming one for which a basic solution exists (s ¼ 0). The conclusion of the
theorem follows immediately if the nonlinear variables are now regarded as superbasics in the
original problem. Observe that at the very beginning s ¼ t, but if any of the nonlinear variables are
actually on a bound, then we can label them as nonbasic, i.e., s < t. ♦
Let us now detail the method of MINOS for linear constraints. Suppose that f is twice continuously
differentiable. Therefore, it can be expanded in Taylor’s series with remainder of second-order
1
f ðx þ ΔxÞ ¼ f ðxÞ þ gðxÞT Δx þ ΔxT H ðx þ γΔxÞΔx, ð14:101Þ
2
where 0 γ 1, g(x) ¼ ∇ f(x), and H(x þ γΔx) is the Hessian of f evaluated at some point
between x and x þ Δx. Observe that if f(x) is a quadratic function, then H is a constant matrix. Now,
let us partition Δx and g(x) corresponding to the partition of A: Δx ¼ [ΔxB ΔxS ΔxN]T and
g ¼ [gB gS gN]T.
If f(x) is quadratic, then a constrained stationary point at x þ Δx is obtained by requiring that the
following two properties of the step Δx should hold:
Property 1 (Feasibility)
2 3
ΔxB
B S N 6 S7
4 Δx 5 ¼ 0: ð14:102Þ
0 0 I
ΔxN
This property says that the step remains on the surface given by the intersection of the active
constraints, i.e., the new point x þ Δx is feasible. From (14.102), observe that ΔxN ¼ 0.
506 14 Penalty and Augmented Lagrangian Methods
Property 2 (Optimality)
2 3 23 2 T 3
gB ΔxB B 0
6 7 6 S7 6 T 7 μ
4 S5
g þ H ¼
4 Δx 5 4 S 05 , ð14:103Þ
λ
gN ΔxN NT I
i.e., the gradient at x þ Δx, given by the left-hand side of (14.103), is orthogonal to the surface of the
active constraints and thus is expressed as a linear combination of the active constraint normals.
Moreover, for the optimality of x þ Δx, the negative gradient must be orthogonal outside of the
feasibility domain. For (14.99), we impose that λj 0 if xNj ¼ uj , or λj 0 if xNj ¼ lj , j ¼ 1, . . .,
n m s. μ and λ are the Lagrange multipliers.
For a general function f(x), the step Δx may not lead directly to a stationary point, but the
Properties 1 and 2 may be used to get a feasible descent direction. Now, from (14.102), we get
BΔxB þ SΔxS ¼ 0,
ð14:104Þ
ΔxN ¼ 0:
Therefore,
where
W ¼ B1 S: ð14:106Þ
Thus,
2 3
W
6 7
Δx ¼ 4 I 5ΔxS :
0
So, we can work only with ΔxS. The matrix W is not explicitly computed because B1 is
represented as the product form of the inverse or as the elimination form of the inverse (Andrei,
2011d).
Observe that (14.103) may be simplified when it is multiplied to the left by the matrix
2 3
I 0 0
6 7
4 W T I 0 5: ð14:107Þ
0 0 I
With this, from the first row of (14.103) multiplied by (14.107), we get an expression for the
estimates of the Lagrange multipliers for the general constraints
2 3
W
6 7
gB þ ½ I 0 0 H 4 I 5ΔxS ¼ BT μ: ð14:108Þ
0
BT μ ¼ gB : ð14:109Þ
Let u be the solution of (14.109), which, as we can see, is analogous to the pricing vector in the
revised simplex algorithm.
Considering now the third row of (14.103) multiplied by (14.107), we get
2 3
W
6 7
gN þ ½ 0 0 I H 4 I 5ΔxS ¼ N T μ þ λ: ð14:110Þ
0
λ ¼ gN N T μ, ð14:111Þ
where
h ¼ W T I 0 g ¼ gS ST u: ð14:113Þ
by forward and backward substitution, like in the simplex algorithm with the LU factorization of the
basis.
Gill and Murray (1974b) considered a class of algorithms in which the search direction along the
surface of the active constraints is characterized as being in the range of a matrix Z which is
b ¼ bb is the current set of n s active
orthogonal to the matrix of the constraint normals. Thus, if Ax
constraints, then Z is an n s matrix, such that
b ¼ 0:
AZ ð14:116Þ
508 14 Penalty and Augmented Lagrangian Methods
Using this idea, the main steps to be executed at each iteration to get a feasible direction p are as
follows:
This algorithm is very general. Two conditions are imposed on the matrix Z: to be of full rank on
columns and to verify (14.116). Therefore, Z may have any form which verifies the above conditions.
Particularly, in MINOS, Z has the following form:
2 3 2 3
W B1 S
6 7 6 7
Z ¼ 4 I 5 ¼ 4 I 5: ð14:117Þ
0 0
This is a very convenient representation which will be used both in MINOS with linear constraints
and in MINOS with nonlinear constraints. Note that this matrix in not computed. The algorithm works
only with S and the triangular (LU) factorization of B.
Now, let us present the MINOS algorithm with linear constraints. For this, suppose that we have
the following elements:
With these developments, the MINOS algorithm for solving nonlinear optimization problems with
linear constraints is as follows.
1. Initialization of the algorithm with the above described elements. Set k ¼ 1, xk ¼ x, f(xk) ¼ fk, and
g(xk) ¼ gk
2. Test for convergence. If khk > εh, then go to step 4; otherwise, continue with step 3
3. Compute an estimation of the Lagrange multipliers. Modify the number of superbasics:
(a) Compute λ ¼ gN NTu
(b) Since for the verification of the KKT conditions all the variables fixed at the upper (lower) bound
must have the Lagrange multipliers negative (positive), determine:
λ1 ¼ max {λj : λj > 0} for xNj fixed at its upper bound uj,
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 509
λ2 ¼ min {λj : λj < 0} for xNj fixed at its lower bound lj.
If λ1 ελ and λ2 ελ, stop, the current solution is optimal
(c) Otherwise, choose xNi corresponding to |λi| ¼ max {λ1, |λ2|} as a new superbasic variable
(1) Augment the matrix S with the column corresponding to the variable xNi
(2) Augment the reduced gradient h with λi
(3) Add a suitable new column to R
(d) Update s ¼ s þ 1
4. Compute the search direction p:
(a) Solve the system (RTR)pS ¼ h
(b) Solve the system (LU)pB ¼ SpS
(c) Set p ¼ ½ pB pS 0 T
5. Determine the maximum value of the stepsize:
(a) Find αmax 0 as the greatest positive value of α for which one component of the vector
B T
x þ αpB xS þ αpS has reached one of its bounds
(b) If αmax ¼ 0, then go to step 10; otherwise, continue with step 6
6. Line-search. Find α such that
f(xk þ αp) ¼ min {f(xk þ αp) : 0 < α αmax}
7. Update the solution as xkþ1 ¼ xk þ αp and set k ¼ k þ 1
8. Compute f(xk) ¼ fk and g(xk) ¼ ∇ f(xk) ¼ gk
9. Compute the reduced gradient:
(a) Solve the system (UTLT)u ¼ gB
(b) Compute the new reduced gradient h ¼ gS ST u
(c) Using α, p and the change in the reduced gradient h h, modify R corresponding to a quasi-Newton
update of RTR
(d) Set h ¼ h
(e) If α ¼ αmax, that is one component of xB or xS has reached one of their bounds, then continue with
step 10; otherwise (α < αmax) go to step 2
10. Here αmax ¼ 0. At this step of the algorithm, a basic variable or a superbasic variable, let us say with
index i, has reached one of its bounds
(a) If the variable i is basic, then:
(1) Interchange the i-th basic variable xBi (i.e. the column corresponding to xBi from B) with the j-th
superbasic variable xSj (i.e. the column corresponding to xSj from S). The index j is chosen to
keep B nonsingular
(2) Update the L and U factors, the matrix R and the vector u
(3) Compute the new reduced gradient h ¼ gS STu and go to step 10.c)
(b) If the i variable is superbasic, then define j ¼ i m
(c) Make the j-th variable in S nonbasic at the appropriate bound:
(1) Delete column j from S and place it in N
(2) Delete column j from R
(3) Delete the j-th component from the vectors xS and h
(4) Restore R to the triangular form
(d) Set s ¼ s 1 and go to step 2 ♦
An iteration of the MINOS algorithm for linear constraints is roughly equivalent to an iteration of
the revised simplex algorithm on an m n linear programming problem, plus an iteration of a quasi-
Newton algorithm on an unconstrained optimization problem with s variables. MINOS with linear
constraints is an advanced software, written in Fortran, which takes the sparsity of A and uses an
efficient LU factorization of the basis matrix B, based on the “bump and spike” algorithm (Hellerman
& Rarick, 1971, 1972). Murtagh and Saunders (1978) present plenty of details on the following:
update of the sparse matrix factorizations, quasi-Newton updates, basis change, removal of one
superbasic variable, addition of one superbasic variable, convergence tests, use of the first and of the
second derivatives, forward and backward transformations of vectors, quadratic programs, etc.
510 14 Penalty and Augmented Lagrangian Methods
Characteristics Optimization
m n nz #iter z cpu
cq9 9451 13,778 157,598 104,150 0.5055445e6 449.47
cre-b 9649 72,447 328,542 183,473 0.2312964e8 678.23
cre-d 8927 69,980 312,626 240,460 0.2445497e8 829.64
ge 10,339 11,098 53,763 15,524 0.5581281e7 51.39
ken-11 14,694 21,349 70,354 15,307 −0.69723e10 71.21
ken-13 28,633 42,659 139,834 45,461 −0.10257e10 440.56
pds-10 16,559 48,763 140,063 74,814 0.267270e11 404.45
stocfor3 16,675 15,695 74,004 14,082 −0.399767e5 72.55
osa-07 1118 23,949 167,643 1915 0.5357225e6 2.02
osa-14 2338 52,460 367,220 4116 0.1106462e7 7.91
co5 5878 7993 92,788 30,938 0.7144723e6 81.28
cq5 5149 7530 83,564 37,280 0.4001338e6 85.06
p05 5090 9500 68,455 1675 0.5560002e6 3.82
r05 5190 9500 113,455 1712 0.5578318e6 5.37
To see the performance of MINOS for solving linear programming problems, in Table 14.8, we
present the results of solving some large-scale linear programming problems (the terms f(xN) in
(14.99a) is zero). These are taken from the Netlib collection (Gay, 1985), or the collection of linear
programs described in Carolan, Hill, Kennington, Niemi, and Wochmann (1990) (see Andrei, 2011d,
p. 325).
In the following, we shall extend MINOS for solving general nonlinear optimization problems of the
form
subject to
f ð x Þ þ A1 y ¼ b1 , ð14:118bÞ
A2 x þ A3 y ¼ b 2 , ð14:118cÞ
x
l u, ð14:118dÞ
y
where f ðxÞ ¼ f 1 ðxÞ ⋯ f m1 ðxÞ , b1 2 ℝm1 , b2 2 ℝm2 , which emphasizes the linear part as well as
the nonlinear part of the problem. Define m ¼ m1 þ m2. The first n1 variables x are called the
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 511
nonlinear variables. They occur nonlinearly in either the objective function or in the first m1
constraints. The variables y represent the linear variables. They include the slack variables. The
problem may have purely linear constraints (14.118c). Suppose that the functions f i(x), i ¼ 0, . . ., m1,
are twice continuously differentiable with the gradients gi(x), i ¼ 0, . . ., m1, and there exists a local
minimum x with the corresponding Lagrange multipliers λ, such that the first- and second-order
KKT conditions hold.
As described by Murtagh and Saunders (1982), the solution process of this problem consists of a
sequence of major iterations, each one involving a linearization of the nonlinear constraints at some
current point xk corresponding to a first-order Taylor’s series approximation
f i ð x Þ ¼ f i ð x k Þ þ gi ð x k Þ T ð x x k Þ þ O kx x k k2 :
Define
f fe ¼ ðf f k Þ J k ðx xk Þ ð14:120Þ
contains the high-order nonlinear terms in the Taylor’s expansion of f(x) about the current point xk.
At the k-th major iteration, the following linearly constrained subproblem is formed:
min L x, y, xk , λk , ρ ¼
x, y
T
1
f 0 ðxÞ þ cT x þ dT y λTk f fe þ ρ f fe f fe ð14:121aÞ
2
subject to
fe þ A1 y ¼ b1 , ð14:121bÞ
A2 x þ A3 y ¼ b 2 , ð14:121cÞ
x
l u: ð14:121dÞ
y
The objective function L(.) given by (14.121a) is a modified augmented Lagrangian in which f fe
is used instead of the conventional constraint violation f þ A1y b1. The partial derivatives of L(.) are
∂Lðx, yÞ h
i
¼ g0 ðxÞ þ c ðJ J k ÞT λk ρ f fe ,
∂x
ð14:122Þ
∂Lðx, yÞ
¼ d:
∂y
Observe that the nonlinearities in L(.) involve x but not y, which means that the subproblem has the
same nonlinear variables as the original one. The modified Lagrangian was used by Robinson (1972)
with ρ ¼ 0. The use of a penalty term ensures that the augmented Lagrangian maintains a positive
definite Hessian in the appropriate subspace. It was suggested by Arrow and Sollow (1958) and later
considered by Hestenes (1969), Powell (1969), and Sargent and Murtagh (1973).
In the following, in order to specify the MINOS algorithm for nonlinear constraints, it is necessary
to define the procedures for the choice of the Lagrange multipliers λk and of the penalty parameter ρ.
512 14 Penalty and Augmented Lagrangian Methods
Choice of λk The best choice is λk ¼ λ, but the optimal value of the multipliers is not known.
Therefore, the simplest choice is λk ¼ b λ, where bλ is the vector of the multipliers corresponding to the
linearized constraints at the solution of the previous subproblem. Let us assume that the problem does
not have linear constraints. Then, b λ is the solution of the system BTb λ ¼ gB from the end of the
b Tb
previous iteration. Moreover, λ also verifies the system S λ ¼ gS : As we know, g is zero for all the
slack variables, and it follows that b λi ¼ 0 if the i-th linearized constraint is inactive. Therefore, the
choice λk ¼ b λ ensures that an inactive nonlinear constraint will be excluded from the Lagrangian term
λT ðf feÞ in the next subproblem.
k
Choice of ρ As known, x need not be a local minimum of the Lagrangian function. If we assume that
J(x) is of full rank, then λ exists, so that
Lðx, λÞ ¼ f 0 ðxÞ þ cT x þ dT y λT ðf þ A1 y b1 Þ,
is stationary at (x, λ), but L(x, λ) may have a negative curvature in x at x. If we consider that the
constraints are satisfied at x as equalities and ignore the inactive constraints, then the necessary
(sufficient) conditions for x to be a local minimum are
∂Lðx , λ Þ
Z ðx ÞT ¼0
∂x
and
∂ Lðx , λ Þ
2
Z ðx ÞT Z ðx Þ
∂x2
to be positive semidefinite (positive definite), where Z(x) is defined in (14.117). Therefore, if the
search is restricted to the linearly constrained subspace defined by Z(x), then we do seek a minimum
of the Lagrangian. We may expect that when xk is sufficiently close to x for J(xk) to be close to J(x),
we may minimize (14.121a) with ρ ¼ 0. As it is discussed in Murtagh and Saunders (1982), the
difficulty arises when xk is far away from x, since, in this case, the linearized constraints may define a
subspace where perhaps a saddle point would be closer to x than a minimum would. Successive
minima of (14.121) with ρ ¼ 0 may therefore fail to converge to x. The addition of a penalty term
ρðf feÞ ðf feÞ imposes the correct curvature properties on (14.121a) for a sufficiently large ρ > 0.
T
To illustrate the importance of the penalty term in (14.121), let us consider the following problem
with equality constraints:
min f 0 ðxÞ
subject to ð14:123Þ
f ðxÞ ¼ 0,
where the functions are twice continuously differentiable with bounded Hessians. Assume that at
some point x the Jacobian J(x) is of full rank, that there is a λ such that ∂f0/∂x ¼ J(x)Tλ, and that
the reduced Hessian
h i
Zðx ÞT ∂ Lðx , λ Þ=∂x2 Zðx Þ
2
is positive definite, i.e., the sufficient conditions of optimality are satisfied for x to be a local
minimum. As in Murtagh and Saunders (1982), the following theorems can be presented.
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 513
Theorem 14.10 Let (xk, λk) be an approximate solution to (14.123) and let xb, b
λ be a solution to the
linearized subproblem
T
1
min f 0 ðxÞ λTk f fe þ ρ f fe f fe
2 ð14:124Þ
subject to
e
f ðx, xk Þ ¼ 0,
where feðx, xk Þ is given by (14.119). If b λ λk ¼ ε1 and f ðxbÞ ¼ ε2 , then xb, b
λ is also a solution to the
perturbed problem
min f 0 ðxÞ þ ðε1 þ ρε2 ÞT f fe
subject to ð14:125Þ
f ð x Þ ¼ ε2 ,
min f 0 ðxÞ þ εT1 f fe þ ρεT2 f
subject to ð14:127Þ
f ðxÞ ¼ ε2 :
If ε1 and ε2 are sufficiently small, then ρ can safely be reduced to zero (Murtagh & Saunders,
1982). Apparently, problem (14.125) is less sensitive to deviations from its optimum than (14.127).
Thus, let Δx be an arbitrary small change to the solution xbof (14.125). Then, the objective function for
(14.125) differs from the true objective f 0(x) by an amount δ1 ¼ ðε1 þ ρε2 ÞT f fe : Clearly,
|δ1| (kε1k þ ρkε2k)O(kΔxk2). On the other hand, for (14.127), the analogous deviation is
δ2 ¼ εT1 f fe þ ρεT2 f ¼ εT1 f fe þ ρεT2 fb þ JΔx
b þ O kΔxk2 :
T
In this case, jδ2 j ðkε1 k þ ρkε2 kÞO kΔxk2 þ ρkε2 k2 þ ρJb ε2 kΔxk: Since δ1 is of order
kΔxk2 while δ2 is of order kΔxk, it follows that the modified penalty term in (14.124) has a theoretical
advantage over the conventional penalty term of (14.126).
Having in view the above theoretical developments, the MINOS algorithm for solving the general
nonlinear optimization problems is as follows.
1. Consider k ¼ 0. Choose the initial estimates xk, yk, and λk. Select a value for the penalty parameter ρ > 0 as
well as a convergence tolerance εc > 0
2. Solve the linear subproblem:
(a) Given xk, yk, λk, and ρ, using the Algorithm 14.6 (MINOS for linear constraints), solve the linear
constrained subproblem (14.121) obtaining xkþ1, ykþ1 and u, where u is the vector of the
Lagrange multipliers associated to the constraints from (14.121)
(b) Form the vector λkþ1 where its first m1 components are those of u
3. Test for convergence. If (xk, yk) satisfies the KKT optimality conditions, then stop
4. If
kf ðxkþ1 ÞþA1 ykþ1 b1 k λkþ1 λk k
1þk½xkþ1 ykþ1 k
εc , and k1þ kλkþ1 k εc ,
then set ρ ¼ 0; otherwise, set ρ ¼ 10ρ
5. Consider a re-linearization of the constraints in xkþ1, set k ¼ k þ 1, and go to step 2 ♦
In Murtagh and Saunders (1982), we find some details on the algorithm concerning sparse matrices
techniques for solving linear algebraic systems, infeasible subproblems, user options, verification of
the gradients option, Jacobian options (dense or sparse), evaluation options (the constraints and the
gradients are evaluated only once per major iteration or they are evaluated as often as the objective),
convergence conditions (major iterations, minor iterations, radius of convergence, row tolerance),
etc. Let us present some numerical examples.
Example 14.4 Consider the nonlinear optimization problem (Wright (No.4), 1976; Murtagh &
Saunders, 1982)
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 515
Algorithm 14.7 (MINOS with nonlinear constraints) gives the following results:
In Table 14.9, we can see the characteristics of the optimization process, where #itM is the number
of the major iterations, #itm is the number of minor iterations necessary for solving the subproblems
with linear constraints, and #evf is the number of evaluations of the objective and of the constraints,
including their gradients.
Example 14.5 Consider the problem (Wright (No.9), 1976; Murtagh & Saunders, 1982)
A B C D E
#itM 8 9 7 6 8
#itm 30 21 14 17 21
#evf 64 49 35 35 55
516 14 Penalty and Augmented Lagrangian Methods
A B C D
#itM 10 8 20 9
#itm 51 25 105 46
#evf 136 64 195 97
Table 14.10 contains the characteristics of the optimization process initialized in different points.
In Appendix C, we have presented the LACOP collection, which includes a number of 18 real
nonlinear optimization applications. In Tables 14.11 and 14.12 of this numerical study, we can see the
numerical performances of MINOS for solving 12 small-scale nonlinear optimization applications
and 6 large-scale nonlinear optimization applications of different dimensions, respectively.
Table 14.11 Performances of MINOS for solving 12 applications from the LACOP collection. Small-scale nonlinear
application
Table 14.12 Performances of MINOS for solving six applications from the LACOP collection. Large-scale nonlinear
applications
Table 14.13 Performances of MINOS for solving the HANG application from the LACOP collection. Large-scale
nonlinear applications
In Tables 14.11–14.13 we have: n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the
number of inequality constraints, #itM ¼ the number of major iterations, #itm ¼ the number of minor iterations, #nf ¼
the number of evaluations of the objective function, #nr ¼ the number of evaluations of constraints, #s ¼ the number of
superbasic variables, cpu ¼ the CPU computing time for solving the problem (seconds), and vfo ¼ the value of the
objective function.
Table 14.13 shows the performances of MINOS for solving the application HANG with a large
number of variables.
kind of exact penalty approach is the augmented Lagrangian method, which avoids the
ill-conditioning by using the explicit Lagrange multiplier estimate.
The augmented Lagrangian was independently proposed by Hestenes (1969) and Powell (1969).
The l1 penalty method was developed by Fletcher. All these concepts are implemented in different
combinations in very efficient nonlinear optimization packages. For example, the l1 penalty method
that uses linear programming subproblems has been implemented as part of the KNITRO/ACTIVE
software package (see Chap. 15).
The augmented Lagrangian methods solve the nonlinear constrained optimization problems (14.3)
by a sequence of subproblems that minimize the augmented Lagrangian, either subject to a lineariza-
tion of the constraints or as a bound-constrained problem. The best known software implementing the
penalty or the augmented Lagrangian are as follows:
ALGENCAN (Andreani, Birgin, Martı́nez, & Schuverdt, 2007, 2008; Birgin & Martı́nez, 2014) is
a general algorithm of the augmented Lagrangian type, in which the subproblems are solved by using
GENCAN. GENCAN (included in ALGENCAN) is a Fortran code for minimizing a smooth function
with a potentially large number of variables and box constraints. The subproblem is solved by using a
quasi-Newton method. The penalty on each constraint is increased if the previous iteration does not
yield a better point.
GALAHAD (Gould, Orban, & Toint, 2004) contains a range of solvers for the large-scale
nonlinear optimization. It also contains a presolve routine for quadratic programming (Gould &
Toint, 2004), as well as some other support routines. It includes LANCELOT B, an augmented
Lagrangian method with a nonmonotone descent condition; FILTRANE, a solver for feasibility
problems based on a multidimensional filter; and an interior point and active-set methods for solving
large-scale quadratic programs.
LANCELOT (Conn, Gould, & Toint, 1992b) is a large-scale implementation of a bound-
constrained augmented Lagrangian method. In LANCELOT, the simple bounds are treated explicitly,
and all the other constraints are converted to equations and incorporated into an augmented Lagrang-
ian function. It approximately solves a sequence of bound-constrained augmented Lagrangian
subproblems by using a trust-region approach. In LANCELOT, each trust-region subproblem is
solved approximately, firstly by identifying a Cauchy point to ensure the global convergence and then
by applying conjugate gradient steps to accelerate the local convergence. Although this approach
proves to be robust (Conn, Gould, & Toint, 1996a), it has a number of drawbacks. One of them is that
the augmentation may not be the ideal way to treat the linear constraints. A more attractive approach
is to handle all the linear constraints explicitly (Conn, Gould, Sartenaer, & Toint, 1996b). The
methods that use the linearly constrained subproblems are described by Rosen and Kreuser (1972),
Robinson (1972, 1974), and Murtagh and Saunders (1978).
MINOS (Murtagh & Saunders, 1987, 1995) uses a projected augmented Lagrangian for solving
general nonlinear problems. At each “major iteration,” a linearly constrained nonlinear subproblem is
solved, where the linear constraints constitute all the linear constraints of (14.3) and the linearizations
of the nonlinear constraints. The objective function of this subproblem is an augmented Lagrangian
which contains the departure from linearity of the nonlinear constraints. The subproblems are solved
by using a reduced gradient algorithm along with a quasi-Newton algorithm. The quasi-Newton
algorithm provides a search direction along which a line-search is performed to improve the value of
the objective function and to reduce the infeasibilities. MINOS integrates a lot of computational
ingredients from linear algebra. The most important is LUSOL, a set of procedures for computing and
updating the LU factors of a general sparse matrix A. The original LUSOL procedures are described
in Gill, Murray, Saunders, and Wright (1987). The main factorization uses a traditional Markowitz
strategy with threshold partial pivoting (Markowitz, 1957). It is designed to allow A to be square or
14.6 The Linearly Constrained Augmented Lagrangian (MINOS) 519
rectangular with arbitrary rank, to factorize A ¼ LU directly by finding suitable row and column
orderings, to replace a column or a row of A, to add or delete a column or a row of A, etc. LUSOL
continues to evolve with the addition of rank-revealing LU factorizations for sparse matrices, using
either threshold rook pivoting or threshold complete pivoting (Saunders, 2015a, b). MINOS is
embedded in the GAMS technology (Andrei, 2017c). Both LANCELOT and MINOS are suitable
for solving large-scale nonlinear optimization problems. However, they differ significantly in the
formulation of the step-computation subproblems and in the techniques used to solve these
subproblems. MINOS implements the linearly constrained Lagrangian, followed by a reduced-
space approach to handle the linearized constraints, and it employs a dense quasi-Newton approxi-
mation to the Hessian of the Langrangian. On the other hand, LANCELOT implements the bound-
constrained Lagrangian method. Numerical experiments have shown an advantage of MINOS over
LANCELOT for problems with linear constraints. Our description of MINOS is based on the papers
of Murtagh and Saunders (1978, 1980, 1982, 1995).
SPENBAR is another approach, based on the logarithmic penalty function. In this approach, the
logarithmic terms prevent the feasible iterates from moving too close to the boundary of the feasible
region of the problem. SPENBAR is designed for solving large-scale constrained optimization
problems. Only the nonzero elements of the Jacobian of the equalities and of the inequalities are
stored separately. In SPENBAR, the subproblem is solved by the truncated Newton with simple
bounds (TNBC). The SPENBAR algorithm, presented in Andrei (1996a, b, c, 1998a, 2001), combines
the augmented Lagrangian with a log-barrier function (a composite function which includes the
augmented Lagrangian and the classical log-barrier function) in which the parameters are updated in
such a way as to obtain a KKT point for the considered nonlinear optimization problem. The equality
and inequality constraints are treated separately. In this variant, the penalty-barrier function includes
only the equality and the inequality constraints. Thus, the algorithm reduces to minimizing a
sequence of simple bound optimization subproblems. The simple bounds on variables can also be
introduced in the composite function, thus obtaining another variant of the penalty-barrier algorithm,
in which a sequence of unconstrained minimization subproblems is used. For both variants, the
convergence theory is the same (Ben-Tal & Zibulevsky, 1993; Conn, Gould, & Toint, 1991a, 1992a).
However, the numerical performances could be different. SPENBAR illustrates the importance of
modifying the classical augmented Lagrangian in order to avoid the ill-conditioning. Also see
Vassiliadis and Floudas (1997).
PENNON (Kocvara & Stingl, 2003) is an augmented Lagrangian penalty-barrier method. It solves
a sequence of unconstrained optimization subproblems in which the inequality constraints are
included in the barrier functions and the equality constraints in the penalty functions. Every uncon-
strained minimization subproblem is solved with Newton’s method.
A new penalty method for solving the general nonlinear optimization problems subject to
inequality constraints was presented by Xavier (2001).
Sequential Quadratic Programming
15
Sequential quadratic programming (SQP) methods are very effective for solving optimization
problems with significant nonlinearities in constraints. These are active-set methods and generate
steps by solving quadratic programming subproblems at every iteration. These methods are used both
in the line-search and in the trust-region paradigm. In this chapter, we consider both the equality
quadratic programming and the inequality quadratic programming. There are some differences
between these approaches. In the inequality quadratic programming, at every iteration, a general
inequality-constrained quadratic programming problem is solved for computing a step and for
generating an estimate of the optimal active-set. On the other hand, in the equality quadratic
programming, these are separated. Firstly, they compute an estimate of the optimal active-set, then
they solve an equality-constrained quadratic programming problem to find the step. Our presentation
proceeds to develop the theory of the sequential quadratic programming approach for the step
computation, followed by practical line-search and trust-region methods that achieve the convergence
from remote starting points. At the same time, a number of three implementations of these methods
are discussed, which are representative of the following: an SQP algorithm for large-scale-
constrained optimization (SNOPT), an SQP algorithm with successive error restoration (NLPQLP),
and the active-set sequential linear-quadratic programming (KNITRO/ACTIVE). Their performances
are illustrated in solving large-scale problems from the LACOP collection.
Equality-Constrained Problems
Let us consider the equality-constrained nonlinear optimization problem
min f ðxÞ ð15:1aÞ
subject to
ð15:1bÞ
hðxÞ ¼ 0,
where f : ℝn ! ℝ and h : ℝn ! ℝm are smooth functions, where h(x) ¼ [h1(x), . . ., hm(x)]T. The idea
of the SQP method is to model (15.1) at the current point xk by a quadratic programming subproblem
and then to use the solution of this subproblem to define a new iterate xkþ1. The most challenging is
how to design the quadratic subproblem so that it yields a good approximation of (15.1). One of the
simplest derivations of the SQP methods is to apply Newton’s method to the KKT optimality
conditions for the nonlinear problem (15.1).
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 521
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_15
522 15 Sequential Quadratic Programming
where λ 2 ℝm is the vector of the Lagrange multipliers associated to the constraints of the problem.
Let us define A(x) as the Jacobian matrix of the constraints, that is
where hi(x), i ¼ 1, . . ., m, are the components of the vector h(x). The first-order optimality conditions
of the equality-constrained problem can be written as a system of n þ m equations with n þ m
unknowns x and λ:
" #
∇f ðxÞ AðxÞT λ
Fðx, λÞ ¼ ¼ 0: ð15:4Þ
hð x Þ
Observe that any solution (x, λ) of (15.1) for which A(x) has full rank satisfies (15.4). To find
such a point, the solution of the nonlinear system (15.4), the Newton method is the most suitable. The
Jacobian of (15.4) with respect to x and λ is given by
" #
0 ∇2xx Lðx, λÞ AðxÞT
F ðx, λÞ ¼ , ð15:5Þ
Að x Þ 0
P
m
where ∇2xx Lðx, λÞ ¼ ∇2 f ðxÞ λi ∇2 hi ðxÞ: The Newton step from the iterate (xk, λk) is given by
i¼1
xkþ1 xk dx
¼ þ , ð15:6Þ
λkþ1 λk dλ
The Newton iteration (15.6) is well defined when the KKT matrix in (15.7) is nonsingular. As we
know (see Chap. 11), this matrix is nonsingular if the following two assumptions hold:
C1. The Jacobian A(x) of the constraints has full row rank.
C2. The matrix ∇2xx Lðx, λÞ is positive definite on the tangent space of the constraints, that is,
dT ∇2xx Lðx, λÞd > 0 for all d 6¼ 0 for whichA(x)d ¼ 0.
Observe that the first assumption is exactly the linear independence constraint qualification
(LICQ) discussed in Chap. 11 (see Remark 11.2). The second assumption holds whenever (x, λ) is
close to the optimum point (x, λ) and the second-order sufficient condition is satisfied at the solution
(see Theorem 11.13).
This approach, which theoretically is very well justified, has an alternative that illustrates the
motivation of the sequential quadratic programming. Let us focus on the Newton iteration given by
(15.6) and (15.7) and let us assume that at the iteration (xk, λk) the problem (15.1) is modeled as a
quadratic program
15 Sequential Quadratic Programming 523
1
min d2ℝn f ðxk Þ þ ∇f ðxk ÞT d þ d T ∇2xx Lðxk , λk Þd, ð15:8aÞ
2
subject to
Aðxk Þd þ hðxk Þ ¼ 0: ð15:8bÞ
If the assumptions (C1) and (C2) hold, then this problem has a unique solution (dk, lk) that satisfies
But the vectors dk and lk can be immediately identified as the solution of the Newton system (15.7).
Now, if we subtract A(xk)Tλk, from both sides of the first equation in (15.7), we get
" #
∇2xx Lðxk , λk Þ Aðxk ÞT dk ∇f ðxk Þ
¼ : ð15:10Þ
Að x k Þ 0 λkþ1 hðxk Þ
Therefore, having in view the nonsingularity of the coefficient matrix of (15.10), it follows that
λkþ1 ¼ lk and dk represents a solution of the quadratic program (15.8) and of the system (15.7).
In conclusion, the new iterate (xkþ1, λkþ1) can be defined either as the solution of the quadratic
programming problem (15.8) or as the iterate generated by the Newton method (15.6) and (15.7)
applied to the optimality conditions of the problem (15.1). Both these approaches are useful. The
Newton point of view is suitable for analysis, whereas the sequential quadratic programming enables
us to derive practical algorithms and to extend the technique to the inequality-constrained case.
Based on these theoretical developments, the following sequential quadratic programming algo-
rithm for equality constraints can be presented.
It is obvious that in the objective function (15.8a), the linear term ∇f(xk)Td can be replaced by
∇xL(xk, λk)Td, since the constraints (15.8b) make the two choices equivalent. In this case, (15.8a) is
exactly a quadratic approximation of the Lagrangian function. This is the main motivation for the
choice of the quadratic model (15.8): first replace the nonlinear optimization problem (15.1) by the
problem of minimizing the Lagrangian subject to the equality constraints (15.1b), then make a
quadratic approximation to the Lagrangian and a linear approximation to the constraints to obtain
the quadratic program (15.8).
Now, let us present the conditions that guarantee the local convergence of Algorithm 15.1.
Consider that the algorithm uses exact second derivatives.
524 15 Sequential Quadratic Programming
Theorem 15.1 Assume that the point x is a local solution of the problem (15.1) at which the
following conditions hold:
(i) The functions f and h are twice continuously differentiable in a neighborhood of x with
Lipschitz continuous second derivatives.
(ii) The linear independence constraint qualification (see Remark 11.2) holds at x. This condition
implies that the KKT conditions (11.21) (see Theorem 11.15) are satisfied for a certain vector of
multipliers λ.
(iii) The second-order sufficient conditions (see Theorem 11.16) hold at (x, λ).
Then, if (x0, λ0) is sufficiently close to (x, λ), the pairs (xk, λk) generated by Algorithm 15.1
quadratically converge to (x, λ).
Proof This result follows directly from the convergence of the Newton method applied to the
nonlinear system (15.4). ♦
Algorithm 15.1 can be specified in some variants. A version of the algorithm uses a quasi-Newton
estimate of ∇2xx Lðxk , λk Þ rather than calculating it from the second derivatives (see Wilson (1963),
Han (1976), and Powell (1978a)). In step 5 of the algorithm, we can use the line-search to determine
xkþ1 ¼ xk þ αdk ensuring P(xkþ1) < P(xk), where P denotes a certain penalty function. Different
penalty functions can be tried. The line-search is important because it forces a reduction in a
composite function, involving both the objective f and the constraints h. It ensures that the new
point xkþ1 is, in a measurable way, an improvement on xk and therefore provides a basis for a proof of
the convergence.
Inequality-Constrained Problems
The above-described sequential quadratic programming approach can be extended to the general
nonlinear optimization problem
min f ðxÞ ð15:11aÞ
subject to
ð15:11bÞ
ci ðxÞ ¼ 0, i 2 E,
ci ðxÞ 0, i 2 I, ð15:11cÞ
where E ≜ {1, . . ., me} and I ≜ {me þ 1, . . ., m} are sets on indices for the equality and inequality
constraints, respectively. Assume that all the functions of the problem (15.11) are twice continuously
differentiable.
As in the case of the equality-constrained problems, at the current point xk, the problem (15.11) is
modeled as a quadratic program by linearizing both the equality and the inequality constraints to
obtain
1
min d2ℝn f ðxk Þ þ ∇f ðxk ÞT d þ dT ∇2xx Lðxk , λk Þd ð15:12aÞ
2
subject to
∇ci ðxk ÞT d þ ci ðxk Þ ¼ 0, i 2 E, ð15:12bÞ
For solving the subproblem (15.12), we can use the algorithms for quadratic programming
described in Chap. 13. The new iterate is given by (xk þ dk, λkþ1), where dk and λkþ1 are the solution
and the corresponding Lagrange multiplier of (15.12). The algorithm is as follows:
In this approach, the set of active constraints at the solution of (15.12) is the guess of the active-set
at the solution of the nonlinear problem (15.11). If the SQP method is able to correctly identify the
optimal active-set (i.e., the active-set at the solution of (15.11)), then the method works like a Newton
method for the equality-constrained optimization. In this case, the convergence will be rapid. The
following result, given by Robinson (1974), presents the conditions under which this behavior of the
algorithm holds.
Theorem 15.2 Assume that x is a local solution of (15.11) at which the KKT conditions are satisfied
for some λ. Also, assume that the linear independence constraint qualification (Remark 11.2), the
strict complementarity (Definition 11.22) and the second-order sufficient conditions (11.13) hold at
(x, λ). Then, if (xk, λk) is sufficiently close to (x, λ), there is a local solution of the subproblem
(15.12) whose active-set is the same as the active-set of the nonlinear program (15.11) at x.
Remark 15.1 To design SQP algorithms for solving the general nonlinear optimization problem
(15.11), two methods are known. The first, which has been described above, solves the quadratic
subproblem (15.12) at each iteration by taking the active-set at the solution of this subproblem as a
guess of the optimal active-set. This approach is called IQP (inequality-constrained QP). It has
proved to be quite effective and successful in practice. Its main disadvantage is the expense of solving
the general quadratic subproblem (15.12), which can be high when the problem is large. However, an
improvement of this situation could be as follows: as the iterates converge to the solution, solving the
quadratic subproblem (15.12) becomes economical if the information from the previous iteration is
used to make a good guess of the optimal solution to the current subproblem. This strategy is called
warm-start. The second approach selects a subset of constraints at each iteration to be the so-called
working set and solves only equality-constrained subproblems of the form (15.8), where the
constraints in the working set are imposed as equalities and all the other constraints are ignored.
This approach is called EQP (equality-constrained QP). In it, the working set is updated at every
iteration by rules based on the Lagrange multiplier estimates or by solving an auxiliary subproblem.
The EQP is more effective because the equality-constrained quadratic subproblems are less expensive
to solve than (15.12), when the problem is large. An example of an EQP method is the sequential
linear-quadratic programming (SLQP) method, which is to be discussed in Sect. 15.6. Another
successful EQP is the gradient projection method in the context of the bound-constrained quadratic
programming.
All these ideas will be developed in the next sections of this chapter. We note that Algorithms 15.1
and 15.2 are successful for solving nonlinear optimization problems. However, these algorithms in
the form in which they were shown represent a simple approach of the sequential quadratic
526 15 Sequential Quadratic Programming
programming method. Some other ingredients must be introduced in their structure, in order to have
efficient and robust SQP algorithms. In the following, we try to be more specific and detail the SQP
for inequality-constrained problems. After that, some important ingredients are introduced in the SQP
approach for having modern, efficient, and robust algorithms, able to solve complex large-scale
nonlinear optimization problems. ♦
The SQP Algorithms 15.1 and 15.2 have good local properties. However, they represent a rudimen-
tary approach of this method. As a matter of fact, it can be shown that Algorithm 15.2 converges
quadratically if: (i) the initial point is sufficiently close to a local minimizer x, (ii) the coefficient
matrix in (15.7) or in (15.10) for (x0, λ0) is nonsingular, (iii) the second-order sufficient conditions
hold for (x, λ) with rank(A(x)) ¼ m, and (iv) for (x0, λ0) the quadratic programming problem
(15.12) has a unique solution. (See Fletcher 1987, Chap. 12).
To be more specific, let us consider the inequality-constrained problem
min f ðxÞ ð15:13aÞ
subject to
ci ðxÞ 0, i 2 I, ð15:13bÞ
where I ≜ {1, . . ., m} is the set of indices for the inequality constraints. Suppose that the functions
f(x) and ci(x), i ¼ 1, . . ., m, are twice continuously differentiable and the feasible region determined by
the constraints (15.13b) is nonempty. The Lagrange function associated to (15.13) is
X
m
Lðx, λÞ ¼ f ðxÞ λi ci ðxÞ: ð15:14Þ
i¼1
∇x Lðx, λÞ ¼ 0, ð15:15aÞ
ci ðxÞ 0, i ¼ 1, . . . , m, ð15:15bÞ
λ 0, ð15:15cÞ
λi ci ðxÞ ¼ 0, i ¼ 1, . . . , m: ð15:15dÞ
Now, for the iterate (xk, λk) an increment (δx, δλ) needs to be found such that the next iterate
(xkþ1, λkþ1) ¼ (xk þ δx, λk þ δλ) approximates the KKT conditions (15.15) in the sense that
∇x Lðxkþ1 , λkþ1 Þ ∇x Lðxk , λk Þ þ ∇2xx Lðxk , λk Þδx þ ∇2xλ Lðxk , λk Þδλ ¼ 0, ð15:16aÞ
ðλkþ1 Þi 0, i ¼ 1, . . . , m, ð15:16cÞ
ci ðxk Þ þ δTx ∇ci ðxk Þ ðλkþ1 Þi ¼ 0, i ¼ 1, . . . , m: ð15:16dÞ
15.1 A Simple Approach to SQP 527
X
m
∇2xx Lðxk , λk Þ ¼ ∇2 f ðxk Þ ðλk Þi ∇2 ci ðxk Þ W k , ð15:17bÞ
i¼1
where
2 3
∇T c 1 ð x k Þ
6 7
Ak ¼ 4 ⋮ 5: ð15:17dÞ
∇ cm ðxk Þ
T
Ak δx ck , ð15:18bÞ
λkþ1 0, ð15:18cÞ
where
If δx is a regular solution of (15.19), that is the gradients of the constraints that are active at xk are
linearly independent, then (15.18a) can be written as
W k δx þ gk ATak lkþ1 ¼ 0,
where the rows of Aak are the rows of Ak satisfying the equality (Akδk þ ck)i ¼ 0 and lkþ1 is the
associated Lagrange multiplier vector. Therefore, lkþ1 can be computed as
1
lkþ1 ¼ Aak ATak Aak ðW k δx þ gk Þ: ð15:20Þ
Of course, from the complementarity conditions (15.18d) it follows that the Lagrange multiplier
λkþ1 can be obtained by inserting zeros where necessary in lkþ1. With this, the following algorithm
can be presented.
528 15 Sequential Quadratic Programming
1. Choose an initial point (x0, λ0) and set k ¼ 0. x0 and λ0 are chosen such that ci(x0) 0, i ¼ 1, . . ., m, and
λ0 0. Choose the sufficiently small convergence tolerance ε > 0
2. Evaluate: gk ¼ ∇ f(xk), c(xk), Ak and Wk
3. Solve the quadratic problem (15.19) to obtain a solution δx and from (15.20) compute the multiplier lkþ1
4. Set xkþ1 ¼ xk þ δk. If kδkk ε, then output x ¼ xkþ1 and stop. Otherwise, set k ¼ k þ 1 and go to step
2 ♦
Algorithm 15.3 is very close to the Algorithms 15.1 and 15.2. The main disadvantage of the
Algorithms 15.1, 15.2, and 15.3 is that, they may fail to converge when the initial point x0 is far away
from x. Another disadvantage is that they need to evaluate the Hessian of the Lagrangian which
combines the Hessian of the minimizing function with the Hessians of the constraints. Therefore,
these algorithms would require a large number of function evaluations, even for problems of
moderate size.
To ameliorate and to save their behavior, two modifications could be operational. The first one
uses a line-search method proposed by Han (1977), which enables the Algorithms 15.1, 15.2, and 15.3
to converge from arbitrary initial points. The second one approximates the Hessian of the Lagrangian
by using the BFGS updating formula. As in the BFGS algorithm for unconstrained optimization,
when starting with an initial positive definite approximation for the Hessian, all the subsequent
approximations will remain positive definite under a certain mild condition.
xkþ1 ¼ xk þ αk δx , ð15:21Þ
where δx is the solution of the quadratic problem (15.19) and αk is the stepsize obtained by a line-
search. Han (1977) suggested that the scalar αk should be computed by minimizing the one-variable
exact penalty function
Xm
φðαÞ ¼ f ðxk þ αδx Þ þ r i¼1 ½ci ðxk þ αδx Þ ð15:22Þ
on an interval [0, δ], where the length δ of the interval and the parameter r > 0 are fixed throughout the
minimization process and [ci(xk þ αδx)] ¼ max {0, ci(xk þ αδx)}. Observe that the second term in
the right-hand side of (15.22) is always nonnegative and contains only those constraints that violate
the nonnegativity condition in (15.13). The term “penalty function” used for φ(α) is related to the fact
that the value of φ(α) depends on how many constraints from (15.13) are violated at α and on the
degree of violation. Choosing an appropriate value for r, a line-search algorithm applied to φ(α) will
yield a value αk such that the objective function at xk þ αkdk is reduced with fewer violated constraints
and a reduced degree of violation. The difficulty with this approach is that the penalty function φ(α) is
not differentiable. However, efficient search methods for the minimization of the nondifferentiable
one-dimensional functions are available (see the direct methods from Chap. 9).
An alternative to this method for the determination of αk was suggested by Powell (1978c). In this
method, an inexact line-search is applied to the Lagrangian (15.14) with x ¼ xk þ αδk and λ ¼ λkþ1 to
obtain the following one-variable function
15.1 A Simple Approach to SQP 529
Xm
ψ ðαÞ ¼ f ðxk þ αδk Þ i¼1
ðλkþ1 Þi ci ðxk þ αδk Þ, ð15:23Þ
where (λkþ1)i is the i-th component of the vector λkþ1. Observe that if λkþ1 0, then the second term
in the right-hand side (15.23) acts as a penalty term since an α for which ci(xk þ αδk) < 0 will increase
the value of ψ(α). Powell suggested a method for determining αk by minimizing ψ(α) on the interval
[0,1]. Firstly, a line-search is performed to find the minimizer α1 of ψ(α) on [0,1], that is
Observe that ψ(α) is differentiable and hence efficient gradient algorithms can be used to
determine α1 : Next, from the transversality condition of the optimality conditions (15.18d), observe
that, if for a particular index i, ci ðxk Þ þ δTk ∇ci ðxk Þ ¼ 0, then (λkþ1)i ¼ 0 and in this case the term
(λkþ1)ici(xk þ αδk) is not present in function ψ(α) from (15.23). In other words, the constraints
ci(x) 0 for which (λkþ1)i ¼ 0 need to be dealt separately. Now, let us define the index set
I ¼ {i : (λkþ1)i ¼ 0} and evaluate
α2 ¼ min max fα : ci ðxk þ αδk Þ 0g:
i2I
With this stepsize αk, in order to compute lkþ1 and λkþ1 the increment δx in (15.20) needs to be
modified as αkδx. In addition, in step 4 of Algorithm 15.3, xkþ1 ¼ xk þ δk is modified as xkþ1 ¼ xk þ αkδx.
With this line-search included, the modified SQP algorithm turns out to be more robust in the sense
that it converges from arbitrary initial points.
W k δx δTx W k yk yTk
W kþ1 ¼ W k þ T : ð15:24Þ
δTx W k δx yk δx
If Wk is positive definite, then Wkþ1 obtained from (15.24) is also positive definite if and only if
yTk δx> 0: Obviously, this condition does not hold when the Lagrangian has a negative curvature for
the iterate (xkþ1, λkþ1). Powell proposed a method for overcoming this difficulty by replacing yk in
(15.24) by
ηk ¼ θyk þ ð1 θÞW k δx ,
Algorithm 15.3 can be easily adapted to include both the search step (15.21) and the BFGS
approximate to the Hessian (15.24).
Equality Constraints
Now, let us consider the nonlinear optimization problems with equality constraints
min f ðxÞ
subject to
hi ðxÞ ¼ 0, i 2 E,
where E ≜ {1, . . ., me} is the set of indices for the equality constraints. Suppose that the functions
f(x) and hi(x), i ¼ 1, . . ., me, are twice continuously differentiable and the feasible region determined
by the constraints is nonempty. The Lagrange function associated to this problem is
X
me
Lðx, λÞ ¼ f ðxÞ λi hi ðxÞ:
i¼1
The first-order optimality condition is ∇L(x, λ) ¼ 0. Then the formula for the Newton method is
xkþ1 ¼ xk þ dk ,
λkþ1 ¼ λk þ vk ,
where vk is the vector of the Lagrange multipliers. Observe that this system of linear equations
represents the first-order optimality conditions for the following optimization problem:
1
min dT ∇2xx Lðxk , λk Þ d þ dT ½∇x Lðxk , λk Þ
2
subject to
½∇hðxk ÞT d þ hðxk Þ ¼ 0:
But this is a quadratic program which is the minimization of a quadratic function subject to linear
constraints. In a sequential quadratic programming method, at each iteration, a quadratic program is
solved to get (dk, vk). This solution is used to update (xk, λk), and the process is repeated at the new
point.
Computing the updates dk and vk by solving the quadratic program corresponds to applying the
Newton method to the optimality conditions associated to the original problem. If the initial point is
close enough to the solution, then the method is quadratic convergent, provided that ∇2xx Lðx , λ Þis
nonsingular. The Hessian of the Lagrangian will be nonsingular if the regularity conditions (see
Remark 11.4) and the second-order sufficient conditions (see Theorem 11.13) for the original
optimization problem are satisfied, that is if ∇h(x) is of full rank and if Z T ∇2xx Lðx , λ ÞZ is positive
definite, where Z is a basis matrix for the null space of ∇h(x)T.
As in the case of nonlinear optimization problems with inequality constraints, for problems with
equality constraints, it is very easy to introduce the SQP with line-search step and the SQP with
approximate Hessian. The convergence results for the sequential quadratic programming method are
15.2 Reduced-Hessian Quasi-Newton Approximations 531
based on the idea that the approximation (xkþ1, λkþ1) is a better estimate of the solution than (xk, λk).
To determine the progress of the algorithm along the iterations, a merit function φ(.) is used. Usually,
a merit function is the sum of two terms: the objective function and the amount of infeasibility of the
constraints. If the new point reduces both the objective function and the infeasibility, then the value of
the merit function will decrease. However, for many problems, improvements in the objective value
come to increase the infeasibility and vice versa, so the merit function must balance these two goals.
Ideally, the merit function would be chosen in such a way that the solution (x, λ) would be a local
minimizer of the merit function if and only if it was a local solution of the optimization problem. If
this is the case, then a line-search with respect to the merit function could be performed as
xkþ1 ¼ xk þ αdk ,
λkþ1 ¼ λk þ αvk ,
where α is chosen such that φ(xkþ1, λkþ1) < φ(xk, λk). To be successful, the search direction from the
quadratic program would have to be a descent direction for the merit function. Unfortunately, it is
rarely possible to guarantee that the local minimizers of the merit function coincide with the local
solutions of the optimization problem.
Another point is when a quasi-Newton approximation to the Hessian is used to define the quadratic
program. Then the positive definiteness of the reduced Hessian is often guaranteed by the choice of
the quasi-Newton update formula. If the Newton method is used so that the Hessian in the quadratic
program is exactly ∇2xx Lðxk , λk Þ, then it is necessary to test if the Hessian is positive definite and, if
the case, to modify it by using, for example, the methods presented in Sect. 4.5 (Gill and Murray
modification of the Newton method). In the constrained nonlinear optimization, testing whether the
Hessian is positive definite is more complicated than in the unconstrained case.
Normally, near the solution, we would like to take a step α ¼ 1 in the line-search so that the
quadratic convergence rate of the Newton method could be achieved. Therefore, the merit function
should be chosen so that a step of α ¼ 1 is guaranteed to be accepted in the limit as the solution is
approached. However, this is not true for some merit functions.
Therefore, as we can see this naive or rudimentary approach of the sequential quadratic program-
ming has a number of deficiencies which preclude its applicability for solving large-scale problems.
Along the years, there has been considerable interest in understanding and improving the design
and implementation of algorithms based on the idea of sequential quadratic programming. Some of
these improvements, which are to be discussed in the next sections of this chapter, refer to enforcing
the convergence from remote starting points, handling inconsistent linearizations, full quasi-Newton
approximations, damped BFGS updating, reduced-Hessian quasi-Newton approximations, the merit
function in sequential quadratic programming using nonsmooth penalty functions or augmented
Lagrangians, second-order correction to overcome the Maratos effect, etc. In the following, we
describe some of these points needed to produce practical SQP algorithms able to solve large-scale
nonlinear optimization problems.
Let us consider the equality-constrained problem (15.1). By examining the KKT system (15.10), we
can observe that the part of step dk in the range space of A(xk)T is completely determined by
A(xk)dk ¼ h(xk). The Lagrangian Hessian∇2xx Lðxk , λk Þ affects only the part of dk in the orthogonal
subspace, i.e., the null space of Ak. Therefore, it seems reasonable to consider the quasi-Newton
methods that find approximations to only that part of ∇2xx Lðxk , λk Þ which affects the component of dk
532 15 Sequential Quadratic Programming
in the null space of Ak. This is the idea of the reduced-Hessian quasi-Newton approximations, which
we are to be detailed in this section. For this, we consider the solution of the step equations (15.10) by
means of the null-space approach presented in Sect. 13.1.
Let us define the matrices Yk and Zk whose columns span the range space of A(xk)T and the null
space of A(xk), respectively. Using these matrices, dk can be written as
dk ¼ Y k dY þ Zk dZ , ð15:26Þ
where dY is the normal component and dZ is the tangential component of dk. By substituting dk from
(15.26) in (15.10) the following system is obtained:
½Aðxk ÞY k dY ¼ hðxk Þ, ð15:27aÞ
T 2
Z k ∇xx Lðxk , λk ÞZ k d Z ¼ Z Tk ∇2xx Lðxk , λk ÞY k dY Z Tk ∇f ðxk Þ, ð15:27bÞ
to get the components dY and dZ, in this order. Observe that from the first line of (15.10) the Lagrange
multipliers λkþ1 can be computed by solving the linear system
½Aðxk ÞY k T λkþ1 ¼ Y Tk ∇f ðxk Þ þ ∇2xx Lðxk , λk Þd k : ð15:28Þ
In practical implementations, some simplifications are often considered. The idea is to avoid the
computation of ∇2xx Lðxk , λk Þ by introducing several approximations in the null-space approach.
One simplification in the null-space approach is to remove the cross term ZTk ∇2xx Lðxk , λk ÞY k d Y , in
(15.27b), thus obtaining the more simple system
T 2
Z k ∇xx Lðxk , λk ÞZk d Z ¼ Z Tk ∇f ðxk Þ: ð15:29Þ
Dropping the cross term is motivated when ZTk ∇2xx Lðxk , λk ÞZ k is replaced by a quasi-Newton
approximation because the normal component dY usually converges to zero faster than the tangential
component dZ, thereby making (15.29) a good approximation of (15.27b).
Another simplification consists in deleting the term involving dk from the right-hand side of
(15.28), thus decoupling the computations of dk and λkþ1. A motivation of this simplification is that
dk converges to zero as we approach the solution, whereas {∇f(xk)} does not. If we choose Yk ¼ A(xk)T
(when A(xk) has full row rank), we obtain
h i1
b
λkþ1 ¼ Aðxk ÞAðxk ÞT Aðxk Þ∇f ðxk Þ: ð15:30Þ
Often, the SQP methods use a merit function to see whether a trial step should be accepted. In the line-
search methods, the merit function controls the size of the step. In the trust-region methods, it
determines whether the step is accepted or rejected and whether the trust-region radius should be
adjusted. A variety of the merit functions was proposed in literature, including the nonsmooth penalty
functions (l1 merit function) and the augmented Lagrangians. For the step computation and evaluation
of a merit function, the inequality constraints are converted to equalities by introducing the slack
variables. Therefore, in the following, we consider only the nonlinear equality-constrained problem
(15.1).
15.3 Merit Functions 533
Another merit function was proposed by Wright (1976) and Schittkowski (1981, 1983) as
augmented Lagrangian
1
Lðx, σ, λÞ ¼ f ðxÞ λT hðxÞ þ σhðxÞT hðxÞ, ð15:32Þ
2
where λ is an estimation of the Lagrange multipliers and σ > 0 is the penalty parameter.
In a line-search method, a step αkdk is accepted if the following sufficient decrease condition holds:
where P0dk ðxk , σ k Þ is the directional derivative of P(.) in the direction dk and η is a parameter
sufficiently small, η 2 (0, 1). If dk is a descent direction, that is P0dk ðxk , σ k Þ < 0, then the reduction
(15.33) resembles the rule of Armijo used in the unconstrained optimization. The following theorem
shows that if σ is chosen sufficiently large, then the descent condition holds.
Theorem 15.3 Let dk and λkþ1 be generated by the system (15.10). Then, the directional derivative of
P(.) in the direction dk,satisfies
Moreover, we have
P0dk ðxk , σ k Þ d Tk ∇2xx Lðxk , λk Þdk σ kλkþ1 k1 khðxk Þk1 : ð15:35Þ
where γ is a positive constant which bounds the second derivative terms. If d ¼ dk is given by (15.10),
then A(xk)dk ¼ h(xk), so that for α 1 it follows that
h i
Pðxk þ αdk , σ Þ Pðxk , σ Þ α ∇f ðxk ÞT dk σ khðxk Þk1 þ α2 γ kdk k2 :
Now, since dk satisfies the first equation from the system (15.10), then
P0dk ðxk , σ k Þ ¼ d Tk ∇2xx Lðxk , λk Þdk þ dTk Aðxk ÞT λkþ1 σ khðxk Þk1 : ð15:36Þ
But from the second equation of the system (15.10), the term d Tk Aðxk ÞT λkþ1 from (15.36) can be
replaced by h(xk)Tλkþ1. Having in view the H€ older inequality (see Appendix A), we have
h(xk) λkþ1 kh(xk)k1kλkþ1k1, then, from (15.36), we obtain (15.35).
T
♦
A strategy for selecting σ, which is appropriate for both line-search and trust-region algorithms,
has in view the effect of the step on a model of the merit function. In (Nocedal, & Wright, 2006) a
quadratic model for function P(.) is defined as
μ
qσ ðdÞ ¼ f ðxk Þ þ ∇f ðxk ÞT d þ dT ∇2xx Lðxk , λk Þd þ σmðdÞ, ð15:37Þ
2
where m(d ) ¼ kh(xk) þ A(xk)dk1 and μ is a parameter to be defined. The strategy is as follows. After
computing a step dk, the penalty parameter σ is chosen large enough such that
qσ ð0Þ qσ ðdk Þ ρσ ½mð0Þ mðdk Þ, ð15:38Þ
for some value of the parameter ρ 2 (0, 1). Now, from (15.37) and (15.8b) it follows that the
inequality (15.38) is satisfied for
If the value of σ from the previous iteration of the SQP method satisfies (15.39), then it is left
unchanged. Otherwise, σ is increased so that it satisfies this inequality with some margins. The
constant μ is used to handle the situations in which the Hessian ∇2xx Lðxk , λk Þ is not positive definite. A
simple strategy for μ is
(
1, if dTk ∇2xx Lðxk , λk Þd k > 0,
μ¼ ð15:40Þ
0, otherwise:
In the constrained nonlinear optimization, we practically face two purposes. One is to minimize the
objective function and another one is to satisfy the constraints. A way to balance these competing
goals is to use the merit functions or the filters. The idea is that a step generated by an algorithm will
be accepted only if it leads to a sufficient reduction in the merit function or if it is acceptable to the
filter. However, the following situation may appear. Suppose that an algorithm for solving nonlinear
optimization problems generates a step that reduces the objective function value, but increases the
violation of the constraints, a phenomenon known as the Maratos effect (1978). The following
example due to Powell (1986b) illustrates this situation.
15.4 Second-Order Correction (Maratos Effect) 535
The solution of the problem is x1 ¼ 1, x2 ¼ 0 and the Lagrange multiplier is λ ¼ 3/2. Moreover,
∇2xx Lðx , λ Þ ¼ I:
Consider an iterate xk as xk ¼ [cosθ sin θ]T. We immediately see that xk is feasible for any value of
θ. Suppose that our algorithm computes the following step:
" #
sin 2 θ
dk ¼ , ð15:42Þ
sin θ cos θ
Hence,
kx k þ d k x k2 1
¼ ,
kxk x k22 2
i.e., this step tends Q-quadratically to the solution of the problem. However, if we insist and compute,
we find
Therefore, even if the considered step determines a Q-quadratic convergence, the values of the
objective function increase, and the constraints are more and more unsatisfied. This behavior occurs
for any value of θ although the initial point is arbitrarily close to the solution.
For this example, let us consider the sequential quadratic programming algorithm in which dk is
determined as solution of the quadratic program (15.8), in which ∇2xx Lðxk , λk Þ is replaced by
∇2xx Lðx , λ Þ ¼ I: Hence, consider the current point xk ¼ ½ cos θ sin θ T : Since
4 cos θ 1 2 cos θ
f ðxk Þ ¼ cos θ, ∇f ðxk Þ ¼ , Að x k Þ T ¼ ,
4 sin θ 2 sin θ
1 1
min d ð4 cos θ 1Þd1 þ 4d2 sin θ þ d21 þ d22
2 2
subject to
d2 þ d1 ctg θ ¼ 0:
which coincides with (15.42), showing the failure of the sequential quadratic programming
algorithm. ♦
The Maratos effect shows that for many merit functions a superlinear convergent step may not be
accepted, thus preventing the algorithm from a fast convergence. There are three ways to overcome
the Maratos effect. The first is to relax the line-search conditions. The second is to use a second-order
correction step dbk which satisfies P xk þ dk þ dbk < Pðxk Þ: In this way, dk þ dbk is an acceptable step
and it is still a superlinear convergent step. The third is to use the smooth exact penalty functions as
merit functions.
As we said, the technique for avoiding the Maratos effect is to introduce the second-order
corrections, as shown by Coleman and Conn (1982a, 1982b), Fletcher (1982), Mayne and Polak
(1982), Fukushima (1986), etc.
Suppose that the SQP algorithm has computed a step dk as solution of the subproblem (15.12). If
this step yields an increase in the merit function P(xk, σ), then a possible cause is that the linear
approximation of the constraints given by (15.12b) and (15.12c) is not accurate enough. To overcome
this situation, a natural solution is to re-solve (15.12) with the linear terms ci(xk) þ ∇ ci(xk)Td replaced
by the quadratic approximations
1
ci ðxk Þ þ ∇ci ðxk ÞT d þ d T ∇2 ci ðxk Þd: ð15:43Þ
2
However, the resulting subproblem with quadratic constraints is too difficult to solve. Instead, the
following procedure is used. The constraints are evaluated in the new point xk þ dk and then we make
use of their approximation by Taylor’s theorem
1
ci ðxk þ d k Þ ffi ci ðxk Þ þ ∇ci ðxk ÞT dk þ dTk ∇2 ci ðxk Þdk : ð15:44Þ
2
Assuming that the second-order step d, which is not known, will not be too different from dk, then
the last term in (15.43) can be approximated as
Therefore, by making this substitution in (15.43) and by using the approximation (15.44), the
following second-order correction subproblem is obtained:
1
min d2ℝn f ðxk Þ þ ∇f ðxk ÞT d þ d T ∇2xx Lðxk , λk Þd ð15:46aÞ
2
15.5 The Line-Search SQP Algorithm 537
subject to
∇ci ðxk ÞT d þ ci ðxk þ dk Þ ∇ci ðxk ÞT d k ¼ 0, i 2 E, ð15:46bÞ
∇ci ðxk ÞT d þ ci ðxk þ dk Þ ∇ci ðxk ÞT d k 0, i 2 I: ð15:46cÞ
Let dbk be the solution of (15.46). Observe that the second-order correction step implies the
evaluation of the constraints in the point xk þ dk, i.e., ci(xk þ dk), i 2 E [ I, which can be a laborious
activity. Therefore, a strategy is to use this correction step only if the increase in the merit function is
concomitant with an increase in the constraint norm. When the step dk is generated by the SQP
algorithm based on (15.12), then, near a solution satisfying the second-order sufficient conditions, the
algorithm based on (15.46) takes either the full step dk or the corrected step dk þ dbk
Taking into consideration the above developments, we can see that there is a large variety of line-
search SQP algorithms that differ in many respects, such as the way in which the Hessian approxi-
mation is computed (limited-memory BFGS that is suitable for large-scale problems), the step
acceptance mechanism using different techniques to avoid the Maratos effect, and the use of the
merit functions or of the filters. In the following, we present a practical line-search SQP algorithm for
solving the general nonlinear optimization problem (15.11). To keep the description as simple as
possible, the algorithm below does not include details to ensure the feasibility of the subproblem or
the second-order correction mechanisms. Instead, the algorithm is simply obtained by solving the
subproblem (15.12). Assume that the quadratic subproblem (15.12) is convex. Therefore, it can be
solved by means of the active-set methods for quadratic programming described in Chap. 13.
1. Choose an initial pair (x0, λ0), as well as the parameters η 2 (0, 1/2) and τ 2 (0, 1). Evaluate f(x0), ∇f(x0),
c(x0), and A(x0). If a quasi-Newton approximation of the Hessian of the Lagrange function is used, then
choose an initial n n symmetric and positive definite approximation B0; otherwise, compute
∇2xx Lðx0 , λ0 Þ: Set k ¼ 0
2. Test a criterion for stopping the iterations
3. Compute the search direction dk as solution of the quadratic subproblem (15.12). Let bλ be the
corresponding Lagrange multipliers
4. Set d λ ¼ b λ λk
5. Choose σ k to satisfy (15.39) with μ ¼ 1. Set αk ¼ 1
6. Inner while loop. Select η 2 (0, 1) and τα 2 (0, τ]. While
Pðxk þ αk dk , σ k Þ > Pðxk , σ k Þ þ ηαk P0dk ðxk , σ k Þ,
reset αk ¼ τααk; otherwise, go to step 7
7. Set xkþ1 ¼ xk þ αkdk and λkþ1 ¼ λk þ αkdλ
8. Evaluate f(xkþ1), ∇f(xkþ1), c(xkþ1), and A(xkþ1). If the case, evaluate ∇2xx Lðxkþ1 , λkþ1 Þ
9. If a quasi-Newton approximation method is used, then set
sk ¼ αkdk and yk ¼ ∇xL(xkþ1, λkþ1) ∇xL(xk, λkþ1)
and obtain Bkþ1 by updating Bk using a quasi-Newton method (BFGS)
10. Set k ¼ k þ 1 and go to step 2 ♦
538 15 Sequential Quadratic Programming
An efficient implementation of Algorithm 15.4 is to use the warm start procedure. The working set
for each quadratic programming subproblem is initialized with the working set of the previous SQP
iteration. In step 6 of the algorithm, where the inner while loop is implemented instead of a merit
function, a filter may be used. In step 9, the limited memory BFGS updating approach can be used,
especially for large-scale problems.
The easiest way to formulate a trust-region SQP method is to add a trust-region constraint to the
subproblem (15.12), as
1
min d2ℝn f ðxk Þ þ ∇f ðxk ÞT d þ dT ∇2xx Lðxk , λk Þd ð15:47aÞ
2
subject to
∇ci ðxk ÞT d þ ci ðxk Þ ¼ 0, i 2 E, ð15:47bÞ
kdk Δk : ð15:47dÞ
Even if the constraints (15.47b) and (15.47c) are compatible, it is often possible that the subprob-
lem (15.47) may not always have a solution because of the trust-region constraint (15.47d). To solve
this possible conflict between the linear constraints (15.47b), (15.47c), and (15.47d), it is not
appropriate to increase Δk until the set of the steps d satisfying the linear constraints has intersected
the trust-region. A more appropriate viewpoint is not to exactly satisfy the linearized constraints at
every step; instead, we try to improve the feasibility of these constraints at each step and to exactly
satisfy them only if the trust-region constraint permits it. This point of view can be implemented in
three ways: by relaxation methods, penalty methods, and filter methods.
kdk2 Δk , ð15:48cÞ
where rk 2 ℝm is the relaxation vector. The relaxation vector is selected as the smallest vector such
that (15.48b) and (15.48c) are consistent for some reduced value of the trust-region radius Δk. To
achieve this, first solve the subproblem
In the following, the step dk is computed by (15.48) and then the new iterate is defined as
xkþ1 ¼ xk þ dk. The new multiplier estimate λkþ1 is computed as
h i1
λkþ1 ¼ Aðxk ÞAðxk ÞT Aðxk Þ∇f ðxk Þ: ð15:51Þ
Now, for computing an approximate solution dk of (15.48), one method is the projected conjugate
gradient. The idea is to apply this algorithm to (15.48a, and 15.48b), monitoring the satisfaction of
the trust-region constraint (15.48c) and stopping the algorithm if the boundary of this region has been
reached or if a negative curvature has been detected. A merit function that takes into consideration
all these aspects is the nonsmooth l2 function P2(x, σ) ¼ f(x) þ σkh(x)k2. This merit function is
modeled by
1
qσ ðd Þ ¼ f ðxk Þ þ ∇f ðxk ÞT d þ dT ∇2xx L xk , λk d þ σmðd Þ, ð15:52Þ
2
where
mðdÞ ¼ khðxk Þ þ Aðxk Þdk2 : ð15:53Þ
The penalty parameter σ is selected large enough so as to satisfy (15.38). The acceptability of the
step dk is monitored by the ratio
A description of the trust-region SQP algorithm for solving the equality-constrained nonlinear
optimization problem (15.1), min{f(x) : h(x) ¼ 0}, is as follows Omojokun (1989), Lalee, Nocedal,
and Plantenga (1998), Nocedal and Wright (2006).
1. Choose the initial point x0 and the initial trust-region radius Δ0 > 0. Choose the constants ε > 0 and
η, γ 2 (0, 1). Set k ¼ 0
2. Evaluate f(xk), ∇f(xk), h(xk), and A(xk)
3. Compute the Lagrange multipliers: λkþ1 ¼ [A(xk)A(xk)T]1A(xk) ∇ f(xk)
4. If k∇f(xk) A(xk)Tλkk1 < ε and kh(xk)k1 < ε, then stop. xk is the solution of the problem
5. Solve the subproblem (15.49) with respect to yk
6. Compute the relaxation parameter rk ¼ A(xk)yk þ h(xk)
7. Compute ∇2xx Lðxk , λk Þ or a quasi-Newton approximation of it
8. Compute dk as solution of the quadratic programming subproblem (15.48)
9. Choose σ, large enough to satisfy (15.39)
10. Compute the ratio ρk ¼ aredk/predk
11. If ρk > η, then set xkþ1 ¼ xk þ dk, choose Δkþ1 to satisfy Δkþ1 Δk and go to step 12.
If ρk η, then set xkþ1 ¼ xk, compute Δkþ1 ¼ γkdkk and go to step 12
12. Set k ¼ k þ 1 and continue with step 2 ♦
540 15 Sequential Quadratic Programming
We can simply note that a second-order correction can be introduced to avoid the Maratos effect.
The main computational cost of this algorithm is given by the projected conjugate gradient iteration
for solving the quadratic programming subproblem (15.48).
where σ is the penalty parameter and [y] ¼ max {0, y}. When introducing the slack variables,
this problem is reformulated as
1 X X
min d,v,w,t f ðxk Þ þ ∇f ðxk ÞT d þ dT ∇2xx Lðxk , λk Þd þ σ ðvi þ wi Þ þ σ ti
2 i2E i2I
subject to ð15:56Þ
T
∇ci ðxk Þ d þ ci ðxk Þ ¼ vi wi , i 2 E,
∇ci ðxk ÞT d þ ci ðxk Þ ti , i 2 I,
v, w, t 0,
k d k1 Δ k :
The constraints of this problem are always consistent. Moreover, since the trust-region has been
defined by using the l1 norm, (15.56) is a smooth quadratic program which can be solved by means of
a quadratic programming algorithm.
To determine the acceptance of the step, the algorithm uses the l1 merit function
X X
Pðx, σ Þ ¼ f ðxÞ þ σ jci ðxÞj þ σ ½ci ðxÞ : ð15:57Þ
i2E i2I
Observe that qσ defined in (15.55) can be viewed as a model of the merit function (15.57) at xk, in
which we approximate each constraint function ci by its linearization and in which f is replaced by a
quadratic function whose curvature term includes information from both the objective and the
constraints.
After computing the step dk as solution of (15.56), from (15.54) the ratio ρk is computed by using
this time the above merit function and defining qσ by (15.55). The step is accepted or rejected
according to the standard trust-region rules, as described in Algorithm 15.5. Clearly, a second-order
correction step can be introduced in order to prevent the Maratos effect.
15.7 Sequential Linear-Quadratic Programming (SLQP) 541
As we have already seen, the SQP methods presented above require the solution of a general quadratic
programming problem with equality and inequality constraints at each iteration. However, this is a
difficult task, especially when the second derivative information is incorporated into the algorithm.
This approach imposes a limit on the size of the problem that can be solved in practice by these
methods.
The sequential linear-quadratic programming method, which we are going to briefly describe, tries
to overcome this situation by computing the step in two phases. In the first one, a linear programming
problem (LP) is formed and solved to identify a working set W. The second one consists of an
equality-constrained quadratic programming phase in which the constraints in the working set W are
imposed as equalities. The total step is a combination of the steps obtained in the linear programming
and equality-constrained phases.
In the LP phase, the following problem is solved:
kdk1 ΔLP
k : ð15:58dÞ
Observe that this linear programming problem differs from the standard SQP subproblem (15.47)
only in the fact that the second-order term dT ∇2xx Lðxk , λk Þd has been omitted and that a l1 norm has
been used to define the trust-region. Since the constraints of (15.58) may be inconsistent, instead of
(15.58), a l1 penalty reformulation is defined as
Introducing the slack variables, (15.59) can be reformulated as a linear programming problem. Let
dLP be the solution of (15.59). From this solution, the following explicit estimate of the optimal
active-set can be obtained:
n o n o
Ak d LP ¼ i 2 E : ci ðxk Þ þ ∇ci ðxk ÞT d LP ¼ 0 [ i 2 I : ci ðxk Þ þ ∇ci ðxk ÞT dLP ¼ 0 :
The working set Wk is defined as some linearly independent subset of the active-set Ak(dLP). To
ensure the progress of the algorithm on the penalty function (15.57), the Cauchy step is defined as
542 15 Sequential Quadratic Programming
dC ¼ αLP d LP , ð15:60Þ
where αLP 2 [0, 1] is the stepsize that provides sufficient decrease in the model qσ defined in (15.55).
With the working set Wk an equality-constrained quadratic programming is solved, where the
constraints in Wk are considered as equalities, ignoring all the others. Thus, the following subproblem
is obtained:
!T
1 T 2 X
min d f ðxk Þ þ d ∇xx Lðxk , λk Þd þ ∇f ðxk Þ þ σ k γ i ∇ci ðxk Þ d
2 i2V k
subject to ð15:61Þ
∇ci ðxk ÞT d þ ci ðxk Þ ¼ 0, i 2 E \ Wk,
∇ci ðxk ÞT d þ ci ðxk Þ ¼ 0, i 2 I \ Wk ,
kd k2 Δ k ,
where the scalars γ i represent the algebraic sign of the i-th violated constraint. Observe that the trust-
region constraint in (15.61) is spherical and Δk is different from the trust-region radius ΔLP k used in
(15.59). Let dQ be the solution of (15.61). The total step dk of the SLQP method is computed as
d k ¼ d C þ αQ dQ dC ,
where αQ 2 [0, 1] is the step size that approximately minimizes the model qσ defined in (15.55). Byrd,
Gould, Nocedal, and Waltz (2004a) argue that the choice of the radius ΔLP kþ1 for the LP phase is more
delicate, since it influences our guess of the optimal active-set. The value of ΔLP kþ1 should be set to be a
little larger than the total step dk, subject to some other restrictions. The Lagrange multiplier estimates
λk used in the evaluation of the Hessian ∇2xx Lðxk , λk Þ are computed as in (15.51) using the working set
Wk and modified so that λi 0, i 2 I. The advantage of using SLQP is that well-established algorithms
for solving large-scale versions of linear programming and equality quadratic subproblems are
readily available.
The algorithm described in this section, implements the above discussions as well as some other
ideas. It was elaborated by Gill, Murray, and Saunders (2002, 2005) to solve nonlinear optimization
problems of the following form:
min x2ℝn f ðxÞ
subject 2to 3 ð15:62Þ
x
6 7
l 4 cðxÞ 5 u,
Ax
where f is the objective function (linear or nonlinear), c(x) is the vector of nonlinear constraints, A is
the matrix corresponding to the linear constraints, and l and u are bounds on variables and on
constraints. Suppose that the nonlinear functions are smooth, their first derivatives are available
and the Jacobian of the constraints is a sparse matrix.
SNOPT is the implementation of a particular SQP algorithm that exploits the sparsity in the
constraint Jacobian and maintains a limited-memory quasi-Newton approximation Bk to the Hessian
15.8 A SQP Algorithm for Large-Scale-Constrained Optimization (SNOPT) 543
of the Lagrange function. To update Bk in the presence of the negative curvature, a new method is
used. The quadratic programming subproblems are solved using an inertia-controlling reduced-
Hessian active-set method (SQOPT). Other features include the treatment of infeasible nonlinear
constraints using elastic programming, the use of a well-conditioned nonorthogonal basis for the null
space of the quadratic programming working set, early termination of the quadratic programming
subproblems, and the finite-difference estimates of the missing gradients. The method used by the
quadratic programming solver SQOPT is based on solving a sequence of linear systems involving the
reduced Hessian ZTBkZ, where Z is implicitly defined by using the sparse LU factorization.
In the following, we present a technique for treating the infeasible constraints and then we show
how SNOPT is working for solving the general nonlinear optimization problem with the inequality
constraints min{f(x) : c(x) 0}. Finally, some particularizations of these developments will be
applied to problems with linear and nonlinear constraints (including simple bounds) given in (15.62).
Infeasible Constraints
In SNOPT, the infeasible constraints are treated by means of the l1 penalty functions. At the very
beginning, the infeasible linear constraints are identified by solving a problem of the following form:
min x,v,w eT ðv þ wÞ
subject to ð15:63Þ
x
l u, v 0, w 0,
Ax v þ w
where e is a vector with all the components equal to one. The problem (15.63) is to minimize the
one-norm of the general linear constraint violations subject to the simple bounds. This problem is
often called elastic programming (Conn, 1976), (Bartels, 1980). If the linear constraints are infeasible
(v 6¼ 0 and w 6¼ 0), then SNOPT stops without computing the nonlinear functions. Otherwise, all the
subsequent iterates satisfy the linear constraints. SNOPT then solves (15.62) by using the quadratic
programming subproblem based on the linearization of the nonlinear constraints. If a quadratic
programming subproblem is infeasible or unbounded (or if the Lagrange multiplier estimates for
the nonlinear constraints become large), SNOPT enters the nonlinear elastic mode and solves the
problem
where f(x) þ γeT(v þ w) is known as the composite objective function and the penalty parameter
γ (γ 0) may take a finite sequence of increasing values. If (15.62) has a feasible solution and
γ is large enough, then the solutions of (15.62) and (15.64) are identical. On the other hand, if
(15.62) has no feasible solution, then (15.64) will tend to determine an infeasible point if γ is
sufficiently large.
544 15 Sequential Quadratic Programming
where x 2 ℝn, f(x) : ℝn ! ℝ, c(x) : ℝn ! ℝm are twice continuously differentiable. Suppose that a
KKT point (x, λ) exists, where the first-order optimality conditions are satisfied
The sequential quadratic programming method involves major and minor iterations. The major
iterations generate a sequence of iterates (xk, λk) that converge to (x, λ). At each iteration, a
quadratic programming subproblem is solved to generate a search direction towards the next iteration
(xkþ1, λkþ1). Solving the quadratic subproblems is based on an iterative procedure involving the
so-called minor iterations.
Let xk and λk be estimates of x and λ. Gill, Murray, and Saunders (2005) use the following
modified Lagrange function associated to (15.65):
This idea is taken from the MINOS algorithm. In fact, SNOPT is an improved extension of
MINOS (Saunders, 2015a, 2015b). The first and the second derivatives of the modified Lagrangian
are as follows:
Observe that for x ¼ xk we have L(xk, xk, λk) ¼ f(xk) and ∇L(xk, xk, λk) ¼ ∇ f(xk).
15.8 A SQP Algorithm for Large-Scale-Constrained Optimization (SNOPT) 545
Now, let
1
Lq ðx, xk , λk Þ ¼ f ðxk Þ þ ∇f ðxk ÞT ðx xk Þ þ ðx xk ÞT ∇2 Lðxk , xk , λk Þðx xk Þ
2
be the quadratic approximation of L at xk. If (xk, λk) ¼ (x, λ), then the optimality conditions for the
quadratic program
min x Lq ðx, xk , λk Þ
subject to ð15:70Þ
cL ðx, xk Þ 0
are identical to those of the original problem (15.65). This suggests that if Bk is an approximation to
∇2L at the point (xk, λk), then an improved estimate of the solution may be obtained from xbk , b
λk as
the solution of the following quadratic programming subproblem:
1
min x f ðxk Þ þ ∇f ðxk ÞT ðx xk Þ þ ðx xk ÞT Bk ðx xk Þ
2
subject to ð15:71Þ
cðxk Þ þ ∇cðxk Þðx xk Þ 0:
The working set matrix The working set is important for both major and minor iterations and
represents the set of constraints that are binding at a solution (see Definition 11.12). If the subproblem
(15.71) has been solved, then the algorithm which solves this problem returns an independent set of
constraints that are active at the solution. This is the optimal working set for the subproblem (15.71).
The same constraint indices define the working set of (15.65) and of the next subproblem (15.71) at
the iteration k þ 1. The corresponding gradients of these constraints form the rows of the working set
matrix Wk, an nY n full rank submatrix of the Jacobian ∇c(xk). Let Zk be an n nZ full rank matrix
which is a basis of the null space of Wk. Then WkZk ¼ 0 and nZ ¼ n nY. In SNOPT, Zk is defined by
the LU factorization of Wk. The matrix Zk is useful both in theoretical developments and in the
construction of the reduced Hessian Z Tk Bk Z k and of the reduced gradient ZTk ∇f ðxk Þ:
The merit function and the line-search Let (xk, λk, sk) be the current solution of (15.71). As soon as
we have a solution xbk , b
λk , b
sk for (15.71), a new estimation for the solution of (15.65) can be
computed by means of a linear search from (xk, λk, sk) towards the optimal solution of (15.71). The
purpose of the linear search is a sufficient decrease of a merit function based on the augmented
Lagrangian
546 15 Sequential Quadratic Programming
1X
m
Mσ ðx, λ, sÞ ¼ f ðxÞ λT ðcðxÞ sÞ þ σ ðc ðxÞ si Þ2 , ð15:72Þ
2 i¼1 i i
where σ ¼ [σ 1, . . ., σ m]T 2 ℝm is the vector of the penalty parameters. For the stepsize α 2 (0, 1], let
v(α) be the following line:
2 3 2 3
xk xbk xk
6 7 6 7
vðαÞ ¼ 4 λk 5 þ α4 bλk λk 5
sk b
sk sk
and φσ (α) ¼ Mσ (v(α)), which represents Mσ as a function by α. Observe that φ0σ ð0Þ is the directional
derivative of the merit function at the base point α ¼ 0 for a given σ. To determine the values of the
penalty parameters, Gill, Murray, and Saunders (2005) recommend the following procedure. Let σ
be the solution of the following least-squares problem:
min kσ k2
subject to ð15:73Þ
1
φ0σ ð0Þ ¼ ðxbk xk ÞT Bk ðxbk xk Þ, σ 0:
2
The solution of this problem can be obtained analytically and it can be shown that for any σ σ ,
φ0σ ð0Þ 12 ðxbk xk ÞT Bk ðxbk xk Þ, (Eldersveld, 1991), (Gill, Murray, Saunders, and Wright, 1992).
It is important to allow the penalty parameters to decrease during the early major iterations. The
reduction scheme involves a parameter Δσ 1. Let b σ be the value of the penalty parameter at the start
of the iterate k. Then define the new parameter σ i as the geometric mean of σ i and σ i as long as this
mean is sufficiently positive and not too close to σ i:
σ i ¼ max σ i , b
σi , ð15:74Þ
where
8
< σi, if σ i < 4 σ i þ Δσ ,
σ i ¼ qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
b
: σ i σ i þ Δσ , otherwise:
Initially, for k ¼ 0, Δσ ¼ 1. This value of Δσ can be increased by a factor of two in order to ensure a
positive value for σ i and not too close to σ i.
Now, considering σ ¼ σ in the merit the function (15.72), a safeguarded line-search is used to find
αkþ1 that reduces Mσ to give the next solution estimate v(αkþ1) ¼ (xkþ1, λkþ1, skþ1). With this, prior to
the solution of (15.71) at the iteration k þ 1, skþ1 is redefined to minimize the merit function as a
function of s, (Gill, Murray, Saunders, and Wright, 1986), (Eldersveld, 1991).
Bounding the constraint violation In the line-search, the following condition is enforced for some
vector b > 0:
cðxk þ αk ðxbk xk ÞÞ b:
SNOPT uses bi ¼ τv max {1, ci(x0)}, where τv is a constant, for example, τv ¼ 10. This defines a
region in which the objective function is expected to be defined and bounded below. If αk ¼ 0, then
15.8 A SQP Algorithm for Large-Scale-Constrained Optimization (SNOPT) 547
the objective is considered to be “unbounded” in the expanded region. In this case, the elastic program
is introduced.
The approximate Hessian As soon as the line-search has been finished, the change in x and the
gradient of the modified Lagrangian are defined as
sk ¼ xkþ1 xk , yk ¼ ∇Lðxkþ1 , xk , λÞ ∇Lðxk , xk , λÞ,
for some vector λ. Then, an estimate of the curvature of the modified Lagrangian along sk is
incorporated in the BFGS quasi-Newton update
yk yTk Bk sk sTk Bk
Bkþ1 ¼ Bk þ T : ð15:75Þ
yTk sk sk Bk sk
When Bk is positive definite, then Bkþ1 is positive definite if and only if the curvature yTk sk is
positive. From (15.67) observe that
yk ¼ ∇Lðxkþ1 , xk , λkþ1 Þ ∇Lðxk , xk , λkþ1 Þ
¼ ∇f ðxkþ1 Þ ∇f ðxk Þ ð∇cðxkþ1 Þ ∇cðxk ÞÞT λkþ1 :
Maintaining the positive definiteness of the Hessian Since the Hessian of the modified Lagrangian
need not be positive definite at a local minimizer, the approximate curvature yTk sk can be negative or
very small at points arbitrarily close to (x, λ). The curvature is considered not sufficiently positive if
where η 2 (0, 1) is a given constant (0 < η < 1) and dk ¼ xbk xk is the search direction defined by the
quadratic programming subproblem (15.71). In such cases, if the problem has nonlinear constraints,
two attempts are made to modify the update: the first is modifying sk and yk, the second is modifying
only yk. If neither modification provides a sufficiently positive approximate curvature, then no update
is made.
The first modification Define a new point zk and evaluate the nonlinear functions in order to obtain
the new values for sk ¼ xkþ1 zk and yk ¼ ∇ L(xkþ1, xk, λkþ1) ∇ L(zk, xk, λkþ1). The point zk is
chosen as the first feasible point xk of (15.71). The search direction may be written as
d k ¼ ðxk xk Þ þ ðxbk xk Þ dR þ dN :
so that yTk sk approximates the curvature along dN. If Wk is the final working set of (15.71) at xk, it is
also the working set at xk , then WkdN ¼ 0. Therefore, yTk sk approximates the curvature for the reduced
Hessian, which must be positive semi-definite at the minimizer of (15.65).
The second modification If (xk, λk) is not close to (x, λ), then the modified approximate curvature
yTk sk may not be sufficiently positive. Hence, the second modification may be necessary as follows.
Choose Δyk so that (yk þ Δyk)Tsk ¼ ρk and redefine yk as yk þ Δyk. This approach was suggested by
Powell (1978b), who proposed to redefine yk as a linear combination of yk and Bksk.
548 15 Sequential Quadratic Programming
The elements ωi, i ¼ 1, . . ., m, are determined by solving the linearly constrained least-squares
problem
min ω kωk22
subject to ð15:79Þ
aT ω ¼ β, ω 0,
where β ¼ ρk yTk sk and ai ¼ viwi, i ¼ 1, . . ., m, with v ¼ (∇c(xkþ1) ∇ c(xk))Tsk and w ¼ dL(xkþ1, xk).
The idea is to choose the smallest ωi that increases yTk sk to ρk (see (15.76)). If there is no solution for
the problem (15.79) or if kωk is very large, no update of the Hessian is made. It is worth mentioning
that the second modification is not required in the neighborhood of a solution because ∇2LA converges
to ∇2L when x ! x and the first modification will have already been successful. The second
modification is related to updating an approximation of the Hessian of the Lagrangian suggested by
Han (1976) and Tapia (1974).
Convergence tests A point (x, λ) is a satisfactory solution for (15.65) if it satisfies the first-order
optimality conditions (15.66) within a certain tolerance. In SNOPT, two sufficiently small constants
τP and τD are used, which define the quantities τx ¼ τP(1 þ kxk1) and τλ ¼ τD(1 þ kλk1). The SQP
algorithm terminates if
ci ðxÞ τx , λi τλ , ci ðxÞλi τλ , d j τλ , ð15:80Þ
where γ takes the increasing values {γ l} up to some maximum value. The first-order optimality
conditions for (15.81) include
0 λi γ, ðci ðxÞ þ vi Þλi ¼ 0, vi ðγ λi Þ ¼ 0: ð15:82Þ
The fact that kλk1 γ at the solution of (15.81) leads us to initiate the elastic mode if kλkk1
exceeds some value, let us say γ 1, or if (15.71) is infeasible. SNOPT uses
15.8 A SQP Algorithm for Large-Scale-Constrained Optimization (SNOPT) 549
In SNOPT, this subproblem is solved by the package SQOPT (Gill, Murray, and Saunders, 1997),
which employs a two-phase active-set algorithm and implicitly implements the elastic programming
when necessary. The Hessian Bk may be positive semi-definite and is defined by a routine for forming
the products Bkv for a given vector v.
At each minor iteration, when (15.84) is solved, the active-set method determines a search
direction d satisfying the KKT system
" #
Bk W T d g
¼ q , ð15:85Þ
W 0 y 0
where W is the current working set matrix and gq is the gradient of the objective function from
(15.84). SQOPT implements several null-space methods, as described in (Gill, Murray, and Saunders,
2005).
The null-space approach One way to obtain a solution for the linear system (15.85) is to solve the
reduced Hessian system
ZT Bk Zd Z ¼ ZT gq , d ¼ Zd Z , ð15:86Þ
where Z is a basis for the null space of W. SQOPT maintains Z in the reduced-gradient form as in
MINOS. The idea is to use the sparse LU factors of a square nonsingular matrix B, called basis, whose
columns change as the working set Wchanges
2 3
B1 S
B S N 6 7
W¼ P, Z ¼ PT 4 I 5 , ð15:87Þ
0 0 I
0
where P is a permutation matrix such that the selected basis B is nonsingular. The variables associated
with B and S are called basic and superbasic, respectively. The other variables are called nonbasic.
The number of the superbasic variables nZ is exactly the column dimension of S and Z. The products
Zv and ZTg are obtained by solving the corresponding systems with B or BT, respectively. If nZ is
550 15 Sequential Quadratic Programming
small, then SQOPT uses the dense Cholesky factorization ZTBkZ ¼ RTR. As the major iterations
converge, the quadratic programming subproblems require fewer changes to their working set, and
with a warm start they are eventually solved in one or two minor iterations. Hence, the work required
by SQOPT becomes dominant by the computation of the reduced Hessian ZTBkZ and its factor R. For
this reason, SQOPT can optionally maintain a quasi-Newton approximation ZTBkZ ffi RTR, as in
MINOS.
The conjugate gradient approach By construction, the Hessians Bk of (15.84) are positive definite or
positive semi-definite. Therefore, the conjugate gradient method is a natural tool for solving the very
large systems (15.85). SQOPT includes a conjugate gradient option for finding approximate solutions
to
T
Z Bk Z þ δ2 I dZ ¼ ZT gq , ð15:88Þ
where δ ffi 103 is a small regularization parameter to allow for the singular ZTBkZ. When Z has many
columns, then it is possible for the conjugate gradient methods to require many iterations to get a
useful approximation to dZ. The conjugate gradient methods require some sort of preconditioning,
which is much dependent on the system to be solved. However, in SQOPT no preconditioner is used.
The explanation is that, when looking at (15.88), we see that both Bk and ZTZ have similar structures:
“a diagonal matrix plus a matrix of small rank.”
The initial point To use a good starting point x0, the algorithm SQOPT is applied to one of the
proximal-point problems for initialization
x
min x kx x0 k1 : l u ð15:89Þ
Ax
or
x
min x kx x0 k22 : l u ð15:90Þ
Ax
where l and u are the corresponding bounds for the linear constraints and the simple bounds from
(15.84). x and x0 correspond to the nonlinear variables in x and x0. In practice, (15.89) is preferred
because it is linear and can use SQOPT’s implicit elastic bounds. The solution of (15.89) (or (15.90))
defines a new starting point x0 for the SQP iteration.
SNOPT, as described by Gill, Murray, and Saunders (2005), is a complex algorithm with plenty of
details which are not presented here. They refer to the following: null-space computation, choices for
multipliers, large-scale Hessians in case of problems with few nonlinear variables, dense Hessians,
limited-memory procedure to the update Hessians, elastic bounds, inertia control, unbounded qua-
dratic programming subproblems, basis handling in SQOPT, threshold pivoting in the LU factoriza-
tion, basis repair in the singular case, basis repair in the rectangular case, undefined functions, early
termination of quadratic programming subproblems, and linearly constrained problems. Suppose that
a starting point (x0, λ0) is available and that the reduced-Hessian quadratic programming solver
SQOPT is being used. The main steps of SNOPT are as follows.
15.8 A SQP Algorithm for Large-Scale-Constrained Optimization (SNOPT) 551
1. Apply the quadratic programming solver to the problem (15.89) (or (15.90)) to find a point close to x0
satisfying the linear constraints and the simple bounds on variables. If (15.89) is infeasible, then the
problem (15.62) is infeasible. Otherwise, a working set matrix W0 is obtained. Set k ¼ 0 and evaluate the
functions and the gradients at x0. Initialize the penalty parameters σ i ¼ 0, i ¼ 1, . . ., m
2. Factorize Wk
3. Define sk to minimize the merit function (15.72) as a function of the slacks s
4. Determine xk as a feasible solution for (15.84). This is an intermediate point for the SQOPT solver,
which also provides a working set matrix W k as well as its null space Z k : If no feasible point exists,
initiate the elastic mode and restart the SQOPT solver
5. T
Compute the reduced Hessian Z k Bk Z k and compute its Cholesky factor
6. Using SQOPT, continue solving the quadratic programming subproblem (15.84) to find xbk , bλk :
Observe that in step 4, only a feasible solution was obtained for (15.84). SQOPT provides a working set
b k as well as its null-space matrix Zbk
W
If the elastic mode has not been initiated, but bλk is “large,” then enter the elastic mode and restart the
1
SQOPT solver
If the subproblem (15.84) is unbounded and xk satisfies the nonlinear constraints, the problem
(15.62) is unbounded ( fis unbounded below in the feasible region). Otherwise, if (15.84) is unbounded,
go to step 8
7. If the solution (xk, λk) satisfies the convergence tests for (15.62) analogously to (15.80), then this is the
optimal solution of the problem; stop
If the convergence tests similar to (15.80) are satisfied for the subproblem (15.81), then go to step
8. Otherwise, go to step 9
8. If the elastic mode of (15.84) has not been initiated, then consider the elastic variant of the problem and
repeat step 6. Otherwise, if γ has not reached its maximum value, increase γ and repeat step
6. Otherwise, declare the problem (15.62) infeasible
9. Update the penalty parameters as in (15.74)
10. Find a stepsize αk that gives a sufficient
reduction
in the merit function (15.72). Set xkþ1 ¼
xk þ αk ðxbk xk Þ and λkþ1 ¼ λk þ αk bλk λk : Evaluate the functions and the gradients at the new
point xkþ1
11. Compute sk ¼ xkþ1 xk, yk ¼ ∇ L(xkþ1, xk, λkþ1) ∇ L(xk, xk, λkþ1). If yTk sk < ρk , where ρk is
computed as in (15.76), then re-compute sk and yk with xk redefined as xk þ αk ðxk xk Þ: (This requires
an extra evaluation of the derivatives.) If necessary, increase yTk sk (if possible) by increasing yk with Δyk
and by redefining the difference of the gradients of the augmented Lagrangian (see (15.77))
12. If yTk sk ρk , then apply the BFGS formula to update Bk by using the pair (Bksk, yk)
13. Using W b k , redefine Wk, set k ¼ k þ 1 and go to step 2 ♦
For both linearly and nonlinearly constrained problems, SNOPT applies a sparse sequential
quadratic programming method (Gill, Murray, and Saunders, 2005), using limited-memory quasi-
Newton approximations to the Hessian of the Lagrangian. The merit function for the stepsize
computation is an augmented Lagrangian, as in the dense SQP solver NPSOL (Gill, Murray,
Saunders, & Wright, 1986). The computational effort is in steps 2 and 5, where the matrix Wk is
T
factorized, and the reduced Hessian Z k Bk Zk is formed, and Cholesky factorized.
Table 15.1 Performances of SNOPT for solving 12 applications from the LACOP collection. Small-scale nonlinear
optimization applications
Table 15.2 Performances of SNOPT for solving 6 applications from the LACOP collection. Large-scale nonlinear
optimization applications
In Tables 15.1 and 15.2, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the
number of inequality constraints, #itM ¼ the number of major iterations, #itm ¼ the number of minor iterations, #nf ¼
the number of evaluations of the objective function, #nr ¼ the number of evaluations of the constraints, #s ¼ the number
of superbasic variables, cpu ¼ the CPU computing time to solve the problem (seconds), and vfo ¼ the value of the
objective function at the optimal point.
Table 15.2 presents the performances of SNOPT for solving 6 large-scale nonlinear optimization
applications from the LACOP collection of different dimensions.
SNOPT uses many concepts defined in MINOS. A comparison between these two algorithms
shows the importance of the sequential quadratic programming implemented in SNOPT versus the
minimization of the augmented Lagrangian subject to the linearization of the constraints used in
MINOS. For all these 15 large-scale numerical experiments shown in Tables 14.12 (MINOS) and
15.2 (SNOPT), respectively, Table 15.3 shows the total number of major iterations (#itMt), the total
15.9 A SQP Algorithm with Successive Error Restoration (NLPQLP) 553
Table 15.3 Comparison: MINOS versus SNOPT for solving 15 large-scale applications from the LACOP collection.
Large-scale nonlinear optimization applications
number of minor iterations (#itmt), and the total CPU computing time (cput) in seconds, to get a
solution for all these applications.
Let us consider the general nonlinear optimization problem with equality and inequality constraints
min f ðxÞ
subject to ð15:91Þ
ci ðxÞ ¼ 0, i ¼ 1, . . . , me ,
ci ðxÞ 0, i ¼ me þ 1, . . . , m,
For solving this problem, we shall present the sequential quadratic programming with the
successive error restoration algorithm NLPQLP, elaborated by Schittkowski (1986, 2002, 2005,
2009, and 2010). Since the sequential quadratic programming is sensitive to the accuracy by which
the partial derivatives are provided, NLPQLP is stabilized by a non-monotone line-search and by
internal and external restarts in case of errors when computing the search direction due to inaccurate
derivatives.
Search Direction
The basic idea is to formulate and solve a sequence of quadratic programming subproblems obtained
by the linearization of the constraints and by approximating the Lagrangian function
X
m
Lðx, uÞ ¼ f ðxÞ ui c i ð x Þ ð15:92Þ
i¼1
quadratically, where x 2 ℝn is the vector of the primal variables and u ¼ [u1, . . ., um]T 2 ℝm is the
vector of the dual variables or the vector of the Lagrange multipliers.
1
min ∇f ðxk ÞT d þ dT Bk d
2
subject to ð15:93Þ
T
∇ci ðxk Þ d þ ci ðxk Þ ¼ 0, i ¼ 1, . . . , me ,
∇ci ðxk ÞT d þ ci ðxk Þ 0, i ¼ me þ 1, . . . , m:
Let dk be the optimal solution and uk the corresponding Lagrange multipliers of (15.93). A new
iteration is computed as
xkþ1 xk dk
¼ þ αk , ð15:94Þ
vkþ1 vk uk v k
In (15.96), κ(k, i) k represents the previous iterations where the corresponding gradient has been
ð0Þ ð0Þ
last evaluated. We start with I 1 ¼ I and I 2 ¼ ∅: At the subsequent iterations, only the constraint
ðk Þ
gradients belonging to the active-set I 1 are reevaluated. The remaining rows of the Jacobian matrix
remain filled with the previously computed gradients. In (15.96), ρk > 0 is a parameter sufficiently
small.
Let (dk, δk, uk) be the solution of (15.96), where uk is the vector of the multipliers and δk is the
additional variable introduced to prevent the inconsistency of the linear constraints. If the linear
independency of the constraints qualification (LICQ) is satisfied (see Remark 11.2), then δk < 1. The
matrix Bk is a positive definite approximation of the Hessian to the Lagrange function. For the global
convergence analysis, any choice of Bk is appropriate as long as its eigenvalues are bounded away
from zero. However, to guarantee a superlinear convergence rate, Bk is updated by the BFGS quasi-
Newton method modified by a stabilization procedure to ensure the positive definiteness. The penalty
parameter ρk is required to reduce the perturbation of the search direction by the additional variable δ
as much as possible. A suitable choice is given in Schittkowski (1983).
15.9 A SQP Algorithm with Successive Error Restoration (NLPQLP) 555
Stepsize Computation
The stepsize parameter αk is required in (15.94) in order to enforce the global convergence of the SQP
method when the initial point x0 is arbitrarily selected and v0 ¼ 0, B0 ¼ I. The stepsize αk should
satisfy at least a sufficient decrease condition of a merit function Φσ (α) given by
x d
Φσ ðαÞ≜Pσ þα , ð15:97Þ
v uv
where Pσ (x, v) is a suitable penalty function, for example, the augmented Lagrange function
X
1
1 X v2i
Pσ ðx, vÞ ¼ f ðxÞ vi ci ðxÞ σ i ci ðxÞ2 , ð15:98Þ
i2J
2 2 i2K σ i
The objective function is penalized as soon as an iterate has left the feasible region. The penalty
parameters σ i, i ¼ 1, . . ., m, control the degree of the constraint violation. To guarantee a descent
direction of the merit function, σ i are chosen such that
0 T dk
Φσ k ð0Þ ¼ ∇Pσk ðxk , vk Þ < 0: ð15:99Þ
uk v k
Usually, the stepsize αk is computed by means of the Armijo rule, i.e., a sufficient descent
condition of the merit function (15.98) which guarantees the convergence to a stationary point.
However, to take into consideration the curvature of the merit function, we need some kind of
compromise between a polynomial interpolation, typically a quadratic one, and a reduction of the
stepsize by a given factor until a stopping criterion has been reached (Schittkowski, 2010). The
determination of the stepsize αk is very important in the economy of the NLPQLP algorithm. The
purpose is not to have too many function calls in the procedure for the αk computation. Moreover, the
behavior of the merit function becomes irregular in the case of the constrained optimization because
of the very steep slopes at the border caused by the large penalty terms. The implementation of a
procedure for the αk computation is more complex if the linear constraints and the simple bounds on
variables are to be satisfied during the line-search. Since Φσ (0), Φ0σ ð0Þ and Φσ (αi) are known (αi is the
current value of the stepsize), then a procedure based on the quadratic interpolation for the αkþ1
computation is as in the following fragment of the algorithm:
1. Choose the parameters 0 < β < 1 and 0 < μ < 1/2. Consider σ ¼ σ k. Set α0 ¼ 1 and i ¼ 0
2. If Φσ ðαi Þ < Φσ ð0Þ þ μαi Φ0σ ð0Þ, then stop; otherwise, go to step 3
3. α2i Φ0σ ð0Þ
Compute: αi ¼ 12 αi Φ0σ ð0ÞΦσ ðαi ÞþΦσ ð0Þ
4. Let αi ¼ max fβαi , αi g: Set i ¼ i þ 1 and go to step 2 ♦
The algorithm is well known, see for example (Powell, 1978b). αi is the minimizer of the quadratic
interpolation polynomial. For checking the termination, the Armijo descent property is used. The
computation of αi in step 4 of the algorithm as αi ¼ max fβαi , αi g is required to avoid the irregular
556 15 Sequential Quadratic Programming
values, since the minimizer of the quadratic interpolation polynomial can be outside the feasible
region [0, 1]. Schittkowski mentions that Algorithm 15.7 is equipped with some safeguards to
prevent, for example, the violation of the bounds. In Algorithm 15.7, it is supposed that Φσ (1) is
known before calling it. Moreover, the algorithm stops if sufficient descent is not observed after a
certain number of iterations. If the tested stepsize falls below the machine precision, then the merit
function cannot decrease further on. Algorithm 15.7 could break down because of too many
iterations. In this case, Schittkowski recommends proceeding from a descent direction of the merit
function when Φ0σ ð0Þ is extremely small. In order to avoid the interruption of the whole iteration
process of NLPQLP, another criterion is used instead of the criterion in step 2 of Algorithm 15.7. The
idea is to repeat the line-search with another stopping criterion. Instead of testing (15.98), the stepsize
αk is accepted as soon as the inequality
Φσk ðαk Þ max ktðkÞ j k Φσj ð0Þ þ μαk Φ0σ k ð0Þ, ð15:100Þ
has been satisfied, where tðkÞ ¼ min fk, tg, and t is a given parameter. Thus, an increase of the
reference value Φσ j is allowed, i.e., an increase of the merit function value. To implement (15.100), it
is necessary to store the previous values of the merit function from the first t(k) iterations. The
nonmonotone search goes back to Grippo, Lampariello, and Lucidi (1986) and was extended to the
trust-region methods for the constrained optimization by Bonnans, Panier, Tits, and Zhou (1992),
Deng, Xiao, and Zhou (1993), Grippo, Lampariello, and Lucidi (1989, 1991), Raydan (1993, 1997),
Panier and Tits (1991), Toint (1996, 1997).
qk qTk Bk sk sTk Bk
Bkþ1 ¼ Bk þ T , ð15:101Þ
sTk qk s k Bk s k
where qk ¼ ∇xL(xkþ1, uk) ∇xL(xk, uk) and sk ¼ xkþ1 xk. The algorithm is equipped with special
safeguards guarantee that ensures the curvature condition sTk qk > 0: In this case, if B0 is positive
definite, then all the matrices Bk generated by (15.101) remain positive definite along the iterations.
The algorithm contains a scaling and a restart procedure to replace an actual Bk by γ kI before
performing the update (15.101), where γ k ¼ sTk qk =sTk sk , (Liu, & Nocedal, 1989).
The main steps of the NLPQLP algorithm are as follows.
1. Choose an initial point x0, an initial approximation to the Hessian of the Lagrange function B0 and the
tolerances ε1 and ε2. Set k ¼ 0
2. Compute f(xk), c(xk), ∇f(xk), and ∇c(xk)
3. Compute dk as solution of the quadratic programming subproblem (15.96)
4. Compute the stepsize by means of Algorithm 15.7
5. If the KKT optimality conditions are satisfied with the tolerance ε1 and the norm of the gradient of the
Lagrange function is smaller than the tolerance ε2, then stop; otherwise, go to step 6
6. Using (15.101), update Bk
7. Compute a new Cholesky factorization of Bk
8. Set k ¼ k þ 1 and continue with step 2 ♦
15.10 Active-Set Sequential Linear-Quadratic Programming (KNITRO/ACTIVE) 557
Table 15.4 Performances of NLPQLP for solving 8 applications from the LACOP collection. Small-scale nonlinear
optimization applications
In Table 15.4, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #iter ¼ the number of iterations to get a local optimal solution, #nf ¼ the number of evaluations
of the functions of the problem, #ng ¼ the number of the evaluations of the gradients of the functions, #nq ¼ the number
of the quadratic programming subproblems solved to get a local optimal solution of the problem, KKT ¼ the norm of the
KKT conditions, cpu ¼ the CPU computing time for solving the problem (seconds), and vfo ¼ the value of the objective
function at the solution.
KNITRO represents one of the most elaborated algorithms (and Fortran packages) for solving general
large-scale nonlinear optimization problems (Byrd, Gould, Nocedal, & Waltz, 2004a). This is
characterized by great flexibility and robustness, integrating two very powerful and complementary
algorithmic approaches for nonlinear optimization: the active-set sequential linear-quadratic
approach and the interior-point approach. KNITRO includes a number of much-studied algorithms
for linear algebra, very carefully implemented in computing programs, able to solve a large variety of
558 15 Sequential Quadratic Programming
nonlinear optimization problems like special cases of unconstrained optimization, systems of nonlin-
ear equations, least square problems, and linear and nonlinear programming problems.
KNITRO has two algorithmic options. The first one, known as KNITRO/ACTIVE, uses a new
active-set method based on the sequential linear-quadratic programming (SLQP) and the projected
conjugate gradient iteration. The second, known as KNITRO/INTERIOR, uses the interior-point
methods in two implementations: KNITRO/INTERIOR-CG, in which the algorithmic step is
computed by means of an iterative conjugate gradient method, and KNITRO/INTERIOR-DIRECT,
in which the step is (usually) computed via a direct factorization of the corresponding linear systems.
These two approaches, KNITRO/ACTIVE and KNITRO/INTERIOR, communicate by the so-called
crossover technique. This crossover procedure, used for the first time by Megiddo (1989) in linear
programming, is implemented internally by switching to the ACTIVE algorithm after the
INTERIOR-DIRECT or the INTERIOR-CG algorithm has solved the problem to a requested
tolerance.
The difference between these two approaches is as follows. The active-set sequential linear-
quadratic programming algorithm is similar in nature to a sequential quadratic programming method,
but it uses linear programming subproblems to estimate the active-set at each iteration. This active-set
approach may be useful when a good initial point can be provided. On the other hand, in the interior-
point methods, also known as barrier methods, the nonlinear programming problem is replaced by a
sequence of barrier subproblems controlled by a barrier parameter. The algorithm uses the trust-
region and a merit function to promote convergence. The algorithm performs one or more minimiza-
tion steps on each barrier problem, then decreases the barrier parameter and repeats the process until
the problem has been solved to the desired accuracy.
In this chapter, we discuss only KNITRO/ACTIVE. This algorithm is described in (Byrd, Gould,
Nocedal, & Waltz, 2004a), and its global convergence is presented in (Byrd, Gould, Nocedal, &
Waltz, 2002).
KNITRO/INTERIOR will be described in Chap. 17, where the crossover technique is also
presented.
Let us consider the general nonlinear optimization problem
min f ðxÞ
subject to ð15:102Þ
cE ðxÞ ¼ 0,
cI ðxÞ 0,
KNITRO/ACTIVE Algorithm
To achieve progress on both feasibility and optimality, the algorithm is designed to reduce the l1
penalty function
X X
Pðx, σ Þ≜f ðxÞ þ σ jci ðxÞj þ σ max f0, ci ðxÞg, ð15:103Þ
i2E i2I
where ci, i 2 E, represents the components of vector cE, and ci, i 2 I, represents the components of cI.
The penalty parameter σ is chosen by an adaptive procedure described later.
In the LP phase, given an estimate xk of the solution of the nonlinear optimization problem
(15.102), the following linear programming problem is formed and solved:
kd k1 ΔLP
k , ð15:104dÞ
where ΔLPk > 0 is the trust-region radius. Observe that (15.104) differs from the classical subproblem
used in the SQP methods only in that (15.104) does not contain the quadratic term 12 d T Bk d, where Bk
is an approximation to the Hessian of the Lagrangian of (15.102). Now, since the constraints of
(15.104) may be inconsistent, instead of it we solve the l1 penalty reformulation of (15.104) as
X
min d lσ ðdÞ≜∇f ðxk ÞT d þ σ k ∇ci ðxk ÞT d þ ci ðxk Þ
i2E
X n o
þσ k max 0, ∇ci ðxk ÞT d ci ðxk Þ
i2I
subject to ð15:105Þ
kdk1 ΔLP
k :
The solution of this linear program, denoted by dLP, is computed by the simplex algorithm. Based
on this solution, we define the working set W as a linearly independent subset of the active-set at the
LP solution pLP
n o
A dLP ¼ i 2 E : ∇ci ðxk ÞT dLP þ ci ðxk Þ ¼ 0
n o
[ i 2 I : ∇ci ðxk ÞT d LP þ ci ðxk Þ ¼ 0 : ð15:106Þ
To ensure the progress of the algorithm subject to the penalty function P(x, σ) defined in (15.103),
define the Cauchy step
dC ¼ αLP d LP , ð15:108Þ
where αLP 2 [0, 1] is the stepsize that provides sufficient decrease in the following piece-wise
quadratic model of the penalty function P(x, σ)
560 15 Sequential Quadratic Programming
1
qk ðdÞ ¼ lσ ðdÞ þ d T Bðxk , λk Þd: ð15:109Þ
2
In (15.109), lσ (d) is defined by (15.105) and B(xk, λk) is the Hessian of the Lagrange function or an
approximation of it.
Given the working set Wk, the following equality-constrained quadratic program in the variable
d is solved, treating the constraints in Wk as equalities and ignoring all the other constraints
!T
1 T X
min d Bðxk , λk Þd þ ∇f ðxk Þ þ σ k γ i ∇ci ðxk Þ d ð15:110aÞ
2 i2V
subject to
∇ci ðxk ÞT d þ ci ðxk Þ ¼ 0, i 2 E \ Wk, ð15:110bÞ
kd k2 Δ k , ð15:110dÞ
where γ i is the algebraic sign of the i-th constraint violated in xk. Observe that (15.110d) is spherical
and is distinct from the trust-region radius ΔLPk used in (15.104d). The solution of (15.110), denoted
by dQ, is obtained by the projected conjugate gradient algorithm described later.
The total step d of the SLQP method is computed as
d ¼ d C þ αQ d Q d C , ð15:111Þ
where αQ 2 [0, 1] is the stepsize that approximately minimizes the model function (15.109). Now, we
can present the KNITRO/ACTIVE algorithm as follows:
1. Choose an initial point x0 2 ℝn, as well as the parameters Δ0 > 0, ΔLP 0 > 0, 0 < η < 1. Set k ¼ 0
2. If a stopping test for the nonlinear problem (15.102) is satisfied, stop; otherwise, continue with step 3
3. Update the penalty parameter σ k and solve the linear program (15.105) to obtain the step d LPk and the
working set Wk
LP
4. Compute αLP k 2 ½0, 1 as an approximate minimizer of the quadratic model q αd k given by (15.109)
such that αLP d Δk :Set d ¼ αLP d
LP C LP
k k k k k
5. Solve the equality quadratic programming subproblem (15.110) to obtain the solution d Q
k
Q
k ¼ d k d k as the segment line from the Cauchy point to the solution of the equality
6. Compute dCE C
The trust-region radius Δk is updated based on the standard ratio ρk. The choice of ΔLP
k is important
because this determines the working set. The estimates of the multipliers λk used in the Hessian are the
least square estimates using the working set Wk and modified so that λi 0 for i 2 I.
lσ ðd Þ ¼ ∇f ðxk ÞT d þ σ k mk ðd Þ: ð15:113Þ
Given a value σ k, then the solution of the LP subproblem (15.105) is denoted as dLP(σ k) to
emphasize its dependence on the penalty parameter. Let dLP(σ 1) be the minimizer of mk(d ) subject
to the trust-region constraint kdk1 ΔLPk from (15.105). Then, the following algorithm describes the
computation of the LP step dLP k and the updating of the penalty parameter σ k.
1. Initialize the data: xk, σ k 1 > 0 and ΔLPk > 0: Choose the parameters ε1, ε2 2 (0, 1]
2. Solve the subproblem (15.105) with σ ¼ σ k 1 to obtain dLP(σ k 1)
3. If mk(dLP(σ k 1)) ¼ 0, then set σ + ¼ σ k 1; otherwise, compute dLP(σ 1)
4. If mk(dLP(σ 1)) ¼ 0, then find σ + > σ k 1 such that mk(dLP(σ +)) ¼ 0. Otherwise, find σ + σ k 1 such that
mk(0) mk(dLP(σ +)) ε1[mk(0) mk(dLP(σ 1))]
5. If necessary, increase the value of σ + to satisfy
lσþ ð0Þ lσþ d LP ðσ þ Þ ε2 σ þ mk ð0Þ mk dLP ðσ þ Þ :
LP þ
Set σ k ¼ σ and dk ¼ d ðσ Þ
+ LP
♦
The selection of σ + > σ k1 is achieved by the successive increase of the current trial value by
10, for example, and by resolving the LP problem. The algorithm is simple and easy to be
implemented when the worm start strategy is used. The penalty update algorithm above guarantees
that σ is chosen large enough to ensure the convergence to a stationary point (Byrd, Gould, Nocedal,
& Waltz, 2002).
Since Algorithm 15.10 is a penalty method, it can naturally deal with infeasibility. If a problem is
infeasible, then the penalty parameter will be driven to infinity. Moreover, if the algorithm is
converging to a stationary point, for our infeasibility measure we have
mk ð0Þ mk d LP ðσ 1 Þ ! 0
during the penalty update procedure, providing a clear indication of local infeasibility.
are solved by using the projected conjugate gradient method (Gould, Hribar, & Nocedal, 2001),
(Keller, Gould, & Wathen, 2000), which is well suited for large-scale problems. This is also suitable
in case of large-scale subproblems and can treat the situations in which the negative curvature appears
without modifications of the Hessian of the Lagrange function. A variant of this iteration in the
context of the sequential linear-quadratic programming is as follows.
Let us consider the following quadratic program
1 T
min x Gx þ hT x ð15:114aÞ
2
subject to
Ax ¼ b, ð15:114bÞ
where G is supposed to be symmetric and positive definite on the null space of A 2 ℝn l. One way to
solve (15.114) is to apply a special form of the conjugate gradient (CG) iteration to the KKT system
associated to (15.114), which is given by
" #
G AT x h
¼ : ð15:115Þ
A 0 v b
Although the coefficient matrix is not positive definite, we can apply the CG method to (15.115),
provided that we precondition and project the CG method so that it effectively solves the positive
definite reduced problem within the feasible manifold (15.114b). Denote the preconditioning matrix
by P. The following algorithm gives the iterations of the projected conjugate gradient.
1. Choose an initial point x0 satisfying Ax0 ¼ b, as well as the tolerance ε > 0. Set x ¼ x0 and compute
r ¼ Gx þ h. Set z ¼ Pr and d ¼ z
2. If kzk ε, then stop; otherwise, go to step 3
3. Compute (in this order):
α ¼ r T z=dT Gd, x ¼ x þ αd,
r þ ¼ r þ αGd, zþ ¼ Pr þ ,
β ¼ ðr þ Þ zþ =r T z, d ¼ zþ þ βd,
T
þ
z¼z , r ¼ rþ
and continue with step 2 ♦
Algorithm 15.11 has exactly the same form as the standard preconditioned CG algorithm for
solving symmetric and positive definite systems of linear equations (Golub, & Van Loan, 1996). The
difference is that P is normally a symmetric and positive definite matrix, whereas in our case it
represents a projection and preconditioning matrix defined as follows.
Given a vector r, compute z ¼ Pr as solution of the system
" #
D AT z r
¼ , ð15:116Þ
A 0 w 0
where D is a symmetric and positive definite matrix on the null space of A and w is an auxiliary vector.
To be a practical preconditioning matrix, D must be a sparse matrix so that solving (15.116) is
15.10 Active-Set Sequential Linear-Quadratic Programming (KNITRO/ACTIVE) 563
significantly less costly than solving (15.115). By construction, z ¼ Pr is in the null space of A and so
are all the search directions generated by Algorithm 15.11. Since Ax0 ¼ b, all the subsequent iterates
x also satisfy these linear constraints. Let Z 2 ℝn(nl ) be a basis for the null space of A from
(15.114b). Then, in the null space of A the solution of (15.114) may be expressed as x ¼ x0 þ Zu,
where u 2 ℝnl is the solution of the linear system
T
Z GZ u ¼ ZT ðGx0 þ hÞ: ð15:117Þ
The iterations generated by Algorithm 15.11 are given by x ¼ x0 þ Zu, where u are the iterations of
the preconditioned CG method of the system (15.117) using the matrix ZTDZ as a preconditioner.
Therefore, Algorithm 15.11 is a standard preconditioned CG algorithm as soon as G and D are
positive definite on the null space ofA (Gould, Hribar, & Nocedal, 2001).
Algorithm 15.11 has two advantages over the reduced conjugate gradient approach. The first is that
there is no need to compute a null space basis and consequently no risk for the ill-conditioning in Z to
deteriorate the rate of convergence of the conjugate gradient iteration. The second benefit is that the
projection matrix in (15.116) can also be used to compute the normal step and the Lagrange
multipliers, and thus the extra cost of each of these computations is only one back solve involving
the factors of this projection matrix (Byrd, Nocedal, & Waltz, 2006).
Algorithm 15.11 assumes that an initial feasible point x0 is provided (see step 1). The factorization
of the system (15.116) allows us to compute such a point by solving
" #
D AT w 0
¼ ,
A 0 x 0 b
Hessian Options
KNITRO contains some options for the first and second derivatives. The user can supply these
elements, which generally results in the greatest level of efficiency and robustness of the algorithms
implemented in KNITRO. However, if these elements are not possible to be supplied, then KNITRO
has other options on the second derivative: the dense quasi-Newton BFGS, the dense quasi-Newton
SR1, the finite-difference Hessian-vector product, and the limited-memory BFGS Hessian. The dense
quasi-Newton BFGS option uses the gradient information to compute a symmetric, positive definite
approximation to the Hessian matrix. Typically, this method requires more iterations to converge than
the exact Hessian version. The dense quasi-Newton SR1 approach builds an approximate Hessian by
using the gradient information, but in this case, the SR1 Hessian approximation is not restricted to be
positive definite. Therefore, the SR1 approximation may be a better approach than BFGS if there is a
lot of negative curvature in the problem. In the case of large-scale applications, the Hessian of the
Lagrangian cannot be computed or it is too large to store. In KNITRO, the Hessian-vector product can
be obtained by the finite differences of the gradients of the Lagrangian. Each Hessian-vector product
requires one additional gradient evaluation.
In the following, let us present the performances of KNITRO/ACTIVE for solving some
applications from the LACOP collection. KNITRO/ACTIVE implements an active-set method
based on the sequential linear-quadratic programming (SLQP) and the projected conjugate gradient
iteration, known as KNITRO/ACTIVE Option 3.
564 15 Sequential Quadratic Programming
In Table 15.7 we can see the performances of KNITRO/ACTIVE for solving 6 large-scale
nonlinear optimization applications from the LACOP collection.
Table 15.8 shows the performances of KNITRO/ACTIVE (option 3) for solving the applications
HANG with a large number of variables.
All SNOPT, NLPQLP, and KNITRO/ACTIVE are reliable algorithms for solving small or large-
scale problems. SNOPT evolved from MINOS and performs better than MINOS. Our numerical
experiments show that for solving 12 small-scale applications from the LACOP collection
(Table 15.1) SNOPT needs 0.31 seconds, while KNITRO/ACTIVE (option 3) (Table 15.6) needs
Table 15.6 Performances of KNITRO/ACTIVE for solving 12 applications from the LACOP collection. Option
3. Small-scale nonlinear optimization applications
Table 15.7 Performances of KNITRO/ACTIVE for solving 6 applications from the LACOP collection. Option
3. Large-scale nonlinear optimization applications
Table 15.8 Performances of KNITRO/ACTIVE for solving the HANG application from the LACOP collection.
Option 3. Large-scale nonlinear optimization applications
In Tables 15.6, 15.7, and 15.8, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the
number of inequality constraints, #it ¼ the number of iterations for solving the application, #itcg ¼ the number of
conjugate gradient iterations, #nf ¼ the number of evaluations of the functions, #ng ¼ the number of evaluations of the
gradients, #nh ¼ the number of evaluations of the Hessians, cpu ¼ the CPU computing time to get a solution (seconds),
and vfo ¼ the value of the objective function at the optimal solution.
0.782 seconds. For solving 15 large-scale optimization problems from the LACOP collection,
SNOPT (Table 15.2) needs 64.91 seconds, while KNITRO/ACTIVE (option 3) (Table 15.7) needs
466.084 seconds. Both SNOPT and KNITRO/ACTIVE include mechanisms which ensure that the
subproblems are always feasible and which guard against the rank-deficient Jacobian of the
constraints. SNOPT uses the penalty (or elastic) mode which is used if the sequential quadratic
problem is infeasible or if the Lagrange multiplier estimates become very large in norm. Both the
BFGS and the limited-memory BFGS approximations are implemented in SNOPT and in KNITRO/
ACTIVE. KNITRO/ACTIVE also implements the SR1 approximation that may be more efficient
than the BFGS approximation. Many other ingredients and practical details concerning the redundant
constraints, discontinuities, inaccurate gradient estimation, and scaling are implemented in these
algorithms.
Wright (2006), Schittkowski (1986, 2002, 2005, 2009, 2010), and Gill, Murray, and Saunders (2002,
2005, 2006).
There are two types of SQP methods. In the inequality quadratic programming approach, at each
iteration a general inequality-constrained quadratic programming subproblem is solved in order to
compute a step and to generate an estimate of the optimal active-set. On the other hand, the equality
quadratic programming methods decouple these computations and operate in two phases: in the first
one, an estimate of the optimal active-set is determined, and in the second phase an equality-
constrained quadratic programming subproblem is solved to find the step.
The main advantages of SQP are as follows: the iterates are feasible with respect to the linear
constraints for most of the iterations; they are very efficient for solving highly constrained problems;
they give better results on pathological problems; in general; they require fewer functions
evaluations; i.e., they are most efficient for problems with expensive functions evaluations; they
allow worm starts, permit infeasibility detection, and can capitalize on a good initial point
There is a vast literature on SQP. These methods were proposed by Wilson (1963) in his Ph.D.
thesis and developed inter alia by Han (1976, 1977), Powell (1977, 1978a, 1978b), Byrd, Schnabel,
and Shultz (1987b), Byrd, Tapia, and Zhang (1990), etc. For literature surveys see the papers by
Boggs and Tolle (1989, 1995), Herskovits (1995), and Gould, Orban, and Toint (2005a).
The SLQP approach was proposed by Fletcher and Sainz de la Maza (1989) and was further
developed by Byrd, Gould, Nocedal, and Waltz (2004a). The second-order corrections were
suggested by Coleman and Conn (1982a), Mayne and Polak (1982), and Gabay (1982). The filter
SQP was developed by Fletcher and Leyffer (2002) and Fletcher, Leyffer, and Toint (1999).
The most important software implementing sequential linear/quadratic solvers are as follows.
The KNITRO/ACTIVE is based on the works described in Byrd, Gould, Nocedal, and Waltz
(2002, 2004a), Byrd, Nocedal, and Waltz (2003, 2006), Nocedal and Wright (2006), Waltz (2004).
KNITRO includes both sequential linear-quadratic programming and interior-point methods. The
active-set sequential linear-quadratic programming method described in this chapter to determine an
estimate of the active-set at each iteration solves a linear programming subproblem that approximates
the l1 exact penalty subproblem. The linear programming subproblem has an additional infinity-norm
trust-region constraint. The constraints in this linear programming subproblem that are satisfied as
equalities are marked as active, and they are used to set up an equality-constrained quadratic
programming subproblem whose objective is a quadratic approximation of the Lagrangian of the
problem at the current iterate. This quadratic programming subproblem includes an l2-norm trust-
region constraint. The equality quadratic programming subproblem is solved by using a projected
conjugate gradient algorithm. The penalty parameter is updated to ensure sufficient decrease towards
feasibility.
NLPQLP is an extension of the sequential quadratic programming solver NLPQL (Schittkowski,
1985) that implements a nonmonotone line-search to ensure global convergence. Our description of
NLPQLP is based on the papers of Schittkowski (1986, 2002, 2005, 2009, 2010). It uses a quasi-
Newton approximation to the Hessian of the Lagrangian, which is updated with the BFGS formula.
To calculate the stepsize that minimizes an augmented Lagrangian merit function, a nonmonotone
line-search is used. NLPQLP illustrates the sequential quadratic programming paradigm, also
referred to as active-set methods, because it provides an estimate of the active-set at every iteration.
In NLPQLP, the quadratic programming subproblems are modified to avoid the redundant computa-
tional effort of evaluating the gradients corresponding to the inactive constraints. The derivatives, if
unavailable, can be estimated by using finite differences. If we compare NLPQLP (Table 15.4) versus
15.10 Active-Set Sequential Linear-Quadratic Programming (KNITRO/ACTIVE) 567
KNITRO/ACTIVE (Table 15.6) we can see that, for solving 8 nonlinear optimization applications
from the LACOP collection, NLPQLP needs 308 iterations, while KNITRO/ACTIVE needs only
226.
NPSOL (Gill, Murray, Saunders, & Wright, 1986) solves general nonlinear optimization problems
by using a sequential quadratic programming algorithm with a line-search on the augmented
Lagrangian. The Hessian of the quadratic programming subproblem is a quasi-Newton approximation
of the Hessian of the Lagrangian. The quadratic programming subproblem is solved by using a dense
BFGS update. If the gradients of the functions defining the problem are not available, NPSOL can
estimate them by using finite differences. All the matrices in NPSOL are dense and therefore it is not
efficient for solving large-scale problems.
SNOPT is a pure sequential quadratic programming algorithm. The description of SNOPT follows
the paper of Gill, Murray, and Saunders (2005). SNOPT solves the quadratic programming
subproblems by using SQOPT (Gill, Murray, & Saunders, 2006), which is a reduced-Hessian
active-set method. SNOPT uses a positive semi-definite quasi-Newton Hessian approximation Bk.
If the number of the nonlinear variables is moderate, then Bk is stored as a dense matrix. Otherwise,
the Hessian of the Lagrangian is updated by using the limited-memory quasi-Newton BFGS updates.
The quadratic programming solver SQOPT works with a sequence of the reduced Hessian systems of
the form ZTBkZd ¼ ZTg, where Z is a basis for the null space of W, a rectangular matrix with nz
columns. SQOPT can deal with the reduced Hessian systems in various ways, depending on the size
of nz. If the constraints are currently active in the quadratic subproblem and nz are not excessively
large, then SQOPT uses the dense Cholesky factorization ZTBkZ ¼ RTR. Otherwise, SQOPT can
maintain a dense quasi-Newton approximation to avoid the cost of forming and of factorizing the
reduced Hessian. SNOPT includes an option for using a projected conjugate gradient method instead
of the factorization of the reduced Hessian. If a quadratic subproblem is found to be infeasible or
unbounded, then SNOPT tries to solve an elastic subproblem that corresponds to a smooth reformu-
lation of the l1 exact penalty function. The solution of the quadratic subproblem solved at the major
iteration is used to obtain a search direction along which an augmented Lagrangian merit function is
minimized. SNOPT uses a lot of procedures from MINOS. When the gradients are not available,
SNOPT uses finite differences to estimate them. SNOPT is embedded in the GAMS technology
(Andrei 2017c).
SQPlab (Gilbert, 2009) is a laboratory for testing different options of the sequential quadratic
programming methods (Bonnans, Gilbert, Lemaréchal, & Sagastizábal, 2006). It implements a line-
search sequential quadratic programming method that can use either the exact Hessian or a BFGS
approximation of the Lagrangian.
CONOPT (Drud, 1996, 2011), described in Chap. 16 of this book, implements three active-set
methods. The first one is a gradient projection method that projects the gradient of the minimizing
function onto a linearization of the constraints. The second variant is a sequential linear programming
method and the third one is a sequential quadratic programming method. CONOPT is a line-search
method and includes algorithmic switches that automatically detect which method is most suitable.
Other software implementing SQP are filterSQP (Fletcher, & Leyffer, 2002) presented in Chap. 18
of this book, and RSQP (Bartlett, & Biegler, 2003), which maintains a quasi-Newton approximation
to the reduced Hessian.
Primal Methods: The Generalized
Reduced Gradient with Sequential 16
Linearization
By primal method, we understand a search method that works directly on the original problem by
searching the optimal solution taking a path through the feasible region. Every iteration in these
methods is feasible and along the iterations, the values of the minimizing function constantly
decrease. The most important primal methods are the feasible direction method of Zoutendijk
(1960), the gradient projection method of Rosen (1960, 1961), the reduced gradient method of
Wolfe (1967), the convex simplex method of Zangwill (1967), and the generalized reduced gradient
method of Abadie and Carpentier (1969). The last four methods can be embedded into the class of the
active set methods. The idea of the active set methods is to partition the inequality constraints into two
groups: those that can be treated as active (satisfied with equality in the current point) and those that
have to be treated as inactive. The constraints treated as inactive are essentially ignored. Of course,
the fundamental component of an active set method is the algorithm for solving an optimization
problem with equality constraints only.
The primal methods have three main advantages. Firstly, they generate feasible points. Thus, if the
optimization process terminates before reaching the solution, then the terminating point is feasible
and possibly near the optimal solution of the problem. The second attractive advantage is that, if the
optimization process is convergent, then the limit point of this sequence has to be at least a local
constrained minimum. Finally, the third advantage is that the primal methods do not use the special
structure of the problem such as convexity, for example. Therefore, these methods can be used for
solving general constrained nonlinear optimization problems.
The purpose of this chapter is to give a short description of the primal methods, followed by a more
detailed presentation of the modern generalized reduced gradient method, which is representative for
the primal methods.
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 569
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_16
570 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
where dk is the search direction, and αk is the stepsize. The crucial aspects of this method are that the
scalar αk is chosen in such a way so as to minimize the function f under the constraint that the point
xkþ1 given by (16.2), and the segment of the line connecting xk and xkþ1 are all feasible. Therefore, the
problem of minimizing f with respect to α is nontrivial if the ray xkþ1 ¼ xk þ αdk, α > 0, is entirely
contained in the feasible region. This is the main motivation of using the feasible directions for
solving (16.1). A vector dk is a feasible direction in the point xk if there is an α > 0 such that
xkþ1 ¼ xk þ αdk is feasible for all α with 0 α α: The concept of feasible direction is a natural
extension of the concept of descent direction from the unconstrained optimization. The following two
methods put in a concrete form the feasible direction methods.
The Frank-Wolfe Method For the problem (16.1), in which all the constraints are linear cTj x bj ,
j ¼ 1, . . ., m, one of the earliest feasible direction methods is the one of Frank and Wolfe (1956). In
this method, given the current point xk, the search direction is computed as dk ¼ xk xk , where xk is
the solution of the linear programming problem
min ∇f ðxk ÞT x
subject to ð16:3Þ
cTj x bj , j ¼ 1, . . . , m:
If function f is continuous differentiable and the polyhedron defined by the linear constraints
cTj x bj , j ¼ 1, . . ., m, is bounded, or f(x) ! þ 1 when kxk ! 1 , then, for any feasible initial
point the Frank-Wolfe method converges to a local minimizer of the problem
n o
min f ðxÞ : cTj x bj , j ¼ 1, . . . , m :
The Zoutendijk Method Referring to the problem (16.1) with nonlinear constraints, this method
solves a sequence of linear programming subproblems as follows (Zoutendijk, 1960). Given a
feasible point xk, let Ik be the set of indices representing the active constraints, that is the constraints
cj(xk) ¼ 0, j 2 Ik. Then, the search direction dk is chosen as solution of the following problem:
min ∇f ðxk ÞT d
subject to ð16:4Þ
T
cj ðxk Þ þ ∇cj ðxk Þ d 0, j 2 Ik ,
Xn
jd j ¼ 1:
i¼1 i
The last equation in (16.4) is a normalizing equation that ensures a bounded solution. The other
constraints ensure that the vectors of the form xk þ αdk will be feasible for sufficiently small α > 0.
Moreover, solving the problem (16.4) determines that d is chosen to line up as closely as possible to
the negative gradient of f in the current point. The main difficulties with this simplified Zoutendijk
method (16.4) are that for general problems, there may not exists any feasible directions, and in this
form the simplified Zoutendijk method is not globally convergent.
16.2 Active Set Methods 571
Topkis and Veinot (1967) improved the simplified Zoutendijk method and suggested another
procedure for the search direction computation as solution of the following linear programming
problem:
min δ
subject to ð16:5Þ
∇f ðxk ÞT d δ 0,
cj ðxk Þ þ ∇cj ðxk ÞT d θj δ 0, j ¼ 1, . . . , m,
1 d i þ1, i ¼ 1, . . . , n,
where the unknowns are d 2 ℝn and δ 2 ℝ, while θj, j ¼ 1, . . ., m, are positive parameters. (e.g.,
θj ¼ 1, j ¼ 1, . . ., m.). Obviously, if the minimum of (16.5) corresponds to a value δ < 0, then
∇f(xk)Td < 0, that is d is a descent direction. Besides, cj(xk) þ ∇ cj(xk)Td θjδ < 0, proving that all the
constraints are satisfied for small values in the direction d. Details on this method are given in
(Andrei, 1999a, b, pp 597–608).
These methods make a partition of the inequality constraints of the problem in two groups: those
which are active at the current point, namely, they are satisfied as equalities, and those that are
inactive. The inactive constraints are essentially ignored. Consider the problem
min f ðxÞ
subject to ð16:6Þ
cðxÞ 0,
where all the functions f : ℝn ! ℝ and c : ℝn ! ℝm are continuously differentiable. For this problem,
the necessary optimality conditions are
cðxÞ 0, ð16:7bÞ
μT cðxÞ ¼ 0, ð16:7cÞ
μ 0, ð16:7dÞ
(see Definition 11.14) where μ 2 ℝm is the vector of the Lagrange multipliers. Denote A as the set of
the indices of the active constraints, that is, A is the set of j such that cj(x) ¼ 0. In terms of active
constraints, these optimality conditions can be expressed in a more simple form as
X
∇f ðxÞ þ μj ∇cj ðxÞ ¼ 0, ð16:8aÞ
j2A
cj ðxÞ ¼ 0, j 2 A, ð16:8bÞ
μj 0, j 2 A, ð16:8dÞ
μj ¼ 0, 2A,
j= ð16:8eÞ
Observe that (16.8a) and (16.8b) correspond to the necessary optimality conditions of the equality
constrained problem (see Theorem 11.11). (16.8c) guarantees that the inactive constraints are
satisfied. The sign requirement of the Lagrange multipliers given by (16.8d) and (16.8e) guarantees
that every constraint that is active should be active.
Obviously, if the active set of constraints were known, then the original problem could be replaced
by the corresponding problem having only the equality constraints. Now, suppose that an active set of
constraints was guessed and the corresponding equality constrained problem solved. Then, if the
other constraints were satisfied and the Lagrange multipliers turned out to be nonnegative, then the
solution of the equality constrained problem would be exactly the solution to the original problem.
At each iteration of an algorithm, the active set methods define a set of constraints denoted by W,
termed working set, treated as the active set. The working set is chosen to be a subset of the
constraints that are actually active at the current point. In other words, the current point is feasible
for the working set. The algorithm tries to move on the surface defined by the working set of the
constraints, the so-called working surface, in order to get an improved point, i.e., a point at which the
minimizing function is reduced. At this new point, the working set may be changed and all the process
is repeated. There are several methods for moving on the working surface. The most important ones
(the gradient projection, the reduced gradient, the convex simplex, and the generalized reduced
gradient methods) are discussed in the following sections. The asymptotic convergence properties
of the active set methods depend on the procedure for moving on the working surface, since near the
solution, the working set of constraints is generally equal to the correct active set.
Now, let us discuss the strategy of choosing the working set and of moving on the working surface
corresponding to the active set methods. Suppose that, for a given working set W the problem with
equality constraints is
min f ðxÞ
subject to ð16:9Þ
cj ðxÞ ¼ 0, j 2 W:
If μj 0 for all j 2 W, then the point x is a local solution to the original problem (16.6). On the other
hand, if there is an index j 2 W such that μj < 0, then the objective function can be decreased by
relaxing the constraint j. This follows from the sensitivity interpretation of the Lagrange multipliers
(see Theorem 11.18): a small decrease in the constraint value from 0 to b will lead to a change in the
value of the minimizing function of μjb, which is clearly negative. Thus, dropping the constraint
j from the working set, an improved solution can be obtained. Therefore, the Lagrange multiplier
indicates which constraint should be dropped from the working set. Now, since all the points
determined by the algorithm must be feasible, it is necessary to monitor the values of the other
constraints to ensure that they are not violated. Obviously, moving on the working surface, a new
constraint boundary is attained. Therefore, this constraint is added to the working set, thus obtaining a
new working set with which the process can be repeated.
16.3 The Gradient Projection Method 573
In conclusion, the active set strategy proceeds by systematically dropping and adding constraints,
that is starting with a given working set and minimizing the function f over the corresponding working
surface. If new constraint boundaries are attained, they may be added to the working set, but no
constraints are dropped from the working set. Hence, a point is obtained that minimizes f with respect
to the current working set of constraints. The corresponding Lagrange multipliers are determined and
if they are all nonnegative, it follows that the solution is optimal. Otherwise, one or more constraints
with negative Lagrange multipliers are dropped from the working set. With this new working set, the
optimization process is restarted until an optimal solution is obtained.
If for every working set W the problem min{f(x) : cj(x) ¼ 0, j 2 W} is well defined with a unique
nondegenerate solution (that is for all j 2 W, μj 6¼ 0), then the sequence of points generated by the
above described active set strategy converges to the solution of the inequality constrained problem
(16.6).
The difficulty with the active set method is that several problems with incorrect active sets must be
solved. Besides, the solutions of these intermediate problems must be the exact global minimum
points in order to determine the correct sign of the Lagrange multipliers and to ensure that along the
iterations the current working set is not encountered again. The convergence of these methods cannot
be guaranteed. They are subject to jamming, where the working set changes an infinite number of
times. However, numerical experiments proved that the phenomenon of zigzagging (jamming) is very
rare and the algorithms based on the active set strategy work very well in practice. The combinatorial
difficulty of the inequality constrained optimization solved by the active set methods is presented in
Sect. 11.3.
In this method, the search direction is chosen as the projection of the negative gradient onto the
working surface. Consider the problem
min f ðxÞ
subject to ð16:11Þ
aTj x bj , j ¼ 1, . . . , m,
with linear inequality constraints, where x 2 ℝn. The constraints from (16.11) define the matrix
A 2 ℝm n, where the rows of A are defined by the constraints aTj x bj , j ¼ 1, . . ., m. Assume that
the constraints from (16.11) define a nonempty region X. If it exists, a feasible solution to this problem
can be obtained by applying the simplex algorithm. At a given feasible point x there will be a certain
number q of active constraints aTj x ¼ bj and some inactive constraints aTj x < bj : The set of active
constraints is W(x). Now, at the feasible point x we are interested in finding a feasible direction
d which is descent, that is it satisfies ∇f(x)Td < 0 so that the movement in the direction d will
determine a decrease of the values of the function f. Initially, consider the directions d satisfying
aTi x ¼ 0, i 2 W(x), so that all the working constraints remain active. Therefore, the search direction
d is in the tangent subspace T defined by the working set of constraints. The search direction used in
this method is exactly the projection of the negative gradient onto this subspace. To compute this
projection, consider Aq 2 ℝqn as the matrix composed by the rows corresponding to the working
constraints. Assume that x is a regular point, i.e., the gradient vectors of the active constraints in x are
linear independent (see Definition 11.13). In this case, q < n and rank(Aq) ¼ q < n. The tangent
subspace T in which d must lie is the subspace of the vectors which satisfy Aqd ¼ 0. Therefore, the
574 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
range subspace N of ATq , i.e., the set of all the vectors of the form ATq μ for μ 2 ℝq, is orthogonal to T.
Any vector can be written as a sum of vectors from each of these two complementary subspaces. In
particular, ∇ f(xk) can be written as
where dk 2 T and μk 2 ℝq. Therefore, having in view that Aqdk ¼ 0, it follows that
Aq ∇f ðxk Þ Aq ATq μk ¼ 0,
which determines
1
μk ¼ Aq ATq Aq ∇f ðxk Þ:
Therefore,
1
dk ¼ I ATq Aq ATq Aq ∇f ðxk Þ Pk ∇f ðxk Þ: ð16:12Þ
The matrix Pk from (16.12) is called the projection matrix corresponding to the subspace T.
Observe that, since Aq is of full rank, it follows that Aq A1
q is nonsingular. From (16.12) we can write
1
dk ¼ ∇f ðxk Þ þ ATq Aq ATq Aq ∇f ðxk Þ:
The stepsize is computed as the minimum of f(xk þ αdk), where α is on the segment [0, αmax].
When the projected negative gradient is zero, it follows that
that is the point xk satisfies the necessary conditions for a minimum on the working surface. If the
components of μk corresponding to the active inequalities are all nonnegative, then this fact together
with (16.13) implies that the KKT conditions for the problem (16.11) are satisfied at xk and the
optimization process terminates. In this case, μk is the Lagrange multiplier vector for the problem
(16.11). If, on the other hand, at least one component of μk corresponding to the active inequalities is
negative, by relaxing the corresponding inequality it is possible to move in a new direction to get an
improved point. Suppose that the component μjk of μk is negative and corresponds to the inequality
aTj x bj : The new search direction is determined by relaxing the j-th constraint and by projecting the
16.3 The Gradient Projection Method 575
negative gradient onto the subspace defined by the remaining q 1 active constraints. Let Aq be the
matrix Aq with row aj deleted. Then, for some μk we have
Since μjk < 0 it follows that aTj d k < 0: Therefore, since aTi dk ¼ 0 for i 2 W(xk), i 6¼ j and aTj dk < 0,
it follows that j can be dropped from W(xk). Thus, a new working set of active constraints is obtained,
with which a new iteration is started.
The gradient projection method can be extended for solving nonlinear problems of the form
min f ðxÞ
subject to ð16:16Þ
cðxÞ ¼ 0,
where all the functions are continuously differentiable. The idea is that at a feasible point xk the active
constraints are determined and the negative gradient is projected onto the subspace tangent to the
surface determined by the active constraints in xk. If this vector is nonzero, it determines the searching
direction for the next step. However, since the surface is curved, this vector is not a feasible direction
in general. In this case, additional computations must be executed to get a new feasible point. Firstly,
a move is made along the projected negative gradient to a point y. Then another move is made from
y in the direction perpendicular to the tangent plane at the point xk to get a feasible point xkþ1 on the
working surface. In this case, the projection matrix at xk is computed as
h i1
Pk ¼ I ∇cðxk ÞT ∇cðxk Þ∇cðxk ÞT ∇cðxk Þ:
The search direction dk is computed as dk ¼ Pk ∇ f(xk). Observe that, when moving from xk to
xkþ1, the Jacobian ∇c will change and the new projection matrix cannot be found from the old one.
Therefore, it must be recomputed at each iteration of the algorithm.
The computation of the projection matrix might not be so delicate, but the most important and the
finest feature of the method is the problem of returning to the feasible region from points outside this
region. This is a common problem in nonlinear optimization, including the interior-point methods for
linear and nonlinear optimization, i.e., from any point near xk, the difficulty is to move back to the
constraint surface of (16.16) in a direction orthogonal to the tangent plane at xk. Thus, from a point y a
new point of the form y þ ∇ c(xk)Tv ¼ y is determined such that c(y) ¼ 0. To find a suitable first
approximation to v and hence to y, the equation at xk is linearized, thus obtaining
c y þ ∇cðxk ÞT v ffi cðyÞ þ ∇cðxk Þ∇cðxk ÞT v:
576 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
Obviously, this approximate is accurate when kvk and ky xkk are small. Therefore, this
motivates the first approximate
h i1
y1 ¼ y ∇cðxk ÞT ∇cðxk Þ∇cðxk ÞT cðyÞ:
Thus, by successively repeating this process, we obtain the sequence {yj} generated as
h i1
yjþ1 ¼ yj ∇cðxk ÞT ∇cðxk Þ∇cðxk ÞT c yj ,
The reduced gradient method elaborated by Wolfe (1967) is closely related to the simplex method for
linear programming. The idea of the method is to partition the variables of the problem into two
groups as the basic and the nonbasic variables. Using specific rules, the basic variables are changed
into nonbasic variables and vice-versa until a criterion for stopping the iterations has been satisfied.
Consider the problem
min f ðxÞ
subject to ð16:17Þ
Ax ¼ b, x 0,
where x 2 ℝn, b 2 ℝm, A 2 ℝmn, m < n and f is twice continuously differentiable. Suppose that a
nondegeneracy assumption is satisfied, that is every collection of the m columns from A is linear
independent and every basic solution has exactly m strictly positive variables. Under this assumption,
any feasible solution of the problem (16.17) will have at most n m variables assigned to zero. A
given feasible vector x for (16.17) is partitioned as x ¼ [y, z]T, where y 2 ℝm and z 2 ℝn m. This
partition is formed in such a way so that all the components of y are strictly positive. With this, the
problem (16.17) can be written as
min f ðxÞ ð16:18aÞ
subject to
By þ Cz ¼ b, ð16:18bÞ
y 0, z 0, ð16:18cÞ
where B and C collect the columns from A corresponding to the variables from y and from z,
respectively. Since B is nonsingular, if z is specified, then from (16.18b) y can be uniquely deter-
mined. Therefore, z represents the independent variables, while y is the vector of the dependent
16.4 The Reduced Gradient Method 577
variables (basic variables) computed as y ¼ B1(b Cz). Observe that a small change Δz of the
independent variables which leaves z þ Δz nonnegative will yield by (16.18b) another feasible
solution. Since y was originally taken to be strictly positive, y þ Δy will be also positive for small Δy.
Therefore, we move from one feasible solution to another one by choosing a Δz and then by moving
z on the line z þ αΔz, α 0. Similarly, y will move along the corresponding line y þ αΔy. If in this
moving a certain variable becomes zero, a new inequality constraint becomes active. Thus, if an
independent variable becomes zero, a new Δz must be chosen. On the other hand, if a dependent
variable becomes zero, then the partition must be modified. The basic variable is declared indepen-
dent, and one of the strictly positive independent variables is made dependent.
The reduced gradient method represents the problem in terms of independent variables. Obviously,
since y is determined from z as y ¼ B1(b Cz), it follows that the minimizing function can be
considered as a function depending only on z. The gradient with respect to the independent variables
z is obtained by computing the gradient of f(B1b B1Cz, z) as
which is called the reduced gradient. A point (y, z) satisfies the first-order necessary optimality
conditions if and only if
ri ¼ 0 for all zi > 0,
ri 0 for all zi ¼ 0:
In the reduced gradient method, the vector z of the independent variables is moved in the direction
of the reduced gradient on the working surface. Thus, at each iteration a search direction
r i , i=2W ðzÞ,
Δzi ¼ ð16:20Þ
0, i 2 W ðzÞ
is determined, and Δy ¼ B1CΔz is computed. With this, compute the stepsizes as follows:
α1 ¼ max fα : y þ αΔy 0g,
α2 ¼ max fα : z þ αΔz 0g,
α3 ¼ min ff ðx þ αΔxÞ : 0 α α1 , 0 α α2 g,
Details on the reduced gradient method are given in Luenberger and Ye (2016, pp. 378–381) and in
Andrei (1999a, b, pp. 624–629).
578 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
This method elaborated by Zangwill (1967) is a modification of the reduced gradient method. The
major difference between this method and the reduced gradient method is that, instead of moving all
or several independent variables in the direction of the negative reduced gradient, only one indepen-
dent variable is changed at a time. The selection of that independent variable to change is made as in
the simplex algorithm.
For the problem (16.17) at a given feasible point, consider the partition of the vector x as x ¼ [y, z]T,
where y is the vector of the dependent (basic) variables and z is the vector of the independent variables
(nonbasic). Assume that the bounds on x are x 0, as in (16.17). The reduced gradient is computed as
in (16.19). Then, the component zi to be changed is determined according to the following procedure:
1. Let r i1 ¼ min fr i g,
i
2. Let r i2 zi2 ¼ max fr i zi g,
i
• If r i1 ¼ r i2 zi2 ¼ 0, then terminate. Otherwise
• If r i1 jr i2 zi2 j, increase zi1 ,
• If r i1 jr i2 zi2 j, decrease zi2 :
Once a particular component of z has been selected for changing according to the above procedure,
then the corresponding y is recomputed as y ¼ B1(b Cz), so that the constraints are satisfied. The
components of z are changed until either a local minimum with respect to a component has been
attained or the boundary of one nonnegativity constraint has been reached. The details of this method
are identical to those of the reduced gradient method.
Remark 16.1 The optimization methods presented so far have a lot in common. The concept of
feasible direction is directly obtained from the optimality conditions of these methods. The methods
based on this concept are susceptible to jamming. Some methods (the gradient projection, the reduced
gradient, and the convex simplex) are based on the idea of partitioning the vector of variables into two
groups, the dependent (basic) variables and the independent (nonbasic) variables, in such a way that
the Jacobian corresponding to the dependent variables should be nonsingular. For solving large-scale
problems, the dependent variables are selected in such a way that the inverse of the corresponding
Jacobian is easy to be computed. By means of this partition, the constraints can be used to express the
minimizing objective as a function depending only on the independent variables. Thus, the concept of
the reduced gradient of the minimizing function may be introduced. This is the key element to spread
the variables in and out of the basis by using similar rules as in the simplex algorithm from linear
porogramming adapted for the nonlinear case. The rate of convergence of these methods is deter-
mined by the eigenvalues of the Hessian of the Lagrangian restricted to the subspace tangent to the
active constraints. The limitations of all these methods are that, for determining the search direction
they use only the information given by the reduced gradient, and they do not use the approximation of
the minimizing problem by linear or by quadratic programming in the current point. This is the reason
why these methods are considered as simple or naive approaches for solving nonlinear optimization
problems, and we gave them a short presentation. In the next section, we present the generalized
reduced gradient method and an improvement of it based on sequential linear or sequential quadratic
programming.
16.6 The Generalized Reduced Gradient Method (GRG) 579
One of the most elaborate methods for solving general large-scale problems of nonlinear optimization
is the generalized reduced gradient method (GRG). Its efficiency comes from the fact that it includes
a multitude of fundamental concepts, both from the simplex algorithm of linear programming and
from the optimization techniques and methods based on the Newton method. Actually, the GRG
method is an extension of Wolfe’s reduced gradient method due to Abadie and Carpentier (1969) and
the improvements by Abadie (1978, 1979), Abadie and Guigou (1970), Abadie and Haggag (1979),
Lasdon, Fox and Ratner (1974), Lasdon and Waren (1978, 1980, 1982), Lasdon, Waren, Jain and
Ratner (1978), Gabriele and Ragsdell (1980), Drud (1976, 1983, 1984, 1985, 1995, 1996), Andrei
(1985, 1987), who consider both the objective function and the constraints of the problem as
sufficiently smooth functions.
At the beginning, we present the general form of the GRG method for solving nonlinear optimiza-
tion problems with equality constraints and simple bounds on variables. After that, in the next section,
a particular implementation of GRG with sequential linear or sequential quadratic programming,
known as CONOPT, is described.
Consider the general nonlinear optimization problem
min f ðXÞ ð16:21aÞ
subject to
ci ðXÞ ¼ 0, i ¼ 1, . . . , m, ð16:21bÞ
l j X j uj , j ¼ 1, . . . , n, ð16:21cÞ
where X 2 ℝn, lj and uj are the lower and the upper bounds on the variables Xj, j ¼ 1, . . ., n. Assume
that lj < uj, j ¼ 1, . . ., n. Suppose that m < n, since in most cases, m n involves an infeasible problem
or one with a single feasible point. Moreover, suppose that f and ci, i ¼ 1, . . ., m, are twice
continuously differentiable. Denote V as the set of feasible points (manifold) which satisfy the
constraints ci(X) ¼ 0, i ¼ 1, . . ., m, and P as the parallelepiped lj X uj, j ¼ 1, . . ., n.
The main idea of the GRG method is to use the equality constraints ci(X) ¼ 0, i ¼ 1, . . ., m, in
order to express m variables, called basic variables, as functions of the rest of n m variables, called
nonbasic variables. Let X be a feasible point and consider y 2 ℝm as the subvector of the basic
variables and x 2 ℝn m as the subvector of the nonbasic variables. Therefore, X and X are partitioned
as X ¼ [x y]T and X ¼ ½x y T , respectively. With this, the equality constraints (16.21b) can be
rewritten as
cðy, xÞ ¼ 0, ð16:22Þ
Hence, in a neighborhood of x a reduced problem is obtained which contains only the simple
bound on the nonbasic variables x
580 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
min FðxÞ
subject to ð16:24Þ
l N x uN ,
where obviously lN and uN are n m-dimensional vectors with the lower and upper bounds of the
nonbasic variables. The GRG method solves the original problem (16.21) by solving a sequence of
subproblems (16.24) which are nonlinear optimization problems with simple bounds. The algorithms
for solving the simple bounded nonlinear optimization are presented in Chap. 12.
Obviously, for the reduced problem (16.24) to have a solution, the nonbasic variables x should be
free around the current point x: Of course, the presence of the simple bounds limits the evolution of
the nonbasic variables, but the algorithms which maintain the simple bound satisfied are relatively
simple to design. The evolution of the basic variables is more complicated. Indeed, if some
components of y are fixed on their lower or upper bounds, then a small modification of x from x
may determine the violation of the simple bounds on y. In order to avoid such situations the following
nondegeneracy hypothesis is introduced.
”For any feasible point X which satisfies the constraints of (16.21) there is a partition of it in m
basic variables y and n m nonbasic variables x, such that
lB < y < uB , ð16:25Þ
where lB, uB 2 ℝm are the lower and the upper bounds of the basic variables and the Jacobian matrix
B ¼ ∂c/∂y evaluated in X is nonsingular.”
For the problem (16.21) let X be a feasible point with y as the basic variables and x as the nonbasic
variables. To evaluate the objective F(x) of (16.24), we have to know the basic variables y(x). Except
for the linear functions or for some particular nonlinear functions, y(x) cannot be explicitly deter-
mined. However, for a given x this can be computed by solving the algebraic nonlinear system
(16.22).
where ∇yf(X) and ∇xf(X) are the gradients of f subject to the basic variables and the nonbasic variables,
respectively. Therefore,
df ðXÞ dy
¼ ∇x f ðXÞT þ ∇y f ðXÞT : ð16:27Þ
dx dx
To eliminate the matrix dy/dx in (16.27), observe that
dcðXÞ ∂c ∂c dy
¼ þ ¼ 0, ð16:29Þ
dx ∂x ∂y dx
where ∂c/∂y and ∂c/∂x are the Jacobians of c subject to the basic and the nonbasic variables,
respectively. From the nondegeneracy hypothesis, it follows that the matrix ∂c/∂y is nonsingular.
Therefore,
1
dy ∂c ∂c
¼ : ð16:30Þ
dx ∂y ∂x
where
1
∂c ∂c
r ¼ ∇ x f ðX ÞT ∇ y f ðX ÞT ð16:32Þ
∂y ∂x
Remark 16.2 If the functions of the problem f and ci, i ¼ 1, . . ., m, are all linear, (16.34) are
exactly the reduced cost factors from linear programming, and u is the vector of the
simplex multipliers. ♦
It is interesting to see the relation between the generalized reduced gradient and the KKT
optimality conditions.
Teorema 16.1 If X is an optimal solution of (16.21) and the gradients of all the active constraints in
X are linear independent, then in X the KKT conditions holds.
Proof Let u be the vector of the Lagrange multipliers associated to the equality constraints (16.21b)
and λ and μ the corresponding multipliers associated to the lower and the upper bounds from (16.21c),
respectively. The Lagrange function of the problem (16.21) is
where λy and μy are the subvectors from λ and μ corresponding to the basic variables, respectively, and
similarly for λx, μx for the nonbasic variables.
The KKT conditions written in terms of the x and y variables are as follows:
∂f ∂c
þ uT þ λy μy ¼ 0, ð16:35Þ
∂y ∂y
∂f ∂c
þ uT þ λx μx ¼ 0, ð16:36Þ
∂x ∂x
λ 0, μ 0, ð16:37Þ
λTx ðx lx Þ ¼ λTy y ly ¼ 0,
ð16:38Þ
μTx ðux xÞ ¼ μTy uy y ¼ 0:
If X is an optimal solution of (16.21), then there exist the vectors u, λ, and μ, which together with
X verify the relations (16.35, 16.36, 16.37, and 16.38). Since y lies between its bounds, from (16.38) it
follows that λy ¼ μy ¼ 0, that is from (16.35) we have
1
∂f ∂c
u¼ :
∂y ∂y
Therefore, u defined by (16.33) is exactly the vector of the Lagrange multipliers associated to the
equalities constraints (16.21).
The condition (16.36) can be written as
∂f ∂c
þ uT ¼ μx λx : ð16:39Þ
∂x ∂x
Observe that the left-hand side of (16.39) is r, the generalized reduced gradient of the problem
(16.21). With this, from (16.38) it follows that in the minimizing point the generalized reduced
gradient verifies
8
< r i ¼ λxi 0,
> if xi ¼ lxi ,
ri ¼ μxi 0, if xi ¼ uxi , ð16:40Þ
>
:
ri ¼ 0, if lxi < xi < uxi :
In order to see the connection between (16.39) and the reduced problem (16.24), we note that, if xi
is strictly between its bounds, then λxi ¼ μxi ¼ 0 and therefore from (16.39), we have
∂F
r i ¼ 0: ð16:41Þ
∂xi
∂F
r i ¼ λxi 0: ð16:42Þ
∂xi
But (16.41, 16.42, and 16.43) are exactly the optimality conditions associated to the reduced
problem (16.24) expressed in terms of the generalized reduced gradient. Therefore, the KKT
optimality conditions for the problem (16.21) can be viewed as the optimality conditions of the
reduced problem (16.24), where u from (16.34) is the vector of the multipliers associated to the
constraints from (16.21) ♦
∂f ∂c
þ uT ¼ 0, ð16:45Þ
∂y0 ∂y0
8
< 0,
> if x0i ¼ lxi ,
r i 0, if x0i ¼ uxi , ð16:46Þ
>
:
¼ 0, if lxi < x0i < uxi :
If r is computed in such a way as to satisfy (16.46), then X0 ¼ [x0 y0]T is a stationary point (or even
a minimizer if the problem has some convexity properties). On the other hand, if r does not satisfy
(16.46), then the vector of the nonbasic variables x is modified as
x ¼ x0 þ αd, ð16:47Þ
that is, α is defined in a nonempty interval, possibly infinite, 0 α α: With this, a step can be taken
along the line L to arrive in the point Xe ¼ ½x1 ye1 T , where
1
x1 ¼ x0 þ α1 d,
ye1 ¼ y0 þ α1 h,
In general, the point Xe does not belong to the variety V. However, from Xe a new point
1 1
X1 ¼ [x1 y1]T 2 V belonging to the curve Γ can be computed. This new point can be
obtained by solving the nonlinear algebraic system
cðx1 , yÞ ¼ 0: ð16:50Þ
A. If y1 obtained as solution of (16.50) satisfies ly < y1 < uy, then, from X1 we can continue the
iterations in the same way as from X0. This case is illustrated in Fig. 16.1.
B. On the other hand, if ðy1 Þr ¼ lyr or ðy1 Þr ¼ uyr for a certain index r, then the variable yr has to leave
the set of the basic variables and a nonbasic variable must enter the basis. This operation of
changing the basis is executed in the same way as in the simplex algorithm from linear program-
ming. This situation is illustrated in Figs. 16.2 and 16.3.
16.6 The Generalized Reduced Gradient Method (GRG) 585
Xb 2
2
=V
Xb , Xb , and then to X1
2 3
586 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
Obviously, for different reasons, the method for solving the system (16.50) in combination with
the algorithm for solving the optimization problem (16.21) can fail. The following situations may
happen:
1. The method is not convergent. For example, after a certain number of iterations, let us say 20, the
point ½x1 ye20 T is not on Γ or in a neighborhood of Γ. Or, after a few iterations, let us say
5, kcðx1 ye5 Þk kcðx1 ye1 Þk:
2. For a certain iteration, yet determines f ðx1 yet Þ > f ðx0 y0 Þ:
T
3. At a certain iteration, yetþ1 leads to a point x1 yetþ1 that is not in the parallelepiped P.
In the situations (1) and (2) above, the remedy is to reduce α1 (e.g., set α1/2 or α1/10) and from the
new point on L continue the iterations for solving the nonlinear system (16.50). In situation (3), let
T
½x1 yet T 2 P: Then the segment of the line connecting the point ½x1 yet T with x1 yetþ1 crosses the
T
frontier of P in a point x1 ybtþ1 such that for a certain index r, yetþ1 r ¼ lyr or yetþ1 r ¼ uyr : In this
situation, a changing of the basis is executed and with this new partition of X, continue the iterations
for solving the nonlinear system (16.50).
Figure 16.2 illustrates the situation in which, starting from the point Xe 2 L a new point
1
T
Xb ¼ x1 ybtþ1 is obtained. Assume that a changing of the basis was executed, in which the variable
2
y is replaced by x2. Then, by solving (16.50) a new point X1 2 V is obtained, which is considered as a
starting point for the next iteration.
Another possible situation which can appear is illustrated in Fig. 16.3. In this case, starting from
the point Xe ¼ ½x11 x12 ye1 T , the method for solving the system (16.50) determines the point
1
Xb ¼ ½x11 x12 0 T from which, by a changing of the basis, the point Xb ¼ ½x11 0 0 T is obtained
2 3
5. Compute the search direction8from the space of the nonbasic variables d ¼ [d1 . . . dn m]T, where
> 0,
< if ðxk Þi ¼ lxi and r i < 0,
d i ¼ 0, if ðxk Þi ¼ uxi and r i > 0,
>
:
r i , if lxi < ðxk Þi < uxi ,
for i ¼ 1, . . ., n m
6. If d ¼ 0, stop; otherwise, compute the search direction in the space of the basic variables
h i1 h i
∂c ∂c
h ¼ ∂y ∂xk
d
k
10. Starting from ye1 compute a new feasible point Xk þ 1 by solving the nonlinear algebraic system
c(x1, y) ¼ 0 with respect to the variables y. Let yej be the iterations generated by a method for solving this
system (e.g., the Newton method), j ¼ 1, 2, . . . .
p as a fixed
Consider
arbitrary integer.
(a) If
c x1 , yej
ε is not achieved for any j p, then set α1 ¼ α1/2 and continue with step 9
(b) If f ðx1 , ye1 Þ < f x1 , yej for a certain j, that is the function f is not reduced along the iterations, then
set α1 ¼ α1/2 and continue with step 9
(c) Let y1 be the solution of the system c(x1, y) ¼ 0. If ly < y1 < uy, then set Xk þ 1 ¼ [x1 y1]T, k ¼ k þ 1
and continue with step 2; otherwise, execute step 11
11. If ðy1 Þi ¼ lyi or ðy1 Þi ¼ uyi for a certain index i, then make a change of variables in which the variable yi
leaves the basis and a nonbasic variable, not fixed at its bounds, enters the basis
12. Update the partition of X and the inverse of the basis B1 and continue with step 4. ♦
1. The criterion for stopping the iterations from step 6 of the algorithm can be implemented in a more
convenient way as |di| < εi, i ¼ 1, . . ., n m, where εi > 0 are tolerances which depend on the size
of the components xi of the vector x.
2. If after two or three reductions of α1 the iterations of the Newton method implemented in step 10 of
the algorithm for solving the system c(x1, y) ¼ 0 with respect to the basic variables y fails, then a
change of variables is executed.
3. One of the most important operations is the computation of the inverse of the basic matrix
B ¼ [∂c/∂yk] in step 3 of Algorithm 16.1. The advanced procedures for the inverse of the basis
computation make a partition of the vector Xk in step 2 of Algorithm 16.1 in such a way that the
basic matrix B is nonsingular and as sparse as possible.
CONOPT is a very interesting and profitable combination of the generalized reduced gradient with
sequential linear-programming and with sequential quadratic-programming. All these algorithms are
embedded into the generalized reduced gradient (GRG) scheme as described in (Drud, 1976, 1983,
1985, 1994, 1995, 1996, 2005, 2011). CONOPT implements some algorithmic novelties regarding
selection and factorization of the basis, line-search and the Newton iterations, sequential linear or
quadratic programming, computation of the generalized reduced gradient of the minimizing function,
advanced procedures for the inverse representation of a nonsingular matrix, etc.
CONOPT is a particularization of the generalized reduced gradient Algorithm 16.1, which
considers the general nonlinear optimization problems of the following form
min f ðxÞ
subject to ð16:52Þ
cðxÞ ¼ b,
l x u,
Some of the bound values may be minus or plus infinity. If the problem has inequality constraints,
then these are transformed into equalities by using the slack variables. Moreover, in CONOPT it is
assumed that x includes slack and artificial variables for all the constraints. This implies that the
Jacobian of the constraints includes a unit matrix and therefore, it has full row rank.
CONOPT works as follows. The set of m equations c(x) ¼ b defining the (nonlinear) constraints of
the problem can be used to eliminate m variables. For the simplicity of the presentation, consider that
the vector x is partitioned in the sub-vectors xb 2 ℝm (basic) and xn 2 ℝnm (nonbasic). Therefore, the
system of the nonlinear constraints c(x) ¼ b can be rewritten as xb ¼ c1(xn).It is obvious that it is not
possible to find an analytic expression for the function c1, except for some very particular cases, like
the linear constraints. However, from the theory of the implicit functions (see Theorem A2.6), we
have the following result. If x0b , x0n satisfies the system c x0b , x0n ¼ 0 and the Jacobian ∂c/∂xb has
rank m, i.e., it is nonsingular, then in a neighborhood of x0b , x0n it is possible to transform c(xb, xn) ¼ 0
into xb ¼ c1(xn). The function c1 is differentiable and its Jacobian is found by implicit differentiation
as
∂c ∂c ∂c
dx ¼ dxb þ dxn ¼ 0: ð16:53Þ
∂x ∂xb ∂xn
Hence,
1
∂c1 ∂xb ∂c ∂c
¼ ¼ : ð16:54Þ
∂xn ∂xn ∂xb ∂xn
In practice, the function xb ¼ c1(xn) is computed by solving the nonlinear system c(xb, xn) ¼ 0 with
respect to xb, xn being known.
The equation xb ¼ c1(xn) is introduced in the objective function to get
f ðxb , xn Þ ¼ f ðc1 ðxn Þ, xn Þ≜Fðxn Þ,
Observe that the transformations that have been used are very similar to those from linear
programming. xb contains the basic variables. They are used to compensate for the changes in the
nonbasic variables xn so that the constraints c(x) ¼ b are satisfied. The derivative ∂F/∂xn from (16.55)
is similar to the vector of the reduced costs from linear programming. It shows the influence on the
objective function of changes in the nonbasic variables, taking into consideration the corresponding
changes in the basic variables. Usually, ∂F/∂xn is called the reduced gradient. The matrix ∂c/∂xb is
similar to the basis matrix from linear programming. However, the major difference between the
nonlinear problem and the linear problem is that in the optimal solution, the nonlinear problem can
have more than m variables strictly between the lower and the upper bounds. Thus, an optimization
16.7 GRG with Sequential Linear or Sequential Quadratic Programming (CONOPT) 589
method like the simplex algorithm that works only with basic solutions cannot be used in the
nonlinear case. The main steps of GRG in the implementation of CONOPT are as follows:
5. ∂f ∂c
Compute the reduced gradient r ¼ ∂x n
þu ∂xn
6. Compute the projection h of the reduced gradient on space defined by the simple bounds of the nonbasic
variables: 8
> 0, if ri < 0 and x0ni ¼ lni ,
<
hi ¼ 0, if ri > 0 and x0ni ¼ uni ,
>
:
ri , otherwise
7. If h ¼ 0, then stop
8. One-dimensional search. Choose α > 0 to minimize F x0n þ αh according to the following steps for
8 of α:
different values
>
< lni , if x0ni þ αhi < lni ,
(i) xni ¼ uni , if x0ni þ αhi > uni ,
>
: 0
xni þ αhi , otherwise
(ii) Compute xb ¼ c1(xn),
i.e., solve the system c(xb, xn) ¼ b subject to xb
(iii) Compute F x0n þ αh ¼ f ðxb , xn Þ
9. Store the best solution in x0 and go to step 2. ♦
The GRG algorithm is based on the same principle as the simplex algorithm for linear program-
ming: elimination of the basic variables. Locally, the problem is therefore reduced to an optimization
problem in nonbasic variables, which are lower and upper bounded. The main aspect of CONOPT is
that it uses the sequential linearization. Sequential linearization methods are defined as methods
based on solving a sequence of subproblems with linearized constraints and an augmented Lagrang-
ian as objective function.
Every step of the GRG algorithm contains more details from the linear programming and the
nonlinear optimization. The optimizing steps are specialized in several versions according to whether
the model appears to be almost linear or not. For almost linear models, some of the linear algebra
work involving Jacobian and basis matrices can be avoided or can be done by using cheap linear
programming updating techniques. The second-order information is not needed. The line-search can
be improved by observing that, like in linear programming, the optimal step will almost always be
determined by the first variable that reaches a bound. In this case, the algorithm uses the sequential
linear-quadratic programming. If the model is fairly nonlinear, other aspects can be optimized: the
set of basic variables will often remain constant over several iterations and other parts of the sparse
matrix algebra will take advantage of this. In this case, an improved search direction can be computed
by using the specialized sequential quadratic programming.
590 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
• The condition of the basis is more important than its sparsity. A well-conditioned basis will
generally lead to fewer iterations because the Hessian of the reduced objective function also
becomes better conditioned.
• The set of the basic variables should not vary too much. In other words, from one iteration to
another one, the second-order information in the reduced Hessian approximation can be preserved
if the basis differs only by one variable before and after a change of the basis.
16.7 GRG with Sequential Linear or Sequential Quadratic Programming (CONOPT) 591
• At degenerate points, the basis must be very carefully controlled to avoid cycling. Nonlinear
models seem to behave like linear models: degeneracy becomes more accentuated as the models
grow in size.
• For poorly scaled problems, the factorization procedure by Hellerman and Rarick (1971, 1972) is
slow as many proposed pivots appear to be too small relative to other elements in the column, thus
resulting in many expensive column swaps.
Initially, in CONOPT the basis is LU factorized using a Markowitz (1957) pivot selection
procedure, similar to the one suggested by Suhl and Suhl (1990, 1991), which is an improvement
of the Hellerman and Rarick, where only updated spike columns are separately stored. The remaining
columns of the basis factors are represented by the original columns in the Jacobian, as described in
(Kalan, 1971). The main difference between the implementation given by Suhl and Suhl (1990) and
the one given by Drud (1994) is that in CONOPT, a block decomposition of the bump is performed
and the Markowitz criterion is applied to each individual block.
The Jacobian is not changed in the degenerate iterations. Therefore, a cheap simplex-like update of
the basis factors similar to the one suggested by Reid (1982) is applied. This will reduce the length of
the spikes during factorization.
The Jacobian will change during the nondegenerate iterations. To prevent unnecessary
calculations of the Jacobian and expensive full factorizations after small steps, an estimation of the
quality of the Jacobian is performed in CONOPT. This estimation is based on the speed of
convergence of the Newton iterations in the line-search and on the change in the objective relative
to the change predicted by a linear model (see Drud (1994)).
CONOPT keeps the old set of basic variables after the iterations in which no basic variable reached
a bound. If the step was limited by a superbasic variable reaching a bound, CONOPT estimates the
quality of the Jacobian as mentioned above. If the Jacobian is good, then CONOPT keeps the
factorization of the basis. If it is poor or if the step was determined by nonlinearities, then the
Jacobian is recomputed. The subsequent factorization uses the same pivot sequence and sparsity
pattern determined during the last full factorization.
When the line-search behaves poorly because the Newton iterations do not converge even for
small steps, CONOPT tries to find a better conditioned basis. The procedure is to replace a basic
variable with a better superbasic. All the superbasic columns are updated with the active eta-vectors,
and the largest possible pivot is selected. To avoid cycling, the basis is changed only if the pivot is
greater than one. The heuristic is based on the assumption that a large determinant indicates a well-
conditioned basis, a reasonable assumption for well-scaled problems.
• The selection of the set of the superbasic variables to be changed in the coming iteration
• The determination of a direction for the superbasic variables, given by the reduced gradient
Concerning the first part, the variables between their bounds are always superbasics. A variable at
a bound is only made superbasic if its reduced gradient has the right sign, it is greater than an absolute
tolerance and it is large relative to other reduced gradients. In the second part, two modes are
identified to determine a direction for the superbasics: the linear mode and the nonlinear mode.
In the linear mode, it is expected that a linear approximation to the problem is a good one and that
the stepsize in the coming line-search will be determined by bounds. The superbasic variables are
592 16 Primal Methods: The Generalized Reduced Gradient with Sequential Linearization
moved in the direction of the negative reduced gradient, i.e., in the steepest descent direction.
CONOPT immediately tries to go as far as possible until a basic or a superbasic variable has reached
a bound. This point is used as the initial point in the Newton iterations. The linear mode has two
advantages. It helps save the overhead of the quasi-Newton procedure in areas where it is not needed
and it can accelerate the line-search significantly by going directly to the bound.
In the nonlinear mode, the line-search is expected to be limited by the nonlinearity of the problem,
i.e., it is expected that no variable will reach a bound. The search direction for the superbasic variables
is determined from a quasi-Newton method that also determines the initial stepsize suggested to the
line-search. For generating search directions in the nonlinear mode, a quasi-Newton method based on
BFGS is used. With the growing size of the problems, some kind of conjugate gradient method is used
to handle problems with a very large number of superbasics.
Firstly, CONOPT uses the linear mode and switches from the linear mode to the nonlinear mode
after a number of consecutive line-searches in which no variable has reached a bound. After that, it
switches back from the nonlinear to the linear mode after a number of consecutive line-searches in
which a variable has reached a bound.
multipliers (computed in step 4 of CONOPT) and z ¼ b c(xb, xn) is the current vector of the
residuals. The convergence rate of the Newton algorithm is monitored as follows. If kzk1 0.001n or
kzk1(kzk1/kzoldk1)p < 0.001n, then the Newton iterates are convergent and the line-search continues
ahead. Otherwise, the Newton algorithm terminates. (zold is the residual from the previous iteration
and p is an integer parameter which is modified along the iterations.) If the residuals are small, then
the approximation of df is supposed to be good enough and therefore the test of the rapid convergence
on df can be applied: if |df| rtobj, then the Newton iterations are successfully stopped. Otherwise, if
|df|(|df|/|dfold|)p > rtobj, then the Newton iterations are stopped with failure and the initial stepsize
must be decreased. This will reduce the number of the Newton iterations as well as the number of
evaluations of the functions. The basic variables are computed as xb ¼ xb þ Δxb, where Δxb is the
solution of the linear system JbΔxb ¼ z which uses the same inverse as in the computation of the
reduced gradient (see step 5). If this new xb overflows a bound by more than a predefined threshold,
then the Newton algorithm is stopped. No solution is expected to exist within the bounds and
therefore the algorithm returns to the stepsize procedure in which a new and smaller step is chosen.
16.7 GRG with Sequential Linear or Sequential Quadratic Programming (CONOPT) 593
Otherwise, the corresponding basic variable is fixed at its bound. Some details including the Newton
algorithm used in CONOPT are given in (Drud, 1985).
predicted by the linear constraints, the objective is much more nonlinear along the search direction
than expected, and the optimal step is not 1. For the superbasic variables, the search direction is
determined by using the quasi-Newton BFGS updating.
In (Drud, 2005, 2011), plenty of aspects on CONOPT are presented and discussed, namely, hints
on good model formulation, algebraic information on initial point determination, preprocessing,
scaling, finding a feasible solution, linear and nonlinear modes, SLP procedure, SQP procedure,
etc. A detailed comparison between sequential linearization methods (e.g., MINOS) versus CONOPT
is presented in (Drud, 1994) with respect to finding the first feasible solution, maintaining the
feasibility of iterations, computing the Jacobian matrix, the choice and factorization of the basis,
the Lagrange multipliers computation, the line-search and the Newton iterations, etc. CONOPT
represents a very advanced combination of three algorithms which integrate sequential linear
programming and sequential quadratic programming, both of them being embedded in the
generalized reduced gradient technology. The algorithm is improved with many computational
procedures based on numerical observations obtained in the process of solving large classes of
different nonlinear optimization problems of different dimensions and complexities.
Table 16.1 Performances of CONOPT for solving 12 applications from the LACOP collection. Small-scale nonlinear
optimization applications
In Table 16.1, we have the following: n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the
number of inequality constraints, #nj ¼ the number of nonzeros in the Jacobian matrix, #njn ¼ the number of nonlinear
nonzeros in the Jacobian matrix, #nhd ¼ the number of nonzero diagonal elements of the Hessian to the Lagrangian,
#nhs ¼ the number of nonzero sub-diagonal elements of the Hessian to the Lagrangian, #it ¼ the number of iterations,
cpu ¼ the CPU computing time for solving the problem (seconds), vfo ¼ the value of the objective function at the
solution.
Table 16.2 Performances of CONOPT for solving the PENICI application from the LACOP collection
Table 16.3 Performances of CONOPT for solving 6 applications from the LACOP collection. Large-scale nonlinear
optimization applications
#itt cput
KNITRO/ACTIVE 1123 466.084
CONOPT 520 9.124
Table 16.5 Performances of CONOPT for solving 6 applications from the LACOP collection with SQP inhibited.
Large-scale nonlinear optimization applications
#itt cput
CONOPT with SQP 520 9.124
CONOPT without SQP 1031 16.961
Table 16.7 Performances of CONOPT with SQP for solving the HANG application from the LACOP collection
Table 16.8 Performances of CONOPT without SQP for solving the HANG application from the LACOP collection
Table 16.9 Comparison: MINOS, KNITRO/ACTIVE, SNOPT and CONOPT. CPU computing time (seconds)
As a conclusion to these numerical studies, let us compare MINOS (Table 14.12), KNITRO/
ACTIVE (Table 15.7), SNOPT (Table 15.2), and CONOPT with SQP (Table 16.3) subject to the total
CPU computing time. Table 16.9 presents the performances of these algorithms for solving all the
15 large-scale nonlinear optimization applications with respect to the total CPU computing time.
16.7 GRG with Sequential Linear or Sequential Quadratic Programming (CONOPT) 597
CONOPT is one of the most elaborated algorithms for solving large-scale nonlinear optimization
problems and applications. It is based on the generalized reduced gradient implemented in the sparse
matrix technology by using sequential linear programming and sequential quadratic programming
algorithms. The best performances are obtained with its variant which implements the sequential
quadratic programming. CONOPT has one of the most advanced techniques for solving linear
algebraic systems of equations based on permuting the rows and columns of the matrix to the
“bump and spike” structure in order to minimize the number of the newly created nonzeros during
the factorization and to maintain the numerical stability.
One of the most powerful methods for solving nonlinear optimization problems known as the interior-
point method is to be presented in this chapter. It is related to the barrier functions. The terms “interior-
point methods” and “barrier methods” have the same significance and may be used interchangeably.
The idea is to keep the current points in the interior of the feasible region. A method for remaining in
the interior of the feasible region is to add a component to the objective function, which penalizes close
approaches to the boundary. This method was first suggested by Frisch (1955) and developed both in
theoretical and computational details by Fiacco and McCormick (1964, 1966, and 1968).
Interior-point methods have two implementations. The first one uses the line-search technique and
the second one uses filters. The interior-point methods based on line-search are also classified into two
methods. The first one is a direct extension of the interior-point methods from linear programming.
They use line-searches to enforce convergence. The second one uses a quadratic model to define the
step and incorporates a trust-region constraint to provide stability. For these methods, we follow the
main developments from Nocedal and Wright (2006). The interior-point method with filter uses a
filter for selecting the stepsize in the direction of the calculated step (Fletcher, & Leyffer, 2002).
In this chapter, we consider the interior-point method for general nonlinear optimization problems
in the line-search and in the trust-region paradigms, respectively. At the same time, a variant of the
interior-point algorithm is presented, which illustrates a methodology for the theoretical development
of interior-point methods and of their convergence analysis.
Let us consider the problem
subject to
cE ðxÞ ¼ 0, ð17:1bÞ
cI ðxÞ s ¼ 0, ð17:1cÞ
s 0, ð17:1dÞ
where x 2 ℝn, cE : ℝn ! ℝl, cI : ℝn ! ℝm, are twice continuously differentiable functions, and s 2 ℝm
are slack variables introduced to transform the inequality constraints cI(x) 0 into equalities. Here,
E ≜ {1, . . ., l} and I ≜ {1, . . ., m}.
As described in Nocedal and Wright (2006), in the following we present two derivations of
interior-point methods, which emphasize the main idea and the terminology for solving general
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 599
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_17
600 17 Interior-Point Methods
nonlinear optimization problems (17.1). The first derivation is based on continuation or homotopy
methods. The second one is based on barrier methods.
Homotopy methods. By homotopy method, we understand a continuous transformation of a
mathematical object into another one, in the sense that a simple (an easy) problem can be continu-
ously deformed into the given (hard) problem (Henri Poincaré). The solutions to the deformed
problems are related and can be tracked as the deformation proceeds. The function describing the
deformation is called a homotopy map. The basic idea of the homotopy approach is to replace the
original problem with a parameterized problem. At one end of the parameter range, there is a problem
which is easy to solve, while the original problem is at the other end.
The KKT optimality conditions for the problem (17.1) are as follows:
Sz μe ¼ 0, ð17:2bÞ
cE ðxÞ ¼ 0, ð17:2cÞ
cI ðxÞ s ¼ 0, ð17:2dÞ
s 0, z 0: ð17:2eÞ
In (17.2), ∇cE(x) and ∇cI(x) are the Jacobian matrices of the equality and inequality constraints,
respectively. The vectors y and z are the Lagrange multipliers associated to these constraints. Let us
define S and Z as diagonal matrices whose diagonal elements are the components of the vectors s and
z, respectively. Observe that (17.2) with μ strictly positive are the perturbed KKT conditions. The
Eq. (17.2b) with μ ¼ 0 and the conditions (17.2e) introduce a combinatorial aspect of determining the
optimal active-set of (17.1). This is the main difficulty of this approach based on the KKT conditions.
The homotopy method consists in approximately solving the KKT conditions (17.2) for a sequence of
positive parameters {μk} that converges to zero, while maintaining s, z > 0. In the limit, we hope to
obtain a point that satisfies the KKT conditions (17.2). Moreover, asking for the iterates to decrease a
merit function or to be acceptable to a filter, we hope that the iterations converge to a minimizer of
(17.1) and not simply to a KKT point. The justification of this method is as follows. In a neighborhood
of (x, s, y, z) which satisfies the linear independence of the constraint qualification (Remark
11.2), the strict complementarity condition (see Definition 11.23), and the second-order sufficient
conditions (see Theorem 11.16), then, for all sufficiently small positive values of μ, the system (17.2)
has a locally unique solution denoted by (x(μ), s(μ), y(μ), z(μ)). All these points describe the so-called
primal-dual central path. When μ ! 0, this converges to (x, s, y, z), solution of the KKT
conditions given by (17.2).
Barrier methods. In this approach of the derivation of the interior-point methods, a barrier problem
is associated to (17.1) as
X
m
min x,s f ðxÞ μ log ðsi Þ, ð17:3aÞ
i¼1
subject to
cE ðxÞ ¼ 0, ð17:3bÞ
cI ðxÞ s ¼ 0, ð17:3cÞ
17.1 Prototype of the Interior-Point Algorithm 601
where μ is a positive parameter. Note that the inequality s 0 is not included in (17.3) because the
P
minimization of the barrier term μ m i¼1 log ðsi Þ from (17.3a) determines the components of s not to
become too close to zero. Observe that the reformulation by using (17.3) avoids the combinatorial
aspect of the nonlinear programs, but, as we can see, its solution does not coincide with the solution of
(17.1) for μ > 0. In this context, the barrier approach consists in finding an approximate solution of the
barrier problem (17.3) for a positive sequence {μk} that converges to zero.
It is worth comparing these two approaches based on the KKT conditions and on the barrier
problem. For this, let us write the KKT conditions for (17.3) as
μS1 e þ z ¼ 0, ð17:4bÞ
cE ðxÞ ¼ 0, ð17:4cÞ
cI ðxÞ s ¼ 0: ð17:4dÞ
Looking at (17.2) and (17.4), we observe that they differ only in the second equations (17.2b) and
(17.4b). Notice that (17.4b) becomes very nonlinear near the solution as s ! 0. To eliminate this
difficulty, it is advantageous for the Newton method to transform the rational equation (17.4b) into a
quadratic one. This is done by multiplying (17.4b) by S, thus obtaining the quadratic term Sz. This is
always possible because all the diagonal elements of S are positive. With this simple transformation,
the KKT conditions for the barrier problem coincide with the perturbed KKT conditions given by
(17.2). We emphasize that the presence of the quadratic term Sz in (17.4), the simplest possible
nonlinearity introduced in the KKT system, makes the barrier method with all its defects be nontrivial
for solving the general nonlinear optimization problems (17.1).
Both the homotopy and the barrier interpretation of nonlinear optimization problems are useful.
The homotopy gives rise to the definition of the primal-dual directions, whereas the barrier view is
crucial in the design of globally convergent algorithms.
We mention that the interior-point derives from the fact that the early barrier methods introduced
by Fiacco and McCormick (1968) did not use slack variables and assumed that the initial point is
feasible with the inequality constraints. These methods used the barrier function f(x) ∑i 2 I log (ci(x))
to prevent the iterates from leaving the feasible region defined by inequalities (see the logarithmic
penalty-barrier function (14.53) used in the penalty-barrier algorithm SPENBAR).
Now, applying the Newton method to the nonlinear system (17.2), in the variables x, s, y, z, the
following linear algebraic system is obtained:
2 2 32 3 2 3
∇xx L 0 J TE ðxÞ J TI ðxÞ dx ∇f ðxÞ J TE ðxÞy J TI ðxÞz
6 0 S 7 6 7 6 Sz μe 7
6 Z 0 76 d s 7 6 7
6 76 7 ¼ 6 7, ð17:6Þ
4 J E ðxÞ 0 0 0 54 d y 5 4 cE ðxÞ 5
J I ðxÞ I 0 0 dz cI ðxÞ s
602 17 Interior-Point Methods
where JE(x) ¼ ∇ cE(x) 2 ℝln and JI(x) ¼ ∇ cI(x) 2 ℝmn, are the Jacobian matrices of the equality
and inequality constraints, respectively.
The system (17.6) is called the primal-dual system. If it is solved, we get a solution d ¼ (dx, ds, dy,
dz) with which a new iteration (xþ, sþ, yþ, zþ) can be computed as
where
with τ 2 (0, 1). The relations (17.8) for determining the stepsize, called the fraction to the boundary
rule, are designed to prevent the variables s and z from approaching their bounds of zero too quickly.
A typical value of τ is 0.995.
To establish the prototype of the interior-point algorithm an error function based on the perturbed
KKT system (17.2) is introduced
n o
Eðx, s, y, z, μÞ ¼ max ∇f ðxÞ J E ðxÞT y J I ðxÞT z, kSz μek, kcE ðxÞk, kcI ðxÞ sk ,
ð17:9Þ
1. Choose the initial elements x0 and s0 > 0. Compute the initial values of the multipliers y0 and z0 > 0.
Choose an initial value for the barrier parameter μ0 > 0, as well as the parameters σ, τ 2 (0, 1). Set k ¼ 0
2. If a stopping test for the nonlinear optimization problem (17.1) is satisfied, stop; otherwise, go to step 3
3. If E(xk, sk, yk, zk, μk) > μk, then go to step 4; otherwise, go to step 8
4. Solve the primal-dual system (17.6) with respect to the searching direction d ¼ (dx, ds, dy, dz)
5. Using (17.8), compute αsmax and αzmax
6. Using (17.7), compute a new estimation of the solution (xkþ1, skþ1, ykþ1, zkþ1)
7. Set μkþ1 ¼ μk, k ¼ k þ 1 and go to step 3
8. Choose μk 2 (0, σμk) and go to step 2 ♦
Theorem 17.1 Let f(x), cE(x), and cI(x) be continuously differentiable functions. Suppose that the
Algorithm 17.1 generates a sequence of iterates {xk} and that {μk} ! 0. Then all the limit points xb of
the sequence {xk} are feasible. Moreover, if any limit point xb of the sequence {xk} satisfies the linear
independence constraint qualification (LICQ), then the first-order optimality conditions of the
problem (17.1) hold at xb:
17.2 Aspects of the Algorithmic Developments 603
Proof To simplify the proof, as in (Nocedal, & Wright, 2006), suppose that the problem contains
only the inequality constraints cI(x) and denote them as c(x). Let xb be a limit point of the sequence
{xk} and consider a subsequence fxkl g convergent to xb, i.e., fxkl g ! xb: If μk ! 0, then the error
function E given by (17.9) converges to zero, that is ðckl skl Þ ! 0: By the continuity of c, this
implies that cb≜cðxbÞ 0, i.e., xb is feasible and skl ! b s ¼ cb: Now, suppose that the linear indepen-
dence constraint qualification holds at xb: Let A ¼ fi : cbi ¼ 0g be the set of the active constraints at xb:
= A, it follows that cbi > 0 and b
For any i 2 si > 0: Therefore, by the complementarity condition (17.2b) it
follows that ½zkl i ! 0: Since ∇f ðxkl Þ J ðxkl ÞT zkl ! 0, we obtain
X
∇f ðxkl Þ ½zkl i ∇ci ðxkl Þ ! 0: ð17:10Þ
i2A
But, by the constraint qualification hypothesis LICQ, the vectors f∇b ci : i 2 Ag are linear indepen-
dent. Hence, from (17.10) and from the continuity of ∇f(.) and ∇ci(.), i 2 A, it follows that the positive
sequence fzkl g converges to a value b z 0: Taking the limit in (17.10) we get
X
∇f ðxbÞ ¼ zi ∇ci ðxbÞ:
b
i2A
Observe that the theoretical basis of the interior-point methods is quite accessible. All that is
required is the continuity of the functions of the problem and of their gradients, as well as the LICQ
hypothesis. This is the reason why these methods have very good behavior in solving large-scale
nonlinear optimization problems.
As we have already said, the interior-point methods are classified into two classes. The first one is
based on the Algorithm 17.1 which is completed by adding a linear search, a strict control of the
reduction of the slack variables s and of the multipliers z, as well as the modification of the primal-
dual system (17.6) when negative curvature is encountered. The second class computes the step by
minimizing a quadratic model of the barrier problem (17.3) with respect to a trust-region constraint.
Both these approaches have many points in common. In the following lines, we describe some aspects
of the algorithmic development. Many other details may be found in (Nocedal, & Wright, 2006),
(Sun, & Yuan, 2006), (Forsgren, Gill & Wright, 2002), or (Wright, 1991).
This section presents some modifications and extensions of the Algorithm 17.1 that enable it to solve
large-scale nonconvex problems starting from any initial point.
2 32 3 2 3
∇2xx L 0 J TE ðxÞ J TI ðxÞ dx ∇f ðxÞ J TE ðxÞy J TI ðxÞz
6 0 Σ I 7 6 7 6 z μS1 e 7
6 0 76 ds 7 6 7
6 76 7 ¼ 6 7, ð17:11Þ
4 J E ðxÞ 0 0 0 54 dy 5 4 cE ðxÞ 5
J I ðxÞ I 0 0 dz c I ðxÞ s
where Σ ¼ S1Z. Clearly, this symmetric form is suitable for using symmetric linear system solvers
which reduce the computational effort at each iteration. For solving the system (17.11), we can use
the direct methods (the factorization of the coefficient matrix, the Schur complement method, or the
null space method), as well as the iterative methods (the conjugate gradient method).
Observe that the system (17.11) can be further reduced by the elimination of the variable
ds ¼ Σ1dz þ Σ1(z þ μS1e) ¼ Σ1dz Σ1z þ μZ1e, thus obtaining
2 2 32 3 2 3
∇xx L J TE ðxÞ J TI ðxÞ dx ∇f ðxÞ J TE ðxÞy J TI ðxÞz
6 76 7 6 7
4 J E ðxÞ 0 0 54 d y 5 ¼ 4 cE ðxÞ 5: ð17:12Þ
1 dz 1 1
J I ðxÞ 0 Σ cI ðxÞ s þ Σ z μZ e
This system can be factorized by the symmetric indefinite factorization method (Bunch, & Parlett,
1971), (Bunch, & Kaufman, 1977), (Cheng, 1998), (Cheng, & Higham, 1998). Let us denote the
matrix from (17.12) by M, then this factorization computes PTMP ¼ LBLT, where L is a lower
triangular matrix, B is a block-diagonal matrix with 1 1 or 2 2 blocks and P is a permutation
matrix for conserving the sparsity and for ensuring the numerical stability.
The system (17.12) can be further reduced by the elimination of the variable
dz ¼ ΣJI(x)dx ΣcI(x) þ Σs z þ μZ1e, thus obtaining
" 2 #" #
∇xx L þ J TI ðxÞΣ J I ðxÞ J TE ðxÞ dx
J E ðxÞ 0 d y
" # ð17:13Þ
∇f ðxÞ J E ðxÞy J I ðxÞz þ J TI ðxÞ ΣcI ðxÞ Σs þ z μZ1 e
T T
¼ :
cE ðxÞ
If the number of the inequality constraints is large, then the dimension of the system (17.13) is
smaller than the dimension of the system (17.12). Moreover, the presence of the matrix J TI ðxÞΣ J I ðxÞ
in (17.13) dramatically modifies the structure of the sparse matrix of the Hessian ∇2xx L, which can be
rather unwanted for large-scale problems. A particular, favorable case is when the matrix J TI ðxÞΣ J I ðxÞ
is diagonal, case which appears when all the constraints are simple bounds.
We emphasize that the symmetric primal-dual system (17.11) or its reduced forms (17.12) or
(17.13) are ill-conditioned. The ill-conditioning is given by the presence of the matrix Σ ¼ S1Z.
When μ ! 0, some elements of Σ tend to þ1, while others tend to zero. However, because of the
special form in which this ill-conditioning arises, the direction computed by a stable factorization
method is usually accurate enough. Errors can appear only when the slacks s or the multipliers
z become very close to zero or when the Hessian ∇2xx L or the Jacobian matrix JE(x) are almost rank
deficient. This is the reason why the direct factorization methods are considered the most efficient and
reliable for computing the steps in the interior-point methods.
Cholesky factorization followed by triangular substitutions is a remarkable stable method to
compute solutions of linear systems with symmetric positive definite coefficient matrix. Usually,
Cholesky factorization of a sparse matrix produces fill-in that is some lower triangular locations in the
17.2 Aspects of the Algorithmic Developments 605
Cholesky factor contain nonzero elements even though the same locations in the original matrix are
zero (Ng, & Peyton, 1993). The problem of finding ordering (permutations) that reduces the fill-in is
too complicated, in fact being NP-complete (Rose, & Tarjan, 1975). Possible the best-known class of
ordering heuristics is the minimum degree (George, & Liu, 1989), (Mészáros, 1995). Other ordering
includes the minimum local fill and nested-dissection orderings (Rothberg, & Hendrickson, 1996).
Iterative techniques for solving the linear systems (17.11), (17.12), or (17.13) can also be used for
the search direction computation. In this case, preconditioners that cluster the eigenvalues of Σ must
be used (Nocedal, & Wright, 2006). For example, by introducing in (17.11) the change of variables
des ¼ S1 d s and multiply the second equation from (17.11) by S, then the term in Σ is transformed in
SΣS. Now, as μ ! 0, since Σ ¼ S1Z, it follows that all the elements of SΣS cluster around μI. Another
pffiffiffi
scaling like des ¼ Σ1=2 d s provides a perfect preconditioner. Indeed, des ¼ μS1 d s transforms Σ to
SΣS/μ, which converges to I when μ ! 0. To be efficient and robust, besides preconditioning that
removes the ill-conditioning determined by the barrier approach, the iterative methods must be
protected from possible ill-conditioning caused by the Hessian ∇2xx L or the Jacobinan matrices
JE(x) and JI(x).
The positive definiteness condition holds if the inertia of the primal-dual matrix (17.11) is given by
(n þ m, l þ m, 0), where n is the number of variables, m is the number of inequality constraints, and
l is the number of equality constraints of the problem (17.1). In other words, if this matrix has exactly
n þ m positive eigenvalues, l þ m negative eigenvalues and no zero eigenvalues, then the positive
definiteness condition holds.
If the primal-dual matrix (17.11) does not satisfy this inertia condition, then this can be modified as
follows. Observe that the diagonal matrix Σ is positive definite by construction, but ∇2xx L can be
indefinite. Therefore, ∇2xx L can be replaced by the matrix ∇2xx L þ δI, where δ > 0 is a sufficiently
large parameter to ensure that the inertia of the modified matrix is exactly (n þ m, l þ m, 0).
Another problem that we face is when the matrix of the primal-dual system (17.11) is singular,
caused by the rank deficiency of the matrix JE. Observe that the matrix [JI I] is always of full rank.
To overcome this singularity of the Jacobian JE, in the matrix of the primal-dual system (17.11) a
regularization parameter γ > 0 is introduced. Hence, taking into consideration the correction of inertia
and the protection to the singularity of the Jacobian of the equality constraints, the matrix of the
primal-dual system (17.11) can be modified as
606 17 Interior-Point Methods
2 3
∇2xx L þ δI 0 J TE ðxÞ J TI ðxÞ
6 Σ I 7
6 0 0 7
6 7: ð17:16Þ
4 J E ðxÞ 0 γI 0 5
J I ðxÞ I 0 0
Suppose that we have the current value of the barrier parameter μ, the constants η > 0 and β < 1 and
the value of the perturbation parameter δold from the previous iteration. Then, a procedure for
selecting the parameters γ and δ is as follows.
The Algorithm 17.2 is a variant established by Nocedal and Wright (2006) of a more elaborated
algorithm given by Wächter and Biegler (2006). The constants used in it are arbitrary. The purpose of
the algorithm is to drastically avoid modifications of the Hessian ∇2xx L while minimizing the number
of factorizations. Severe modifications of the matrix of the primal-dual system (17.11) deteriorate the
performance of the algorithm because the second-order information given by ∇2xx L is modified and, in
this case, the algorithm behaves like a steepest descent. The algorithm for inertia correction and
regularization is used at each iteration of the interior-point algorithm.
(a) The Fiacco-McCormick strategy fixes the values of the barrier parameter until the perturbed
KKT conditions (17.2) have been satisfied with some accuracy. Then the barrier parameter is
decreased as
μkþ1 ¼ σk μk , σk 2 ð0, 1Þ: ð17:17Þ
The parameter σk can be selected as a constant value, for example σk ¼ 0.2. However, it is
preferable to have a strategy for the selection of σk. One idea is to choose smaller and smaller values
for σk when the solution is being approached. If close to the solution, consider that σk ! 0 and the
parameter τ in (17.8) converges to 1. Then the interior-point algorithm has a superlinear convergence
17.2 Aspects of the Algorithmic Developments 607
rate. The Fiacco-McCormic strategy works well on many problems, but it is sensitive to the initial
point selection and to the scaling of the problem.
(b) The adaptive strategies for updating the barrier parameter are more robust in the case of nonlinear
problems. These strategies are based on complementarity exactly as in the linear programming,
and they modify the barrier parameter at each iteration k as
sTk zk
μkþ1 ¼ σk : ð17:18Þ
m
A strategy for selecting σk in (17.18) is based on the interior-point methods in linear programming.
Firstly, with μ ¼ 0 in (17.11) we solve this system to get the predictor direction (Δxaf, Δsaf, Δyaf,
Δzaf). With this, as in (17.8), determine αaf s and αz as the longest step that can be taken along the
af
affine scaling direction before violating the nonnegativity conditions (s, z) 0. These values are used
to compute μaf as the value of the complementarity along the affine scaling step, i.e.,
af T
sk þ αaf
s Δs zk þ αaf
z Δz
af
μaf ¼ : ð17:19Þ
m
With this, compute σk as
3
μaf
σk ¼ : ð17:20Þ
sTk zk =m
where the norm in (17.21) can be l1 or l2 and σ > 0 is a penalty parameter updated, as described in
Sect. 15.3.
An interior-point algorithm with line-search is as follows. After the primal-dual step d has been
computed and the maximum step lengths αsmax and αzmax given by (17.8) have been determined,
execute a line-search by backtracking. This line-search determines the stepsizes αs 2 0, αsmax and
αz 2 0, αzmax , which provide a sufficient decrease of the merit function or ensure acceptability by
the filter. The new estimate of the solution is computed as
xþ ¼ x þ αs dx , sþ ¼ s þ αs d s , ð17:22aÞ
yþ ¼ y þ αz d y , zþ ¼ z þ αz dz : ð17:22bÞ
608 17 Interior-Point Methods
In case we use the filter, the pairs of the filter are formed by using the values of the barrier function
P
f ðx Þ μ mi¼1 log ðsi Þ on one side and the constraint violations k(cE(x), cI(x) s)k on the other side.
A step is accepted only if it is not dominated by any element in the filter (see Chap. 18).
If we apply the BFGS update formula, then we must have the pairs of vectors (Δx, Δl ), where Δx
and Δl are the variations of the solution and of the gradient of the Lagrange function. After computing
a step from (xk, sk, yk, zk) to (xkþ1, skþ1, ykþ1, zkþ1), these variations are defined as
Δxk ¼ xkþ1 xk , Δlk ¼ ∇x L xkþ1 , skþ1 , ykþ1 , zkþ1 ∇x Lðxk , sk , yk , zk Þ:
Observe that the BFGS update (17.23) generates dense n n matrices. Therefore, for large-scale
problems it is preferable to use the compact representation of the limited-memory BFGS update. This
representation is based on the following theorem (Nocedal, & Wright, 2006).
Theorem 17.2 Let B0 be a symmetric and positive definite matrix and assume that a number of k
pairs of vectors (Δxi, Δli), i ¼ 0, . . ., k 1, satisfy the condition (Δxi)TΔli > 0, i ¼ 0, . . ., k 1. Let Bk
be the matrix obtained by applying k BFGS updates with these vector pairs to B0, using (17.23). Then
" #1 " #
MTk B0 Mk Lk MTk B0
Bk ¼ B 0 ½ B 0 M k N k , ð17:24Þ
LTk Dk N Tk
This result is proved by induction. The conditions (Δxi)TΔli > 0, i ¼ 0, . . ., k 1, ensure that the
inverse of the matrix from (17.24) exists, thus this expression being well defined.
Like in L-BFGS, in this case, we keep the r most recent pairs (Δxi, Δli) and, at each iteration, this
set of vectors is updated by eliminating the oldest one and by adding a newly generated pair. During
the first r iterations, the updating procedure described in Theorem 17.2 can be used without any
modification. For the iterations k > r, the updating procedure must be modified to reflect the changing
of the set of the vector pairs (Δxi, Δli), i ¼ k r, k r þ 1, . . ., k 1. Now, let us define the
n rmatrices Mk and Nk, by
Mk ¼ ½Δxkr , . . . , Δxk1 2 ℝnr , ð17:27aÞ
After the new iteration xkþ1 has been computed, the matrix Mkþ1 is obtained by deleting Δxkr and
by adding the new Δxk. The matrix Nkþ1 is updated in a similar way. The advantage of this compact
representation is that the (2r 2r) matrix in the middle of (17.28) and which must be inverted is of
small dimensions. Usually, r, the number of stored pairs (Δxi, Δli), is very small: 3, 5, or 7 (rarely 9).
Therefore, the numerical effort for the inverse computation of this matrix is negligible.
Interior-point algorithms are implemented using the compact representation of the BFGS updating
to the Hessian of the Lagrange function (17.5). Moreover, since B is positive definite, assuming that
JE is of full rank, then the matrix of the primal-dual system (17.11) is nonsingular. Hence, the solution
of (17.11) can be simply obtained by the Sherman-Morrison-Woodbury formula.
To describe the line-search interior-point algorithm, let us denote by DΦσ(x, s, d) the directional
derivative of the merit function Φσ in the direction d. The algorithm of this method is very close to the
prototype Algorithm 17.1, which contains two imbricate loops, the first being responsible for testing
the KKT optimality conditions and the second one for solving the primal-dual system (17.11). If in
the line-search a quasi-Newton method is used, then it is necessary to choose an initial symmetric and
positive definite matrix B0 which is updated along the iteration by quasi-Newton techniques.
1. Choose x0 and s0 > 0. Compute the initial values of the multipliers y0 and z0 > 0. Choose an initial value
of the barrier parameter μ0 > 0, as well as the parameters σ, τ 2 (0, 1) and the tolerances εμ and εTOL.
Select an n n matrix, symmetric and positive definite B0. Set k ¼ 0
2. If E(xk, sk, yk, zk, 0) εTOL, then continue with step 3; otherwise, stop. The current point is the optimal
solution of the problem
3. If E(xk, sk, yk, zk, μ) εμ, then go to step 4; otherwise, continue with step 10
4. Solve the primal-dual system (17.11) for the primal-dual direction d ¼ (dx, ds, dy, dz)
5. Using (17.8), compute αsmax and αzmax : Set dw ¼ [dx, ds]
6. Compute the stepsizes αs and αz satisfying αs 2 0, αsmax and αz 2 0, αzmax , as well as the condition
Φσ(xk þ αsdx, sk þ αsds) Φσ(xk, sk) þ ηαsDΦσ(xk, sk, dw)
7. Using (17.22), compute a new estimation of the solution (xkþ1, skþ1, ykþ1, zkþ1)
8. If a quasi-Newton approach is used, update Bk
9. Set k ¼ k þ 1. Continue with step 3
10. Set μ ¼ σμ and update εμ. Continue with step 2 ♦
In step 4 of this algorithm, the matrix of the system (17.11) is very likely to be modified as in
(17.16). If the merit function can cause the Maratos effect, then a second-order correction or a
nonmonotone strategy can be implemented. The barrier tolerance εμ can be selected as εμ ¼ μ, as in
the prototype Algorithm 17.1.
To be reliable and to ensure the convergence, the algorithm must be equipped with some
protection mechanisms which substantially modify the line-search in step 6. These mechanisms
refer to a careful control of the decrease in the barrier parameter μ and in the (inner) convergence
tolerance εμ, and they let the parameter τ in (17.8) converge to 1 rapidly enough.
Another specific difficulty in interior-point methods is the lack of coordination between the step
computation and the satisfaction of the bounds on variables. An approach is to monitor the stepsizes
αs and αz in (17.7). If they are smaller than a given threshold, then the primal-dual step is replaced by a
step that guarantees progress in feasibility and improvement in optimality.
An alternative to using the merit function is to use a filter to perform the line-search. In a filter
method, when the stepsizes are very small, the feasibility restoration phase can be started (Fletcher, &
Leyffer, 2002).
17.4 A Variant of the Line-Search Interior-Point Algorithm 611
In the following, we present a variant of a line-search interior-point algorithm for solving general
nonlinear optimization problems that include simple bounds on variables. We also point out some
very important details which emphasize the mathematical technology based on the interior-point
theory (Andrei, 1998b, 1998c).
Let us consider the problem
cI ðxÞ 0, ð17:30cÞ
l x u, ð17:30dÞ
cI ðxÞ s ¼ 0, ð17:31cÞ
x w ¼ l, ð17:31dÞ
x þ v ¼ u, ð17:31eÞ
s 0, w 0, v 0: ð17:31fÞ
Now, the inequality constraints (17.31f) are transferred into the objective function by a barrier
term, thus obtaining the problem
612 17 Interior-Point Methods
X
m X
n X
n
min f ðxÞ μ log ðsi Þ μ log wj μ log vj ð17:32aÞ
i¼1 j¼1 j¼1
subject to
cE ðxÞ ¼ 0, ð17:32bÞ
cI ðxÞ s ¼ 0, ð17:32cÞ
x w l ¼ 0, ð17:32dÞ
x þ v u ¼ 0: ð17:32eÞ
ð17:33Þ
where y, z, p, and q are the Lagrange multipliers. Hence, the first-order optimality conditions are as
follows:
cE ðxÞ ¼ 0, ð17:34bÞ
cI ðxÞ s ¼ 0, ð17:34cÞ
x w l ¼ 0, ð17:34dÞ
x þ v u ¼ 0, ð17:34eÞ
SZe μe ¼ 0, ð17:34fÞ
WPe μe ¼ 0, ð17:34gÞ
VQe μe ¼ 0, ð17:34hÞ
where the matrices S, Z, W, P, V, and Q are diagonal with the elements si, zi, wi, pi, vi, and qi,
respectively. e ¼ [1, 1, . . ., 1]T. JE(x)and JI(x) are the Jacobian matrices of the equality cE(x) ¼ 0 and
of the inequality constraints cI(x) 0, respectively.
If in (17.34) the barrier parameter μ is set to zero, then the last three equations are exactly the
complementarity slackness conditions. Usually, these last three equations are called μ complemen-
tarity conditions. Observe that the KKT system (17.34) is a nonlinear algebraic one with 5n þ 2m þ me
equations and a similar number of unknowns, parameterized by the barrier parameter μ. For solving
this system, the Newton algorithm is fundamental, which is known to be very efficient near the
solution. Supposing that the system (17.34) has a solution, then for each μ > 0 we get a solution
(xμ, sμ, wμ, vμ, yμ, zμ, pμ, qμ). The path
17.4 A Variant of the Line-Search Interior-Point Algorithm 613
n o
x μ , s μ , w μ , v μ , y μ , z μ , pμ , q μ : μ > 0
is called the primal-dual central path. The interior-point algorithm which will be presented in this
section is an iterative procedure. At each iteration, the algorithm attempts to move toward a point on
the central path closer to the optimal point than the current point is. If the barrier parameter μ is set to
zero, then the KKT conditions (17.34) can be partitioned into two classes:
2 3
∇f ðxÞ J E ðxÞT y J I ðxÞT z p þ q
6 7
6 c E ðxÞ 7
6 7
COðtÞ ¼ 66 c I ð x Þ s 7,
7 ð17:35Þ
6 7
4 xwl 5
xþvu
2 3
SZe
6 7
CT ðs, z, w, p, v, qÞ ¼ 4 WPe 5: ð17:36Þ
VQe
It is obvious that if we could have a point t ¼ [x, y, z, p, q, s, w, v]T to satisfy the system
COðtÞ
FðtÞ≜ ¼ 0, ð17:37Þ
CT ðs, z, w, p, v, qÞ
then the component x of this point would be the solution of the problem (17.30). The separation of the
optimality conditions into these two classes is crucial for the elaboration of an efficient algorithm for
solving (17.30) and also for proving its convergence.
For linear programming, the system (17.34) is much simpler. The only nonlinear expressions in
(17.34) are simple multiplications of the slack and dual variables, and the presence of these simple
nonlinearities makes the subject of linear programming nontrivial.
F0 ðtÞΔt ¼ FðtÞ þ μb
e, ð17:38Þ
where eb 2 ℝ5nþ2mþme is a vector with zero components, except for the last 2n þ m ones, which are all
equal to one. F0(t) is the Jacobian of the function F(t) computed at the current point t. The new point is
computed as
tþ ¼ t þ αΔt, ð17:39Þ
Two problems are critical with this algorithm: the choice of α at each iteration and possibly, the
modification of the system (17.38) in order to find a local solution to it. For linear or convex quadratic
programming, the modification of (17.38) is not necessary, and the stepsize at each iteration is
determined by standard ratio tests (Lustig, Marsten, & Shanno, 1990, 1991, 1992, 1994), (Vanderbei,
614 17 Interior-Point Methods
1990, 1994, 2001), (Ye, 1997), (Wright, 1997). In the case of general nonlinear optimization
problems, it is well known that for a poor initial estimate of the solution, the Newton method may
diverge and so the linear system (17.38) needs to be modified once again. Besides, the technique for
choosing the stepsize α is more complex. In order to achieve the convergence to a solution of (17.34),
El-Bakry, Tapia, Tsuchiya, and Zhang (1996) introduced a merit function and showed that for a
proper choice of the barrier parameter μ there is a stepsize α such that the algorithm (17.39) is
convergent to a solution of (17.30) provided that the Jacobian F0(t) from (17.38) remains nonsingular
at each iteration (Shanno, Breitfeld, & Simantiraki, 1996), (Shanno, & Simantiraki, 1997). A
modification of the merit function introduced by El-Bakry, Tapia, Tsuchiya, and Zhang (1996) was
considered by Vanderbei and Shanno (1997). They used the l2 norm of the constraints multiplied by a
parameter β > 0 and proved that there is a value of β such that the direction given by the Newton
system is a descent direction for their merit function. The corresponding algorithm was implemented
as a nonlinear version of LOQO by Vanderbei (1995).
This system is not symmetric, but it is easy to be written in a symmetric form by multiplying the
second and the third equations by 1 and the last three equations by S1, W1, and V1, respectively.
After completing this very simple algebraic operation and after eliminating the variables Δs, Δw, and
Δv as
where
17.4 A Variant of the Line-Search Interior-Point Algorithm 615
X
me X
m
K ðx, y, zÞ ¼ ∇2 f ðxÞ yi ∇2 cEi ðxÞ zi ∇2 cIi ðxÞ, ð17:43Þ
i¼1 i¼1
As above, JE(x) ¼ ∇ cE(x) and JI(x) ¼ ∇ cI(x), are the Jacobian matrices of the equality constraints
cE(x) ¼ 0 and of the inequality constraints cI(x) 0, respectively.
Observe that the matrix of the reduced Newton system (17.42) is symmetric of order (3n þ m þ me).
By solving this system and by using (17.41), we get the search direction Δt ¼ [Δx, Δy, Δz, Δp, Δ
q, Δs, Δw, Δv]T. The existence of a solution for (17.42) implies the existence of the inverse of the
diagonal matrices Z, P, and Q, which assumes a certain condition of initialization of the algorithm.
The standard Newton method assumptions are as follows (Dennis, & Schnabel, 1983), (Andrei,
1998c).
(i) There is a solution for the problem (17.30), and the associated dual variables satisfy the KKT
conditions (17.34).
(ii) The Hessian matrices ∇2f(x), ∇2cEi(x), i ¼ 1, . . ., me, ∇2cIi(x), i ¼ 1, . . ., m, exist and are locally
Lipschitz continuous at x.
(iii) The set of vectors {∇cE1(x), . . ., ∇cEme(x)} [ {∇cIi(x), i 2 A(x)} is linearly independent,
where A(x) is the set of the active inequality constraints at x.
(iv) For every vector d 6¼ 0 satisfying ∇cEi(x)Td ¼ 0, i ¼ 1, . . ., me, and ∇cIi(x)Td ¼ 0, i 2 A(x), we
have dTK(x, y, z)d > 0.
(v) For i ¼ 1, . . ., m, zicIi(x) > 0 and for j ¼ 1, . . ., n, pj xj lj > 0 and qj uj xj > 0:
Proposition 17.1 Suppose that the conditions (i)-(v) hold and s ¼ cI(x), w ¼ x l and v ¼ u x.
Then the Jacobian matrix F0(t) of function F(t) given by (17.40) is nonsingular.
Proof Consider the reduced problem in which only the inequality constraints active in the minimizer
point are used. Then, from the theory of the equality constraints optimization it follows that the
matriceal block given by the first five rows and columns of the matrix (17.40) is nonsingular. Hence,
the nonsingularity of the matrix from (17.40) follows from the strict complementarity condition (v)
and from the nonsingularity of the matriceal block from (17.40). ♦
Generally, in current implementations the reduced Newton system (17.42) is not used in the form
in which it appears. Usually, the reduction is continued by the elimination from (17.42) of the
variables Δz, Δp and Δq as
where
616 17 Interior-Point Methods
Now, by solving (17.46) we get the variables Δx and Δy with which the rest of the variables are
immediately obtained from (17.45) and (17.41). Notice that, as in linear programming, we must solve
a symmetric undefined algebraic system, but in this case the Jacobian and the Hessian matrices of the
functions defining the problem are involved, which is much more complicated.
Denote Φk ¼ Φ(tk) the value of the merit function at the iterate tk and Φk(α) ¼ Φ(tk þ αΔtk), which
illustrates the dependences of the merit function on the stepsize α. Clearly, Φk(0) ¼ Φ(tk) ¼ Φk.
Therefore,
The following proposition shows that the search direction given by the perturbed Newton system
(17.38)
1
Δtk ¼ ½F0 ðtk Þ ½Fðtk Þ þ μb
e ð17:50Þ
Proposition 17.2 The direction Δtk given by (17.50), solution of the perturbed Newton system
(17.38), is a descent direction for the merit function (17.48).
that is Φ0(0) < 0 if and only if 2μFðtk ÞT eb 2kFðtk Þk22 : This determines the following estimation of the
barrier parameter μ to be used in the logarithmic barrier function (17.32a):
Therefore, choosing at every iteration the value of the barrier parameter μ as in (17.51), the
direction Δtk given by (17.50) is indeed a descent direction for the merit function Φ(tk). ♦
17.4 A Variant of the Line-Search Interior-Point Algorithm 617
Clearly, 0 < ξk 1 and ξk ¼ 1 if and only if sizi, wipi and viqi are equal to a constant for all i. To
specify a value for α, the following function is firstly introduced:
min i fsi ðαÞzi ðαÞ, wi ðαÞpi ðαÞ, vi ðαÞqi ðαÞg
Θ I ðα Þ ¼ γτ1 , ð17:53Þ
sðαÞT zðαÞ þ wðαÞT pðαÞ þ vðαÞT qðαÞ
2n þ m
where τ1 is the initial distance from centrality
min i s0i z0i , w0i p0i , v0i q0i
τ1 ¼ 0T 0 , ð17:54Þ
s z þ w0T p0 þ v0T q0
2n þ m
and γ 2 (0, 1) is a constant by which we can modify the distance from centrality. Observe that for
t ¼ t0 and γ ¼ 1, it follows that ΘI(0) ¼ 0. Besides, ΘI(α) is a piecewise quadratic function. To choose
the stepsize αk at each iteration, αk must satisfy ΘI(α) 0 for all α 2 [0, αk], i.e.,
min i fsi ðαÞzi ðαÞ, wi ðαÞpi ðαÞ, vi ðαÞqi ðαÞg
γ k τ1 , ð17:55Þ
sðαÞT zðαÞ þ wðαÞT pðαÞ þ vðαÞT qðαÞ
2n þ m
where the variables of the problem are considered at the iteration k and γ k 2 (0, 1). Since ΘI(α) is a
piecewise quadratic function, from (17.55) it follows that αk can be easily computed.
Considering the merit function (17.48), the Wolfe conditions for its minimization are
where 0 < β < δ < 1 are parameters responsible for the reduction of both the merit function and of the
rate of decreasing this function along the direction Δtk. Having in view that Φ(tkþ1) ¼ Φk(0), the first
Wolfe condition (17.56) is equivalent to
Φk ðαÞ Φk ð0Þ þ βαk Φ0k ð0Þ: ð17:58Þ
h 2 i
σk T
Φ0k ð0Þ ¼ 2 Φk ð0Þ sk zk þ wTk pk þ vTk qk : ð17:60Þ
2n þ m
Φ0k ð0Þ ¼ 2Φk ð0Þ þ 2μFðtk ÞT eb ¼ 2Φk ð0Þ þ 2μ sTk zk þ wTk pk þ vTk qk
sT zk þ wTk pk þ vTk qk T
It is easy to show that the estimation of the barrier parameter μk given by (17.59) with σk 2 (0, 1) is
smaller than the estimation recommended by (17.51). Therefore, μk given by (17.59) ensures the
descent character of the search direction Δtk. Moreover, the following proposition gives an estimation
of the reduction of the values of the merit function.
Proposition 17.5 The direction Δtk, solution of the perturbed Newton system (17.38) with μ given by
(17.59), is a descent direction for the merit function Φ(t) at every tk. Moreover, if the first Wolfe
condition (17.56) is satisfied, then
Φk ðαk Þ ½1 2αk βð1 σk ÞΦk ð0Þ: ð17:62Þ
Proof As we know,
Φ0k ð0Þ ¼ 2kFðtk Þk22 þ 2μk sTk zk þ wTk pk þ vTk qk :
proving the descent character of the direction given by the perturbed Newton system. Moreover,
taking into consideration the above propositions (17.3 and 17.4), from (17.58) we have
17.4 A Variant of the Line-Search Interior-Point Algorithm 619
0
Φk ðαÞ Φk ð0Þ þ βαk Φ
" k ð 0Þ T 2 ! #
sk zk þ wTk pk þ vTk qk
¼ Φk ð0Þ þ βαk 2 Φk ð0Þ σk
2n þ m
Φk ð0Þ 2βαk Φk ð0Þ þ 2βαk σk Φk ð0Þ
¼ ½1 2αk βð1 σk ÞΦk ð0Þ,
This proposition shows that the sequence {Φk} is monotonous and nonincreasing. Therefore, for
all k, Φk Φ0. Moreover, if the sequence of the stepsize {αk} is bounded away from zero and the
parameter σk is bounded away from one at every iteration, then the merit function is linearly
convergent to zero. Hence, the above inequality (17.62) is equivalent to
kFðtkþ1 Þk2
½1 2αk βð1 σk Þ1=2 : ð17:63Þ
kFðtk Þk2
Some numerical examples illustrate that a problem that may lead to the nonconvergence of the
algorithm is the case in which the sequence {kCT(sk, zk, wk, pk, vk, qk)k} converges to zero faster
than the sequence {Φ(tk)}. In such a case, the sequence of the stepsizes {αk} is decreasing to zero,
thus determining the nonconvergence of the algorithm. To avoid this situation, let us introduce the
following function:
ΘII ðαÞ ¼ sðαÞT zðαÞ þ wðαÞT pðαÞ þ vðαÞT qðαÞ γτ2 kCOðtðαÞÞk2 , ð17:64Þ
where
and γ 2 (0, 1) is a constant, the same as in (17.53). Observe that for t ¼ t0 and γ ¼ 1, ΘII(0) ¼ 0. In
general, ΘII(α) is a nonlinear function. For choosing the stepsize αk at every iteration it is necessary
for αk to satisfy
Proof The second inequality follows from proposition 17.4. Hence, we prove only the first one.
Since Θi(αk) 0,for i ¼ 1, 2, from (17.64) with γk 1/2 we have
T
sk zk þ wTk pk þ vTk qk ð1=2Þτ2 kCOðtk Þk2 :
Therefore,
620 17 Interior-Point Methods
sTk zk þ wTk pk þ vTk qk
1
This proposition shows that the complementarity conditions are bounded and γ k must be selected
as a decreasing sequence with 1/2 γ k γ k1.
Having in view all these developments, at each iteration, the stepsize αk is computed as a solution
of the following system of algebraic inequalities:
l xk þ αk Δxk u, ð17:68aÞ
1. Initialization. Choose an initial point t0 ¼ [x0, y0, z0, p0, q0, s0, w0, v0], such that l x0 u, (s0, z0) > 0,
(w0, p0) > 0, (v0, q0) > 0. Choose the parameters ε > 0, β 2 (0, 1/2], γ k1 ¼ 1 and ρ 2 (0, 1). Set k ¼ 0
2. Convergence test. Compute the value of the merit function Φ(tk) ¼ F(tk)TF(tk). If Φ(tk) ε, stop;
otherwise, go to step 3
3. Evaluation of the barrier parameter. Choose σk 2 (0, 1). Using (17.59), compute the barrier parameter μk
4. Computing the search direction. Determine Δtk by solving the reduced Newton system (17.46) and by
using (17.45) and (17.41)
17.4 A Variant of the Line-Search Interior-Point Algorithm 621
(c) Determine αIk 2 ð0, αm as the smallest positive root, such that ΘI(α) 0 for all α 2 0, αIk :
(d) Determine αIIk 2 0, αIk , such that Θ αIIk 0:
II
(e) Set αk ¼ min αIk , αIIk :
(f) Set αk ¼ ρj αk , such that αk satisfies (17.68e), where j ¼ 0, 1, . . . is the smallest integer with this
property
6. Updating the variables. Set tkþ1 ¼ tk þ αkΔtk, k ¼ k þ 1 and go to step 2 ♦
1. (Search direction) In proposition 17.2, we showed that the step direction Δt given by (17.50) is
descent for the merit function provided that the value of the barrier parameter is selected as in
(17.51).
Proposition 17.7 Suppose that f, cE, and cI are twice continuously differentiable, the derivative
of CO(t) defined by (17.35) is Lipschitz continuous and the set of gradients
{∇cE1(xk), . . ., ∇cEme(xk)} [ {∇cIi(xk), i 2 A(x)}, is linearly independent for k sufficiently large,
where A(x) is the set of active inequality constraints at x. Then, the sequence {Δtk} generated by the
PDIP algorithm is bounded.
where
2 3
K ðxk , yk , zk Þ J E ðxk ÞT J I ðxk ÞT
6 7
A ¼ 4 J E ðxk Þ 0 0 5,
J I ðxk Þ 0 0
the matrices B and C being very easily identified from F0(t). By assumptions of the proposition, the
matrix A is invertible and kA1k is uniformly bounded. But
" #1 2 1 1 1 3
A B A þ A1 B C BT A1 B BT A1 A1 B C BT A1 B
¼4 1 1
5,
BT C C BT A1 B BT A1 C BT A1 B
which is bounded, since every matrix involved is bounded. Hence, [F0(tk)]1 is uniformly bounded,
proving the proposition. ♦
2. (Stepsize) A crucial point of the algorithm is the stepsize computation. The following proposition
shows that the sequence fαk g generated in step 5e of the PDIP algorithm is bounded away
from zero.
622 17 Interior-Point Methods
Proposition 17.8 Suppose that the functions f(x), cE(x), and cI(x) are twice continuously differentia-
ble and the derivative of CO(t) is Lipschitz continuous with constant L. If the sequence {σk} is
bounded away from zero, then the sequence fαk g generated by the algorithm is also bounded away
from zero.
Proof Sine αk ¼ min αIk , αIIk , it suffices to show that the sequences αIk and αIIk are bounded
away from zero. Let us suppress the subscript k. As in (El-Bakry, Tapia, Tsuchiya, and Zhang, 1996),
let us define the vectors a(α) ¼ [s(α), w(α), v(α)]T 2 ℝmþ2n and b(α) ¼ [z(α), p(α), q(α)]T 2 ℝmþ2n.
Then, the function ΘI(α) from (17.53) can be written as
min i fai ðαÞbi ðαÞg
ΘI ðαÞ ¼ γτ1 :
aðαÞT bðαÞ
2n þ m
From the definition of αI (step 5c of the PDIP algorithm), we can see that α is the largest number in
[0, αm] such that
From proposition 17.7, it follows that Δt is bounded. Then, there is a positive constant M such that
ηi M. Straightforward computation shows that for α 2 [0, αI], we have
aðαÞT bðαÞ
ai ðαÞbi ðαÞ γτ1
2n þ m
aT b aT Δb þ bT Δa
¼ ai bi γτ1 þ α ai Δbi þ bi Δai γτ1
2n þ m 2n þ m
Δa Δb
T
2 ΔaT Δb
þα Δai Δbi γτ1
2
αð1 γτ1 Þμ α Δai Δbi γτ1
2n þ m 2n þ m
¼ αð1 γτ1 Þμ ηi α2 αð1 γτ1 Þμ Mα2 0:
Hence,
αI ð1 γτ1 Þμ=M:
T
But, as we know, μ ¼ σ 2nþm
a b
and for σ bounded away from zero it follows that μ is bounded below.
Hence, α is bounded away from zero.
I
Let us now show that the sequence {αII} generated by step 5 of the PDIP algorithm is bounded
away from zero. According to the mean-value theorem for vector-valued functions (Dennis and
Schnabel, 1983), we have
17.4 A Variant of the Line-Search Interior-Point Algorithm 623
21 3
ð
COðt þ αΔtÞ ¼ COðtÞ þ α4 ∇COðt þ ξαΔtÞdξ5Δt
0 21 3
ð
¼ COðtÞ þ α∇COðtÞΔt þ α4 ð∇COðt þ ξαΔtÞ ∇COðtÞÞdξ5Δt
21 0 3
ð
¼ ð1 αÞCOðtÞ þ α4 ð∇COðt þ ξαΔtÞ ∇COðtÞÞdξ5Δt,
0
where the last equality is from (17.38). Having in view that the derivative of CO(t) is Lipschitz
continuous with constant L, we obtain
Hence ΘII(α) α[σaTb αN]. From the condition (17.66), it follows that αII σaTb/N. Since
the sequence {σk} is bounded away from zero, then the sequence αIIk is also bounded away
from zero. ♦
Theorem 17.3 Suppose that the functions f(x), cE(x), and cI(x) are twice continuously differentiable,
and the derivative of CO(t) is Lipschitz continuous. Let {tk} be the sequence generated by the PDIP
algorithm, where {σk} ⊂ (0, 1) is bounded away from zero and one. Then the sequence {F(tk)}
converges to zero and for any limit point t ¼ [x, y, z, p, q, s, w, v]T, x is a KKT point of the
problem (17.30).
Proof Firstly, note that the sequence {kF(tk)k} is monotonously decreasing, hence it is convergent.
By contradiction, suppose that the sequence {kF(tk)k} is not convergent to zero. Then, from
proposition 17.5, we have
Φk ðαk Þ=Φk ð0Þ 1 2αk βð1 σk Þ:
624 17 Interior-Point Methods
Therefore, from proposition 17.8 it follows that the sequence {Φk} linearly converges to
zero. This leads to a contradiction. On the other hand, from proposition 17.2 we have
∇Φðtk ÞΔtk ¼ 2Fðtk ÞT Fðtk Þ þ 2μk Fðtk ÞT eb: Since the sequence {αk} is bounded away from zero, it
follows that the backtracking line-search used in step 5 of the PDIP algorithm produces
h i
∇Φðtk ÞΔtk 2 Fðtk Þ Fðtk Þ μk Fðtk Þ eb
T T
¼ ! 0:
kΔtk k kΔtk k
Therefore, from proposition 17.7, Δtk is bounded away from zero, i.e.,
However,
Therefore, it must hold that Φ(tk) ! 0 because the sequence {σk} is bounded away from one.
Again, this leads to a contradiction. Hence, the sequence {kF(tk)k} must be convergent to zero. Since
the KKT conditions for the problem (17.30) are satisfied by t, it follows that x is a KKT point for
(17.30). ♦
Example 17.1 Let us consider the following nonlinear optimization problem (Hock, & Schittkowski,
1981), (Andrei, 1998c)
min x1 x4 ðx1 þ x2 þ x3 Þ þ x3
subject to
x1 x2 x3 x4 25 0,
x21 þ x22 þ x23 þ x24 40 ¼ 0,
1 xi 5, i ¼ 1, 2, 3, 4:
The evolution of some elements corresponding to a simple variant of the PDIP algorithm is
presented in Table 17.1.
k γk σk αmax αk μk
0 0.750000 0.1 1.090858 1.039720 0.233333
1 0.625000 0.2 0.992283 0.926926 0.90664e-1
2 0.562500 0.2 1.170237 1.0 0.22643e-1
3 0.531250 0.2 1.210422 1.0 0.48802e-2
4 0.515625 0.2 1.165723 1.0 0.10580e-2
5 0.507812 0.2 1.220644 1.0 0.21612e-3
6 0.503906 0.19530 1.238018 1.0 0.42383e-4
7 0.501953 0.03823 1.039720 1.0 0.16244e-5
In this variant of PDIP, the condition (17.68d) was not implemented. Although this condition was
not implemented, yet, in the last part of the optimization process we have kCO(tk)k2 < kCT(.)k2. This
behavior ensures the convergence of the algorithm. Table 17.2 shows the evolution of the algorithm
parameters.
The parameter γ k is updated as γ kþ1 ¼ 0.5 þ (γ k 0.5)/2. Some other updating formula may be
imagined so that γ k 2 [0.5, γ k 1]. The parameter σk is computed as
(
η1 , if σk η2 sTk zk þ wTk pk þ vTk qk ,
σk ¼
η2 sTk zk þ wTk pk þ vTk qk , if σk > η2 sTk zk þ wTk pk þ vTk qk ,
where η1 ¼ 0.1 and η2 ¼ 100. Observe that the stepsize αk ! 1, exactly as in the “pure” Newton
method.
The solution of the problem is x ¼ [1, 5, 5, 1]. The objective value is 17.0140173. The
SPENBAR (Andrei, 1996a, b, c) gives the same solution involving 8 major iterations, 143 minor
iterations, and 591 evaluations of the functions defining the problem.
The PDIP algorithm gives the results from Tables 17.3 and 17.4. Again, observe that the algorithm
has the same behavior along the iterations. Even if the condition ΘII(αk) 0 was not implemented in
PDIP, we can see that after very few iterations, kCO(tk)k2 < kCT(.)k2. This ensures the convergence
of the algorithm. Again, note that the stepsize converges to 1, like in the pure Newton method.
The solution to this problem is x ¼ [0.6355, 0.286E 7, 0.3127, 0.05177]. MINOS gives the
same solution in 5 major iterations, 18 minor iterations, and 23 evaluations of the function defining
626 17 Interior-Point Methods
k γk σk αmax αk μk
0 0.750000 0.1 0.9581337 0.9498877 0.51
1 0.625000 0.2 1.098776 1.0 0.1158525
2 0.562500 0.2 1.032449 1.0 0.0282029
3 0.531250 0.2 1.058755 1.0 0.56835e-2
4 0.515625 0.2 1.006443 0.9938785 0.11798e-2
5 0.507812 0.2 1.106218 1.0 0.24329e-3
6 0.503963 0.2 1.244491 1.0 0.48777e-4
7 0.501953 0.048885 1.051240 1.0 0.23898e-5
8 0.500976 0.0024132 1.002405 1.0 0.58237e-8
Table 17.5 Performances of PDIP for solving 4 applications from the LACOP collection
In this table, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #it ¼ the number of iterations to obtain a solution, #nf ¼ the number of evaluations of the
functions defining the problem (including the gradients and Hessians), KKT ¼ the norm of the KKT conditions,
CT ¼ the norm of the centrality conditions (see (17.36), cpu ¼ the CPU computing time for obtaining a solution
(seconds), vfo ¼ the value of the objective function at the optimal point
the problem. On the other hand, SPENBAR needs 10 major iterations, 455 minor iterations, and 2083
evaluations of the functions of the problem, giving the same solution. NLPQLP gives the same
solution, needing 14 iterations, and 17 evaluations of the functions.
Table 17.5 shows the performances of PDIP for solving some applications from the LACOP
collection.
17.5 Trust-Region Interior-Point Algorithm 627
There are two main differences between the trust-region interior-point and the line-search interior-
point algorithms. The first one is that the trust-region interior-point is not a real primal-dual method.
Unlike the line-search interior-point method in which both the primal and the dual variables are
simultaneously computed, the trust-region interior-point algorithm firstly computes a step in the
variables (x, s) and then the estimates of the multipliers (dual variables). The second difference is that
the trust-region interior-point algorithm uses a scaling of the variables, which discourages the
movement toward the boundary of the feasible region. This makes the trust-region interior-point
algorithms have better convergence properties than those of the line-search interior-point.
In the following, the trust-region algorithm for finding approximate solutions of a fixed barrier
problem is presented. Then a trust-region interior-point algorithm is described, where the barrier
parameter is driven to zero.
At iterate (x, s), for a given value of the barrier parameter μ, the estimates of the Lagrange
multipliers (dual variables) (y, z) are firstly computed and then the step p ¼ ( px, ps) is determined,
which approximately solves the following subproblem:
1 1
min px ,ps ∇f ðxÞT px þ pTx ∇2xx Lpx μeT S1 ps þ pTs Σps ð17:69aÞ
2 2
subject to
J E ðxÞpx þ cE ðxÞ ¼ r E , ð17:69bÞ
ps τs: ð17:69eÞ
In this problem, Σ ¼ S1Z and the scalar parameter τ 2 (0, 1) is chosen close to 1, (for
exampleτ ¼ 0.995). The inequality (17.69e) has the same role as the fraction to the boundary rule
given by (17.8). The constraints (17.69b) and (17.69c) are linear. Clearly, we would like to set
r ¼ (rE, rI) ¼ 0, but this can cause the constraints (17.69b) (17.69c), and (17.69d) to be incompatible
or to give a step p that makes little progress toward feasibility. Therefore, the parameter r is selected
by an auxiliary computation like in the sequential quadratic programming with trust-region.
The choice of the objective function (17.69a) is motivated by the fact that the first-order optimality
conditions of (17.69a), (17.69b), and (17.69c) are exactly those given by (17.2) in which (17.2b) is
scaled by S1.
628 17 Interior-Point Methods
The trust-region constraint (17.69d) guarantees that the problem (17.69) has a finite solution even
when ∇2xx Lðx, s, y, zÞ is not positive definite, and therefore this Hessian never needs to be modified.
Besides, the trust-region formulation ensures that adequate progress is made at every iteration.
The scaling S1 used in (17.69d) is motivated by the crucial fact that the shape of the trust-region
must take into account the requirement that the slacks should not approach zero prematurely. The
scaling S1 restricts those components i of ps for which si are close to their lower bound of zero.
In the following, we present the sequential quadratic programming algorithm with trust-region for
the barrier problem. This means that at every iteration the subproblem (17.69) is solved. The
condition of stopping the iterations is defined by the error function (17.9) which uses the perturbed
KKT system (17.2) as well as by the sufficient reduction of the merit function Φσ defined by (17.21).
The algorithm is as follows.
1. Choose the initial point x0 and s0 > 0. Compute the initial values of the multipliers y0 and z0 > 0. Select an
initial value of the barrier parameter μ > 0. Consider a tolerance εμ and set k ¼ 0
2. If E(xk, sk, yk, zk, μ) εμ, then continue with step 3; otherwise, stop; the current point is the solution of
the problem
3. Compute p ¼ ( px, ps) as an approximate solution of the subproblem (17.69)
4. If p provides sufficient decrease in the merit function Φσ, then set xkþ1 ¼ xk þ px, skþ1 ¼ sk þ ps, compute
the new multiplier estimates ykþ1, zkþ1 > 0 and set Δkþ1 Δk. Continue with step 5. Otherwise, define
xkþ1 ¼ xk, skþ1 ¼ sk and set Δkþ1 < Δk. Continue with step 3
5. Set k ¼ k þ 1 and go to step 2 ♦
Now, let us discuss some aspects regarding the determination of an approximate solution of the
subproblem (17.69) as well as the estimates (ykþ1, zkþ1) of the Lagrange multipliers.
J I ðxÞpx Se
ps þ ðcI ðxÞ sÞ ¼ r I , ð17:71cÞ
To compute the vectors rE and rI consider the following subproblem in the variables v ¼ (vx, vs):
With these developments, we are ready to compute an approximate solution de for (17.71) as
follows. From (17.73), we can note that v is a particular solution of the linear constraints (17.71b) and
(17.71c). Therefore, the subproblem (17.71a), (17.71b), and (17.71c), which is a quadratic program-
ming problem with equality constraints, can be solved by using, for example, the projected conjugate
gradient algorithm. During the solving process, the satisfaction of the trust-region constraint (17.71d)
is monitored. If the boundary of this region is reached or if a negative curvature is detected or if an
approximate solution is obtained, then the algorithm is stopped. If the solution obtained by the
projected conjugate gradient algorithm does not satisfy the bounds (17.71e), then a backtracking is
used until all these are satisfied. After the step ðpx , pes Þ has been computed, the vector p is recovered
from (17.70).
It should be mentioned that at each iteration, the projected conjugate gradient algorithm requires
solving a linear system in order to perform the projection operation. For the quadratic programming
(17.71a), (17.71b), and (17.71c), this projection matrix is
" #
I Ab
T
J E ðxÞ 0
b
, where A ¼ : ð17:74Þ
Ab 0 J I ðxÞ S
Although this trust-region approach requires the solution of an augmented linear system, the
matrix (17.74) is simpler than the primal-dual matrix from (17.11). Moreover, the advantage is that
the Hessian ∇2xx L needs never to be factored because the conjugate gradient approach requires only
products of this matrix with vectors. Besides, the matrix SΣS from (17.71a) has a much tighter
distribution of eigenvalues than Σ. Therefore, the conjugate gradient method will run much better in
the presence of ill-conditioning, being much more suitable for solving the quadratic problem
(17.71a), (17.71b), and (17.71c) (Nocedal, & Wright, 2006).
y T 1 ∇f ðxÞ
b
¼ AA b b
A , ð17:75Þ
z μe
where Ab is the matrix from (17.74). It is quite possible that the estimates z obtained from (17.75) may
not always be positive. To enforce the positivity of this multiplier, the following computational
scheme can be used:
zi ¼ min 103 , μ=si , i ¼ 1, . . . , m: ð17:76Þ
Observe that if all the components of z are defined as in (17.76), then the matrix Σ reduces to μS2.
The quantities μ/si are called the i-th primal multiplier estimate of multipliers.
where
1 1
qσ ðpÞ ¼ ∇f ðxÞT px þ pTx ∇2xx Lpx μeT S1 ps þ pTs Σps þ σmðpÞ, ð17:80Þ
2 2
J E ðxÞpx þ cE ðxÞ
m ð pÞ ¼ : ð17:81Þ
J I ðxÞpx ps þ cI ðxÞ s 2
where ρ is a parameter in (0, 1). Observe that this condition is exactly as (15.38). Therefore, the value
of σ can be computed by the procedure described in (15.39) from the sequential quadratic
programming.
1. Choose the value for the parameters η > 0, τ 2 (0, 1), σ 2 (0, 1), ρ 2 (0, 1), and ξ 2 (0, 1). Choose the
tolerances εμ and εTOL small enough. If the quasi-Newton approach is used, choose a symmetric n n
matrix B0. Choose the initial values of the parameters μ > 0 and Δ0 as well as the initial points x0, s0 > 0.
Set k ¼ 0
2. If E(xk, sk, yk, zk, 0) > εTOL, then go to step 3; otherwise, stop
3. If E(xk, sk, yk, zk, μ) > εμ, then go to step 4; otherwise, go to step 13
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 631
The tolerance on the barrier parameter can be defined as εμ ¼ μ, or an adaptive strategy can be used
for its updating. It is quite clear that the merit function can lead to the Maratos effect. In this case, the
second-order corrections or a nonmonotone strategy can be used. Algorithm 17.6 is implemented in
KNITRO/INTERIOR (Byrd, Hribar, and Nocedal, 1999), which uses the exact Hessian or a quasi-
Newton approximation of this matrix and follows to be presented in the next section.
In Chap. 15, the KNITRO/ACTIVE algorithm based on the active-set sequential linear-quadratic
programming method has been presented. This chapter describes the KNITRO/INTERIOR algo-
rithm, together with its numerical performances for solving large-scale general continuous nonlinear
optimization problems. KNITRO/INTERIOR provides two procedures for computing the steps
within the interior-point approach. In the version INTERIOR-CG, each step is computed using a
projected conjugate gradient iteration. It factors a projection matrix and uses the conjugate gradient
method to approximately minimize a quadratic model of the barrier problem. In the version
INTERIOR-DIRECT, the algorithm attempts to compute a new iterate by solving the primal-dual
KKT system using direct linear algebra. In case this step cannot be guaranteed to be of good quality or
if a negative curvature is detected, then the new iterate is computed by the INTERIOR-CG algorithm.
The description of the KNITRO/INTERIOR-CG algorithm is given in (Byrd, Hribar, & Nocedal,
1999) and its global convergence theory is presented in (Byrd, Gilbert, & Nocedal, 2000). The
method implemented in the KNITRO/INTERIOR-DIRECT algorithm is described in (Waltz,
Morales, Nocedal, and Orban, 2003).
Consider the problem
cI ðxÞ 0, ð17:83cÞ
X
m
min x2ℝn ,s2ℝm f ðxÞ μ log ðsi Þ ð17:84aÞ
i¼1
subject to
cE ðxÞ ¼ 0, ð17:84bÞ
cI ðxÞ s ¼ 0, ð17:84cÞ
where s 2 ℝm is a vector of slack variables and μ > 0 is the barrier parameter. The interior-point
methods consist in finding the approximate solutions of the barrier problem (17.84) for a sequence of
positive barrier parameters {μk} that converges to zero.
The KKT optimality conditions for (17.84) are as follows:
μe þ Sz ¼ 0, ð17:85bÞ
cE ðxÞ ¼ 0, ð17:85cÞ
cI ðxÞ s ¼ 0, ð17:85dÞ
where e ¼ [1, . . ., 1]T, S ¼ diag (s1, . . ., sm), JE(x), and JI(x) are the Jacobian matrices corresponding
to the equality and inequality constraints vectors, respectively. The vectors y and z are the Lagrange
multipliers (dual variables) associated to the equality and inequality constraints. We also have s, z > 0.
In the line-search approach, the Newton method is applied to (17.85), backtracking if necessary, so
that the variables s and z remain positive and a merit function is sufficiently reduced. In the trust-
region approach, a quadratic programming problem is associated to (17.84) and the step of the
algorithm is an approximate solution of this quadratic programming sub-problem. These two
approaches are implemented in the KNITRO/INTERIOR-DIRECT and KNITRO/INTERIOR-CG
algorithms, respectively.
A very important component in the interior-point methods is the procedure for choosing the
sequence of the barrier parameters {μk}. KNITRO contains several options. In the Fiacco-McCormic
monotone strategy, the barrier parameter μ is held fixed for a series of iterations until the KKT (17.85)
are satisfied to some accuracy. In the adaptive strategy, the barrier parameter is updated at every
iteration using different rules: the rule implemented in LOQO based on the deviation of the minimum
complementarity pair from the average (Vanderbei, & Shanno, 1999), a probing strategy that uses
Mehrotra’s predictor step to select a target value for μ, a quality-function approach and some other
rules described in (Nocedal, Wächter, & Waltz, 2005).
To control the quality of the steps, both interior-point algorithms implemented in KNITRO make
use of a nondifferentiable merit function
X
m
Φσ ðx, sÞ ¼ f ðxÞ μ log ðsi Þ þ σkcE ðxÞk2 þ σkcI ðxÞ sk2 , ð17:86Þ
i¼1
where σ > 0. A step is acceptable only if it provides a sufficient decrease of the merit function (17.86).
Let us now present the interior-point algorithms implemented in KNITRO.
KNITRO/INTERIOR-DIRECT Algorithm
In this algorithm, the search direction is determined by the direct solving of the Newton system
associated to the nonlinear system given by the KKT optimality conditions (17.85). To obtain global
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 633
convergence in the presence of the nonconvexity of the Hessian or of the Jacobian singularities, this
step may be replaced under certain circumstances by a safeguarding trust-region step. KNITRO/
INTERIOR-DIRECT is described in (Byrd, Nocedal, and Waltz, 2006). (See also (Waltz, Morales,
Nocedal, and Orban, 2003).)
By applying the Newton method to the system (17.85) in the variables x, s, y, z, we get
2 2 32 3 2 3
∇xx L 0 J TE ðxÞ J TI ðxÞ dx ∇f ðxÞ J TE ðxÞy J TI ðxÞz
6 0 S 7 6 7 6 Sz μe 7
6 Z 0 76 d s 7 6 7
6 76 7 ¼ 6 7, ð17:87Þ
4 J E ðxÞ 0 0 0 54 d y 5 4 cE ðxÞ 5
J I ðxÞ I 0 0 dz cI ðxÞ s
then the step d determined as a solution of (17.87) can be guaranteed to be a descent direction for the
merit function (17.86). In this case, compute the scalars
αsmax ¼ max fα 2 ð0, 1 : s þ αds ð1 τÞsg, ð17:90aÞ
xþ ¼ x þ αs dx , sþ ¼ s þ αs d s , ð17:92aÞ
yþ ¼ y þ αz d y , zþ ¼ z þ αz dz : ð17:92bÞ
On the other hand, if the inertia of the matrix in (17.87) is not as in (17.89) or if the stepsize αs or αz
is less than a given threshold, then the step d solution of (17.87) is rejected. In this case, the search
direction d is not a descent one for the merit function (17.86). The algorithm reverts to the trust-region
method implemented in KNITRO/INTERIOR-CG, algorithm guaranteed to provide a successful step
even in the presence of a negative curvature or singularity and which is described in the next section.
It is worth mentioning that this strategy implemented in KNITRO/INTERIOR-DIRECT is differ-
ent from the line-search interior-point algorithms IPOPT (Wächter, & Biegler, 2005a, 2005b, 2006)
and LOQO (Vanderbei, & Shanno, 1999). Whenever the inertia condition is not satisfied, then IPOPT
and LOQO modify the Hessian ∇2xx L: Instead, KNITRO/INTERIOR-DIRECT implements the above
strategy because it permits to compute a step by using a null space approach without modifying the
Hessian ∇2xx L: Moreover, using the trust-region step guarantees progress in case the line-search
approach fails (Wächter, & Biegler, 2000), (Byrd, Marazzi, & Nocedal, 2004b).
634 17 Interior-Point Methods
It is known that the step lengths αs or αz in (17.92) converge to zero when the line-search iterations
converge to nonstationary points. In this case, the algorithm monitors these step lengths. If one of
them is smaller than a given threshold, then the iterate given by (17.87) and (17.92) is discarded and
replaced with the trust-region step.
Therefore, the algorithm monitors two criteria: the inertia of the matrix in (17.87) and the step
lengths (17.91). If these two criteria are satisfied, then we continue the iterations by using the Newton
method for solving (17.87) by the direct method.
For the initialization of the algorithm, it is necessary to compute the initial values of the multipliers
y0 and z0. The multipliers are computed as the least-squares solution of the system given by (17.85a)
and (17.85b). If the line-search is discarded, then one or more KNITRO/INTERIOR-CG iterations are
executed until one of them provides sufficient reduction in the merit function. The KNITRO/
INTERIOR-DIRECT algorithm presented below uses DΦσ(x, s, d ), which is the directional deriva-
tive of the merit function Φσ along a direction d.
1. Choose the initial point x0, s0 > 0, and the parameters η > 0 and 0 < αmin < 1. Compute the initial values of
the multipliers y0 and z0 > 0. Choose a value of the trust-region radius Δ0 > 0 and a value for the barrier
parameter μ > 0. Set k ¼ 0
2. If a test for stopping the iterations is satisfied, then stop; otherwise, go to step 3
3. If the perturbed KKT optimality conditions (17.85) are approximately satisfied, then go to step 9;
otherwise, go to step 4
4. Factorize the matrix of the primal-dual system (17.87) and compute neig as the number of the negative
eigenvalues of this matrix
5. Set LineSearch ¼ False
6. If neig l þ m, then:
Solve the system (17.87) to obtain the direction d ¼ (dx, ds,dy, dz)
Define w ¼ (xk, sk) and dw ¼ (dx, ds)
Compute αsmax and αzmax as in (17.90)
If min αsmax , αzmax > α min , then:
Update the penalty parameter σk(see the merit function below)
Compute a stepsize αs ¼ ααsmax , α 2 ð0, 1, such that
Φσ(w þ αsdw) Φσ(w) þ ηαsDΦσ(w, dw)
If αs > αmin, then:
Set αz ¼ ααzmax
Compute (xkþ1, skþ1, ykþ1, zkþ1) as in (17.92)
Set LineSearch ¼ True
7. If LineSearch ¼ False, then compute (xkþ1, skþ1, ykþ1, zkþ1) using the algorithm KNITRO/INTERIOR-
CG described in the next section
8. Compute Δkþ1. Set k ¼ k þ 1 and go to step 3
9. Choose a new smaller value for the barrier parameter μ and go to step 2 ♦
Observe that at every iteration the algorithm computes and maintains a trust-region radius Δk in
case it needs to revert to the trust-region KNITRO/INTERIOR-CG algorithm in step 7.
KNITRO/INTERIOR-CG Algorithm
The second algorithm implemented in KNITRO computes the search directions by using a quadratic
model and trust-regions. This strategy permits great freedom in the choice of the Hessian and
provides a mechanism for coping with the Jacobian and Hessian singularities. However, the iterations
of this algorithm are more complex. The KNITRO/INTERIOR-CG algorithm is described in (Byrd,
Hribar, and Nocedal, 1999) and analyzed in (Byrd, Gilbert, and Nocedal, 2000).
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 635
To describe this algorithm, observe that the barrier problem (17.84) is an equality constrained
optimization problem which can be solved by using a sequential quadratic programming (SQP)
method with trust-regions. However, a straightforward application of the SQP method to the barrier
problem leads to inefficient steps that tend to violate the positivity of the slack variables and
frequently cuts short the trust-region constraint. To overcome this difficulty, Byrd, Nocedal, and
Waltz (2006) suggested the following SQP method associated to the barrier problem (17.84).
At the current iterate (xk, sk) and for a given value of the barrier parameter μ, firstly compute the
Lagrange multiplier estimates (yk, zk) and then the step d ¼ (dx, ds) as solution of the following
subproblem:
1
min dx ,ds ∇f ðxk ÞT dx þ d Tx ∇2xx Lðxk , sk , yk , zk Þd x
2 ð17:93aÞ
T 1 1
μe Sk ds þ dTs Σk d s
2
subject to
cE ðxk Þ þ J E ðxk Þdx ¼ r E , ð17:93bÞ
ds τs, ð17:93eÞ
where Σk ¼ S1 k Z k and τ ¼ 0.995. Ideally, the residues rE and rIshould be zero, i.e., r ¼ (rE, rI) ¼ 0,
but since this value can determine the constraints to be incompatible or produce a poor step, we would
rather choose r as the smallest vector such that the constraints (17.93b), (17.93c), and (17.93d) should
be consistent.
The choice of the objective function (17.93a) is motivated by the fact that the first-order optimality
conditions of (17.93a), (17.93b), and (17.93c) are given by (17.85) with the second block of equations
scaled by S1. Therefore, the steps computed by using (17.93) are related to those of the line-search
algorithm described in the previous section. The trust-region constraint (17.93d) guarantees that
(17.93) has a finite solution even if the Hessian of the Lagrangian ∇2xx Lðxk , sk , yk , zk Þ is not positive
definite. Hence, the Hessian matrix never needs to be modified in this algorithm. The scaling S1 k used
in the trust-region constraint is crucial in the economy of the algorithm.
Step Computation
The presence of the nonlinear constraints (17.93d) and of the bounds (17.93e) makes the highly
accurate solving of (17.93) difficult. However, useful inexact solutions can be computed at a
moderate cost. KNITRO uses the null space approach, in which step d is computed as a sum of a
normal step v that attempts to satisfy the linear constraints (17.93b) and (17.93c) with r ¼ 0 and also,
possibly, the trust-region, and of a tangential step that lies on the tangent space of the constraints and
that tries to achieve optimality.
The normal step v ¼ (vx, vs), is the solution of the following subproblem:
subject to
vx , S1 vs 0:8Δ, ð17:94bÞ
2
636 17 Interior-Point Methods
in which the arguments of the functions appearing in (17.94) have been omitted. An inexact solution
to the subproblem (17.94) is computed by using a dogleg approach, which minimizes (17.94a) along a
piecewise linear path composed of a steepest descent step in the norm used in (17.94b) and a
minimum-norm Newton step with respect to the same norm. The scaling S1vs in the norm from
(17.94b) tends to limit the extent to which the bounds on the slack variables are violated.
Once the normal step v has been computed, the vectors rE and rI from (17.93b) and (17.93c),
respectively, are computed as residuals, namely,
r E ¼ J E vx þ cE , r I ¼ J I vx vs þ ðcI sÞ:
Once the normal step v ¼ (vx, vs) is computed, the subproblem (17.93) can be written as
1 T 2
min dx ,ds ∇f T dx μeT S1 d s þ d ∇ Ld þ dTs Σds ð17:95aÞ
2 x xx x
subject to
J E d x ¼ J E vx , ð17:95bÞ
J I d x d s ¼ J I vx vs , ð17:95cÞ
d x , S1 ds Δ, ð17:95dÞ
2
which is called tangential subproblem. Now, to find an approximate solution d of the subproblem
(17.95), firstly introduce the scaling
which transforms (17.95d) into a sphere. Then the projected conjugate gradient (CG) method to the
transformed quadratic program is applied, where all the iterates are in the linear manifold defined by
(17.95b) and (17.95c). While solving by using CG, the strategy of Steihaug is used, with the
monitoring of the satisfaction of the trust-region constraint (17.95d). The iterations are stopped if
the boundary of this region is reached or if a negative curvature is detected. Finally, if necessary, step
d is truncated to satisfy (17.93e). The KNITRO/INTERIOR-CG algorithm is as follows.
1. Choose x0, s0 > 0 and Δ0 > 0. Choose a value for η > 0. Set k ¼ 0
2. If a test for stopping the algorithm is satisfied, stop; otherwise, go to step 3
3. If the perturbed KKK system (17.85) is approximately satisfied, go to step 11; otherwise, go to step 4
4. Compute the normal step vk ¼ (vx, vs)
5. Compute the Lagrange multipliers yk and zk > 0
6. Compute the total step dk by applying the projected conjugate gradient algorithm to the subproblem
(17.95a), (17.95b), and (17.95c)
7. Update the penalty parameter σk (see the merit function below)
8. Compute aredk(dk) and predk(dk) by using the relations below
9. If aredk(dk) η predk(dk), then set xkþ1 ¼ xk þ dx, skþ1 ¼ sk þ ds and update Δkþ1; otherwise, set
xkþ1 ¼ xk, skþ1 ¼ sk and choose Δkþ1 < Δk
10. Set k ¼ k þ 1 and go to step 3
11. Choose a smaller value for the barrier parameter μ and go to step 2 ♦
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 637
In Algorithm 17.8,
ared ðdÞ ¼ Φσ ðx, sÞ Φσ ðx þ dx , s þ ds Þ ð17:97Þ
Merit Function
The role of the merit function (17.86) is to determine whether a step can be accepted. Byrd, Hribar,
and Nocedal (1999) show that the efficiency of the algorithm depends on the choice of the penalty
parameter σ. In both interior-point algorithms implemented in KNITRO/INTERIOR, at every itera-
tion σ is chosen so that the decrease in the quadratic model of the merit function produced by a step
d is proportional with σ multiplied by the decrease in the linearized constraints.
represents the first-order violation of the constraints and ξ is a parameter that follows to be discussed.
Define the predicted decrease in the merit function as
pred ðd Þ ¼ Qσ ð0Þ Qσ ðdÞ: ð17:100Þ
In all the cases, the penalty parameter σ is chosen large enough such that
pred ðdÞ ρσðmð0Þ mðd ÞÞ, ð17:101Þ
(
1, if dTx ∇2xx Ldx þ dTs Σds > 0,
ξ¼ ð17:102Þ
0, otherwise:
This choice of ξ guarantees that the directional derivative of Φσ in the direction d is negative.
Computational Aspects
KNITRO/INTERIOR contains many algorithmic options and features that are listed and discussed in
the documentation of the package (Waltz, 2004). In the following, we shall present some of these
options implemented in KNITRO.
Initial point strategy. It is well known that any interior-point algorithm is very sensitive to the
choice of the initial point. In KNITRO, several different strategies are implemented. One strategy is
as follows. At an initial point x0 specified by the user, an affine scaling step d A ¼ dAx , dAs , d Ay , dAz is
computed by solving the system (17.87) with μ ¼ 0. Then, s1 ¼ max 1, s0 þ dAs and z1 ¼
max 1, z0 þ dAz are defined, where the operators max and absolute are component-wise applied.
The primal variables x and the multipliers y associated to the equality constraints are not altered, i.e.,
(x1, y1) ¼ (x0, y0). Finally, the initial value of the barrier parameter is computed as μ1 ¼ sT1 z1 =m:
Hessian options. There are some options in KNITRO for using the second derivatives. One
possibility is that the user can supply the first and the second derivatives, which generally results in
the greatest level of robustness and efficiency for all the three algorithms implemented in KNITRO.
In some particular applications, the Hessian ∇2xx L cannot be computed or is too large to store. In these
cases, KNITRO/INTERIOR-CG and KNITRO/ACTIVE allow the user to provide products Hessian-
vectors at every iteration. Another variant implemented in all the three algorithms in KNITRO is to
approximate ∇2xx L by quasi-Newton updates: BFGS, memory-less BFGS, or SR1. For example,
BFGS is implemented as
qk qTk Bk sk sTk Bk
Bkþ1 ¼ Bk þ T , ð17:103Þ
sTk qk s k Bk s k
where qk ¼ ∇xL(xþ, sþ, yþ, zþ) ∇xL(x, sþ, yþ, zþ) and sk ¼ xkþ1 x.
Feasible iterations. In some applications, it is desirable for all the iterates generated by the
optimization algorithm to be feasible with respect to some or to all of the inequality constraints.
KNITRO uses the following procedure to generate feasible iterates. If the current iteration x satisfies
the constraints cI(x) > 0, then, after computing step d, set x+ ¼ x þ dx. The slack variables are
redefined as s+ ¼ cI(x+) and tested whether the point (x+, s+) is acceptable for the merit function Φσ. If
the case, this point is defined as the new iterate, otherwise this point is rejected and a new shorter one
is computed (in a line-search method by backtracking and in a trust-region method by reducing the
trust-region radius). The justification of this strategy is as follows. If at a trial point, we have ci(x+) 0,
for some inequality constraint, then the value of the merit function is +1, and this trial point is
rejected. This strategy also rejects the steps x þ dx that are too close to the boundary of the feasible
P
region because such steps increase the barrier term μ m i¼1 log ðsi Þ in the merit function.
Crossover technique. The situation is that the interior-point methods provide only an approximate
estimate of the solution and of the optimal active-set. However, in many practical applications, it is
useful to know accurately which constraints are active. Moreover, it is often important to know the
highly accurate estimates of the Lagrange multipliers. They are important in the sensitivity analysis of
the solution to some variations of certain parameters in the problem. Increasing the accuracy of the
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 639
solution or of the active-set can be done by switching from the interior-point method to an active-set
iteration, a process which is called crossover. This technique was introduced for the first time in linear
programming by Megiddo (1989). In linear programming, the crossover technique involves two
stages: identifying the active constraints and moving from a nonbasic optimal solution to a nearby
basic one. However, in nonlinear programming, this form of crossover cannot be used because we
cannot expect the set of active constraints to correspond to a basic solution. In nonlinear optimization,
the crossover was introduced for the first time by Byrd, Nocedal, and Waltz (2006). It seeks to
identify a set of active constraints (with linearly independent constraint gradients) and computes a
solution at which these constraints are approximately satisfied, solution which determines a stationary
point of the Lagrangian by using only these constraints.
The crossover procedure internally commutes to the KNITRO/ACTIVE algorithm after the
KNITRO/INTERIOR-DIRECT or the KNITRO/INTERIOR-CG algorithms have solved the problem
to the required tolerance. Firstly, solve the equality quadratic programming (15.110) to generate a
new solution estimate. If this step does not solve the problem immediately, then the full KNITRO/
ACTIVE algorithm is started with an initial LP trust-region radius ΔLP k computed on the basis of the
active set estimate. The idea is to choose ΔLP
k small enough to exclude all the inactive constraints, but
large enough to include the active ones. The crossover algorithm as described in (Byrd, Nocedal, and
Watz, 2006) is as follows.
1. The interior-point algorithms DIRECT or CG terminate with a solution (xk, sk, yk, zk) which satisfies the
stopping tolerance εTOL
2. Estimate the set of the active constraints A
3. Using this active-set estimate, generate a step dQ by solving the equality quadratic programming problem
(15.110). Perform a line-search to determine the stepsize αQ. If xk þ αQdQ satisfies the stopping
tolerances, then the algorithm stops with this point and with the corresponding multipliers; otherwise, go
to step 4
4. Determine the initial LP trust-region radius ΔLP0 and the penalty parameter σ0 for the KNITRO/ACTIVE
(Algorithm 15.9) as n o
ci ðxk , sk Þ
0 ¼ min
ΔLP k∇ci ðxk , sk Þk : i=
2A ,
σ0 ¼ 10k(yk, zk)k1
5. Start the KNITRO/ACTIVE algorithm using the initial point (xk, sk, yk, zk), ΔLP
0 and σ0 ♦
In step 3 of Algorithm 17.9, the active set is estimated by using a tolerance test rather than by
solving the linear programming problem (15.105). This is because, in some difficult problems, the
cost of solving the linear programming subproblem can be nontrivial and, as motivated by Byrd,
Nocedal and Waltz (2006), the cost of the crossover procedure shall be a small part of the overall
solution time. Therefore, it is not necessary to solve (15.105) to identify the optimal active set. If strict
complementarity holds at the solution, the initial estimate of the active-set based on the simple
tolerance test will be correct and the crossover will succeed in one iteration without solving (15.105).
The formula for computing the initial trust-region radius ΔLP 0 from step 4 of Algorithm 17.9,
guarantees that if the active set estimate is correct, then this initial trust-region radius will be small
enough to exclude all the inactive constraints. As motivated by the theory of l1 exact penalty
functions, the penalty parameter is initialized to be a little larger than the Lagrange multiplier of
the largest magnitude at the interior-point solution.
640 17 Interior-Point Methods
Practical hints. KNITRO implements four algorithms. An algorithm is selected according to the
value of the parameter option. For option 0, KNITRO will automatically choose the best algorithm
based on the problem characteristics. For option 1, KNITRO will use the INTERIOR-DIRECT
algorithm. For option 2, KNITRO will use the INTERIOR-CG algorithm. For option 3, KNITRO
will use the ACTIVE algorithm (see Chap. 15).
Table 17.6 Performances of KNITRO for solving 12 applications from the LACOP collection. Option 0. Small-scale
nonlinear optimization applications
Table 17.7 Performances of KNITRO/INTERIOR-DIRECT for solving 12 applications from the LACOP collection.
Option 1. Small-scale nonlinear optimization applications
Table 17.8 Performances of KNITRO/INTERIOR-CG for solving 12 applications from the LACOP collection.
Option 2. Small-scale nonlinear optimization applications
In the tables above, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #it ¼ the number of iterations to obtain a solution, #itcg ¼ the number of conjugate gradient
iterations, #nf ¼ the number of evaluations of the functions defining the problem, #ng ¼ the number of evaluations of
the gradients of the functions defining the problem, #nh ¼ the number of evaluations of the Hessian, cpu ¼ the CPU
computing time for obtaining a solution of the problem (seconds), and vfo ¼ the value of the objective function at the
optimal point
Table 17.9 Performances of the KNITRO algorithms. Small-scale nonlinear optimization applications
Table 17.10 Performances of KNITRO for solving 6 applications from the LACOP collection. Option 0. Large-scale
nonlinear optimization applications
Table 17.11 Performances of KNITRO/INTERIOR-DIRECT for solving 6 applications from the LACOP collection.
Option 1. Large-scale nonlinear optimization applications
Application Penici
Application L16 is described in the LACOP collection. Table 17.14 presents the performances of the
algorithms implemented in KNITRO for solving this application.
There are a number of packages implementing the interior-point methods for nonlinear optimiza-
tion, both in the line-search and in the trust-region framework. The line-search implementation
includes LOQO (Vanderbei, & Shanno, 1999), KNITRO/INTERIOR-DIRECT (Waltz, Morales,
Nocedal, & Orban, 2003), IPOPT (Wächter, & Biegler, 2006), BARNLP (Betts, Eldersveld, Frank,
& Lewis, 2000), and MOSEK (Andresen, & Andresen, 2000). The trust-region algorithm was
implemented in KNITRO/INTERIOR-CG (Byrd, Hribar, & Nocedal, 1999). All these interior-
point packages are strong competitors of the leading active-set and of the augmented Lagrangian
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 643
Table 17.12 Performances of KNITRO/INTERIOR-CG for solving 6 applications from the LACOP collection.
Option 2. Large-scale nonlinear optimization applications
Table 17.13 Performances of the KNITRO algorithms. Large-scale nonlinear optimization applications
packages, like MINOS (Murtagh, & Saunders, 1987), SNOPT (Gill, Murray, & Saunders, 2002),
LANCELOT (Conn, Gould, & Toint, 1992b), and KNITRO/ACTIVE (Byrd, Gould, Nocedal, &
Waltz, 2004). For solving nonlinear optimization problems and applications, the interior-point and
the active-set methods are the most suitable, while the augmented Lagrangian methods seem to be
less efficient and robust. KNITRO implements a crossover technique from the interior-point to the
active-set modes (Byrd, Nocedal, & Waltz, 2006). KNITRO/INTERIOR-CG implements a trust-
region algorithm using the projected conjugate gradient iteration for computing the step, which
allows the method to work when only the Hessian-vector products are available, not the Hessian
itself.
In the interior-point methods, the primal-dual linear system to be solved at every iteration has the
same block structure which can be speculated to get efficient solutions. Both the direct solutions using
the sparse matrix technology and the conjugate gradient methods are available for solving the primal-
644 17 Interior-Point Methods
Table 17.15 Comparisons between KNITRO and CONOPT. Small-scale nonlinear optimization applications
Table 17.16 Comparisons between KNITRO and CONOPT. Large-scale nonlinear optimization applications
dual system. However, the interior-point methods, unlike the active-set methods, consider all the
constraints at each iteration, even if they are irrelevant to the solution, thus enlarging the cost of the
primal-dual iteration. The main drawbacks of the interior-point methods is their sensitivity to the
choice of the initial point, the scaling of the problem and the update strategy for the barrier parameter
μ. The interior-point methods may have difficulties and their convergence can be slow if the iterates
approach the boundary of the feasible region prematurely. To get a robust code, some algebraic
techniques must be implemented, such as second-order corrections, iterative refinement, resetting the
parameters, procedure for computing the approximate solutions of the normal and tangential
subproblems, etc.
A comparison of codes KNITRO and CONOPT for solving 12 small-scale applications from the
LACOP collection is shown in Table 17.15. Table 17.16 presents a comparison of KNITRO versus
CONOPT for solving 15 large-scale applications from the LACOP collection.
This chapter is based on the papers (Nocedal, & Wright, 2006) and (Andrei, 1998c). The interior-
point methods were first developed for linear programming by Ilya Dikin (1936–2008) (1967, 1974)
and then by Karmarkar (1984). The extension to the quadratic and nonlinear programming was quite
natural. There is a vast literature on nonlinear interior-point methods. For a comprehensive list of
references, we recommend the papers by Forsgren, Gill, and Wright (2002) and Gould, Orban, and
Toint (2005a). The book by Conn, Gould, and Toint (2000) also gives a thorough presentation of
several interior-point algorithms. The papers by Ulbrich, Ulbrich and Vicente (2004) and Wächter
17.6 Interior-Point Sequential Linear-Quadratic Programming (KNITRO/INTERIOR) 645
and Biegler (2005a, 2005b) present an analysis of interior-point algorithms that use filter globaliza-
tion. The primal barrier methods for nonlinear optimization were originally proposed by Frisch
(1955) and were further analyzed by Fiacco and McCormick (1968). In this chapter, the prototype
of interior-point algorithms was presented first. After that, a variant of the line-search interior-point
algorithm was deeply discussed, where a methodology of the interior-point algorithms development
and analysis was given. The conclusion is that for having an efficient and robust interior-point
algorithm, some methods based on sequential linearization combined with line-search or trust-
region globalization strategies have to be introduced.
A history of the barrier function methods was given by Nash (1998). Shanno (2012) presented
interesting comments on “who invented the interior-point algorithm.” His conclusion is that the
history of the interior-point method goes back to Fiacco and McCormick. It seems that the terms
interior-point and primal central path appear in the book by Fiacco and McCormick. The most
important packages implementing the interior-point methods are as follows.
KNITRO/INTERIOR implements two methods: trust-region and line-search interior-point/barrier
methods. The idea of the algorithm is to solve a sequence of barrier subproblems for a decreasing
sequence of barrier parameters. For accepting the step and for ensuring the global convergence it uses
a merit or a penalty function. The barrier subproblems are solved by a sequence of linearized primal-
dual equations. For solving the primal-dual system, KNITRO implements two options: the direct
factorization of the system and the preconditioned conjugate gradient method. The preconditioned
conjugate gradient method solves the indefinite primal-dual system by projecting constraints onto the
null space of the equality constraints. KNITRO uses the crossover technique to obtain an active set
from the solution of the interior-point method.
LOQO (Vanderbei, & Shanno, 1999) uses an infeasible primal-dual interior-point method for
solving general nonlinear optimization problems and applications. The inequality constraints are
added to the minimizing function by using a log-barrier function. To get a solution to the system of
nonlinear equations that is obtained by applying the first-order necessary optimality conditions to the
barrier function, Newton’s method is used. The solution of this system gives a search direction. A
filter or a merit function is used to accept the next iterate obtained by performing a line-search along
the search direction. The filter allows a point that improves either the feasibility or the barrier
objective as compared to the current iterate. The merit function is the barrier function and an
additional l2 norm of the violation of constraints. The exact Hessian of the Lagrangian is used in
Newton’s method. When the problem is nonconvex, then the Hessian is perturbed by adding the
matrix δI to it, where I is the identity matrix and δ > 0 is a scalar chosen in such a way that the
perturbed Hessian is positive definite.
Ipfilter (Ulbrich, Ulbrich, & Vicente, 2004) is an interior-point filter method. Firstly, a step is
generated by solving the KKT system. Then, a specially designed filter is used for selecting the
stepsize in the direction of the calculated step. The first component of the filter is the sum of the
constraint violation and centrality, while the second component is the norm of the gradient of the
Lagrangian.
IPOPT (Wächter, & Biegler, 2005a, 2005b) is a line-search filter interior-point method. The outer
loop approximately minimizes a sequence of nonlinear equality constrained barrier subproblems for a
decreasing sequence of barrier parameters. The inner loop uses a line-search filter sequential
quadratic programming method to approximately solve each barrier subproblem. IPOPT is described
in Chap. 19 of this monograph.
Filter Methods
18
This chapter focuses on the filter methods developed by Fletcher and Leyffer (2002) as a new
technique for the globalization of nonlinear optimization algorithms. These methods are motivated
by the aim of avoiding the need to choose penalty parameters in penalty functions or in augmented
Lagrangian functions and their variants. Let us consider the nonlinear optimization problems with
inequality constraints
min f ðxÞ
subject to ð18:1Þ
ci ðxÞ 0, i ¼ 1, . . . , m,
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 647
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_18
648 18 Filter Methods
optimization problems known as filter methods (Fletcher, & Leyffer, 1998, 1999, 2002), (Fletcher,
Leyffer, & Toint, 2002b, 2006).
The idea of a filter method is not of combining the objective and the constraints violation into a
single function. Instead, (18.1) is viewed as a biobjective optimization problem that minimizes f(x)
and h(x). However, as we can immediately see, the second objective is more important because we
must ensure that h(x) ¼ 0. Fletcher and Leyffer (2002) introduced the concept of domination taken
from the multi-objective optimization. A point xk dominates a point xl if and only if f(xk) f(xl) and
h(xk) h(xl). Therefore, a filter is defined as a list of pairs (h(xl), f(xl)) such that no pair dominates
another pair.
This concept can be implemented in different ways. The filter methods use the sequential linear
programming or the sequential quadratic programming in the context of the trust-region methods. At
iteration k ¼ 0, the filter is initialized as Fk ¼ {(u, 1)}, where u is an upper bound on the acceptable
constraint violation. Solving the linear programming problem or the quadratic programming problem,
a solution s is obtained. If this point is acceptable by the filter, then we set xkþ1 ¼ xk þ s and possibly
increase the trust-region radius and update the filter (adding the previous point and removing any
dominated entries). On the other hand, if the step is dominated by the current filter, then we reject it,
set xkþ1 ¼ xk,reduce the trust-region radius, and solve the linear or the quadratic programming
problem in a new context. For the process to be convergent, this general description of the filter
method needs some refinements:
1. Filter envelope. To avoid the convergence to an infeasible limit point where h(x) > 0, an envelope
around the current filter is added (Chin, 2002), (Chin, & Fletcher, 2003). A new iterate is
acceptable if for all l 2 Fk, hkþ1 βhl or fkþ1 fl γhkþ1, where fk ¼ f(xk), hk ¼ h(xk) and
0 < β, γ < 1 are constants.
2. Sufficient reduction. The filter alone cannot ensure convergence to the stationary points. For
example, if the sequence {xk} satisfies the condition hkþ1 βhk, then the iterates could converge
to an arbitrary feasible point. Therefore, if the constraint violation becomes small, a sufficient
reduction condition can be imposed as follows: denote the predicted reduction by Δqk as the value
of the objective function of the linear or of the quadratic problem and introduce the following
switching condition: if Δqk > 0, then check fk fkþ1 σΔqk, where σ 2 (0, 1) is a constant.
3. Feasibility restoration. By reducing the trust-region radius of the linear or the quadratic problems,
these may become inconsistent. That is, the current point is too far from the feasibility region to get
significant progress toward the solution. In this case, a sequential linear or quadratic programming
problem is invoked, that minimizes the constraint violation h(x). This restoration phase is left once
an acceptable point has been obtained.
The filter algorithm contains an inner and an outer iteration. During the inner iteration, the trust-
region radius is reduced until either an acceptable point is found or the restoration phase is initiated.
The aim of the restoration phase is to find an acceptable iterate xkþ1 such that the linear (or quadratic)
programming problem is compatible for some smaller values of the trust-region radius. The iterate
and the filter are updated in the outer iteration, which also initializes the trust-region radius to a given
lower bound. The filter is updated by adding (hk, fk) to Fk, which corresponds to an h-type iteration
after we move to xkþ1. Fletcher and Leyffer (2002) motivate the switching condition as follows.
When close to a feasible point, it is expected that the linear or the quadratic model of the problem
predicts a decrease in the objective function, that is Δqk > 0. However, far away from a feasible point
the predicted reduction is usually negative, that is Δqk < 0. The iterations that satisfy the switching
condition are called f-type iterations. All the other steps are called h-type iterations. Observe that if
hk ¼ 0 at a non-stationary point, then Δqk > 0, therefore implying that only f-typed steps can be
18.1 Sequential Linear Programming Filter Algorithm 649
accepted. In other words, no points for which hk ¼ 0 are added to the filter. This ensures that the
restoration phase generates only filter-acceptable points.
Suppose that the constraints from (18.1) include some linear constraints, for example, simple bounds
on variables that define a non-empty bounded region X. In the current point x, for the problem (18.1)
we can associate the following linear programming sub-problem modified with the trust-region radius
ρ > 0, as
min d2ℝn gT d
subject to:
ð18:2Þ
ci þ aTi d 0, i ¼ 1, . . . , m,
kdk1 ρ,
where g ¼ ∇ f(x), ci ¼ ci(x) and ai ¼ ∇ ci(x). Observe that the l1 norm is used to define the trust-
region because it is very easy to be implemented by adding simple bounds to the linear programming
subproblem. If it exists, let d be the solution of (18.2). Denote
Δl ¼ gT d ð18:3Þ
as the actual reduction in f(x). The measure of the constraint infeasibility which is used in this text is
given by
hð c Þ ¼ kc þ k1 , ð18:5Þ
for all i 2 F, where F denotes the current set of filter entries. We may include a point in the filter by
which we mean that its pair (h, f ) is added to the list of pairs in the filter and any pairs in the filter that
are dominated by the new pair are deleted from the filter.
Observe that this definition of the filter is not suitable for proving the convergence because it
allows points to accumulate in the neighborhood of a filter entry that has hi > 0. However, this may be
corrected by defining a small envelope around the current filter in which the points are accepted.
Therefore, the condition for a point to be acceptable to the filter is that its pair (h, f ) satisfies
650 18 Filter Methods
for all i 2 F, where β and γ are parameters such that 1 > β > γ > 0, with β close to one and γ close to
zero. Observe that the first inequality from (18.7) is exactly the reduction in h. The dependence on hi
of the second inequality is a small artifact to enable the convergence of the algorithm. Since γ is small,
the extra term has little practical impact.
It is also convenient to introduce an upper bound
hðcðxÞÞ βu ð18:8Þ
(u > 0) on the constraint infeasibility, which is readily implemented by initializing the filter with the
entry (u, 1).
As we know, a common feature in a trust-region algorithm for the unconstrained minimization is
the use of a sufficient reduction criterion
Δf σΔl, ð18:9Þ
where Δl is positive and σ 2 [0, 1) is a given parameter. However, in the trust-region algorithm, Δl
may be negative or even zero, case in which this test is no longer appropriate. Fletcher and Lyeffer
(2002) suggest using (18.9) with σ γ only when Δl is sufficiently positive, which can be achieved by
testing the inequality
Δl δh2 , ð18:10Þ
where h refers to h(c(x)) evaluated at the current point and δ > 0 is a given parameter close to zero.
Again, the dependence of the right-hand side of (18.10) on h is an artifact to enable the convergence to
be proved.
Let us denote the linear programming subproblem (18.2) by LP(x, ρ), then the sequential linear
programming filter algorithm is as follows.
1. Choose an initial point x 2 X and initialize the filter with (u, 1). Set k ¼ 1
2. Consider the restoration phase to find a point xk 2 X acceptable for inclusion in the filter such that
LPðxk , e
ρÞ is compatible for a eρ ρ0 , and initialize ρ ¼ e ρ
3. Solve the subproblem LP(xk, ρ)
4. If LP(xk, ρ) is infeasible, then place (hk, fk) in the filter (h-type iteration). Set k ¼ k þ 1 and go to step 2
5. If LP(xk, ρ) has the solution d, then if d ¼ 0, stop; the current point is a KKT point for the problem
6. If d 6¼ 0, then evaluate f(xk þ d ) and c(xk þ d )
7. If xk þ d is not acceptable for inclusion in the filter, then set ρ ¼ ρ/2 and go to step 3
8. If xk þ d is acceptable for inclusion in the filter and Δf < σΔl and Δl δ(hk)2, then set ρ ¼ ρ/2 and go to
step 3
9. If xk þ d is acceptable for inclusion in the filter and Δf < σΔl and Δl δ(hk)2 are not satisfied, then set
ρk ¼ ρ, dk ¼ d, Δlk ¼ Δl and Δfk ¼ Δf
10. If Δlk < δ(hk)2, then the pair (hk, fk) is included in the filter (h-type iteration)
11. Set xkþ1 ¼ xk þ dk, k ¼ k þ 1, initialize ρ ρ0 and go to step 3 ♦
Some important details as well as the convergence of the filter algorithm with sequential linear
programming are given in (Fletcher, Leyffer, & Toint, 1999). Mainly, the convergence theorem is
based on the necessary optimality condition by Fritz John and on the following standard hypothesis:
18.1 Sequential Linear Programming Filter Algorithm 651
the set X defined by the linear constraints of the problem (18.1) is non-empty and bounded and the
functions f(x) and c(x) of the problem are twice continuously differentiable on X. When the algorithm
is applied, one of four different possible outcomes can occur:
(i) The restoration phase iterates infinitely and fails to find a point x which is acceptable to the filter
and for which LP(x, ρ) is compatible for some ρ ρ0.
(ii) A KKT point is found (d ¼ 0 solves LP(xk, ρ) for some k).
(iii) All the iterations are f-type iterations for k sufficiently large.
(iv) There exists an infinite subsequence of h-type iterations.
The following theorem proves the convergence of the sequential linear programming filter
algorithm, as specified in (Fletcher, Leyffer, & Toint, 1999).
Theorem 18.1 If the standard hypothesis holds, then for the sequential linear programming filter
algorithm either (i) or (ii) occurs or the sequence of the iterates generated by the algorithm has an
accumulation point that satisfies the Fritz John necessary optimality conditions. ♦
More discussions about the sequential linear programming filter algorithm (filterSD) can be found
in (Fletcher, & Leyffer, 1998, 2002). In the following, let us present some numerical results with this
algorithm.
Example 18.1 To illustrate the running of the filterSD algorithm, let us consider the nonlinear
optimization problem (Duran, & Grossmann, 1986):
min ð10x1 18 ln ðx2 þ 1Þ 7x3 þ 5x4 þ 6x5 þ 8x6 19:2 ln ðx1 x2 þ 1Þ þ 10Þ
subject to
0:8 ln ðx2 þ 1Þ þ 0:96 ln ðx1 x2 þ 1Þ 0:8x3 0,
ln ðx2 þ 1Þ þ 1:2 ln ðx1 x2 þ 1Þ x3 2x6 2,
x2 x1 0,
x2 2x4 0,
x1 x2 2x5 0,
x4 þ x5 1,
where
0 x1 2, 0 x2 2, 0 x3 1, 0 x4 1, 0 x5 1, 0 x6 1:
Let x0 ¼ [0, 0, 0, 0, 0, 0]T be the initial point. The filterSD algorithm gives the following results.
The objective function value in the initial point is f(x0) ¼ 10. The value of the constraints at the initial
point are ci(x0) ¼ 0, i ¼ 1, . . ., 6. The optimal solution is x and the value of the constraints in the
optimal point c(x) are as follows:
652 18 Filter Methods
2 3 2 3
1:146514 0
6 0:546592 7 6 7
6 7 6 0 7
6 7 6 7
6 1 7 6 0:5999216 7
x ¼ 6 7
6 0:273296 7 cðx Þ ¼ 6
6
7:
7
6 7 6 0 7
6 7 6 7
4 0:299960 5 4 0 5
0 0:57325729
The value of the objective function in the optimal point is equal to f(x) ¼ 0.7592843922. This
solution was obtained in 5 iterations, 29 evaluations of the functions of the problem, and
23 evaluations of the gradients of the functions. Along the iterations, the value of the trust-region
radius was ρ ¼ 1000. ♦
Table 18.2 presents a comparison of filterSD (Table 18.1) versus NLPQLP (Table 15.4) and
KNITRO/ACTIVE (option 3) (Table 15.6) for solving some nonlinear optimization applications from
Table 18.1 Performances of filterSD for solving 8 applications from the LACOP collection
In this table we have: n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #it ¼ the number of iterations to get a solution, #nf ¼ the number of the evaluations of the
functions defining the problem, #ng ¼ the number of the evaluations of the gradients of the functions, vfo ¼ the value of
the objective function in the optimal point
the LACOP collection subject to the number of iterations (#it) and to the number of evaluations of the
functions defining the problem (#nf).
In filterSD, for solving the linear programming subproblems with simple bounds on variables, a
recursive form of an active-set method is used at each iteration. To solve degeneracy, the Wolfe
method is implemented. A limited memory reduced gradient sweep method is used for minimization
in the null space, so the KKT point is usually a local minimizer. Observe that filterSD has very good
numerical performances for solving nonlinear optimization problems (see Table 18.2). The main
advantage of this algorithm is that it avoids using second derivatives and also avoids storing an
approximate reduced Hessian matrix by taking a limited memory spectral gradient approach based on
the Ritz values (Fletcher, 2011).
In this section, we give some details on the filter algorithm with sequential quadratic programming for
solving the nonlinear optimization problem (18.1). The filter method views (18.1) as a biobjective
nonlinear optimization problem: the first is the minimization of the objective function f and the
second is the satisfaction of the constraints. These two conflicting aims can be formalized as
min f ðxÞ ð18:11Þ
and
where
X m
hðcðxÞÞ≜cðxÞþ 1 ≜ ci ðxÞþ ð18:13Þ
i¼1
is the l1 norm of the constraint violation and ci(x)+ ¼ max {0, ci(x)}, i ¼ 1, . . ., m. Observe that the
problem of satisfiability has been written as a minimization problem. Hence, (18.11) and (18.12)
represent a biobjective nonlinear optimization problem. Here, the l1 norm is used because it has some
convenient features that can be exploited in defining the algorithm.
The fundamental idea of the algorithm is to use the filter as a criterion for accepting or rejecting a
step in the sequential quadratic programming method. In other words, given the current point xk, the
solution of the quadratic programming subproblem
1 T
min d W k d þ d T gk
d 2
subject to ð18:14Þ
ATk d þ ck 0,
kdk1 ρ,
generates a step dk. Here, g(x) ¼ ∇ f(x), Wk is (an approximation to) the Hessian of the Lagrangian
L(x, λ) ¼ f(x) þ λTc(x), Ak is the Jacobian of the constraints and ck is the value of the constraints at the
point xk. Set xkþ1 ¼ xk þ dk. The new point xkþ1 is accepted by the filter if the corresponding pair
(hkþ1, fkþ1) is not dominated by any other point in the filter. Otherwise, the step is rejected and the
trust-region radius ρ is reduced. The use of the l1 norm in (18.14) ensures that (18.14) remains
tractable as quadratic programming.
654 18 Filter Methods
The above strategy based on solving a sequence of quadratic programming subproblems must be
completed in order to cope with the situations in which the subproblems are infeasible. In a sequential
quadratic programming trust-region method, reducing the trust-region radius will give rise to an
infeasible quadratic programming subproblem if the current point is infeasible in the nonlinear
optimization problem. Usually, a trust-region algorithm arrives at this situation after rejecting a
number of consecutive steps. Thus, it is not sufficient to simply increase the trust-region radius to
regain feasibility. An infeasible quadratic programming subproblem also occurs when the linearized
constraints are themselves inconsistent. To overcome this situation, Fletcher and Leyffer (2002)
chose the strategy to minimize h(c(x)).This is referred to as the restoration phase, which tries to get
close to the feasible region of the nonlinear optimization problem. A possible outcome is that the
restoration phase finds a nonzero minimum of h(c(x)) which is taken as an indication that the
nonlinear optimization problem is infeasible. Otherwise, we can assume that the algorithm finds a
point at which the quadratic programming subproblem is feasible and therefore the above method can
be continued from this point.
Having in view all these developments, the basic sequential quadratic programming filter algo-
rithm starts the iterations with an initial guess x0 and an initial estimate of the Lagrange multipliers λ0.
On the subsequent iterations the Lagrange multipliers are updated whenever the sequential quadratic
programming subproblem generates a new point that is accepted by the filter.
1. Choose an initial point x0, a value for the parameter ρ and set k ¼ 1
2. Test a criterion for stopping the iterations
3. Solve the quadratic programming subproblem (18.14)
4. If (18.14) is infeasible, find a new point xkþ1 using the restoration phase; otherwise, determine the step dk
and provisionally set xkþ1 ¼ xk þ dk and continue with step 5
5. If the pair (hkþ1, fkþ1) is acceptable to the filter, then:
accept xkþ1 and add the pair (hkþ1, fkþ1) to the filter,
remove the points dominated by the pair (hkþ1, fkþ1),
possibly increase the trust-region radius,
otherwise,
set xkþ1 ¼ xk and reduce the trust-region radius
6. Set k ¼ k þ 1 and go to step 2 ♦
Algorithm 18.2 is the basic filter algorithm with sequential quadratic programming. It is very easy
to implement, but some algorithmic extensions are required to exclude the situations in which it might
fail or might converge slowly. Fletcher and Leyffer (1998, 2002) present some extensions and
techniques for its protection against certain difficulties in solving nonlinear optimization problems.
Some of these extensions are as follows.
Second-order correction step. One of the most important property of any sequential quadratic
programming algorithm is that it usually has second-order convergence near the solution. However,
the use of a non-differentiable penalty function can preclude the acceptance of the unit step arbitrarily
close to the solution, thus preventing second-order convergence. This is known as the Maratos effect.
This difficulty can be avoided by computing a correction to the step that eliminates second-order
contributions of the nonlinear constraints. This is the second-order correction step. In the filter
algorithm, it is quite possible for a sequential quadratic programming unit step to increase both the
objective and the constraint violation functions.
18.2 Sequential Quadratic Programming Filter Algorithm 655
The second-order correction step is computed whenever xkþ1 ¼ x(k þ 1, 0) is rejected by the filter in
Algorithm 18.2. In this case, the quadratic programming subproblem that is solved is defined as
1 T
min d W k d þ d T gk
d2
subject to ð18:15Þ
ATk d þ cðkþ1,lÞ ATk d ðk,lÞ 0,
kd k1 ρ,
for l ¼ 0, 1, . . ., where c(k þ 1, 0) ¼ ckþ1 and d(k, 0) ¼ dk. Let dbk ≜dðk,lþ1Þ be the solution of (18.15). The
new point x(kþ1, l ) ¼ xk þ d(k, lþ1) is tested in the filter. If the pair (h(kþ1, l ), f(kþ1, l )) is acceptable to
the filter, then step d(k, lþ1) is accepted and the trust-region radius may be increased. Otherwise, a
sequence of second-order correction steps is performed, generating a sequence of trial points x(kþ1, l ),
l ¼ 0, 1, . . ., until one of the following holds:
hðkþ1,lÞ
r≜
hðkþ1,l1Þ
In case (i), the next iteration is xkþ1 ¼ x(kþ1, j ) and the filter with sequential quadratic programming
continues from step 2. In all the other cases, the steps are rejected and the trust-region radius is
reduced. The last case (iv) ensures the finiteness of this process. The best second-order correction step
is stored by using a penalty function estimate to rank the steps.
Feasibility restoration phase. This is the most complex part of the algorithm. One difficulty in
using the trust-region approach is that the reduction of the trust-region radius may cause the quadratic
programming subproblem to become infeasible. Besides, the linearizations of the nonlinear
constraints may themselves be inconsistent. The strategy of Fletcher and Leyffer (2002) for dealing
with this situation is to enter a restoration phase in which the purpose is to get closer to the feasible
region by minimizing h(c(x)).
If an infeasible quadratic programming problem is detected, then the solver exits with a solution of
the linear programming problem
X
min ∇cj ðxk ÞT d
d
j2J
subject to: ð18:16Þ
T ⊥
∇cj ðxk Þ d þ cj ðxk Þ 0, j 2 J ,
kdk1 ρ:
656 18 Filter Methods
In other words, the quadratic programming solver partitions the constraints into two index sets:
J ⊂ {1, 2, . . ., m} and its complement J⊥ ¼ {1, 2, . . ., m}\J. The set J contains infeasible
constraints at the point xk: cj(xk) þ ∇ cj(xk)Td > 0, j 2 J, whose l1 sum is minimized at the solution
to the linear programming problem (18.16) with respect to the constraints in J⊥ being satisfied.
The strategy in the restoration phase is to apply a sequential quadratic programming trust-region
method to the nonlinear problem
X
min cj ðxÞþ
x
j2J
subject to: ð18:17Þ
cj ðxÞ 0, j 2 J ⊥ ,
that is defined by this partitioning into the sets J and J⊥. However, the difficulty is that it is quite
possible for J and J⊥ to change from iteration k to iteration k þ 1, thus making it difficult to enforce
convergence. Therefore, the restoration phase consists of a sequence of sequential quadratic pro-
gramming iterations that continues while the subproblem (18.14) is infeasible. At each iteration, first
check the feasibility of the system
kdk1 ρ: ð18:18bÞ
If the system (18.18) has a feasible solution, then the restoration phase ends. Otherwise, the sets
J and J⊥ which solve (18.16) are determined. Next, a quadratic programming subproblem is
constructed by adding the second-order term (1/2)dTWkd into the objective function of (18.16), where
X X
W ðx, λÞ ¼ ∇2 cj ðxÞ þ λj ∇2 cj ðxÞ: ð18:19Þ
j2J j2J ⊥
The multipliers λj, j 2 J⊥, are those obtained from the solution of (18.16). Note that for solving
(18.16) a warm start can be used, i.e., the solution of (18.16) can be used to initialize the solution of
the new quadratic programming problem. The iterations in the restoration phase are continued until
either a feasible quadratic programming problem is encountered (case in which the algorithm can
return to the basic sequential quadratic programming algorithm) or an infeasible KKT point of
(18.17) is found for some sets J and J⊥ (case in which the algorithm terminates with the indication
that (18.1) is locally infeasible).
For solving (18.17), Fletcher and Leyffer (2002) suggest using the filter method by introducing the
so-called restoration filter (or phase I filter) defined by
X
hJ ≜hðcJ ðxÞÞ≜ cj ðxÞþ
j2J
and similarly hJ ⊥ : A phase I filter is a list of pairs ðhJ , hJ ⊥ Þ such that no pair dominates any other.
Fletcher and Leyffer (2002) present a computational situation which leads to the introduction of
the blocking entry in the filter. Consider the situation in which (18.1) has a global solution x and a
worse local solution x, as well as that x0 is a feasible point fairly close to x, but the subsequent
iterates xk are convergent to x. Then, if f(x0) f(x), then the filter entry (h0, f0) prevents the
sequential quadratic programming iteration from converging to x. In this case, we would like to
backtrack to x0, but our decision not to store x0 with the filter information precludes this. The pair
18.2 Sequential Quadratic Programming Filter Algorithm 657
(h0, f0) is called blocking entry in the filter. Some more details are found in (Fletcher, & Leyffer,
2002). The algorithm for the restoration phase is as follows.
1. Consider the current point xk, the trust-region radius ρ and a constraint upper bound u which measures the
violation of the constraints
2. Test a criterion for stopping the iterations
3. Solve (18.16) and determine the sets J and J⊥, which remain fixed for this iteration
4. If (18.16) is feasible, then return to a normal sequential quadratic programming and clear the restoration
filter. Otherwise, add the quadratic term (18.19) to the objective function of (18.16) and solve phase I of
the quadratic programming algorithm. Let dk be the solution and set xkþ1 ¼ xk þ dk
5. If hkþ1 kþ1
J , hJ ⊥ is acceptable to the phase I filter, then:
accept xkþ1 and add the pair hkþ1 kþ1
J , hJ ⊥ to the restoration filter,
remove the points dominated by hkþ1 J , hkþ1
J ⊥ from the filter,
possibly increase the trust-region radius ρ.
Otherwise, solve a sequence of quadratic programming second-order correction problems to get the step
dbk : Set xbkþ1 ¼ xk þ dbk and go to step 6
kþ1 kþ1
6. If hbJ , hbJ⊥ is acceptable to the phase I restoration filter, then:
kþ1 kþ1
accept xbkþ1 and add hbJ , hbJ⊥ to the restoration filter,
kþ1 kþ1
remove the points dominated by hbJ , hbJ⊥ from the restoration filter,
possibly increase the trust-region radius ρ.
Otherwise, if J has changed from the iteration k 1 and hbðk,LÞ < u, then:
accept the best second-order correction step, i.e., set xkþ1 ¼ xbkþ1 ,
remove all the blocking entries from then restorationofilter,
reduce the upper bound u to u ¼ max hbðk,LÞ , u=10 ,
otherwise:
reject the step, i.e., set xkþ1 ¼ xk,
reduce the trust-region radius ρ.
7. Set k ¼ k þ 1 and go to step 2 ♦
Observe that the trust-region radius is changed in the feasibility restoration algorithm. At its return
to the sequential quadratic programming, the current value of ρ reflects how well a first-order Taylor
series approximates the nonlinear constraints in xk. Therefore, this value of ρ is used in the next step of
the sequential quadratic programming.
Sufficient reduction. A new iterate xkþ1 is acceptable to the filter if
hkþ1 βhl ð18:20Þ
or if
are satisfied for all the filter entries l. Here, β, α1 and α2 are positive constants which can be taken
to be: β ¼ 0.99, α1 ¼ 0.25, and α2 ¼ 0.0001, respectively. An estimation of the penalty parameter μl is
computed as the least power of ten but larger than kλlk1 and cuts this value off so as to lie in the
interval [106, 106]. The value of hlμlcan be used as a predicted reduction in f. Both Δql and μl are
stored along with fl and hl. Observe that μl measures the marginal effect of the changes in f due to
658 18 Filter Methods
changes in h. This is the reason for using the term α2hlμl in (18.21). A quadratic programming step
predicts a reduction of hl to zero, equivalent to a predicted reduction in f of hlμl.
Beyond the extreme points of the filter. Mainly, the filter is a reliable oracle for deciding whether or
not to accept a step as long as the new constraint violation lies within the range of the constraint
violations recordered in the filter. However, the current heuristics do not exclude the possibility of
generating a sequence of filter entries in which {fk} is monotonically increasing and {hk} is
monotonically decreasing without converging to a KKT point. But, as long as the sufficient reduction
criterion in h is satisfied by the sequence, the points will be accepted by the filter. To overcome this
possibility, a new additional heuristic is introduced, when hkþ1 provides sufficient reduction from h1,
where h1 now refers to the leftmost entry in the filter. An overestimate μ ¼ 1000μ1 of the penalty
parameter is considered. It requires xkþ1, which provides a reduction in the resulting exact penalty
function. The value of the exact penalty function corresponding to the leftmost entry f1, h1 is f1 þ μh1.
The new point is then accepted if, in addition to the sufficient reduction from h1, it satisfies
fkþ1 þ μhkþ1 f1 þ μh1. Fletcher and Leyffer (2002) called this the North-West corner rule. A
similar rule is applied in the South-East corner of the filter.
Now, the complete sequential quadratic programming algorithm based on the filter concept can be
presented as follows.
1. Choose the initial point x0 and the initial trust-region radius ρ. Set k ¼ 0
2. Test a criterion for stopping the iterations
3. Solve (18.14) for a step dk. If (18.14) is infeasible, then continue with the restoration phase (see
Algorithm 18.3) and return to the normal sequential quadratic programming when xkþ1 is found, whose
corresponding quadratic programming is feasible. Otherwise, set xkþ1 ¼ xk þ dk and go to step 4
4. If (hkþ1, fkþ1) is acceptable to the filter, then:
accept xkþ1 and add (hkþ1, fkþ1) to the filter,
remove the points dominated by (hkþ1, fkþ1)from the filter,
possibly increase the trust-region radius ρ,
otherwise, go to step 5
5. If hkþ1 > 0, then solve a sequence of quadratic programming problems for the second-order correction
b b
d k : Set xbkþ1
step ¼ xk þ d k
If hbkþ1 , fbkþ1 is acceptable to the filter, then:
accept xbkþ1 and hbkþ1 , fbkþ1 to the filter,
remove the points dominated by hbkþ1 , fbkþ1 from the filter,
possibly increase the trust-region radius ρ,
otherwise, go to step 6
6. If there is no acceptable point in the filter, then:
If the algorithm is in the first iteration after the restoration phase, then:
accept the best second-order correction step, i.e., set xkþ1 ¼ xbkþ1 ,
remove all the blocking entries from n the filter, o
reduce the upper bound to: u ¼ max hbkþ1 , u=10 ,
otherwise, reject step dbk , i.e., set xkþ1 ¼ xk and reduce the trust-region radius ρ
7. Set k ¼ k þ 1 and go to step 2 ♦
Some more details regarding a specific implementation of this algorithm can be found in Fletcher
and Leyffer (2002).
18.2 Sequential Quadratic Programming Filter Algorithm 659
Example 18.2 Let us consider the nonlinear optimization problem from the example 18.1 solved by
means of the filter with sequential linear programming—filterSD. The filterSQP algorithm in the
implementation given by Fletcher and Leyffer (1999) with initial point x0 ¼ [0, 0, 0, 0, 0, 0]T gives
the following results.
The value of the objective function in the initial point is f(x0) ¼ 10. FilterSQP determines the
solution x ¼ [1.14651, 0.54659, 1, 0.27329, 0.29996, 0]Tfor which the value of the objective
is f(x) ¼ 0.75928439. This solution was obtained in 4 iterations, 5 evaluations of the functions
defining the problem, 5 evaluations of the gradients of the functions, and 5 evaluations to the Hessian
of the Lagrange function. The number of quadratic programming subproblems is 4. The value of the
norm of constraints at the solution is kc(x)k ¼ 1.3222E 10. The final trust-region radius is ρ ¼ 10.
The norm of the KKT optimality conditions is equal to 1.393E 8. ♦
The global convergence of the trust-region sequential quadratic programming filter algorithm,
filterSQP, under reasonable conditions (the iterates xk are in a compact set, the functions f(x) and c(x)
are twice continuously differentiable, the Hessian of the Lagrange function associated to the problem
is bounded), was proved by Fletcher, Gould, Leyffer, Toint, and Wächter (2002a). The idea of the
proof is to decompose the step into its normal and tangential components. This allows for an
approximate solution of the quadratic subproblem and incorporates the safeguarding test described
above. The normal step is responsible for the feasibility of the linearized constraints from (18.14).
The tangential step reduces the value of the objective function model while continuing to satisfy the
constraints from (18.14).
In this chapter, a combination called IPOPT of the interior-point algorithm with the filter line-search
for solving large-scale nonlinear optimization problems, proposed by Wächter and Biegler (2005a, b),
is presented. As we know, to allow convergence from poor starting points and to enforce progress to
the solution, the interior point methods both in the trust-region and in the line-search frameworks with
exact penalty merit function were developed. For example, KNITRO uses the l1 exact penalty
function (Byrd, Gilbert, & Nocedal, 2000; Byrd, Hribar, & Nocedal, 1999). On the other hand,
Fletcher and Leyffer (2002) proposed the filter methods as an alternative to the merit functions, as a
tool for global convergence guarantee in the algorithms for nonlinear optimization. The idea of the
filter is that the trial points are accepted if they improve the objective function value or the constraint
violation instead of a combination of these two measures defined by the merit function. Even if the
filter methods include different heuristics, they have been adapted to the barrier methods in a number
of ways. For example, Ulbrich, Ulbrich, and Vicente (2004) considered a trust-region filter method
and accepted the trial step on the basis of the norm of the optimality conditions. Benson, Shanno, and
Vanderbei (2002a) proposed several heuristics using the filter methods, for which the improved
efficiency is reported compared to their previous merit function approach. The global convergence of
an interior point algorithm with filter line-search was analyzed by Wächter and Biegler (2001). Here,
the assumptions made for the analysis of the global convergence are less restrictive than those made
for the line-search interior-point methods for nonlinear optimization developed, for example, by
El-Bakry, Tapia, Tsuchiya, and Zhang (1996), Yamashita (1998) or Tits, Wächter, Bakhtiari, Urban,
and Lawrence (2003).
In this context, IPOPT is an interior-point filter line-search algorithm for solving large-scale
nonlinear optimization problems developed by Wächter and Biegler (2001, 2006). This algorithm
combines the primal-dual interior-point algorithms with the filter line-search for solving problems of
the form
min f ðxÞ ð19:1aÞ
subject to
cðxÞ ¼ 0, ð19:1bÞ
xL x xU , ð19:1cÞ
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 661
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_19
662 19 Interior-Point Filter Line-Search
where x 2 ℝn, xL 2 ℝn and xU 2 ℝn are lower and upper bounds on variables, f : ℝn ! ℝ and
c : ℝn ! ℝm, with m n, are assumed to be twice continuously differentiable. Problems with general
nonlinear inequality constraints can be reformulated in the above form by introducing the slack
variables.
In the following, we shall present the primal-dual interior-point algorithm IPOPT, which involves
the step computation, the line-search with filter, the second-order corrections, and the restoration of
feasibility as well as some heuristics which improve the performances of the algorithm. Finally,
numerical results for solving some nonlinear optimization applications together with comparisons are
presented.
To simplify the presentation, we begin by presenting the method for solving the problem
min f ðxÞ ð19:2aÞ
subject to
ð19:2bÞ
cðxÞ ¼ 0,
x 0: ð19:2cÞ
Later on, we will see the method for solving general nonlinear optimization problems with simple
bounds on variables. As a barrier method, the proposed algorithm computes an approximate solution
of a sequence of barrier subproblems
X
n
min x2ℝn φμ ðxÞ≜f ðxÞ μ log xi ð19:3aÞ
i¼1
subject to
ð19:3bÞ
cðxÞ ¼ 0,
for a decreasing sequence of barrier parameters {μj} converging to zero, where xi is the i-th
component of vector x. This problem can be interpreted as applying a homotopy method to the
primal-dual equations
∇f ðxÞ þ ∇cðxÞλ z ¼ 0, ð19:4aÞ
cðxÞ ¼ 0, ð19:4bÞ
XZe μe ¼ 0, ð19:4cÞ
where the homotopy parameter μ is driven to zero (Byrd, Liu, & Nocedal, 1997). In (19.4), λ 2 ℝm
and z 2 ℝn are the Lagrange multipliers associated to (19.2b) and (19.2c), respectively. Observe that
the equations (19.4) with μ ¼ 0 and the constraints x, z 0 are exactly the KKT optimality conditions
for (19.2). Clearly, if the constraint qualifications (see Remark 11.2) are satisfied, then these are the
first-order optimality conditions.
19.1 Basic Algorithm IPOPT 663
The strategy for solving (19.2) is to compute an approximate solution to the barrier problem (19.3)
for a fixed value of μ, and then decrease the barrier parameter and continue the solution of the next
barrier problem from the approximate solution of the previous one, etc.
From the primal-dual equations (19.4), we can see that the optimality error for the barrier problem
can be defined as
k∇f ðxÞ þ ∇cðxÞλ zk1 kXZe μek1
Eμ ðx, λ, zÞ ¼ max , kcðxÞk1 , , ð19:5Þ
sd sc
where the scaling parameters sd, sc 1 are defined below. E0(x, λ, z) is the value of (19.5) for μ ¼ 0.
This measures the optimality error for the original problem (19.2). With this, we can consider that the
algorithm terminates with an approximate solution (x, λ, z) if
In this way, a component of the optimality error is scaled whenever the average value of the
multipliers becomes larger than a fixed number smax 1. (For example smax ¼ 100.)
The algorithm has two types of iterations: major iterations denoted by j, in which the value of the
barrier parameter μj is modified, and minor iterations denoted by k, in which the barrier problem is
solved for a fixed value μj of the barrier parameter. In order to achieve the superlinear convergence of
the algorithm, i.e., to get a local solution of (19.2) satisfying the second-order sufficient optimality
conditions (see Theorem 11.13), Wächter and Biegler (2006) follow the approach proposed by Byrd,
Liu, and Nocedal (1997). Therefore, at the major iteration j it is required that the approximate solution
xjþ1 , λjþ1 , zjþ1 of the barrier problem (19.3) for a given value of the barrier parameter μj should
satisfy the tolerance test
Eμj xjþ1 , λjþ1 , zjþ1 κ ε μj ð19:7Þ
before the algorithm continues with the solution of the next barrier problem, where κε > 0 is a given
constant. The barrier parameter is updated as
n n oo
ε θ
μjþ1 ¼ max TOL , min κ μ μj , μj μ , ð19:8Þ
10
with the constants κμ 2 (0, 1) and θμ 2 (1, 2). In this way, the barrier parameter is decreased at a
superlinear rate. On the other hand, given the desired tolerance εTOL, the updating given by (19.8)
does not allow μ to become smaller than necessary, thus avoiding numerical difficulties at the end of
the optimization procedure.
664 19 Interior-Point Filter Line-Search
For solving the barrier problem (19.3) in which the barrier parameter is fixed at the value μj, the
algorithm uses the Newton method applied to the primal-dual equations (19.4). As we have already
said, the minor iterations necessary for solving the barrier problem are denoted by k. Therefore, given
an iteration (xk, λk, zk) with xk, zk > 0, then the search direction dxk , d λk , d zk is obtained as solution of
the linearization of (19.4) at (xk, λk, zk), namely,
2 32 x 3 2 3
W k J k I dk ∇f ðxk Þ þ J k λk zk
6 T 76 7 6 7
4 Jk 0 0 54 dλk 5 ¼ 4 c ðx k Þ 5 ð19:9Þ
Z k 0 Xk dkz
Xk Z k e μj e
In (19.9), Jk ¼ ∇ c(xk) and Wk is the Hessian of the Lagrange function associated to the problem
(19.2)
Instead of solving the nonsymmetric linear system (19.9), the proposed method computes the
solution equivalently by first solving the smaller symmetric linear system
" #
W k þ Σk J k d xk ∇φμj ðxk Þ þ J k λk
¼ ð19:11Þ
J Tk 0 d λk cðxk Þ
derived from (19.9) by eliminating the last block row, where Σk ¼ X1 z
k Z k . The vector d k is then
computed as
dzk ¼ μj X1
k e z k Σk d k
x
ð19:12Þ
As we know, in most line-search methods, we have to ensure that the matrix Wk þ Σk from (19.11)
projected onto the null space of the constraint Jacobian J Tk , must be positive definite. This is
necessary to guarantee certain descent properties of the filter line-search used in the algorithm
described below. Also, if Jk does not have full rank, the iteration matrix in (19.11) is singular, i.e.,
the system (19.11) does not have any solutions. Therefore, as protection, it might be necessary to
modify the matrix of the system (19.11). Wächter and Biegler (2006) suggested the following
modification of the system (19.11):
x " #
W k þ Σ k þ δw I Jk dk ∇φμj ðxk Þ þ J k λk
¼ , ð19:13Þ
J Tk δc I dλk c ðx k Þ
τj ¼ max τ min , 1 μj , ð19:15Þ
τmin 2 (0, 1) being its minimum value. In interior point methods, τj is known as the parameter which
represents the fraction-to-the-boundary of the feasible region. With this, the next iteration is
computed as
where αzk is computed as in (19.14b) and, in order to ensure the global convergence, the step size
αk 2 0, αkmax for the remaining variables is determined by a backtracking line-search procedure
exploring a decreasing sequence of trial steps: αk,l ¼ 2l αkmax ðwith l ¼ 0, 1, . . .Þ of Armijo type.
Observe the difference between the computation of zkþ1 and the rest of the variables. We can see
that the parameter which represents the fraction-to-the-boundary is used only in computing the
variables xkþ1 and zkþ1.
For achieving the superlinear convergence of the algorithm, Wächter and Biegler (2001) prove that
the primal-dual barrier term Hessian Σk does not deviate too much from the primal Hessian μj X2 k :
i
This requirement is achieved by resetting the components zkþ1 of zkþ1 as
κ Σ μj μj
zkþ1 ¼ max min zkþ1 , i
i i
, , i ¼ 1, . . . , n, ð19:17Þ
xkþ1 κΣ xikþ1
where κΣ 1 is a fixed parameter. This strategy guarantees that each component σ ikþ1 of the diagonal
matrix Σkþ1 is in the interval
" #
1 μj μj
σ kþ1 2
i
, κ Σ 2 : ð19:18Þ
κ Σ xi 2 xi
k k
In IPOPT, κΣ ¼ 1010.
This method interprets the solving of the barrier problem (19.3) for μj fixed as a biobjective
optimization problem with two goals: minimizing the objective function φμj ðxÞ and minimizing the
constraint violation defined by θ(x) ≜ kc(x)k. As seen in Chap. 18, for solving this biobjective
minimization problem, the emphasis is on minimizing the constraint violation.
In this context, in the line-search with backtracking a trial point xk ðαk,l Þ≜xk þ αk,l d xk is considered
as acceptable if it leads to sufficient progress toward either goal compared to the current iterate, i.e., if
θðxk ðαk,l ÞÞ ð1 γ θ Þθðxk Þ, ð19:19aÞ
However, as we can see, each of the above criteria is complicated enough and therefore is replaced
by requiring sufficient progress in the barrier objective function whenever for the current iterate, we
have θ(xk) θmin for some constant θmin 2 (0, 1] and the following switching condition
h isφ
∇φμj ðxk ÞT dxk < 0, and αk,l ∇φμj ðxk ÞT dxk > δ½θðxk Þsθ , ð19:20Þ
with the constants δ > 0, sθ > 1, sφ 1, is satisfied. Observe that if θ(xk) θmin and (19.20) is true for
the current stepsize αk, l, then the trial point has to satisfy the Armijo condition
φμj ðxk ðαk,l ÞÞ φμj ðxk Þ þ ηφ αk,l ∇φμj ðxk ÞT dxk ð19:21Þ
instead of the condition (19.19) for the trial point to be acceptable. In (19.21), ηφ 2 (0, 1/2) is a
constant.
The algorithm maintains a filter, i.e., a set Fk ⊆ {(θ, φ) 2 ℝ2 : θ 0} computed for each iteration
k. The filter Fk contains the combinations of the constraint violation values θ and the objective
function values φ which are prohibited for a successful trial point at iteration k, i.e. during the line-
search, a trial point xk(αk, l) is rejected if θðxk ðαk,l ÞÞ, φμj ðxk ðαk,l ÞÞ 2 Fk : We say that the trial point
is not acceptable to the current filter. At the beginning of the optimization process, the filter is
initialized as
F0 ¼ ðθ, φÞ 2 ℝ2 : θ θ max , ð19:22Þ
for some θmax, so that the algorithm will never allow trial points that have a constraint violation larger
than θmax to be accepted. Later, after every iteration, the filter is augmented using the update formula
n o
Fkþ1 ¼ Fk [ ðθ, φÞ 2 ℝ2 : θ ð1 γ θ Þθðxk Þ and φ φμj ðxk Þ γ φ θðxk Þ , ð19:23Þ
where the accepted trial step size does not satisfy the switching condition (19.20) or in which the
Armijo condition (19.21) does not hold. This ensures that the iterates cannot return to the neighbor-
hood of xk. On the other hand, if both (19.20) and (19.21) hold for the accepted stepsize, the filter
remains unchanged. This procedure ensures that the algorithm cannot cycle indefinitely, for example
between two points that alternately decrease the constraint violation and the barrier objective
function.
Finally, there are cases in which it is not possible to find a trial step size αk, l that satisfies the above
criteria. In these cases, a minimum desired stepsize is approximated by using linear models of the
involved functions. For this, Wächter and Biegler (2006) define the function
8 8 9
>
> >
< >
=
>
> γ φ θ ðx k Þ s
δ½θðxk Þ θ
>
> min γ , , h isφ ,
>
> > θ
>
> : ∇φμj ðxk ÞT dxk ∇φμ ðxk ÞT dx > ;
>
> k
>
j
>
>
>
> if∇φμj ðxk ÞT d xk < 0 and θðxk Þ θ min ,
>
< ( )
αkmin ≜γ α γ φ θðxk Þ ð19:24Þ
>
> min γ θ , ,
>
> ∇φμj ðxk Þ d kT x
>
>
>
>
>
> T
>
> if∇φμj ðxk Þ d k < 0 and θðxk Þ > θ min ,
x
>
>
>
> γθ ,
>
>
:
otherwise,
19.1 Basic Algorithm IPOPT 667
where γ α 2 (0, 1] is a “safety factor.” If the backtracking line-search encounters a trial step size with
αk,l αkmin , then the algorithm reverts to a feasibility restoration phase. That is, the algorithm tries to
find a new iterate xkþ1 > 0 which is acceptable to the current filter and for which the condition (19.19)
holds by reducing the constraint violation using some kind of iterative method. Observe that the
restoration phase might not be able to produce a new iterate for the filter line-search method, for
example when the problem is infeasible.
Second-Order Corrections
Many methods for nonlinear optimization use second-order corrections to improve the proposed step
in case a trial point was rejected. A second-order correction (SOC) for some step dxk aims at reducing
the infeasibility by applying an additional Newton step for the constraints at the point xk þ d xk using
the Jacobian Jk evaluated at xk. The details are given in (Wächter & Biegler, 2006) and are as follows.
If the first trial, the stepsize αk,0 was rejected and if θ(xk(αk, 0)) θ(xk), then a second-order
correction d x,soc
k is computed, such that
J Tk dx,soc
k þ c xk þ αk,0 dxk ¼ 0: ð19:25Þ
d x,cor
k ¼ dx,soc
k þ αk,0 d xk : ð19:26Þ
The condition (19.25) does not uniquely define the second-order correction, and different choices
would be possible. In order to avoid additional matrix factorization, the proposed method uses the
same matrix as in (19.13) to compute the overall corrected step (19.26) as solution of the system
x,cor
W k þ Σ k þ δw I Jk dk ∇φμj ðxk Þ þ J k λk
¼ , ð19:27Þ
J Tk δc I dλk csoc
k
where
k ¼ αk,0 cðxk Þ þ c xk þ αk,0 d k
csoc ð19:28Þ
x
k ≜xk þ αk d k
soc x,cor
and we test if the resulting trial point xsoc is accepted in the filter. Note that the
x
original search direction dk is still used in (19.20) and on the right-hand side of (19.21). Also, xsock
replaces x(αk) in (19.21). If this trial point passes the tests, then it is accepted as the new iterate.
Otherwise, additional second-order corrections are applied until the correction step has not decreased
the constraint violation by a fraction κsoc 2 (0, 1) or until a maximum number pmax of second-order
corrections has been performed. In this case, the original search direction dxk is restored and the
regular backtracking line-search is restarted with a shorter step size αk,1 ¼ αk, 0/2.
668 19 Interior-Point Filter Line-Search
The Algorithm
The following filter line-search algorithm for solving the barrier subproblem (19.3) can be presented.
1. Choose an initial point (x0,λ0, z0) with x0, z0 > 0, an initial value for the barrier parameter μ0 > 0, and the
constants εTOL, smax 1, κ ε > 0, κ μ 2 (0, 1), θμ 2 (1, 2), τmin 2 (0, 1), κ Σ > 1, θmax 2 (θ(x0), 1], θmin > 0,
γ θ, γ φ 2 (0, 1), δ > 0, γ α 2 (0, 1], sθ > 1, sφ 1, ηφ 2 (0, 1/2), κ soc 2 (0, 1) and pmax 2 {0, 1, 2, . . .}
2. Initialization. Initialize j ¼ 0, k ¼ 0, as well as the filter F0 as in (19.22). Compute τ0 as in (19.15)
3. Test the convergence for the overall problem. If E0(xk, λk, zk) εTOL, then stop
4. Test the convergence for the barrier problem. If Eμj ðxk , λk , zk Þ κε μj , then go to step 5
5. Compute μjþ1 and τjþ1 as in (19.8) and (19.15), respectively
6. Re-initialize the filter Fk ¼ {(θ, φ) 2 ℝ2 : θ θmax}
7. If k ¼ 0, then continue with step 4; otherwise, go to step 8
8. Compute the search direction. Compute d xk , dλk , d zk as solution of the system (19.13), where the
parameters δw and δc are computed from Algorithm IC for correction of inertia
9. Backtracking. Initialization of linear search. Set αk,0 ¼ αkmax , where αkmax is computed as in (19.14a)
and set l ¼ 0
10. Backtracking. Compute the new trial point. Set xk ðαk,l Þ ¼ xk þ αk,l dxk
11. Backtracking. Test on acceptability to the filter. If θðxk ðαk,l ÞÞ, φμj ðxk ðαk,l ÞÞ 2 Fk , then reject the
trial step and go to step 13
12. Backtracking. Test on sufficient decrease with respect to the current iterate
Case I: θ(xk) θmin and (19.20) holds. If (19.21) holds, then accept the trial step xkþ1 ¼ xk(αk, l) and
continue with step 19; otherwise, go to step 13
Case II: θ(xk) > θmin or (19.20) is not satisfied. If (19.19) holds, then accept the trial step xkþ1 ¼ xk(αk, l)
and go to step 19; otherwise, continue with step 13
13. Backtracking. Initialize the second-order correction. If l > 0 or θ(xk, 0) < θ(xk), then skip the second-
order correction and go to step 18; otherwise, initialize the second-order correction by setting p ¼ 1 and
k as in (19.28). Initialize θold ¼ θðxk Þ
soc
csoc
14. Backtracking. Compute the second-order correction. Compute d x,cor k and dλk as solutions of the system
(19.27). Compute αsoc from (19.29) and then set x soc
¼ x k þ αsoc x,cor
d
k k
k k
15. Backtracking. Test on acceptability to the filter (in SOC). If θ xsoc , φμj xsoc 2 Fk , then reject the
k k
trial step size and go to step 18
16. Backtracking. Test on sufficient reduction with respect to the current iterate in SOC.
Case I: θ(xk) θmin and (19.20) holds for αk, 0. If (19.21) holds with xk(αk, l) replaced by xsoc k , then the
trial step xkþ1 ¼ xsoc
k is accepted and go to step 19; otherwise, continue with step 17
Case II: θ(xk) > θmin or (19.20) is not satisfied for αk, 0. If (19.19) holds for xk(αk, l) replaced by xsoc
k , then
the trial step xkþ1 ¼ xsoc
k is accepted and go to step 19; otherwise, continue with step 17
17. Backtracking. The next second-order correction. If p ¼ pmax or θ xsoc > κ soc θsoc , then abort second-
k old soc
order correction and go to step 18; otherwise, set p ¼ p þ 1, ck ¼ αk ck þ c xsoc
soc soc soc
k old ¼ θ xk
and θsoc :
Go back to step 14
18. Backtracking. Choose a new trial step size. Set αk,lþ1 ¼ αk, l/2 and l ¼ l þ 1. If the trial step size becomes
too small, i.e., αk,l < αkmin , where αkmin is defined as in (19.24), then continue with the feasibility
restoration phase, i.e., step 22; otherwise, go back to step 10
19. Accept the trial point. Set αk ¼ αk, l (or αk ¼ αsoc
k if the SOC point was accepted in step 16) and update
the Lagrange multiplier estimates λkþ1 and zkþ1 using (19.16b) and (19.16c) respectively, with αzk
computed as in (19.14b). If necessary, apply (19.17) to correct zkþ1
20. Augment the filter. If (19.20) or (19.21) do not hold for αk, then augment the filter as in (19.23);
otherwise, the filter is unchanged, i.e., Fkþ1 ¼ Fk
21. Continue with the next iteration. Set k ¼ k þ 1 and go back to step 3.
19.2 Implementation Details 669
22. Feasibility restoration phase. Augment the filter as in (19.23) and compute a new iterate xkþ1 > 0 by
decreasing the infeasibility
measure θ(x), so that xkþ1 is acceptable to the augmented filter, i.e.,
θðxkþ1 Þ, φμj ðxkþ1 Þ 2
= Fkþ1 : Then continue with the regular iteration in step 21 ♦
At every iteration, at least one trial point will be tested before the algorithm may switch to the
feasibility restoration phase in step 22. Also, the condition in step 7 ensures that eventually, at least
one step is taken for each decreased value of the barrier parameter.
The algorithm is complex, with a multitude of parameters which specify the optimization
conditions. Wächter and Biegler (2006) give the values of the constants used in their implementation
as κ e ¼ 10, κμ ¼ 0.2, θμ ¼ 1.5, τmin ¼ 0.99, γ θ ¼ 105, γ φ ¼ 105, δ ¼ 1, γ α ¼ 0.05, sθ ¼ 1.1, sφ ¼ 2.3,
ηφ ¼ 104, κsoc ¼ 0.99, pmax ¼ 4, as well as μ0 ¼ 0.1, θmax ¼ 104 max {1, θ(x0)} and
θmin ¼ 104 max {1, θ(x0)}, where x0 is the starting point. At the same time, they present some
implementation details which lead to the IPOPT algorithm. In the following, we will only present
some of the most interesting details in order to complete Algorithm 19.1 for it to be as close as
possible to IPOPT described in (Wächter, 2002) or (Wächter & Biegler, 2006).
For simplicity, Algorithm 19.1 is dedicated to solving nonlinear optimization problems (19.2).
However, this algorithm can be immediately generalized for solving general problems (19.1). In
particular, for the problem (19.1) with simple bounds on variables xL x xU, the barrier problem
(19.3) becomes
X X
min x2ℝn φμj ðxÞ ¼ f ðxÞ μj log xi xiL μj log xiU xi ð19:30aÞ
i2I L i2IU
subject to
ð19:30bÞ
cðxÞ ¼ 0,
where I L ¼ i : xiL 6¼ 1 and I U ¼ i : xiU 6¼ þ1 At the same time, for the multipliers z the
simple bounds ziL and ziU are introduced for all the finite lower and upper bounds, and the primal-dual
Hessian of the barrier terms Σk is defined as the sum of the matrices ΣLk ¼ diag σ Lk,1 , . . . , σ Lk,n and
U
ΣUk ¼ diag σ k,1 , . . . , σ k,n , where
U
i i
zL,k = xk xiL , if i 2 I L ,
σ k,i ¼
L
i 0,i otherwise,
z = x x i
k , if i 2 I U ,
σUk,i ¼
U,k U
0, otherwise:
Moreover, for i 2
= IL, define ziL,k ¼ 0 and for i 2
= IU, define ziU,k ¼ 0.
670 19 Interior-Point Filter Line-Search
Initialization
Since Algorithm 19.1 requires that the iterates should strictly satisfy the bounds constraints (19.1c), it
follows that it is often necessary to modify the user-provided initial point so that it is sufficiently away
from the boundary. For this purpose, each component i of the initial point which has only one (let us
say, a lower) bound is modified by
xi0 ¼ max xi0 , xiL þ κ 1 max 1,
xiL
,
where κ 1 > 0 is a constant. Similar modifications can be made for the only upper-bounded variables.
The initial value of a variable xi bounded on two sides is projected into the interval
i
xL þ piL , xiU piU , where the perturbations piL and piU are computed as
piL ≜ min
κ1 max
1,
xiL
, κ2 xiU xiL ,
piU ≜ min κ1 max 1,
xiU
, κ2 xiU xiL ,
where w are temporary variables discarded after this computation. However, if λ0 obtained in this way
is too large, i.e., kλ0k1 > λmax, (with λmax ¼ 103 for example), then the least-square estimate λ0 is
discarded and set λ0 ¼ 0. (J(x0) ¼ ∇ c(x0)).
In some cases, the optimal point set for (19.1) does not consist of isolated points, but contains an
unbounded connected component. Then the objective function of the corresponding barrier problem
(19.30) for a fixed value of the barrier parameter μj is unbounded below over the feasible set since a
log-barrier term converges to 1 as its argument goes to infinity. Therefore, the method for solving
the barrier problem might fail to converge, even though the original problem is well-posed. To
prevent this behavior, linear damping terms for all the variables with exactly one finite bound are
added to the barrier objective function (19.30a), which then becomes
P P
φμj ðxÞ ¼ f ðxÞ μj log xi xiL μj log xiU xi
i2I L i2IU
P P
þ κ d μj xi xiL þ κ d μj xiU xi ,
i2I L ∖IU i2IU ∖I L
where κd > 0 is a constant independent of μj (κd ¼ 104 for example). In this way, the divergence of
the variables that have only one bound is penalized. On the other hand, the effect of the damping term
is reduced when μj decreases.
19.2 Implementation Details 671
Inertia Correction
In order to be able to compute the search direction, we need to ensure that the matrix of the system
(19.11) is nonsingular. In addition, the filter line-search method requires the matrix Wk þ Σk projected
onto the null space of the constraint Jacobian J Tk being positive definite. But these conditions are
satisfied if the matrix of the system (19.11) has the inertia equal to (n, m, 0), i.e., if this matrix has
exactly n positive, m negative, and no zero eigenvalues. Therefore, if the inertia of this matrix is not
(n, m, 0), then the linear system (19.13) is re-solved with different trial values for the scalars
δw, δc 0 until the inertia is as desired. Observe that the desired inertia is obtained if δw is sufficiently
large and the constraint Jacobian J Tk has full rank. If J Tk is rank-deficient, the matrix of the system
(19.13) is singular as long as δc is zero. Therefore, a positive value for δc and a sufficiently large value
of δw ensures the correct eigenvalue signatures for the matrix from (19.13). However, in practice, the
matrix of the system (19.13) can become so ill-conditioned that the factorization cannot be success-
fully performed, even with very large values of δw and some positive values for δc In this case,
Algorithm 19.1 switches directly to the feasibility restoration phase in step 22. These observations
motivate the following heuristics for choosing the parameters δc and δw (Wächter & Biegler, 2005a).
min 0 max þ
1. Choose the constants 0 < δw < δw < δw , δc > 0, κ c 0, 0 < κ þ
w < 1 < κ w < κ w : Initialize
δlast
w ¼ 0
2. Attempt to factorize the unmodified matrix of the system (19.13) with δw ¼ δc ¼ 0. If the matrix is
nonsingular and its inertia is (n, m, 0), then use the resulting search direction in the line-search obtained
by solving the system (19.13); otherwise, continue with step 3
3. If the matrix from (19.13) has zero eigenvalues, then set δc ¼ δc μκc ; otherwise, set δc ¼ 0
n o
4. 0 min last
If δlast
w ¼ 0, then set δw ¼ δw ; otherwise, set δw ¼ max δw , κ w δw
5. Attempt to factorize the matrix from (19.13) modified with these values of δc and δw. If inertia is equal to
w ¼ δw and use the resulting search direction in the line-search, otherwise, continue
(n, m, 0), then set δlast
with step 6
þ þ
6. If δlast
w ¼ 0, then set δw ¼ κ w δw ; otherwise, set δw ¼ κ w δw
max
7. If δw > δw , then abort the search direction computation, skip the backtracking line-search and switch
directly to the restoration phase in step 22 of Algorithm 19.1. Otherwise, continue with step 5 ♦
The above procedure was established by Wächter and Biegler (2006). In step 2 it first checks if the
unmodified matrix has the desired inertia so that the pure Newton search direction is used whenever
possible. If this is the case, then apply the Newton method for the search direction computation;
otherwise, increase δw. The first trial value is based on δlast
w , which stores the perturbation value from
the last modification of the matrix from (19.13). In this way, the smallest perturbation is found
necessary to avoid the factorization in step 5 of the algorithm for too small values of δw. The reason
for using a much larger factor κþ w in step 6 of the algorithm for the first necessary correction rather
than for the correction in later iterations is that we want to avoid a high number of trial factorizations
when the scale of the problem and the order of the magnitude for a successful correction is not known
yet. The selection of a nonzero value for δc in step 3 is based on the assumption that the singularity is
caused by the rank-deficient constraint Jacobian. Note that the nonzero value for δc in step 3 converges
to zero as μ ! 0 if κ c > 0, so that the perturbation δc is smaller when a solution of the problem is
approached.
672 19 Interior-Point Filter Line-Search
The Newton steps for the primal-dual system (19.11) for solving the nonlinear system (19.4) are
invariant to scaling the variables, the objective, and the constraints functions, i.e., to replacing x, f and
c by xe ¼ Dx x, feðxÞ ¼ df f ðxÞ and ceðxÞ ¼ Dc cðxÞ for some df > 0 and for the positive definite diagonal
matrices Dx ¼ diag d1x , . . . , d nx and Dc ¼ diag d1c , . . . , dm c . However, the optimization algorithm
with its initialization procedures, globalization strategy, and stopping criteria usually behaves very
differently for different scaling factors, particularly if the scaling factors are very large or very small.
The idea of scaling in IPOPT is that changing a variable by a given amount has a comparable effect
on any function which depends on this variable, or in other words, the nonzero elements of the
function gradients are of the same order of magnitude.
Another scaling procedure available in IPOPT as an option consists in applying an equilibration
algorithm to the first derivative matrix
" #
∇x c ð x 0 Þ T
M0 ¼
∇x f ð x 0 Þ T
to obtain the scaling matrices Dx and Dcf ¼ diag (Dc, df) so that the nonzero elements in Dcf M0 D1
x
are of order one. (The algorithm for the equilibration of the matrices is the one implemented in the
subroutines MC19 and MC29 from the Harwell library (AEA Technology, 2002)). Similarly, another
procedure for scaling computes the scaling factors so that the matrix
" #" #" #
D1
x 0 ∇2xx f ðx0 Þ ∇x cðx0 Þ D1 x 0
0 Dc ∇x c ð x 0 Þ T 0 0 Dc
has nonzero entries close to one. These procedures are available to users as options in IPOPT. Even if
these strategies seem to work well in certain instances, the performances of the algorithm are not
conclusive with scaling.
In IPOPT, Wächter and Biegler (2006) apply an automatic scaling procedure. Given a threshold
value gmax, for example gmax ¼ 100, then the scaling factors are chosen as
df ¼ min
1, g max =k∇x f ðx0 Þk1 ,
d jc ¼ min 1, g max =k∇x cj ðx0 Þk1 , j ¼ 1, . . . , m,
and Dx ¼ I. Observe that this procedure will never multiply a function by a number larger than one
and that all the gradient components in the scaled problem are at most of size gmax at the starting
point.
The scaling factors are computed only at the beginning of the optimization at x0.
A very important component of the filter line-search algorithm is the feasibility restoration phase (see
step 22 of Algorithm 19.1). The task of the restoration phase is to compute a new iteration acceptable
to the augmented filter Fkþ1 by decreasing the infeasibility whenever the regular backtracking line-
search procedure cannot make sufficient progress and when the step size becomes too small (see step
18 of Algorithm 19.1). Besides, when the inertia is corrected as in Algorithm 19.2, the method
switches to the restoration phase whenever the linear system (19.13) is very ill-conditioned and
19.2 Implementation Details 673
cannot be successfully factorized, despite the modifications of the matrix from (19.13). The feasibility
restoration phase has another significant purpose, namely, to detect the local infeasibility. If the
problem is infeasible, then the algorithm is not able to generate sufficient progress in the regular
backtracking line-search procedure and reverts to the restoration phase. In Wächter and Biegler
(2001), the global convergence of the filter line-search method is proved under the hypothesis that in
the neighborhood of feasible points the gradients of the active constraints are linearly independent.
Consequently, the algorithm does not switch to the feasibility restoration phase at feasible points.
However, this assumption might be violated in practice and the restoration phase might be called at a
point with a very small value of θ. In IPOPT, two procedures for feasibility restorations are used.
(In order to avoid confusion, the overbars are used to denote quantities referring to the restoration
phase, and the subscript t is used for the restoration phase iteration counter).
Minimization of the constraint violation This is the first algorithm of the feasibility restoration
phase. The purpose of this method is to return a new iterate xkþ1 > 0 with θðxkþ1 Þ, φμj ðxkþ1 Þ 2= Fkþ1
for step 22 of Algorithm 19.1 or to converge to a nonzero minimizer (or at least to a stationary point)
of some norm of the constraint violation. The restoration phase algorithm applies the primal-dual
interior-point filter line-search algorithm to a smooth reformulation of the optimization problem
ξ
min x2ℝn kcðxÞk1 þ kDR ðx xR Þk22 ð19:32aÞ
2
subject to
x 0: ð19:32bÞ
In (19.32a), a term is included in the objective function that penalizes the deviation from a
reference point xR , where ξ > 0 is a weighting parameter and the scaling matrix DR is defined by
DR ¼ diag min 1, 1=
x1R
, . . . , min 1, 1=
xnR
The reference point xR is chosen to be the iterate xk at which the restoration phase is called in
step 22 of Algorithm 19.1. In this way, we seek to decrease the constraint violation and try to avoid a
large deviation from xR , which determines undesired significant increase in the barrier objective
function φμj :
x, p, n 0: ð19:33cÞ
We can see that this optimization problem is of the form given in (19.2). Therefore, the filter line-
search interior-point algorithm can be applied to solve a sequence of barrier problems of the
following form:
674 19 Interior-Point Filter Line-Search
X
m ξ
min x2ℝn ,p,n2ℝm ρ pi þ ni þ kDR ðx xR k22
i¼1
2
X
n X
m X
m
μ log xi μ log pi μ log ni ð19:34aÞ
i¼1 i¼1 i¼1
subject to
cðxÞ p þ n ¼ 0: ð19:34bÞ
Observe that an additional scaling parameter ρ > 0 has been introduced. This is to allow a relative
scaling of the overall objective function (19.34a) with respect to the constraints (19.34b). Moreover,
if the regularization parameter ξ > 0 is chosen sufficiently small, the optimization problem (19.33) is
the exact penalty formulation of the problem: “find the feasible point that is closest to the reference
point xR in a weighted norm”:
subject to
cðxÞ ¼ 0, x 0:
In addition to the original variables x, the barrier problem (19.34) contains the variables p and n:
The corresponding primal-dual equations (similar to (19.4)) include their dual variables, say zp and zn :
The search directions for the line-search are obtained by linearization of these equations and can be
written as
2 3" #
W þ ξD2R þ Σ ∇cðxÞ d
x
4 5 ¼
1 1 λ
∇cðxÞT Σp Σn d
2 1
3 ð19:35Þ
ξD2R ðx xR Þ þ ∇cðxÞλ μX e
4 5,
1 1
cðxÞ p þ n þ ρZ p ðμe pÞ þ ρZ n ðμe nÞ
P i 2 1 1 1 p n zp
where W ¼ m i¼1 λ ∇xx cðxÞ, Σ ¼ X Z, Σp ¼ P Z p and Σn ¼ N Z n : Subsequently, d , d , d
zn
and d are obtained from
p 1 λ zp 1 p
d ¼ Z p μe þ P λ þ d ρp , d ¼ μP e zp Σp d ,
n 1 λ zn 1 n
d ¼ Z n μe þ N λ þ d ρn , d ¼ μN e zn Σn d ,
z 1 x
d ¼ μX e z Σd :
Observe that the structure of the nonzero elements of the linear system (19.35) is identical to the
one in (19.13). Therefore, for solving (19.35) the same symbolic factorization may be used.
The filter line-search method applied to the problem (19.34) might itself revert to a restoration
phase. If this occurs, then the optimal solution of (19.34) is computed for a fixed value of x, namely,
the current iterate xt , and this solution is used as the “result” of the restoration phase. In this
case, since (19.34) becomes separable, this can be done by solving a quadratic equation for each
i i
p , n , i.e.,
19.2 Implementation Details 675
s
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
2 ffi
μ ρci ðxÞ μ ρci ðxÞ μci ðxÞ
ni ¼ þ þ :
2ρ 2ρ 2ρ
pi ¼ c i ð x Þ þ ni :
Reduction of the KKT error This method tries to achieve reduction in the norm of the primal-dual
equations by using the regular iteration steps. If in step 22 of Algorithm 19.1 the feasibility restoration
phase is invoked, then the algorithm does not immediately revert to the feasibility restoration phase.
Instead, the reduction in the norm of the primal-dual equations is tried. To describe this procedure, let
Fμ(x, λ, z) denote the left-hand side of the nonlinear system (19.4). Then, given a constant κ F 2 (0, 1),
for example κF ¼ 0.999, the following algorithm reduces the error in the KKT system.
1. Initialize
feasibility restoration phase with the parameter t ¼ 0 and choose the initial point
the
x0 , λ0 , z0 ¼ ðxk , λk , zk Þ
2. x λ z
Compute a search direction dt , dt , dt using the system (19.11) and (19.12)
3. Apply the fraction-to-the-boundary rule
x z
βt ≜ max β 2 ð0, 1Þ : xt þ βdt 1 τj xt , zt þ βd t 1 τj zt
4. Test whether
Fμ xtþ1 , λtþ1 , ztþ1 κ F Fμ xt , λt , zt ,
1 1
x λ z
where xtþ1 , λtþ1 , ztþ1 ¼ xt , λt , zt þ βt dt , dt , d t :
If this condition of reduction is not satisfied, then discard the trial point and switch to the procedure for
minimizing the constraint violation (described above) by using xt as a reference point. Otherwise,
continue with step 5
5. If θðxtþ1 Þ, φμj ðxtþ1 Þ 2= Fkþ1 , then continue the regular interior-point Algorithm 19.1 from the point
xtþ1 , fλgtþ1 , ztþ1 ¼ xtþ1 , λtþ1 , ztþ1 : Otherwise, set t ¼ t þ 1 and go to step 2 ♦
The performances of IPOPT for solving the applications from the LACOP collection described in
Appendix C are illustrated in Tables 19.1 and 19.2.
Appendix C includes the application L16 – Fed-batch fermenter for penicillin production.
(PENICI). Table 19.3 shows the performance of IPOPT for solving this application.
676 19 Interior-Point Filter Line-Search
Table 19.1 Performances of IPOPT for solving 12 applications from the LACOP collection. Small-scale nonlinear
optimization applications
Table 19.2 Performances of IPOPT for solving 6 applications from the LACOP collection. Large-scale nonlinear
optimization applications
In the tables above, we have n ¼ the number of variables, me ¼ the number of equality constraints, mc ¼ the number of
inequality constraints, #it ¼ the number of iterations to obtain a solution, #nf ¼ the number of evaluations of the
functions defining the problem, #ng ¼ the number of evaluations of the gradients of the functions defining the problem,
#nh ¼ the number of evaluations of the Hessian, cpu ¼ the CPU computing time for obtaining a solution of the problem
(seconds), vfo ¼ the value of the objective function at the optimal point
19.2 Implementation Details 677
Table 19.4 Performances of the IPOPT algorithm. Small-scale nonlinear optimization applications
Table 19.5 Performances of the IPOPT algorithm. Large-scale nonlinear optimization applications
Table 19.4 presents the total number of iterations (#itt), the total number of evaluations of the
function defining the problem (#nft), the total number of evaluations of the gradients of the functions
defining the problem (#ngt), the total number of evaluations of the Hessian (#nht), and the total CPU
computing time to obtain a solution (cput) for solving 12 small-scale nonlinear optimization
applications (see Table 19.1) considered in this numerical study.
Table 19.5 shows the performances of IPOPT for solving 15 large-scale nonlinear optimization
applications (see Table 19.2) considered in this numerical study.
From Table 17.13, we can see that for solving 15 large-scale applications from the LACOP
collection subject to the CPU computing time, KNITRO with option 0 needs 17.81 seconds, being
top performer versus IPOPT which needs 42.176 seconds.
There is a great difference between KNITRO and IPOPT. In both variants KINTO/ACTIVE and
KNITRO/INTERIOR, the sequential linear or sequential quadratic programming in different compu-
tational structures are used. The KNITRO/ACTIVE uses a new active-set method based on the
sequential linear-quadratic programming (SLQP) and the projected conjugate gradient iteration. On
the other hand, in KNITRO/INTERIOR two procedures for computing the steps are used. In the
version INTERIOR-DIRECT, the algorithm attempts to compute a new iterate by solving the primal-
dual KKT system by using the direct linear algebra. In the version INTERIOR-CG, each step is
computed by using a projected conjugate gradient iteration. It factors a projection matrix and uses the
conjugate gradient method to approximately minimize a quadratic model of the barrier problem. The
stepsizes are determined by minimizing merit functions. All the algorithms included in KNITRO
have a very strong theoretical justification.
IPOPT, on the other hand, combines the primal-dual interior-point algorithms with the filter line-
search, where the search direction is computed as solution of the first-order optimality conditions, and
the stepsize is computed by the filter technique. The algorithm depends by a multitude of parameters
which have a great impact on its performance. Although both the merit functions and filters are
important globalization techniques of the interior-point methods, currently it is unclear whether filter
techniques are preferable to the merit functions.
convergence of each barrier subproblem is enforced through a line-search filter method (Fletcher &
Leyffer, 1999, 2002). The filter is reset after each barrier parameter update. The steps are computed
by solving a primal-dual system corresponding to the KKT conditions of the barrier problem, using
the subroutines from the HSL mathematical software library collection of Fortran codes for large
scientific computation (MA77, MA86, MA97). The algorithm controls the inertia of the primal-dual
system by adding δI to the Hessian of the Lagrangian, where δ is a positive parameter, thus ensuring
the descent properties. The inner iterations include the second-order correction steps and some
mechanisms for switching to a feasibility restoration if the stepsize becomes too small. To approxi-
mate the Hessian of the Lagrangian, IPOPT has an option for using the limited memory BFGS
updates
Direct Methods for Constrained
Optimization 20
As we have already seen in Chap. 9, the direct methods for unconstrained optimization do not use
derivative information. From the multitude of these methods, only the NELMEAD by Nelder and
Mead (1965), NEWUOA by Powell (2004, 2006), and DEEPS by Andrei (2021a) have been
discussed. They are suitable for solving unconstrained optimization problems with a small number
of variables (let us say up to 100).
This chapter is dedicated to presenting the direct methods for solving constrained optimization
problems and applications. They use only the function values that define the problem along a
sequence of points {xk} that is expected to be convergent to a point in which the constraints are
satisfied, and the objective value is less than its value in the initial point. The direct methods are
suitable in situations in which the smoothness of the functions of the problem is not satisfied or when
the values of the functions are obtained by simulation of some complex mathematical structures.
The concept optimization based on simulation is applied in the analysis, design, and control of
complex physical systems by using methods of optimization. Thus, by computational simulation,
some quantities necessary for optimization are generated. Every simulation needs the execution of a
finite sequence of computing programs involving, for example, the generation of discretizations and
solving some systems of differential equations. The results of simulation must be processed in order
to obtain the final values of the minimizing function and of the constraints. Observe that these
computational complications are not suitable for using optimization methods based on derivative
information. Even if the automatic differentiation has been successfully applied for solving some
optimization problems, it is not appropriate for the optimization based on simulation. The concept of
nonsmooth optimization refers to the problems that involve, for example, functions of the type |x| or
more general nondifferentiable functions. On the other hand, there are some optimization problems
that involve some computational schemes of the type if-then-else which make the
corresponding problems nonsmooth.
These sorts of optimization problems are treated by the direct methods. The crucial aspect of the
direct methods is that they are based on the hypothesis that in the set of trying solutions there is an
order relation which allows us to specify that a trying solution is better than another one and at every
iteration, there is a finite number of new possible solutions determined by the searching method. This
aspect emphasizes the important difference between the direct methods of optimization and the
methods based on derivative information (gradient, Hessian) in which there is a continuum of trying
solutions.
# The Author(s), under exclusive license to Springer Nature Switzerland AG 2022 679
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2_20
680 20 Direct Methods for Constrained Optimization
The purpose of this chapter is to detail two different direct methods for constrained optimization
together with their numerical performances for solving real applications of optimization from the
LACOP collection. The first method is COBYLA—Constrained Optimization BY Linear Approxi-
mation of Powell (1993). At every iteration of this method, the objective function and constraints are
linearly approximated by interpolation in vertices of a simplex structure. The corresponding linear
programming problem completed with a constraint of trust-region type is solved, thus obtaining a new
approximation to the solution of the original problem. The second method is an extension of the
successive quadratic penalty method which does not involve derivative information. This method
approximately minimizes a sequence of merit functions, in which the penalization of the violation of
the constraints is progressively enlarged (Liuzzi, Lucidi, & Sciandrone, 2010).
The COBYLA algorithm is an extension of the Nelder-Mead direct method for solving constrained
optimization problems (see Chap. 9). For solving the unconstrained optimization problem minf(x),
where f : ℝn ! ℝ, the Nelder-Mead method computes at a given iteration, the minimizing function
values in n þ 1 points of a simplex {x j : j ¼ 0, 1, . . ., n} which satisfy the nondegeneracy condition.
Let xl be the vertex of the simplex for which f(xl) ¼ max {f(x j) : j ¼ 0, 1, . . ., n}. Since xl is the vertex
of the simplex in which the minimizing function has the highest value, the algorithm replaces xl with
the point
ð1 þ θ Þ X j
n
xlnew ¼ θxl þ x, ð20:1Þ
n
j¼0, j6¼l
where the reflection coefficient θ is a constant in the open interval (0, 1). Obviously, if f xlnew is the
smallest value of the minimizing function, then the reflection coefficient can be enlarged. Formula
(20.1) defines the point xlnew by extrapolation along a line connecting xl with the centroid of the rest of
the vertices of the simplex. Hence, if f is a linear function, then f xlnew is smaller than the average of
the values {f(x j) : j ¼ 0, 1, . . ., n, j 6¼ l}, so that the iteration is a success subject to the reduction of
the function’s values. On the other hand, if the iteration is not a success, then the algorithm shrinks the
current simplex defined by the vertices {x j : j ¼ 0, 1, . . ., n}. This idea of the Nelder-Mead algorithm
is adapted for solving the constrained optimization problems
min f ðxÞ
subject to ð20:2Þ
ci ðxÞ 0, i ¼ 1, . . . , m,
where it is supposed that the functions f and ci, i ¼ 1, . . ., m, can be evaluated in any point x. For
solving this problem, Powell (1993) suggests the following algorithm based on the evaluation of the
functions defining the problem in the vertices {x j : j ¼ 0, 1, . . ., n} of a nondegenerate simplex in ℝn.
In this case, there are the linear functions fb and cbi , i ¼ 1, . . . , m, that interpolate f and ci, i ¼ 1, . . .,
m, in the vertices of the current simplex with which (20.2) can be approximated by the following
linear programming problem:
20.1 COBYLA Algorithm 681
min fbðxÞ
subject to ð20:3Þ
cbi ðxÞ 0, i ¼ 1, . . . , m:
Observe that the functions fband cbi , i ¼ 1, . . ., m, are uniquely determined. The modification of the
variables is under a trust-region constraint which closes the feasible domain of the linear program
(20.3). The radius of the trust-region determines the stepsizes. For comparing two solutions, the
algorithm uses the following merit function:
where μ is a parameter and vþ ¼ max {0, v}. Observe that if x 2 ℝn is feasible, then Φ(x) ¼ f(x). In
this context, the point x 2 ℝn is better than the point y 2 ℝn if and only if Φ(x) < Φ( y). Observe that
the merit function (20.4) includes the constraints of the problem penalized by μ. With this, the
COBYLA algorithm may be describes as follows.
Let us suppose that the vertices {x j : j ¼ 0, 1, . . ., n}, the radius ρ of the trust-region and a value of
the penalty parameter μ from the merit function (20.4) are known. The vertices of the current simplex
are ordered so that x0 is the best vertex, that is
Φ x0 Φ xj , j ¼ 1, . . . , n: ð20:5Þ
Let x be the vector of the variables of the linear programming problem (20.3). Then the trust-
region condition is
x x0 ρ: ð20:6Þ
2
With this, let x be the minimum of the linear approximation fbðxÞ subject to the linear constraints
from (20.3) and the inequality (20.6). It is quite possible for the constraints from (20.3) to be
incompatible with (20.6). In this case, define x as solution of the minimization of the largest violation
of the constraints subject to (20.6). The computation of x is made by continuously increasing ρ from
the zero value to a current value. The sequence of points x generated for different values of ρ defines
a pice-wise linear continuous trajectory.
Let us describe the procedure for the modification of the penalty parameter μ which depends
on x. Initially, μ ¼ 0. Observe that the reduction of the merit function Φ(x) < Φ(x0) is not obtained
if the value of μ does not satisfy the condition Φ b ðx0 Þ, where Φ
b ðx Þ < Φ b is the linear approximation
Therefore, the following procedure for modifying the penalty parameter μ can be used. Let μ be the
smallest nonnegative value of μ for which Φ b ðx0 Þ: The existence of μ is a direct consequence
b ðx Þ < Φ
of the definition of x . With this, the modification of μ is the following. If μ 3μ=2, then μ is
unchanged, otherwise set μ ¼ 2μ: The selection of the factors 3/2 and 2 is obtained from numerical
experiments with COBYLA. By increasing μ, it is possible for (20.5) not to be satisfied. In this case,
the optimality of x0 is restored by changing two vertices of the simplex. The computation of x and the
modification of μ are repeated until x0 is the vertex with the smallest value of the minimizing function
and the value of μ is acceptable.
The strategy for updating the radius of the trust-region is based on the principle that the value of ρ
is maintained until the iterations cease to achieve a sufficient reduction of the merit function,
682 20 Direct Methods for Constrained Optimization
otherwise the value of ρ is reduced. However, a lot of simplexes may appear along the iterations.
Before updating ρ, the current simplex must be “acceptable.” An unacceptable simplex is the one for
which (20.3) is an inadequate approximation of the original problem. Therefore, define an acceptable
simplex as follows. For j ¼ 1, . . ., n, let σ j be the Euclidian distance from the vertex x j to the opposite
face of this vertex from the current simplex. Let η j be the length of the segment connecting the
vertices x j and x0. The simplex is called “acceptable” if and only if the inequalities
σ j αρ, ð20:8aÞ
ηj βρ, ð20:8bÞ
are satisfied for j ¼ 1, . . ., n, where α and β are two constants so that 0 < α < 1 < β.
(Powell recommends α ¼ 0.25 and β ¼ 2.1.) The radius of the trust-region is reduced if either
kx x0k ρ/2 or
Φðx0 Þ Φðx Þ
< 0:1: ð20:9Þ
b ðx0 Þ Φ
Φ b ðx Þ
In COBYLA, two values of ρ are used: the initial value ρbeg and the final value ρend. (Powell
recommends ρbeg ¼ 1.5 and ρend ¼ 108.) If the conditions of reducing ρ are satisfied, then the
following procedure is considered. If ρ ρend, then the algorithm is stopped, the solution of the
problem is given by x0, except for the case in which Φ(x) < Φ(x0), when x is preferable as solution.
On the other hand, if ρ > ρend, then the radius of the trust-region is updated as
ρ=2, if ρ > 3ρend ,
ρnew ¼ ð20:10Þ
ρend , if ρ 3ρend :
Numerical experiments show that whenever ρ is reduced, the parameter μ is also reduced. To
update the parameter μ the following procedure may be used. Let us say that the i-th constraint is
important in the merit function if i is in the set
I ¼ i : cimin < cimax =2 \ f1, . . . , mg, ð20:11Þ
where cimin and cimax are the smallest and the largest value of ci(x) in the vertices of the current
simplex, respectively. If I ¼ ∅ , then set μ ¼ 0. Otherwise, μ is updated as
if and only if μ is reduced. The initial simplex is obtained by using ρbeg and the initial point given by
the user. Let x0 be the initial point. Then, for j ¼ 1, . . ., n, set x j ¼ x0 þ ρbegej, where ej is the j-th
column of the identity matrix. For any value of j, if f(x j) < f(x0), then x0 is replaced by x j, so that x0
becomes the vertex in which the minimizing function is minimum.
The point x is not computed at every iteration because the aim is to satisfy the acceptability
conditions (20.8a, 20.8b) of the current simplex. Hence, a point xΔ which improves the acceptability
of the current simplex is computed. In COBYLA, at the current iteration, x is computed instead of xΔ
if and only if at least one of the following five conditions is satisfied: (C1) the algorithm is at the first
iteration, (C2) at the previous iteration the value of ρ was reduced, (C3) the previous iteration
computed xΔ, (C4) the previous iteration computed x and the value of the merit function was reduced
at least with one tenth from the predicted reduction (see (20.9)), (C5) the current simplex is
20.1 COBYLA Algorithm 683
acceptable. When none of the above five conditions is satisfied, then xΔ is defined in the following
way. If η j > βρ, for all j ¼ 1, . . ., n, then let l be the smallest integer from [1, n] which satisfies the
condition
ηl ¼ max ηj : j ¼ 1, . . . , n : ð20:13Þ
Now the vertex xl is replaced with xΔ, that is xΔ is far away from the face of the simplex which is
opposite to the vertex xl. Therefore, let vl be a vector of unitary length, perpendicular to this face of
the simplex. Then,
xΔ ¼ x0 γρvl , ð20:15Þ
where is selected to minimize the approximation Φ b ðxΔ Þ, while γ is a constant from the interval
(α, 1) (γ ¼ 1/2 in COBYLA). Therefore, the next iteration is given by the simplex with the vertices
{x j : j ¼ 0, 1, . . ., n, j 6¼ l} and xΔ. This is an iteration which computes xΔ.
When an iteration computes x, then we must choose one from the following three options: reduce
ρ, maintain the value of ρ for another iteration which will compute x or maintain ρ for an iteration
which will improve the acceptability of the simplex. Since (20.9) is used if and only if x satisfies the
condition
x x0 ρ=2, ð20:16Þ
2
it follows that the values f(x) and ci(x), i ¼ 1, . . ., m, are computed only when the inequality (20.16)
holds. These values can be included in the linear approximation (20.3) by replacing a vertex from
{x j : j ¼ 1, . . ., n} of the current simplex with x as follows. Compute the scalars fσ j : j ¼ 1, . . . , ng,
where σ j is the distance from x to the face of the current simplex which is opposite to x j. With this,
the set J ¼ fj : σ j σ j g [ fj : σ j αρg is determined, where α is defined in (20.8). Then, the
optimum vertex from the next iteration is the point
x , Φðx Þ < Φðx0 Þ,
x ¼
0
ð20:17Þ
x0 , Φðx Þ Φðx0 Þ:
If the set J is nonempty, then let l be the last element of J, so that xl x0 2 ¼
n o
max xj x0 2 : j 2 J : If one of the following conditions Φ(x) < Φ(x0), σ l > σ l or both of
them are satisfied, then xl is replaced with x, where l is obtained from the relation σ l =σ l ¼
max fσ j =σ j : j ¼ 1, . . . :ng. Thus, the simplex is updated at the iterations which compute the values
of the minimizing function and of the constraints in x, the only exception being the iterations where,
besides the inequalities fσ j σ j : j ¼ 1, . . . :ng and Φ(x) Φ(x0), the distance xj x0 2 is upper
bounded by δρ for any j 2 J, where δ is a constant from the interval (1, β]. (In COBYLA, δ ¼ 1.1).
With this, the description of COBYLA is complete.
To prove the convergence of the algorithm, the following points need to be established: (A1) the
penalty parameter μ from the merit function (20.4) remains finite, (A2) the number of reductions of
the radius of the trust-region ρ is finite, (A3) if and only if μ and ρ remain unchanged, then the
optimum vertex x0 cannot be retained for an infinite number of iterations, (A4) if μ and ρ remain
684 20 Direct Methods for Constrained Optimization
In this table, we have n ¼ the number of variables, m ¼ the number of constraints including the simple bounds on
variables, vfi ¼ the value of the objective function in the initial point, nri ¼ the norm of the vector given by the violated
constraints in the initial point, #nf ¼ the number of the evaluations of the functions defining the problem, vfo ¼ the value
of the objective function in the final point, nrf ¼ the norm of the vector given by the violated constraints in the final
point
unchanged, then the number of replacements of the optimum vertex is finite. Powell (1993) proved
that any sequence of iterations generated by COBYLA which do not modify ρ or x0 is finite. Moreover,
consider an iteration which replaces the vertex xl of the current simplex with xΔ and take the distances
from the vertices (excluding x0) to the opposite faces in the old simplex and in the new simplex
n o
σ jold : j ¼ 1, . . . , n and σ jnew : j ¼ 1, . . . , n , respectively. Then, besides σ lnew ¼ γρ, the follow-
ing inequalities σ jnew σ jold , j ¼ 1, . . ., n, j 6¼ l, hold.
Table 20.1 shows the performances of COBYLA for solving 10 applications from the LACOP
collection described in Appendix C.
The following algorithm is based on the penalization of the constraints in the objective function, in
the frame of the direct methods. The DFL method, developed by Liuzzi, Lucidi, and Sciandrone
(2010), consists in the approximate minimization of a sequence of merit functions, in which the
penalization of the violated constraints is increased along the iterations. The minimization of the
merit functions involves only the values of the functions defining the problem, without referring to the
derivative information about these functions. Consider the problem
20.2 DFL Algorithm 685
min f ðxÞ
subject to
ð20:18Þ
cðxÞ 0,
l x u,
where f : ℝn ! ℝ, c : ℝn ! ℝm are known functions for which their values can be computed in any
point from the domain X ¼ {x 2 ℝn : l x u} defined by the simple bound constraints. For solving
(20.18), the objective function is augmented with terms which penalize the violation of the
constraints, thus obtaining the following penalty function:
!
1 X þ 2
X X
n
þ 2
n
þ 2
m
Qðx, μÞ ¼ f ðxÞ þ c ðxÞ þ ðxi ui Þ þ ðli xi Þ , ð20:19Þ
μ j¼1 j i¼1 i¼1
where, as usual, v+ ¼ max {0, v}. As it is known, if the minimum xk of the penalty function Q(x, μ)
can be determined for a sequence {μk} so that μk ! 0, then the sequence xk is convergent to a
global minimum x of (20.18) (Fiacco, & McCormick, 1968). More exactly, Nocedal and Wright
(2006) prove the convergence to a stationary point of (20.18) in very mild conditions of regularity,
provided that, for every k, a stationary point of Q(x, μk),can be determined with increased accuracy.
In other words, if {xk} is a sequence of points satisfying the condition
k∇Qðxk , μk Þk τk , ð20:20Þ
where {τk} is a sequence of scalars such that 0 < τkþ1 < τk, for any k, and τk ! 0, then if the sequence
{xk} (or, at least a subsequence of it) is convergent to the point xe in which the gradients of the active
constraints are linear independent, xe is a stationary point of (20.18).
These theoretical results, very well established in the case of differentiable functions, can be
extended in the case in which there is no access to the derivative information of the functions defining
the problem (20.18). Observe that the simple bound constraints can be explicitly treated because their
gradients are known. Therefore, the following penalty function can be introduced (Liuzzi, Lucidi, &
Sciandrone, 2010).
1 X q
m
Pðx, μÞ ¼ f ðxÞ þ cj ðxÞþ , ð20:21Þ
μ j¼1
where q > 1 (for example q ¼ 1.1) and where only the nonlinear constraints are introduced in (20.21).
(For the linear constraints, their gradients are known.) With this, for any fixed value of μ the following
problem is considered:
min Pðx, μÞ
subject to ð20:22Þ
l x u:
The direct methods are based only on the values of the functions defining the problem computed
along a set of directions able at limit to give sufficient information to recover the necessary optimality
condition of order one. In the context of the constrained optimization, in which the penalty parameter
is updated to zero, the procedure for its updating must be in accordance with the procedure of
selecting the points where the functions defining the problem are evaluated, the so-called probe
points. The idea is that the penalty parameter needs to be reduced to zero more slowly than the
686 20 Direct Methods for Constrained Optimization
maximum step used in the computation procedure of the probe points, where the values of the
problem’s functions are evaluated.
The following proposition, proved by Liuzzi, Lucidi, and Sciandrone (2010), shows a very general
result which can be used to show the convergence to the stationary points of a sequence of iterations
generated by a direct search algorithm (without involving the derivative information) based on the
approximate minimization of the penalty function P(x, μ) on X. The proposition gives sufficient
conditions of the procedure for the computation of the probe points, as well as of the procedure for
updating the penalty parameter which guarantees the convergence to a stationary point of (20.18).
Proposition 20.1 Let {μk} be a bounded sequence of penalty parameters. Let {xk} be a sequence of
points so that xk 2 X for any k and let x be a limit point of the subsequence {xk}K, where
K ⊆ {0, 1, . . .}. Suppose that x satisfies the Mangasarian-Fromovitz (MFCO) constraint qualifica-
tion (see Remark 11.2) and for any k large enough the following conditions hold:
(i) For any d i 2 D \ DðxÞ there exist the vectors yik and the scalars ξik > 0 such that
lim k!1,k2K μk cðxk Þþ ¼ 0: ð20:23dÞ
(see (Kolda, Lewis, & Troczon, 2003)). Therefore, the limit from (20.23c) shows that the current
measure of the stationarity tends to zero faster than the penalty parameter μk does.
With these preparatives, let us present a variant of the direct search algorithm for solving the
problem (20.18). The algorithm uses a linear search which approximately minimizes a penalty
function along some search directions. At every iteration, the searching directions are parallel with
the axes of coordinates. The algorithm is based on the sensitivity of the objective function along the
searching directions. This is the reason why the algorithm computes different stepsizes along each
searching direction. In particular, at every iteration the following quantities are computed:
20.2 DFL Algorithm 687
• αi , i ¼ 1, . . ., n, as the maximum stepsize that can be taken along the searching directions without
leaving the domain X,
• αik , i ¼ 1, . . . , n, as the results of the approximate minimizations of the penalty function along the
directions dik ,
• e
αik , i ¼ 1, . . . , n, as the stepsizes from the previous iteration used as initial stepsizes at the current
iteration.
1. Consider the initial point x0 2 X, as well as the parameters: μ0 > 0, γ > 0, θ 2 (0, 1), p > 1. Consider e
αi0 > 0
and set d0 ¼ ei , for i ¼ 1, . . ., n. Consider a sequence of positive numbers ηk ! 0
i
The procedure PE(.) used in the frame of Algorithm 20.1 (see steps 3 and 4) is a step for computing
the stepsize αik which approximately minimizes the penalty function along the directions dik :
1. Select δ 2 (0, 1)
2. Set α ¼ bα
3. Determine eα ¼ min fα, ðα=δÞg
4. If α ¼ α or Pðy þ e αÞ2 , return
αp, μk Þ > Pðy, μk Þ γ ðe
5. Set α ¼ e
α and go to step 3 ♦
Liuzzi, Lucidi, and Sciandrone (2010) prove that the DFL algorithm is well defined. Moreover, if
the sequence of positive numbers {μk} monotone decreasing is such that lim k!1 μk ¼ μ > 0, then
lim k!1 αik ¼ 0, for i ¼ 1, . . ., n, and lim k!1 e
αik ¼ 0, for i ¼ 1, . . ., n. On the other hand, if
the sequence of positive numbers {μk} monotone decreasing is such that limk ! 1μk ¼ 0,
then lim k!1,k2K αik ¼ 0, for i ¼ 1, . . ., n, and lim k!1,k2K e αik ¼ 0, for i ¼ 1, . . ., n, where
K ¼ {k : μkþ1 < μk}.
688 20 Direct Methods for Constrained Optimization
Observe that the DFL algorithm considers the following search directions at every iteration k:
Dk ¼ d 1k , d1k , . . . , dnk , d nk ¼ fe1 , . . . , en g ¼ D,
where ei is the i-th column of the unity matrix. At every iteration, the algorithm gets information on
the behavior of the penalty function both in the direction dik and in the direction dik : In particular,
along all the directions dik , i ¼ 1, . . ., n, the algorithm identifies the following circumstances:
(a) If the initial stepsize e αik does not produce a reduction of the penalty function, then either yik þ
i 2
e = X, or P yik þ e
αik d ik2 αik d ik , μk > P yik , μk γ e
αk :
(b) If the initial stepsize e αik produces a reduction of the penalty function, then both conditions
i 2
yik þ eαik d ik 2 X and P yik þ e
αik dik , μk P yik , μk γ eαk are satisfied and a stepsize αik is
αi αi
generated by the linear search, so that either yik þ δk d ik2 = X, or P yik þ δk d ik , μk > P yik , μk
i 2
α
γ δk :
A similar analysis may be obtained along the direction dik (Liuzzi, Lucidi, & Sciandrone, 2010).
This analysis determines that the initial stepsize e αik should satisfy either yik þ e αik d ik 2= X, or
i i i i 2
P yk þ e αk dk , μk > P yk , μk γ e
i
αk : Otherwise, compute a stepsize αk such that either yik þ
i
i 2
αik αik i αk
δ d i
k 2= X or P yi
k þ δ d i
k , μ k > P y k , μ k γ δ : In other words, the algorithm considers
the search along the directions d ik , extracting information from the behavior of the penalty function
P(.) along these directions. The following theorem shows the convergence of the DFL algorithm.
Theorem 20.1 Let {xk} be the sequence generated by the DFL algorithm. Suppose that any limit
point of the sequence {xk} satisfies the Mangasarian-Fromovitz (MFCO) constraint qualification (see
Remark 11.2). Then there exists a limit point x of the sequence {xk}, which is a stationary point of the
problem (20.18). ♦
Let {xk} and {μk} be the sequences generated by the DFL algorithm and assume that any limit
point of {xk} satisfies the Mangasarian-Fromovitz constraint qualification. If lim k!1 μk ¼ μ > 0,
then any limit point of {xk} is a stationary point of (20.18).
In step 1 of DFL the parameters are initialized as γ ¼ 106, θ ¼ 0.5, p ¼ 2, and e αi0 ¼
3
max 10 , min f1, ðx0 Þi , i ¼ 1, . . ., n.
Table 20.2 shows the performances of DFL for solving 9 applications from the LACOP collection
presented in Appendix C.
A comparison between COBYLA and DFL (see Tables 20.1 and 20.2, respectively) shows that for
minimizing the applications considered in this numerical study, COBYLA generates better approxi-
mate solutions than DFL. An explanation of this behavior is that at every iteration, COBYLA
considers a linear approximation of the minimizing function and of the constraints and solves a linear
programming problem, which is more appropriate than the minimization of a simple penalty function.
20.2 DFL Algorithm 689
In this table, we have n ¼ the number of variables, m ¼ the number of constraints, vfi ¼ the value of the objective
function in the initial point, nri ¼ the norm of the vector given by the violated constraints in the initial point, #iter ¼ the
number of the iterations, #nf ¼ the number of evaluations of the functions defining the problem, vfo ¼ the value of the
objective function in the final point, nrf ¼ the norm of the vector given by the violated constraints in the final point
In other words, the use of successive linear programming is more advantageous than the penalty
function. The weakness of the DFL algorithm is that at every iteration the penalty function is
approximately minimized along the axes of coordinates.
Vectors
The number xi, i ¼ 1, . . ., n, is called the i-th component of the vector x. Define the set of real
numbers by ℝ. The space of the real vectors of length n is denoted by ℝn. The vectors are always
column vectors. The transpose of x is denoted by xT. Therefore, xT is a row vector. Given the vectors
x, y 2 ℝn, the scalar product is defined by
Xn
xT y ¼ xy:
i¼1 i i
If {x1, . . ., xn} is a set of n linearly independent vectors where each xi 2 ℝn, then span{x1, . . .,
xn} ¼ ℝn. In other words, any vector v 2 ℝn can be written as a linear combination of x1, . . ., xn. A
linearly independent set of vectors that span ℝn is said to be a basis for ℝn.
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 691
Switzerland AG
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
692 Appendix A: Mathematical Review
Norms of Vectors
The norm k.k2 is often called the Euclidean norm or the l2 norm. On the other hand, k.k1 is referred
to as the l1 norm and k.k1 as the l1 norm. All these norms measure the length of the vector in some
sense, and they are equivalent, i.e., each one is bounded above and below by a multiple of the other.
More exactly, for all x 2 ℝn it follows that
pffiffiffi
kxk1 kxk2 nkxk1 and kxk1 kxk1 nkxk1 :
In general, a norm is any mapping k.k from ℝn to the nonnegative real numbers that satisfy the
following properties:
1. For all x, y 2 ℝn, kx þ yk kxk þ kyk, with equality if and only if one of the vectors x and y is a
nonnegative scalar multiple of the other one.
2. kxk ¼ 0 ) x ¼ 0,
3. kαxk ¼ |α|kxk, for all α 2 ℝ and x 2 ℝn.
The magnitude of a vector x is kxk2 ¼ (xTx)1/2. The angle between two nonzero vectors
x, y 2 ℝn is defined to be the number θ 2 [0, π] so that cosθ ¼ xTy/kxkkyk.
For the Euclidian norm, the Cauchy-Schwarz inequality holds |xTy| kxkkyk, with equality if and
only if one of these vectors is a nonnegative multiple of the other one. In particular,
T X X
X
x y ¼ x i y j x i j j y j ð max i j x i j Þ j y j ¼ kx k1 ky k1 :
i i i i i i
The H€ older inequality, a generalization of the Cauchy-Schwarz inequality, states that for all ai > 0,
bi > 0, i ¼ 1, . . ., n, p, q > 0 so that 1/p þ 1/q ¼ 1
!1=p !1=q
X
n X
n X
n
ai bi api bqi :
i¼1 i¼1 i¼1
Matrices
A matrix is a rectangular array of numbers with m rows and n columns specified by its elements
aij, i ¼ 1, . . ., m, j ¼ 1, . . ., n. The space of the real m n matrices is denoted by ℝmn. A submatrix of
a given matrix A is an array obtained by deleting any combination of rows and columns from A. The
leading j j principal submatrix of A is denoted by A(1 : j, 1 : j). The transpose of A 2 ℝmn denoted
by AT is the n m matrix with elements aji. In other words, the (i, j)-th entry of AT is the ( j, i)-th
entry of A. Therefore, if A 2 ℝmn, then AT 2 ℝn m. The matrix A is squared if m ¼ n. For a square
matrix A ¼ (aij) 2 ℝnn the elements a11, a22, . . ., ann define the main diagonal of the matrix. A
squared matrix is symmetric if A ¼ AT. A matrix A 2 ℝnn is diagonal if aij ¼ 0 for all i 6¼ j.
The identity matrix denoted by I is the square diagonal matrix whose diagonal elements are all 1.
Appendix A: Mathematical Review 693
A square matrix A ¼ (aij) is said to be lower triangular if aij ¼ 0 for i < j. A unit lower triangular
matrix is a lower triangular matrix with all the diagonal elements equal to 1. The matrix A is said to be
upper triangular if aij ¼ 0 for i > j. A matrix A 2 ℝnn is tridiagonal if aij ¼ 0 for |i j| > 1. A matrix
A 2 ℝnn is pentadiagonal if aij ¼ 0 for |i j| > 2. A matrix A is normal if ATA ¼ AAT.
Matrix Norms
The most widely used matrix norms are defined in terms of vector norms. If A is a matrix and kxk is a
vector norm, then the induced matrix norm kAk is defined by
Every induced matrix norm satisfies kAxk kAkkxk for all vectors x. Also, kABk kAkkBk for
the matrices A and B. The matrix norms corresponding to the above vector norms are
X
n qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
X
n
kAk1 ¼ max Aij , kAk ¼ λ max AT A , kAk ¼ max Aij ,
2 1
1jn 1in
i¼1 j¼1
where λmax(ATA) is the largest eigenvalue of ATA. If A is a square symmetric matrix, then
kAk2 ¼ |λmax(A)|, where λmax(A) is the eigenvalue of the largest magnitude of A.
The Frobenius norm of A 2 ℝmn is defined as
X 2
kAk2F ¼ aij ¼ tr AT A ,
i, j
where for the matrix Ann ¼ (aij), tr(A) ¼ a11 þ ⋯ þ ann is the trace of A. The ellipsoid norm is
defined as kxkA ¼ (xTAx)1/2, where A is a symmetric and positive definite matrix.
Subspaces
For a function f : ℝn ! ℝm, let R( f ) denote the range of f. That is R( f ) ¼ {f(x) : x 2 ℝn} ⊆ ℝm is the
set of all the “images” when x varies over ℝn. The range of a matrix A 2 ℝmn denoted R(A) is the
span of the columns of A. That is,
RðAÞ ¼ fv 2 ℝm : v ¼ Ax, x 2 ℝn g:
Therefore, R(A) is the space spanned by the columns of A (column space). The range of AT is the
span of the columns of AT. But, the columns of AT are just the rows of A. Therefore,
R AT ¼ w 2 ℝn : w ¼ AT y, y 2 ℝm
In other words, N(A) is the set of all the solutions to the homogeneous system Ax ¼ 0. For
A 2 ℝmn, the set N(AT) ¼ {y 2 ℝm : ATy ¼ 0} ⊆ ℝm is called the left-hand null space of A because
N(AT) is the set of all the solutions to the left-hand homogeneous system yTA ¼ 0T. Observe that the
vectors in R(A) are of size m, while the vectors in N(A) are of size n. Therefore, the vectors in R(AT)
and N(A) are both in ℝn. The following equations are true:
In other words, R(AT) and N(A) are disjoint subsets that together span the entire space of ℝn. The
fundamental theorem of linear algebra states that
N ðAÞ R AT ¼ ℝn ,
where n is the number of columns of A and denotes the direct sum of two sets. (If S1 and S2 are two
sets, then S1 S2 ¼ {u þ v : u 2 S1, v 2 S2}.) Often, the sets of this type are called orthogonal
complements and we write R(AT) ¼ N(A)⊥.
If A 2 ℝmn then:
For all the matrices A 2 ℝmn, dimR(A) þ dim N(A) ¼ n. Traditionally, dimN(A) is known as the
nullity of A.
Inverse of a Matrix
1. (A1)1 ¼ A,
2. If the product AB exists and it is nonsingular, then (AB)1 ¼ B1A1,
3. (AT)1 ¼ (A1)T.
4. (cA)1 ¼ c1A1, for any nonzero scalar c.
5. If A is nonsingular and symmetric, then A1 is symmetric.
6. If A 2 ℝnn is nonsingular, then rank(A) ¼ n.
7. det(A) 6¼ 0, where det(A) is the determinant of A.
Appendix A: Mathematical Review 695
and
1
A B
kBkkI BAk ,
A B1
kAkkI BAk :
1 kI BAk 1 kI BAk
If 1 þ bTA1a ¼ 0, then B is a singular matrix. This is often called the Sherman-Morrison rank-one
update formula because, when a 6¼ b 6¼ 0, then rank(abT) ¼ 1.
A generalization of the Sherman-Morrison formula is as follows. If C, D 2 ℝn p so that
(I þ DTA1C)1 exists, then
1 1
A þ CDT ¼ A1 A1 C I þ DT A1 C DT A1 ,
(1) Let
Bk sk sTk Bk yk yTk
Bkþ1 ¼ Bk þ T
sTk Bk sk yk sk
be the BFGS updating formula, where Bk 2 ℝnn is invertible and sk, yk 2 ℝn so that yTk sk > 0: If
H k ¼ B1
k , then the inverse of Bkþ1, denoted by Hkþ1, is computed by twice applying the Sherman-
Morrison update formula as
Hk yk sTk þ sk yTk H k yTk Hk yk sk sTk
Hkþ1 ¼ Hk þ 1þ T :
yTk sk y k sk yTk sk
696 Appendix A: Mathematical Review
(2) Let
Bk sk sTk Bk y yT
Bkþ1 ¼ δ k Bk T þ γ k kT k
sk B k sk y k sk
be the scaled BFGS updating formula, where Bk 2 ℝnn is invertible, sk, yk 2 ℝn so that yTk sk > 0 and
δk, γ k 2 ℝ are two known nonzero scalar parameters. If H k ¼ B1 k , then the inverse of Bkþ1, denoted
by Hkþ1, is computed by twice applying the Sherman-Morrison update formula as
1 H k yk sTk þ sk yTk H k δk yTk H k yk sk sTk
Hkþ1 ¼ Hk þ þ :
δk yTk sk γk yTk sk yTk sk
(3) Consider
" #
sk sTk yk yTk
Bkþ1 ¼ δk I þ ,
ks k k 2 yTk sk
where sk, yk 2 ℝn so that yTk sk > 0, sk 6¼ 0 and δk 2 ℝ is a known nonzero scalar parameter. Then the
inverse of Bkþ1, denoted by Hkþ1, is computed by twice applying the Sherman-Morrison update
formula as
2
1 1 sk yTk þ yk sTk 1 kyk k sk sTk
H kþ1 ¼ I þ 1 þ :
δk δk yTk sk δk yTk sk yTk sk
(4) Consider
" #
sk sTk yk yTk
Bkþ1 ¼ δk I þ γk ,
ks k k 2 yTk sk
where sk, yk 2 ℝn so that yTk sk > 0, sk 6¼ 0 and δk, γ k 2 ℝ are two known nonzero scalar parameters.
Then the inverse of Bkþ1, denoted by Hkþ1, is computed by twice applying the Sherman-Morrison
update formula as
2
1 1 sk yTk þ yk sTk 1 1 kyk k sk sTk
H kþ1 ¼ I þ þ :
δk δk yTk sk γ k δk yTk sk yTk sk
Orthogonality
A square matrix Q 2 ℝnn is orthogonal if it has the property QQT ¼ QTQ ¼ I, where I is the n n
identity matrix. Therefore, the inverse of an orthogonal matrix is its transpose.
Suppose that kuk ¼ 1 and let u⊥ denote the space consisting of all the vectors that are perpendicu-
lar on u. u⊥ is called the orthogonal complement of u. The matrix P ¼ I uuT is the orthogonal
projector onto u⊥ in the sense that P maps each x to its orthogonal projection in u⊥. For a subspace
S ⊂ ℝn, the orthogonal complement S⊥ of S is defined as the set of all the vectors in ℝn that are
orthogonal to every vector in S. In this case, dimS⊥ ¼ n dim S.
Appendix A: Mathematical Review 697
Eigenvalues
A scalar value λ is an eigenvalue of the n n matrix A if there exists a nonzero vector u 2 ℝn so that
Au ¼ λu. The vector u is called an eigenvector of A. The spectrum of a matrix is the set of all its
eigenvalues. Let λ1, . . ., λn be the eigenvalues of the matrix A, real or complex. Then, its spectral
radius ρ(A) is defined as ρ(A) ¼ max {|λ1|, . . ., |λn|}. Observe that ρ(A) kAk for every matrix norm.
The condition number of A can be expressed as κ(A) ¼ ρ(A)ρ(A1). A matrix A is nonsingular if all its
eigenvalues are different from zero. The eigenvalues of the symmetric matrices are all real numbers.
The nonsymmetric matrices may have imaginary eigenvalues.
Two matrices A, B 2 ℝnn are similar if there exists a nonsingular matrix P 2 ℝnn so that
B ¼ P1AP. Similar matrices represent the same linear operator in different bases, with P being the
change of the basis matrix. Two similar matrices have the same eigenvalues, even though they will
usually have different eigenvectors.
A square matrix A is positive definite if and only if xTAx > 0 for every nonzero x 2 ℝn. For the real
symmetric matrices A, the following statements are equivalent:
Any of the statements above can serve as the definition of a positive definite matrix.
A matrix A is positive semidefinite if for all x 2 ℝn, xTAx 0. The following statements are
equivalent and can serve as the definition of a positive semidefinite matrix:
If a matrix is symmetric and positive definite, then its eigenvalues are all positive real numbers. A
symmetric matrix can be tested if it is positive definite by computing its eigenvalues and by verifying
if they are all positive or by performing a Cholesky factorization.
For solving the system Ax ¼ b, where A is nonsingular, the Gaussian elimination consists of the
following four steps:
2. Solve the system PLUx ¼ b subject to LUx by permuting the entries of b, i.e., LUx ¼ P1b ¼ PTb.
3. Solve the system LUx ¼ P1b subject to Ux by forward substitution, i.e., Ux ¼ L1(P1b).
4. Solve the system Ux ¼ L1(P1b) subject to x by backward substitution, i.e., x ¼ U1(L1(P1b)).
1. There exist a unique unit lower triangular matrix L and a nonsingular upper triangular matrix U
such that A ¼ LU. This is called the LU factorization of A.
2. All the leading principal submatrices of A are nonsingular.
The LU factorization without pivoting can fail on nonsingular matrices, and therefore we need to
introduce permutations into the Gaussian elimination.
If A is a nonsingular matrix, then there exist the permutation matrices P1 and P2, a unit lower
triangular matrix L, and a nonsingular upper triangular matrix U such that P1AP2 ¼ LU. Observe
that P1A reorders the rows of A. AP2 reorders the columns of A. P1AP2 reorders both the rows and the
columns of A.
The next two results state simple ways to choose the permutation matrices P1 and P2 to guarantee
that the Gaussian elimination will run on nonsingular matrices.
Cholesky Factorization
The Cholesky factorization of a symmetric and positive definite matrix A, is defined as A ¼ LLT,
where L is a lower triangular matrix as follows:
Appendix A: Mathematical Review 699
The Cholesky factorization method for solving a symmetric positive definite system Ax ¼ b by
using the factorization A ¼ LDLT computes the elements of the diagonal matrix D and the lower
triangular matrix L as follows.
When A is symmetric and positive definite, then the Cholesky factorization requires about n3/6
multiplications per iteration. If A is indefinite, then the Cholesky factorization may not exist. Even if it
does exist, numerically it is unstable when it is applied to such matrices, in the sense that the elements
of L can become arbitrarily large. In this case, the modified Cholesky factorization may be used, as
described in Gill, Murray, and Wright (1981) or in Moré and Sorensen (1984).
In this factorization the matrix A is modified during the course of the factorization in such a way that
all the elements of D are sufficiently positive and the elements of D and L are not too large. To control
the quality of the modification, two positive parameters δ and β are selected. They require that during
the computation of the j-th columns of L and D in the Cholesky factorization, the following bounds be
pffiffiffiffi
satisfied: dj δ and |mij| β, i ¼ j þ 1, . . ., n, where mij ¼ lij dj : To satisfy these bounds, we only
need to change one step in the Cholesky factorization algorithm. Indeed, the formula for computing
the diagonal element dj is replaced by
θj
dj ¼ max cjj , , δ , with θj ¼ max cij :
β j<in
To verify that the above bounds hold, observe that in the Cholesky factorization, cij ¼ lijdj and
therefore
700 Appendix A: Mathematical Review
pffiffiffiffi cij cij β
mij ¼ lij d j ¼ pffiffiffiffi β for all i > j:
dj θj
Details on the modified Cholesky factorization can be found in (Gill, Murray, & Wright, 1981).
QR Decomposition
In other words, if A has full column rank m, then the first m columns of Q form an orthogonal basis
for the range of A.
Suppose A 2 ℝmn with rank(A) ¼ r. Then A can be factored as A ¼ UΣVT, where U 2 ℝm r satisfies
UTU ¼ I, V 2 ℝn r satisfies VTV ¼ I and Σ ¼ diag (σ 1, . . ., σ r) with σ 1 σ 2 ⋯ σ r > 0. The
columns of U are called left singular vectors of A, the columns of V are called right singular vectors of
A, and the numbers σ i are the singular value. The matrix decomposition A ¼ UΣVT is known as the
singular value decomposition (SVD) of A. Observe that
" # " #
Σ2 0 T Σ2 0 T
AA ¼ U
T
U and A A ¼ V
T
V :
0 0 0 0
Therefore, the singular values of A are the positive square roots of the nonzero eigenvalues of AAT
(or ATA), the i-th left singular vector ui is the i-th eigenvector of AAT, and the i-th right singular vector
vi is the i-th eigenvector of ATA. It has many applications in optimization and in other fields. For
example:
1. The l2 norm and the Frobenius norm of matrix A 2 ℝmn of rank r are given by
sffiffiffiffiffiffiffiffiffiffiffiffiffi
X r
kAk2 ¼ σ 1 , and kAkF ¼ σ 2i :
i¼1
Appendix A: Mathematical Review 701
3. The range and the null space of a matrix A 2 ℝmn of rank r have the form
RðAÞ ¼ spanfu1 , . . . , ur g and N ðAÞ ¼ spanðvrþ1 , . . . , vn g:
4. The properties and the computation of the Moore-Penrose pseudo-inverse of a matrix A 2 ℝmn is
defined as the matrix A+ 2 ℝn m that satisfies the following four conditions:
(i) AAþ A ¼ A,
(ii) Aþ AAþ ¼ Aþ ,
(iii) ðAAþ Þ ¼ AAþ ,
T
(iv) ðAþ AÞ ¼ Aþ A:
T
x ¼ Aþ b þ V r z,
Suppose A 2 ℝnn is a real symmetric matrix. Then A can be factored as A ¼ QΛQT, where
Q ¼ [q1, . . ., qn] 2 ℝnn is an orthogonal matrix with columns qi, i ¼ 1, . . ., n, as eigenvectors of
A and Λ ¼ diag (λ1, . . ., λn), where λi are the eigenvalues of A. When A is positive definite as well as
symmetric, this spectral decomposition is identical to the singular value decomposition. In this case,
the singular values σ i and the eigenvalues λi coincide.
Elementary Matrices
Matrices of the form I uvT, where u, v 2 ℝn such that vTu 6¼ 1, are called elementary matrices. All
such matrices are nonsingular and
1 uvT
I uvT ¼I :
vT u1
702 Appendix A: Mathematical Review
The inverses of the elementary matrices are elementary matrices. The elementary matrices are
used for (i) interchanging the rows i and j, (ii) multiplying the row (column) i by α 6¼ 0, (iii) adding a
multiple of the row (column) i to the row (column) j.
An elementary lower-triangular matrix is defined as an n n triangular matrix of the form
T k ¼ I ck eTk ,
Observe that
2 3
1 0 ⋯ 0 0 ⋯ 0
6 0 ⋯ ⋯ 0 7
6 1 0 0 7
6 7
6⋮ ⋮ ⋱ ⋮ ⋮ ⋯ ⋮7
6 7
6 7
T 1 ¼ I þ ck ek ¼ 6 0
T
0 ⋯ 1 0 ⋯ 0 7,
k
6 7
6 0 0 ⋯ μkþ1 1 ⋯ 0 7
6 7
6 7
4⋮ ⋮ ⋮ ⋮ ⋱ ⋮5
0 0 ⋯ μn 0 ⋯ 1
T k Ak1 ¼ I ck eTk Ak1 ¼ Ak1 ck eTk Ak1
2
3 2 3
⋯ α1 ⋯ 0
6 7 6 7
6 0
⋯ α2 ⋯ 7 6 0 7
6 7 6 7
6 7 6 7
6⋮ ⋮ ⋱ ⋮ ⋮ ⋯ ⋮7 7 6 7
6 6 ⋮ 7
6 7 6 7
6 7 6 7
¼ 6 0 0 ⋯ αk ⋯ 7, where ck ¼ 6 0 7
6 7 6 7
6 7 6 7
6 0 0 ⋯ 0 ⋯ 7 6 αkþ1 =αk 7
6 7 6 7
6 7 6 7
6⋮ ⋮ ⋮ ⋮ ⋱ ⋮5 7 6 7
4 4 ⋮ 5
0 0 ⋯ 0 ⋯ αn =αk
contains the multipliers used to annihilate the entries below αk. Therefore, if no row interchanges are
required, then reducing the nonsingular matrix A to an upper triangular matrix U by the Gaussian
elimination is equivalent to executing a sequence of n 1 left-hand multiplications with elementary
lower-triangular matrices. That is, Tn 1⋯T2T1A ¼ U, and hence A ¼ T 1 1 1
1 T 2 ⋯T n1 U: Having in
view that ej ck ¼ 0 whenever j k, it follows that
T
T 1 1 1
1 T 2 ⋯T n1 ¼ I þ c1 e1 I þ c2 e2 ⋯ I þ cn1 en1
T T T
But
2 3
0 0 ⋯ 0 0 ⋯ 0
6 7
6 0 0 ⋯ 0 0 ⋯ 0 7
6 7
6⋮ ⋮ ⋱ ⋮ ⋮ ⋯ ⋮7
6 7
6 7
ck eTk ¼ 6 0 0 ⋯ 0 0 ⋯ 0 7,
6 7
6 0 0 ⋯ lkþ1,k 0 ⋯ 0 7
6 7
6 7
4⋮ ⋮ ⋮ ⋮ ⋱ ⋮5
0 0 ⋯ ln,k 0 ⋯ 0
where the li, k’s are the multipliers used at the k-th stage to annihilate the entries below the k-th pivot.
Therefore, from all these developments, it follows that
A ¼ LU,
where
2 3
1 0 0 ⋯ 0
6 7
6 l2,1 1 0 ⋯ 0 7
6 7
L ¼ I þ c1 eT1 þ c2 eT2 þ ⋯ þ cn1 eTn1 ¼6
6 l3,1 l3,2 1 ⋯ 0 7
7,
6 7
4⋮ ⋮ ⋮ ⋱ ⋮5
ln,1 ln,2 ln,3 ⋯ 1
is the lower-triangular matrix with 1’s on the main diagonal, and where li, j is the multiplier used to
annihilate the (i, j)-position during the Gaussian elimination. Therefore, the factorization A ¼ LU is
the matrix formulation of the Gaussian elimination with no row interchanges.
704 Appendix A: Mathematical Review
These are two terms used in numerical computations when a problem is solved with an algorithm.
Conditioning is a property of the problem, irrespective of its being a linear algebra problem, an
optimization or a differential equation. A problem is well-conditioned if its solution is not greatly
affected by small perturbations to the data that define the problem. Otherwise, it is ill-conditioned. On
the other hand, stability of an algorithm is a property of the algorithm. An algorithm is stable if it is
guaranteed to generate accurate answers to well-conditioned problems.
The condition number of a nonsingular matrix A 2 ℝnn denoted as cond(A) or κ(A) is defined
as cond(A) ¼ kAkkA1k. If the 2-norm is used, then κ(A) ¼ σ max(A)/σ min(A), where σ max(A) and
σ min(A) are the largest and the smallest singular values of A, respectively. For normal matrices,
κ(A) ¼ |λmax(A)|/|λmin(A)|, where λmax(A) and λmin(A) are the largest and the smallest eigenvalues of A,
respectively. The matrix A is well-conditioned if κ(A) is small (close to 1). The matrix A is
ill-conditioned if κ(A) is large.
For general linear systems Ax ¼ b, where A 2 ℝnn, the condition number of the matrix can be
used to see the conditioning of the system. If the matrix A is perturbed to A and b to b and consider x as
the solution of the perturbed system Ax ¼ b, it can be shown that (Golub & Van Loan, 1996)
"
#
kx x k
A A
b b
κ ðAÞ þ :
kx k k Ak kbk
Therefore, a large condition number κ(A) indicates that the problem Ax ¼ b is ill-conditioned,
while a small value shows well-conditioning of the problem.
To see the significance of the stability of an algorithm, let us consider the linear system Ax ¼ b
solved by means of the Gaussian elimination with partial pivoting and triangular substitution. It is
shown that this algorithm gives a solution x whose relative error is approximately
kx x k gr ðAÞ
κ ð AÞ u,
kx k k Ak
where gr(A) is the size of the largest element that arises in A during the execution of the Gaussian
elimination with partial pivoting and u is the unit roundoff. (In double-precision IEEE arithmetic, u is
about 1.1 1016.) In the worst case, it can be shown that gr(A)/kAk may be around 2n 1, which
indicates that the Gaussian elimination with partial pivoting is an unstable algorithm (Demmel,
1997). However, in practice, after decades of numerical experience with the Gaussian elimination
with partial pivoting, it was noticed that gr(A) is growing slowly as a function of n. In practice, gr(A)
is almost always n or less. The average behavior seems to be n2/3 or perhaps even n1/2 (Trefethen &
Schreiber, 1990). Therefore, the Gaussian elimination with partial pivoting is stable for all practical
purposes. However, the Gaussian elimination without pivoting is definitely unstable. For the system
Ax ¼ b where A is a symmetric and positive definite matrix, the Cholesky factorization method with
triangular substitution is a stable algorithm.
Determinant of a Matrix
The determinant is a scalar defined only for square matrices. A permutation p ¼ ( p1, p2, . . ., pn) of
the numbers (1, 2, . . ., n) is simply any rearrangement of these numbers. The sign of a permutation
p is defined to be the number
Appendix A: Mathematical Review 705
þ1, if p can be restored to the natural order by an even number of interchanges,
σ ðpÞ ¼
1, if p can be restored to the natural order by an odd number of interchanges:
Let A ¼ (aij) 2 ℝnn be an arbitrary matrix, where all its elements aij are real numbers. The
determinant of A is defined to be the scalar
X
detðAÞ ¼ σ ðpÞa1p1 a2p2 ⋯anpn ,
p
where the sum is taken over the n! permutations p ¼ ( p1, p2, . . ., pn) of (1, 2, . . ., n).
(n ! ¼ 1 2 . . . n. For example 3 ! ¼ 1 2 3 ¼ 6.) Each term a1p1 a2p2 ⋯anpn contains
exactly one entry from each row and from each column of A.
Some properties of the determinants are as follows:
For a matrix A 2 ℝnn, the polynomial p(λ) ¼ det (A λI) is called the characteristic polynomial
of A. The set of all the eigenvalues of A is the set of all the roots of its characteristic polynomial. The
Cayley-Hamilton theorem says that p(A) ¼ 0.
Let In be the identity matrix of order n and u1, u2 2 ℝn arbitrary vectors. Then,
det I n þ u1 uT2 ¼ 1 þ uT1 u2 :
Let In be the identity matrix of order n and u1, u2, u3, u4 2 ℝn arbitrary vectors. Then,
det I n þ u1 uT2 þ u3 uT4 ¼ 1 þ uT1 u2 1 þ uT3 u4 uT1 u4 uT2 u3 :
Indeed,
h 1 T i
I n þ u1 uT2 þ u3 uT4 ¼ I n þ u1 uT2 I n þ I n þ u1 uT2 u3 u4 :
Therefore,
706 Appendix A: Mathematical Review
h 1 T i
det I n þ u1 uT2 þ u3 uT4 ¼ det I n þ u1 uT2 det I n þ I n þ u1 uT2 u3 u4
h i
1
¼ 1 þ uT1 u2 1 þ uT4 I n þ u1 uT2 u3
T
u1 u2
¼ 1 þ uT1 u2 1 þ uT4 I n u3
1 þ uT1u2
¼ 1 þ uT1 u2 1 þ uT3 u4 uT1 u4 uT2 u3 :
(1) Let
Bk sk sTk Bk yk yTk
Bkþ1 ¼ Bk þ T ,
sTk Bk sk yk sk
be the BFGS updating of the matrix Bk, where Bk 2 ℝnn and sk, yk 2 ℝn so that yTk sk > 0. Then,
sk sTk Bk B1 k yk yk
T
detðBkþ1 Þ ¼ det Bk I T þ T
s Bs y k sk
k k k
ðBk sk ÞT 1 yTk y T sk
¼ detðBk Þdet I sk T þ Bk yk T ¼ detðBk Þ T k :
sk B k sk yk sk s k Bk s k
(2) Consider
Bk sk sTk Bk y yT
Bkþ1 ¼ δ k Bk T þ γ k kT k ,
sk B k sk yk sk
where sk, yk 2 ℝn so that yTk sk > 0 and δk, γ k 2 ℝ are two known nonzero scalar parameters. Then,
yTk sk n1
detðBkþ1 Þ ¼ detðBk Þ δ γ :
sTk Bk sk k k
Trace of a matrix
1. tr(AT) ¼ tr(A).
2. tr(AB) ¼ tr(BA).
3. tr(αA þ βB) ¼ αtr(A) þ βtr(B), α, β 2 ℝ.
Appendix A: Mathematical Review 707
Bk sk sTk Bk y yT
Let Bkþ1 ¼ Bk sTk Bk sk
þ ykT skk be the BFGS updating of the matrix Bk, where Bk 2 ℝnn and
k
k Bk s k k 2 k y k k 2
tr ðBkþ1 Þ ¼ tr ðBk Þ þ T :
sTk Bk sk y k sk
Let {xk} be a sequence of points from ℝn. A sequence {xk} converges to a point x, written as
limk ! 1xk ¼ x, if for any ε > 0 there exists an index K so that kxk xk ε for all k K. Given an
index set K ⊂ f1, 2, . . .g, a subsequence of {xk} corresponding to K can be defined and denoted by
fxk gk2K : Consider a convergent sequence {xk} with the limit x. Then, any subsequence of {xk} also
converges to x. A convergent sequence has only one limit. A sequence {xk} in ℝn is bounded if there
exists a number B 0 such that kxkk B for all k ¼ 1, 2, . . . . Every convergent sequence is bounded.
A sequence {xk} in ℝn is uniformly bounded away from zero if there exists ε > 0 such that |xk| ε for
any k 1.
The point x 2 ℝn is an accumulation point or a limit point or a cluster point for the sequence {xk}
if there is an infinite set of indices k1, k2, k3, . . . so that the subsequence fxki gi¼1,2,3,...converges to x,
i.e., lim i!1 xki ¼ x : A sequence is a Cauchy sequence if for any ε > 0 there exists an integer K > 0 so
that kxk xmk ε for all the indices k K and m K. A sequence converges if and only if it is a
Cauchy sequence.
A function f : ℝn ! ℝm is continuous at x 2 ℝn if for all ε > 0 there exists a δ(ε, x) > 0 so that for
any y 2 ℝn, ky xk2 δ(ε, x) )kf( y) f(x)k2 ε. The continuity can be described in terms of
limits: whenever the sequence {xk} in ℝn converges to a point x 2 ℝn, the sequence {f(xk)} in ℝm
converges to f(x), i.e., limk ! 1f(xk) ¼ f(limk ! 1xk). A function f is continuous if it is continuous at
every point in ℝn.
A function f : ℝn ! ℝm is uniformly continuous at x 2 ℝn if for all ε > 0 there exists a δ(ε) > 0 so
that for any y 2 ℝn, ky xk2 δ(ε) )kf( y) f(x)k2 ε. It is obvious that a uniformly continuous
function is continuous.
If {xk} is a Cauchy sequence and f is uniformly continuous on a convex domain, then {f(xk)} is also
a Cauchy sequence.
A function f : ℝn ! ℝm is bounded if there exists a constant C 0 so that kf(x)k C for all x 2 ℝn.
A continuous function f : ℝn ! ℝ is coercive if limkxk ! 1 ¼ þ 1 . This means that for any
constant M there must be a positive number RM such that f(x) M whenever kxk RM. In particular,
the values of f(x) cannot remain bounded on a set in ℝn which is not bounded. For f(x) to be coercive,
it is not sufficient that f(x) ! 1 as each coordinate tends to 1. Rather, f(x) must become infinite
708 Appendix A: Mathematical Review
along any path for which kxk becomes infinite. If f(x) is coercive, then f(x) has at least one global
minimizer, and these minimizers can be found among the critical points of f(x).
Let f : ℝ ! ℝ be a real-valued function of a real variable. The first derivative is defined by
f ð x þ εÞ f ð x Þ
f 0 ðxÞ ¼ lim ε!0 :
ε
The second derivative is defined by
f 0 ð x þ εÞ f 0 ð x Þ
f 00 ðxÞ ¼ lim ε!0 :
ε
The directional derivative of a function f : ℝn ! ℝ in the direction p 2 ℝn is given by
f ðx þ εpÞ f ðxÞ
Dðf ðxÞ; pÞ ¼ lim ε!0 :
ε
Let f : ℝn ! ℝ be a continuously differentiable function. The conditions which characterize a
minimum can be expressed in terms of the gradient ∇f(x) with the first partial derivatives defined as
T
∂f ∂f
∇f ðxÞ ¼ , ⋯,
∂x1 ∂xn
and of n n Hessian matrix ∇2f(x) with the second partial derivatives whose (i, j)-th element is
2 2
∇ f ðxÞ ij ¼ ∂ f ðxÞ=∂xi ∂xj , i, j ¼ 1, . . . , n:
When f is twice continuously differentiable, the Hessian matrix is always symmetric. As a simple
example, let us consider the quadratic function f : ℝn ! ℝ, f(x) ¼ (1/2)xTAx þ bTx þ a, where
A 2 ℝnn is a symmetric matrix. Then, ∇f(x) ¼ Ax þ b. The Hessian of f is given by ∇2f(x) ¼ A, i.e.,
the second order approximation of a quadratic function is itself.
If f is continuously differentiable in a neighborhood of x, then
Theorem A2.2 (Mean Value Theorem) Given a continuously differentiable function f : ℝ ! ℝ and
two real numbers x1 and x2 that satisfy x2 > x1, then
f ðx þ dÞ ¼ f ðxÞ þ ∇f ðx þ αd ÞT d
Theorem A2.3 (Taylor’s Theorem). If f is continuously differentiable in a domain containing the line
segment [x1, x2], then there is a θ, 0 θ 1, so that
Appendix A: Mathematical Review 709
Moreover, if f is twice continuously differentiable in a domain containing the line segment [x1, x2],
then there is a θ, 0 θ 1, so that
1
f ðx2 Þ ¼ f ðx1 Þ þ ∇f ðx1 ÞT ðx2 x1 Þ þ ðx2 x1 ÞT ∇2 f ðθx1 þ ð1 θÞx2 Þðx2 x1 Þ: ♦
2
For twice continuously differentiable functions f : ℝn ! ℝm and for any vector d 2 ℝn, one form of
the Taylor theorem is
1
f ðx þ dÞ ¼ f ðxÞ þ ∇f ðxÞT d þ dT ∇2 f ðx þ αd Þd,
2
for some α 2 (0, 1).
The level set of a function f : ℝn ! ℝ at level c is the set of points
S ¼ fx : f ðxÞ ¼ cg:
Theorem A2.4 Suppose that f is continuously differentiable. Then the vector ∇f(x0) is orthogonal to
the tangent vector to an arbitrary smooth curve passing through x0 on the level set determined by
f(x) ¼ f(x0). ♦
Consider the minimization problem min x2ℝn f ðxÞ with the minimum point x. Let e ¼ x x be the
error and B(δ) the ball of the radius δ about x.
Theorem A2.5 Suppose that f is twice continuously differentiable with k∇2f(x) ∇2f( y)k γkx yk,
∇f(x) ¼ 0 and ∇2f(x) is positive definite. Then there is δ > 0 such that for all x 2 B(δ),
2
∇ f ðxÞ
2
∇2 f ðx Þ
,
1
1
∇ f ðxÞ
2
∇2 f ðx Þ
,
1
2 1
1
∇ f ðx Þ
kek k∇f ðxÞk 2
∇2 f ðx Þ
kek: ♦
2
In the point x0 the gradient ∇f(x0) is the direction of the maximum rate of increase of f at x0. Since
∇f(x0) is orthogonal to the level set through x0 determined by f(x) ¼ f(x0), it follows that the direction
of the maximum rate of increase of a real-valued differentiable function at a point is orthogonal to the
level set of the function through that point.
Then, there are the open sets Nz ⊂ ℝn and Nt ⊂ ℝm containing z and 0, respectively, and a
continuous function z : Nt ! Nz such that z ¼ z(0) and h(z(t), t) ¼ 0 for all t 2 Nt. z(t) is uniquely
defined. If h is q times continuously differentiable with respect to both its arguments for some q > 0,
then z(t) is also q times continuously differentiable with respect to t and
The implicit function theorem is applied to parameterized systems of linear equations in which z is
obtained as the solution of M(t)z ¼ g(t), where M(.) 2 ℝnn has M(0) nonsingular and g(t) 2 ℝn (see
the algebraic characterization of a tangent space). To apply the theorem, define h(z, t) ¼ M(t)z g(t).
If M(.) and g(.) are continuously differentiable in some neighborhood of 0, the theorem implies that
z(t) ¼ M(t)1g(t) is a continuous function of t in some neighborhood of 0.
Rates of Convergence
Let {xk} be a sequence from ℝn that converges to x 2 ℝn. This sequence converges Qlinear if there
is a constant r 2 (0, 1) so that
kxkþ1 x k
r
kxk x k
kxkþ1 x k
lim ¼ 0:
k!1 kxk x k
for all k sufficiently large, where M is a positive constant, not necessarily smaller than 1.
Typically, under appropriate assumptions, the quasi-Newton methods for unconstrained optimiza-
tion converge Qsuperlinearly, whereas Newton’s method converges Qquadratically. The steepest
descent algorithms converge only at a Qlinear rate, and when the problem is ill-conditioned, the
convergence constant r is close to 1.
Let f : ℝ ! ℝ. Finite-differencing refers to the estimation of f 0(x) using the values of f(x). Finite-
difference estimates can be obtained from Taylor’s series. In one dimension we have
1
f ðx þ hÞ ¼ f ðxÞ þ hf 0 ðxÞ þ h2 f 00 ðξÞ,
2
Appendix A: Mathematical Review 711
where ξ is on the line segment connecting x and x þ h. From the above equality, we get
f ðx þ hÞ f ðxÞ 1 00
f 0 ðxÞ ¼ hf ðξÞ,
h 2
thus obtaining the approximation
f ð x þ hÞ f ð x Þ
f 0 ðxÞ :
h
This is the most used finite-difference formula. It is called the forward finite-difference formula.
Now, let us estimate the error in finite differencing, and determine an acceptable value for h. For
this, observe that part of the error is due to the inaccuracies in the formula itself, called the truncation
error
1
truncated error ¼ hjf 00 ðξÞj:
2
Besides, there are rounding errors from the evaluation of ( f(x þ h) f(x))/h which depends on
εmach, the precision of the computer calculation. Therefore, the rounding error from the evaluation of
the function f in the numerator is
ðrounding errorÞ1 jf ðxÞjεmach :
jf ðxÞjεmach
ðrounding errorÞ2 þ jf 0 ðxÞjεmach ,
h
where the first rounding error is magnified by 1/h, and then there is an additional rounding error from
the division that is proportional to the result f 0(x). When h is small and f 0(x) is not large, then the first
term will dominate, thus leading to the estimate
jf ðxÞjεmach
rounding error :
h
Therefore, the total error is a combination of the above truncation error and the rounding error, i.e.,
1 jf ðxÞjεmach
error hjf 00 ðξÞj þ :
2 h
The best value of h is obtained by minimizing the error as a function of h. Differentiating the error
with respect to h and setting the derivative to zero, we get
1 00 jf ðxÞjεmach
j f ðξÞj ¼ 0:
2 h2
Therefore, an estimate for h is obtained as
sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
2jf ðxÞjεmach
h¼ :
jf 00 ðξÞj
712 Appendix A: Mathematical Review
00
When f(x) and f (ξ) are neither large nor small, then a simpler estimation
pffiffiffiffiffiffiffiffiffiffi
h εmach
can be used. Observe that if h < |x|εmach, then the computed value of x þ h will be equal to x and the
finite-difference estimate will be zero. Thus, in the general case the choice of h will depend on εmach,
00
|x| and on the values of |f |. Some software packages use this estimation of h or some simple
modification of it which takes into account |x| or |f(x)|. see Dennis and Schnabel (1983) and Gill,
Murray, and Wright (1981).
A more accurate finite-difference formula is given by the central finite-difference formula
f ðx þ hÞ f ðx hÞ 1 2 000 000
f 0 ðxÞ ¼ h f ðξ 1 Þ þ f ðξ 2 Þ :
2h 12
It can be derived using the Taylor series for f(x þ h) and f(x h) about point x. Higher derivatives
can also be obtained by finite differencing. For example,
f ðx þ hÞ 2f ðxÞ þ f ðx hÞ 1 2 ð4Þ
f 00 ðxÞ ¼ h f ð ξ 1 Þ þ f ð4Þ
ðξ 2 Þ
h2 24
can be obtained from the Taylor series for f(x þ h) and f(x h) about point x.
For multidimensional functions F(x) : ℝn ! ℝm, the derivatives can be estimated by applying the
finite-difference formulas to each component of the gradient or the Hessian matrix
f x þ hej f ðxÞ
½∇f ðxÞj ,
h
where ej is the j-th column of the unity matrix.
If the gradient is known, then the Hessian can be approximated as
Automatic Differentiation
the rules of calculus, determines the corresponding derivative values. In the following, a short
description of a method for the automatic differentiation which generates the function values, its
gradient, and the Hessian in a certain point x 2 ℝn is given.
Every variable xi, i ¼ 1, . . ., n, is represented by a triplet X ¼ xi , x0i , x00i , where xi 2 ℝ, x0i 2 ℝn
and x00i 2 ℝnn : Denote the set of all these triplets by Tn. On Tn, for any U and V from Tn, the following
arithmetic operations can be defined:
U þ V ¼ ðu þ v, u0 þ v0 , u00 þ v00 Þ,
U V ¼ ðu v, u0 v0 , u00 v00 Þ,
U V ¼ uv, uv0 þ vu0 , uv00 þ u0 v0 þ v0 u0 þ vu00 ,
T T
U=V ¼ u=v, ðvu0 uv0 Þ=v2 , v2 u00 v v0 u0 þ u0 v0 þ 2uv0 v0 uvv00 =v3 ,
T T T
for v 6¼ 0.
An independent variable in Tn is represented as Xi ¼ (xi, ei, 0), where ei is the i-th column of the
unitary matrix and 0 is an n n matrix. All the constants c are represented by C ¼ (c, 0, 0). Let
00
C ¼ (c, 0, 0) be a constant and the triplet U ¼ (u, u0, u ) 2 Tn. Then,
C þ U ¼ U þ C ¼ ðc þ u, u0 , u00 Þ,
C U ¼ ðc u, u0 , u00 Þ,
U C ¼ ðu c, u0 , u00 Þ,
C U ¼ U C ¼ ðc u, cu0 , cu00 Þ,
C=U ¼ c=u, cu0 =u2 , 2cu0 u0 cuu00 =u3 ,
T
for c 6¼ 0 and u 6¼ 0.
Consider the following example:
2
f ðxÞ ¼ 100 x2 x21 þ ð1 x1 Þ2
for which let us compute f(x0), ∇f(x0) and ∇2f(x0), where x0 ¼ [1.2, 1]T. For this, the point x0 is
represented in T2 as
" # " #!
1 0 0
X1 ¼ 1:2, , ,
0 0 0
" # " #!
0 0 0
X1 ¼ 1:0, , :
1 0 0
Taking into consideration the above arithmetic operations, the following steps determine f(x0),
∇f(x0) and ∇2f(x0), as in the table below
714 Appendix A: Mathematical Review
gðU Þ ¼ gðu, u0 , u00 Þ ¼ gðuÞ, g0 ðuÞu0 , g0 ðuÞu00 þ g00 ðuÞu0 u0 :
T
For example,
sin ðU Þ ¼ sin ðu, u0 , u00 Þ ¼ sin ðuÞ, u0 cos ðuÞ, u00 cos ðuÞ u0 u0 sin ðuÞ :
T
Order Notation
Order notation is a concept used to see how the members of a sequence behave when we get far
enough along in the sequence. Let us consider two nonnegative sequences of scalars {ηk} and {θk}.
ηk ¼ o(θk) if the sequence of ratios {ηk/θk} approaches zero, i.e., limk ! 1ηk/θk ¼ 0. ηk ¼ O(θk) if there
is a positive constant c so that |ηk| c|θk| for all k sufficiently large. If η : ℝ ! ℝ is a function, then
η(t) ¼ o(t) to specify that the ratio η(t)/t approaches zero either as t ! 0 or t ! 1 . Similarly,
η(t) ¼ O(t) if there is a constant c so that |η(t)| c|t| for all t 2 ℝ. A slight variant of the above
definitions is as follows. ηk ¼ o(1) to specify that limk ! 1ηk ¼ 0. Similarly, ηk ¼ O(1) to indicate that
there is a constant c so that |ηk| c for all k. Sometimes, in the above definitions, there are vectors or
matrices as arguments. In these cases, the definitions apply to the norms of these quantities. For
instance, if f : ℝn ! ℝn, then f(x) ¼ O(kxk) if there is a positive constant c so that kf(x)k ckxk for all
x in the domain of f.
Appendix A: Mathematical Review 715
The open ball of radius ε centered at x is defined as the set B(x, ε) ¼ {x 2 ℝn : kx xk < ε} in
any norm.
A subset D ⊂ ℝn is open if for every x 2 D there exists a positive number ε > 0 so that the ball of
radius ε centered at x is contained in D, i.e., {y 2 ℝn : ky xk ε} ⊂ D. The intersection of a finite
number of open sets is open. Any union of open sets is open.
A point x 2 ℝn is an interior point of the set D if there is an open ball B(x, ε) so that B(x, ε) ⊂ D.
The interior of a set D, denoted by intD, is the set of the interior points of D.The interior of a set is the
largest open set contained in D.
A point x 2 ℝn is an exterior point of D if it is an interior point of ℝn\D. Notice that the set D is
open if every point of D is an interior point of D. Obviously, if D is open, then intD ¼ D.
A point xe is said to be a limit point of the set D if every open ball Bðxe, εÞ contains a point x 6¼ xe so
that x 2 D. Note that xe does not necessarily have to be an element of D for being a limit point of D.
The set D is closed if for all the possible sequences of points {xk} in D, all the limit points of {xk}
are elements of D. The union of a finite number of closed sets is closed. Any intersection of closed sets
is closed.
The set D is bounded if there is some real number M > 0 so that kxk M for all x 2 D.
The set D is compact if every sequence {xk} of points in D has at least one limit point and all such
limit points are in D. A central result in topology is that in ℝn the set D is compact if it is both closed
and bounded.
Theorem A3.1 (Weierstrass Extreme Value Theorem.) Every continuous function on a compact set
attains its extreme values on that set. ♦
The closure of the set D is the set cl(D) ¼ D [ L, where L denotes the set of all the limit points of D.
For a given point x 2 ℝn,a neighborhood of x is an open set containing x. A useful neighborhood is
the open ball of radius ε centered at x.
A point x 2 ℝn is a boundary point of the set D if every neighborhood of x contains points both
inside and outside of D. The set of the boundary points of D is denoted by ∂D.
Let f : D ⊂ ℝn ! ℝm. Then f is Lipschitz continuous on an open set N ⊂ D if there is a constant
0 < L < 1 so that
Convex Sets
A set C ⊂ ℝn is a convex set if for every point x, y 2 C the point z ¼ λx þ (1 λ)y is also in the set
C for any λ 2 [0, 1]. The intersection of any family of convex sets is a convex set. An affine set in ℝn
is the set of all the vectors {x} S, where x 2 ℝn and S is a subspace of ℝn. A cone is a set V with the
property that for all x 2 V it follows that αx 2 V for all α > 0. A cone generated by {x1, x2, . . ., xm} is
the set of all the vectors of the form
X
m
x¼ αi xi , where αi 0 for all i ¼ 1, . . . , m:
i¼1
Observe that all the cones of this form are convex sets. A convex combination of a finite set of
vectors {x1, x2, . . ., xm} in ℝn is any vector x of the form
X
m X
m
x¼ αi xi , where αi ¼ 1, αi 0 for all i ¼ 1, . . . , m:
i¼1 i¼1
The following two results on the separation of the convex sets are used in specifying the optimality
conditions for nonlinear programming problems. We present them without proof (see Bazaraa,
Sherali, & Shetty, 1993).
Proposition A4.1 (Separation of a Convex Set and a Point). Let C ⊂ ℝn be a nonempty and convex
set. Consider a point y 2
= C. Then, there exist a nonzero vector a 2 ℝn and a scalar c 2 ℝ such that
a y > c and a x c for any x 2 C.
T T
♦
Proposition A4.2 (Separation of Two Convex Sets). Let C1 and C2 be two nonempty and convex sets
in ℝn. Suppose that C1 \ C2 ¼ ∅ . Then, there exists a hyperplane that separates C1 and C2,
i.e., there is a nonzero vector p 2 ℝn such that pTx1 pTx2 for any x1 2 cl(C1) and for any
x2 2 cl(C2). ♦
Convex Functions
Theorem A4.1 Any local minimum of a convex function f : C ! ℝ defined on a convex set C ⊂ ℝn
is also a global minimum on C. Any local minimum of a strictly convex function f : C ! ℝ defined on a
convex set C ⊂ ℝn is the unique strict global minimum of f on C. ♦
Appendix A: Mathematical Review 717
Strong Convexity
A differentiable function f is called strongly convex on S with the parameter μ > 0 if for all the points
x, y 2 S,
μ
f ðyÞ f ðxÞ þ ∇f ðxÞT ðy xÞ þ ky xk2 :
2
Intuitively, strong convexity means that there exists a quadratic lower bound on the growth of the
function. Observe that a strongly convex function is strictly convex since the quadratic lower bound
growth is strictly greater than the linear growth. An equivalent condition for the strong convexity of
the function f on S is
1. k∇f(x)k2 2μ( f(x) f(x)) for all x 2 S, where x is a local minimum of the function f.
2. k∇f(x) ∇ f( y)k μkx yk for all x 2 S.
3. f ðyÞ f ðxÞ þ ∇f ðxÞT ðy xÞ þ 2μ
1
k∇f ðyÞ ∇f ðxÞk2 , for all x 2 S.
If the function f is twice continuously differentiable, then it is strongly convex with the parameter
μ > 0 on S if and only if ∇2f(x) μI for all x 2 S, where I is the identity matrix and the inequality
means that ∇2f(x) μI is positive semidefinite.
Proposition A4.3 (Convexity of Level Set). Let C be a convex set in ℝn and let f : C ! ℝ be a convex
function. Then, the level set Cα ¼ {x 2 C : f(x) α}, where α is a real number, is a convex set.
Proof Let x1, x2 2 C. Of course, x1, x2 2 Cα. f(x1) α and f(x2) α. Now, let λ 2 (0, 1) and consider
x ¼ λx1 þ (1 λ)x2. By the convexity of C, it follows that x 2 C. On the other hand, by the convexity
of f on C,
i.e., x 2 Cα. ♦
Proposition A4.4 (Convexity of a domain defined by a set of convex functions). Let C be a convex set
in ℝn and let ci : C ! ℝ, i ¼ 1, . . ., m, be convex functions on C. Then, the set defined by
X ¼ {x 2 C : ci(x) 0, i ¼ 1, . . ., m} is convex.
Proof The result follows from Proposition A4.3 and from the property of the intersection of the
convex sets. ♦
The following two propositions give differential criteria of checking the convexity of a function.
Proposition A4.5 (First-Order Condition for Convexity). Let C be a convex set in ℝn with nonempty
interior. Consider the function f : C ! ℝ which is continuous on C and differentiable on int(C). Then f
is convex on int(C) if and only if f( y) f(x) þ ∇ f(x)T(y x) for any points x, y 2 C. ♦
718 Appendix A: Mathematical Review
Proposition A4.6 (Second-Order Condition for Convexity). Let C be a convex set in ℝn with
nonempty interior. Consider the function f : C ! ℝ which is continuous on C and twice differentiable
on int(C). Then, f is convex on int(C) if and only if the Hessian ∇2f(x) is positive semidefinite at each
x 2 int (C). ♦
The convexity of the objective function and of the constraints is crucial in nonlinear optimization.
The convex programs have very nice theoretical properties which can be used to design efficient
optimization algorithms. Therefore, it is important to know how to detect the convexity and the
operations that preserve the convexity of functions.
Theorem A4.2 (Farkas’ Theorem). Let A be an m n matrix and c an n vector. Then, just one of the
following two statements holds:
Proof Suppose that System 2 has a solution, i.e., there exists y 0 such that ATy ¼ c. Let x be such
that Ax 0. Then, cTx ¼ yTAx 0. Therefore, System 1 has no solution.
Now, suppose that System 2 has no solution. Consider the set X ¼ {x : x ¼ ATy, y 0}. Observe
that X is a closed and convex set. By Proposition A4.1, there exist a vector p 2 ℝn and a scalar α such
that pTc > α and pTx α for all x 2 X. Since 0 2 X, then α 0 and so pTc > 0. Also, α pTATy ¼ yTAp
for all y 0. Since y 0 can be made arbitrarily large, it follows that the last inequality implies that
Ap 0. Therefore, we have constructed a vector p 2 ℝn such that Ap 0 and cTp > 0, i.e., System
1 has a solution. ♦
Theorem A4.3 (Gordan’s Theorem). Let A be a m n matrix. Then just one of the following two
statements holds:
Proof System 1 can be equivalently written as Ax þ es 0 for some x 2 ℝn and s > 0, s 2 ℝ, where
e is a vector of m ones. Now, rewriting this system in the form of System 1 of Theorem A4.2, we
x x x
obtain ½A e 0 and ð0, . . . , 0, 1Þ > 0 for some 2 ℝnþ1 : By Theorem A4.2, the
s s s
" #
AT
associated System 2 states that y ¼ ð0, . . . , 0, 1ÞT and y 0 for some y 2 ℝm, that is, ATy ¼ 0,
eT
eTy ¼ 1 and y 0 for some y 2 ℝm. But this is equivalent to System 2. ♦
Theorem A4.4 Let P and Q be two symmetric matrices such that Q 0 and P > 0 on the null space
of Q (i.e., yTPy > 0 for any y 6¼ 0 with Qy ¼ 0). Then, there exists c > 0 such that P þ cQ > 0 for any
c > c:
Appendix A: Mathematical Review 719
Proof Assume the contrary. Then, for any k > 0 there exists xk, kxkk ¼ 1 such that
(xk)TP(xk) þ k(xk)TQ(xk) 0. Consider a subsequence {xk}K convergent to some x with kxk ¼ 1:
Dividing the above inequality by k and taking the limit as k 2 K ! 1, we get xT Qx 0: On the
other hand, Q being semipositive definite we must have xT Qx 0, hence xT Qx ¼ 0: Therefore,
using the hypothesis it follows that xT Px 0: But this contradicts the fact that
k T k
x Px þ lim sup k x Q x 0:
T
♦
k!1, k2K
Proposition A4.7 (Linear combination with nonnegative coefficients). Let C be a convex set in ℝn. If
f : C ! ℝ and g : C ! ℝ are convex functions on C, then their linear combination λf þ ηg, where the
coefficients λ and η are nonnegative, is also convex on C. ♦
Proposition A4.8 (Composition with affine mapping). Let C and D be convex sets in ℝm and ℝn,
respectively. If g : C ! ℝ is a convex function on C and h : D ! ℝm is an affine mapping, i.e.,
h(x) ¼ Ax þ b with range(h) ⊂ C, then the composite function f : D ! ℝ defined as f(x) ¼ g(h(x)) is
convex on D. ♦
Application S1 Weber (1) Locate a central facility (Kelley, 1999, pp. 118–119; Andrei, 2003, p. 58)
[WEBER-1]
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
f ðxÞ ¼ 2 ðx1 2Þ þ ðx2 42Þ þ 4 ðx1 90Þ þ ðx2 11Þ þ 5 ðx1 43Þ2 þ ðx2 88Þ2 :
2 2 2 2
Application S2 Weber (2) Locate a central facility (Kelley, 1999, pp. 118–119) [WEBER-2]
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
f ðxÞ ¼ 2 ðx1 þ 10Þ2 þ ðx2 þ 10Þ2 4 ðx1 Þ2 þ ðx2 Þ2
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
þ2 ðx1 5Þ2 þ ðx2 8Þ2 þ ðx1 25Þ2 þ ðx2 30Þ2 :
Application S3 Weber (3) Locate a central facility (Kelley, 1999, pp. 118–119) [WEBER-3]
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
f ðxÞ ¼ 2 ðx1 þ 10Þ þ ðx2 þ 10Þ 4 ðx1 Þ2 þ ðx2 Þ2
2 2
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
þ2 ðx1 5Þ2 þ ðx2 8Þ2 þ ðx1 25Þ2 þ ðx2 30Þ2
þ sin 0:0035 x21 þ x22 :
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 721
Switzerland AG
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
722 Appendix B: The SMUNO Collection
i yi ui i yi ui
1 0.1957 4.000 7 0.0456 0.125
2 0.1947 2.000 8 0.0342 0.100
3 0.1735 1.000 9 0.0323 0.0833
4 0.1600 0.500 10 0.0235 0.0714
5 0.0844 0.250 11 0.0246 0.0625
6 0.0627 0.167
f ðx Þ ¼ ð 1 x 1 k 1 x 1 x 6 þ r 1 x 4 Þ2
þ ð 1 x 2 k 2 x 2 x 6 þ r 2 x 5 Þ2
þðx3 þ 2k3 x4 x5 Þ2
þð k1 x1 x6 r 1 x4 k3 x4 x5 Þ2
þð 1:5ðk2 x2 x6 r 2 x5 Þ k3 x4 x5 Þ2
þð 1 x4 x5 x6 Þ2
Application S6 Robot kinematics problem (Kearfott & Novoa, 1990, pp. 152–157; Andrei, 2013e,
pp. 101–103; Floudas, Pardalos, Adjiman, Esposito, Gümüs, Harding, Klepeis, Meyer, & Schweiger,
1999, pp. 329–331) [ROBOT]
2
f ðxÞ¼ 4:731
103 x1 x3 0:3578x2 x3 0:1238x1 þ x7 1:637
103 x2 0:9338x4 0:3571
þð0:2238x1 x3 þ 0:7623x2 x3 þ 0:2638x1 x7 0:07745x2 0:6734x4 0:6022Þ2
2
þ x6 x8 þ 0:3578x1 þ 4:731
103 x2
þð0:7623x1 þ 0:2238x2 þ 0:3461Þ2
2
þ x21 þ x22 1
2
þ x23 þ x24 1
2
þ x25 þ x26 1
2 2
þ x7 þ x28 1 :
Initial point: x0 ¼ [0.164, 0.98, 0.94, 0.32, 0.99, 0.05, 0.41, 0.91].
f(x0) ¼ 0.533425E þ 01.
i yi i yi
1 0.5 8 2.5
2 0.8 9 1.6
3 1 10 1.3
4 1.4 11 0.7
5 2 12 0.4
6 2.4 13 0.3
7 2.7
i ai bi
1 0.0 7.391
2 0.000428 11.18
3 0.0010 16.44
4 0.00161 16.20
5 0.00209 22.20
6 0.00348 24.02
7 0.00525 31.32
Application S9 Propan combustion in air – reduced variant (Meintjes & Morgan, 1990, pp. 143–
151; Averick, Carter, Moré, & Xue, 1992, pp. 18–19; Andrei, 2013e, pp. 54–56; Floudas, Pardalos,
Adjiman, Esposito, Gümüs, Harding, Klepeis, Meyer, & Schweiger, 1999, p. 327) [PROPAN]
where:
724 Appendix B: The SMUNO Collection
Initial point: x0 ¼ [10, 10, 0.05, 50.5, 0.05]. f(x0) ¼ 0.331226E þ 08.
Application S10 Gear train of minimum inertia (Sandgren & Ragsdell, 1980; Schittkowski, 1987,
Problem 328, p. 149) [GEAR-1]
f ðxÞ ¼ 0:1 12 þ x21 þ 1 þ x22 =x21 þ x21 x22 þ 100 =x41 x42 :
Application S11 Human heart dipole (Andrei, 2003, p. 65; Averick, Carter, Moré, & Xue, 1992,
p. 17; Andrei, 2013e, pp. 51–54; Nelson & Hodgkin, 1981, pp. 817–823)) [HHD]
where:
Initial point:
x0 ¼ ½ 0:299 0:186 0:0273 0:0254 0:474 0:474 0:0892 0:0892 T :
f ðx0 Þ ¼ 0:190569E þ 00:
Application S12 Neurophysiology (Andrei, 2013e, pp. 57–61; Verschelde, Verlinden, & Cools,
1994, pp. 915–930) [NEURO]
2 2
f ðxÞ ¼ x21 þ x23 1 þ x22 þ x24 1
3 2 2
þ x5 x3 þ x6 x34 1 þ x5 x31 þ x6 x32 2
2 2
þ x5 x1 x23 þ x6 x2 x24 1 þ x5 x3 x21 þ x6 x4 x22 4 :
Application S13 Combustion application (Morgan, 1987; Andrei, 2013e, pp. 61–63) [COMBUST]
2
f ðxÞ ¼ x2 þ 2x6 þ x9 þ 2x10 105
2
þ x3 þ x8 3
105
2
þ x1 þ x3 þ 2x5 þ 2x8 þ x9 þ x10 5
105
2
þ x4 þ 2x7 105
2
þ 0:5140437
107 x5 x21
2
þ 0:1006932
106 x6 2x22
2
þ 0:7816278
1015 x7 x24
2
þ 0:1496236
106 x8 x1 x3
2
þ 0:6194411
107 x9 x1 x2
2
þ 0:2089296
1014 x10 x1 x22 :
Application S14 Circuit design (Ratschek & Rokne, 1993, p. 501; Andrei, 2009e, pp. 243–244],
[CIRCUIT]
X
4
f ðxÞ ¼ ðx1 x3 x2 x4 Þ2 þ a2k þ b2k ,
k¼1
where
ak ¼ ð1 x1 x2 Þx3 exp x5 g1k g3k x7
103 g5k x8
103 1 þ g4k x2 g5k , k ¼ 1, . . . , 4,
bk ¼ ð1 x1 x2 Þx4 exp x6 g1k g2k g3k x7
103 g4k x9
103 1 þ g4k g5k x1 ,
2 3
k ¼ 1, . . . , 4, 0:4850 0:7520 0:8690 0:9820
6 7
6 0:3690 1:2540 0:7030 1:4550 7
6 7
g¼66 5:2095 10:0677 22:9274 20:2153 7 7,
6 7
4 23:3037 101:7790 111:4610 191:2670 5
28:5132 111:8467 134:3884 211:4823
Initial point: x0 ¼ [0.7, 0.5, 0.9, 1.9, 8.1, 8.1, 5.9, 1, 1.9]. f(x0) ¼ 0.296457E þ 04.
X16 2
x2
f ðx Þ ¼ yi x1 exp
i¼1
45 þ 5i þ x3
where
726 Appendix B: The SMUNO Collection
i yi i yi
1 34780 9 8261
2 28610 10 7030
3 23650 11 6005
4 19630 12 5147
5 16370 13 4427
6 13720 14 3820
7 11540 15 3307
8 9744 16 2872
Application S16 Optimal design of a gear train (Sandgren, 1988, pp. 95–105; Andrei, 2013e, p. 79)
[GEAR-2]
2
1 x1 x2
f ðx Þ ¼ :
6:931 x3 x4
X
10
xj
min xj cj þ ln
j¼1
x1 þ ⋯ þ x10
subject to ð1Þ
x1 þ 2x2 þ 2x3 þ x6 þ x10 2 ¼ 0,
x4 þ 2x5 þ x6 þ x7 1 ¼ 0,
x3 þ x7 þ x8 þ 2x9 þ x10 1 ¼ 0:
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 727
Switzerland AG
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
728 Appendix C: The LACOP Collection
Lower Upper
Nr. Initial point Solution
bound bound
1 1745 0.00001 1698.094 2000
2 12000 0.00001 15818.51 16000
3 110 0.00001 54.10228 120
4 3048 0.00001 3031.226 5000
5 1974 0.00001 2000 2000
6 89.2 85 90.11548 93
7 92.8 90 95 95
8 8 3 10.49324 12
9 3.6 1.2 1.561636 4
10 145 145 153.5354 162
f ðx0 Þ ¼ 872:3874 f ðx Þ ¼ 1768:80696
0:67 0:67
min 0:4x0:67
1 x7 þ 0:4x0:67
2 x8 x1 x2 þ 10
subject to ð3Þ
1 0:0588x5 x7 0:1x1 0,
1 0:0588x6 x8 0:1x1 0:1x2 0,
1 4x3 x1 0:71 1
5 2x3 x5 0:0588x1:3
3 x7 0,
1 4x4 x1 0:71 1
6 2x4 x6 0:0588x1:3
4 x8 0,
0:67 0:67
0:4x0:67
1 x7 þ 0:4x0:67
2 x8 x1 x2 þ 10 1,
0:67 0:67
0:4x0:67
1 x7 þ 0:4x0:67
2 x8 x1 x2 þ 10 4:2:
10000x2 0:000223x0:666
7 4 0,
x1:5
10000x2 0:000076x3:55
8 x4
5:66
0,
10000x2 0:000698x1:2
3 x4 0,
2
10000x2 0:00005x1:6
3 x4 0,
3
10000x2 0:00000654x2:42
3 x4
4:17
0,
10000x2 0:000257x0:666
3 4 0,
x1:5
30 2:003x4 x5 1:885x4 x6 0:184x4 x8 2x4 x0:803
3 0,
x9 þ x10 0:255 ¼ 0,
where C ¼ sin (0.25)48.4/50.176 and D ¼ cos (0.25)48.4/50.176. The simple bounds on variables
are xi 0, i ¼ 1, 2 and 0.90909 xi 1, 0909, for i ¼ 5, 6, 7.
The solution is
Application L7. Optimization of a separation process in a membrane with three stages (MSP3)
This application is taken from (Dembo, 1976; Hock & Schittkowski, 1981, pp. 124; Andrei, 1999a,
pp. 802).
732 Appendix C: The LACOP Collection
Application L8. Optimization of a separation process in a membrane with five stages (MSP5)
This application is taken from (Dembo, 1976; Andrei, 2003, pp. 367).
Appendix C: The LACOP Collection 733
Application L9. Blending/pooling with five feeds and two products (POOL) (Andrei, 1999a,
pp. 808; Andrei, 2003, pp. 382)
min ð1:1x1 þ 1:1x2 þ 1:1x3 þ 0:878x4 þ 0:878x5 þ 0:878x6 þ 0:878x7
þ1:6x8 þ 1:6x9 þ 0:5x10 þ 0:5x11 þ 0:98x12 þ 0:998x13 Þ
subject to ð9Þ
90x1 þ 89x2 þ 91x3 ðx1 þ x2 þ x3 Þx14 ¼ 0,
87x4 þ 90:5x5 þ 89:5x6 þ 94x7 ðx4 þ x5 þ x6 þ x7 Þx15 ¼ 0,
89x8 þ 89:1x9 ðx8 þ x9 Þx16 ¼ 0,
89:2x10 þ 89:3x11 þ x14 x29 þ x15 x30 ðx10 þ x11 þ x29 þ x30 Þx17 ¼ 0,
89:4x12 þ 89:5x13 þ x15 x31 þ x16 x32 ðx12 þ x13 þ x31 þ x32 Þx18 ¼ 0,
86x1 þ 85:5x2 þ 86:5x3 ðx1 þ x2 þ x3 Þx19 ¼ 0,
83:2x4 þ 86:9x5 þ 85x6 þ 89:8x7 ðx4 þ x5 þ x6 þ x7 Þx20 ¼ 0,
85:1x8 þ 85:3x9 ðx8 þ x9 Þx21 ¼ 0,
85:4x10 þ 85:2x11 þ x19 x29 þ x20 x30 ðx10 þ x11 þ x29 þ x30 Þx22 ¼ 0,
85:5x12 þ 85:6x13 þ x20 x31 þ x21 x32 ðx12 þ x13 þ x31 þ x32 Þx23 ¼ 0,
0:78x1 þ 0:8x2 þ 0:81x3 ðx1 þ x2 þ x3 Þx24 ¼ 0,
0:77x4 þ 0:775x5 þ 0:78x6 þ 0:82x7 ðx4 þ x5 þ x6 þ x7 Þx25 ¼ 0,
0:785x8 þ 0:79x9 ðx8 þ x9 Þx26 ¼ 0,
0:787x10 þ 0:776x11 þ x24 x29 þ x25 x30 ðx10 þ x11 þ x29 þ x30 Þx27 ¼ 0,
0:783x12 þ 0:779x13 þ x25 x31 þ x26 x32 ðx12 þ x13 þ x31 þ x32 Þx28 ¼ 0,
x1 þ x2 þ x3 x29 ¼ 0,
x4 þ x5 þ x6 þ x7 x30 x31 ¼ 0,
x8 þ x9 x32 ¼ 0,
x10 þ x11 þ x29 þ x30 x33 ¼ 0,
x12 þ x13 þ x31 þ x32 x34 ¼ 0:
Appendix C: The LACOP Collection 735
If (xi, yi, zi) are the positions of the np points (electrons), then the potential energy is
p 1
nX np
X 2 1
2 2 2
xi xj þ y i y j þ zi zj , ð10aÞ
i¼1 j¼iþ1
The problem has a multitude of local minimizers at which the objective value is relatively close to
the objective value at the global minimum. Also, the number of the local minimizers grows
exponentially with np. Therefore, determining the global minimum is a difficult task, and solvers
are usually expected to find only a local minimum.
For np ¼ 50 the value of the potential energy is 1055.1823147.
ð1 1=2
xðtÞ 1 þ x0 ðtÞ2 dt,
0
ð1 1=2
1 þ x0 ðtÞ2 dt ¼ L,
0
as well as the end conditions x(0) ¼ a and x(1) ¼ b, where a and b are given constants.
Another formulation of this problem is possible by introducing a control variable uðtÞ ¼ x01 ðtÞ and
the potential energy function
ðt 1=2
x2 ðtÞ ¼ x1 ðsÞ 1 þ uðsÞ2 ds:
0
This formulation leads to minimizing the total potential energy x2(1) subject to the differential
equations
x01 ðtÞ ¼ u,
1=2
x02 ðtÞ ¼ x1 ðtÞ 1 þ uðtÞ2 ,
1=2
x03 ðtÞ ¼ 1 þ uðtÞ2 :
By introducing n discretization points by means of a uniform time step of length h ¼ 1/(n þ 1),
then the discrete variant of the problem is
Appendix C: The LACOP Collection 737
nþ1
X rffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
xi þ xi1 x xi1 2
min h 1þ i ð11aÞ
i¼1
2 h
subject to
rffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
X
nþ1
x xi1 2 L ð11bÞ
1þ i ¼ ,
i¼1
h h
Application L12. Determine the optimal mixing policy of two catalysts along the length of a
tubular plug flow reactor involving several reactions (CAT)
This application is described in (von Stryk, 1999) and (Dolan, Moré, & Munson, 2004, pp. 33) and
has the following form:
The initial conditions are x1(0) ¼ 1 and x2(t) ¼ 0. The control variable u(t) represents the mixing
ratio of the catalysts and satisfies the bounds
0 uðtÞ 1: ð13Þ
A uniform partition of the interval [0, 1] with nh subintervals is considered and the equations
discretized in a natural way. As initial points we take u ¼ 0, x1 ¼ 1, and x2 ¼ 0, evaluated in the grid
points.
738 Appendix C: The LACOP Collection
Figure L2 presents the time evolution of the control variable u(t) given by CONOPT and MINOS,
respectively. We see the bang-bang character of this evolution, which is imposed by the presence of
bounds on the control variable.
Figure L3 presents the evolution of the variables x1(t) and x2(t) given by CONOPT.
The initial conditions are x1(0) ¼ 0.05 and x2(0) ¼ 0. The performance measure to be minimized is
ð
0:78
J¼ x21 ðtÞ þ x22 ðtÞ þ Ru2 ðtÞ dt, ð16Þ
0
showing that the desired objective is to maintain the temperature and the concentration close to their
steady-state values, without expending large amounts of control effort. Here R is a weighting factor
that we arbitrarily shall select as 0.2.
The above optimal control problem can be represented as a nonlinear programming problem, thus
avoiding the backward in time solution of the Riccati equation. To solve the problem, we approximate
the state differential equations by differences, while the integral term in the performance measure, by
summation.
Taking a discretization of the time interval [0, tf] in 100 subintervals, Figs. L4 and L5 show the
time evolution of the state variables and of the control, respectively.
If for t 2 [0, 0.78] the control variable is bounded as 0.2 u(t) 1.2, then the time evolution of the
variables and of the control is as in Figs. L6 and L7, respectively.
Fig. L4 Evolution of
x1(t) and x2(t)
Fig. L6 Evolution of
x1(t) and x2(t)
∂ðcρT Þ
¼ ∇:ðV∇ðcρT ÞÞ þ I, ð17Þ
∂t
where c is the specific heat capacity of the substance (cal/kg degree), ρ is the density of the substance
(kg/m3), T is the temperature of the substance (degree), V is the thermal conductivity, I is the point
source of heat (cal/m3s), and t is the time in seconds. On the boundary of the considered area, the
temperature is fixed as
Appendix C: The LACOP Collection 741
In the steady-state case, no characteristics of the problem change in time. Therefore, the transpor-
tation equation becomes
∇:ðV∇ðcρT ÞÞ þ I ¼ 0: ð18Þ
Now, if c and ρ do not vary spatially, the above equation can be written as follows:
I
∇:ðV∇T Þ þ ¼ 0: ð19Þ
cρ
To solve this equation, the differential operators must be approximated by algebraic analogues,
and a conservative scheme of solving the resulting system of algebraic equations must be used. For
this, the rectangular area is subdivided into a number of small rectangles with sides parallel to the
x and y axes. Thus, a number of intersection points known as nodes are obtained. Using this system of
nodes, the algebraic analogues for the differential operators ∇. () and ∇() can be constructed.
If a and B are differential functions, then
∇:ða∇BÞ ¼ a∇:ð∇BÞ þ ∇a:∇B:
Using this formula, we get the following equation for the heat transportation:
I
V∇:ð∇T Þ þ ∇T:∇V þ ¼ 0: ð20Þ
cρ
Using the finite difference in two dimensions, this equation can be discretized as
T iþ1,j 2T i,j þ T i1,j T i,jþ1 2T i,j þ T i,j1
V i,j þ V i,j
ðΔxÞ2 ðΔyÞ2
V iþ1,j V i1,j T iþ1,j T i1,j V i,jþ1 V i,j1 T i,jþ1 T i,j1 I
þ þ þ ¼ 0,
2ðΔxÞ 2ðΔxÞ 2ðΔyÞ 2ðΔyÞ cρ
for i ¼ 1,. . ., nx and j ¼ 1,. . ., ny where nx and ny are the numbers of the discretization points along the
sides of the area, respectively.
Consider the case in which the temperature is zero on the boundary of the area, except for the cells
(I1, J10), (I1, J11), (I10, J1), and (I11, J1), where the temperature is about 100 C. If nx ¼ 20 and
ny ¼ 20, then Fig. L8 presents the solution to the heat transportation problem with two fixed boundary
conditions (Andrei, 2013e).
Let us now consider the situation in which an additional source of heat is placed in the center of the
cell (I5, J5) of value 10,000 (cal/m3s). The distribution of the temperature and the constant level
curves are as in Fig. L9.
Observe that the symmetry of the problem and the boundary conditions determine the symmetry of
the solution.
In the following, let us consider another situation in which, in the center of the cell (I17, J17), an
additional source of value 15,000 is introduced. Figure L10 shows the temperature distribution in the
rectangular area.
In the following, we consider a time-dependent temperature field in a rectangular area with
heterogeneous thermal conductivity and a point source of heat and heat flows through the border of
the solution domain. Let a point source of heat begin to heat the area in the point (I10, J18) of value
10,000 (cal/m3s). The heat from this source is distributed over the solution domain according to the
742 Appendix C: The LACOP Collection
20
18
100 16
80 14
60 12
40 10
20 8
0 6
20
15 20 4
10 15
10 2
5 5
0 2 4 6 8 10 12 14 16 18 20
0
Fig. L8 Solution to the heat transportation problem with two fixed boundary conditions
20
18
120 16
100 14
80
12
60
10
40
8
20
6
0
20 4
15 20
10 15
10 2
5 5 2 4 6 8 10 12 14 16 18 20
0 0
Fig. L9 Solution to the heat transportation problem with two fixed boundary conditions and one heat source on the cell
(I5, J5)
20
18
200 16
150 14
12
100
10
50
8
0 6
20
15 20 4
10 15
10 2
5 5
0 0 2 4 6 8 10 12 14 16 18 20
Fig. L10 Solution to the heat transportation problem with two fixed boundary conditions and two heat sources
Appendix C: The LACOP Collection 743
heat transportation equation (19). The solution of the time-dependent temperature field consists in
calculating the changes in the temperature field inside the solution domain at one time step on the
basis of the previous temperature field. After the current period temperature field has been computed
from the previous time period, it is saved in order to be used in the next time step.
Figure L11 presents the solution of the transient heat transportation problem at a number of some
periods: t1, t5, t10, t15, t20, and t25. A stationary solution to the transient equation is found by using a
Fig. L11 Solution of the transient heat transportation problem at 6 time periods
744 Appendix C: The LACOP Collection
large number of iterations under stationary boundary conditions. After a number of iterations, the
influence of the initial conditions becomes very small and ∂T/∂t ! 0. In Fig. L11 observe that the
field temperature converges to a stationary solution after about 15–20 iterations.
∂V x ∂V x ∂V y 1 ∂P
þ Vx þ Vy ¼ þ μ∇2 V x , ð21Þ
∂t ∂x ∂y ρ ∂x
∂V y ∂V y ∂V y 1 ∂P
þ Vy þ Vy ¼ þ μ∇2 V y : ð22Þ
∂t ∂x ∂y ρ ∂y
The equation of the mass conservation (continuity equation) for the fluid is
∂V x ∂V y
þ ¼ 0, ð23Þ
∂x ∂y
where Vx is the x component of velocity [m/s], Vy is the y component of velocity [m/s], P is the
pressure [pa], μ is the kinematic viscosity [m2/s], and ρ is the density of the fluid [Kg/m3].
Observe that these equations are valid in the case when the viscosity is constant and the fluid
weight acts perpendicularly to the x y plane. Therefore, the gravitational force is not present in
these equations.
With these preparatives, let us consider a stationary flow of an incompressible fluid in a rectangu-
lar area with given inflow of fluid on the borders of the solution domain (McKinney & Savitsky,
2003). In this application, the zones of inflow and outflow of water are on two opposite sides. On the
zone of inflow, the boundary conditions are Vx ¼ 0.5 [m/s] and Vy ¼ 0 [m/s]. On the zone of outflow,
the boundary conditions are ∂V ∂x
x
¼ 0 and Vy ¼ 0. On the other sides of the rectangle, the so-called
“non-slip” conditions are taken as Vx ¼ 0 [m/s] and Vy ¼ 0 [m/s].
To compute the flow of water, a finite difference analog of the differential equations will be
considered. The solution domain is divided into small rectangles by means of a grid of parallel lines
and to each intersection point the indices (i, j) are associated. At each point, the fluid velocity and the
pressure are computed. The fluid velocity is not computed in points, but on the lines connecting the
points. On the lines parallel to the x axis, Vx is computed. On the other hand, on the lines parallel to the
y axis, we compute Vy. Therefore, the continuity equation has the following finite difference form:
V x,i,j V x,i1,j V y,i,j V y,i,j1
þ ¼ 0: ð24Þ
Δx Δy
The pressure is computed at the node points (i, j) of each line, where the pressure gradient is
computed from the velocity:
Appendix C: The LACOP Collection 745
∂P Piþ1,j Pi,j
¼ , ð25Þ
∂x i,j Δx
∂P Pi,jþ1 Pi,j
¼ : ð26Þ
∂y i,j Δy
Since there are errors introduced by the algebraic approximations, it is not always possible to
approximate the differentials by finite differences. Analyzing the system of Eqs. (21) and (22), we see
that these equations contain the velocity components connected by the pressure gradient ∇P. If P is
not connected with boundary conditions, then all the approximation errors will leave the solution
domain through the borders. In the Eq. (23) the velocity vector is in strong contact with the boundary
conditions. Therefore, in the calculations of the continuity equation, we expect big errors to appear at
each point. To overcome this difficulty, the continuity equation is written in a slightly different
(relaxed) form as
∂V x ∂V y
þ ¼ δ, ð29Þ
∂x ∂y
where δ is the error in the approximation of the differentials, which must be minimized. The final
system of equations which have to be solved has the following form:
1 ∂P
þ μ∇2 V x ¼ 0, ð30Þ
ρ ∂x
1 ∂P
þ μ∇2 V y ¼ 0, ð31Þ
ρ ∂y
∂V x ∂V y
þ ¼ δ: ð32Þ
∂x ∂y
In the following, consider a discretization of the rectangular area in which the x axis is discretized
in 15 intervals and the y axis in 20, where Δx ¼ Δy ¼ 1, Fig. L12 (McKinney, & Savitsky, 2003).
746 Appendix C: The LACOP Collection
0.6
0.4.
0.2
0
15
10 20
15
5 10
5
0 0
Let the fluid density be equal to 1000 [Kg/m3]. The kinematic viscosity of the fluid is 0.005 [m2/s].
The flow of the fluid is parallel to the x axis. Now, consider that in the interval [u5, u15] on the y axis,
the following boundary conditions are active: Vx ¼ 0.5 [m/s] and Vy ¼ 0 [m/s]. On the opposite side,
the boundary conditions are ∂V ∂x
x
¼ 0 and Vy ¼ 0. On the rest of the intervals of discretization, the
boundary conditions are Vx ¼ 0 [m/s] and Vy ¼ 0 [m/s].
The error in the approximation through finite differences is zero. Besides, notice that the optimal
value of the objective function is also zero. Figure L13 presents the velocity evolution in the
direction x.
Figure L14 shows three cross-sections of velocity Vx in the direction x.
Appendix C: The LACOP Collection 747
In the following, we compute the stationary flow of water in a rectangular area in the presence of
an obstacle (Fig. L15). As above, let us consider a rectangular area. On the top edge of the area an
inflow of water with velocity of 0.5 m/s occurs.
The same flow leaves the area through the bottom edge of the domain. The boundary conditions
are the same as in the previous application, but in the middle of the domain there is a symmetrically
748 Appendix C: The LACOP Collection
0.5
−0.5
20
15
20
10 15
5 10
5
0 0
located obstacle around which the fluid is compelled to flow as represented in Fig. L15 (McKinney &
Savitsky, 2003). Figure L16 presents the evolution of the velocity Vx in the direction x.
Figure L17 shows three cross-sections of velocity Vx in the direction x.
Observe the asymmetry of the approximations. This happens because the velocities are not
determined at the cell centers, but on the cell faces.
If the inertial terms of the equations are considered, then they can be computed by using the
“marker and cell” method, as described in (Peyret & Taylor, 1985)
∂V x ∂V x V x,iþ1,j V x,i,j
Vx þ Vy ffi V x,i,j þ
∂x ∂y 2Δx
V y,iþ1,j þ V y,i,j þ V y,i,j1 þ V y,iþ1,j1 V x,i,jþ1 V x,i,j1
,
4 2Δy
∂V y ∂V y V y,i,jþ1 V y,i,j1
Vx þ Vy ffi V y,i,j þ
∂x ∂y 2Δy
V x,i,j þ V x,i,jþ1 þ V x,i1,jþ1 þ V x,i1,j V y,iþ1,j V y,i1,j
:
4 2Δx
Figure L18 presents three cross-sections of velocity in the direction x, with inertial terms.
It is worth seeing the solution of the flow in a rectangular area with two obstacles (u10, u5) and
(u10, u10). Figure L19 shows the velocity in the direction x.
Figure L20 shows three cross-sections of velocity Vx in the direction x.
Appendix C: The LACOP Collection 749
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10 12 14 16 18 20
0.6
0.4
0.2
20
10
15 20
5 10
0
Larrosa, 2008). The problem consists in maximizing the total amount of penicillin produced by using
the feed rate of substrate as control variable. The mathematical model of this application is as follows:
max y2 tf y4 tf
subject to ð33Þ
dy1 uy1
¼ h1 y 1 ,
dt 500y4
dy2 uy2
¼ h2 y1 0:01y2 ,
dt 500y4
dy3 hy h y 0:029y1 y3 y
u
¼ 1 1 2 1 þ 1 3 ,
dt 0:47 1:2 0:0001 þ y3 y4 500
dy4 u
¼ ,
dt 500
where
0:11y3 0:0055y3
h1 ¼ , h2 ¼ :
0:006y1 þ y3 0:0001 þ y3 ð1 þ 10y3 Þ
In this model, y1 represents the concentration of the biomass, y2 is the penicillin concentration, y3
is the concentration of the substrate, and y4 is the fermenter volume (in L). The initial conditions are
y1(0) ¼ 1.5, y2(0) ¼ 0.1, y3(0) ¼ 0.1 and y4(0) ¼ 7. The final product is destined to human
consumption. Therefore, the concentrations of the present species are subject to the following path
constraints:
The control variable is bounded as 0 u 50 and the total process time is fixed as tf ¼ 100 h.
For solving this application and for showing some other optimal control examples, let us discuss
some aspects of the numerical solutions of the ordinary differential equations
One of the simplest methods for solving (34) is Euler’s method. For this, the interval [t0, tf] is
divided by the mesh-points tk ¼ t0 þ kh, k ¼ 0, . . ., N, where h ¼ (tf t0)/N is the step size and N is a
positive integer. Now, consider that for each k we seek a numerical approximation yk to y(tk), the
value of the analytical solution at the mesh point tk. Euler’s method proceeds by integrating the
differential equation (34) between two consecutive points tk and tkþ1:
ð
tkþ1
This idea can be very easily generalized by replacing the rectangle rule in the derivation of Euler’s
method with one-parameter family of the integration rule of the form
ð
tkþ1
where θ 2 [0, 1] is a parameter. Now, applying it in (35) with g(t) ¼ f(t, y(t)) we get
yðtkþ1 Þ yðtk Þ þ h½ð1 θÞf ðtk , yðtk ÞÞ þ θf ðtkþ1 , yðtkþ1 ÞÞ, k ¼ 0, . . . , N 1, yðt0 Þ ¼ y0 :
Therefore, this motivates the introduction of the following one-parameter family of methods:
given that y0 is specified by (34), define
ykþ1 ¼ yk þ h ð1 θÞf ðtk , yk Þ þ θf tkþ1 , ykþ1 , k ¼ 0, . . . , N 1, ð38Þ
known as the θmethod. Observe that for θ ¼ 0 we recover Euler’s method. Now, for θ ¼ 1 and y0
given by (34), we get
ykþ1 ¼ yk þ hf tkþ1 , ykþ1 , k ¼ 0, . . . , N 1, ð39Þ
known as the implicit or the backward Euler method, since, unlike Euler’s method defined by (37)
and (39) requires the solution of an implicit equation in order to determine ykþ1, given yk. In this
context, (37) is called the explicit or the forward Euler method. For θ ¼ 1/2 in (38), we get another
interesting computational scheme: given that y0 is specified by (34), ykþ1are computed as
1
ykþ1 ¼ yk þ h f ðtk , yk Þ þ f tkþ1 , ykþ1 , k ¼ 0, . . . , N 1, ð40Þ
2
known as the trapezoidal rule method. Like the backward Euler method, the trapezoidal rule is
implicit: in order to compute ykþ1, a nonlinear system of algebraic equations must be solved.
Each of these methods is consistent with the ordinary differential equation (34). That is, if we plug
solutions to the exact equation into the numerical method, we get a small local error. For example, the
forward Euler has consistency of order 1, and the trapezoidal rule has second-order consistency.
While the trapezoidal rule method leads to more accurate approximations, the forward Euler
method is less convenient from the computational viewpoint since it requires the solution of the
implicit equations at each mesh point xkþ1 to get ykþ1. To overcome this difficulty, an attractive
computational scheme lies in using the forward Euler method to compute an initial crude approxi-
mation for y(tkþ1) and then to use this value within the trapezoidal rule for obtaining a more accurate
approximation of y(tkþ1). The resulting numerical method is
1
ykþ1 ¼ yk þ h½f ðtk , yk Þ þ f ðtkþ1 , yk þ hf ðtk , yk ÞÞ, k ¼ 0, . . . , N 1, ð41Þ
2
known as the improved Euler method. This is an explicit one-step computational scheme.
Using the trapezoidal rule (40), Fig. L21 presents the evolution of the control u(t). Observe the
bang-bang character of this evolution.
752 Appendix C: The LACOP Collection
20
15
10
0
0 20 40 60 80 100 120
Figure L22 presents the evolution of the state variables y1(t) (biomass) and y2(t) (penicillin).
Figure L23 presents the time evolution of the state variables y3(t) (substrate concentration) and
y4(t) (volume).
Appendix C: The LACOP Collection 753
12
40
10
39.5
y1(t) 8 y2(t)
biomass penicillin
6
39 4
1.5 10
9.5 y4(t)
y3(t) fermenter volume
1
substrate concentration 9
8.5
0.5 8
7.5
Backward Euler method Backward Euler method
7
0 0 20 40 60 80 100 120
0 20 40 60 80 100 120
15
10
u(t)
It is interesting to see the solution of this application when the backward Euler method is used.
Figure L24 presents the time evolution of the variables associated to this application.
The trapezoidal rule method is more accurate, better spotting the characteristics of the optimal
control u(t) as well as of the state variables yi(t), i ¼ 1, . . ., 4.
754 Appendix C: The LACOP Collection
X
4
min x2i ðtÞ
i¼1
subject to ð42Þ
dx1 dx2
¼ 0:5x1 þ 5x2 , ¼ 5x1 0:5x2 þ u,
dt dt
dx3 dx4
¼ 0:6x3 þ 10x4 , ¼ 10x3 0:6x4 þ u,
dt dt
1 uðtÞ 1,
with the initial conditions: x(t0) ¼ [10 10 10 10] and the final time tf ¼ 4.2 (Nishida, Liu,
Lapidus, & Hiratsuka, 1976; Irizarry, 2005).
Figures L25 and L26 present the time evolution of the state variables and the control of this
application, respectively.
15 10
x2(t)
x1(t)
10 5
5 0
0 −5
−5 −10
−10 −15
0 100 200 300 400 500 600 0 100 200 300 400 500 600
15 15
x4(t)
10 x3(t) 10
5 5
0 0
−5 −5
−10 −10
−15 −15
0 100 200 300 400 500 600 0 100 200 300 400 500 600
0.6
0.4
0.2
0 u(t)
−0.2
−0.4
−0.6
−0.8
−1
0 100 200 300 400 500 600
with the initial conditions y(0) ¼ [0, 1, 0] and the final time tf ¼ 5.
Figures L27, L28, and L29 show the evolution of the state variables and of the control for this
application.
756 Appendix C: The LACOP Collection
More optimization applications are found in (Andrei, 2003, 2011c, 2013e). Observe that the
applications described in this chapter are classified in two classes. The first one is the static nonlinear
optimization, and the second one is the dynamic nonlinear optimization, often called optimal control.
The strategy for solving optimal control problems is to “kill” the dynamics, i.e., to transform the
dynamic nonlinear optimization problem into a static one. In this way, we get a large-scale optimiza-
tion problem for which the Jacobian of the constraints has a block diagonal or a block triangular
structure. Some optimizers (e.g., CONOPT) can take into consideration this structure to solve the
problem in an efficient and robust manner.
This Appendix includes a number of six applications from the MINPACK-2 collection (Averick,
Carter, & Moré, 1991; Averick, Carter, Moré, & Xue, 1992). The mathematical models of these
applications are expressed as unconstrained optimization problems.
min fqðvÞ : v 2 K g,
for some constant c, and D is a bounded domain with smooth boundary. The convex set K is defined as
K ¼ v 2 H 10 ðDÞ : jvðxÞj distðx, ∂DÞ, x 2 D ,
where dist(., ∂D) is the distance function to the boundary of D and H 10 ðDÞ is the Hilbert space of all
the functions with compact support in D, such that v and k∇vk2 belong to L2(D).
A finite element approximation to the torsion problem is obtained by triangulating D and then by
replacing the minimization of q over H 10 ðDÞ with the minimization of q over the set of piecewise
linear functions that satisfy the constraints specified by K. The finite element approximation thus
gives rise to a finite-dimensional minimization problem whose variables are the values of the
piecewise linear function at the vertices of the triangulation.
In (Averick, Carter, Moré, & Xue, 1992) a finite element approximation to a minimization
problem with a quadratic q of the general form
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 757
Switzerland AG
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
758 Appendix D: The MINPACK-2 Collection
ð ð
1
qðvÞ ¼ wq ðxÞk∇vðxÞk2 dx wl ðxÞvðxÞdx ð1Þ
2
D D
is described, where wq : D ! ℝ and wl : D ! ℝ are functions defined on the rectangle D. In the torsion
problem, wq ¼ 1 and wl ¼ c.
Let D ¼ (ξ1, l, ξ1, u) (ξ2, l, ξ2, u) be a rectangle in ℝ2. The vertices zi, j 2 ℝ2 for a triangulation of
D are obtained by choosing the grid spacing hx and hy and by defining the grid points
zi,j ¼ ξ1,l þ ihx , ξ2,l þ jhy , 0 i nx þ 1, 0 j ny þ 1,
such that znx þ1,ny þ1 ¼ ξ1,u , ξ2,u : The triangulation consists of the triangular elements TL with the
vertices at zi, j, zi þ 1, j, and zi, jþ1 and the triangular elements TU with the vertices zi, j, zi 1, j, and
zi, j 1.
A finite element approximation to the torsion problem is obtained by minimizing q over the space
of piecewise linear functions v with the values vi, jat zi, j. The approximation to the integral
ð
wq ðxÞk∇vðxÞk2 dx
D
hx hy
λi,j ¼ wq zi,j þ wq zi1,j þ wq zi,j1 :
6
Therefore, the finite element approximation to the quadratic (1) leads to a quadratic programming
problem of the following form:
min fqðvÞ : v 2 Ωg, ð2Þ
Observe that in this formulation, the quadratic qLi,j is defined only when 0 i nx and 0 j ny,
i,j is defined when 1 i nx þ 1 and 1 j ny þ 1. Besides, note that for the torsion problem,
while qU
wq ¼ 1 and wl ¼ c, and the feasible set Ω, is Ω ¼ v 2 Rnx ny : vi,j d i,j , where di, j is the value of
dist(., ∂D) at the vertices zi, j.
Appendix D: The MINPACK-2 Collection 759
Fig. A1 Solution of
Application A1. nx ¼ 200,
ny ¼ 200 0.4
0.3
0.2
0.1
0
200
150 200
100 150
100
50 50
0 0
Considering D ¼ (0, 1) (0, 1), c ¼ 5 and nx ¼ 200, ny ¼ 200, then a minimization problem with
40,000 variables is obtained. The solution of this application without simple bounds is illustrated in
Fig. A1.
with
for some constant ε 2 (0, 1) and D ¼ (0, 2π) (0, 2b), where b > 0 is again an arbitrary constant. The
convex set K is defined as
K ¼ v 2 H 10 ðDÞ : v 2 D, v 0 :
A finite element approximation to the journal bearing problem is obtained as in the torsion
problem. Thus, a quadratic programming problem of the form (2) where q is the quadratic defined
by (3) is obtained. In the case of the journal bearing problem, wq(ξ1, ξ2) ¼ (1 þ ε cos ξ1)3 and
wl(ξ1, ξ2) ¼ ε sin ξ1.The feasible set Ω is given by Ω ¼ v 2 ℝnx ny : vi,j 0 : Considering b ¼ 10
and ε ¼ 0.1, as well as a discretization nx ny of the domain D ¼ (0, 2π) (0, 2b), where nx ¼ 200
and ny ¼ 200, then the solution of this application without simple bounds is represented in Fig. A2.
Numerical results for this problem are given, for example, by Lin and Cryer (1985), Cimatti and
Menchi (1978), and Moré and Toraldo (1991).
Fig. A2 Solution of
Application A2. nx ¼ 200,
ny ¼ 200 0.2
0.1
−0.1
−0.2
200
150 200
100 150
100
50 50
0 0
Let D ⊂ ℝ2 be a bounded domain and let w < |D|, where |D| is the area of D. The solution of the
optimal design problem is a subset Ω of D that solves the problem
min Fðv, ΩÞ : v 2 H 10 ðDÞ, jΩj ¼ w , ð5Þ
where
ðn o
1
Fðv, ΩÞ ¼ μðxÞk∇vðxÞk2 þ vðxÞ dx,
2
D
and μ(x) ¼ μ1 for x 2 Ω, and μ(x) ¼ μ2 for x 2 = Ω. The reciprocals of the constants μ1 and μ2 are the
shear moduli of the elastic materials in the rod. It is assumed that μ1 < μ2.
Goodman, Kohn, and Reyna (1986) formulate the optimal design problem in terms of a family of
problems of the form
min f λ ðvÞ : v 2 H10 ðDÞ ,
1=2 1=2
μ μ
t1 ¼ 2λ 1 and t2 ¼ 2λ 2 :
μ2 μ1
The definition of these breakpoints implies that μ1t2 ¼ μ2t1 and thus ψ is continuously differentia-
ble. The solution of the optimum design problem considered by Averick, Carter, Moré, and Xue
(1992) is minimizing fλ for a fixed value of λ, where μ1 ¼ 1 and μ2 ¼ 2, such that t21 ¼ λ and t22 ¼ 2λ:
A finite element approximation to this problem is obtained by minimizing fλ over the space of the
piecewise linear functions v with the values vij at zij, where zij 2 ℝ2 are the vertices of a triangulation
of D with the grid spacings hx and hy. The values vij are obtained by solving the minimization problem
nX o
min f Li,j ðvÞ þ f U
i,j ð v Þ þ h h v
x y i,j : v 2 ℝ n
,
hx hy þ U hx hy
f Li,j ðvÞ ¼ ψ λ di,j ðvÞ , f i,j ðvÞ ¼ ψ d ðvÞ ,
2 2 λ i,j
with
( 2 2 )1=2
vi
1,j vi,j vi,j
1 vi,j
d
i,j ðvÞ ¼ þ :
hx hy
Observe that in this formulation f Li,j is defined only for 0 i nx and 0 j ny, while f U
i,j is defined
for 1 i nx þ 1 and 1 j ny þ 1.
Figure A3 presents the solution of this application for μ1 ¼ 1 and μ2 ¼ 2, with nx ¼ 200 and
ny ¼ 200.
Fig. A3 Solution of
Application A3. nx ¼ 200,
ny ¼ 200 0
−0.01
−0.02
−0.03
−0.04
−0.05
−0.06
200
150 200
100 150
100
50 50
0 0
762 Appendix D: The MINPACK-2 Collection
ðn o
1
f λ ðvÞ ¼ k∇vðxÞk2 λ exp ½vðxÞ dx,
2
D
and λ 0 is a known parameter. This problem is the variational formulation of the boundary value
problem
ΔvðxÞ ¼ λ exp ½vðxÞ, x 2 D,
vðxÞ ¼ 0, x 2 ∂D,
where Δ is the Laplacian operator. Aris (1975) and Bebernes and Eberly (1989) discuss this
application in the context of combustion problems.
An interesting property of the variational Bratu problem is that fλ is unbounded below for any λ > 0.
This can be seen by observing that if v is any positive constant function, then fλ(αv) ! 1 as
α ! 1 . Another interesting property of the variational Bratu problem is that if λFK > 0 is the Frank-
Kamenetskii parameter, then fλ has a unique minimizer for λ 2 [0, λFK], but no minimizers for λ > λFK.
If D is the unit square, then λFK 6.81, known as the Frank-Kamenetskii parameter.
A finite element approximation to this problem is obtained by minimizing f over the space of the
piecewise linear functions v with the values vij at zij, where zij 2 ℝ2 are the vertices of a triangulation
of D with the grid spacings hx and hy. The values of vij are computed by solving the following
minimization problem:
nX o
min f Li,j ðvÞ þ f U
i,j ðvÞ : v 2 ℝ
n
,
where
( )
hx hy viþ1,j vi,j 2 vi,jþ1 vi,j 2
f Li,j ðvÞ
¼ þ λμi,j ,
L
4 hx hy
2
μLi,j ¼ exp vi,j þ exp viþ1,j þ exp vi,jþ1 ,
3
and
( )
hx hy vi1,j vi,j 2 vi,j1 vi,j 2
i,j ðvÞ
fU ¼ þ λμi,j ,
U
4 hx hy
2
i,j ¼ 3 exp vi,j þ exp vi1,j þ exp vi,j1
μU :
Fig. A4 Solution of
Application A4. nx ¼ 200,
ny ¼ 200 0.8
0.6
0.4
0.2
0
200
150 200
100 150
100
50 50
0 0
ð 1=2
f ðv Þ ¼ 1 þ k∇vðxÞk2 dx,
D
for some boundary data function vD : ∂D ! ℝ. The boundary function vD uniquely defines the
solution to the minimal surface problem. An interesting minimal surface, given by Enneper, is
obtained by defining vD on D ¼ (1/2, 1/2) (1/2, 1/2) by
vD ðξ1 , ξ2 Þ ¼ u2 v2 ,
( 2 2 )1=2
hx hy viþ1,j vi,j vi,jþ1 vi,j
f Li,j ðvÞ ¼ 1þ þ ,
2 hx hy
( 2 2 )1=2
hx hy vi1,j vi,j vi,j1 vi,j
i,j ðvÞ
fU ¼
2
1þ
hx
þ
hy
:
Note that in this formulation f Li,j is defined only when 0 i nx and 0 j ny, while f U
i,j is defined
when 1 i nx þ 1 and 1 j ny þ 1. Figure A5 shows the solution of this application, where
nx ¼ 200 and ny ¼ 200.
764 Appendix D: The MINPACK-2 Collection
Fig. A5 Solution of
0.4
Application A5. nx ¼ 200,
ny ¼ 200 0.3
0.2
0.1
−0.1
−0.2
−0.3
−0.4
200
100 150 200
0 0 50 100
Numerical results for this problem are given by Nitsche (1989), Averick, Carter, Moré, and Xue
(1992), Andrei (2009e).
where 2d is the width of the material and f is the Gibbs free energy function. In this problem,
ðd
1 1 ħ2 0 2
f ðv Þ ¼ αðξÞjvðξÞj2 þ βðξÞjvðξÞj4 þ jv ðξÞj dξ,
2d 2 4m
d
the functions α and β are piecewise constants for a fixed value of the temperature, ħ is Planck’s
constant (1.05459e27 erg-s), and m is the mass of the electron (9.11e28 grams).
The functions α and β are constant in the intervals that correspond to lead and tin. Since in this
problem the lead in the material corresponds to the interval [dS, dS] and the tin in the remaining part
of the interval [d, d], the functions α and β are defined by
8 8
< αN , d ξ dS ,
> < βN , d ξ dS ,
>
αðξÞ ¼ αS , d S < ξ d S , β ðξÞ ¼ βS , dS < ξ dS ,
>
: >
:
αN , dS < ξ d, βN , dS < ξ d:
76.95
76.9
76.85
76.8
0 100 200 300 400 500 600 700 800 900 1000
( )
1 X
n
min f ðvÞ : v 2 ℝn ,
2d i¼1 i
where
( 2 )
αi v3iþ1 v3i βi v5iþ1 v5i ħ2 viþ1 vi
f i ð v Þ ¼ hi þ þ ,
3 viþ1 vi 10 viþ1 vi 4m hi
with hi ¼ tiþ1 ti the length of the i-th interval and the constants αi and βi as the values of the
functions α and β in the interval [ti, tiþ1]. The constraint that v(d ) ¼ v(d ) is taken into account by
requiring that vnþ1 ¼ v1.
Considering d ¼ 3.2Å and the temperature T ¼ 5, for n ¼ 1000 the solution of this application is
presented in Fig. A6.
Abadie, J.: Un nouvel algorithme pour la programmation non lineaire. RAIRO/Rech. Oper. 12(2), 233–238 (1978)
Abadie, J.: Une modification de la methode GRG. RAIRO/Rech. Oper. 13(3), 323–326 (1979)
Abadie, J., Carpentier, J.: Generalization of the Wolfe reduced gradient method to the case of nonlinear constraints. In:
Fletcher, R. (ed.) Optimization, pp. 37–47. Academic Press, London (1969)
Abadie, J., Guerrero, G.: Methode du GRG, Methode de Newton globale et application a la programmation
mathematique. RAIRO/Rech. Oper. 18(4), 319–351 (1984)
Abadie, J., Guigou, J.: Numerical experiments with GRG method. In: Abadie, J. (ed.) Integer and Nonlinear Program-
ming, pp. 529–536. North-Holland, Amsterdam (1970)
Abadie, J., Haggag, A.: Performance du gradient reduit generalise avec une methode quasi Newtonienne pour la
programmation non lineaire. RAIRO/Rech. Oper. 13(2), 209–216 (1979)
Al-Baali, M.: Descent property and global convergence of the Fletcher-Reeves method with inexact linesearch. IMA
J. Numer. Anal. 5, 121–124 (1985)
Al-Baali, M.: Numerical experience with a class of self-scaling quasi-Newton algorithms. J. Optim. Theory Appl. 96,
533–553 (1998)
Al-Baali, M., Grandinetti, L.: On practical modifications of the quasi-Newton BFGS method. AMO-Adv. Model.
Optim. 11(1), 63–76 (2009)
Al-Baali, M., Narushima, Y., Yabe, H.: A family of three-term conjugate gradient methods with sufficient descent
property for unconstrained optimization. Comput. Optim. Appl. 60, 89–110 (2015)
Andersen, E.D., Andersen, K.D.: The MOSEK interior point optimizer for linear programming: an implementation of
the homogeneous algorithm. In: Frenk, T.T.H., Roos, K., Zhang, S. (eds.) High Performance Optimization,
pp. 197–232. Kluwer Academic Publishers, New York (2000)
An, H.-B., Mo, Z.-Y., Liu, X.-P.: A choice of forcing terms in inexact Newton method. J. Comput. Appl. Math. 200(1),
47–80 (2007)
Andreani, R., Birgin, E., Martı́nez, J., Schuverdt, M.: On augmented Lagrangian methods with general lower-level
constraints. SIAM J. Optim. 18, 1286–1309 (2007)
Andreani, R., Birgin, E., Martı́nez, J., Schuverdt, M.: Augmented Lagrangian methods under the constant positive
linear dependence constraint qualification. Math. Program. 111, 5–32 (2008)
Andrei, N.: A simple algorithm for computing a zero of a nonlinear function of a variable in a given interval [a,b].
(Technical Report, Research Institute for Informatics, Bucharest, Romania, March 28, 1–9) (1975a)
Andrei, N.: A simple algorithm for computing all zeros of a nonlinear function of a variable in a given interval [a,b].
(Technical Report, Research Institute for Informatics, Bucharest, Romania, April 16, 1–21) (1975b)
Andrei, N.: RP: a package for efficient calculation of sparse Jacobian matrix for nonlinear systems of equations using
finite differences. (Technical Report, Research Institute for Informatics, Bucharest, Romania, April 15, 1–31)
(1983)
Andrei, N.: Application of sparse matrix techniques to the GRG algorithm for large-scale non-linear programming. Rev.
Roumaine Sci. Techn. Electrotechn. et Energy. 30(2), 175–186 (1985)
Andrei, N.: Application of sparse matrix techniques in GRG algorithm for very large-scale non-linear programming.
Rev. Roumaine Sci. Techn. Electrotechn. et Energy. 32(4), 457–464 (1987)
Andrei, N.: Computational experience with conjugate gradient algorithms for large-scale unconstrained optimization.
(Technical Report, Research Institute for Informatics-ICI, Bucharest, July 21) (1995)
Andrei, N.: Computational experience with a modified penalty-barrier method for large-scale nonlinear constrained
optimization. (Working Paper No. AMOL-96-1, Research Institute for Informatics-ICI, Bucharest, February 6)
(1996a)
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 767
Switzerland AG
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
768 References
Andrei, N.. Computational experience with a modified penalty-barrier method for large-scale nonlinear, equality and
inequality constrained optimization. (Technical Paper No. AMOL-96-2, Research Institute for Informatics-ICI,
Bucharest, February 12) (1996b)
Andrei, N.: Computational experience with “SPENBAR” a sparse variant of a modified penalty-barrier method for
large-scale nonlinear, equality and inequality, constrained optimization. (Working Paper No. AMOL-96-3,
Research Institute for Informatics-ICI, Bucharest, March 10) (1996c)
Andrei, N.: Penalty-barrier algorithms for nonlinear optimization. Preliminary computational results. Stud. Inform.
Control. 7(1), 15–36 (1998a)
Andrei, N.: Predictor-Corrector interior point methods for linear constrained optimization. Stud. Inform. Control. 7(2),
155–177 (1998b)
Andrei, N.: An interior point algorithm for nonlinear programming. Stud. Inform. Control. 7(4), 365–395 (1998c)
Andrei, N.: Programarea matematică avansată. Teorie, Metode computaţionale, Aplicaţii. [Advanced Mathematical
Programming. Theory, Computational Methods, Applications]. Editura Tehnică, Bucureşti (1999a)
Andrei, N.: Programarea matematică. Metode de punct interior [Mathematical Programming. Interior Point Methods].
Editura Tehnică, Bucureşti (1999b)
Andrei, N.: Optimizare fără Restricţii – Metode de direcţii conjugate [Unconstrained Optimization – Conjugate
Direction Methods]. MATRIXROM Publishing House, Bucharest (2000)
Andrei, N.: Numerical examples solved with SPENBAR – modified penalty barrier method for large-scale nonlinear
programming problems. (Technical Report No. 1/2001, Research Institute for Informatics ICI – Bucharest,
February) (2001)
Andrei, N.: Modele, Probleme de Test şi Aplicaţii de Programare Matematică. [Models, Test Problems and
Applications for Mathematical Programming]. Editura Tehnică, Bucureşti (2003)
Andrei, N.: Convergenţa algoritmilor de optimizare. [Convergence of the Optimization Algorithms] Editura Tehnică,
Bucureşti (2004a)
Andrei, N.: Teorie versus empirism ı̂n analiza algoritmilor de optimizare. [Theory Versus Empiricism in Analysis of the
Optimization Algorithms] Editura Tehnică, Bucureşti (2004b)
Andrei, N. Relaxed gradient descent method with backtracking for unconstrained optimization. În: Works 2005,
Manuscript. Biblioteca Academiei Române, pp. 1–10, March 2, 2005a
Andrei, N.: An acceleration of gradient descent algorithm with backtracking for unconstrained optimization. În: Works
2005, Manuscript. Biblioteca Academiei Române, pp. 1–13, April 20, 2005b
Andrei, N.: An acceleration of gradient descent algorithm with backtracking for unconstrained optimization. Numer.
Algorithms. 42, 63–73 (2006a)
Andrei, N.: Performance of conjugate gradient algorithms on some MINPACK-2 unconstrained optimization
applications. Stud. Inform. Control. 15(2), 145–168 (2006b)
Andrei, N.: Scaled conjugate gradient algorithms for unconstrained optimization. Comput. Optim. Appl. 38(3),
401–416 (2007a)
Andrei, N.: A scaled BFGS preconditioned conjugate gradient algorithm for unconstrained optimization. Appl. Math.
Lett. 20, 645–650 (2007b)
Andrei, N.: Scaled memoryless BFGS preconditioned conjugate gradient algorithm for unconstrained optimization.
Optim. Methods Softw. 22(4), 561–571 (2007c)
Andrei, N.: Numerical comparison of conjugate gradient algorithms for unconstrained optimization. Stud. Inform.
Control. 16(4), 333–352 (2007d)
Andrei, N.: A scaled nonlinear conjugate gradient algorithm for unconstrained optimization. Optimization. 57(4),
549–570 (2008a)
Andrei, N.: Another hybrid conjugate gradient algorithm for unconstrained optimization. Numer. Algorithms. 47,
143–156 (2008b)
Andrei, N.: A Dai-Yuan conjugate gradient algorithm with sufficient descent and conjugacy condition for uncon-
strained optimization. Appl. Math. Lett. 21(2), 165–171 (2008c)
Andrei, N.: New hybrid conjugate gradient algorithms for unconstrained optimization. In: Floudas, C.A., Pardalos,
P. (eds.) Encyclopedia of Optimization, 2nd edn, pp. 2560–2571. Springer Science + Business Media, New York
(2008d)
Andrei, N.: Performance profiles of conjugate gradient algorithms for unconstrained optimization. In: Floudas, C.A.,
Pardalos, P. (eds.) Encyclopedia of Optimization, 2nd edn, pp. 2938–2953. Springer Science + Business Media,
New York (2008e)
Andrei, N.: A hybrid conjugate gradient algorithm for unconstrained optimization as a convex combination of
Hestenes-Stiefel and Dai-Yuan. Stud. Inform. Control. 17(1), 55–70 (2008f)
Andrei, N.: 40 conjugate gradient algorithms for unconstrained optimization – a survey on their definition. (Technical
Report, Research Institute for Informatics-ICI, Bucharest, Romania, March 14, 1–13) (2008g)
References 769
Andrei, N.: Noether theorem and fundamentals of mathematical modeling. Revista Română de Informatică şi
Automatică. 18(4), 11–22 (2008h)
Andrei, N.: Hybrid conjugate gradient algorithm for unconstrained optimization. J. Optim. Theory Appl. 141(2),
249–264 (2009a)
Andrei, N.: Another nonlinear conjugate gradient algorithm for unconstrained optimization. Optim. Methods Softw.
24(1), 89–104 (2009b)
Andrei, N.: Acceleration of conjugate gradient algorithms for unconstrained optimization. Appl. Math. Comput. 213(2),
361–369 (2009c)
Andrei, N.: Accelerated conjugate gradient algorithm with finite difference Hessian/vector product approximation for
unconstrained optimization. J. Comput. Appl. Math. 230, 570–582 (2009d)
Andrei, N.: Critica Raţiunii Algoritmilor de Optimizare fără Restricţii. [Criticism of the Unconstrained Optimization
Algorithms Reasoning]. Editura Academiei Române, Bucureşti (2009e)
Andrei, N.: Metode Avansate de Gradient Conjugat pentru Optimizare fără Restricţii. [Advanced Conjugate Gradient
Methods for Unconstrained Optimization]. Editura Academiei Oamenilor de Ştiinţă din România, Bucureşti (2009f)
Andrei, N.: Accelerated conjugate gradient algorithm with modified secant condition for unconstrained optimization.
Stud. Inform. Control. 18(3), 211–232 (2009g)
Andrei, N.: Accelerated hybrid conjugate gradient algorithm with modified secant condition for unconstrained optimi-
zation. Numer. Algorithms. 54, 23–46 (2010a)
Andrei, N.: Accelerated scaled memoryless BFGS preconditioned conjugate gradient algorithm for unconstrained
optimization. Eur. J. Oper. Res. 204, 410–420 (2010b)
Andrei, N.: New accelerated conjugate gradient algorithms as a modification of Dai-Yuan’s computational scheme for
unconstrained optimization. J. Comput. Appl. Math. 234, 3397–3410 (2010c)
Andrei, N.: A modified Polak-Ribiere-Polyak conjugate gradient algorithm for unconstrained optimization. Optimiza-
tion. 60(12), 1457–1471 (2011a)
Andrei, N.: Open problems in conjugate gradient algorithms for unconstrained optimization. Bull. Malaysian Math. Sci.
Soc. 34(2), 319–330 (2011b)
Andrei, N.: CAON: A collection of nonlinear optimization applications in GAMS language. (Technical Report, No.1/
2011, Research Institute for Informatics-ICI, Bucharest, January 31, (105 pages and CD)) (2011c)
Andrei, N.: Critica Raţiunii Algoritmilor de Programare Liniară. [Criticism of the Linear Programming Algorithms
Reasoning]. Editura Academiei Române, Bucureşti (2011d)
Andrei, N.: A accelerated conjugate gradient algorithm with guaranteed descent and conjugacy conditions for
unconstrained optimization. Optim. Methods Softw. 27(4–5), 583–604 (2012)
Andrei, N.: A simple three-term conjugate gradient algorithm for unconstrained optimization. J. Comput. Appl. Math.
241, 19–29 (2013a)
Andrei, N.: On three-term conjugate gradient algorithms for unconstrained optimization. Appl. Math. Comput. 219,
6316–6327 (2013b)
Andrei, N.: Another conjugate gradient algorithm with guaranteed descent and conjugacy conditions for large-scale
unconstrained optimization. J. Optim. Theory Appl. 159, 159–182 (2013c)
Andrei, N.: A numerical study on efficiency and robustness of some conjugate gradient algorithms for large-scale
unconstrained optimization. Stud. Inform. Control. 22(4), 259–284 (2013d)
Andrei, N.: Nonlinear Optimization Applications using the GAMS Technology. Springer Optimization and its
Applications Series, vol. 81. Springer Science + Business Media, New York (2013e)
Andrei, N.: An accelerated subspace minimization three-term conjugate gradient algorithm for unconstrained optimi-
zation. Numer. Algorithms. 65(4), 859–874 (2014)
Andrei, N.: Critica Raţiunii Algoritmilor de Optimizare cu Restricţii. [Criticism of the Constrained Optimization
Algorithms Reasoning]. Editura Academiei Române, Bucureşti (2015a)
Andrei, N.: A new three-term conjugate gradient algorithm for unconstrained optimization. Numer. Algorithms. 68(2),
305–321 (2015b)
Andrei, N.: An adaptive conjugate gradient algorithm for large-scale unconstrained optimization. J. Comput. Appl.
Math. 292, 83–91 (2016)
Andrei, N.: Eigenvalues versus singular values study in conjugate gradient algorithms for large-scale unconstrained
optimization. Optim. Methods Softw. 32(3), 534–551 (2017a)
Andrei, N.: Accelerated adaptive Perry conjugate gradient algorithms based on the self-scaling memoryless BFGS
update. J. Comput. Appl. Math. 325, 149–164 (2017b)
Andrei, N.: Continuous Nonlinear Optimization for Engineering Applications in GAMS Technology. Springer Optimi-
zation and Its Applications Series, vol. 121. Springer Science + Business Media, New York (2017c)
Andrei, N.: An adaptive scaled BFGS method for unconstrained optimization. Numer. Algorithms. 77(2), 413–432
(2018a)
770 References
Andrei, N.: A Dai-Liao conjugate gradient algorithm with clustering the eigenvalues. Numer. Algorithms. 77(4),
1273–1282 (2018b)
Andrei, N.: A double parameter scaled BFGS method for unconstrained optimization. J. Comput. Appl. Math. 332,
26–44 (2018c)
Andrei, N.: A double parameter scaling Broyden-Fletcher-Goldfarb-Shanno based on minimizing the measure function
of Byrd and Nocedal for unconstrained optimization. J. Optim. Theory Appl. 178, 191–218 (2018d)
Andrei, N.: A diagonal quasi-Newton method based on minimizing the measure function of Byrd and Nocedal for
unconstatined optimization. Optimization. 67(9), 1553–1568 (2018e)
Andrei, N.: A double parameter scaled modified Broyden-Fletcher-Goldfarb-Shanno method for unconstrained optimi-
zation. Stud. Inform. Control. 27(2), 135–146 (2018f)
Andrei, N.: A diagonal quasi-Newton updating method for unconstrained optimization. Numer. Algorithms. 81(2),
575–590 (2019a)
Andrei, N.: A new diagonal quasi-Newton updating method with scaled forward finite differences directional derivative
for unconstrained optimization. Numer. Funct. Anal. Optim. 40(13), 1467–1488 (2019b)
Andrei, N.: Conjugate gradient algorithms closest to self-scaling memoryless BFGS method based on clustering the
eigenvalues of the self-scaling memoryless BFGS iteration matrix or on minimizing the Byrd-Nocedal measure
function with different Wolfe line searches for unconstrained optimization. (Technical Report No.2/2019. Academy
of Romanian Scientists, Bucharest, Romania, April 18, 1–119) (2019c)
Andrei, N.: Acceleration by modifying the stepsize versus preconditioning with diagonalized quasi-Newton of self-
scaling memoryless BFGS conjugate gradient methods of Hager-Zhang and of Dai-Kou. (Technical Report No.3/
2019. Academy of Romanian Scientists, Bucharest, Romania, October 14, 1–20) (2019d)
Andrei, N.: Nonlinear Conjugate Gradient Methods for Unconstrained Optimization. Springer Optimization and Its
Applications Series, vol. 158. Springer Science + Business Media, New York (2020a)
Andrei, N.: Diagonal approximation of the Hessian by finite difference for unconstrained optimization. J. Optim.
Theory Appl. 185, 859–879 (2020b)
Andrei, N.: A new accelerated diagonal quasi-Newton updating method with scaled forward finite differences
directional derivative for unconstrained optimization. Optimization. 70(2), 345–360 (2020c)
Andrei, N.: New conjugate gradient algorithms based on self-scaling memoryless Broyden-Fletcher-Goldfarb-Shanno
method. Calcolo. 57-17, 1–17 (2020d)
Andrei, N.: A Derivative-Free Two Level Random Search Method for Unconstrained Optimization. Springer Briefs in
Optimization. Springer, New York (2021a)
Andrei, N.: More on the efficiency and robustness of conjugate gradient methods subject to procedures for stepsize
computation. (Technical Report 4/2021, March 3) (2021b)
Andrei, N.: Accelerated memory-less SR1 with generalized secant equation method for unconstrained optimization.
(Technical Report 8/2021, May 26) (2021c)
Andrei, N.: A note on memory-less SR1 and memory-less BFGS methods for large-scale unconstrained optimization.
Numer. Algorithms. 90(1), 223–240 (2021d)
Andrei, N.: Accelerated memory-less SR1 method with generalized secant equation for unconstrained optimization.
Calcolo. 59-16, 1–20 (2022)
Andrei, N., Bărbulescu, M.: Balance constrained reduction of large-scale linear programming problems. Ann. Oper.
Res. 43, 149–170 (1993)
Antoniou, A., Lu, W.-S.: Practical Optimization. Algorithms and Engineering Applications. Springer Science +
Business Media, LLC, New York (2007)
Aris, R.: The Mathematical Theory of Diffusion and Reaction in Permeable Catalysts. Clarendon Press, Oxford (1975)
ARKI Consulting and Development A/S: CONOPT version 3 (2004)
Armijo, L.: Minimization of functions having Lipschitz continuous first partial derivatives. Pac. J. Math. 16(1), 1–3
(1966)
Arrow, K.J., Sollow, R.M.: Gradient methods for constrained maxima, with weakened assumptions. In: Arrow, K.J.,
Hurwicz, L., Uzawa, H. (eds.) Studies in Linear and Nonlinear Programming, pp. 166–176. Stanford University
Press, Stanford (1958)
Arzam, M.R., Babaie-Kafaki, S., Ghanbari, R.: An extended Dai-Liao conjugate gradient method with global conver-
gence for nonconvex functions. Glasnik Matematicki. 52(72), 361–375 (2017)
Averick, B.M., Carter, R.G., Moré, J.J.: The MINPACK-2 test problem collection (Preliminary Version). (Technical
Memorandum No.150, Mathematics and Computer Science Division, Argonne National Laboratory, 9700 South
Cass Avenue, Argonne, Illinois, Technical Memorandum No. 150, May) (1991)
Averick, B.M., Carter, R.G., Moré, J.J., Xue, G.L.: The MINPACK-2 test problem collection. (Mathematics and
Computer Science Division, Argonne National Laboratory, 9700 South Cass Avenue, Argonne, Illinois, Preprint
MCS-P153-6092, June) (1992)
References 771
Axelsson, O., Lindskog, G.: On the rate of convergence of the preconditioned conjugate gradient method. Numer. Math.
48, 499–523 (1986)
Babaie-Kafaki, S.: A modified BFGS algorithm based on a hybrid secant equation. Sci. China Math. 54(9), 2019–2036
(2011)
Babaie-Kafaki, S.: A note on the global convergence theorem of the scaled conjugate gradient algorithms proposed by
Andrei. Comput. Optim. Appl. 52(2), 409–414 (2012)
Babaie-Kafaki, S.: A modified scaled memoryless BFGS preconditioned conjugate gradient method for unconstrained
optimization. 4OR. 11(4), 361–374 (2013)
Babaie-Kafaki, S.: Two modified scaled nonlinear conjugate gradient methods. J. Comput. Appl. Math. 261(5),
172–182 (2014)
Babaie-Kafaki, S., Ghanbari, R.: A modified scaled conjugate gradient method with global convergence for nonconvex
functions. Bull. Belg. Math. Soc. Simon Stevin. 21(3), 465–477 (2014)
Babaie-Kafaki, S., Ghanbari, R.: A hybridization of the Hestenes–Stiefel and Dai–Yuan conjugate gradient methods
based on a least-squares approach. Optim. Methods Softw. 30(4), 673–681 (2015)
Babaie-Kafaki, S., Rezaee, S.: Two accelerated nonmonotone adaptive trust region line search methods. Numer.
Algorithms. 78, 911–928 (2018)
Ballard, D.H., Jelinek, C.A., Schinzinger, R.: An algorithm for the solution of constrained polynomial programming
problems. Comput. J. 17, 261–266 (1974)
Banga, J.R., Alonso, A.A., Singh, R.P.: Stochastic dynamic optimization of batch and semicontinuous bioprocesses.
Biotech. Progress. 13, 326–335 (1997)
Bartels, R.H.: A penalty linear programming method using reduced-gradient basis-exchange techniques. Linear
Algebra Appl. 29, 17–32 (1980)
Bartlett, R., Biegler, L.T.: rSQO++: An object oriented framework for successive quadratic programming. In: Biegler,
L.T., Ghattas, O., Heinkenschloss, M., van Bloemen Waanders, B. (eds.) Large-Scale PDE-Constrained Optimiza-
tion Lecture Notes in Computational Science and Engineering, vol. 30, pp. 316–330. Springer, New York (2003)
Bartholomew-Biggs, M.C.: A numerical comparison between two approachs to nonlinear programming problems.
(Technical Report, No. 77, Numerical Optimization Centre, Hatfield, England) (1976)
Bartholomew-Biggs, M.: Nonlinear Optimization with Engineering Applications. Springer Science + Business Media,
New York (2008)
Barzilai, J., Borwein, J.M.: Two point step size gradient methods. IMA J. Numer. Anal. 8, 141–148 (1988)
Bazaraa, M.S., Sherali, H.D., Shetty, C.M.: Nonlinear Programming Theory and Algorithms, 2nd edn. Wiley,
New York (1993)
Beale, E.M.L.: On quadratic programming. Naval Res. Logist. Q. 6, 227–244 (1959)
Beale, E.M.L.: A derivation of conjugate gradients. In: Lotsma, F.A. (ed.) Numerical Methods for Nonlinear Optimi-
zation, pp. 39–43. Academic Press, New York (1972)
Bebernes, J., Eberly, D.: Mathematical Problems from Combustion Theory. Applied Mathematical Sciences, vol. 83.
Springer, New York (1989)
Ben-Tal, A., El Ghaoui, L., Nemirovski, A.: Robust Optimization. Princeton Series in Applied Mathematics. Princeton
University Press, Princeton (2009)
Ben-Tal, A., Yuzefovich, I., Zibulevsky, M.: Penalty/barrier multiplier methods for minimax and constrained smooth
convex problems. (Research Report 9/92, Optimization Laboratory, Faculty of Industrial Engineering and Manage-
ment, Technion, Haifa, Israel) (1992)
Ben-Tal, A., Zibulevsky, M.: Penalty-barrier multipier methods for large-scale convex programming problems.
(Research Report 6/93. Optimization Laboratory, Faculty of Industrial Engineering and Management, Technion,
Haifa, Israel) (1993)
Benson, H.Y., Shanno, D.F.: Cubic regularization in symmetric rank-1 quasi-Newton methods. Math. Program.
Comput. 10, 457–486 (2018)
Benson, H.Y., Shanno, D.F., Vanderbei, R.J.: Interior-point methods for nonconvex nonlinear programming: Filter
methods and merit functions. Comput. Optim. Appl. 23, 257–272 (2002a)
Benson, H.Y., Shanno, D.F., Vanderbei, R.J.: A comparative study of large-scale nonlinear optimization algorithms.
(Technical Report ORFE-01-04, Operations Research and Financial Engineering, Princeton University, July 17)
(2002b)
Bergman, L.: Energy policy modeling: a survey of general equilibrium approaches. J. Policy Model. 10(3), 377–399
(1988)
Bertsekas, D.P.: On the Goldstein-Levitin-Polyak gradient projection method. IEEE Trans. Automat. Control. 21,
174–184 (1976)
Bertsekas, D.P.: Projected Newton mothods for optimization problems with simple constraints. SIAM J. Control Optim.
20, 221–246 (1982a)
Bertsekas, D.P.: Constrained Optimization and Lagrange Multiplier Methods. Academic Press, New York (1982b)
772 References
Bertsekas, D.P.: Nonlinear Programming, 2nd edn. Athena Scientific, Belmont (1999)
Betts, J., Eldersveld, S.K., Frank, P.D., Lewis, J.G.: An interior-point nonlinear programming algorithm for large scale
optimization. (Technical Report MCT TECH-003, Mathematics and Computing Technology, The Boeing Com-
pany, P.O. Box 3707, Seattle, WA 98124-2207, USA) (2000)
Bicanic, N., Johnson, K.: Who was “Raphson”? Int. J. Numer. Methods Eng. 14, 148–152 (1979)
Biegler, L.T., Nocedal, J., Schmid, C.: A reduced Hessian method for large-scale constrained optimization. SIAM
J. Optim. 5, 314–347 (1995)
Biggs, M.C.: Minimization algorithms making use of non-quadratic properties of the objective function. J. Inst. Math.
Appl. 8, 315–327 (1971)
Biggs, M.C.: Constrained minimization using recursive equality quadratic programming. In: Lootsma, F.A. (ed.)
Numerical Methods for Nonlinear Optimization, pp. 411–428. Academic Press, London (1972)
Biggs, M.C.: A note on minimization algorithms making use of non-quadratic properties of the objective
function. J. Inst. Math. Appl. 12, 337–338 (1973)
Birge, J.R., Louveaux, F.: Introduction to Stochastic Programming. Springer, New York (1997)
Birgin, E.G., Martı́nez, J.M., Raydan, M.: Nonmonotone spectral projected gradient methods on convex sets. (Techni-
cal Paper, June 7) (1999)
Birgin, E.G., Martı́nez, J.M.: A spectral conjugate gradient method for unconstrained optimization. Appl. Math. Optim.
43, 117–128 (2001)
Birgin, E.G., Martı́nez, J.M.: Practical Augmented Lagrangian Methods for Constrained Optimization. SIAM,
Philadelphia (2014)
Birgin, E.G., Martı́nez, J.M., Raydan, M.: Nonmonotone spectral projected gradient methods on convex sets. SIAM
J. Optim. 10, 1196–1211 (2000)
Birgin, E.G., Martı́nez, J.M., Raydan, M.: Algorithm 813: SPG – software for convex-constrained optimization. ACM
Trans. Math. Softw. 27, 340–349 (2001)
Bisschop, J., Meeraus, A.: On the development of the general algebraic modeling systems in a strategic planning
environment. Math. Program. Study. 20, 1–29 (1982)
Boggs, P.T., Tolle, J.W.: A strategy for global convergence in a sequential quadratic programming algorithm. SIAM
J. Numer. Anal. 21, 600–623 (1989)
Boggs, P.T., Tolle, J.W.: Convergence properties of a class of rank-two updates. SIAM J. Optim. 4, 262–287 (1994)
Boggs, P.T., Tolle, J.W.: Sequential quadratic programming. Acta Numer. 4, 1–51 (1995)
Bondarenko, A.S., Bortz, D.M., Moré, J.J.: COPS: Large-scale nonlinearly constrained optimization problems. (Tech-
nical Report ANL/MCS-TM-237) (1999)
Bongartz, I., Conn, A.R., Gould, N.I.M., Toint, P.L.: CUTE: Constrained and unconstrained testing environment. ACM
Trans. Math. Softw. 21(1), 123–160 (1995)
Bonnans, J., Gilbert, J., Lemaréchal, C., Sagastizábal, C.: Numerical Optimization: Theory and Practical Aspects, 2nd
edn. Springer, Berlin (2006)
Bonnans, J.F., Panier, E.R., Tits, A.L., Zhou, J.L.: Avoiding the Maratos effect by means of a nonmonotone line search.
II. Inequality constrained problems – feasible iterates. SIAM J. Numer. Anal. 29, 1187–1202 (1992)
Boyd, S., El Ghaoui, L., Feron, E., Balakrishnan, V.: Linear Matrix Inequalities in System and Control Theory. Society
for Industrial and Applied Mathematics, Philadelphia (1994)
Boyd, S., Vandenberghe, L.: Convex Optimization. Cambridge University Press, Cambridge (2004)
Breitfeld, M.G., Shanno, D.F.: Preliminary computational experience with modified log-barrier functions for large-
scale nonlinear programming. In: Hager, W.W., Hearn, D.W., Pardalos, P.M. (eds.) Large Scale Optimization, State
of the Art, vol. 1994, pp. 45–67. Kluwer Academic Publishers, Dordrecht-Boston-London (1994a)
Breitfeld, M.G., Shanno, D.F.: Computational experience with penalty-barrier methods for nonlinear programming.
(RUTCOR Research Report, RRR 17-93, August 1993, Revised March 1994. Rutgers Center for Operations
Research, Rutgers University, New Brunswick, New Jersey 08903, March) (1994b)
Breitfeld, M.G., Shanno, D.F.: A globally convergent penalty-barrier algorithm for nonlinear programming and its
computational performance. (RUTCOR Research Report, RRR 12-94, April 1994, Rutgers Center for Operations
Research, Rutgers University, New Brunswick, New Jersey 08903, March) (1994c)
Brent, R.P.: Algorithms for Minimization Without Derivatives. Prentice Hall, Englewood Cliffs (1973)
Brooke, A., Kendrick, D., Meeraus, A., Raman, R., Rosenthal, R.E.: GAMS: A User’s Guide. GAMS Development
Corporation (1998)
Brooke, A., Kendrick, D., Meeraus, A., Raman, R.: GAMS: A User Guide. GAMS Development Corporation (2005)
Brown, A.A., Bartholomew-Biggs, M.C.: ODE vs SQP methods for constrained optimisation. (Technical Report
No. 179, Numerical Optimisation Centre, The Hatfield Polytechnic, Hatfield, June) (1987)
Brown, A.A., Bartholomew-Biggs, M.C.: Some effective methods for unconstrained optimization based on the solution
of systems of ordinary differential equations. J. Optim. Theory Appl. 62, 211–224 (1989)
References 773
Broyden, C.G.: The convergence of a class of double-rank minimization algorithms. I. General considerations. J. Inst.
Math. Appl. 6, 76–90 (1970)
Broyden, C.G., Dennis, J.E., Moré, J.J.: On the local and superlinear convergence of quasi-Newton methods. J. Inst.
Math. Appl. 12, 223–246 (1973)
Buckley, A.G., Lenir, A.: Algorithm 630-BBVSCG: A variable storage algorithm for function minimization. ACM
Trans. Math. Softw. 11, 103–119 (1985)
Bulirsch, R., Stoer, J.: Introduction to Numerical Analysis. Springer, New York (1980)
Bunch, J.R., Kaufman, L.: Some stable methods for calculating inertia and solving symmetric linear systems. Math.
Comput. 31, 163–179 (1977)
Bunch, J.R., Parlett, B.N.: Direct methods for solving symmetric indefinite systems of linear equations. SIAM J. Numer.
Anal. 8, 639–655 (1971)
Byrd, R.H., Curtis, F.E., Nocedal, J.: An inexact Newton method for nonconvex equality constrained optimization.
Math. Program. Serie A. 122, 273–299 (2010)
Byrd, R.H., Gilbert, J.-C., Nocedal, J.: A trust region method based on interior point techniques for nonlinear
programming. Math. Program. 89, 149–185 (2000)
Byrd, R.H., Gould, N.I.M., Nocedal, J., Waltz, R.A.: On the convergence of successive linear-quadratic programming
algorithms. (Technical Report OTC 2002/5, Optimization Technology Center, Northwestern University, Evanston,
IL) (2002)
Byrd, R.H., Gould, N.I.M., Nocedal, J., Waltz, R.A.: An algorithm for nonlinear optimization using linear programming
and equality constrained subproblems. Math. Program. Ser. B. 100, 27–48 (2004a)
Byrd, R.H., Hribar, M.E., Nocedal, J.: An interior point method for large scale nonlinear programming. SIAM J. Optim.
9, 877–900 (1999)
Byrd, R.H., Liu, G., Nocedal, J.: On the local behavior of an interior point method for nonlinear programming. In:
Griffths, D.F., Higham, D.J. (eds.) Numerical Analysis, pp. 37–56. Addison-Wesley Longman, Reading (1997)
Byrd, R.H., Liu, D.C., Nocedal, J.: On the behavior of Broyden’s class of quasi-Newton methods. SIAM J. Optim. 2,
533–557 (1992)
Byrd, R.H., Lu, P., Nocedal, J.: A limited memory algorithm for bound constrained optimization. SIAM J. Sci. Stat.
Comput. 16(5), 1190–1208 (1995)
Byrd, R.H., Marazzi, M., Nocedal, J.: On the convergence of Newton iterations to non-stationary points. Math.
Program. Ser. A. 99, 127–148 (2004b)
Byrd, R.H., Nocedal, J.: A tool for the analysis of quasi-Newton methods with application to unconstrained minimiza-
tion. SIAM J. Numer. Anal. 26, 727–739 (1989)
Byrd, R.H., Nocedal, J., Waltz, R.A.: Feasible interior methods using slacks for nonlinear optimization. Comput.
Optim. Appl. 26(1), 35–61 (2003)
Byrd, R.H., Nocedal, J., Waltz, R.A.: KNITRO: An integrated package for nonlinear optimization. In: Di Pillo, G.,
Roma, M. (eds.) Large-Scale Nonlinear Optimization, pp. 35–59 (2006)
Byrd, R.H., Lu, P., Nocedal, J., Zhu, C.: A limited memory algorithm for bound constrained optimization. (Technical
Report NAM-08, [Revised May 1994], Department of Electrical Engineering and Computer Science, Northwestern
University, Evanston, Illinois 60208) (1994)
Byrd, R.H., Lu, P., Nocedal, J., Zhu, C.: A limited memory algorithm, for bound constrained optimization. SIAM J. Sci.
Comput. 16, 1190–1208 (1995)
Byrd, R.H., Nocedal, J., Schnabel, R.B.: Representation of quasi-Newton matrices and their use in limited memory
methods. Math. Program. 63(2), 129–156 (1994)
Byrd, R.H., Nocedal, J., Yuan, Y.: Global convergence of a class of quasi-Newton methods on convex problems. SIAM
J. Numer. Anal. 24, 1171–1190 (1987a)
Byrd, R.H., Schnabel, R.B., Shultz, G.A.: A trust region algorithm for nonlinearly constrained optimization. SIAM
J. Numer. Anal. 24, 1152–1170 (1987b)
Byrd, R.H., Schnabel, R.B., Shultz, G.A.: Approximate solution of the trust-region problem by minimization over
two-dimensional subspaces. Math. Program. 40, 247–263 (1988)
Byrd, R.H., Tapia, R.A., Zhang, Y.: An SQP augmented Lagrangean BFGS algorithm for constrained optimization.
(Technical Report, University of Colorado at Boulder) (1990)
Carolan, W.J., Hill, J.E., Kennington, J.L., Niemi, S., Wochmann, S.J.: An empirical evaluation of the KORBX
algorithms for military airlift applications. Oper. Res. 38, 240–248 (1990)
Cauchy, A.: Méthodes générales pour la resolution des systèmes déquations simultanées. Comptes Rendus de
l’Académie des Sciences Paris. 25(1), 536–538 (1847)
Castillo, E., Conejo, A.J., Pedregal, P., Garcı́a, R., Alguacil, N.: Building and Solving Mathematical Programming
Models in Engineering and Science. Wiley, New York (2001)
Cesari, L.: Optimization – Theory and Applications. Springer, Bonn (1983)
774 References
Chachuat, B.C.: Nonlinear and Dynamic Optimization – from Theory to Practice, IC-31: Winter Semester 2006/2007.
École Politechnique Fédérale de Lausanne (2007)
Chen, H., Lam, W.H., Chan, S.C.: On the convergence analysis of cubic regularized symmetric rank-1 quasi-Newton
method and the incremental version in the application of large-scale problems. IEEE Access. 7, 114042–114059
(2019)
Cheng, S.H.: Symmetric indefinite matrices: Linear system solvers and modified inertia problems. Ph.D. Thesis,
University of Manchester. Faculty of Science and Engineering, January 1998
Cheng, S.H., Higham, N.J.: A modified Cholesky algorithm based on a symmetric indefinite factorization. SIAM
J. Matrix Anal. Appl. 19, 1097–1110 (1998)
Cheng, W.Y., Li, D.H.: Spectral scaling BFGS method. J. Optim. Theory Appl. 146, 305–319 (2010)
Chin, C.M.: A global convergence theory of a filter line search method for nonlinear programming. (Technical Report,
Department of Electrical Engineering, University of Malaya, Kuala Lumpur, Malaysia, August) (2002)
Chin, C.M., Fletcher, R.: On the local convergence of an SLP-filter algorithm that takes EQP steps. Math. Program.
Ser. A. 96, 161–177 (2003)
Cimatti, G., Menchi, O.: On the numerical solution of a variational inequality connected with the hydrodynamic
lubrication of a complete journal bearing. Calcolo. 15, 249–258 (1978)
Choi, T.D., Kelley, C.T.: Superlinear convergence and implicit filtering. SIAM J. Optim. 10, 1149–1162 (2000)
Cohen, A.: Rate of convergence of several conjugate gradient algorithms. SIAM J. Numer. Anal. 9, 248–259 (1972)
Coleman, T.F., Conn, A.R.: Nonlinear programming via an exact penalty function: Asymptotic analysis. Math.
Program. 24, 123–136 (1982a)
Coleman, T.F., Conn, A.R.: Nonlinear programming via an exact penalty function: Global analysis. Math. Program. 24,
137–161 (1982b)
Coleman, T.F., Hulbert, L.A.: A direct active set algorithm for large sparse quadratic programs with simple bounds.
Math. Program. Ser. A. 45, 373–406 (1989)
Coleman, T.F., Li, Y.: On the convergence of interior-reflective Newton methods for nonlinear minimization subject to
bounds. Math. Program. 67, 189–224 (1994)
Coleman, T.F., Li, Y.: An interior trust region approach for nonlinear minimization subject to bounds. SIAM J. Optim.
6, 418–445 (1996)
Coleman T.F., Li, Y.: A trust region and affine scaling interior point method for nonconvex minimization with linear
inequality constraints. (Technical Report, Cornell University, Ithaca, NY) (1997)
Concus, P., Golub, G., O’Leary, D.P.: A generalized conjugate gradient method for the numerical solution of elliptic
partial differential equations. In: Bunch, J., Rose, D. (eds.) Sparse Matrix Computation, pp. 309–332. Academic
Press, New York (1976)
Conejo, A.J., Castillo, E., Minguez, R., Garcia-Bertrand, R.: Decomposition Techniques in Mathematical Program-
ming: Engineering and Science Applications. Springer, Heidelberg (2006)
Conn, A.R.: Linear programming via a nondifferentiable penalty function. SIAM J. Numer. Anal. 13, 145–154 (1976)
Conn, A.R., Gould, N.I.M., Toint, P.L.: Global convergence of a class of trust region algorithms for optimization with
simple bounds. SIAM J. Numer. Anal. 25(2), 433–460 (1988a)
Conn, A.R., Gould, N.I.M., Toint, P.L.: Testing a class of methods for solving minimization problems with simple
bounds on the variables. Math. Comput. 50, 399–430 (1988b)
Conn, A.R., Gould, N.I.M., Toint, P.L.: A globally convergent augmented Lagrangean algorithm for optimization with
general constraints and simple bounds. SIAM J. Numer. Anal. 28, 545–572 (1991a)
Conn, A.R., Gould, N.I.M., Toint, P.L.: Convergence of quasi-newton matrices generated by the symmetric rank one
update. Math. Program. 50(1–3), 177–195 (1991b)
Conn, A.R., Gould, N.I.M., Toint, Ph.L.: A globally convergent Lagrangian barrier algorithm for optimization with
general inequality constraints and simple bounds. (Technical Report 92/07, Department of Mathematics, Faculté
Universitaires de Namur, Namur, Belgium) (1992a)
Conn, A.R., Gould, N.I.M., Toint, P.L.: LANCELOT – A Fortran Package for Large-Scale Nonlinear Optimization
(Release A). Springer Series in Computational Mathematics, vol. 17. Springer, Berlin (1992b)
Conn, A.R., Gould, N.I.M., Toint, P.L.: A globally convergent Lagrangian barrier algorithm for optimization with
general inequality constraints and simple bounds. Math. Comput. 66, 261–288 (1997a)
Conn, A.R., Gould, N.I.M., Toint, P.L.: Numerical experiments with the LANCELOT package (Release A) for large-
scale nonlinear optimization. Math. Program. Ser. A. 73(1), 73–110 (1996a)
Conn, A.R., Gould, N.I.M., Toint, P.L.: Trust-Region Methods. MPS-SIAM Series on Optimization. SIAM,
Philadelphia (2000)
Conn, A.R., Gould, N.I.M., Sartenaer, A., Toint, P.L.: Convergence properties of an augmented Lagrangean algorithm
for optimization with a combination of general equality and linear constraints. SIAM J. Optim. 6(3), 674–703
(1996b)
References 775
Conn, A.R., Scheinberg, K., Toint, P.L.: Recent progress in unconstrained nonlinear optimization without derivatives.
Math. Program. Ser. B. 79, 397–414 (1997b)
Contreras, M., Tapia, R.A.: Sizing the BFGS and DFP updates: A numerical study. J. Optim. Theory Appl. 78, 93–108
(1993)
Cottle, R.W.: William Karush and the KKT theorem. In: Gr€ otschel, M. (ed.) Optimization stories. Documenta
Mathematica, Journal der Deutschen Methematiker-Vereinigung, Extra volume, 21st International Symposium on
Mathematical Programming, pp. 255–269, Berlin, August 19–24, 2012
Crowder, H.P., Wolfe, P.: Linear convergence of the conjugate gradient method. IBM J. Res. Dev., 431–433 (1969)
Courant, R.: Variational methods for the solution of problems of equilibrium and vibrations. Bull. Am. Math. Soc. 49,
1–23 (1943)
Curtis, A., Powell, M.J.D., Reid, J.K.: On the estimation of sparse Jacobian matrices. J. Inst. Math. Appl. 13, 117–119
(1974)
Cuthrell, J.E., Biegler, L.T.: Simultaneous optimization and solution methods for batch reactor control profiles.
Comput. Chem. Eng. 13, 49–62 (1989)
Dai, Y.H.: Analyses of conjugate gradient methods. Ph.D. Thesis, Institute of Computational Mathematics and
Scientific/Engineering Computing, Chinese Academy of Sciences (1997)
Dai, Y.H.: A nonmonotone conjugate gradient algorithm for unconstrained optimization. J. Syst. Sci. Complex. 15(2),
139–145 (2002a)
Dai, Y.H.: On the nonmonotone line search. J. Optim. Theory Appl. 112, 315–330 (2002b)
Dai, Y.H.: Convergence properties of the BFGS algorithm. SIAM J. Optim. 13, 693–701 (2003)
Dai, Y.H.: Chapter 8: Convergence analysis of nonlinear conjugate gradient methods. In: Wang, Y., Yagola, A.G.,
Yang, C. (eds.) Optimization and Regularization for Computational Inverse Problems and Applications,
pp. 157–181. Higher Education Press/Springer, Beijing/Berlin, Heidelberg (2010)
Dai, Y.H.: Nonlinear conjugate gradient methods. Wiley Encyclopedia of Operations Research and Management
Science. https://doi.org/10.1002/9780470400531.eorms0183. Published on line, February 15, 2011
Dai, Y.H., Hager, W.W., Schittkowski, K., Zhang, H.: The cyclic Barzilai-Borwein method for unconstrained optimi-
zation. IMA J. Numer. Anal. 26, 604–627 (2006)
Dai, Y.H., Han, J.Y., Liu, G.H., Sun, D.F., Yin, H.X., Yuan, Y.X.: Convergence properties of nonlinear conjugate
gradient methods. SIAM J. Optim. 10(2), 345–358 (1999)
Dai, Y.H., Kou, C.X.: A nonlinear conjugate gradient algorithm with an optimal property and an improved Wolfe line
search. SIAM J. Optim. 23(1), 296–320 (2013)
Dai, Y.H., Liao, L.Z.: New conjugate conditions and related nonlinear conjugate gradient methods. Appl. Math. Optim.
43, 87–101 (2001)
Dai, Y.H., Liao, L.Z.: R-linear convergence of the Barzilai and Borwein gradient method. IMA J. Numer. Anal. 22(1),
1–10 (2002)
Dai, Y.H., Liao, L.Z., Li, D.: On restart procedures for the conjugate gradient method. Numer. Algorithms. 35, 249–260
(2004)
Dai, Y.H., Ni, Q.: Testing different conjugate gradient methods for large-scale unconstrained optimization. J. Comput.
Math. 22(3), 311–320 (2003)
Dai, Z., Wen, F.: Another improved Wei-Yao-Liu nonlinear conjugate gradient method with sufficient descent
property. Appl. Math. Comput. 218, 7421–7430 (2012)
Dai, Y.H., Yuan, Y.X.: Convergence properties of the conjugate descent method. Adv. Math. (China). 26, 552–562
(1996)
Dai, Y.H., Yuan, Y.: A nonlinear conjugate gradient method with strong global convergence property. SIAM J. Optim.
10, 177–182 (1999)
Dai, Y.H., Yuan, Y.: An efficient hybrid conjugate gradient method for unconstrained optimization. Ann. Oper. Res.
103, 33–47 (2001)
Dai, Y.H., Yuan, Y.: A class of globally convergent conjugate gradient methods. Sci. China Math. Ser. A. 46(2),
251–261 (2003)
Daniel, J.W.: The conjugate gradient method for linear and nonlinear operator equations. SIAM J. Numer. Anal. 4,
10–26 (1967)
Daniel, J.W., Graggs, W.B., Kaufman, L., Stewart, G.W.: Reorthogonalization and stable algorithms for updating the
Gram-Schmidt QR factorizations. Math. Comput. 30, 772–795 (1976)
Dantzig, G.B.: Linear Programming and Extensions. Princeton University Press, Princeton (1963)
Davidon, W.C.: Variable metric method for minimization. (Research and Development Report ANL-5990. Argonne
National Laboratories) (1959)
Davidon, W.C.: Conic approximation and collinear scalings for optimizers. SIAM J. Numer. Anal. 17(2), 268–281
(1980)
Debreu, G.: Definite and semidefinite quadratic forms. Econometrica. 20, 295–300 (1952)
776 References
Dehmiry, A.H.: The global convergence of the BFGS method under a modified Yuan-Wei-Lu line search technique.
Numer. Algorithms. (2019). https://doi.org/10.1007/s11075-019-00779-7
Dembo, R.S.: A set of geometric programming test problems and their solutions. Math. Program. 10, 192–213 (1976)
Dembo, R.S., Eisenstat, S.C., Steihaug, T.: Inexact Newton methods. SIAM J. Numer. Anal. 19, 400–408 (1982)
Dembo, R.S., Steihaug, T.: Truncated Newton algorithms for large-scale unconstrained optimization. Math. Program.
26, 190–212 (1983)
Dembo, R.S., Tulowitzki, U.: On the minimization of quadratic functions subject to box constraints. (Technical Report,
School of Organization and Management, Yale University, New Haven, CT) (1983)
Demmel, J.W.: Applied Numerical Linear Algebra. SIAM, Philadelphia (1997)
Dener, A., Denchfield, A., Munson, T.: Preconditioning nonlinear conjugate gradient with diagonalized quasi-Newton.
(Mathematics and Computer Science Division, Preprint ANL/MCS-P9152-0119, January 2019, Argonne National
Laboratory, 9700 South Cass Avenue, Argonne, Illinois 60430) (2019)
Deng, N.Y., Xiao, Y., Zhou, F.J.: Nonmonotonic trust-region algorithm. J. Optim. Theory Appl. 26, 259–285 (1993)
Dennis, J.E., Heinkenschlos, M., Vicente, L.N.: Trust-region interior-point algorithms for a class of nonlinear
programming problems. SIAM J. Control. Optim. 36, 1750–1794 (1998)
Dennis, J.E., Moré, J.J.: Quasi-Newton methods, motivation and theory. SIAM Rev. 19(1), 46–89 (1977)
Dennis, J.E., Schnabel, R.B.: Numerical Methods for Unconstrained Optimization and Nonlinear Equations. Reprinted
as Classics in Applied Mathematics, vol. 16. Prentice-Hall/SIAM, Englewood Cliffs/Philadelphia (1983)
Dennis, J.E., Schnabel, R.B.: A view of unconstrained optimization. In: Optimization, Vol. 1 of Handbooks in
Operations Research and Management, pp. 1–72, Elsevier Science Publishers, Amsterdam (1989)
Dennis, J.E., Wolkowicz, H.: Sizing and least-change secant methods. SIAM J. Numer. Anal. 30(5), 1291–1314 (1993)
Deuflhard, P.: Global inexact Newton methods for very large scale nonlinear problems. In: Proceedings of the Cooper
Mountain Conference on Iterative Methods. Cooper Mountain, Colorado, April 1–5 (1990)
Dikin, I.I.: Iterative solution of problems of linear and quadratic programming. Soviet Math. Doklady. 8, 674–675
(1967)
Dikin, I.I.: On the convergence of an iterative process. Upravlyaemye Sistemi. 12, 54–60 (1974)
Dixon, L.C.W., Price, R.C.: Numerical experience with truncated Newton method for unconstrained
optimization. J. Optim. Theory Appl. 56, 245–255 (1988)
Dolan, E.D., Moré, J.J.: Benchmarching optimization software with performance profiles. Math. Program. 91, 201–213
(2002)
Dolan, E.D., Moré, J.J., Munson, T.S.: Benchmarking Optimization Software with COPS 3.0. Preprint ANL/MCS-TM-
273, Argonne National Laboratory, Argonne (2004)
Drud, A.: Application of sparse matrix techniques in large scale nonlinear programming. In: Prekopa, A. (ed.) Survey of
Mathematical Programming, vol. 1, part 3, Nonlinear Programming. (Proceedings of the 9th International Mathe-
matical Programming Symposium, Budapest, August 23–27, 1976, pp. 429–445) (1976)
Drud, A.: CONOPT: A GRG code for large sparse dynamic nonlinear optimization problems. (Report No. DRD59,
Development Research Department, Economics and Research Staff, The World Bank, 1818 H Street, Washington,
D.C. 20433, August) (1983)
Drud, S.A.: CONOPT: A GRG code for large sparse dynamic nonlinear optimization problems. Technical Note No.21,
Development Research Center, The World Bank, 1818 H Street, Washington, D.C. 20433, March (1984)
Drud, S.A.: CONOPT: A GRG code for large sparse dynamic nonlinear optimization problems. Math. Program. 31,
153–191 (1985)
Drud, S.A.: CONOPT – A large-scale GRG code. ORSA J. Comput. 6, 207–216 (1994)
Drud, S.A.: CONOPT – A system for large-scale nonlinear optimization. (Tutorial for CONOPT subroutine library,
16p. ARKI Consulting and Development A/S, Bagsvaerd, Denmark) (1995)
Drud, S.A.: CONOPT: A system for large-scale nonlinear optimization. (Reference Manual for CONOPT subroutine
library, 69p. ARKI Consulting and Development A/S, Bagsvaerd, Denmark) (1996)
Drud, S.A.: CONOPT. In: GAMS the Solver Manuals, pp. 39–82. GAMS Development Corporation, Washington, DC
(2005)
Drud, S.A. CONOPT – A system for large scale nonlinear optimization. Tutorial for CONOPT dynamic link library.
Version 3.15 (Fortran 90 examples). (ARKI Consulting and Development A/S, Bagsvaerd, Denmark, August)
(2011)
Duran, M., Grossmann, I.E.: An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Math.
Program. 36, 307–339 (1986)
Ecker, J.G., Kupferschmid, M.: An ellipsoid algorithm for nonlinear programming. Math. Program. 27, 83–106 (1983)
Ecker, J.G., Kupferschmid, M.: A computational comparison of the ellipsoid algorithm with several nonlinear
programming algorithms. SIAM J. Control. Optim. 23(5), 657–674 (1985)
Eisenstat, S.C., Walker, H.F.: Choosing the forcing terms in an inexact Newton method. SIAM J. Sci. Comput. 17(1),
16–32 (1996)
References 777
El-Bakry, A.S., Tapia, R.A., Tsuchiya, T., Zhang, Y.: On the formulation and theory of the Newton interior-point
method for nonlinear programming. J. Optim. Theory Appl. 89(3), 507–541 (1996)
Eldersveld, S.K.: Large-scale sequential quadratic programming algorithms. Ph.D. Thesis, Department of Operations
Research, Stanford University, Stanford, CA (1991)
Facchinei, F., Júdice, J., Soares, J.: An active set Newton’s algorithm for large-scale nonlinear programs with box
constraints. SIAM J. Optim. 8, 158–186 (1998)
Facchinei, F., Lucidi, S.: A class of penalty functions for optimization problems with bounds constraints. Optimization.
26, 239–259 (1992a)
Facchinei, F., Lucidi, S.: A class of methods for optimization problems with simple bounds. Part 2: Algorithms and
numerical results. (Technical Report R.336, IASI-CNR, Roma, Italy) (1992b)
Facchinei, F., Lucidi, S.: Convergence to second order stationary points in inequality constrained optimization. Math.
Oper. Res. 23, 746–766 (1998)
Facchinei, F., Lucidi, S., Palagi, L.: A truncated Newton algorithm for large-scale box constrained optimization. SIAM
J. Optim. 4, 1100–1125 (2002)
Fiacco, A.V., McCormick, G.P.: The sequential unconstrained minimization technique for nonlinear programming. A
primal-dual method. Manag. Sci. 10, 360–366 (1964)
Fiacco, A.V., McCormick, G.P.: Extensions of SUMT for nonlinear programming: equality constraints and extrapola-
tion. Manag. Sci. 12, 816–828 (1966)
Fiacco, A.V., McCormick, G.P.: Nonlinear Programming: Sequential Unconstrained Minimization Technique. Wiley,
New York (1968). [Republished in 1990 by SIAM, Philadelphia]
Finkel, D.E.: DIRECT Optimization Algorithm User Guide. Center for Research in Scientific Computation, North
Carolina State University, Raleigh (2003)
Fletcher, R.: A new approach to variable metric algorithms. Comput. J. 13, 317–322 (1970)
Fletcher, R.: A general quadratic programming algorithm. J. Inst. Math. Appl., 76–91 (1971)
Fletcher, R.: Second order corrections for nondifferentiable optimization. In: Griffith, D. (ed.) Numerical Analysis,
pp. 85–114. Springer (1982). Proceedings Dundee 1981
Fletcher, R.: Practical Methods of Optimization, 2nd edn. Wiley, New York (1987)
Fletcher, R.: A new variational result for quasi-Newton formulae. SIAM J. Optim. 1, 18–21 (1991)
Fletcher, R.: An optimal positive definite update for sparse Hessian matrices. SIAM J. Optim. 5, 192–218 (1995)
Fletcher, R.: Stable reduced Hessian updates for indefinite quadratic programming. Math. Program. 87, 251–264 (2000)
Fletcher, R.: A package of subroutines for NLP and LCP. Open Source Initiative OSI – Eclipse Public License 1.0
(ELP-1.0), Release 1.0, 2011 (2011)
Fletcher, R., Sainz de la Maza, E.: Nonlinear programming and nonsmooth optimization by successive linear
programming. Math. Program. 43, 235–256 (1989)
Fletcher, R., Freeman, T.L.: A modified Newton method for minimization. J. Optim. Theory Appl. 23, 357–372 (1977)
Fletcher, R., Gould, N.I.M., Leyffer, S., Toint, P.T., Wächter, A.: Global convergence of a trust-region SQP filter
algorithm for general nonlinear programming. SIAM J. Optim. 13, 635–659 (2002a)
Fletcher, R., Grothey, A., Leyffer, S.: Computing sparse Hessian and Jacobian approximations with optimal hereditary
properties. (Technical Report, Department of Mathematics, University of Dundee) (1996)
Fletcher, R., Leyffer, S.: User Manual for FilterSQP. (Technical Report NA/181, Department of Mathematics,
University of Dundee, Scotland, April. [Updated, March 1999]) (1998)
Fletcher, R., Leyffer, S.: A bundle filter method for nonsmooth nonlinear optimization. (Numerical Analysis Report
NA/195, Dundee University, April) (1999)
Fletcher, R., Leyffer, S.: Nonlinear programming without a penalty function. Math. Program. Ser. A. 91, 239–269
(2002)
Fletcher, R., Leyffer, S.: Filter-type algorithms for solving systems of algebraic equations and inequalities. In: di Pillo,
G., Murli, A. (eds.) High Performance Algorithms and Software for Nonlinear Optimization, pp. 259–278. Kluwer
Academic Publishers, Central and South America (2003)
Fletcher, R., Leyffer, S., Toint, Ph.: On the global convergence of an SLP-filter algorithm. (Numerical Analysis Report
NA/183, August 1998, revised October 1999) (1999)
Fletcher, R., Leyffer, S., Toint, P.: On the global convergence of a filter-SQP algorithm. SIAM J. Optim. 13, 44–59
(2002b)
Fletcher, R., Leyffer, S., Toint, Ph.: A brief history of filter methods. (Argonne National Laboratory, Mathematics and
Computer Science Division, Preprint ANL/MCS-P1372-0906, September 26, 2006, revised October 9, 2006) (2006)
Fletcher, R., Leyffer, S., Shen, C.: Nonmonotone filter method for nonlinear optimization. (Argonne National Labora-
tory, Mathematics and Computer Science Division, Preprint ANL/MCS-P1679-0909, October 14) (2009)
Fletcher, R., Powell, M.J.D.: A rapidly convergent descent method for minimization. Comput. J., 163–168 (1963)
Fletcher, R., Reeves, C.M.: Function minimization by conjugate gradient. Comput. J. 7, 149–154 (1964)
Floudas, C.A., Pardalos, P.M.: Recent Advances in Global Optimization. Princeton University Press, Princeton (1992)
778 References
Floudas, C.A., Pardalos, M.P., Adjiman, C.S., Esposito, W.R., Gümüs, Z.H., Harding, S.T., Klepeis, J.L., Meyer, C.A.,
Schweiger, C.A.: Handbook of Test Problems in Local and Global Optimization. Kluwer Academic Publishers,
Dordrecht (1999)
Ford, J.A., Moghrabi, I.A.: Multi-step quasi-Newton methods for optimization. J. Comput. Appl. Math. 50(1–3),
305–323 (1994)
Ford, J.A., Moghrabi, I.A.: Minimum curvature multi-step quasi-Newton methods. Comput. Math. Appl. 31(4–5),
179–186 (1996a)
Ford, J.A., Moghrabi, I.A.: Using function-values in multi-step quasi-Newton methods. J. Comput. Appl. Math.
66(1–2), 201–211 (1996b)
Ford, J.A., Narushima, Y., Yabe, H.: Multi-step nonlinear conjugate gradient methods for unconstrained minimization.
Comput. Optim. Appl. 40(2), 191–216 (2008)
Forsgren, A., Gill, P.E., Murray, W.: Computing modified Newton directions using a partial Cholesky factorization.
SIAM J. Sci. Comput. 16(1), 139–150 (1995)
Forsgren, A., Gill, P.E., Wright, M.H.: Interior points for nonlinear optimization. SIAM Rev. 44, 525–597 (2002)
Forsythe, G.E., Hestenes, M.R., Rosser, J.B.: Iterative methods for solving linear equations. Bull. Am. Math. Soc. 57,
480 (1951)
Fourer, R.: Modeling languages versus matrix generators for linear programming. ACM Trans. Math. Softw. 9,
143–183 (1983)
Fourer, R., Gay, M., Kernighan, B.W.: AMPL: A Modeling Language for Mathematical Programming, 2nd edn.
Duxbury Press, Scituate (2002)
Frank, M., Wolfe, P.: An algorithm for quadratic programing. Naval Res. Logist. Q. 3, 95–110 (1956)
Friedlander, A., Martı́nez, J.M., Santos, S.A.: A new trust region algorithm for bound constrained minimization. Appl.
Math. Optim. 30, 235–266 (1994)
Friedlander, M.P., Saunders, M.: A globally convergent linearly constrained Lagrangian method for nonlinear optimi-
zation. SIAM J. Optim. 15, 863–897 (2005)
Frisch, K.R.: The logarithmic potential method for convex programming. (Manuscript. Institute of Economics,
University of Oslo, Oslo, May) (1955)
Fukushima, M.: A successive quadratic programming algorithm with global and superlinear convergence properties.
Math. Program. 35, 253–264 (1986)
Gabay, D.: Reduced quasi-Newton methods with feasibility improvement for nonlinearly constrained optimization.
Math. Program. Study. 16, 18–44 (1982)
Gabriele, G.A., Ragsdell, K.M.: Large scale nonlinear programming using the generalized reduced gradient method.
Trans. ASME J. Mech. Des. 102, 566–573 (1980)
Garner, J., Benedek, R.: Solution of Ginzburg-Landau equations for inhomogeneous superconductors by nonlinear
optimization. Phys. Rev. B. 42, 376–385 (1990)
Gay, D.M.: Computing optimal locally constrained steps. SIAM J. Sci. Stat. Comput. 2, 186–197 (1981)
Gay, D.M.: Electronic mail distribution of linear programming test problems. Math. Program. Soc. COAL Newsl. 13,
10–12 (1985)
Gay, D.M., Overton, M.L., Wright, M.H.: A primal-dual interior method for nonconvex nonlinear programming.
(Technical Report 97-4-08, Bell Lab. Murray Hill, July 29) (1997)
Ge, R.-P., Powell, M.J.D.: The convergence of variable metric matrices in unconstrained optimization. Math. Program.
27, 123–143 (1983)
George, A., Liu, J.W.-H.: The evolution of the minimum degree ordering. SIAM Rev. 31, 1–19 (1989)
Gilbert, J.C., Lemaréchal, C.: Some numerical experiments with variable-storage quasi-Newton algorithms. Math.
Program. Ser. B. 45, 407–435 (1989)
Gilbert, J.C.: SQPlab – A MATLAB software for solving nonlinear optimization problems and optimal control
problems. (Technical Report, INRIA-Rocquencourt, BP 105, F-78153 Le Chesnay Cedex, France) (2009)
Gilbert, J.C., Nocedal, J.: Global convergence properties of conjugate gradient methods for optimization. SIAM
J. Optim. 2, 21–42 (1992)
Gill, P.E., Kungurtsev, V., Robinson, D.P.: A stabilized SQP method: Global convergence. IMA J. Numer. Anal. 37,
407–443 (2017a)
Gill, P.E., Kungurtsev, V., Robinson, D.P.: A stabilized SQP method: Superlinear convergence. Math. Program. 163,
369–410 (2017b)
Gill, P.E., Leonard, M.W.: Limited-memory reduced-Hessian methods for unconstrained optimization. SIAM J. Optim.
14, 380–401 (2003)
Gill, P.E., Murray, W.: Quasi-Newton methods for unconstrained optimization. J. Inst. Math. Appl. 9, 91–108 (1972)
Gill, P.E., Murray, W.: Safeguarding steplength algorithms for optimization using descent methods. (Technical Report
NAC 37, National Physical Laboratory, Teddington, UK) (1974a)
References 779
Gill, P.E., Murray, W.: Methods for large-scale linearly constrained problems. In: Gill, P.E., Murray, W. (eds.)
Numerical Methods for Constrained Optimization, pp. 93–147. Academic Press, London, New York, San Francisco
(1974b)
Gill, P.E., Murray, W.: Numerically stable methods for quadratic programming. Math. Program. 14, 349–372 (1978)
Gill, Ph.E., Murray, W.: Conjugate gradient methods for large-scale nonlinear optimization. (Report SOL 79-15.
Department of Operations Research, Stanford University, Stanford) (1979)
Gill, P.E., Murray, W., Saunders, M.A., Wright, M.H.: Sparse matrix methods in optimization. (Technical Report
SOL82-17, Department of Operations Research, Stanford University, Stanford, California) (1982)
Gill, P.E., Murray, W., Saunders, M.A., Wright, M.H.: User’s guide for SOL/QPSOL. (Technical Report SOL84-6,
Department of Operations Research, Stanford University, Stanford, California) (1984)
Gill, P.E., Murray, W., Saunders, M.A., Wright, M.H.: User’s guide for NPSOL (version 4.0): A Fortran package for
nonlinear programming. (Report SOL 86-2, Department of Operations Research, Stanford University, Stanford,
CA) (1986)
Gill, P.E., Murray, W., Saunders, M.A., Wright, M.H.: Maintaining LU factors of a general sparse matrix. Linear
Algebra Appl. 88(89), 239–270 (1987)
Gill, P.E., Murray, W., Saunders, M.A., Wright, M.H.: Some theoretical properties of an augmented Lagrangean merit
function. In: Pardalos, P.M. (ed.) Advances in Optimization and Parallel Computing, pp. 101–128. North-Holland,
Amsterdam (1992)
Gill, P.E., Murray, W., Wright, M.H.: Practical Optimization. Academic Press, London (1981)
Gill, P.E., Murray, W., Saunders, M.A.: User’s guide for SNOPT (version 5.3): A Fortran package for large-scale
nonlinear programming. (Technical Report NA 97-4, Department of Mathematics, University of California, San
Diego) (1997)
Gill, P.E., Murray, W., Saunders, M.A.: SNOPT: A SQP algorithm for large-scale constrained optimization. SIAM
J. Optim. 12, 979–1006 (2002)
Gill, P.E., Murray, W., Saunders, M.A.: SNOPT: An SQP algorithm for large-scale constrained optimization. SIAM
Rev. 47, 99–131 (2005)
Gill, P.E., Murray, W., Saunders, M.A.: User’s guide for SQOPT Version 7: Software for large-scale nonlinear
programming. (Report, Department of Mathematics, University of California, San Diego) (2006)
Gill, P.E., Golub, G.H., Murray, W., Saunders, M.A.: Methods for modifying matrix factorizations. Math. Comput. 28,
505–535 (1974)
Glowinski, R.: Numerical Methods for Nonlinear Variational Problems. Springer, Berlin (1984)
€
G€odel, K.: Uber formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I. Monatshefte für
Mathematik und Physik. 38, 173–199 (1931)
Goldfarb, D.: A family of variable metric method derived by variation mean. Math. Comput. 23, 23–26 (1970)
Goldfarb, D.: Matrix factorizations in optimization of nonlinear functions subject to linear constraints. Math. Program.
10, 1–31 (1975)
Goldfarb, D.: Using the steepest-edge simplex algorithm to solve sparse linear programs. In: Bunch, J.R., Rose,
D. (eds.) Sparse Matrix Computations, pp. 227–240. Academic Press, New York (1976)
Goldfarb, D.: Curvilinear path steplength algorithms for minimization which use directions of negative curvature.
Math. Program. 18, 31–40 (1980)
Goldfarb, D., Liu, S., Wang, S.: A logarithmic barrier function algorithm for quadratically constrained convex quadratic
programming. SIAM J. Optim. 1(2), 252–267 (1991)
Goldfarb, D., Mu, C., Wright, J., Zhou, C.: Using negative curvature in solving nonlinear programs, arXiv preprint
arXiv:1706.00896 (2017)
Goldfarb, D., Idnani, A.: A numerically stable dual method for solving strictly convex quadratic programs. Math.
Program. 27, 1–33 (1983)
Goldfarb, D., Reid, J.K.: A practicable steepest-edge simplex algorithm. Math. Program. 12, 361–371 (1977)
Goldfeld, S.M., Quandt, R.E., Trotter, H.F.: Maximization by quadratic hill-climbing. Econometrica. 34, 541–551
(1966)
Goldstein, A.A.: On steepest descent. SIAM J. Control. 3, 147–151 (1965)
Goldstein, A.A., Price, J.: An effective algorithm for minimization. Numer. Math. 10, 184–189 (1967)
Golub, G.H., Van Loan, C.F.: Matrix Computation, 3rd edn. The Johns Hopkins University Press, Baltimore (1996)
Goncalves, A.S.: A primal-dual method for quadratic programming with bounded variables. In: Lootsma, F.A. (ed.)
Numerical Methods for Nonlinear Optimization, pp. 255–263. Academic Press, London (1972)
Goodman, J., Kohn, R., Reyna, L.: Numerical study of a relaxed variational problem from optimal design. Comput.
Methods Appl. Mech. Eng. 57, 107–127 (1986)
Gould, N.I.M.: On the accurate determination of search directions for simple differentiable penalty functions. IMA
J. Numer. Anal. 6, 357–372 (1986)
Gould, N.I.M.: An algorithm for large scale quadratic programming. IMA J. Numer. Anal. 11, 299–324 (1991)
780 References
Gould, N.I.M.: An Introduction to Algorithms for Continuous Optimization. Oxford University Computing Laboratory
and Rutherford Appleton Laboratory, UK (2006)
Gould, N.I.M., Hribar, M.E., Nocedal, J.: On the solution of equality constrained quadratic problems arising in
optimization. SIAM J. Sci. Comput. 23, 1375–1394 (2001)
Gould, N.I.M., Orban, D., Toint, P.L.: GALAHAD, a library of thread-safe Fortran 90 package for large-scale nonlinear
optimization. ACM Trans. Math. Softw. 29(4), 353–372 (2004)
Gould, N.I.M., Orban, D., Toint, P.L.: Numerical methods for large-scale nonlinear optimization. Acta Numer. 14,
299–361 (2005a)
Gould, N.I.M., Robinson, D.P.: A second derivative SQP methods: Local convergence. (Numerical Analysis Report
08/21, Oxford University Computing Laboratory) (2008)
Gould, N.I.M., Robinson, D.P.: A second derivative SQP methods: Global convergence. SIAM J. Optim. 20,
2023–2048 (2010)
Gould, N.I.M., Sainvitu, C., Toint, P.L.: A filter-trust-region method for unconstrained optimization. SIAM J. Optim.
16, 341–357 (2005b)
Gould, N.I.M., Toint, P.L.: Numerical methods for large-scale non-convex quadratic programming. In: Siddiqi, A.H.,
Kocvara, M. (eds.) Trends in Industrial and Applied Mathematics, pp. 149–179. Kluwer Academic Publishers,
Dordrecht (2002a)
Gould, N.I.M., Toint, P.L.: An iterative working-set method for large-scale non-convex quadratic programming. Appl.
Numer. Math. 43, 09–128 (2002b)
Gould, N.I.M., Toint, P.L.: Preprocessing for quadratic programming. Math. Program. 100(1), 95–132 (2004)
Gould, N.I.M., Toint, Ph.L.: A Quadratic Programming Bibliography. (RAL Numerical Analysis Group Internal Report
2000–1, March 28) (2012)
Greenbaum, A.: Iterative Methods for Solving Linear Systems. Frontiers in Applied Mathematics. SIAM, Philadelphia
(1997)
Greenbaum, A., Strakoš, Z.: Predicting the behavior of finite precision Lanczos and conjugate gradient computations.
SIAM J. Matrix Anal. Appl. 13, 121–137 (1992)
Griewank, A.: Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation. SIAM, Philadelphia
(2000)
Griewank, A., Toint, P.L.: Partitioned variable metric updates for large structured optimization problems. Numer. Math.
39, 119–137 (1982a)
Griewank, A., Toint, P.L.: Local convergence analysis of partitioned quasi-Newton updates. Numer. Math. 39, 429–448
(1982b)
Griffith, R.E., Stewart, R.A.: A nonlinear programming technique for the optimization of continuous processing
systems. Manag. Sci. 7(4), 379–392 (1961)
Grippo, L., Lampariello, F., Lucidi, S.: A nonmonotone line search technique for Newton’s method. SIAM J. Numer.
Anal. 23, 707–716 (1986)
Grippo, L., Lampariello, F., Lucidi, S.: A truncated Newton method with nonmonotone line search for unconstrained
optimization. J. Optim. Theory Appl. 60, 401–419 (1989)
Grippo, L., Lampariello, F., Lucidi, S.: A class of nonmonotone stabilization methods in unconstrained optimization.
Numer. Math. 59, 779–805 (1991)
Grippo, L., Sciandrone, M.: Nonmonotone globalization techniques for the Barzilai-Borwein gradient method. Comput.
Optim. Appl. 23, 143–169 (2002)
Griva, I., Nash, S.G., Sofer, A.: Linear and Nonlinear Optimization, 2nd edn. SIAM, Philadelphia (2009)
Gr€
otschel, M.: Optimization Stories. Documenta Mathematica, Journal der Deutschen Mathematiker-Vereinigung,
Berlin (2012)
Gu, N.Z., Mo, J.T.: Incorporating nonmonotone strategies into the trust region method for unconstrained optimization.
Comput. Math. Appl. 55, 2158–2172 (2008)
Guéret, C., Prins, C., Sevaux, M.: Applications of Optimization with Xpress-MP. Dash Optimization (2002)
Guo, Q., Liu, J.G., Wang, D.H.: A modified BFGS method and its superlinear convergence in nonconvex minimization
with general line search rule. J. Appl. Math. Comput. 28(1–2), 435–446 (2008)
Hager, W.W., Zhang, H.: A new conjugate gradient method with guaranteed descent and an efficient line search. SIAM
J. Optim. 16(2005), 170–192 (2005)
Hager, W.W., Zhang, H.: Algorithm 851: CG-Descent, a conjugate gradient method with guaranteed descent. ACM
Trans. Math. Softw. 32(1), 113–137 (2006a)
Hager, W.W., Zhang, H.: A survey of nonlinear conjugate gradient methods. Pac. J. Optim. 2(1), 35–58 (2006b)
Han, S.P.: Superlinearly convergent variable metric algorithms for general nonlinear programming problems. Math.
Program. 11, 263–282 (1976)
Han, S.P.: A globally convergent method for nonlinear programming. J. Optim. Theory Appl. 22, 297–309 (1977)
References 781
Han, J.Y., Liu, G.H., Yin, H.X.: Convergence of Perry and Shanno’s memoryless quasi-Newton method for nonconvex
optimization problems. OR Trans. 1, 22–28 (1997)
Han, S.P., Mangasarian, O.L.: Exact penalty functions in nonlinear programming. Math. Program. 17, 251–269 (1979)
Han, X., Zhang, J., Chen, J.: A new hybrid conjugate gradient algorithm for unconstrained optimization. Bull. Iranian
Math. Soc. 43(6), 2067–2084 (2017)
Heinkenschlos, M., Ulbrich, M., Ulbrich, S.: Superlinear and quadratic convergence of affine-scaling interior-point
Newton methods for problems with simple bounds without strict complementarity assumption. Math. Program. 86,
615–635 (1999)
Hellerman, E., Rarick, D.: Reinversion with the preassigned pivot procedure. Math. Program. 1, 195–216 (1971)
Hellerman, E., Rarick, D.: The partitioned preassigned pivot procedure (P4). In: Rose, D.J., Willoughby, R.A. (eds.)
Sparse Matrices and Their Applications, pp. 67–76. Plenum Press, New York (1972)
Herskovits, J.: A view on nonlinear optimization. In: Herskovits, J. (ed.) Advances in Structural Optimization. Kluwer
Academic Publishers, Dordrecht (1995)
Hestenes, M.R.: Iterative methods for solving linear equations. J. Optim. Theory Appl. 11, 323–334 (1951)
Hestenes, M.R.: Iterative computational methods. Commun. Pure Appl. Math. 8, 85–96 (1955)
Hestenes, M.R.: The conjugate–gradient method for solving linear systems. In: Proceedings of the Sixth Symposium in
Applied Mathematics 1953, pp. 83–102. McGraw-Hill, New York (1956a)
Hestenes, M.R.: Hilbert space methods in variational theory and numerical analysis. In: Proceedings of the International
Congress of Mathematicians 1954, pp. 229–236, North-Holland, Amsterdam (1956b)
Hestens, M.R.: Multiplier and gradient methods. J. Optim. Theory Appl. 4, 303–320 (1969)
Hestenes, M.R.: Conjugate-Gradient Methods in Optimization. Springer, Berlin (1980)
Hestenes, M.R., Stiefel, E.: Methods of conjugate gradients for solving linear systems. J. Res. Natl. Bur. Stand. 49,
409–436 (1952)
Himmelblau, D.M.: Applied Nonlinear Programming. McGraw-Hill, New York (1972)
Hock, W., Schittkowski, K.: Test Examples for Nonlinear Programming Codes Lecture Notes in Economics and
Mathematical Systems, vol. 187. Springer, Berlin (1981)
Hooke, R., Jeeves, T.A.: Direct search solution of numerical and statistical problems. J. Assoc. Comput. Mach. 8,
212–229 (1961)
Horst, R., Pardalos, P.M., Thoai, N.V.: Introduction to Global Optimization, 2nd edn. Kluwer Academic Publishers,
Dordrecht (2000)
Hough, P., Kolda, T., Torczon, V.: Asynchronous parallel pattern search for nonlinear optimization. SIAM J. Optim. 23,
134–156 (2001)
Hu, Y.F., Storey, C.: Global convergence result for conjugate gradient methods. J. Optim. Theory Appl. 71, 399–405
(1991)
Huang, S., Wan, Z., Chen, X.: A new nonmonotone line search technique for unconstrained optimization. Numer.
Algorithms. 68, 671–689 (2014)
Huang, H., Wei, Z., Yao, S.: The proof of the sufficient descent condition of the Wei-Yao-Liu conjugate gradient
method under the strong Wolfe-Powell line search. Appl. Math. Comput. 189, 1241–1245 (2007)
Hürlimann, T.: Mathematical Modeling and Optimization: An Essay for the Design of Computer-Based Modeling
Tools. Springer, Berlin (1999)
ILOG CPLEX 8.0: User’s Manual, ILOG SA Gentilly, France (2002)
Irizarry, R.: A generalized framework for solving dynamic optimization problems using the artificial chemical process
paradigm: Applications to particulate processes and discrete dynamic systems. Chem. Eng. Sci. 60, 5663–5681
(2005)
Jensen, D.L., Polyak, R.: The convergence of a modified barrier method for convex programming. (Research Report RC
18570, IBM Research Division, T.J. Watson Research Center, Yorktown Heights, New York) (1992)
Jiao, B.C., Chen, L.P., Pan, C.Y.: Convergence properties of a hybrid conjugate gradient method with Goldstein line
search. Math. Numer. Sin. 29(2), 137–146 (2007)
Jian, J., Han, L., Jiang, X.: A hybrid conjugate gradient method with descent property for unconstrained optimization.
Appl. Math. Comput. 39(3–4), 1281–1290 (2015)
Jittorntrum, K., Osborne, M.: A modified barrier function method with improved rate of convergence for degenerate
problems. J. Aust. Math. Soc. Ser. B. 21, 305–329 (1980)
John, F.: Extremum problems with inequalities as subsidiary conditions. In: Studies and Essays, Presented to R. Courant
on his 60th birthday, January 8, 1948, pp. 187–204. Interscience, New York (1948)
Jones, D., Perttunen, C., Stuckman, B.: Lipschitzian optimization without the Lipschitz constant. J. Optim. Theory
Appl. 79, 157–181 (1993)
Kalan, J.E.: Aspects of large-scale in-core linear programming. In: Proceedings of the ACM, pp. 304–313 (1971)
Kall, P., Wallace, S.W.: Stochastic Programming. Wiley, New York (1994)
782 References
Kallrath, J., Wilson, J.M.: Business Optimization Using Mathematical Programming. Macmillan (Palgrave),
Basingstoke (1997)
Karmarkar, N.: A new polynomial time algorithm for linear programming. Combinatorica. 4, 373–395 (1984)
Karush, W.: Minima of Functions of Several Variables with Inequalities as Side Constraints. M.Sc. Dissertation,
Department of Mathematics, University of Chicago, Chicago, Illinois (1939)
Kearfott, R., Novoa, M.: INTBIS, a portable interval Newton bisection package. ACM Trans. Math. Softw. 16, 152–157
(1990)
Keller, C., Gould, N.I.M., Wathen, A.J.: Constraint preconditioning for indefinite linear systems. SIAM J. Matrix Anal.
Appl. 21, 1300–1317 (2000)
Kelley, C.T.: Iterative Methods for Linear and Nonlinear Equations. Frontiers in Applied Mathematics. SIAM,
Philadelphia (1995)
Kelley, C.T.: Iterative Methods for Optimization, No 18 in Frontiers in Applied Mathematics. SIAM Publications,
Philadelphia (1999)
Kelley, C.T., Sachs, E.W.: Local convergence of the symmetric rank one iteration. Comput. Optim. Appl. 9, 43–63
(1998)
Khalfan, H.F., Byrd, R.H., Schnabel, R.B.: A theoretical and experimental study of the symmetric rank-one update.
SIAM J. Optim. 3(1), 1–24 (1993)
Kim, K.: The effective integration of simplex and interior point thechniques. Part I: Decomposition. Part II: Null-space
affine scaling. Ph.D. Thesis, Department of Pure and Applied Mathematics, Washington State University, Pullman,
Washington (1991)
Kim, K., Nazareth, J.L.: Implementation of a primal null-space affine scaling method and its extensions. (Technical
Report 92-1, Washington State University, Pullman, Washington) (1992)
Kim, K., Nazareth, J.L.: A primal null-space affine-scaling method. ACM Trans. Math. Softw. 20(3), 373–392 (1994)
Kocvara, M., Stingl, M.: PENNON – A code for convex nonlinear and semidefinite programming. Optim. Methods
Softw. 18(3), 317–333 (2003)
Kolda, T.G., Lewis, R.M., Troczon, V.: Optimization by direct search: New perspectives on some classical and modern
methods. SIAM Rev. 45, 385–482 (2003)
Kollerstrom, N.: Thomas Simpson and “Newton’s method of approximation”: An enduring myth. Br. J. Hist. Sci. 25(3),
347–354 (1992)
Kortanek, K.O., Potra, F.A., Ye, Y.: On some efficient interior point methods for nonlinear convex programming.
Linear Algebra Appl. 152, 169–189 (1991)
Kou, C.X., Dai, Y.H.: A modified self-scaling memoryless Broyden-Fletcher-Goldfarb-Shanno method for uncon-
strained optimization. J. Optim. Theory Appl. 165, 209–224 (2015)
Kuhn, H.W., Tucker, A.W.: Nonlinear programming. In: Proceedings of 2nd Berkeley Symposium, pp. 481–492.
University of California Press, Berkeley (1951)
Lagarias, J.C., Reeds, J.A., Wright, M.H., Wright, P.E.: Convergence properties of the Nelder-Mead simplex algorithm
in low dimensions. SIAM J. Optim. 9, 112–147 (1998)
Lalee, M., Nocedal, J., Plantenga, T.: On the implementation of an algorithm for large-scale equality constrained
optimization. SIAM J. Optim. 8, 682–706 (1998)
Lanczos, C.: An iteration method for the solution of the eigenvalue problem of linear differential and integral
operators. J. Res. Natl. Bur. Stand. 45, 252–282 (1950)
Lanczos, C.: Solution of systems of linear equations by minimized iterations. J. Res. Natl. Bur. Stand. 49, 33–53 (1952)
Lapidus, L., Luus, R.: The control of nonlinear systems: Part II: Convergence by combined first and second variations.
AIChE J. 13, 108–113 (1967)
Larrosa, J.A.E.: New heuristics for global optimization of complex bioprocesses. Ph.D. Thesis, Universidade de Vigo,
Departamento de Enxeñerı́a Quı́mica, Vigo (2008)
Larson, J., Menickelly, M., Wild, S.M.: Derivative-free optimization methods. (Mathematics and Computer Science
Division, Argonne National Laboratory, Lemont, IL 60439, USA) (2019)
Lasdon, L.S., Fox, R.L., Ratner, M.W.: Nonlinear optimization using the generalized reduced gradient method. RAIRO.
3, 73–104 (1974)
Lasdon, L.S., Waren, A.D.: Generalized reduced gradient software for linearly and nonlinearly constrained
problems. In: Greenberg, H.J. (ed.) Design and Implementation of Optimization Software, pp. 335–362. Sijthoff
and Noordhoff, Holland (1978)
Lasdon, L.S., Waren, A.D.: A survey of nonlinear programming applications. Oper. Res. 28, 34–50 (1980)
Lasdon, L.S., Waren, A.D.: GRG2 User’s Guide. (Department of General Business, School of Business Administration,
University of Texas, Austin, May 1982) (1982)
Lasdon, L.S., Waren, A.D., Jain, A., Ratner, M.: Design and testing of a generalized reduced gradient code for nonlinear
programming. ACM Trans. Math. Softw. 4, 34–50 (1978)
References 783
Lemaréchal, C.: A view of line search. In: Auslander, A., Oettli, W., Stoer, J. (eds.) Optimization and Optimal Control,
pp. 59–78. Springer, Berlin (1981)
Lemaréchal, C., Nemirovskii, A., Nesterov, Y.: New variants of bundle methods. Math. Program. 69, 111–147 (1995)
Lemke, C.E.: A method of solution for quadratic programs. Manag. Sci. 8, 442–453 (1962)
Lenstra, J.K., Rinnooy Kan, A.H.G., Schrijver, A. (eds.): History of Mathematical Programming. A Collection of
Personal Reminiscences. CWI Amsterdam and North-Holland, Amsterdam (1991)
Lescrenier, M.: Convergence of trust region algorithms for optimization with bounds when strict complementarity does
not hold. SIAM J. Numer. Anal. 28, 476–495 (1991)
Levenberg, K.: A method for the solution of certain problems in least squares. Q. Appl. Math. 2, 164–168 (1944)
Levitin, E.S., Polyak, B.T.: Constrained minimization problems. USSR Comput. Math. Math. Phys. 6, 1–50 (1966)
Lewis, R.M., Torczon, V., Trosset, M.W.: Direct search methods: then and now. J. Comput. Appl. Math. 124(1–2),
191–207 (2000)
Leyffer, S., Mahajan, A.: Foundations of Constrained Optimization. (Preprint ANL/MCS-P1767-0610. Argonne
National Laboratory, Mathematics and Computer Science Division, June 17) (2010)
Li, D.H., Fukushima, M.: A modified BFGS method and its global convergence in nonconvex minimization. J. Comput.
Appl. Math. 129(1–2), 15–35 (2001a)
Li, D.H., Fukushima, M.: On the global convergence of the BFGS method for nonconvex unconstrained optimization
problems. SIAM J. Optim. 11(4), 1054–1064 (2001b)
Liao, A.: Modifying BFGS method. Oper. Res. Lett. 20, 171–177 (1997)
Lin, C.-J., Moré, J.J.: Newton’s method for large bound-constrained optimization problems. SIAM J. Optim. 9,
1100–1127 (1999)
Lin, Y., Cryer, C.W.: An alternating direction implicit algorithm for the solution of linear complementarity problems
arising from free boundary problems. Appl. Math. Optim. 13, 1–7 (1985)
Liu, J.K., Li, S.J.: New hybrid conjugate gradient method for unconstrained optimization. Appl. Math. Comput. 245,
36–43 (2014)
Liu, H.W., Liu, Z.X.: An efficient Barzilai-Borwein conjugate gradient method for unconstrained
optimization. J. Optim. Theory Appl. 180(3), 879–906 (2019)
Liu, D.C., Nocedal, J.: On the limited-memory BFGS method for large optimization. Math. Program. 45, 503–528
(1989)
Liu, Y., Storey, C.: Efficient generalized conjugate gradient algorithms. Part 1: Theory. J. Optim. Theory Appl. 69,
129–137 (1991)
Liuzzi, G., Lucidi, S., Sciandrone, M.: Sequential penalty derivative-free methods for nonlinear constrained optimiza-
tion. SIAM J. Optim. 20, 2614–2635 (2010)
Livieris, I.E., Tampakas, V., Pintelas, P.: A descent hybrid conjugate gradient method based on the memoryless BFGS
update. Numer. Algorithms. 79(4), 1169–1185 (2018)
Lucia, A.: An explicit quasi-Newton update for sparse optimization calculations. Math. Comput. 40(161), 317–322
(1983)
Luenberger, D.G.: Introduction to Linear and Nonlinear Programming. Addison-Wesley Publishing Company, Reading
(1973)
Luenberger, D.G.: Introduction to Linear and Nonlinear Programming, 2nd edn. Addison-Wesley Publishing Company,
Reading (1984)
Luenberger, D.G., Ye, Y.: Linear and Nonlinear Programming. International Series in Operations Research &
Management Science 228, 4th edn. Springer, New York (2016)
Lustig, I.J., Marsten, R.E., Shanno, D.F.: The primal-dual interior point method on the Cray supercomputer. In:
Coleman, T.F., Li, Y. (eds.) Large-Scale Numerical Optimization, pp. 70–80. SIAM, Philadelphia (1990)
Lustig, I.J., Marsten, R.E., Shanno, D.F.: Computational experience with a primal-dual interior point method for linear
programming. Linear Algebra Appl. 152, 191–222 (1991)
Lustig, I.J., Marsten, R.E., Shanno, D.F.: On implementing Mehrotra’s predictor-corrector interior-point method for
linear programming. SIAM J. Optim. 2(3), 435–449 (1992)
Lustig, I.J., Marsten, R.E., Shanno, D.F.: Computational experience with a globally convergent primal-dual predictor-
corrector algorithm for linear programming. Math. Program. 66, 123–135 (1994)
Luus, R.: Picewise linear continuous optimal control by iterative dynamic programming. Ind. Eng. Chem. Res. 32,
859–865 (1993)
Mangasarian, O.L.: Nonlinear Programming. McGraw-Hill, New York. [Reprinted by SIAM Publications, 1995]
(1969)
Mangasarian, O.: Nonlinear Programming. McGraw-Hill, New York. [Reprinted by SIAM Publications, Philadelphia,
USA, 1969] (1995)
Manne, A.S.: ETA-MACRO: A model of energy-economy interactions. In: Hitch, C.J. (ed.) Modeling Energy-
Economy Interactions: Five Approaches. Resources for the Future, Washington, DC (1977)
784 References
Marquardt, D.W.: An algorithm for least-squares estimation of nonlinear parameters. SIAM. 11(2), 431–441 (1963)
Matthews, A., Davies, D.: A comparison of modified Newton methods for unconstrained optimization. Comput. J. 14,
293–294 (1971)
Mayne, D.Q., Polak, E.: A superlinearly convergent algorithm for constrained optimization problems. Math. Program.
Stud. 16, 45–61 (1982)
Maratos, N.: Exact penalty function algorithms for finite-dimensional and control optimization problems. Ph. D. Thesis,
University of London (1978)
Marazzi, M., Nocedal, J.: Wedge trust region methods for derivative free optimization. Math. Program. Ser. A. 91,
289–305 (2002)
Markowitz, H.M.: Portofolio selection. J. Financ. 8, 77–91 (1952)
Markowitz, H.M.: The elimination form of the inverse and its application to linear programming. Manag. Sci. 3,
255–269 (1957)
McCormick, P., Ritter, K.: Alternative proofs of the convergence properties of the conjugate gradient method. J. Optim.
Theory Appl. 13(5), 497–518 (1974)
McKinney, D.C., Savitsky, A.G.: Basic optimization models for water and energy management. June 1999 (revision
6, February 2003) (2003)
Megiddo, N.: Chapter 8: Pathways to the optimal set in linear programming. In: Megiddo, N. (ed.) Progress in
Mathematical Programming: Interior-Point and Related Methods, pp. 131–158. Springer, New York (1989)
Mehrotra, S.: On the implementation of a (primal-dual) interior point method. (Technical Report 90-03, Department of
Industrial Engineering and Management Sciences, Northwestern University, Evanston, Illinois 60208) (1989)
Mehrotra, S.: On the implementation of a primal-dual interior point method. SIAM J. Optim. 2, 575–601 (1992)
Meintjes, K., Morgan, A.P.: Chemical-equilibrium systems as numerical test problems. ACM Trans. Math. Softw. 16,
143–151 (1990)
Mészáros, C.: The inexact minimum local fill-in ordering algorithm. Working Paper 95-7, Computer and Automation
Institute, Hungarian Academy of Sciences, Budapest, Hungary (1995)
Meyer, C.D.: Matrix Analysis and Applied Linear Algebra. SIAM, Philadelphia (2000)
Mizuno, S., Todd, M.J., Ye, Y.: On adaptive-step primal-dual interior-point algorithms for linear programming. Math.
Oper. Res. 18, 964–981 (1993)
Moré, J.J.: Recent developments in algorithms and software for trust-region methods. In: Bachem, A., Gr€ otschel, M.,
Korte, B. (eds.) Mathematical Programming: State of the Art, pp. 258–287. Springer, Berlin (1983)
Moré, J.J., Sorensen, D.C.: On the use of direction of negative curvature in modified Newton method. Math. Program.
16, 1–20 (1979)
Moré, J.J., Sorensen, D.C.: On the use of directions of negative curvature in a modified Newton method. Math. Program.
16, 1–20 (1983)
Moré, J.J., Sorensen, D.C.: Newton’s method. In: Studies in Numerical Analysis, vol. 24 of MAA Studies in
Mathematics, pp. 29–82. The Mathematical Association of America (1984)
Moré, J.J., Thuente, D.J.: On the line search algorithms with guaranteed sufficient decrease. (Mathematics and
Computer Science Division Preprint MCS-P153-0590, Argonne National Laboratory, Argonne. IL) (1990)
Moré, J.J., Thuente, D.J.: Line search algorithms with guaranteed sufficient decrease. (Mathematics and Computer
Science Division, Preprint MCS-P330-1092, Argonne National Laboratory, October) (1992)
Moré, J.J., Thuente, D.J.: Line search algorithms with guaranteed sufficient decrease. ACM Trans. Math. Softw. 20,
286–307 (1994)
Moré, J.J., Toraldo, G.: Algorithms for bound constrained quadratic programming problems. Numer. Math. 55,
377–400 (1989)
Moré, J.J., Toraldo, G.: On the solution of large quadratic programming problems with bound constraints. SIAM
J. Optim. 1, 93–113 (1991)
Morgan, A.P.: Solving Polynomial Systems Using Continuation for Scientific and Engineering Problems. Prentice Hall,
Englewood Cliff (1987)
Murtagh, B.A., Saunders, M.A.: Large-scale linearly constrained optimization. Math. Program. 14, 41–72 (1978)
Murtagh, B.A., Saunders, M.A.: MINOS/AUGMENTED User’s Manual. (Technical Report SOL 80-14, Systems
Optimization Laboratory, Department of Operations Research, Stanford University, Stanford, California, CA
94305) (1980)
Murtagh, B.A., Saunders, M.A.: A projected Lagrangian algorithm and its implementation for sparse nonlinear
constraints. Math. Program. Study. 16, 84–117 (1982)
Murtagh, B.A., Saunders, M.A.: MINOS 5.0. User’s Guide. (Technical Report SOL 83-20, Department of Operations
Research, Stanford University, 1983. [Revised as MINOS 5.1 User’s Guide, Report SOL 83-20R, 1987]) (1987)
Murtagh, B.A., Saunders, M.A.: MINOS 5.4 User’s Guide. (Technical Report SOL 83-20R, Systems Optimization
Laboratory, Department of Operations Research, Stanford University, Stanford, California, CA 94305, February)
(1995)
References 785
Murray, W., Overton, M.L.: Steplength algorithms for minimizing a class of nondifferentiable functions. Computing.
23, 309–331 (1979)
Murty, K.G., Kabadi, S.N.: Some NP-complete problems in quadratic and nonlinear programming. Math. Program. 19,
200–212 (1987)
Naiman, A.E., Babuska, I.M., Elman, H.C.: A note on conjugate gradient convergence. Numer. Math. 76, 209–230
(1997)
NAG – The Numerical Algorithms Group Ltd: Mathematical optimization software. https://www.nag.com/
Narushima, Y., Wakamatsu, T., Yabe, H.: Extended Barzilai-Borwein method for unconstrained optimization
problems. Pac. J. Optim. 6(3), 591–614 (2008)
Narushima, Y., Yabe, H., Ford, J.A.: A three-term conjugate gradient method with sufficient descent property for
unconstrained optimization. SIAM J. Optim. 21, 212–230 (2011)
Nash, S.G.: Newton-type minimization via the Lanczos method. SIAM J. Numer. Anal. 21, 770–788 (1984a)
Nash, S.G.: User’s guide for TN/TNBC: Fortran routines for nonlinear optimization. (Report 397, Baltimore, MD:
Mathematical Sciences Department, The John Hopking University) (1984b)
Nash, S.G.: Preconditioning of truncated-Newton methods. SIAM J. Sci. Stat. Comput. 6, 599–616 (1985)
Nash, S.G.: SUMT (revisited). Oper. Res. 46, 763–775 (1998)
Nash, S.G.: A survey of truncated-Newton methods. J. Comput. Appl. Math. 124, 45–59 (2000)
Nash, S.G., Nocedal, J.: A numerical study of the limited memory BFGS method and the truncated-Newton method for
large-scale optimization. SIAM J. Optim. 1, 358–372 (1991)
Nash, S.G., Polyak, R., Sofer, A.: A numerical comparison of barrier and modified-barrier methods for large-scale
bound-constrained optimization. In: Hager, W.W., Hearn, D.W., Pardlos, P.M. (eds.) Large Scale Optimization:
State of the Art, pp. 319–338. Kluwer Academic Publishers, Dordrecht, Boston, London (1994)
Navon, I.M., Legler, D.M.: Conjugate gradient methods for large-scale minimization in meteorology. Mon. Weather
Rev. 115, 1479–1502 (1987)
Nazareth, J.L.: A conjugate direction algorithm without line search. J. Optim. Theory Appl. 23, 373–387 (1977)
Nazareth, J.L.: Conjugate gradient methods less dependent on conjugacy. SIAM Rev. 28(4), 501–511 (1986)
Nazareth, J.L.: Computer Solution of Linear Programs. Oxford University Press, New York (1987)
Nelder, J.A., Mead, R.: A simplex method for function minimization. Comput. J. 7(4), 308–313 (1965)
Nelson, C.V., Hodgkin, B.C.: Determination of magnitudes, directions and locations of two independent dipoles in a
circular conducting region from boundary potential measurements. IEEE Trans. Biomed. Eng. 28, 817–823 (1981)
Nemirovskii, A., Todd, M.: Interior point methods for optimization. Acta Numer. 17, 181–234 (2008)
Nemirovsky, A.S., Yudin, D.B.: Problem Complexity and Method Efficiency in Optimization. Wiley-Interscience
Series in Discrete Mathematics, New York (1983)
Nemhauser, G.L., Wolsey, L.A.: Integer and Combinatorial Optimization. Wiley, New York (1988)
Nesterov, Y., Nemirovskii, A.: Interior-Point Polynomial Algorithms in Convex Programming. SIAM, Philadelphia
(1994)
Ng, E., Peyton, B.W.: Block sparse Cholesky algorithms on advanced uniprocessor computers. SIAM J. Sci. Comput.
14, 1034–1056 (1993)
Ni, Q., Yuan, Y.: A subspace limited memory quasi-Newton algorithm for large-scale nonlinear bound constrained
optimization. Math. Comput. 66, 1509–1520 (1997)
Nishida, N., Liu, Y.A., Lapidus, L., Hiratsuka, S.: An effective computational algorithm for suboptimal singular and/or
bang-bang control. AICHE J. 22(3), 505–513 (1976)
Nitsche, J.C.C.: Lectures on Minimal Surfaces, vol. 1. Cambridge University Press, Cambridge, UK (1989)
Nocedal, J.: Updating quasi-Newton matrices with limited storage. Math. Comput. 35, 773–782 (1980)
Nocedal, J.: Theory of algorithms for unconstrained optimization. Acta Numer. 1, 199–242 (1992)
Nocedal, J.: Conjugate gradient methods and nonlinear optimization. In: Adams, L., Nazareth, J.L. (eds.) Linear and
Nonlinear Conjugate Gradient-Related Methods, pp. 9–23. SIAM, Philadelphia (1996)
Nocedal, J., Wächter, A., Waltz, R.A.: Adaptive barrier strategies for nonlinear interior methods. (Technical Report RC
23563, IBM Watson Research Center, Yorktown Heights, NY, USA) (2005)
Nocedal, J., Wright, S.J.: Numerical Optimization. Springer Series in Operations Research, 2nd edn. Springer Science +
Business Media, New York (2006)
Nocedal, J., Yuan, Y.X.: Analysis of self-scaling quasi-Newton method. Math. Program. 61, 19–37 (1993)
Omojokun, E.: Trust region algorithms for optimization with nonlinear equality and inequality constraints. Ph.D.
Dissertation, Department of Computer Science, University of Colorado (1989)
O’Neill, R.: Algorithm AS 47: Function minimization using a simplex procedure. Appl. Stat. 20(3), 338–345 (1971)
Oren, S.S. Self-scaling variable metric algorithms for unconstrained optimization. Ph.D. Thesis, Department of
Engineering-Economic Systems, Stanford University, Stanford (1972)
Oren, S.S.: Self-scaling variable metric algorithm. Part II. Manag. Sci. 20, 863–874 (1974)
786 References
Oren, S.S., Luenberger, D.G.: Self-scaling variable metric (SSVM) algorithms, part I: criteria and sufficient conditions
for scaling a class of algorithms. Manag. Sci. 20, 845–862 (1974)
Oren, S.S., Spedicato, E.: Optimal conditioning of self-scaling variable metric algorithm. Math. Program. 10, 70–90
(1976)
Ortega, J.M., Rheinboldt, W.C.: Iterative Solutions of Nonlinear Equations in Several Variables. SIAM Classics in
Applied Mathematics. Society for Industrial and Applied Mathematics, Philadelphia (2000)
Ou, Y., Liu, Y.: A memory gradient method based on the nonmonotone technique. J. Ind. Manag. Optim. 13(2),
857–872 (2017)
Ou, Y., Lin, H.: A class of accelerated conjugate-gradient-like methods based on a modified secant equation. J. Ind.
Manag. Optim. 16(3), 1503–1518 (2020)
Panier, E.R., Tits, A.L.: Avoiding the Maratos effect by means of a nonmonotone line search. I: General constrained
problema. SIAM J. Numer. Anal. 28, 1183–1195 (1991)
Pant, M., Thangaraj, R., Singh, V.P.: Particle swarm optimization with crossover operator and its engineering
applications. IAENG Int. J. Comput. Sci. 36, 112–121 (2009)
Papadimitriou, C.H., Steiglitz, K.: Combinatorial Optimization: Algorithms and Complexity. Prentice Hall, Englewood
Cliffs (1982)
Pardalos, P.M., Rosen, J.B.: Constrained Global Optimization: Algorithms and Applications. Springer, Berlin (1987)
Peressini, A.L., Sullivan, F.E., Uhl, J.J.: The Mathematics of Nonlinear Programming. Springer, New York Inc (1988)
Perry, A.: A modified conjugate gradient algorithm. (Discussion Paper No. 229, Center for Mathematical Studies in
Economics and Management Science, Northwestern University) (1976)
Perry, A.: A class of conjugate gradient algorithms with two step variable metric memory. (Discussion paper
269, Center for Mathematical Studies in Economics and Management Science. Northwestern University, IL,
USA) (1977)
Peyret, R., Taylor, T.D.: Computational Methods for Fluid Flow. Springer, New York (1985)
Polak, E., Ribiére, G.: Note sur la convergence de méthods de direction conjugées. Revue Francaise d’Informatique et
de Recherche Opérationnelle. 16, 35–43 (1969)
Polyak, B.T.: The conjugate gradient method in extremal problems. USSR Comput. Math. Math. Phys. 9, 94–112
(1969)
Polyak, R.: Modified barrier functions (theory and methods). Math. Program. 54, 177–222 (1992)
Potra, F.A., Rheinboldt, W.C.: On the monotone convergence of Newton’s method. Computing. 36(1), 81–90 (1986)
Potra, F.A., Shi, Y.: Efficient line search algorithm for unconstrained optimization. J. Optim. Theory Appl. 85, 677–704
(1995)
Powell, M.J.D.: An efficient method for finding the minimum of a function of several variables without calculating
derivatives. Comput. J. 17, 155–162 (1964)
Powell, M.J.D.: A method for nonlinear constraints in optimization problems. In: Fletcher, R. (ed.) Optimization,
pp. 283–297. Academic Press, New York (1969)
Powell, M.J.D.: Convergence properties of a class of minimization algorithms. In: Mangasarian, O., Meyer, R.,
Robinson, S. (eds.) Nonlinear Programming 2, pp. 1–27. Academic Press, New York (1975)
Powell, M.J.D.: Some global convergence properties of a variable-metric algorithm for minimization without exact line
searches. In: Cottle, R.W., Lemke, C.E. (eds.) Nonlinear Programming, SIAM-AMS Proceedings, vol. 9, pp. 53–72,
Philadelphia, PA, USA (1976)
Powell, M.J.D.: Restart procedures of the conjugate gradient method. Math. Program. 2, 241–254 (1977)
Powell, M.J.D.: A fast algorithm for nonlinearly constrained optimization calculations. In: Watson, G.A. (ed.) Numeri-
cal Analysis, Dundee 1977, Lecture Notes in Mathematics, vol. 630, pp. 144–157. Springer, Berlin (1978a)
Powell, M.J.D.: The convergence of variable metric methods of nonlinearly constrained optimization calculations. In:
Mangasarian, O.L., Meyer, R.R., Robinson, S.M. (eds.) Nonlinear Programming 3, pp. 27–63. Academic Press,
New York (1978b)
Powell, M.J.D.: Algorithms for nonlinear constraints that use Lagrangian functions. Math. Program. 14, 224–248
(1978c)
Powell, M.J.D.: ZQPCVX: A Fortran subroutine for convex quadratic programming. (Technical Report, Department of
Applied Mathematics and Theoretical Physics, Cambridge University) (1983)
Powell, M.J.D.: Nonconvex minimization calculations and the conjugate gradient method. In: Griffiths, D.F. (ed.)
Numerical Analysis (Dundee, 1983), Lecture Notes in Mathematics, vol. 1066, pp. 122–141 (1984)
Powell, M.J.D.: How bad are the BFGS and DFP methods when the objective function is quadratic? Math. Program. 34,
34–47 (1986a)
Powell, M.J.D.: Convergence properties of algorithms for nonlinear optimization. SIAM Rev. 28(4), 487–500 (1986b)
Powell, M.J.D.: Updating conjugate directions by the BFGS formula. Math. Program. 38, 693–726 (1987)
References 787
Powell, M.J.D.: A direct search optimization method that models the objective and constraint functions by linear
interpolation. (Department of Applied Mathematics and Theoretical Physics, University of Cambridge (revised
August 1993)) (1993)
Powell, M.J.D.: A direct search optimization method that models the objective and constraint functions by linear
interpolation. In: Gomez, S., Hennart, J.P. (eds.) Advances in Optimization and Numerical Analysis, pp. 51–67.
Kluwer Academic Publishers (1994)
Powell, M.J.D.: Direct search algorithms for optimization calculations. Acta Numer. 7, 287–336 (1998)
Powell, M.J.D.: UOBYQA: Unconstrained optimization by quadratic approximation. Math. Program. 92, 555–582
(2002)
Powell, M.J.D.: On trust region methods for unconstrained minimization without derivatives. Math. Program. 97,
605–623 (2003)
Powell, M.J.D.: The NEWUOA software for unconstrained optimization without derivatives. (Department of Applied
Mathematics and Theoretical Physics, Centre for Mathematical Sciences, Cambridge) (2004)
Powell, M.J.D.: The NEWUOA software for unconstrained minimization without derivatives. In: Di Pillo, G., Roma,
M. (eds.) Large-Scale Nonlinear Optimization, pp. 255–297. Springer (2006)
Powell, M.J.D.: The BOBYQA algorithm for bound constrained optimization without derivatives. (Technical Report,
Department of Applied Mathematics and Theoretical Physics, Cambridge, England) (2009)
Powell, M.J.D.: On the convergence of trust region algorithms for unconstrained minimization without derivatives.
(Technical Report, Department of Applied Mathematics and Theoretical Physics, Cambridge, England) (2011)
Powell, M.J.D., Toint, P.L.: On the estimation of sparse Hessian matrices. SIAM J. Numer. Anal. 16, 1060–1074 (1979)
Pulkkinen, S.: A review of methods for unconstrained optimization: Theory, implementation and testing. Master’s
Thesis, University of Helsinki, Department of Mathematics and Statistics (2008)
Price, W.L.: Global optimization by controlled random search. J. Optim. Theory Appl. 55(1983), 333–348 (1983)
Price, C.J., Coope, D., Byatt, D.: A convergent variant of the Nelder-Mead algorithm. J. Optim. Theory Appl. 113, 5–19
(2002)
Ratschek, H., Rokne, J.: A circuit design problem. J. Global Optim. 3, 501 (1993)
Raydan, M.: On the Barzilai and Borwein choice of steplength for the gradient method. IMA J. Numer. Anal. 13,
321–326 (1993)
Raydan, M.: The Barzilai and Borwein gradient method for the large scale unconstrained minimization problem. SIAM
J. Optim. 7, 26–33 (1997)
Raydan, M., Svaiter, B.F.: Relaxed steepest descent and Cauchy-Barzilai-Borwein method. Comput. Optim. Appl. 21,
155–167 (2002)
Reid, J.K.: Sparse in core linear programming. In: Watson, G. (ed.) Numerical Analysis Dundee, 1975, Lecture Notes in
Mathematics, 506, pp. 176–189 (1975)
Reid, J.K.: A sparsity-exploiting variant of the Bartels-Golub decomposition for linear programming bases. Math.
Program. 24, 55–69 (1982)
Rijckaert, M.J.: Engineering applications of geometric programming. In: Avriel, M., Rijckaert, M.J., Wilde, M. (eds.)
Optimization in Design. Prentice-Hall, Englewood Cliffs (1973)
Rios, L.M., Shainidis, N.V.: Derivative-free optimization: a review of algorithms and comparison of software
implementations. J. Glob. Optim. 56, 1247–1293 (2013)
Robinson, S.M.: A quadratically convergent algorithm for general nonlinear programming problems. Math. Program. 3,
145–156 (1972)
Robinson, S.M.: Perturbed Kuhn-Tucker points and rates of convergence for a class of nonlinear programming
algorithms. Math. Program. 7, 1–16 (1974)
Rockafellar, R.T.: Convex Analysis. Princeton University Press, Princeton (1970)
Rose, D.J., Tarjan, R.E.: Algorithmic aspects of vertex elimination on graphs. In: Proceedings of the 7th Annual
Symposium on the Theory of Computing, pp. 245–254. Association for Computing Machinery, New York (1975)
Rosen, J.B., Kreuser, J.: A gradient projection algorithm for nonlinear constraints. In: Lootsma, F. (ed.) Numerical
Methods for Nonlinear Optimization, pp. 297–300. Academic Press, London (1972)
Rosen, J.B.: The gradient projection method for nonlinear programming. Part I – linear constraints. J. SIAM Appl.
Math. 8(1), 181–217 (1960)
Rosen, J.B.: The gradient projection method for nonlinear programming. Part II – nonlinear constraints. J. SIAM Appl.
Math. 9(4), 414–432 (1961)
Rosenbrock, H.H.: An automatic method for finding the greatest or least value of a function. Comput. J. 3, 175–184
(1960)
Rosser, J.B.: Rapidly converging iterative methods for solving linear equations. In: Paige, L.J., Taussky, O. (eds.)
Simultaneous Linear Equations and the Determination of Eigenvalues. Applied Mathematics Series 29, pp. 59–64.
National Bureau of Standards, U.S. Government Printing Office, Washington, DC (1953)
788 References
Rothberg, E., Hendrickson, B.: Sparse matrix ordering methods for interior-point linear programming. (Technical
Report SAND96-0475J, Sandia National Laboratory) (1996)
Sainvitu, C., Toint, Ph.L.: A filter-trust-region method for simple-bound constrained optimization. (Technical Report,
Department of Mathematics, University of Namur, Belgium) (2006)
Sandgren, E.: Nonlinear integer and discrete programming in mechanical design. In: Proceedings of the ASME Design
Technology Conference, pp. 95–105, Kissimme (1988)
Sandgren, E., Ragsdell, K.M.: The utility of nonlinear programming algorithms: A comparative study – Part I. J. Mech.
Des. 102(3), 540–546 (1980)
Sargent, E., Murtagh, B.A.: Projection methods for nonlinear programming. Math. Program. 4, 245–268 (1973)
Saunders, M.: Augmented Lagrangian methods. (Notes 9. Stanford University, Management Science & Engineering.
Spring 2015) (2015a)
Saunders, M.: NPSOL and SNOPT – SQP Methods. (Notes 11. Stanford University, Management Science & Engineer-
ing. Spring 2015) (2015b)
Schlick, T.: Modified Cholesky factorizations for sparse preconditioners. SIAM J. Sci. Comput. 14, 424–445 (1993)
Schlick, T., Fogelson, A.: TNPACK – A truncated Newton minimization package for large-scale problems: I Algorithm
and usage. ACM Trans. Math. Softw. 18, 46–70 (1992a)
Schlick, T., Fogelson, A.: TNPACK – A truncated Newton minimization package for large-scale problems: II
implementation examples. ACM Trans. Math. Softw. 18, 71–111 (1992b)
Schittkowski, K.: The nonlinear programming method of Wilson, Han and Powell with an augmented Lagrangean type
line search function. Part I: Convergence analysis. Numer. Math. 38, 83–114 (1981)
Schittkowski, K.: On the convergence of a sequential quadratic programming method with an augmented Lagrange line
search function. Math. Operationsforschung Statistik, Ser. Optim. 14(2), 197–216 (1983)
Schittkowski, K.: NLPQL: A Fortran subroutine for solving constrained nonlinear programming problems. Ann. Oper.
Res. 5(2), 485–500 (1985)
Schittkowski, K.: NLPQL: A Fortran subroutine solving constrained nonlinear programming problems. Ann. Oper. Res.
5, 485–500 (1986)
Schittkowski, K.: More Test Examples for Nonlinear Programming Codes. Springer, Berlin (1987)
Schittkowski, K.: NLPQLP: A Fortran implementation of a sequential quadratic programming algorithm. User’s guide.
(Report, Department of Mathematics, University of Bayreuth) (2002)
Schittkowski, K.: QL: A Fortran code for convex quadratic programming. User’s guide, Version 2.11. (Technical
Report, Department of Mathematics, University of Bayreuth, July) (2005)
Schittkowski, K.: NLPQO: A Fortran implementation of a sequential quadratic programming algorithm with distributed
and non-monotone line search. User’s guide, version 3.0. (Technical Report, Department of Computer Science,
University of Bayreuth) (2009)
Schittkowski, K.: A robust implementation of a sequential quadratic programming algorithm with successive error
restoration. (Technical Report, Department of Computer Science, University of Bayreuth) (2010)
Schnabel, R.B., Chow, T.T.: Tensor methods for unconstrained optimization using second derivatives. SIAM J. Optim.
1, 293–315 (1991)
Schnabel, R.B., Frank, P.D.: Tensor methods for nonlinear equations. SIAM J. Numer. Anal. 21, 815–843 (1984)
Schreiber, R., Keller, H.: Driven cavity flows by efficient numerical techniques. J. Comput. Phys. 49, 310–333 (1983)
Schultz, G.A., Schnabel, R.B., Byrd, R.H.: A family of trust-region-based algorithms for unconstrained minimization
with strong global convergence properties. SIAM J. Numer. Anal. 22, 47–67 (1985)
Shacham, M.: Numerical solution of constrained nonlinear algebraic equations. Int. J. Numer. Methods Eng. 23,
1455–1481 (1986)
Shanno, D.F.: Conditioning of quasi-Newton methods for function minimization. Math. Comput. 24, 647–656 (1970)
Shanno, D.F.: Conjugate gradient methods with inexact searches. Math. Oper. Res. 3, 244–256 (1978a)
Shanno, D.F.: On the convergence of a new conjugate gradient algorithm. SIAM J. Numer. Anal. 15, 1247–1257
(1978b)
Shanno, D.F.: CONMIN – A Fortran subroutine for minimizing an unconstrained nonlinear scalar valued function of a
vector variable x either by the BFGS variable metric algorithm or by a Beale restarted conjugate gradient algorithm.
Private communication, October 17, 1983
Shanno, D.F.: Globally convergent conjugate gradient algorithms. Math. Program. 33, 61–67 (1985)
Shanno, D.F.: Who invented the interior-point method? In: Gr€ otschel, M. (ed.) Optimization stories. Documenta
Mathematica, Journal der Deutschen Methematiker-Vereinigung, Extra volume, 21st International Symposium on
Mathematical Programming, pp. 55–64, Berlin, August 19–24, 2012
Shanno, D.F., Breitfeld, M.G., Simantiraki, E.M.: Implementing barrier methods for nonlinear programming. In:
Terlaky, T. (ed.) Interior Point Methods of Mathematical Programming, pp. 399–414. Kluwer Academic Publishers
(1996)
References 789
Shanno, D.F., Phua, K.H.: Algorithm 500. Minimization of unconstrained multivariable functions. ACM Trans. Math.
Softw. 2, 87–94 (1976)
Shanno, D.F., Phua, K.H.: Matrix conditioning and nonlinear optimization. Math. Program. 14, 149–160 (1978)
Shanno, D.F., Phua, K.H.: Remark on algorithm 500. ACM Trans. Math. Softw. 6, 618–622 (1980)
Shanno, D.F., Simantiraki, E.M.: Interior-point methods for linear and nonlinear programming. In: Duff, I.S., Watson,
G.A. (eds.) The State of the Art in Numerical Analysis, pp. 339–362. Oxford University Press, New York (1997)
Shi, Z.-J.: Convergence of line search methods for unconstrained optimization. Appl. Math. Comput. 157, 393–405
(2004)
Shi, Z.-J., Shen, J.: Step-size estimation for unconstrained optimization methods. Comput. Appl. Math. 24(3), 399–416
(2015)
Sorensen, D.C.: Newton’s method with a model trust region modification. SIAM J. Numer. Anal. 19, 409–426 (1982)
Spall, J.C.: Introduction to Stochastic Search and Optimization: Estimation, Simulation, and Control. Wiley Series in
Discrete Mathematics and Optimization. Wiley, New York (2003)
Spellucci, P.: An SQP method for general nonlinear programs using only equality constrained subproblems. Math.
Program. 3, 413–448 (1998)
Spendley, W., Hext, G.R., Himsworth, F.R.: Sequential applications of simplex designs in optimization and evolution-
ary operation. Technometrics. 4, 441–461 (1962)
Spedicato, E., Zhao, J.: Explicit general solution of the Quasi-Newton equation with sparsity and symmetry. Optim.
Methods Softw. 2(3–4), 311–319 (1993)
Stewart, G.W.: A modification of Davidon’s method to accept difference approximation of derivatives. ACM. 14,
72–83 (1967)
Steihaug, T.: The conjugate gradient method and trust-regions in large-scale optimization. SIAM J. Numer. Anal. 20,
626–637 (1983)
Stiefel, E.L.: Kernel polynomials in linear algebra and their numerical applications. In: Further Contributions to the
Determination of Eigenvalues. National Bureau of Standards, Applied Mathematical Series, 49, pp. 1–22 (1958)
Stoer, J., Yuan, Y.X.: A subspace study on conjugate gradient algorithms. ZAMM – J. Appl. Math. Mech. 75, 69–77
(1995)
Strogatz, S.H.: Nonlinear Dynamics and Chaos: With Applications to Physics, Biology, Chemistry, and Engineering.
Perseus Books, Cambridge, MA (1994)
Suhl, U.H., Suhl, L.M.: Computing sparse LU factorizations for large-scale linear programming bases. ORSA
J. Comput. 2, 325–335 (1990)
Suhl, L.M., Suhl, U.H.: A fast LU-update for linear programming. (Arbeitspapier des Instituts fur Wirtschaftsin-
formatik, Freie Universitaet – Berlin, August) (1991)
Sun, W., Liu, H., Liu, Z.: A class of accelerated subspace minimization conjugate gradient methods. J. Optim. Theory
Appl. 190, 811–840 (2021)
Sun, W., Yuan, Y.X.: Optimization Theory and Methods. Nonlinear Programming. Springer Science + Business Media,
New York (2006)
Surry, P.D., Radcliffe, N.J., Boyd, I.D.: A multi-objective approach to constrained optimization of gas supply networks:
The COMOGA method. In: Fogarty, T.C. (ed.) Evolutionary Computing: AISB Workshop, Number 993. Lecture
Notes in Computer Science, pp. 166–180. Springer, Berlin (1995)
Tapia, R.A.: A stable approach to Newton’s method for general mathematical programming problems in ℝn. J. Optim.
Theory Appl. 14, 453–476 (1974)
Tits, A.L., Wächter, A., Bakhtiari, S., Urban, T.J., Lawrence, C.T.: A primal-dual interior-point method for nonlinear
programming with strong global and local convergence properties. SIAM J. Optim. 14, 173–199 (2003)
Toint, P.L.: On sparse and symmetric matrix updating subject to a linear equation. Math. Comput. 31, 954–961 (1977)
Toint, P.L.: Towards an efficient sparsity exploiting Newton method for minimization. In: Sparse Matrices and Their
Uses, pp. 57–87. Academic Press, New York (1981)
Toint, P.L.: An assessment of nonmonotone line search techniques for unconstrained optimization. SIAM J. Sci.
Comput. 17, 725–739 (1996)
Toint, P.L.: A nonmonotone trust-region algorithm for nonlinear optimization subject to convex constraints. Math.
Program. 77, 69–94 (1997)
Topkis, D.M., Veinott, A.F.: On the convergence of some feasible direction algorithms for nonlinear programming.
SIAM J. Control. 5, 268–279 (1967)
Touati-Ahmed, D., Storey, C.: Efficient hybrid conjugate gradient techniques. J. Optim. Theory Appl. 64, 379–397
(1990)
Traub, J.: Iterative Methods for the Solution of Equations. Prentice-Hall, Englewood Cliffs (1964)
Trefethen, L.N., Bau III, D.: Numerical Linear Algebra. SIAM, Philadelphia (1997)
Trefethen, L.N., Schreiber, R.S.: Average-case stability of Gaussian elimination. SIAM J. Matrix Anal. Appl. 11(3),
335–360 (1990)
790 References
Tr€oltzsch, A.: Benchmarking of bound-constrained optimization software. (CERFACS working note: WN/PA/07/143,
pp. 1–39) (2007)
Ulbrich, S.: On the superlinear local convergence of a filter-SQP method. Math. Program. 100(1), 217–245 (2004)
Ulbrich, M., Ulbrich, S., Heinkenschlos, M.: Global convergence of affine-scaling interior-point Newton methods for
infinite-dimensional nonlinear problems with pointwise bounds. SIAM J. Control. Optim. 37, 731–764 (1999)
Ulbrich, M., Ulbrich, S., Vicente, L.N.: A globally convergent primal-dual interior-point filter method for nonconvex
nonlinear programming. Math. Program. 100, 379–410 (2004)
Vanderbei, R.J.: ALPO: Another linear program optimizer. (Technical Report AT&T Bell Laboratories) (1990)
Vanderbei, R.J.: An interior point code for quadratic programming. (Technical Report SOR 94-15, Princeton Univer-
sity) (1994)
Vanderbei, R.J.: LOQO: An interior point code for quadratic programming. (Technical Report SOR 94-15, Princeton
University) (1995)
Vanderbei, R.: Linear Programming Foundations and Extensions. Kluwer Academic Publishers, Boston, London,
Dordrecht (1996)
Vanderbei, R.J.: Linear Programming: Foundations and Extensions, 2nd edn. Springer, New York (2001)
Vanderbei, R.J., Shanno, D.F.: An interior-point algorithm for nonconvex nonlinear programming. (Technical Report
SOR 97-21, Princeton University) (1997)
Vanderbei, R.J., Shanno, D.F.: An interior point algorithm for nonconvex nonlinear programming. Comput. Optim.
Appl. 13, 231–252 (1999)
Vanderplaats, G.N.: DOT Users Manual. Version 4.20, Vanderplaats Research & Development, Inc, Colorado Springs
(1995)
Van der Pol, B.: Forced oscillations in a circuit with nonlinear resistance (receptance with reactive triode). Lond. Edinb.
Dublin Philos. Mag. 3, 65–80 (1927)
Van der Vorst, H.A.: Lecture Notes on Iterative Methods. (Report Mathematical Institute, University of Utrecht) (1993)
Vardi, A.: A trust region algorithm for equality constrained minimization: convergence properties and implementation.
SIAM J. Numer. Anal. 22, 575–591 (1985)
Vassiliadis, V.S., Floudas, C.A.: The modified barrier function approach for large-scale optimization. Comp. Chem.
Engng. 21(8), 855–874 (1997)
Vavasis, S.A.: Quadratic programming is NP. Inf. Process. Lett. 36, 73–77 (1990)
Vavasis, S.A.: Nonlinear Optimization. Oxford University Press, New York and Oxford (1991)
Verschelde, J., Verlinden, P., Cools, R.: Homotopies exploiting Newton polytopes for solving sparse polynomial
systems. SIAM J. Numer. Anal. 31, 915–930 (1994)
Von Stryk, O.: User’s guide for DIRCOL (Version 2.1): A direct collocation method for the numerical solution of
optimal control problems. (Technical Report, Technische Universität München) (1999)
Wächter, A.: An interior point algorithm for large scale nonlinear optimization with applications in process engineering.
Ph.D. Thesis, Carnegie Mellon University, Pittsburg, PA, January 2002
Wächter, A., Biegler, L.T.: On the implementation of an interior-point filter line-search algorithm for large-scale
nonlinear programming. Math. Program. 106, 25–57 (2000)
Wächter, A., Biegler, L.T.: Line search filter methods for nonlinear programming: Motivation and global convergence.
(Technical Report RC 23036, Yorktown Heights, NY: IBM T.J. Watson Research Center (revised 2004)) (2001)
Wächter, A., Biegler, L.T.: Line search filter methods for nonlinear programming: Motivation and global convergence.
SIAM J. Optim. 16, 1–31 (2005a)
Wächter, A., Biegler, L.T.: Line search filter methods for nonlinear programming: Local convergence. SIAM J. Optim.
16, 32–48 (2005b)
Wächter, A., Biegler, L.T.: On the implementation of an interior-point filter line-search algorithm for large-scale
nonlinear programming. Math. Program. 106, 25–57 (2006)
Walsh, G.R.: Methods of Optimization. Wiley, London, New York, Sydney, Toronto (1975)
Waltz, R.A.: KNITRO 4.0 User’s Manual. (Technical Report, Ziena Optimization Inc., Evanston, IL, October) (2004)
Waltz, R.A., Morales, J.L., Nocedal, J., Orban, D.: An interior algorithm for nonlinear optimization that combines line
search and trust region step. (Technical Report 2003-6, Optimization Technology Center, Northwestern University,
Evanston, IL, USA, June). [Math. Program. 107, 2006, 391–408] (2003)
Wan, Z., Huang, S., Zheng, X.D.: New cautious BFGS algorithm based on modified Armijo-type line search. J. Inequal.
Appl. 241, 1–10 (2012)
Wan, Z., Teo, K.L., Shen, X.L., Hu, C.M.: New BFGS method for unconstrained optimization problem based on
modified Armijo line search. Optimization. 63(2), 285–304 (2014)
Wang, H.J., Yuan, Y.X.: A quadratic convergence method for one-dimensional optimization. Chin. J. Oper. Res. 11,
1–10 (1992)
Wei, Z., Li, G., Qi, L.: New nonlinear conjugate gradient formulas for large-scale unconstrained optimization problems.
Appl. Math. Comput. 179, 407–430 (2006a)
References 791
Wei, Z., Yao, S., Liu, L.: The convergence properties of some new conjugate gradient methods. Appl. Math. Comput.
183, 1341–1350 (2006b)
Wei, Z., Yu, G., Yuan, G., Lian, Z.: The superlinear converence of a modified BFGS-type method for unconstrained
optimization. Comput. Optim. Appl. 29, 315–332 (2004)
Wilkinson, J.H.: The Algebraic Eigenvalue Problem. Oxford University Press, London (1965)
Wilson, R.B.: A simplicial algorithm for concave programming. Ph.D Thesis, Harvard University (1963)
Wolfe, P.: A duality theorem for nonlinear programming. Q. Appl. Math. 19, 239–244 (1961)
Wolfe, P.: Methods of nonlinear programming. In: Abadie, J. (ed.) Nonlinear Programming, pp. 97–131. North-
Holland, Amsterdam (1967)
Wolfe, P.: Convergence conditions for ascent methods. SIAM Rev. 11, 226–235 (1969)
Wolfe, P.: Convergence conditions for ascent methods. II: Some corrections. SIAM Rev. 13, 185–188 (1971)
Wolsey, L.A.: Integer Programming. Wiley-Interscience Series in Discrete Mathematics and Optimization. Wiley,
New York (1998)
Wright, M.H.: Numerical methods for nonlinearly constrained optimization. (SLAC Report No.193, 1976, Stanford
University, California. (Ph.D. Dissertation)) (1976)
Wright, M.H.: Direct search methods: Once scorned, now respectable. In: Numerical Analysis 1996 (Proceedings of the
1995 Dundee Bienal Conference in Numerical Analysis), pp. 191–208. Addison Wesley Longman (1996)
Wright, S.J.: Implementing proximal point methods for linear programming. J. Optim. Theory Appl. 65, 531–554
(1990)
Wright, M.H.: Interior methods for constrained optimization. Acta Numer. 1, 341–407 (1991)
Wright, S.J.: Primal-Dual Interior-Point Methods. SIAM, Philadelphia (1997)
Wu, G., Liang, H.: A modified BFGS method and its convergence. Comput. Model. New Technol. 18(11), 43–47 (2014)
Xavier, A.E.: Hyperbolic penalty: A new method for nonlinear programming with inequalities. Int. Trans. Oper. Res. 8,
659–671 (2001)
Yabe, H., Martı́nez, H.J., Tapia, R.A.: On sizing and shifting the BFGS update within the sized Broyden family of
secant updates. SIAM J. Optim. 15(1), 139–160 (2004)
Yabe, H., Ogasawara, H., Yoshino, M.: Local and superlinear convergence of quasi-Newton methods based on modified
secant conditions. J. Comput. Appl. Math. 205, 717–632 (2007)
Yamashita, H.: A globally convergent primal-dual interior-point method for constrained optimization. Optim. Methods
Softw. 10, 443–469 (1998)
Yamashita, N.: Sparse Quasi-Newton Updates with Positive Definite Matrix Completion. Department of Applied
Mathematics of Physics, Graduate School of Informatics, Kyoto University (2005)
Yao, S., Wei, Z., Huang, H.: A note about WYL’s conjugate gradient method and its application. Appl. Math. Comput.
191, 381–388 (2007)
Yang, X., Luo, Z., Dai, X.: A global convergence of LS-CD hybrid conjugate gradient method. Adv. Numer. Anal.
2013, 517452 (2013). https://doi.org/10.1155/2013/517452
Yang, E.K., Tolle, J.W.: A class of methods for solving large convex quadratic programs subject to box constraints.
Math. Program. 51, 223–228 (1991)
Ye, Y.: Interior Point Algorithms: Theory and Analysis. Wiley, New York (1997)
Ye, Y., Todd, M.J., Mizuno, S.: An O((nl)1/2)-iterations homogeneous and self-dual linear programming algorithm.
Math. Oper. Res. 19, 53–67 (1994)
Ypma, T.J.: Historical development of the Newton-Raphson method. SIAM Rev. 37, 531–551 (1995)
Yuan, Y.X.: A modified BFGS algorithm for unconstrained optimization. IMA J. Numer. Anal. 11, 325–332 (1991)
Yuan, Y.X.: Analysis on the conjugate gradient method. Optim. Methods Softw. 2, 19–29 (1993)
Yuan, Y.: A new stepsize for the steepest descent method. J. Comput. Math. 24, 149–156 (2006)
Yuan, Y.: Advances in trust region algorithms. Math. Program. 151, 249–281 (2015)
Yuan, Y.X., Byrd, R.: Non-quasi-Newton updates for unconstrained optimization. J. Comput. Math. 13(2), 95–107
(1995)
Yuan, G., Sheng, Z., Wang, B., Hu, W., Li, C.: The global convergence of a modified BFGS method for nonconvex
functions. J. Comput. Appl. Math. 327, 274–294 (2018)
Yuan, G., Wei, Z.: Convergence analysis of a modified BFGS method on convex minimizations. Comput. Optim. Appl.
47, 237–255 (2010)
Yuan, G., Wei, Z., Lu, X.: Global convergence of BFGS and PRP methods under a modified weak Wolfe–Powell line
search. Appl. Math. Model. 47, 811–825 (2017)
Zangwill, W.I.: The convex simplex method. Manag. Sci. 14(3), 221–238 (1967)
Zhang, Y.: Interior-point gradient methods with diagonal-scaling for simple-bound constrained optimization. (Techni-
cal Report TR04-06, Department of Computational and Applied Mathematics, Rice University, Houston, Texas)
(2004)
Zhang, L.: Two modified Dai-Yuan nonlinear conjugate gradient methods. Numer. Algorithms. 50(1), 1–16 (2009a)
792 References
Zhang, L.: New versions of the Hestenes-Stiefel nonlinear conjugate gradient method based on the secant condition for
optimization. Comput. Appl. Math. 28(1), 1–23 (2009b)
Zhang, J., Deng, N.Y., Chen, L.H.: New quasi-Newton equation and related methods for unconstrained optimization. J
Optim. Theory Appl. 102, 147–167 (1999)
Zhang, H., Hager, W.W.: A nonmonotone line search technique and its application to unconstrained optimization.
SIAM J. Optim. 14, 1043–1056 (2004)
Zhang, Y., Tapia, R.A., Dennis, J.E.: On the superlinear and quadratic convergence of primal-dual interior-point linear
programming algorithms. SIAM J. Optim. 2, 304–324 (1992)
Zhang, J., Xu, C.: Properties and numerical performance of quasi-Newton methods with modified quasi-Newton
equations. J. Comput. Appl. Math. 137, 269–278 (2001)
Zhang, L., Zhou, W.: Two descent hybrid conjugate gradient methods for optimization. J. Comput. Appl. Math. 216,
251–264 (2008)
Zhang, L., Zhou, W., Li, H.: Some descent three-term conjugate gradient methods and their global convergence. Optim.
Methods Softw. 22(4), 697–711 (2007)
Zhu, C., Byrd, R.H., Lu, P., Nocedal, J.: Algorithm 778: L-BFGS-B, FORTRAN subroutines for large scale bound
constrained optimization. ACM Trans. Math. Softw. 23, 550–560 (1997)
Zhu, M., Nazareth, J.L., Wolkowicz, H.: The quasi-Cauchy relation and diagonal updating. SIAM J. Optim. 9(4),
1192–1204 (1999)
Zhu, H., Wen, S.: A class of generalized quasi-Newton algorithms with superlinear convergence. Int. J. Nonlinear Sci.
2(3), 140–146 (2006)
Zou, X., Navon, I.M., Berger, M., Phua, K.H., Schlick, T., Le Dimet, F.X.: Numerical experience with limited-memory
quasi-Newton and truncated Newton methods. SIAM J. Optim. 3(3), 582–608 (1993)
Zoutendijk, G.: Methods of Feasible Directions. Elsevier, Amsterdan (1960)
Zoutendijk, G.: Nonlinear programming, computational methods. In: Abadie, J. (ed.) Integer and Nonlinear Program-
ming, pp. 38–86. North-Holland, Amsterdam (1970)
Zwart, P.B.: Nonlinear Programming: A Quadratic Analysis of Ridge Paralysis. Washington University, Report
COO-1493-21. St. Louis (1969)
Author Index
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 793
Switzerland AG 2022
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
794 Author Index
Carter, R.G., 13, 120, 121, 430, 723, 724, 757, 759, 761, Drud, A., 17, 567, 590, 591, 593, 594, 597
764, 765 Duran, M., 651
Castillo, E., 8
Cesari, L., 736 E
Chachuat, B.C., 383, 409 Eberly, D., 762
Chan, S.C., 302 Ecker, J.G., 15
Chen, J., 220 Eisenstat, S.C., 315, 322, 330
Chen, H., 260, 278, 285, 302 El-Bakry, A.S., 611, 614, 622, 661
Chen, L.P., 219, 220 Eldersveld, S.K., 544, 546, 642
Chen, X., 50 El Ghaoui, L., 11, 382
Cheng, S.H., 604 Elman, H.C., 184
Cheng, W.Y., 280, 282 Esposito, W.R., 722, 723
Chin, C.M., 374, 648
Choi, T.D., 369 F
Chow, T.T., 15 Facchinei, F., 141, 411, 416, 437
Cimatti, G., 759 Feron, E., 382
Cohen, A., 202 Fiacco, A.V., 141, 157, 159, 300, 376, 490, 599, 601, 645,
Coleman, T.F., 415, 416, 536, 566 685
Colombani, Y., 6 Finkel, D.E., 370
Concus, P., 327 Fletcher, R., 12, 18, 68, 80, 141, 157, 160, 171, 201, 208,
Conejo, A.J., 8 249, 264, 272, 309, 313, 314, 353, 374, 375, 379,
Conn, A.R., 5, 9, 17, 299, 300, 302, 311, 314, 330, 353, 381, 450, 453, 454, 474, 482, 526, 536, 544, 566,
369, 370, 378, 379, 382, 411, 416, 421, 437, 499, 567, 599, 610, 647, 648, 650, 651, 653–659, 661,
500, 518, 519, 536, 543, 566, 643, 644 678
Contreras, M., 278 Floudas, C.A., 10, 519, 722, 723
Cools, R., 724 Fogelson, A., 9, 326, 330, 416
Coope, D., 357 Ford, J.A., 260, 286
Cottle, R.W., 409 Forsgren, A., 141, 376, 603, 644
Courant, R., 516 Forsythe, G.E., 169
Crowder, H.P., 202 Fourer, R., 6, 8, 146
Cryer, C.W., 759 Fox, R.L., 579
Curtis, A., 712 Frank, M., 15, 570
Curtis, F.E., 330 Frank, P.D., 15, 642
Cuthrell, J.E., 749 Freeman, T.L., 141, 157, 160
Friedlander, A., 416
D Friedlander, M.P., 378
Dai, X., 220 Frisch, K.R., 490, 599, 645
Dai, Y.H., 15, 46, 49, 54, 172, 188, 192, 195, 196, 198, Fukushima, M., 285, 287, 536
199, 201, 202, 208, 210, 218–220, 232, 245,
253–255, 259, 260, 287, 304 G
Dai, Z., 219, 220 Gabay, D., 566
Daniel, J.W., 201, 459 Gabriele, G.A., 579
Dantzig, G.B., 1, 9, 504 Garcı́a-Bertrand, R., 8
Davidon, W.C., 14, 80, 264, 313 Garner, J., 764
Davies, D., 141 Gay, M., 6, 146, 352, 510, 611
Debreu, G., 487 Ge, R.-P., 313
Dehmiry, A.H., 278, 287 George, A., 605
Dembo, R.S., 315, 322, 415, 428, 728, 731, 732 Ghanbari, R., 220, 278, 286
Demmel, J.W., 704, 719 Gilbert, J., 201, 213, 219–221, 254, 288, 292, 312, 314,
Denchfield, A., 106 567, 631, 634, 661
Dener, A., 106 Gill, P.E., 9, 12, 17, 22, 80, 141, 143, 144, 157, 159, 278,
Deng, N.Y., 260, 278, 285, 556 288, 309, 314, 327, 375, 376, 382, 383, 429, 453,
Dennis, J.E., 9, 68, 75, 80, 165, 273, 288, 313, 353, 382, 459, 474, 507, 519, 542, 544, 546, 549–551, 566,
416, 417, 615, 622, 712, 719 567, 603, 643, 644, 699, 700, 712
Deuflhard, P., 315 Glowinski, R., 757
Dikin, I.I., 9, 644 G€
odel, K., 3
Dixon, L.C.W., 330 Goldfarb, D., 141, 264, 450, 456–459, 593, 611
Dolan, E.D., 13, 78, 420, 502, 735–737 Goldfeld, S.M., 141
Author Index 795
# The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature 801
Switzerland AG 2022
N. Andrei, Modern Numerical Nonlinear Optimization, Springer Optimization and Its Applications 195,
https://doi.org/10.1007/978-3-031-08720-2
802 Subject Index
KNITRO M
ACTIVE (Active-Set Sequential Linear-Quadratic Mathematical
Programming), 557, 559, 560 programming, 18
crossover algorithm, 639 model, 3, 7
INTERIOR-CG (Interior-Point Sequential Linear- Maratos effect, 534
Quadratic), 631, 636 Powell example, 534
INTERIOR-DIRECT (Interior-Point Sequential Matrices, 692
Linear-Quadratic), 631, 632, 634 elementary, 701
determinant, 704
L identity, 692
l1 penalty method, 481 inverse, 694
LACOP collection, 13, 727 lower triangular, 693
comparison: MINOS, KNITRO/ACTIVE, SNOPT norms, 693
and CONOPT, 597 pentadiagonal, 693
solution with COBYLA, 684 symmetric, 692
solution with CONOPT, 594 upper triangular, 693
solution with DFL, 688 trace, 706
solution with filterSD, 652 transpose, 692
solution with IPOPT, 675 tridiagonal, 693
solution with KNITRO/ACTIVE, 564 Matthews and Davies method, 142
solution with KNITRO/INTERIOR, 640 Maximum, 384
solution with MINOS, 516, 517 Mean value theorem, 708
solution with NLPQLP, 557 Memoryless
solution with PDIP, 626 BFGS method, 277
solution with SNOPT, 551 SR1 method with generalized secant
solution with SPENBAR, 502 equation, 302
Lagrange duality, 408 Mental models, 2
Lagrange multipliers, 391, 397 Merit function, 532, 616, 637
interpretation, 400, 401, 405, 406 MFCO constraint qualification, 393
LANCELOT, 518 Minimal surfaces with Enneper boundary conditions
Large-scale optimization, 11 application, 296, 762
L-BFGS, 292 Minimum, 384
L-BFGS-B (simple bounds), 421, 427 MINOS algorithm, 503
L-BFGS-B versus SPG, 427 linear constraints, 504, 508
Least upper bound, 384 nonlinear constraints, 510, 514
Levenberg-Marquardt method, 141 MINPACK-2 collection, 757
LICO constrained qualification, 393, 397 solution with CG-DESCENT, 237
Limited-memory quasi-Newton methods, 290 solution with CONMIN, 251
Line-search solution with DESCON, 244
algorithm, 172 solution with DK+w, DK+aw, DK+iw, 257
method, 380 solution with hybrid conjugate gradient, 224
strategy, 22 solution with L-BFGS, 294
Linear combination, 691 solution with L-BFGS-B, SPG, TNBC, 430
Linear conjugate gradient algorithm, 177 solution with MM-SR1gen and MM-BFGS, 308
Linear constraint qualification, 403 solution with standard conjugate gradient, 217
Linearly constrained Lagrangian methods, 377 solution with TRON, 351
Linear programming, 1, 9, 382 Mixed integer programming, 10
Linguistic models, 2 Modern modeling scheme, 7
Lipschitz continuity, 26, 111, 715 Modified
Liu-Storey Method (conjugate gradient), 213 augmented Lagrangian (MINOS), 503
Local Cholesky factorization, 145, 167
affine model, 109 Lagrangian (MINOS), 503
convergence analysis, 12 log-barrier function, 490
minimizer, 21 secant equation, 285
models (constrained optimization), 373, 375 Wolfe line search, 239
solution, 10 Modified augmented Lagrangian (MINOS), 503, 511
Lower bound, 2, 383, 411 Moore-Penrose pseudo-inverse,701
Subject Index 805
N profile, 13, 14
Necessary optimality conditions, 2, 24 Perpendicular, 691
Nonlinear Perry/Shanno search direction, 248, 252
algebraic systems, 27 Perturbed KKT (quadratic programming), 464
optimization, 9 Polak-Ribière-Polyak conjugate gradient, 171, 210
programming, 9, 383 Positive
NELMED algorithm, 356, 357 definite matrices, 697
Newton semidefinite matrices, 697
decrement, 133 Preconditioned conjugate gradient algorithm, 186
method, 125, 140 Predictor-corrector algorithm for quadratic Programming,
with central-difference, 152 466
with finite differences, 145 Pressure distribution in a journal bearing application, 294,
with line-search, 129, 134 432, 759
step, 133 Primal
system, 110, 126, 145, 613 feasibility, 391
Newton-CG method, 177, 324, 340 problem, 406
NEWUOA algorithm (direct method), 357, 358 Primal-dual
NLPQLP (successive error restoration), 553, 556 active set method (quadratic programming), 456
linear search in, 555 central path, 600, 613
Nocedal condition, 195 interior-point algorithm, 620
Nonlinear elasting mode (SNOPT), 543 system, 602, 603
Nonconvex quadratic programming, 450 Projected conjugate gradient method (quadratic
Nondegenerate stationary point, 414 programming), 448
Nonsmooth augmented system approach, 449
exact penalty functions, 479 normal equations approach, 449
penalty method, 479 Propan combustion in air, 119, 150, 166, 723
NPSOL, 567 Prototype of the interior-point algorithm, 602
Null-space
of a matrix, 694 Q
method (quadratic programming), 442 Quadratic
model of function f, 125, 262, 331
O penalty
Objective function, 1, 21, 383 function, 475
Open questions (conjugate gradient), 260 method, 475, 476
Open programming, 1, 9
ball, 715 active-set method, 451, 452
set, 715 convex, 439
Optimal design with composite materials application, elimination of variables, 471
295, 433, 759 equality constrained, 439
Optimality conditions, 2 indefinite, 450
Optimization based on simulation, 679 inequality constrained, 449
Order notation, 714 interior point method, 463
Orthogonality, 696 nonconvex, 439, 450
Outside contraction (Nelder-Mead), 356 primal-dual active-set method, 456
Ou-Liu line-search, 51 strictly convex, 439
with simple bounds, 468
P Quadratic programming solver SQOPT, 549
Path-following primal-dual methods (quadratic QR decomposition, 700
programming), 464 Quasi-Newton methods assumptions, 271
Parameter, 1
Penalty R
barrier method, 491 Range of a
parameter, 476 function, 693
Penalty and merit function methods, 379 matrix, 693
Penalty-barrier method, 491 Rate of convergence, 34, 710
PENNON, 519 Reduced gradient, 445, 545, 577, 588
Perfect line-search, 30 inequality constraints (quadratic programming), 454
Performance linear equality constraints (quadratic programming),
ratio, 14 445
806 Subject Index