310
expressed by the matrix inequalities (e.g. thruster
saturation, thruster efficiency, electrical power
limitation, etc.), are added to the basic constraints, the
optimization task becomes considerably more
complex and is usually solved by the quadratic
programming algorithms or so-called QP solvers
(Jenssen and Realfsen, 2006).
From a theoretical point of view, the problem of
the thrust allocation could be solved by linear
programming (LP solvers), but due to the
approximation of the relation between the electrical
power consumption (kW) and the generated thrust
(kN) by the quadratic function, some of the variants
of the quadratic programming are usually used
(Snijders, 2005; Wit, 2009).
If the problem of the quadratic programming of
the thrust allocation is set correctly, it can be explicitly
solved, i.e. it is possible to determine the global
minimum (Leavitt, 2008). In general, the QP consists
of the quadratic objective function and linear
equalities and inequalities representing the
conditions, i.e. the constraints. In addition to this,
Sørdalen (1997) has shown that the constraints on
azimuth thrusters can lead to singular configurations,
which he solved using the method of singular values
decomposition (SVD). This approach provided
significantly lower power consumption, effectively
eliminated the issue of the forbidden zones, reduced
tear and wear of thrusters. With the application of so-
called logical inequalities and Moore-Penrose pseudo-
inverse matrix (SVD method), it is possible to directly
determine the vector of demanded forces and moment
(Gierusz and Tomera, 2006; Yang et al., 2011b).
If the constraints in the quadratic optimization task
become nonlinear, it is no longer possible to use the
QP solvers directly. One of the possible solutions to
this problem is the application of the so-called
sequential quadratic programming (SQP) technique
that is generally used to minimize an arbitrarily
selected objective function regarding the nonlinear
constraint set in the form of equalities and
inequalities. The possible applications of SQP
approach in optimum thrust allocation were
investigated by Liang and Cheng (2004) and Johansen
et al. (2004). Although tested only on simulation
models, the obtained results (Liang and Cheng, 2004)
indicate very good capabilities of the SQP solver
which in a computational sense can execute the
allocation very fast with a small thrusters' azimuth
change. Johansen et al. (2004) have further expanded
the application possibilities of the SQP approach with
the emphasis on avoiding possible singularities that
are unacceptable in control sense.
In addition to the SQP approach for solving the
problem of nonlinear constraints of the optimization
task, most recently the genetic algorithms (GA) have
been increasingly used as a robust solution that
ensures a good convergence of the global
optimization process (Yang et al., 2011a; Zhao et al.,
2010). The tests that have been carried out by Yang et
al. (2011a) indicate the promising results on using
these algorithms, although the authors point out the
problem of possible application of GA in thrust
allocation regarding the slow convergence.
In order to recap, one should notice that the
current state-of-the-art in nonlinear optimization for
gradient-based algorithms is surely the sequential
quadratic programing (SQP), both for general
applications and specific thrust allocation problems.
In comparison with e.g. Lagrangian multiplier
method (LMM) or pure QP algorithms, which are
both appropriate solutions for optimization problems
with linear equality and linear inequality constraints,
SQP approach is superior when dealing with
problems that have significant nonlinearities within
their constraints.
On the other hand, and in comparison with the
gradient-based optimization methods, derivative free
optimization methods usually does not need any
particular information about the gradient or Hessian
matrix of the objective function. Moreover, derivative
free methods can be applied even for objective
functions that are not continues nor differentiable,
which makes them particularly convenient in cases
when the objective function is not explicitly defined,
when evaluation of the objective function and/or its
derivatives is too much time consuming and thus not
acceptable, when objective function is noisy and
derivatives or finite difference approximations are not
reliable nor acceptable for further analysis, etc.
Although the field of derivative free optimization
is usually extended, or at least coupled with the so-
called black-box optimization methods, the focus in
this work is placed only to the family of the so-called
direct search (DS), or pattern search (PS) algorithms.
The main reason for this choice is that direct search
algorithms are much better supported and have very
detailed literature background on rigorous
convergence analysis (Audet and Hare, 2017; Conn et
al., 1997, 1991; Torczon, 1997). Therefore, the
applicability and implementation issues of selected
derivative free direct search algorithms in optimal
thrust allocation problems have been analysed and
discussed in this paper, and avenues for future
research are emphasized as well.
2 METHODOLOGY
2.1 General considerations on direct search algorithms
Direct or pattern search algorithms are based on a
common idea by which a sequence of points is
determined with the property that in each successive
point the value of objective function decreases. As
already mentioned, this sequence of points, which
defines directions from one point to another, is not
calculated by means of function gradient, but is rather
based on a set of points around the current point, in
which the objective function is evaluated. These
surrounding points are determined by polling and
thus they create a so-called poll set that presents a
mesh, i.e. all possible vector directions by which one
can shift from the current point to any other point
from the poll set. If some point within the poll set is
found that sufficiently decreases the objective
function at the current step, than that point becomes a
new current point for the next iteration. Otherwise,
the mesh should be redefined so the algorithm could
try to find a new direction on a smaller scale. In
general, one can differ three main direct search
algorithms as follows:
− generalized pattern search (GPS) algorithm,