# Constraint Consensus Methods for Finding Interior Feasible Points in Second-Order Cones

Authors: Anna Weigandt; Kaitlyn Tuthill; Shafiu Jibrin
Journal: Journal of Applied Mathematics
 (2010)

---

## Abstract

Optimization problems with second-order cone constraints (SOCs) can be solved efficiently
by interior point methods. In order for some of these methods to get started or
to converge faster, it is important to have an initial feasible point or near-feasible point.
In this paper, we study and apply Chinneck'sOriginal constraint consensus method and
DBmax constraint consensus method to find near-feasible points for systems of SOCs.
We also develop and implement a new backtracking-like line search technique on these
methods that attempts to increase the length of the consensus vector, at each iteration,
with the goal of finding interior feasible points. Our numerical results indicate that the
new methods are effective in finding interior feasible points for SOCs.


---

## Body

## 1. Introduction

We consider a system of second-order cone inequalities as follows:(1.1)ciTx+di-‖Aix+bi‖≥0(i=1,2,…,q),
where x∈ℝn,  Ai is an mi×n matrix, bi is a vector in ℝmi, ci is a vector in ℝn, and di is a scalar. The norm is the standard Euclidean norm. We assume the interior of the feasible region S={x∈ℝn∣ciTx+di-∥Aix+bi∥≥0,i=1,…,q} is nonempty.Second-order cones (SOCs) are important to study because there exist many optimization problems where the constraints can be written in this form. For instance, SOCs can be used to easily represent problems dealing with norms, hyperbolic constraints, and robust linear programming. There are also a huge number of real world applications in areas such as antenna array weight design, grasping force optimization, and portfolio optimization (see [1] for more information on these and other applications). Furthermore, there exist efficient interior point methods for solving optimization problems with SOC constraints, such as the primal-dual interior-point method. Because of these applications and the success of interior point methods when applied to SOCs, there exists a need to be able to efficiently find a near-feasible or feasible point for a system of SOCs [1–4]. One approach to feasibility is given in [5].In this paper, we will describe two of Chinneck's constraint consensus algorithms and apply them to SOCs to find near-feasible points. These are theOriginal constraint consensus method and DBmax constraint consensus method. One could of course add a small value to the final consensus vector of these methods to make it enter the interior of the feasible region [6]. However, this would not work if the final consensus vector is far away from the boundary. We propose a different approach, one which increases the step size of the consensus vector at each iteration using a backtracking technique. The goal is to find interior feasible points and to reduce the number of iterations and amount of time. The technique works by extending the consensus vector by a given value and then backtracking until it is as close as possible to the feasible region at a point where the number of satisfied constraints does not decrease. Finally, we investigate the effectiveness of the modification on applied to Original and DBmax methods by testing them upon randomly generated problems. The results show that the backtracking technique is effective at finding interior feasible points. It also greatly reduces the number of necessary iterations and time of the  methods.We also study how our work for SOCs apply to the special case of convex quadratic constraints (CQCs). More information on the importance of CQCs in the field of optimization can be found in [7, 8]. Our results for CQCs show that backtracking also significantly reduces the number of necessary iterations and time of the Original method. It also was able to find interior feasible points on many of the test problems. However, backtracking does not work well with the DBmax method in the case of CQCs. We note that in both constraint types (SOCS or CQCs), DBmax method outperforms the Original method, as expected.


## 2. The Constraint Consensus Methods Applied to Second-Order Cones

In this section, we study and apply Chinneck'sOriginal constraint consensus and DBmax constraint consensus methods to SOCs in order to find near-feasible points of the system (1.1).The first constraint consensus method, hereby, calledOriginal was developed by Chinneck in [3] (see Algorithm 1). The method starts from an infeasible point x0. The method associates each constraint fi(x)≥0 with a feasibility vectorfvi  (i=1,2,…,q). In the case of our SOCs, fi=ciTx+di-∥Aix+bi∥. The feasibility vector is defined by fvi=v∇fi(x0)/∥∇fi(x0)∥2, where v=max{0,-fi(x0)} is the constraint violation at x0 and ∇fi(x0) is the gradient of fi(x)≥0 at point x0. We assume that ∇fi(x) exists. Note that if fi(x) is linear, x0+fvi extends from x0 to its orthogonal projection on the constraint fi(x)≥0. The length of the feasibility vector ∥fvi∥=v/∥∇fi(x0)∥ is called the feasibility distance. We define x0 to be near feasible with respect to fi(x)≥0 if ∥fvi∥<α, where α is a preassigned feasibility tolerance. We say that x0 is feasible with respect to fi(x)≥0 if fi(x0)≥0 and is an interior feasible point if fi(x0)>0.Algorithm 1:Original constraint consensus algorithm.
INPUTS: set ofq constraints (1.1), an initial point x, a feasibility distance tolerance α,a  movement toleranceβ, maximum number of iterations μ.while steps <μ  doNINF=0, for all j:nj=0,  sj=0for every constraint i  doif constraint i is violated thenCalculate feasibility vectorfvi and feasibility distance ∥fvi∥if  ∥fvi∥>α  thenNINF=NINF+1for every variable xj  donj←nj+1, sj←sj+fvijIf  NINF=0  thenexit successfullyfor every variable xj:  doif  nj≠0  thentj=sj/njelsetj=0if  ∥t∥≤β  thenexit unsuccessfullyx=x+t, steps = steps + 1The feasibility vectors are then combined to create a singleconsensus vector which reflects the movements suggested by all the feasibility vectors. The consensus vector, t, is created by averaging the nonzero components of the feasibility vectors. Each component of t is given by tj=sj/nj (the average of the jth components of the violated feasibility vectors) with sj being the sum of the jth components of the feasibility vectors for each constraint that is violated at the point x0, and nj being the number of constraints that are violated (not near feasible) at point x0. The consensus vector is then added to x0 to get a new iterate x1, and the algorithm is repeated until the number of violated constraints (NINF) at the current iterate is zero. The algorithm will also stop looping if the consensus vector becomes too short and not enough progress towards the feasible region is being made quickly enough—if the movement tolerance β is reached.Ibrahim et al. gave several modifications of theOriginal method in [9]. While the Original method treats all eligible feasibility vectors equally, the variations they develop place emphasis on feasibility vectors that have a stronger influence on the consensus vector. They generate two different types of improved constraint consensus algorithms. They generally found a direction-based algorithm, called DBmax, to be the most successful among all the variations, see Algorithm 2.Algorithm 2:DBmax constraint consensus algorithm.
INPUTS: set ofq constraints (1.1), an initial point x, a feasibility distance tolerance α,a movement toleranceβ, maximum number of iterations μ.while steps <μ  doNINF=0, for all j:nj+=0,  nj-=0,  sj+=0,  sj-=0for every constraint i  doifconstraint i is violated thenCalculate feasibility vectorfvi and feasibility distance ∥fvi∥if  ∥fvi∥>α  thenNINF=NINF+1for every variable xj  doif  fvij>0  thennj+←nj++1if  fvij>sj+  thensj+←fvijelse if  fvij<0  thennj-←nj-+1if  fvij<sj-  thensj-←fvijif  NINF=0  thenexit successfullyfor every variable xj: doif  n+=n-  thentj=(sj++sj-)/2else if  nj+>nj-  thentj=sj+elsetj=sj-if  ∥t∥≤β  thenexit unsuccessfullyx=x+t, steps = steps + 1DBmax looks at the jth component of every valid feasibility vector and takes the maximum value for the sign with the most votes, which then becomes the jth entry of the consensus vector. If there are equal number of positive and negative jth components, tj becomes the average of the most positive and most negative jth component of the valid feasibility vectors. Let sj+ be the value of the most positive jth component of the feasibility vectors, sj- be the value of the most negative jth component of the feasibility vectors, nj+ be the number of violated constraints that vote for a positive movement for the variable xj, and nj- be the number of violated constraints that vote for a negative movement for the variable xj.For a more specific example, we consider a system of 3 SOCs inℝ2, pictured in Figure 1. We will refer to this system when demonstrating concepts throughout this paper.Figure 1
The feasible regionS for Example 2.1.Example 2.1.
A system ofq=3 second-order cones (SOCs) with n=2 variables:
(1)c1Tx+d1-∥A1x+b1∥≥0,
(2)c2Tx+d2-∥A2x+b2∥≥0,
(3)c3Tx+d3-∥A3x+b3∥≥0,
where(2.1)A1=[6-723],b1=[-71],c1=[58],d1=8,A2=[-433-8],b2=[-2-3],c2=[4-8],d2=8,A3=[-2-22-4],b3=[-9-10],c3=[3-4],d3=6.
We define the function
(2.2)f(x)=cTx+d-‖Ax+b‖.
Note that f(x)=0 gives the boundary of the cone, f(x) is nonnegative inside the feasible region of the cone and negative outside of the cone. We can see in Figure 2, an example of the contours of f(x) for Cone (1) of Example 2.1.The contours and graph off(x) for cone (1) of Example 2.1.
(a)(b)The following theorem is well known. An elementary proof can be given using the triangle inequality as shown. It will be used to discuss the convergence of theOriginal and DBmax methods.Theorem 2.2.
f(x) is concave over ℝn.Proof.
For convenience, we will consider two separate functions,f1(x)=cTx+d and f2(x)=-∥Ax+b∥. The sum of two concave functions is also concave, so it suffices to show that f1(x) and f2(x) are both concave. f1(x) is linear, so it is concave. In order to show f2(x) is concave in ℝn, it suffices to prove that f2(tx+(1-t)y)≥tf2(x)+(1-t)f2(y) for 0≤t≤1 and x,y∈ℝn.
By the triangle inequality, we have that(2.3)‖t(Ax+b)+(1-t)(Ay+b)‖≤‖t(Ax+b)‖+‖(1-t)(Ay+b)‖⟺‖tAx+tb+(1-t)Ay+(1-t)b‖≤t‖(Ax+b)‖+(1-t)‖(Ay+b)‖⟺‖A(tx+(1-t)y)+tb+(1-t)b‖≤t‖(Ax+b)‖+(1-t)‖(Ay+b)‖⟺‖A(tx+(1-t)y)+b‖≤t‖(Ax+b)‖+(1-t)‖(Ay+b)‖⟺-‖A(tx+(1-t)y)+b‖≥-t‖(Ax+b)‖-(1-t)‖(Ay+b)‖.
This means that f2(tx+(1-t)y)≥tf2(x)+(1-t)f2(y), so f2(x) is concave. The sum of two concave functions is also concave, so f1(x)+f2(x) is concave. Therefore f(x) is also concave.Projection algorithms such as theOriginal and DBmax constraint consensus methods have been proven to converge, when the functions fi(x) are concave [3, 10, 11]. So, Theorem 2.2 guarantees convergence in the case of SOCs. Theorem 2.2 shows that the feasible region S of our system (1.1) is convex.The main task in adapting the consensus methods to SOCs is computing the gradient∇f(x) of f(x)=cTx+d-∥Ax+b∥. It is given by (2.4)∇f(x)=c-AT(Ax+b)‖Ax+b‖.When calculating the gradient, there exist two potential problems. First of all, there are times when the gradient may fail to exist. WhenAx+b=0 the gradient is undefined. For example, in our first cone, the solution to Ax+b=0 is x=(0.4375,-0.625). As shown in Figure 3, this point happens to be within the feasible region of our cone. This will not always be the case, but the probability of picking a solution to Ax+b=0 within our algorithm is very slim. Another potential problem is when the gradient is zero, the feasibility vector will be undefined. If ∇f(x)=0 or undefined at an iteration, the algorithm fails and one should pick a different starting point. For cone (1) our example there does not exist a point where the gradient is zero, as shown below(2.5)∇f(x)=0,c-AT(Ax+b)‖Ax+b‖=[00],[36x2-40x1+40(2x1+3x2+1)2+(7x2-6x1+7)2+58-58x2-36x1+52(2x1+3x2+1)2+(7x2-6x1+7)2]=[00].
The only possible solution to this system happens to be x1=0.4375 and x2=-0.625, which is where the gradient is undefined. This means that there is no solution to ∇f(x)=0 for this particular example.Figure 3
The gradient for cone (1) of Example2.1 is undefined at the indicated point.We know from Theorem2.2 that f(x) is concave. A nice result is that if f(x) is strictly concave, then the only potential place for the gradient to be zero occurs inside of the feasible region, as shown in Theorem 2.3.Theorem 2.3.
Supposef(x) is strictly concave. If ∇f(x)=0, then x is inside of the feasible region of f(x)≥0.Proof.
If the gradient is zero,f(x) must be at a critical point. Since f(x) is strictly concave, the only potential critical point will be the maximum of f(x). Since f(x)<0 outside the feasible region and f(x)≥0 inside the feasible region, it follows that the maximum of f(x) must also be nonnegative. Therefore the gradient can only be zero inside of the feasible region.As a consequence of this result, for strictly concave constraints, the gradient will only be zero inside of the feasible region, and so the feasibility vector exists at all iterates of our algorithms.Letg(γ)=f(xk+γsk), where sk is the feasibility vector at xk. Figure 4 is an example of g(γ). The graph of g(γ) is a slice of the graph of f(x). It follows from Theorem 2.2 that g(γ) is concave in γ over ℝ.Figure 4
g(γ) on the interval [0,3] for cone (1) of Example 2.1 at xk=(-7,6).The following results show that in each iteration of the algorithm, we move closer to the boundary of the feasible region.Theorem 2.4.
Suppose the line{xk+γsk∣γ∈ℝ} intersects the boundary of {x∣f(x)≥0} at γ*. Then g(γ) is nondecreasing over [0,γ*].Proof.
g(γ) is negative over [0,γ*) and is zero at γ*. Since g(γ) is concave over ℝ, then g(γ) is increasing over [0,γ*].For concavef(x), approximations of the feasibility vector will most often fall short of reaching the boundary of f(x)≥0. As such the consensus vector will also fall short of the boundary. It may be desirable to increase the length of the consensus vector as much as possible towards the boundary. From Figure 5, we can see that for all points that lie outside of the feasible region of the cone, the direction of the gradient points is the direction of the boundary. However, this is not the case for all SOCs. As seen in Figure 6, some iterates may not have a gradient that points directly at the feasible region. Hence, there is a limit to how much to increase the length of the consensus vector in general. This point is noted when we discuss the backtracking technique later.Figure 5
The gradient vector field off(x) for cone (1) of Example 2.1.Figure 6
Gradient field of cone (2) of Example2.1. Many starting points do not have a gradient that points directly at the feasible region.


## 3. The Case of Convex Quadratic Constraints

In this section, we study how the discussions in the previous section apply to the special case of convex quadratic constraints (CQCs). This study will be limited to results that are different and relevant to CQCs.We consider a system of CQCs:(3.1)ciTx+di-(Aix+bi)T(Aix+bi)≥0(i=1,2,…,q),
where x∈ℝn, Ai is an mi×n matrix, bi is a vector in ℝmi, ci is a vector in ℝn, and di is a scalar.For ease of presentation, consider the single CQC(3.2)cTx+d-(Ax+b)T(Ax+b)≥0.
It is nice to note that a CQC is also SOC. To see this, note that(3.3)cTx+d-(Ax+b)T(Ax+b)≥0⟺xTPx+2qTx+r≤0,
where (3.4)P=ATA,q=ATb-12c,r=bTb-d.
For simplicity and without a loss of generalization, we assume that P is positive definite. So, P1/2 exists and is invertible. Then, the CQC (3.2) is equivalent to(3.5)‖P1/2x+P-1/2q‖2-(qTP-1q-r)≤0.
This is equivalent to the SOC(3.6)(qTP-1q-r)1/2-‖P1/2x+P-1/2q‖≥0.
The above result implies that all our results on concavity and convergence on SOCs also extend to the CQC system (3.1). It suffices to compute the gradient ∇f(x) and Hessian Hf(x) of f(x)=cTx+d-(Ax+b)T(Ax+b). They are given by (3.7)∇f(x)=c-2ATAx-2ATb,Hf(x)=-2ATA.
The feasibility vector does not exist when the gradient is zero. Note that the gradient ∇f(x)=0 is given by the solution to the linear system(3.8)2ATAx=c-2ATb.
To  use as an illustration, consider the following example.Example 3.1.
A convex quadratic constraint (CQC) withn=2 variables.
f1(x):=c1Tx+d1-(A1x+b1)T(A1x+b1)≥0, where
(3.9)A1=[-516-10],b1=[0-2],c1=[-86],d1=8.
For Example3.1, the linear system (3.8) is
(3.10)[122-130-130202][x1x2]=[16-34]
with the solution x1=-27/176 and x2=-47/176, which is in the feasible region. See Figure 7.Figure 7
The solution for the system (3.10) over f1(x)≥0 of Example 3.1 is given by the intersection of the two lines at x=(-27/176,-47/176).Since the HessianHf(x)=-2ATA, f(x) is strictly convex if ATA is positive definite. So, similar to Theorem 2.3, if ATA is positive definite, then the gradient can only be zero at a point inside the feasible region. This means, in this case, the feasibility vector exists at all iterates of the consensus algorithms.


## 4. New Variation of the Constraint Consensus Methods

In this section, we propose a modification to theOriginal and DBmax constraint consensus methods. It extends the length of the consensus vector at each iteration of the methods with the goal of finding a point in the interior of the feasible region S of our system (1.1).TheBacktracking Line Search Technique (Algorithm 3) is a step in the constraint consensus methods (Algorithms 1 and 2) that attempts to extend the length the consensus vector t to a closer near-feasible point. It goes to a point where the number of satisfied constraints does not decrease. The backtracking technique seeks to provide rapid convergence by inexpensively testing to see if we can increase the size of the consensus vector. Starting by computing the consensus vector in the usual way (either using the Original method or DBmax), it tests to see if it can successfully increase the size of the consensus vector, in the hope of getting closer to the feasible region in less iterations and time. The technique has the added benefit that it is possible for the final point to be actually in the interior instead of being a near-feasible point.Algorithm 3:Backtracking line search technique.
INPUTS: set ofq constraints (1.1) or (3.1), a point x, the consensus vector tCompute the binary wordb at xcount = 0while  count<3  doα=1+0.5countxtemp=x+α*tCompute the binary wordbcomp at xtempif  (bcomp)≤sum(b)  thenx=xtemp; Exit Functionelsecount = count+1ifcount = loop thenx=x+tThe Backtracking Line Search Technique uses the concept of abinary word.Definition 4.1.
Defineδ(x)=δ1(x),…,δq(x) to be the binary word for the set of constraints (1.1) or (3.1), given by
(4.1)δi(x)={0ifxisfi(x)≥0(ithconstraintissatisfiedatx),1,otherwise.Ifδ(x)=[0⋯0], then x is a feasible point. We can easily check the feasibility of x by taking the sum of the components of the binary word. When the sum is 0, we know that x is feasible and we can allow the algorithm to exit. We can define an equivalence relation on ℝn, where x1 is related to x2 if the binary word of x1 is the same as the binary word of x2. The equivalence classes form a partition of ℝn.We start by computing the consensus vectort. Then we scale the consensus vector by an initial scalar factor. We add this consensus vector to x. Using this new point, we count the number of constraints that are violated with the binary word. We consider the new consensus vector to be successful if the resulting point violates the same number or fewer constraints than the previous point did. If this is not the case, the algorithm backtracks and tries a smaller increase in the consensus vector. If the point still has not found an improvement in the number of satisfied constraints after backtracking three times, then it returns to the starting consensus vector. In our tests, we scale the consensus vector by 2, 1.5, 1.25, and if none of those are satisfactory then we return to a step size of 1. Algorithm 3 could easily be varied to use other step sizes, based on the type of constraint or problem.In Figure8, we can see a comparison of the Original method and Original method with backtracking applied to Example 2.1. Given the same initial starting point of (−8,6), the Original method with backtracking reached feasibility in fewer iterations and less time. Furthermore, the final point obtained by using the Original method with backtracking was actually feasible for all three constraints, as opposed to being near feasible. The final point obtained by the Original method was only feasible for the second constraint, and within a feasibility distance tolerance 0.01 for the other two constraints.Comparison ofOriginal method and Original method with backtracking applied to Example 2.1.
(a)(b)


## 5. Numerical Experiments

In this section, we use numerical experiments to test theOriginal method and DBmax method with and without the backtracking line search technique on random test problems.For each SOC test problem, we first generate integer valuesq,  mi=m, and n uniformly in the intervals [1,50], [1,10], and [2,10], respectively. Then, a random point is chosen with the values of each entry being in uniform in [-10,10]. After this, q SOCs are generated using m and n, where each entry of A, b, c, and d is uniform in the interval [-10,10]. We check to ensure that all the q SOCs are satisfied at the random point. Table 1 lists the SOC test problems. The CQC test problems are generated like the SOC test problems. However, the q CQCs are generated so that each is satisfied at the origin and the entries of b are uniform in [-0.5,0.5]. The CQC test problems are given in Table 1.Table 1
Test problems.
ProblemSOCsCQCsnmi=mqnmi=mq1109797726248391533815732548137492857327104863750210417385584789778434975206617101073728441192368219121044224161353362631431061094615986551016871572176657925181094371048198930824120105421034121793771322262373348239247292424491024125107264225For each test problem and method, we chose a random infeasible pointx0 as our starting point with entries uniform in [-100,100]. We set our feasibility distance tolerance to be α=0.01 and our movement tolerance to be β=0.001. We chose our maximum number of iterations to be μ=500. All codes were written in MATLAB© 7.9.0 and ran on Dell OptiPlex GX280.


### 5.1. Second-Order Cones

Tables3 and 4 give the results for the SOC test problems. If the number (Iter) of iterations is 500, it means the method did not converge. The last column shows whether or not the method converged to an interior feasible point. Table 2 gives the success rate over all the 25 problems in finding an interior feasible point and average time per problem (where converged). Both the Original method and DBmax method failed in Problem 6 and Problem 13.Table 2
Success rates and average times on SOCs.
AlgorithmSuccess rate%Average time (sec)Original00.131Original (Backtrack)640.075DBmax40.055DBmax (Backtrack)840.033Table 3
SOCs: comparison ofOriginal method and Original method with backtracking.
ProblemOriginalOriginal with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1340.055N40.023Y2830.194N330.162N31210.094N510.086Y4530.117N140.059Y5980.135N300.085N65001.195N5002.506N7400.013N40.003Y8810.034N240.021N9780.082N320.071N10420.080N150.059Y111400.252N610.228N121270.269N600.258N135000.870N5001.842N1470.003N30.003Y15230.009N40.003Y1650.001N30.001Y17120.004N30.002Y18850.189N50.025Y19950.148N100.033Y20660.139N220.096Y21430.083N320.126Y223390.610N100.040Y231970.448N690.327N24100.006N40.005Y25270.037N70.020YTable 4
SOCs: comparison ofDBmax method and DBmax method with backtracking.
ProblemDBmaxDBmax with BacktrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1160.014N50.014Y21450.332N160.100Y31010.077N300.061Y4140.030N50.025Y5250.035N60.021Y65001.196N5003.313N760.002N70.005Y8520.022N80.008Y9130.014N180.040Y10200.038N80.038Y11350.063N80.036Y12870.179N170.091Y135000.866N5002.408N1430.001N30.003Y1550.002N40.003Y1650.001N30.001Y17140.004N40.003Y18370.082N90.055N19350.054N90.039N20870.181N120.065Y2180.016N70.036Y2250.010N50.023Y23310.072N100.057Y2440.003Y40.007Y25200.027N70.024YAs expected, on average theDBmax method took fewer iterations and less time than the Original method. Also, note that DBmax found an interior feasible point in Problem 24. It is interesting to note that the backtracking technique showed general improvement in iterations and processing time in the methods over all the test problems, where there was convergence.On average theOriginal method with backtracking took less time than the Original method. Similarly, the DBmax method with backtracking took less time than the DBmax method. The Original method with backtracking has a strict feasibility success rate of 64% while the DBmax with backtracking has a success of 84%.


### 5.2. Convex Quadratic Constraints

Tables6 and 7 give the results for the CQC test problems. Table 5 gives the success rate over all the 25 problems in finding an interior feasible point and average time per problem (where converged). Again, as expected, on average the DBmax method took less number of iterations and less time than the Original method.Table 5
Success rates and average times on CQCs.
AlgorithmSuccess rate%Average time (sec)Original00.110Original (Backtrack)440.061DBmax00.041DBmax (Backtrack)360.114Table 6
CQCs: comparison of theOriginal method and Original method with backtracking.
ProblemOriginalOriginal with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1550.050N190.028N2160.022N70.016Y3510.129N160.060Y4180.049N60.028N51580.127N530.070N6160.060N90.056Y7250.109N60.042N8480.151N140.072N9310.051N110.032Y10150.061N80.052Y111300.236N420.121N12190.028N60.015Y13140.005N80.005Y14320.143N80.057N15240.024N70.011N16210.005N110.005Y17280.068N70.027N18260.119N60.043N19860.325N290.181N20770.291N300.183N211350.451N500.286N22240.115N80.059N23170.042N80.031Y24150.002N140.003Y25390.101N120.050YTable 7
CQCs: comparison ofDBmax method and DBmax method with backtracking.
ProblemDBmaxDBmax with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1250.017N960.110N2110.015N2530.601N3210.049N580.231Y4130.035N5002.071N5360.028N450.060Y6110.042N270.170N7140.060N5003.467N8180.057N5002.537N9160.026N5001.317N10110.044N270.181N11310.054N310.095Y12130.019N250.061N13120.004N230.012Y14160.069N5003.521N15110.011N210.034Y16210.005N240.009Y17150.035N5001.895N18140.062N5003.572N19230.084N5003.083N20270.100N5003.049N21280.089N290.199Y22120.057N5003.711N23120.030N270.103Y24150.002N140.004Y25130.032N5002.001NAs can be seen from the tables, applying the backtracking technique to theOriginal method dramatically reduces the number of iterations and time. In addition, the Original method with backtracking has a strict feasibility success rate of 44%. With DBmax, the backtracking technique did not work well. There is significant increase in both iterations and time to reach feasibility and 11 out of the 25 problems diverged. This is most likely due to the fact that the consensus vector in DBmax is already long. This means that an extension of the consensus vector might move it too far and bring it right over the feasible region. We suspect that this is due to the nature of the CQC constraints, which tend to form bounded feasible regions.


## 5.1. Second-Order Cones

Tables3 and 4 give the results for the SOC test problems. If the number (Iter) of iterations is 500, it means the method did not converge. The last column shows whether or not the method converged to an interior feasible point. Table 2 gives the success rate over all the 25 problems in finding an interior feasible point and average time per problem (where converged). Both the Original method and DBmax method failed in Problem 6 and Problem 13.Table 2
Success rates and average times on SOCs.
AlgorithmSuccess rate%Average time (sec)Original00.131Original (Backtrack)640.075DBmax40.055DBmax (Backtrack)840.033Table 3
SOCs: comparison ofOriginal method and Original method with backtracking.
ProblemOriginalOriginal with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1340.055N40.023Y2830.194N330.162N31210.094N510.086Y4530.117N140.059Y5980.135N300.085N65001.195N5002.506N7400.013N40.003Y8810.034N240.021N9780.082N320.071N10420.080N150.059Y111400.252N610.228N121270.269N600.258N135000.870N5001.842N1470.003N30.003Y15230.009N40.003Y1650.001N30.001Y17120.004N30.002Y18850.189N50.025Y19950.148N100.033Y20660.139N220.096Y21430.083N320.126Y223390.610N100.040Y231970.448N690.327N24100.006N40.005Y25270.037N70.020YTable 4
SOCs: comparison ofDBmax method and DBmax method with backtracking.
ProblemDBmaxDBmax with BacktrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1160.014N50.014Y21450.332N160.100Y31010.077N300.061Y4140.030N50.025Y5250.035N60.021Y65001.196N5003.313N760.002N70.005Y8520.022N80.008Y9130.014N180.040Y10200.038N80.038Y11350.063N80.036Y12870.179N170.091Y135000.866N5002.408N1430.001N30.003Y1550.002N40.003Y1650.001N30.001Y17140.004N40.003Y18370.082N90.055N19350.054N90.039N20870.181N120.065Y2180.016N70.036Y2250.010N50.023Y23310.072N100.057Y2440.003Y40.007Y25200.027N70.024YAs expected, on average theDBmax method took fewer iterations and less time than the Original method. Also, note that DBmax found an interior feasible point in Problem 24. It is interesting to note that the backtracking technique showed general improvement in iterations and processing time in the methods over all the test problems, where there was convergence.On average theOriginal method with backtracking took less time than the Original method. Similarly, the DBmax method with backtracking took less time than the DBmax method. The Original method with backtracking has a strict feasibility success rate of 64% while the DBmax with backtracking has a success of 84%.


## 5.2. Convex Quadratic Constraints

Tables6 and 7 give the results for the CQC test problems. Table 5 gives the success rate over all the 25 problems in finding an interior feasible point and average time per problem (where converged). Again, as expected, on average the DBmax method took less number of iterations and less time than the Original method.Table 5
Success rates and average times on CQCs.
AlgorithmSuccess rate%Average time (sec)Original00.110Original (Backtrack)440.061DBmax00.041DBmax (Backtrack)360.114Table 6
CQCs: comparison of theOriginal method and Original method with backtracking.
ProblemOriginalOriginal with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1550.050N190.028N2160.022N70.016Y3510.129N160.060Y4180.049N60.028N51580.127N530.070N6160.060N90.056Y7250.109N60.042N8480.151N140.072N9310.051N110.032Y10150.061N80.052Y111300.236N420.121N12190.028N60.015Y13140.005N80.005Y14320.143N80.057N15240.024N70.011N16210.005N110.005Y17280.068N70.027N18260.119N60.043N19860.325N290.181N20770.291N300.183N211350.451N500.286N22240.115N80.059N23170.042N80.031Y24150.002N140.003Y25390.101N120.050YTable 7
CQCs: comparison ofDBmax method and DBmax method with backtracking.
ProblemDBmaxDBmax with backtrackingIterTime (sec)Interior feas Pt?IterTime (sec)Interior feas Pt?1250.017N960.110N2110.015N2530.601N3210.049N580.231Y4130.035N5002.071N5360.028N450.060Y6110.042N270.170N7140.060N5003.467N8180.057N5002.537N9160.026N5001.317N10110.044N270.181N11310.054N310.095Y12130.019N250.061N13120.004N230.012Y14160.069N5003.521N15110.011N210.034Y16210.005N240.009Y17150.035N5001.895N18140.062N5003.572N19230.084N5003.083N20270.100N5003.049N21280.089N290.199Y22120.057N5003.711N23120.030N270.103Y24150.002N140.004Y25130.032N5002.001NAs can be seen from the tables, applying the backtracking technique to theOriginal method dramatically reduces the number of iterations and time. In addition, the Original method with backtracking has a strict feasibility success rate of 44%. With DBmax, the backtracking technique did not work well. There is significant increase in both iterations and time to reach feasibility and 11 out of the 25 problems diverged. This is most likely due to the fact that the consensus vector in DBmax is already long. This means that an extension of the consensus vector might move it too far and bring it right over the feasible region. We suspect that this is due to the nature of the CQC constraints, which tend to form bounded feasible regions.


## 6. Conclusion

We study the Chinneck'sOriginal constraint consensus and DBmax methods as they apply to second-order cones (SOCs) and the special case of convex quadratic constraints (CQCs) to find near-feasible points. We also present a new backtracking line search technique that increases the size of the consensus vector with the goal of finding interior feasible points.Given a set of SOCs, we adapt theOriginal and DBmax constraint consensus methods to find near-feasible points. These methods alone rarely can find an interior feasible point with SOCs. We develop a backtracking line search technique to find interior feasible points. We test the methods both with and without the backtracking technique over a variety of test problems and compare them with the time and number of iterations it takes to converge.Before applying backtracking, the method known to reach feasibility in the least amount of time, with the fewest number of iterations was consistentlyDBmax. The Original with backtracking method is still not as fast as DBmax. However, the Original with backtracking reaches feasibility in fewer number of iterations than DBmax and is able to find interior feasible points in most of the test problems. The Original with backtracking method works well with SOCs and with CQCs. But, while DBmax with backtracking method works very well with SOCs, it does not work well with CQCs. It might be that with CQCs, the consensus vector in the backtracking step is increased too far.Overall and considering both SOCs and CQCs, we find the backtracking line search to be most successful in reducing time and iterations needed to reach the feasible region when applied to theOriginal consensus method. As mentioned before, DBmax with backtracking method is not successful with CQCs. In the future it would be interesting to try more variations of the backtracking line search technique. We could compare the effectiveness of different initial step sizes and reductions in the backtracking technique, especially with DBmax when applied to CQCs. It would also be nice to investigate the effect of the backtracking technique on the other variants of the Original method given in [9].



---

*Source: 307209-2011-02-06.xml*