# Finding Global Minima with a Filled Function Approach for Non-Smooth Global Optimization

Authors: Weixiang Wang; Youlin Shang; Ying Zhang
Journal: Discrete Dynamics in Nature and Society
 (2010)

---

## Abstract

A filled function approach is proposed for solving a non-smooth unconstrained
global optimization problem. First, the definition of filled function in Zhang (2009) for smooth global
optimization is extended to non-smooth case and a new one is put forwarded. Then, a novel filled
function is proposed for non-smooth the global optimization and a corresponding non-smooth algorithm
based on the filled function is designed. At last, a numerical test is made. The computational results
demonstrate that the proposed approach is effcient and reliable.


---

## Body

## 1. Introduction

Because of advances in science, economics and engineering, studies on global optimization for multi-minimum nonlinear programming problem(P′):minx∈Rnf(x) have become a topic of great concern. There are two difficulties faced by global optimization, one is how to leave the current solution for a better one, another is how to decide the current solution is a global one. So far, most existing methods deal only with the first issue. Among these methods, the filled function method is a practical useful tool for global optimization. It was first put forwarded by [1] for smooth unconstrained global optimization. The idea behind the filled function methods is to construct an auxiliary function that allows us to escape from a given local minimum of the original objective function. It consists of two phase: local minimization and filling. The two phases are used alternately until a global minimizer of (P′) is found. The method has been further developed by [2–8]. In practical problems, however, objective functions are not always smooth, so several scholars have extended the filled function method for smooth global optimization to non-smooth cases(see [9]). In this paper, we modify the concept of filled function presented by [10] and propose a novel class of filled function for non-smooth the global optimization. This paper is divided into 6 sections. The next section presents some non-smooth preliminaries. In Section 3, the modified concept of the filled function for non-smooth global optimization is introduced, a novel class of filled function is given and its properties are investigated. In Section 4, a filled function algorithm is proposed. Section 5 presents some encouraging numerical results. Last, in Section 6, the conclusion is given.


## 2. Non-Smooth Preliminaries

To introduce the concept of the filled function approach for non-smooth global optimization, we recall some definitions and lemmas on non-smooth optimization which would be used in the next section.Definition 2.1.
LetX be a subset of Rn. A function f:X→R is said to be Lipschitz continuous with a constant L on X provided that, for some scalar L>0, one has
(2.1)|f(x)-f(y)|≤L∥x-y∥
for all points x,y∈X.Definition 2.2 (see [11]).
Letf be Lipschitz with constant L at the point x, the generalized gradient of f at x is defined as
(2.2)∂f(x)={ξ∈Rn:<ξ,d≷<f0(x;d),∀d∈X},
where f0(x;d)=lim supy→x,t↓0((f(y+td)-f(y))/t) is the generalized directional derivative of f(x) in the direction d at x.Lemma 2.3 (see [11]).
Letf be Lipschitz with constant L at the point x, then (a)
f0(x;d) is finite, sublinear and satisfies
(2.3)|f0(x;d)|≤L∥d∥.(b)
As a function of(x,d),f0(x;d) is super-semicontinuous; as a function of d, it is Lipschitz with constant L.(c)
∂Σsifi(x)⊆Σsi∂fi(x), for ∀si∈R.(d)
∂f(x)is a nonempty compact convex set, and to any ξ∈∂f(x), one has ∥ξ∥≤L.(e)
∀d∈X, f0(x;d)=max{<ξ,d>:ξ∈∂f(x)}.Lemma 2.4 (see [11]).
Ifx* is a local minimizer of f(x), then 0∈∂f(x*).


## 3. A New Filled Function and Its Properties

Consider problem(P′). To begin with, this paper makes the following assumptions.Assumption 3.1.
f(x) is Lipschitz continuous with a constant L on Rn.Assumption 3.2.
f(x) is coercive, that is, f(x)→+∞ as ∥x∥→+∞.Note that Assumption3.2 implies the existence of a compact set X whose interior contains all minimizers of f(x). We assume that the value of f(x) for x located on the boundary of X is greater than the value of f(x) for any x inside X. Then the original problem is equivalent to problem (P):minx∈Xf(x).Assumption 3.3.
f(x) has only a finite number of different minimal function values in X.Letx* be a local minimizer of (P). In [10], the filled function for smooth global optimization was defined as follows.Definition 3.4.
A functionP(x,x*) is called a filled function of f(x) at a local minimizer x*, if P(x,x*) has the following properties:  (1)
x* is a strict maximizer of P(x,x*).(2)
P(x,x*) has no stationary points in the region S1={x∈X∖{x*}:f(x)≥f(x*)}.(3)
Ifx* is not a global minimizer of (P), then P(x,x*) has at least one minimizer in the region S2={x∈X:f(x)<f(x*)}.This paper extends about definition to non-smooth case and gives the following definition of a filled function.Definition 3.5.
A functionP(x,x*) is called a filled function of f(x) at a local minimizer x*, if P(x,x*) has the following properties:  (1)
x* is a strict maximizer of P(x,x*).(2)
One has0∉∂P(x,x*), for any x∈S1={x∈X:f(x)≥f(x*),x≠x*}.(3)
Ifx* is not a global minimizer of (P), then P(x,x*) has at least one minimizer in the region S2={x∈X:f(x)<f(x*)}.For convenience, we useL(P) and G(P) to denote the set of local minimizers and the set of global minimizers of problem (P), respectively.In what follows, we first design a functionφ(t) satisfying the following conditions:(1)
φ(0)=0,(2)
∀t∈[-t1,∞),φ′(t)>0 (where t1≥0),(3)
limt→+∞(tφ′(t)/φ(t))=0,(4)
φ′′(t)≤0 for any t≥0.Some examples of the functionφ(t) with the properties 1–4 are ln(1+t), t/(1+t), 1-exp(-t).Now, a filled function with two parameters for non-smooth global optimization is constructed as follows(3.1)F(x,x*,q,r)=11+q∥x-x*∥φ(q|f(x)-f(x*)+r|),
where q>0 and r>0 are parameters, r satisfies 0<r<f(x*)-f(xG), where xG∈G(P).Next, we will show that the functionF(x,x*,q,r) is a filled function satisfying Definition 3.5.Theorem 3.6.
Letx*∈L(P). If q>0 is large enough such that L>(φ′(qr)/φ(qr)), then x* is a strict maximizer of F(x,x*,q,r).Proof.
Sincex*∈L(P), there exists a neighborhood O(x*,δ) of x* with δ>0 such that f(x)≥f(x*) for all x∈O(x*,δ)⋂X and x≠x*. By the mean value theorem, it follows that
(3.2)F(x,x*,q,r)=φ(q(f(x)-f(x*)+r))1+q∥x-x*∥≤φ[q(L∥x-x*∥+r)]1+q∥x-x*∥=φ(qr)+qL∥x-x*∥φ′[qr+θqL∥x-x*∥]1+q∥x-x*∥≤φ(qr)+qL∥x-x*∥φ′(qr)1+q∥x-x*∥,
where θ∈(0,1).
By the property (3) ofφ(t), when q is sufficiently large such that
(3.3)q>qrφ′(qr)φ(qr)Lr,
we have that
(3.4)φ(qr)+qL∥x-x*∥φ′(qr)1+q∥x-x*∥<φ(qr)+q∥x-x*∥φ(qr)1+q∥x-x*∥=φ(qr)=F(x*,x*,q,r).
Therefore we obtain that
(3.5)F(x,x*,q,r)<F(x*,x*,q,r)foranyx∈O(x*,δ)⋂Xwithx≠x*.
Hence, x* is a strict maximizer of F(x,x*,q,r).Theorem 3.7.
Assume thatx*∈L(P). To any x∈S1, if q>0 is large enough such that qL(1+M)(φ′(qr)/φ(qr))<1, where M=maxx∈X∥x-x*∥, then one has 0∉∂F(x,x*,q,r). In other words, x is not a stationary point of F(x,x*,q,r).Proof.
We first note that for anyx∈S1, one has f(x)≥f(x*),x≠x*, and
(3.6)∂F(x,x*,q,r)⊂qφ′(q(f(x)-f(x*)+r))1+q∥x-x*∥∂f(x)-qφ(q(f(x)-f(x*)+r))(1+q∥x-x*∥)2x-x*∥x-x*∥.
Denotingd=(x-x*)/∥x-x*∥, for any ξ∈∂F(x,x*,q,r), there exists η∈∂f(x) such that
(3.7)〈ξ,d〉=〈qφ′(q(f(x)-f(x*)+r))1+q∥x-x*∥η-qφ(q(f(x)-f(x*)+r))(1+q∥x-x*∥)2x-x*∥x-x*∥,x-x*∥x-x*∥〉=qφ(q(f(x)-f(x*)+r))(1+q∥x-x*∥)2×[φ′(q(f(x)-f(x*)+r))φ(q(f(x)-f(x*)+r))×1+q∥x-x*∥∥x-x*∥×(x-x*)Tη-1]≤qφ(q(f(x)-f(x*)+r))(1+q∥x-x*∥)2[φ′(qr)φ(qr)(1+qM)Ł-1]≤qφ(q(f(x)-f(x*)+r))(1+q∥x-x*∥)2[Lqrφ′(qr)φ(qr)(1+M)r-1]<0.
So, to anyξ∈∂F(x,x*,q,r), one has ξTd<0. Then 0∉∂F(x,x*,q,r).Theorem 3.8.
Assume thatx*∈L(P)∖G(P). Then there exists a point x0*∈S2={x|f(x)<f(x*),x∈X} such that x0* is a minimizer of F(x,x*,q,r).Proof.
Sincex*∈L(P)∖G(P), then there exists a point x**∈G(P) such that f(x**)<f(x*). Now, by the choice of parameter of r, one has
(3.8)f(x**)-f(x*)+r<0,
so that there exists at least one point x0*∈X, such that
(3.9)f(x0*)-f(x*)+r=0.
It follows that F(x0*,x*,q,r)=0. On the other hand, by the definition of F(x,x*,q,r), we have F(x,x*,q,r)≥0. Therefore, we conclude F(x,x*,q,r)≥F(x0*,x*,q,r) for all x∈X, which implies that x0* is a minimizer of F(x,x*,q,r).
Theorem3.6–3.3 state clearly that the proposed filled function satisfies the properties 1–3 of Definition 3.5.Theorem 3.9.
Suppose thatx1,x2∈S1 and ∥x1-x*∥>∥x2-x*∥>0.(a)
If there exists a constantB>0 such that limt→+∞φ(t)=B, then, for sufficiently large q>0, one has F(x1,x*,q,r)<F(x2,x*,q,r).(b)
If there exists a constantC>0 such that limt→+∞(φ(t)/ln(1+t))=C, then for sufficiently large q>0, it holds F(x1,x*,q,r)<F(x2,x*,q,r).Proof.
Letx1,x2∈S1, that is  f(x1)≥f(x*),f(x2)≥f(x*). For simplicity, let f̂1=f(x1)-f(x*)+r,f̂2=f(x2)-f(x*)+r.
(a) In this case, we can see that
(3.10)limq→+∞φ(qf̂2)φ(qf̂1)=1,limq→+∞1+q∥x2-x*∥1+q∥x1-x*∥=∥x2-x*∥∥x1-x*∥<1,
since limt→+∞φ(t)=B and ∥x1-x*∥>∥x2-x*∥>0.
Therefore, for largeq, there exists
(3.11)φ(qf̂2)φ(qf̂1)>1+q∥x2-x*∥1+q∥x1-x*∥.
It follows that F(x1,x*,q,r)<F(x2,x*,q,r).
(b) Ifφ(t)=ln(1+t) and q>0 is sufficiently large, then
(3.12)ln(1+qf̂2)ln(1+qf̂1)>1+q∥x2-x*∥1+q∥x1-x*∥.
Thus, we have F(x1,x*,q,r)<F(x2,x*,q,r).
Ifφ(t)≠ln(1+t) but limt→+∞(φ(t)/ln(1+t))=C, then
(3.13)limq→+∞φ(qf̂2)φ(qf̂1)=limq→+∞[φ(qf̂2)ln(1+qf̂2)·ln(1+qf̂1)φ(qf̂1)·ln(1+qf̂2)ln(1+qf̂1)]=1,φ(qf̂2)φ(qf̂1)>1+q∥x2-x*∥1+q∥x1-x*∥.
Therefore, F(x1,x*,q,r)<F(x2,x*,q,r).


## 4. Solution Algorithm

In this section, we state our algorithm(NFFA) for non-smooth global optimization based on the previous proposed filled function.Algorithm NFFA
Initialization Step:
(1) Set a disturbance δ=0.1.
(2) Choose an upper boundqU>0 of q, for example, set qU:=108.
(3) Setq̂=10.
(4) Choose directions ek,k=1,2,…,k0, where k0≥2n, n is the number of variables.
(5) Specify an initial pointx∈X to start phase 1 of the algorithm.
(6) Setr=10-6.
(7) Setk:=1.Main Step
(1) Starting from x∈X, activate a non-smooth local minimization procedure to minimize f(x), and find its local minimizer x1*.
(2) Letq=1.
(3) Construct the filled function as follows:
(4.1)F(x,x1*,q,r)=11+q∥x-x1*∥φ(q|f(x)-f(x1*)+r|).
(4) else If   k>k0,then  go to 6.
Usex:=x1*+δek as an initial point, minimize the filled function problem(FP):minx∈XF(x,x1*,q,r) by implementing a non-smooth local minimization procedure and obtain a local minimizer xk.
(5)If  xk satisfies f(xk)<f(x1*),then  set x:=xk and k:=1. Use point x as a new initial point, minimize problem (P) by implementing a local search procedure and obtain another local minimizer x2* of f(x) such that f(x2*)<f(x1*), set x1*:=x2*, go to 2; Otherwise, set k:=k+1, go to 4.
(6) Increaseq by setting q:=q̂q.
(7)If  q≤qU,then  set k:=1, go to 3;  else the algorithm is incapable of finding a better local minimizer, the algorithm stops and x1* is taken as a global minimizer.The motivation and mechanism behind this algorithm are explained below.In Step4 of the Initialization step, we choose direction ek,k=1,2,…,k0 as positive and negative unit coordinate vectors, where k0=2n. For example, when n=2, the directions can be chosen as (1,0),(0,1),(-1,0),(0,-1).In Steps1, 4 and 5 of the Main step, we minimize problem (P) by applying non-smooth local optimization algorithms, such as Hybrid Hooke and Jeeves-Direct Method for Non-smooth Optimization[12], Mesh Adaptive Direct Search Algorithms for Constrained Optimization [13], Bundle methods, Powell's method, and so forth. In particular, the Hybrid Hooke and Jeeves-Direct Method is more preferable to others, since it is guaranteed to find a local minimum of a non-smooth function subject to simple bounds.Recall from Theorems3.7 and 3.8 that the value of q should be selected sufficiently large. In Main Step 2, we first set q=1, then it is gradually increased until it reaches the preset upper bound qU. If the parameter q exceeds qU and we cannot find a point x∈X such that f(x)<f(x1*), then we believe that there does not exist a better local minimizer of problem (P), the current local minimizer is taken as a global minimizer and the algorithm is terminated.


## 5. Numerical Experiment

In this section, we apply the above algorithm to several test problems to demonstrate its efficiency. All the numerical experiments are implemented in Fortran 95, under Windows XP and Pentium (R) 4 CPU 2.80 GMHZ. In our programs, the filled function is of the form(5.1)F(x,x*,q,r)=11+q∥x-x*∥log(1+q|f(x)-f(x*)+r|).
In non-smooth case, we obtain a local minimizer by using the Hybrid Hooke and Jeeves-Direct Method. In smooth case, we apply the PRP Conjugate Gradient Method to get the search direction and the Armijo line search to get the step size. The numerical results prove that the proposed approach is efficient.Problem 5.1.
(5.2)minf(x)=|x-14|+|sin(π(1+x-14))|+7s.t.-10≤x≤10.
The global minimum solution: x*=1.0000 and f(x*)=7.0000. In this experiment, we used an initial point x0=8. The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 21.7842 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 953 and 1167, respectively.Problem 5.2.
(5.3)minf(x)=|x-2|(1+10|sin(x+2)|)+3s.t.-10≤x≤10.
The global minimum solution: x*=2.0000 and f(x*)=3.0000. In this experiment, we used an initial point x0=-5. The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 23.9746 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 8195 and 9479, respectively.Problem 5.3.
(5.4)minf(x)=max{5x1+x2,-5x1+x2,x12+x22+4x2}s.t.-4≤x1≤4,-4≤x2≤4.
The global minimum solution: x*=(0,-3) and f(x*)=-3. In this experiment, we used an initial point x0=(-4,2). The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 28.5745 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 1986 and 2488, respectively.Problem 5.4.
(5.5)minf(x)=-20exp(-0.21n∑i=1n|xi|)-exp(1n∑i=1ncos(2πxi))+20s.t.-20≤xi≤30,i=1,2,…,n.
For any n, the global minimum solution: x*=(0,0,…,0) and f(x*)=-2.7183. In this experiment, we considered n=10 and used x0=(-10,-10,…,-10) as an initial point. The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 93.6783 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 7631 and 9739, respectively.Problem 5.5.
(5.6)minf(x)=maxj=1,…,m∑i=1n(ixi-1)2i+j-1+minj=1,…,m∑i=1n(ixi-1)2i+j-1s.t.-10≤xi≤10,i=1,…,n.
For any n,m, the global minimum solution: x*=(1,0.5,…,0.1) and f(x*)=0. In this experiment, we considered n=15,m=15, and used x0=(-7,-7,…,-7) as an initial point. The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 149.5783 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 9761 and 14264, respectively.Problem 5.6.
(5.7)minf(x)=πn(10sin2πx1+g(x)+(xn-1)2)s.t.-10≤xi≤10,i=1,2,…,n,
where g(x)=∑i=1n-1[(xi-1)2(1+10sin2πxi+1)]. For any n, the global minimum solution: x*=(1,1,…,1) and f(x*)=0. In this experiment, we considered n=20, and used x0=(7,7,…,7) as an initial point. The algorithm can successfully obtain the global minimizer. The time to reach the global minimizer is 172.8436 seconds. The numbers of the filled function and the original objective function being calculated in the algorithm are 12674 and 16774, respectively.


## 6. Conclusions

In this paper, we first give a definition of a filled function for a non-smooth unconstrained minimization problem and construct a new filled function with two parameters. Then, we design an elaborate solution algorithm based on this filled function. Finally, we make a numerical test. The computational results suggest that this filled function approach is efficient. Of course, the efficiency of the proposed filled function approach relies on the non-smooth local optimization procedure. Meanwhile, from the numerical results, we can see that algorithm can move successively from one local minimum to another better one, but in most cases, we have to use more time to judge the current point being a global minimizer than to find a global minimizer. However, the global optimality conditions for continuous variables are still open problem, in general. The criterion of the global minimizer will provide solid stopping conditions for a continuous filled function method.



---

*Source: 843609-2010-03-08.xml*