Quadratic Program on a Structured Nonconvex Set

In this paper, we focus on a special nonconvex quadratic program whose feasible set is a structured nonconvex set. To find an effective method to solve this nonconvex program, we construct a bilevel program, where the low-level program is a convex program while the upper-level program is a small-scale nonconvex program. Utilizing some properties of the bilevel program, we propose a new algorithm to solve this special quadratic program. Finally, numerical results show that our new method is effective and efficient.


Introduction
In this paper, we discuss the following structured quadratic program: where x ∈ R n , S n×n A ≻ 0, a ∈ R n , and Ω ⊂ R n is a set.
Program (1) has been frequently exploited in optimization theory and practice [1][2][3][4][5]. If Ω is a closed convex set, program (1) is a convex program, which can be solved by many algorithms such as cutting plane method, projection method, and interior point method [1][2][3][6][7][8]. However, in practice, program (1) is usually a nonconvex program since Ω is often a nonconvex set. As we know, a nonconvex program is difficult to solve since it is a NP-hard problem in general. However, there are still some special small-scale nonconvex problems which can be easily solved by some algorithms. For example, finding the roots of a continuous function f(x) in x ∈ [a, b] ⊂ R has polynomial time computational complexity, although this problem is nonconvex. is motivates us to covert program (1) into a smallscale program.
Note that for a bounded closed set Ω, by the Hein-Borel theorem, there exists a finite set Ξ ⊂ R n such that Ω can be covered by where B k ≺0 and c k > 0. is says that there exists a finite index set Γ such that Ω is covered by where where B(t) ∈ S n×n , b(t) ∈ R n , c(t) ∈ R, and Γ is a finite set. Program (1) could be solved by the theory of S-procedure [9,10] which is an important tool for solving programs with quadratic objective functions and quadratic constraints. We could separate program (1) into several parts, and each part is a program with quadratic objective function and quadratic constraints which could be solved by the theory of S-procedure. en, we could find the global minimum value from all optimal values easily, since Γ is finite. But when Γ is not a finite set, this method is invalid and we need to find a new method. In this paper, we focus on a special case of program (1), where Ω has the same structure as program (3). For this special structure, we can try to turn program (1) into a solvable bilevel program. Some notions and symbols are introduced here.
Notions and symbols: R n is the n-dimensional real Euler space; R n×n denotes the set of all n × n real matrices; x i is the ith element of x ∈ R n ; S n×n is the subset of R n×n , which is consisted of the symmetric real matrix; A ≻ 0 (A ≺ 0) and A ≽ 0 (A ≼ 0) mean that A is positive definite (negative definite) and positive semidefinite (negative semidefinite), respectively; I is the identify matrix with proper dimension; e � (1, . . . , 1) T ; and zf(x) is the subgradient of f(x).

Quadratic Program on a Structured
Nonconvex Set Definition 1. We call a set Ω as a structured set generated by Γ, denoted by SS(Γ), if it satisfies where Γ is a subset in R l , l < n, B(t) ∈ S n×n , B(t)≺0, b(t) ∈ R n , c(t) ∈ R, and ∀t ∈ Γ. We call Γ as a generator of Ω.
Usually, the dimension of Γ is far smaller than the dimension of Ω. Γ may be a finite set, such as 0, 1 { }, a countable infinite set, such as Z, or an uncountable infinite subset of R n . In fact, there are a lot of SS(Γ) sets, such as circle, sphere, donut, and crescent. Here are some examples.
Example 1 shows that a SS(Γ) set is not a convex set in general. (a) is just a union set of two separated spheres, (b) is the union of a series of spheres, and (c) is a horn.
is just For avoiding the above two simple cases, we make an assumption as follows.
We call this assumption as regular assumption. Now, we consider program (1) with a SS(Γ) constraint: We rewrite program (12) into a simpler formulation as follows: inf y T Ay en, the following lemma is true.

Lemma 1.
If regular assumption holds for program (12), then it still holds for program (13). Proof.
Now, we just need to focus on program (13). e following lemma is called as S-Lemma, which presents the relationship between a biquadratic program and a semidefinite program. S-Lemma plays an important role in our analysis. □ Lemma 2 (see S-Lemma [9,10]). If x ∈ R n | x T Bx+ 2b T x + c ≥ 0} has nonempty interior points, then the following two statements are equivalent: Lemma 2, for each t ∈ Γ, we will find the minimum d(t) such that first. en, we solve program sup t∈Γ d(t) to obtain the optimal value of program (13). Summarizing the above discussion, we get the following theorem. Theorem 1. If regular assumption holds and A ≻ 0 for program (13), then the optimal value of program (13) is same as that of the following program: Proof. If − d * is the optimal value of program (13), then which means for all t ∈ Γ, so d * is a feasible point of program (16), and the optimal value of program (13) is not smaller than − d * .
On the other hand, if the optimal value of program (16) is − d * * ; then, for all t ∈ Γ, there exists λ t ≥ 0, such that By Lemma 2, for all t ∈ Γ, for all so where y ∈ ∪ t∈Γ y ∈ R n y T B(t)y + 2b(t) T y + c(t) ≥ 0 , which means that − d * * is a low bound of the optimal value of program (13). Hence, the optimal value of program (13) and program (16) are the same. By eorem 1, we could solve program (16) instead of solving program (13). Noticing that Since A ≻ 0, B(t) ≺ 0, and λ ≥ 0, then So program (16) can be rewritten as the following program: sup − d ≥0 has a solution λ.
Noticing that the feasible set of program (27) is just ∀t ∈ Γ, since A ≻ 0 and B(t)≺0. It is still too complex to solve program (27) directly. In the following theorem, we turn program (27) into a bilevel program.

Theorem 2. e optimal value of program (27) is opposite to that of
Proof. e infimum d of program (27) satisfies that ∀t ∈ Γ, ≥0 has a solution λ.
Noticing that for each t ∈ Γ, if d(t) is an infimum satisfying (28), then (28) holds for any d ≥ d(t). Hence, we just need to find the infimum d(t) satisfying (28) for each t ∈ Γ firstly and then find the supremum d(t) in t ∈ Γ.
For each t ∈ Γ, we reconsider (28) and let then ϑ(t) must be the infimum d(t) of (28), since if

Mathematical Problems in Engineering 3 there must exist λ such that φ(λ, t) ≤ ((ϑ(t)+ d(t))/2) < d(t),
which contradicts the definition of d(t). Summarizing the above discussion, we have that the optimal value of program (27) is opposite to that of program (29). By eorem 2, we just need to solve program (29). However, program (29) is not easy to solve since it is a sup-inf program. Fortunately, φ(λ, t) has some good properties. □ Property 1.
Proof. (a): ∀t ∈ Γ; since λ ≥ 0 and A − λB(t)≻0, there is an invertible matrix P such that P T AP � X ± 0 and P T (− B(t))P � Y≻0, where X and Y are the diagonal matrices. en, (34) Let q � P − 1 b(t); then, Here, When λ ≥ 0, every term of the above equation is a convex function, so are convex functions with respect to λ ≥ 0.

Algorithms
In this section, based on our main result, we present a method for solving program (12) by solving the bilevel program, where we use a linear search method for solving the low-level program and a feasible direction method in [12] for solving the upper-level program. Here, we suppose T � [a, b] (Algorithm 1):

Numerical Results
In this section, we demonstrate the efficiency and effectiveness of the proposed method by solving some illustrative numerical examples. All of our computations are conducted on a Windows machine, equipped with a dual core 2.4 GHz processor, using MATLAB 7.6 as the computational engine. Noticing that our method does not depend on the dimension of x, we just test some examples for x ∈ R 2 .
∪ t∈ [1,2] x ∈ R 2 − x T x + 2t Computational results for solving the upper-level programs are provided in Table 1, where time represents the average running time in second and NOI represents the number of iterations. t 0 and err are set as (l + u)/2 and 10 − 5 , respectively.
at t i , which is equal to the value of en, we could find out the minimum among these finite number of optimal values to approximate the optimal value of program (12). As for program (47), we use the interior point method [13] or the feasible direction method [12].
Computational results of the discretization method are shown in Table 2, where time represents the average running time in second. For each example, we choose 20 points in Γ randomly and test 10 times.
From Table 2, we can see that our method is more effective and efficient than the discretization method.

Conclusion and Future Work
In this paper, we discuss a quadratic program on a structured nonconvex set. By S-lemma, we convert this program into a bilevel program, where the low-level program is a convex program. Under some assumptions, we develop an algorithm to solve the nonconvex program. Finally, we present the numerical results to show the effectiveness and efficiency of our new method.
Note that we need to solve a lower-level program for each t k . However, computational cost of (A − λB(t k )) − 1 is expensive. Hence, how to avoid computing (A − λB(t k )) − 1 is our future work.

Data Availability
e data used to support the findings of this study are included within the article.

Conflicts of Interest
e authors declare that they have no conflicts of interest.