Introduction
Algorithm Discussion
Numerical Example
Consider the following Quadratically Constrained Quadratic Programming (QCQP) problem to gain a better understanding:
We will solve this QCQP problem using the Karush-Kuhn-Tucker (KKT) conditions, which are necessary conditions for a solution in nonlinear programming to be optimal, given certain regularity conditions.
Step 1: Formulate the Lagrangian
The Lagrangian
combines the objective function and the constraints, each multiplied by a Lagrange multiplier
:
For each constraint:
- Complementary Slackness:
- Primal Feasibility:
Step 2: Compute the Gradient of the Lagrangian
Compute the partial derivatives with respect to
and
:
- Partial Derivative with respect to
:
- Partial Derivative with respect to
:
Step 3: Stationarity Conditions
Set the gradients to zero:
- Equation (1):
- Equation (2):
From Equation (2), since
and
for
, it follows that:
Substitute
into the constraints:
Combining both constraints:
Step 4: Solve for
Using Equation (1)
Substitute
into Equation (1):
Assume
(since Constraint 1 is active):
But from the feasible range,
.
Substitute
into the equation:
This is acceptable.
Assume
because Constraint 2 is not active at
.
Step 5: Verify Complementary Slackness
- Constraint 1:
- Constraint 2:
Step 6: Verify Primal Feasibility
- Constraint 1:
- Constraint 2:
Step 7: Conclusion
- Optimal Solution:
- Minimum Objective Value:
Application
Conclusion