A Method for Solving Global Minimization Problems and Systems of Nonlinear Equations ()
1. Introduction
There are different approaches to find the Solutions of the Global Minimization Problems for continuous smooth functions.
Deterministic continuous global optimization methods (see [1], [2] and [3]).
Interval methods (see [4] and [5]).
There are also non-continuous optimization methods like:
Stochastic methods such as Direct Monte-Carlo sampling (for example traveling salesman problem) (see [6]);
Stochasting tunneling (STUN) based on the Monte Carlo method-sampling (see [7]).
Heuristics and metaheuristics, Ant colony optimization (ACO) (see [8]); Simulated annealing (see [9] and [10]); Tabu search (see [11]); and Evolutionary algorithms (see [12]).
Let
is bounded from below function with continuous partial derivatives in the set
, where
is the Euclidean space.
We consider next global minimization problem:
(1)
We assume that a finite solution point exists, meaning there is at least one finite point
where a solution to (1) exists.
We create the function:
of the sum of the squares of the partial derivatives of the given function to minimize. Then we create the composite function of the sign function with the created function of the sum of squares:
The zeros of this composed function are the critical points of the given function. The global minimum of the given function is the minimum value of the given function at the found critical points.
This method can be used to solve also systems of simultaneous continuous nonlinear equations. We create in that case a function that finds the zeros of the sign of the sum of the squares of the equations of the system to solve:
.
The numerical realisations need next steps:
We used MATLAB 2023b for solving numerical examples.
With
we denote the number of examples to solve.
To avoid skipping some critical points by the sign function
, we subtract a small number
from the function
, that is
(
is the step of the meshgrid command in MATLAB. In our MATLAB 2023b
). We add 1 to the composite function:
. Therefore this function will have values 0 and 2. Therefore, finally, we multiply by 0.5 and receive:
. By this way we find the critical points of the function to minimize by finding the points for which
, as well as the composite function
. The values of both functions can be only 0’s and 1’s.
It is not necessary for a system of simultaneous nonlinear equation that the number of nonlinear equations to be equal to the number of the independent variables.
In both cases, for minimization problems and for solving systems of nonlinear equations, we isolate the zeros of the created composite function
, respectively of the function
. Therefore, the function sum of the partial derivatives is:
Function
is the sign function. The values of composite function
at the zeros of the function
will be −1, or
Therefore, we add 1 to the function
, or
. The possible values of this fuction will be 0 and 2. Because of that if we multiply it finally by 0.5 the possible values of
will be 0 and 1, which are also the possible values of the composite function
. By this way we find the critical point(s) of the function to minimize or the zeros (the solutions) of the system of simultaneous nonlinear equations. The critical point(s) for which the function to minimize has the minimum value is/are the solution point(s) of the minimization problem.
We can apply this method also for minimization of functions of more independent variables and to solve systems of more nonlinear equations with same or larger number of independent variables. Of course, visualizations are not possible for those cases. Therefore, most of our examples are for functions of two independent variables, because their presentations are more obvious and visualizations are possible.
We use programs in MATLAB (.m) files. We present one example at the end of the paper for solving a system of three simutaneous nonlinear equations with three independent variables. Of course, without visualizations. Our results are with precision of 10−6.
This is not an iterative method.
The method is not for solving boundary optimization problems.
We present graphs of surfaces for
and
only because we cannot really present the graph of the surface on entire space
.
We applied this method for many well known functions, partially listed at the end of the manuscript.
There is not a stopping criterion, because we do not create iterative algorithms for finding the solution.
We suppose that the distance between two critical points is greater or equal
. This restriction is from the software available, not from the algorithm.
There is not a convergence criteria, because no an iterative procedure is used.
For the values of exponential growth the function will not have minima for these values.
For the values of exponential decay the function will not have minima for finite points, according to the conditions to be satisfied.
There are no cases with boundary optima, because we do not consider boundary optimization problems.
We assume that a finite solution point exists, meaning there is at least one point with finite coordinates that solves the global minimization problem.
For the values of exponential decay the function will not have minima for finite points, according to the conditions to be satisfied.
We suppose also that a finite solution point exists for systems of nonlinear equations, meaning that there is at least one point with finite coordinates that solves the system of nonlinear equations.
2. Solving Global Minimization Problems
2.1. Theoretical Approach
Let
is bounded from below function with continuous partial derivatives in the set
, where
is the Euclidean space.
We consider next global minimization problem:
(1)
We assume that a finite solution point exists, meaning there is at least one finite point
where a solution to (1) exists.
Let us find the partial derivatives
and create the system of nonlinear equations:
(2)
As we wrote in introduction, we denote with the function
the sum of the squares of the partial derivatives of the function being minimized, or
.
We denote with num the number of the function being minimized. We introduce four examples, therefore, num will have values from 1 to 4. For example,
denotes the sum of the partial derivatives of the First function for minimization from the Numerical Problems (Example 1), or
denotes the sum of the partial derivatives of the Second function for minimization from the Numerical Problems (Example 2), or
and so on. The function
denotes the composition of the sign function with the function
, or
For example, the composition of the sign function with the sum function of the squares of the partial derivatives of the First function for minimization from the Numerical Problems is denoted with
, the sign function with the sum function of the partial derivatives of the Second function for minimization from the Numerical Problems is denoted with
, and so on.
Function
in the general case will be:
where
, and
,
.
We prove that function
is lower semicontinuous in the Lemma 2.1 below.
We use the property of the sign function
for any continuos function
:
Because
Therefore, also
The surface of the function sign of
, denoted with
is the plane
, a.e. with exception the points in which
and therefore also with exception the points in which
. Also, the surface
is the same plane a.e. with exception of the points in which
.
The composite function
as well as the function
izolates i.e., finds the zeros of the function
, which are the critical points of the function to minimize
.
We adapt the Weierstrass Theorem to support our method.
See Proposition 1.3.4 from [13] and from [14] the Weierstrass Theorem (Theorem 1.29).
Before presenting the Theorem, we need next Lemma.
Lemma 2.1 We denote with
Let
be a set of the Euclidean space
. The function
is lower semicontinuous if for any
and any sequence
in
converging to the point
, the limit of the function values at those points
the inequality
(3)
holds.
Proof. Consider a sequence
converging to
:
Case 1:
. Since,
.
We construct the sequence
that converges to
. Let us suppose that for any
, there exists
such that
and therefore exists also an integer
, such that when
.
It follows that
Therefore,
.
In other words, because
is continuous for every points where
, then for all these points
will be also lower semicontinuous.
Case 2: , thus
.
The only potensial “jump” occurs at
when
.
We construct again the sequence
that converges to
. Let us suppose again that for any
, there exists
such that
and therefore exists also an integer
, such that when
.
It follows that
or
Finally, because
for every point in
, for which
then
when approaching a point for which
from different directions and therefore
Consequently,
is lower semicontinuous also for every point
for which
, i.e. and hence also
, and thus for every point in
.
Let
is bounded from below function with continuous partial derivatives now in the compact subset
, where
is the Euclidean space and the set
is defined as:
, where
and
are finite and real numbers, and
,
.
Theorem 2.1 Suppose
is a compact set of the Euclidean space
and
is lower semicontinuous. Then
has an absolute minimum on
. That means there exists
such that
for all
.
Proof.
Since
is a finite number (due to compactness of
and lower semicontinuity of
), we can construct a sequence
in
such that
approaches infimum as
goes to infinity.
In our case
is bounded below because it has only two possible values, 0 or 1. Therefore, its boundary from below is
.
Define
Therefore the set
is nonempty, bounded below and its boundary from below is
.
For any
there exists
such that for all
we can construct a sequence
in
such that
. By the compactness of
, the sequence
has a convergent subsequence
that converges to some
.
By the definition of lower semicontinuity, we have
Since
approaches the infimum as
goes to infinity, we can conclude:
Because
is a point in
and
is less than or equal to the infimum, it follows that
must be the infimum, meaning the function attains its minimum value at
.
Therefore
This implies
and, hence,
for all
.
2.2. Numerical Algorithm
Our algorithm can be applied for any continuously differentiable functions of finite number independent variables.
The algorithm for finding the minimum of functions of n independent variables.
Let
is bounded from below function with continuous partial derivatives in the set
, where
is the Euclidean space.
We consider again the global minimization problem:
(4)
We assume that a finite solution point exists, meaning there is at least one finite point
where a solution to (1) exists.
Let us denote again the partial derivatives
and create the system of nonlinear equations:
(5)
We denote again with
the number of the correspondent function to minimize (Example number). To solve the system (5), we create the function
of the sum of the squares of the partial derivatives:
(6)
To avoid skipping some critical points by the sign function we subtract a small number
from the function
and then evaluate the composite function,
.We denote with
the step of the meshgrid command in MATLAB 2023b. In our MATLAB 2023b
. By this way we find the critical points of the function to minimize with finding the points for which
. We denoted
, because
will be negative at the critical points. Therefore
will take values of (−1) (negative 1) at the solution points and (+1) (positive 1) for all other points. We will have that
. Because of that
will take again values of zero at the solution points and of 1 for all other points (same values as in the theoretical approach).
The last function isolates the critical points of the function to minimize:
(7)
We solve the equation of n variables:
(8)
For systems of simultanous nonlinear equations,
(9)
we create the function:
and the function
for the general case:
and solve by the same way.
We can apply this method also for minimization of functions of more independent variables and to solve systems of more nonlinear equations with same or more number of independent variables.
When we solve a minimization of a function of
variables
, we find again the function of the sum of squares of the partial derivatives,
and then using the composite function of the sign function,
, with the function
, we create the function:
. The values of this function will be only 0 or 1. The zeros will correspond to the critical numbers of the function to minimize. Therefore, the critical points of the given function to minimize
are found. To fix the isolated critical points of the function to minimize
we used MATLAB programs as
files. Of course, visualizations are not possible.
Visualizations are not possible also, when we solve systems of more than 2 equations and the functions are of more than 2 independent variables. In that case the function
is equal to the sum of the equations of the system, or
.
Finally, our function is:
.
We present one example at the end of the paper of solving a system of three simutaneous nonlinear equations with three independent variables. We present mainly examples for functions of two independent variables, because the method is more clear with visualizations of the solutions.
The advantage of solving the cases in
is that we can visualize the sign function.
These types of functions include many famous optimization problems, we solved already and we do not present in this manuscript, because the limit of pages. We present a list at the end of the additional problems solved.
At the end is introduced a solution of a system of three equations of functions of three independent variables, of course without visualization.
Because the restrictions of the software the distance between two critical points of functions with continuous partial derivatives should be less than
for functions of two variables and less than
for functions of n variables.
3. Numerical Problems
3.1. First Function
Let us find the Global Minimum of the function, known as Three-hump camel function. We are looking for the minimum in the region
of the next function:
Picture for Function 1.
Figure 1. It shows the first surface for global minimization.
The global minimum will be when:
We create the function:
and graph the function
:
Picture of the Function
.
Figure 2. It shows the critical points of the Function 1 to minimize.
Figure 1 and Figure 2 provide an illustration of the given global minimization problem and of finding of its critical points.
We received five zeros of the function
, which is the critical points of the given differentiable function to minimize
. The coordinates of these critical points are:
;
;
;
;
.
We evaluate the function to minimize by substituting the correspondent coordinates
and
, we receive the values of
as follows:
;
;
;
;
.
Therefore, the global minimum is at
.
We present a second solution, using the Substitution Method for comparision:
We received with Substitution Method the global minimum to be
with 78 iterations, precision = 8.2705E−9, and time =0.14 seconds.
These results are summarized in the next Table 1.
Table 1. Comparative study of the solutions of the Global Minimization Problem 1.
Algorithm |
x-results |
y-results |
f(x,y)-results |
time |
New Algorithm |
0.000000 |
0.002000 |
0.000004 |
0 sec. |
Subst. Algorithm |
0.000000 |
0.000000 |
0.000000 |
0.14 sec. |
GlobOpt
|
0.000011 |
0.000009 |
|
0.687 sec. |
GlobOpt
|
−0.000021 |
-0.000013 |
|
0.58 sec. |
GlobOpt
|
−0.000012 |
0.000010 |
|
0.635 sec. |
GlobOpt
|
0.000013 |
−0.000015 |
|
0.593 sec. |
Table 1 shows that our method achieves higher precision with less computational time than existing alternatives for global optimization.
3.2. Second Function
Let us find the Global Minimum of the function:
.
Picture of Function 2.
Figure 3. It shows the second surface for global minimization.
The global minimum of this function will be for
and the partial derivatives should be equal to zero:
We create the function:
and graph the function:
Picture of the Function
.
Figure 4. It shows the critical points of the Function 2 to minimize.
Figure 3 and Figure 4 provide an illustration of the given global minimization problem and of finding of its critical points.
We found three solutions:
;
and
. We evaluate now the given function to minimize
by substituting the correspondent coordinates of
and
and we receive the values of
as follows:
,
and
.
Hence, the global minimum as we predicted is for
. It is with precision = 10−6 at
and it is
.
We present our second approach for finding the global minimum of the given function, using the Substitution Method for comparison.
We received with Substitution Method solution:
and
, with precision 9.3132E−9 for 28 iterations and time less than or equal to 0.000001 sec.
These results are summarized in the next Table 2.
Table 2. Comparative study of the solutions of the Global Minimization Problem 2.
Algorithm |
x-results |
y-results |
f(x,y)-results |
time |
New Algorithm |
−0.670000 |
0.000000 |
−0.4052360521 |
0 sec. |
Subst. Algorithm |
−0.669100 |
0.000000 |
−0.405200 |
sec. |
GlobOpt
|
−0.670200 |
0.000110 |
−0.4052356558 |
1.71 sec. |
GlobOpt
|
−0.667500 |
−0.000300 |
−0.4052344789 |
1.843 sec. |
GlobOpt
|
−0.668200 |
0.000230 |
−0.4052361227 |
1.865 sec. |
GlobOpt
|
−0.670220 |
−0.000210 |
−0.4052355973 |
1.7324 sec. |
Table 2 shows that our method achieves higher precision with less computational time than existing alternatives for global optimization.
3.3. Third Function
Let us find the Global Minimum of the function:
.
This function is known as Himmelblau’s function (see [15]; https://en.wikipedia.org/wiki/Test_functions_for_optimization).
Picture of Function 3.
Figure 5. It shows the third surface for global minimization.
For this particular function to minimize we do not need to find the sum of the squares of the partial derivatives, because the function is a sum of two squared expressions.
We denote now with
the square of the function
:
Let us graph the function:
Picture of the Function
.
Figure 6. It shows the critical points of the Function 3 to minimize.
Figure 5 and Figure 6 provide an illustration of the given global minimization problem and of finding of its critical points.
We received four zeros of the function of
.
;
;
and
.
We evaluate the function to minimize
for the correspondent
and
coordinates of each of these points and receive:
and receive
;
and receive
;
and receive
; and
and receive
.
Therefore, we received 4 (four) global minima with value
with precision = 10−6.
We present a second solution by decreasing the number of the independent variables, using the Substitution Method for comparision.
We received by Substitution Method with precision = 0.000001 for 857 iterations and time = 0.19 seconds:
;
;
; and
.
The results are summarized in the next Table 3.
Table 3. Comparative study of the solutions of the Global Minimization Problem 3.
Algorithm |
x-results |
y-results |
f(x,y)-results |
time |
New algorithm-1 |
3.000000 |
2.000000 |
0.000000 |
0 sec. for sol. 1,2,3, and 4 |
New algorithm-2 |
−3.780000 |
−3.284000 |
|
0 sec. for sol. 1,2,3, and 4 |
New algorithm-3 |
3.584000 |
−1.848000 |
|
0 sec. for sol. 1,2,3, and 4 |
New algorithm-4 |
−2.806000 |
3.132000 |
|
0 sec. for sol. 1,2,3, and 4 |
Subst. Algorithm-1 |
3.000000 |
2.000000 |
0.000000 |
0.19 sec. for sol. 1,2,3. and 4 |
Subst. Algorithm-2 |
−3.779300 |
−3.283186 |
|
0.19 sec. for sol. 1,2,3. and 4 |
Subst. Algorithm-3 |
3.5844266 |
−1.848127 |
|
0.19 sec. for sol. 1,2,3. and 4 |
Subst. Algorithm-4 |
−2.805118 |
3.1313125 |
|
0.19 sec. for sol. 1,2,3. and 4 |
GlobOpt
|
3.0000011 |
2.0000009 |
|
0.483 sec. |
GlobOpt
|
−3.779341 |
−3.283223 |
|
0.3508 sec. |
GlobOpt
|
3.5844283 |
−1.848132 |
|
0.442 sec. |
GlobOpt
|
−2.805126 |
3.1313141 |
|
0.4075 sec. |
Table 3 shows that our method achieves higher precision with less computational time than existing alternatives for global optimization.
3.4. Solving a System of 3 Nonlinear Equations
We can apply this method also to solve systems of more nonlinear equations with same or more number of independent variables. Of course, visualizations are not possible.
Let us solve the system introduced by Burden and Faires (see [16])
(10)
We solve the system by creating the function:
(11)
and solve the equation:
(12)
with a program in MATLAB (.m) file, which locates the isolated zeros of the above function:
. The next results were received:
Number of iterations: 508452, (
,
,
) with precision: 0.000001 and time: 0.0323 sec.
GlobOpt program solved the given system by finding the minimum of the function:
(13)
The results are summarized in the next Table 4.
Table 4. It presents a comparative study with the results of other methods for solving systems of nonlinear equations.
Algorithm |
|
|
|
time |
New Algorithm |
0.5000 |
|
−0.5200 |
0.0323 sec. |
GlobOpt
|
0.5004 |
|
−0.5198 |
0.972 sec. |
GlobOpt
|
0.5008 |
|
−0.5207 |
0.931 sec. |
GlobOpt
|
0.5012 |
0 |
−0.5196 |
0.883 sec. |
GlobOpt
|
0.4985 |
|
−0.5205 |
1.205 sec. |
GlobOpt
|
0.5004 |
|
−0.5192 |
1.013 sec. |
Table 4 shows that our method also achieves higher precision and requires less computational time than existing alternatives for solving systems of nonlinear equations.
We found, with the same method, the global minima of the next functions:
1. Rosenbrock Function (Banana Function):
.
2. Beale Function:
3. Booth Function:
4. Matyasi Function:
5. Ackley Function:
6. McCormick Function:
7. Function:
8. Function:
9. We solved also next system of nonlinear equations:
Acknowledgements
We thank to Prof. Bruce Lundberg, CSU-Pueblo, Prof. Hans Mittelmann, ASU, and Mr. Joshua Strong, UAPB, for their coopetation and support.