## Services on Demand

## Journal

## Article

## Indicators

## Related links

- Cited by Google
- Similars in SciELO
- Similars in Google

## Share

## Computational & Applied Mathematics

##
*Print version* ISSN 2238-3603*On-line version* ISSN 1807-0302

### Comput. Appl. Math. vol.28 no.2 São Carlos 2009

#### http://dx.doi.org/10.1590/S1807-03022009000200003

**A filter SQP algorithm without a feasibility restoration phase ^{*}**

**Chungen Shen ^{I,II}; Wenjuan Xue^{III}; Dingguo Pu^{I}**

^{I}Department of Mathematics, Tongji University, China, 200092

^{II}Department of Applied Mathematics, Shanghai Finance University, China, 201209

^{III}Department of Mathematics and Physics, Shanghai University of Electric Power, China, 200090 E-mail: shenchungen@gmail.com

**ABSTRACT**

In this paper we present a filter sequential quadratic programming (SQP) algorithm for solving constrained optimization problems. This algorithm is based on the modified quadratic programming (QP) subproblem proposed by Burke and Han, and it can avoid the infeasibility of the QP subproblem at each iteration. Compared with other filter SQP algorithms, our algorithm does not require any restoration phase procedure which may spend a large amount of computation. We underline that global convergence is derived without assuming any constraint qualifications. Preliminary numerical results are reported.

**Mathematical subject classification: **65K05, 90C30.

**Key words: **filter, SQP, constrained optimization, restoration phase.

**1 Introduction **

In this paper, we consider the constrained optimization problem:

where *c*(*x*) = (*c*_{1}(*x*), *c*_{2}(*x*), ... , *c _{m}*

_{1 }(

*x*))

^{T },

*c*(

*x*) = (

*c*

_{m}_{1+1}(

*x*),

*c*

_{m}_{1+2}(

*x*), ... ,

*c*(

_{m}*x*))

^{T }, ={1, 2, ... ,

*m*

_{1}}, = {

*m*

_{1}+ 1,

*m*

_{1}+ 2, ... ,

*m*}, ƒ:

^{n }and

*c*:

_{i}^{n },

*i*are twice continuously differentiable functions. The feasible set of the problem (NLP) is denoted by

*X*= {

*x*

*R*

^{n }|

*c*(

*x*) = 0,

*c*(

*x*)

__<__0}.

The sequential quadratic programming (SQP) method has been widely used for solving the problem (NLP). It generates a sequence {*x _{k} *} converging to the desired solution by solving the quadratic programming (QP) subproblem:

where ρ> 0 is the trust region radius, *B _{k} *

^{n×n }is a symmetric positive definite matrix. At each iteration

*x*, the solution

_{k}*d*of the QP subproblem is regardedas a trial step and the next trial iterate has the form

*x*+

_{k}*d*. The acceptance of this trial step depends on whether the trial iterate

*x*+

_{k}*d*makes some merit function descent. Generally, this merit function is a type of penalty function with some parameters whose adjustment can be problematic. Fletcher and Leyffer [7] proposed a trust region filter SQP method to solve the problem (NLP) instead of traditional merit function SQP methods. In addition, the computational results presented in Fletcher and Leyffer [7] are also very encouraging.

Recently, this topic got high importance in recent years (see [6, 17, 18, 22, 23]). Trust region filter SQP methods have been studied by Fletcher, Leyffer and Toint in [8] and by Fletcher, Gould, Leyffer, Toint and Wächter in [9]. In this latter paper, an approximate solution of the QP subproblem is computed and the trial step is decomposed into normal and tangential components. Gonzaga, Karas and Vanti [10] presented a general framework for filter methods where each step is composed of a feasibility phase and an optimality phase. Similar filter method was proposed by Ribeiro, Karas and Gonzaga in [21]. In all these papers only the global convergence of the proposed methods is analyzed. On the other hand, in [24], Ulbrich studied the local convergence of a trust region filter SQP method. Anyway, the components in the filter adopted in [24], differs from those in [7, 8, 9]. It should be underlined that the filters approach has been used also in conjunction with the line search strategy (see Wächter and Biegler [26, 27]); with interior point methods (see Benson, Shanno and Vanderbei [5]; Ulbrich, Ulbrich and Vicente [25]) and with the pattern search method (see Audet and Dennis [1]; Karas, Ribeiro, Sagastizábal and Solodov [15]).

However, all filter algorithms mentioned above include the provision for a feasibility restoration phase if the QP subproblem becomes inconsistent. Although any method (e.g. [3, 4, 16]) for solving a nonlinear algebraic system of equalities and inequalities can be used to implement this calculation, a large amount of computation may be spent. In this paper, we incorporate the filter technique with the modified QP subproblem for solving general constrained optimization problems. The main feature of this paper is that there is no restoration phase procedure. Another feature is that global convergence of our algorithm is established without assuming any constraint qualifications.

This paper is organized as follows. In section 2, we describe how the modified QP subproblem is embedded in the filter algorithm. In section 3, it is proved that the algorithm is well defined, and is globally convergent to a stationary point. If Mangasarian-Fromowitz constraint qualification (MFCQ) holds at this stationary point, then it is a KKT point. In section 4, we report some numerical results.

**2 Algorithm**

It is well-known that the Karush-Kuhn-Tucker (KKT) conditions for the problem (NLP) are:

where

is the Lagrangian function, µ *R*^{m1 }and λ *R*^{m-m1 }are the multipliers corresponding to the constraints of the problem (NLP).

The SQP method generates iterates by solving the subproblem (1.1). However, the subproblem (1.1) may be inconsistent if xk is not a feasible point for the problem (NLP). In order to avoid this bad situation, we solve a modified QP subproblem instead of the subproblem (1.1). Before introducing the modified QP subproblem, we first solve the problem

where the scalar σ_{k }> 0 is used to restrict *d *in norm. Let _{k } denote the solution of (2.4). If σ_{k }__ <__ ρ and *q _{l} *(

_{k }) = 0, then the QP subproblem (1.1) is consistent. The problem (2.4) can be reformulated as a linear program

where vectors *e*_{m1 }= (1, 1, ... , 1)^{T } ^{m1 }and *e*_{m-m1 }= (1, 1, ... , 1)^{T } ^{m-m1}.

Now we define that (*x _{k}*, σ

_{k }) and (

*x*,σ

_{k}_{k }) are equal to 2 and

*c*(

*x*)

_{k}^{T}

_{k }+

*c*(

*x*), respectively, where (

_{k}_{k },

_{1},

_{2}) denotes the solution of (2.5). At each iteration, we generate the trial step by solving the modified QP subproblem

Here, at each iterate, we require that ρ_{k }be greater than σ_{k }. So, the choice of σ_{k }depends on ρ_{k}.

Define Φ(*x _{k} *,σ

_{k }) = , where

_{i }(

*x*,σ

_{k}_{k }) and

_{i}(

*x*,σ

_{k}_{k }) denote the

*i*th component of (

*x*,σ

_{k}_{k }) and (

*x*,σ

_{k}_{k }) respectively. Actually, Φ(

*x*,σ

_{k}_{k }) =

*q*(

_{l}_{k }) with the scalar σ

_{k }> 0. Obviously,

*d*= 0 is feasible for the problem (2.4) and then

*q*(

_{l}_{k })

__<__

*q*(0) =

_{l}*V*(

*x*), where the constraint violation

_{k}*V*(

*x*) is defined as

Therefore, Φ(*x _{k} *,σ

_{k })

__<__

*V*(

*x*).

_{k}Let *d *denote the solution of __QP__(*x _{k}, B_{k}*, σ

_{k}, ρ

_{k }). Let the trial point be =

*x*+

_{k}*d*. The KKT conditions for the subproblem

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ

_{k }) are

where *e _{n} *= (1, 1, ... , 1)

^{T }

^{n}, µ

*k*

^{m1}, λ

*k*

^{m-m1}, λ

^{l}

_{k }

^{n }and λ

^{u}

_{k }

^{n}.

In our filter, we consider pairs of values (*V *(*x*), ƒ(*x*)). Definitions 1-4 below are very similar to those in [7, 8].

**Definition 1. **The iterate *x _{k} *dominates the iterate

*x*if and only if

_{l}*V*(

*x*)

_{k}__<__

*V*(

*x*) and ƒ(

_{l}*x*)

_{k}__<__ƒ(

*x*). And it is denoted by

_{l}*x*.

_{k}__<__x_{l}Thus, if *x _{k} < x_{l} *, the latter is of no real interest to us since

*x*is at least as good as

_{k}*x*with respect to the objective function's value and the constraint violation. Furthermore, if

_{l}*x*, we say that the pair (

_{k}__<__x_{l}*V*(

*x*), ƒ(

_{k}*x*)) dominates the pair (

_{k}*V*(

*x*), ƒ(

_{l}*x*)).

_{l}**Definition 2. **The *k*th filter is a list of pairs {(*V *(*x _{l}*), ƒ(

*x*))}

_{l}_{l<k }, such that nopair dominates any other.

Let _{k }denote the indices in the *k*th filter, i.e.,

Filter methods accept a trial point = *x _{k} *+

*d*if its corresponding pair (

*V*(), ƒ()) is not dominated by any other pair in the

*k*th filter, neither the pair corresponding to

*x*, i.e., (

_{k}*V*(

*x*), ƒ (

_{k}*x*)).

_{k}In a filter algorithm, one accepts a new pair (*V *(), ƒ()) if it cannot be dominated by other pairs in the current filter. Although the definition of filter is simple, it needs to be refined a little in order to guarantee the global convergence.

**Definition 3. **A new trial point is said to be "acceptable to *x _{l} *", if

is satisfied, where γ_{i } (0, ½), *i *= 1, 2 are two scalars.

**Definition 4. **A new trial point is said to be "acceptable to the *k*th filter" if is acceptable to *x _{l} *for all

*l*

_{k }.

Therefore, to accept a new pair into the current filter, we should test the conditions defined in Definition 4. If the new trial point is acceptable in the sense of Definitions 3 and 4, we may wish to add the corresponding pair to the filter. Meanwhile, any pair in the current filter dominated by the new pair is removed.

In order to restrict *V *(*x _{k}*), it still needs an upper bound condition for accepting a point. The trial point satisfies the upper bound condition if

holds, where _{k }is a positive scalar. Here _{k }is updated at each iteration and it may converge to zero for some instances. We aim to control the constraint violation by setting _{k }. In current iteration *k*, if a trial step is accepted and Φ(*x _{k} *,σ

_{k }) = 0, then we will keep

_{k }unchanged in next iteration. Otherwise we will reduce

_{k }in next iteration. The detailed information about the update of

_{k }is given in Algorithm 2.1.

Denote

as the quadratic reduction of ƒ(*x*), and

as the actual reduction of ƒ(*x*). In our algorithm, if a trial point *x _{k} *+

*d*is acceptable to the current filter and

*x*, and

_{k}the sufficient reduction criterion of the objective function ƒ should be satisfied, i.e.,

Now we are in the position to state our filter SQP algorithm.

**Algorithm 2.1.**

**Step 1.** Initialization.

Given initial point *x*_{0}, parameters η (0, ½), γ_{1} (0, ½), γ_{2} (0, ½), γ (0, 0.1), *r * (0, 1), _{0} > 0, ρ_{min} > 0, > ρ_{min}, ρ [ρ_{min}, ], σ_{0} γρ, ρ). Set *k *= 0, Flag=1, put *k *into _{k }.

**Step 2. **Compute the search direction.

Compute the search direction *d *from the subproblem __QP__(*x _{k}, B_{k}*, σ

_{k}, ρ). If ρ

__>__ρ

_{min}, set

*d*=

_{s}*d*and Φ

_{s }= Φ(

*x*, σ

_{k}_{k}).

**Step 3. **Check for termination.

If *d *= 0 and *V *(*x _{k}*) = 0, then stop;

Else if *V *(*x _{k}*) > 0 and Φ(

*x*, σ

_{k}_{k }) -

*V*(

*x*) = 0, then stop.

_{k}**Step 4. **Test to accept the trial point.

**4.1. **Check acceptability to the filter.

If the upper bound condition (2.8) holds for = *x _{k} *+

*d*, Φ(

*x*, σ

_{k}_{k}) = 0, and

*x*+

_{k}*d*is acceptable to both the

*k*th filter and

*x*, then go to 4.3.

_{k}Otherwise, if Φ(*x _{k}*, σ

_{k}) = 0, then set ρ = ½ ρ and choose σ

_{k }(γρ, ρ), go to Step 2;

**4.2. **Compute *t _{k} *, the first number

*t*of the sequence {1,

*r, r*

^{2 }, ... , } satisfying

Set Flag=0, *d *= *d _{s}*, and go to 4.4.

**4.3. **Check for sufficient reduction criterion.

If Δ ƒ(*d*) < ηΔ*q*(*d*) and Δ*q*(*d*) > 0, then ρ = ½ ρ and choose σ_{k } (γρ, ρ), and go to Step 2;

otherwise go to 4.4.

**4.4. **Accept the trial point.

Set

and

**Step 5. **Augment the filter if necessary.

If Flag=1 and Δ*q*(*d _{k}*)

__<__0, then include (

*V*(

*x*), ƒ(

_{k}*x*)) in the

_{k}*k*th filter.

If Flag=0, then set _{k +1} = *V *(*x _{k} *+

*t*); otherwise, set

_{k}d_{k}_{k +1}=

_{k }and leave the filter unchanged.

**Step 6. **Update.

Compute *B*_{k +1}. Set σ_{k +1} (γρ, ρ) and *k *:= *k *+ 1, Flag=1, go to Step 2.

**Remark 1. **The role *d _{s} *in Step 2 is to record a trial step

*d*with ρ

__>__ρ

_{min}. By Step 4.1, we know that if Φ(

*x*,σ

_{k}_{k }) > 0, then both conditions in Step 4.1 are violated. A trial iterate

*x*+

_{k}*d*with Φ(

*x*, σ

_{k}_{k }) > 0 may be considered as a "worse" step which may be far away from the feasible region. So Step 4.2 is executed to reduce the constraint violation. The step

*d*is used in Step 4.2 due to the descent property of

_{s}*d*proved by Lemma 3.4. In addition, it should be interpreted that, at the beginning of iteration

_{s}*k*, the pair (

*V*(

*x*), ƒ(

_{k}*x*)) is not in the current filter, but

_{k}*x*must be acceptable to the current filter.

_{k}**Remark 2. **Our algorithm has three loops: the loop 2-(4.1)-2, the loop 2-(4.3)-2, and the loop 2-6-2. We observed that the radius ρ is allowed to reduce to a value less than ρ_{min} in the loops 2-(4.1)-2 and 2-(4.3)-2. But in the loop 2-6-2 the radius ρ is not less than ρ_{min}. At each iteration, the first trial radius ρ is greater than or equal to ρ_{min}. Subsequently, trial radius ρ may not stop decreasing until either the filter acceptance criteria are satisfied or Step 4.2 is executed. Hence, ρ may be less than ρ_{min} during the execution process of the loops 2-(4.1)-2 and 2-(4.3)-2.

As for proving global convergence, we use the terminology firstly introduced by Fletcher, Leyffer and Toint [8]. We call *d *an ƒ-*type step *if Δ*q*(*d*) > 0, indicating that then the sufficient reduction criterion (2.12) is required. If *d* is accepted as the final step *d _{k} *in the

*k*th iteration, we refer to

*k*as an ƒ

*-type iteration*.

Similarly, we call *d *a *V *-*type step *if Δ*q*(*d*) __<__ 0. If *d *is accepted as the final step *d _{k} *in iteration

*k*, we refer to

*k*as a

*V -type iteration*. In addition, if

*x*is generated by Step 4.2, we also refer to it as a

_{k}*V -type iteration*.

If ƒ (*x*_{k +1}) < ƒ (*x _{k}*), then we regard the step

*d*as an ƒ

_{k}*monotone step*. Obviously, an ƒ

*-type step*must be an ƒ

*monotone step*.

**3 Global convergence**

In this section, we prove the global convergence of Algorithm 2.1. Firstly, we give some assumptions:

**(A1) **Let {*x _{k}*} be generated by Algorithm 2.1 and {

*x*}, {

_{k}*x*+

_{k}*d*} are contained in a closed and bounded set

_{k}*S*of

^{n};

**(A2) **All the functions ƒ , *c _{i} , i * are twice continuously differentiable on

*S*.

**(A3) **The matrix *B _{k} *is uniformly positive definite and bounded for all

*k*.

**Remark 3. **Assumption (A1) is reasonable. It may be forced if, for example, the original problem involves a bounded box among its constraints.

**Remark 4. **A consequence of Assumption (A3) is that there exist constants δ, *M *> 0, independent of *k *such that δ*y*^{2 }__<__ *y*^{T }*B _{k}y *

__<__

*M*

*y*

^{2 }for all

*y*

^{n}. Assumptions (A1) and (A2) imply boundedness of

^{2}

*c*(

_{i}*x*)

*i*, and

^{2}ƒ (

*x*) on

*S*. Without loss of generality, we may assume

^{2}

*c*(

_{i}*x*)

__<__

*M, i*,

^{2}ƒ (

*x*)

__<__

*M*,

*x*

*S*.

**Lemma 3.1. ***Assume * *is not a stationary point of V in the sense that *0 *V *(),* where * *V denotes the Clarke subdifferential of V . Then there exists a scalar * > 0 *and a neighborhood N*() *of *,* such that *Φ(*x*, σ) - *V*(*x*) < - * for all *σ __>__ γρ_{min} *and all x * *N *().

**Proof. **By [2, Lemma 2.1], 0 *V *() implies Φ(, γρ_{min}) - *V *() < 0, where γ and ρ_{min} are from Algorithm 2.1. By the continuity of the function Φ (· ,γρ_{min}) - *V *(·) on ^{n}, there exists a neighborhood *N*() and a scalar > 0 such that Φ(*x*,γρ_{min}) - *V*(*x*) < - whenever *x * *N *(). The condition σ __>__ γρ_{min} together with the definition of Φ yields Φ (*x*,σ) - *V *(*x*) __<__ Φ(*x*, γρ_{min}) - *V *(*x*). Therefore, Φ(*x*, σ) - *V *(*x*) < - holds for all σ __>__ γρ_{min} and all *x * *N *().

**Remark 5. **It can be seen that depends on such that 0 *V *() (i.e., = ()), because it must satisfy Φ(,σ) - *V *()< -.

**Lemma 3.2. ***Let d _{k} *= 0

*be a feasible point of*(

__QP__*x*, σ

_{k}, B_{k}_{k}, ρ

_{k })

*. Then x*(

_{k}is a stationary point of V*x*)

*. Moreover, if x*

_{k}*X, then x*

_{k}is a KKT point of the problem (NLP).**Proof. **Since *d _{k} *= 0 implies Φ(

*x*,σ

_{k}_{k }) -

*V*(

*x*) = 0, it follows from [2, Lemma 2.1] that

_{k}*x*is a stationary point of

_{k}*V*(

*x*). If

*V*(

*x*) = 0 and

_{k}*d*= 0, then it follows from [2, Lemma 2.2] that

_{k}*x*is a KKT point for the problem (NLP).

_{k}**Lemma 3.3. ***Let Assumptions *(*A*1)*-*(*A*3) *hold and d be a feasible point of the subproblem *__ QP__(

*x, B*, σ, ρ),

*then we have*

for *t * [0, 1].

**Proof. **By Taylor Expansion formula, the feasibility of *d *and Assumption (A2), we have that for *i * and *t * [0, 1],

and for *i * and *t * [0, 1],

where the vector *z _{i} *is between

*x*and

*x*+

*td*. The term ½

*t*

^{2}

*nM*ρ

^{2 }in (3.15) and (3.16) is derived because

where we use that ·^{2 }__<__ *n*·^{2}. Formulae (3.15) and (3.16) combining with definitions of *V *(*x*) and Φ(*x*,σ) yield (3.14).

The following lemma shows that the loop in Step 4.2 is finite.

**Lemma 3.4. ***Let Assumptions *(*A*1)*-*(*A*3) *hold*, η (0, ½) *and * *satisfies *0 *V *()*. Then, there exist a scalar* > 0 *and a neighborhood N *() *of * *such that for any x * *N *() *and any d feasible for the problem *__ QP__(

*x, B*, σ, ρ)

*with*γρ

_{min}

__<__σ

__<__ρ

__<__,

*it holds that*

*for all t * (0, ].

**Proof. **It follows from Lemma 3.1 that there exists a neighborhood *N *() and () > 0 such that Φ(*x*, σ) - *V*(*x*) < -() whenever *x * *N *(). Combining this with (3.14), we have

Hence, the inequality (3.17) holds for all *t * (0, ()], where

Hence, if 0 *V *(*x _{k}*), (2.13) follows taking =

*x*=

*x*and

_{k}*d*=

*d*. It implies that the loop in Step 4.2 is finite.

_{s}The following lemma shows that the iterate sequence {*x _{k}*} approaches a stationary point of

*V*(

*x*) when Step 4.2 of Algorithm 2.1 is invoked infinitely many times.

**Lemma 3.5 ***If Step *4.2 *of Algorithm *2.1 *is invoked infinitely many times, then there exists an accumulation point * *of *{*x _{k} *}

*such that the sequence*{

_{k }}

*converges to V*(),

*where*0

*V*(),

*i.e.*,

*is a stationary point of V*(

*x*).

**Proof. **Since Step 4.2 is invoked infinitely many times. By Step 5 _{k +1} is reset by *V *(*x _{k} *+

*t*) infinitely. From Step 2 and 4.2, we note that if Step 4.2 is invoked at iteration

_{k}d_{k}*k*, the radius ρ in

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ) associated with

*d*is greater than or equal to ρ

_{s}_{min}. Define ={

*k*|

_{k +1}is reset by

*V*(

*x*+

_{k}*t*)}. Obviously, is an infinite set. The inequality (2.13) ensures

_{k}d_{k}*V*(

*x*

_{k +1}) =

_{k +1}for all

*k*. The upper bound condition (2.8) ensures

*V*(

*x*

_{k +1})

__<__

_{k }=

_{k +1}for all

*k*. Therefore,

*V*(

*x*)

_{k}__<__

_{k }for all

*k*. This together with (2.13) yields

_{k +1}

__<__

*V*(

*x*)

_{k}__<__

_{k }for all

*k*. For

*k*,

_{k +1}=

_{k }. Therefore, {

_{k }} is a monotonically decreasing sequence and also has a lower bound zero. Then there exists an accumulation point of {

*x*} such that {

_{k}_{k +1}}

*V*(). If 0

*V*(), by Lemma 3.1, there exists a neighborhood

*N*() of and () > 0, such that

whenever *x _{k} *

*N*(). This together with (2.13) yields

for *k * and *x _{k} *

*N*(). By the mechanism of Algorithm 2.1 and Lemma 3.4, we have

*t*

_{k}__>__

*r*(). It follows with (3.19) that

for *k * and *x _{k} *

*N*(). Letting

*k*tend to infinity in above inequality, the limit in the left-hand side is zero while the limit in the right-hand side is less than zero, which is a contradiction. Therefore 0

*V*().

**Lemma 3.6. ***Consider sequences *{*V *(*x _{k}*)}

*and*{ƒ (

*x*)}

_{k}*such that*ƒ(

*x*)

_{k}*is monotonically decreasing and bounded below. If for all k, either V*(

*x*

_{k+1})-

*V*(

*x*)

_{k}__<__-γ

_{1}

*V*(

*x*

_{k+1})

*or*ƒ(

*x*) - ƒ(

_{k}*x*

_{k+1})

__>__γ

_{2}

*V*(

*x*

_{k+1})

*holds, where constants*γ

_{1}

*and*γ

_{2}

*are from*(2.7a)

*and*(2.7b),

*then V*(

*x*) 0,

_{k}*for k*+.

**Proof. **See [8, Lemma 1].

**Lemma 3.7. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold. If there exists an infinite sequence of iterates *{*x _{k} *}

*on which*(

*V*(

*x*), ƒ(

_{k}*x*))

_{k}*is added to the filter, where V*(

*x*) > 0

_{k}*and*{ƒ(

*x*)}

_{k}*is bounded below, then V*(

*x*) 0

_{k}*as k*+.

**Proof. **Since inequalities (2.7a) and (2.7b) are the same as [8, (2.6)], the conclusion follows from Lemma 3.6 and [8, Corollary].

**Lemma 3.8. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold. Let d be a feasible point of *__ QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ)

*. If*Φ(

*x*, σ

_{k}_{k }) = 0,

*it then follows that*

**Proof. **The proof of this lemma is very similar to the proof [8, Lemma 3]. By Taylor's theorem, we have

where *y *denotes some point on the line segment from *x _{k} *to

*x*+

_{k}*d*. This together with (2.9) and (2.10) implies

Then (3.20) follows from the boundedness of ^{2 }ƒ(*y*) and *B _{k}*, and

*d*

__<__ρ. Since Φ(

*x*,σ

_{k}_{k }) = 0,

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ) reduces to (1.1). For

*i*, it follows that

where *y _{i} *denotes some point on the line segment from

*x*to

_{k}*x*+

_{k}*d*. By feasibility of

*d*,

and

follow in a similar way. It follows with the definition of *V *(*x*) that (3.21) holds.

**Lemma 3.9. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold. Let d be a feasible point of QP*(

*x*, σ

_{k}, B_{k}_{k}, ρ)

*with*Φ(

*x*, σ

_{k}_{k }) = 0

*. Then x*+

_{k}*d is acceptable to the filter if*ρ

^{2 }

__<__,

*where*.

**Proof. **It follows from (3.21) that *V *(*x _{k} *+

*d*) - τ

_{k }

__<__-γ

_{1}

*V*(

*x*+

_{k}*d*) holds if ρ

^{2 }

__<__. By the definition of τ

_{k}, (2.7a) is satisfied. Hence

*x*+

_{k}*d*is acceptable to the filter.

In order to prove that the iterate sequence generated from Algorithm 2.1 converges to a KKT point for the problem (NLP), some constraint qualification should be required, such as the well-known MFCQ. Thus we review its definition as follows.

**Definition 5 **(See [2]). MFCQ is said to be satisfied at *x*, with respect to the underlying constraint system *c*(*x*) = 0, *c*(*x*) __<__ 0, if there is a *z * ^{n }such that the gradients *c _{i} *(

*x*),

*i*are linearly independent and the following systems

are satisfied.

**Proposition 3.10. ***Suppose that MFCQ is satisfied at x*^{*} *X, then there exists a neighborhood N *(*x*^{* }) *of x*^{* }*such that *

1.

MFCQ is satisfied at every point in N(x^{* })X;2.

inequality

holds, where the vectorsλ_{k}, µ_{k}generated by(QPx, σ_{k}, B_{k}_{k}, ρ_{k })are multiplier vectors associated with x_{k}N(x^{* }).

**Proof. **The first result is established in [20, Theorem 3]. The second result is established in [2, Theorem 5.1].

If MFCQ does not hold at a feasible *x*^{*}, then the second statement of Proposition 3.10 cannot be guaranteed. All feasible points of the problem (NLP) at which MFCQ does not hold will be called non-MFCQ points.

The following lemma shows that (1.1) is consistent when *x _{k} *approaches a feasible point at which MFCQ holds and both the quadratic reduction and the actual reduction of the objective function have sufficient reduction. Its proof is similar to that of [8, Lemma 5].

**Lemma 3.11. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold and let x*^{*} *S be a feasible point of problem (NLP) at which MFCQ holds but which is not a KKT point. Then there exists a neighborhood Nº of x*^{* }*and positive constants *, ν *and * , *such that for all x _{k} *

*S*

*Nº and all*ρ

*for which*

*it follows that QP*(

*x*, σ

_{k}, B_{k}_{k}, ρ)

*with*Φ(

*x*, σ

_{k}_{k }) = 0

*has a feasible solution d at which the predicted reduction satisfies*

*the sufficient reduction condition *(2.12) *holds, and the actual reduction satisfies *

**Proof. **Since *x*^{* }is a feasible point at which MFCQ holds but it is not a KKT point, it follows that the vectors *c _{i} *(

*x*

^{*}),

*i*are linearly independent, and there exists a vector

*s*

^{* }that satisfies

where *s*^{*} = 1. Let *c*(*x _{k}*)

^{+ }=

*c*(

*x*)

_{k}^{T }

*c*(

*x*))

_{k}^{-1}

*c*(

*x*)

_{k}^{T }and

*c*(

*x*) denote the matrix with columns

_{k}*c*(

_{i}*x*),

_{k}*i*. It follows from linear independence and continuity that there exists a neighborhood of

*x*

^{* }in which

*c*(

*x*)

_{k}^{+ }is bounded. Let

*P*= -

*c*(

*x*)

_{k}^{+T}

*c*(

*x*) and

_{k}*s*= (

*I*-

*c*(

*x*)

_{k}*c*(

*x*)

_{k}^{+})

*s*

^{* }/ (

*I*-

*c*(

*x*)

_{k}*c*(

*x*)

_{k}^{+})

*s*

^{*}if is not empty, otherwise

*P*= 0 and

*s*=

*s*

^{*}. Let

*p*=

*P*. It follows from (3.25) and (3.27) by continuity that there exists a (smaller) neighborhood

^{*}and a constant > 0 such that

when *x _{k} *

^{*}. By definition of

*P*, it follows that

*p = O*(

*V*(

*x*)), and thus we can choose the constant ν in (3.22) sufficiently large so that ρ>

_{k}*p*for all

*x*

_{k}^{*}.

We now consider the solution of (1.1). The line segment defined by

for a fixed value of ρ > *p*. Since ρ > *p*, and *P *and *s *are orthogonal, it implies

From (3.29) and the definitions of *P, s, d*_{α} satisfies the equality constraints *c*(*x _{k}*) +

*c*(

*x*)

_{k}^{T}

*d*

_{α}= 0 of (1.1) for all α [0, 1].

If *x _{k} *

^{*}

*S*and

*i*\(

*x*

^{*}), then there exists positive constants and , independent of ρ, such that

for all vectors *s *such that *s* __<__ 1, by the continuity of *c _{i} *(

*x*) and boundedness of

_{k}*c*(

_{i}*x*) on

_{k}*S*. It follows that

for all vectors *d *such that C*d* __<__ ρ. Therefore, inactive constraints do not affect the solution of (1.1) if ρ satisfies ρ __<__ /.

For active inequality constraints *i *(*x*^{*}), it follows from (3.28) and (3.29) that *c _{i} *(

*x*) +

_{k}*c*(

_{i}*x*)

_{k}^{T }

*d*

_{1}=

*c*(

_{i}*x*) +

_{k}*c*(

_{i}*x*)

_{k}^{T}

*P*+(ρ -

*p*)

*c*(

_{i}*x*)

_{k}^{T}

*s*

__<__

*c*(

_{i}*x*) +

_{k}*c*(

_{i}*x*)

_{k}^{T}

*P*- (ρ -

*p*)

__<__0 if ρ

__>__

*p*+ (

*c*(

_{i}*x*) +

_{k}*c*(

_{i}*x*)

_{k}^{T}

*P*)/. We obtain from the definition of

*P*that

Thus we can choose the constant ν in (3.22) sufficiently large so that *c _{i} *(

*x*) +

_{k}*c*(

_{i}*x*)

_{k}^{T}

*d*

_{1}

__<__0,

*i*(

*x*

^{*}). Therefore

*d*

_{1}is feasible in (1.1) with respect to the active inequality constraints, and hence to all the constraints by above results. Combining with the fact that (1.1) is equivalent to

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ) with Φ(

*x*, σ

_{k}_{k }) = 0, we obtain that

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ) with Φ(

*x*, σ

_{k}_{k }) = 0 is consistent for all

*x** and all ρ satisfying (3.22) for any value of

_{k}__<__/.

Next we aim to obtain a bound on the predicted reduction Δ*q*(*d*). We note that *q*(0) - *q*(*d*_{1}) = - ƒ(*x _{k}*)

^{T }(

*P*+ (ρ -

*p*)

*s*) - ½

*d*

_{1}

^{T }

*B*

_{k}d_{1}. Using (3.28), bounds on

*B*and

_{k}*P*, and ρ>

*p = O*(

*V*(

*x*)), we have

_{k}If ρ < , then *q*(0) - *q*(*d*_{1}) __>__ ½ ρ + *O*(*V *(*x _{k}*)). Since

*d*

_{1}is feasible and

*p = O*(

*V*(

*x*)), it follows that the predicted reduction (2.9) satisfies

_{k}for some sufficiently large and independent of ρ. Hence, (3.23) is satisfied if ρ __>__ 6 *V *(*x _{k}*)/. This condition can be achieved by making the constant ν in (3.22) sufficiently large.

Next we aim to prove (3.24). By (3.20) and (3.23), we have

Then, if ρ __<__ (1 - η)/(3*nM*), it follows that (2.12) holds. By (2.12), (3.21) and (3.23), we have ƒ(*x _{k}*) - ƒ(

*x*+

_{k}*d*) - γ

_{2}

*V*(

*x*+

_{k}*d*) = Δƒ(

*d*) - γ

_{2}

*V*(

*x*+

_{k}*d*)

__>__ηρ - ½ γ

_{2}

*mn*ρ

^{2 }

*M*

__>__0 if ρ

__<__η/(γ

_{2}

*mnM*). Therefore, we may define the constant in (3.22) to be the least of η/(γ

_{2}

*mnM*) and the values (1 - η)/ (3

*nM*), ρ < and /, as required earlier in the proof.

**Lemma 3.12. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold and let x*^{*} *S be a feasible point of problem (NLP) at which MFCQ holds but which is not a KKT point. Then there exists a neighborhood Nº of x*^{* }*and a positive constant *ν,* such that for all x _{k} *

*S*

*Nº, all*ρ

*and all*σ

_{k}for which*it follows that * Φ(*x _{k}*, σ

_{k }) = 0

*and*(

__QP__*x*, σ

_{k}, B_{k}_{k}, ρ)

*has a feasible solution d at which the predicted reduction satisfies*

**Proof. **By Lemma 3.11, there exists a neighborhood *N*^{1 }of *x*^{* }and positive constants ν, such that for all *x _{k} *

*S*

*Nº*and all ρ and σ

_{k }for which ν

*V*(

*x*)

_{k}__<__ρ

__<__, it follows that the QP subproblem (1.1) has a feasible solution

*d*at which the predicted reduction satisfies (3.32). Since the global optimality of

*d*ensures that Δ

*q*(

*d*) decreases monotonically as ρ decreases, the predicted reduction satisfies (3.32) whenever ν

*V*(

*x*)

_{k}__<__ρ.

From the earlier proof, if ν* V *(*x _{k}*)

__<__σ

_{k }

__<__, we also have that the QP subproblem (1.1) is consistent by taking ρ = σ

_{k }. It means that the problem (2.4) has the optimal value 0. If σ

_{k }increases to a value larger than , then the feasible region of the problem (2.4) with ρ = σ

_{k }is also enlarged correspondingly and the optimal value is still 0. Therefore, Φ(

*x*, σ

_{k}_{k }) = 0 whenever ν

*V*(

*x*)

_{k}__<__σ

_{k}.

The above two conclusions complete the proof.

As a last preparation for the proof of Theorem 3.14, we proceed as in [8] and show that the loops 2-(4.1)-2 and 2-(4.3)-2 terminate finitely.

**Lemma 3.13. ***Suppose Assumptions *(*A*1)*-*(*A*3) *hold, then the loops 2-(4.1)-2 and 2-(4.3)-2 terminate finitely. *

**Proof. **If *x _{k} *is a KKT point for the problem (NLP), then

*d*= 0 is the solution of

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ), and Algorithm 2.1 terminates, so do the loops 2-(4.1)-2 and 2-(4.3)-2. If

*V*(

*x*) > 0 and Φ(

_{k}*x*, σ

_{k}_{k }) -

*V*(

*x*) = 0, then stop by Step 3 of Algorithm 2.1. In fact, it follows from [2, Lemma 2.1] that

_{k}*V*(

*x*) > 0 and 0

_{k}*V*(

*x*), which means that

_{k}*x*is a stationary point of

_{k}*V*(

*x*) and not feasible for the problem (NLP). If both above situations do not occur, and the loops 2-(4.1)-2 and 2-(4.3)-2 do not terminate finitely, then ρ 0 from Algorithm 2.1. There are two cases to be considered.

**Case (i). ***V *(*x _{k}*) > 0 and 0

*V*(

*x*).

_{k}(a) If

iandc(_{i}x) > 0, then for all_{k}d(d<ρ),if either

c(_{i}x) = 0 or ρ < . Thus, for sufficiently small ρ, the equality constraints cannot be satisfied and (1.1) is inconsistent. Therefore, Φ(_{k}x, σ_{k}_{k}) > 0.(b) If

iandc(_{i}x) > 0, a similar conclusion is obtained._{k}(c) If

iandc(_{i}x) < 0, a similar conclusion is also obtained._{k}

So, for some ρ sufficiently small, Φ(*x _{k}*, σ

_{k }) > 0 and 0

*V*(

*x*). By Step 4, the procedure executes at 4.2 of Step 4. It follows from Lemma 3.4 that (2.13) holds. By the mechanism of Algorithm 2.1, the loop 2-(4.1)-2 terminates finitely.

_{k}**Case (ii). ***V *(*x _{k}*) = 0. Then Φ(

*x*, σ

_{k}_{k }) = 0.

For the inactive constraints at *x _{k} *, by a similar argument, it will still be inactive for sufficiently small ρ. Thus, we only need to consider the active constraints.

Since *x _{k} *is not a KKT point, there exists a vector

*s*,

*s*= 1, and a scalar > 0 such that ƒ(

*x*)

_{k}^{T}

*s*< -,

*c*(

_{i}*x*)

_{k}^{T}

*s*= 0,

*i*and

*c*(

_{i}*x*)

_{k}^{T}

*s*

__<__0,

*i*(

*x*) = {

_{k}*i*:

*c*(

_{i}*x*) = 0,

_{k}*i*}. We note that

*q*(0) -

*q*(ρ

*s*) = -ρƒ(

*x*)

_{k}^{T}

*s*- ½ ρ

^{2}

*s*

^{T }

*B*. Using bound on

_{k}s*B*, we have

_{k}*q*(0) -

*q*(ρ

*s*)

__>__ρ - ½ ρ

^{2}

*nM*. If ρ < , then

*q*(0) -

*q*(ρ

*s*)

__>__½ ρ. Since ρ

*s*is feasible for

__QP__(

*x*, σ

_{k}, B_{k}_{k}, ρ), it follows that the predicted reduction (2.9) satisfies

where *d *is the solution of __QP__(*x _{k}, B_{k}*, σ

_{k}, ρ). If ρ

__<__, it follows with (3.20) that Δƒ(

*d*)

__>__ηΔ

*q*(

*d*) > 0. So the sufficient reduction condition (2.12) for an ƒ-

*type*iteration is satisfied. Moreover, by (3.21), we have

if ρ __<__ η/(γ_{2}*mnM*). Thus, *x _{k} *+

*d*is acceptable to

*x*. Of course, the upper bound condition (2.8) is satisfied.

_{k}Finally, it follows with Lemma 3.9 that for a sufficiently small ρ, an ƒ*-type * iteration is generated and the loop 2-(4.3)-2 terminates finitely.

Lemma 3.13 together with Lemma 3.4 implies that Algorithm 2.1 is well-defined. We are now able to adapt [8, Theorem 7] to Algorithm 2.1.

**Theorem 3.14. ***Let Assumptions *(*A*1)*-*(*A*3) *hold. *{*x _{k} *}

*is a sequence generated by Algorithm*2.1,

*then there is an accumulation point that is a KKT point for the problem (NLP), or a non-MFCQ point for the problem (NLP) or a stationary point of V*(

*x*)

*that is infeasible for the problem (NLP).*

**Proof. **Since the loops 2-(4.1)-2 and 2-(4.3)-2 are finite, we only need to consider that the loop 2-6-2 is infinite. All iterates lie in *S*, which is bounded, so it follows that the iteration sequence has at least one accumulation point.

**Case (i). **Step 4.2 of Algorithm 2.1 is invoked finitely many times. Then Step 4.2 of Algorithm 2.1 is not invoked for all sufficiently large *k*.

**Sub-case (i). **There are infinite *V-type* steps in the main iteration sequence. Then, from Lemma 3.7, *V *(*x _{k}*) 0 and τ

_{k }0 on this subsequence. Moreover, there exists a subsequence indexed by

*k*

*S*

_{φ}of

*V-type*iterations for which

*x*

_{k}*x*

^{*},

*V*(

*x*) 0 and τ

_{k}_{k +1}< τ

_{k }. One consequence is that

*x*

^{* }is a feasible point for the problem (NLP). If MFCQ is not satisfied at

*x*

^{*}, then

*x*

^{* }is a non-MFCQ point for the problem (NLP). We therefore assume that MFCQ is satisfied at

*x*

^{* }and consider the assumption that

*x*

^{* }is not a KKT point (to be contradicted).

From Lemma 3.12, we know that Φ(*x _{k}*, σ

_{k }) = 0 and the step

*d*is an ƒ

*-type*step for all sufficiently large

*k*if ρ

__>__γ

*V*(

*x*). So,

_{k}*x*+

_{k}*d*is acceptable to the filter for sufficiently large

*k*from Lemma 3.9 if ρ

^{2 }

__<__. Thus, by Lemma 3.11 we deduce that if ρ satisfies

then *k *is an ƒ*-type *iterate for sufficiently large *k*.

Now we need to show that a value of ρ __>__ ν*V *(*x _{k}*) can be found in the loop 2-(4.3)-2 such that

*k*is an ƒ

*-type*iterate for sufficiently large

*k*. Since τ

_{k }0 when

*k*(

*S*

_{φ}) +, the range (3.34) becomes

From the definition of *S*_{φ}, we know that τ_{k +1} = *V *(*x _{k}*) < τ

_{k }. Because of the square root, the upper bound in (3.35) can be greater than twice the lower bound. From Algorithm 2.1, a value ρ

__>__ρ

_{min}is chosen at the beginning of each iteration, then it will be greater than the upper bound in (3.35) for sufficiently large

*k*. We can see that successively halving ρ in the loops 2-(4.1)-2 and 2-(4.3)-2 will eventually locate in the range of (3.35), or the right of this interval.Lemma 3.12 implies that it is not possible for any value of ρ

__>__ν

*V*(

*x*) to produce an

_{k}*V-type*step. Thus if

*k*(

*S*

_{φ}) is sufficiently large, an ƒ

*-type*iteration is generated, which contradicts the definition of

*S*

_{φ}. So

*x*

^{* }is a KKT point.

**Sub-case (ii). **There are finite *V-type* steps in the main iteration sequence. Then, there exists a positive integer *K *, such that for all *k *> *K , x _{k} *is an ƒ

*-type*iteration. So {ƒ(

*x*)}

_{k}_{k>K }is strictly monotonically decreasing. It follows from Lemma 3.6 that

*V*(

*x*) 0 and hence, any accumulation point

_{k}*x*

^{* }of the main iteration sequence is a feasible point. Since ƒ(

*x*) is bounded, we get that

It follows that Δƒ(*d _{k}*) 0,

*k*>

*K*as

*k*+.

Now we assume that MFCQ is satisfied at *x*^{* }and *x*^{* }is not a KKT point. Similarly to sub-case (i), when

ƒ*-type * iterations are generated. The right-hand side of (3.37) is a constant, independent of *k*. Since the upper bound of (3.37) is a constant and the lower bound converges to zero, the upper bound must be more than twice the lower bound. So a value of ρ will be located in this interval, or a value to the right of this interval. Hence, ρ __>__ min{½, ρ_{min}}. Since the global optimality of *d* ensures that Δ*q*(*d*) decreases monotonically as ρ decreases, by Lemma 3.11, Δ*q*(*d*) __>__ min{½ , ρ_{min}} holds even if ρ is greater than . This together with (2.12) yields that ƒ(*d _{k}*)

__>__η min{½,ρ

_{min}}, which is a contradiction. Thus,

*x*

^{* }is a KKT point.

**Case (ii). **Step 4.2 of Algorithm 2.1 is invoked infinitely many times. Then it follows from Lemma 3.5 that there exists an accumulation point *x*^{* }of {*x _{k}*} such that 0

*V*(

*x*

^{*}), where is an infinite index set satisfying that any

*k*is a

*V-type*iteration number and

_{k +1}=

*V*(

*x*+

_{k}*t*). If

_{k}d_{k}*V*(

*x*

^{*}) > 0, then

*x*

^{* }is a stationary point of

*V*(

*x*) that is infeasible for the problem (NLP). If

*V*(

*x*

^{*}) = 0 and MFCQ fails to be satisfied at

*x*

^{*}, then

*x*

^{* }is a non-MFCQ point for the problem (NLP). If

*V*(

*x*

^{*}) = 0 and MFCQ holds at

*x*

^{*}, then we prove that

*x*

^{* }is a KKT point for the problem (NLP).

Suppose *x*^{* }is not a KKT point for the problem (NLP), but *V *(*x*^{*}) = 0, and MFCQ holds at *x*^{*}. Then, from Lemma 3.5, _{k } 0 on this sequence. Therefore, for all *k *, *V *(*x _{k}*)

__<__

_{k }0 and

_{k +1}=

*V*(

*x*+

_{k}*t*). By Step 4.4, at any new iteration the first trial radius ρ is greater than or equal to ρ

_{k}d_{k}_{min}. So σ

_{k }

__>__γρ

_{min}is true from the fact σ

_{k }(γρ, ρ). Combining this with the fact

*V*(

*x*) 0 as

_{k}*k*() yields ν

*V*(

*x*)

_{k}__<__σ

_{k }< ρ for all sufficiently large

*k*. It follows with Lemma 3.12 that Φ(

*x*, σ

_{k}_{k }) = 0 and (3.32) is satisfied for all sufficiently large

*k*. Similar to Sub-case (i) of Case (i),

*k*is an ƒ

*-type*iterate for sufficiently large

*k*. Hence Step 4.2 could not be invoked at this iteration and

_{k +1}=

_{k }which contradicts the definition of . So

*x*

^{* }is a KKT point.

**4 Numerical results **

We give some numerical results of Algorithm 2.1 coded in Matlab for the constrained optimization problems. The details about the implementation are described as follows:

(a) Termination criteria. Algorithm 2.1 stops if

(b) Update

B. Initiate_{k}B_{0}=I, whereIis the identity matrix with appropriate dimension. UpdateBby the BFGS formula with Powell's modifications [19], which is described as following:_{k}set

where

and

(c) The parameters are chosen as: ρ

_{0}= 5.0, ρ_{min}= 10^{-4}, η = 0.1, γ_{1}= γ_{2}= 2 × 10^{-4}, ε = 10^{-6 },_{0}= 10 max{1,V(x_{0})}, σ_{k }= 0.9ρ for allk= 0, 1, 2 ... and all ρ > 0.

Firstly, the following examples is from [29]. Since EXAMPLE 3 in [29] is unbounded below, we do not give it here. The numerical results of other examples are described in the following.

EXAMPLE 1

*x*^{*} = 0, ƒ (*x*^{* }) = 0. The iteration number of Algorithm 2.1 is 2.

EXAMPLE 2

*x*^{*}= (1.224745, 1.224745, 1.224745, 1.224745)^{T }, ƒ(*x*^{*}) = 6. The iteration number of Algorithm 2.1 is 6.

EXAMPLE 4

*x*^{*}= (0, 0, 2)^{T}, ƒ (*x*^{*}) = -2. The iteration number of Algorithm 2.1 is 4.

Compared with the results in [29, 28], the computation at each iteration in this paper is less than those in them.

Except for above numerical experiments, we also test some examples from [12]. We compare these numerical results with those in [13]. The detailed results of the numerical tests on these problems are summarized in Table 1, where NIT, NF, and NG represent the numbers of iterations, function, and gradient calculations, respectively. The problems are numbered in the same way as in Hock and Schittkowski [12]. For example, HS022 represents problem 22 in Hock and Schittkowski [12].

For Problem HS022, Φ(*x*_{0}) = 0.3941 implies that QP problem is inconsistent at the first iteration. After this, all QP problems are consistent in the subsequentiterations. Similarly, for Problem HS063, only Φ(*x*_{0}) = 1.25 implies the same situation as Problem HS022. Except for Problem HS022 and HS063, for all the other problems in Table 1, their QP problems are consistent in all iterations.

The above analysis shows that our algorithm deals with inconsistent QP problem effectively and is comparable to the algorithm in [13]. So, the numerical tests confirm the robustness of our algorithm.

**Acknowledgement. **We are deeply indebted to the editor Prof. José Mario Martínez and two anonymous referees whose insightful comments helped us a lot to improve the quality of the paper.

**REFERENCES **

[1] C. Audet and J.E. Dennis. *A pattern search filter method for nonlinear programming without derivatives. *SIAM Journal on Optimization, **14 **(2004), 980-1010. [ Links ]

[2] J.V. Burke and S.P. Han. *A robust sequential quadratic programming method. *Mathematical Programming, **43 **(1989), 277-303. [ Links ]

[3] S. Bellavia, M. Macconi and B. Morini. *STRSCNE: a scaled trust region solver for constrained nonlinear equations. *Computational Optimization and Applications, **28 **(2004), 31-50. [ Links ]

[4] S. Bellavia, M. Macconi and B. Morini. STRSCNE: http://ciro.de.unifi.it/STRSCNE/, (2007). [ Links ]

[5] H.Y. Benson, D.F. Shanno and R. Vanderbei. *Interior-point methods for nonconvex nonlinear programming jamming and numerical test. *Mathematical Programming, **99 **(2004), 35-48. [ Links ]

[6] C.M. Chin and R. Fletcher. *On the global convergence of an SLP-filter algorithm that takes EQP steps. *Mathematical Programming, **96 **(2003), 161-177. [ Links ]

[7] R. Fletcher and S. Leyffer. *Nonlinear programming without a penalty function. *Mathematical Programming, **91 **(2002), 239-269. [ Links ]

[8] R. Fletcher, S. Leyffer and Ph.L. Toint. *On the global convergence of a filter-SQP algorithm. *SIAM Journal on Optimization, **13 **(2002), 44-59. [ Links ]

[9] R. Fletcher, N.I.M. Gould, S. Leyffer, Ph.L. Toint and A. Wächter. *Global convergence of a trust region SQP-filter algorithms for general nonlinear programming. *SIAM Journal on Optimization, **13 **(2002), 635-659. [ Links ]

[10] C.C. Gonzaga, E. Karas and M. Vanti. *A globally convergent filter method for nonlinear programming. *SIAM Journal on Optimization, **14 **(2004), 646-669. [ Links ]

[11] J. Gauvin. *A necessary and sufficient regularity condition to have bounded multipliers in nonconvex programming. *Mathematical Programming, **12 **(1977), 136-138. [ Links ]

[12] W. Hock and K. Schittkowski. *Test Examples for Nonlinear Programming Codes. *Lecture Notes in Econom. and Mathematical Systems 187, Springer-Verlag, Berlin (1981). [ Links ]

[13] X.W. Liu and Y.X. Yuan. *A robust algorithm for optimization with general equality and inequality constraints. *SIAM Journal on Scientific Computing, **22 **(2000), 517-534. [ Links ]

[14] F. John. *Extremum problems with inequalities as subsidiary conditions. *Studies and Essays Presented to R. Courant on his 60^{th }Birthday (Interscience, New York, NY 1948), 187-204. [ Links ]

[15] E.W. Karas, A. Ribeiro, C. Sagastizábal and M. Solodov. *A bundle-filter method for nonsmooth convex constrained optimization. *Mathematical Programming, **116 **(2009), 297-320. [ Links ]

[16] M. Macconi, B. Morini and M. Porcelli. *Trust-region quadratic methods for nonlinear systems of mixed equalities and inequalities. *Applied Numerical Mathematics, to appear. [ Links ]

[17] P.Y. Nie. *A filter method for solving nonlinear complementarity problems. *Applied Mathematics and Computation, **167 **(2005), 677-694. [ Links ]

[18] P.Y. Nie. *Sequential penalty quadratic programming filter methods for nonlinear programming. *Nonlinear Analysis: Real World Applications, **8 **(2007), 118-129. [ Links ]

[19] M.J.D. Powell. A fast algorithm for nonlinearly constrained optimization calculations, in Numerical Analysis, Proceedings, Biennial conference, Dundee, Lecture Notes In Math. 630, G.A. Waston, ed., Springer-Verlag, Berlin, New York (1977), 144-157. [ Links ]

[20] R.M. Robinson. *Stability theory for systems of inequalities, part II: differential nonlinear systems. *SIAM Journal on Numerical Analysis, **4 **(1976), 497-513. [ Links ]

[21] A.A. Ribeiro, E.W. Karas and C.C. Gonzaga. *Global convergence of filter methods for nonlinear programming. *SIAM Journal on Optimization, **19 **(2008), 1231-1249. [ Links ]

[22] C. Sainvitu and Ph.L. Toint. *A filter-trust-region method for simple-bound constrained optimization. *Optimization Methods and Software, **22 **(2007), 835-848. [ Links ]

[23] C. Shen, W. Xue and D. Pu. *Global convergence of a tri-dimensional filter SQP algorithm based on the line search method. *Applied Numerical Mathematics, **59 **(2009), 235-250. [ Links ]

[24] S. Ulbrich. *On the superlinear local convergence of a filter-SQP method. *Mathematical Programming, **100 **(2004), 217-245. [ Links ]

[25] M. Ulbrich, S. Ulbrich and L.N. Vicente. *A globally convergent primal-dual interior filter method for nonconvex nonlinear programming. *Mathematical Programming, **100 **(2004), 379-410. [ Links ]

[26] A. Wächter and L.T. Biegler. *Line search filter methods for nonlinear programming: motivation and global convergence. *SIAM Journal on Optimization, **16 **(2005), 1-31. [ Links ]

[27] A. Wächter and L.T. Biegler. *Line search filter methods for nonlinear programming: local convergence. *SIAM Journal on Optimization, **16 **(2005), 32-48. [ Links ]

[28] J.L. Zhang and X.S. Zhang. *A modified SQP method with nonmonotone linsearch technique. *Journal of Global Optimization, **21 **(2001), 201-218. [ Links ]

[29] G.L. Zhou. *A modified SQP method and its global convergence. *Journal of Global Optimization, **11 **(1997), 193-205. [ Links ]

Received: 10/III/08.

Accepted: 03/IV/09.

#753/08.

* This research is supported by National Science Foundation of China (No. 10771162), Talents Introduction Foundation (No. F08027) and Innovation Program of Shanghai Municipal Education Commission (No. 09YZ408).