[SOLVED] NTUEE Homework 3

30.00 $

Category:
Click Category Button to View Your Next Assignment | Homework

You will receive the following solution file(s) instantly after successful payment:

zip file icon HW3-eqg4s4.zip (70 KB)
Assignment Instructions Updated Recently? Submit Below and we will provide new Solution!
Submit New Instructions
🔒 Securely Powered by:
Secure Checkout
Rate this product

1.  Consider the semidefinite optimization problem minimize f0(x) = cT x

x∈Rn
subject to f1(x) = G +

(1)

xiFi ⪯ O, wherec∈Rn,G,F1,…,Fn ∈Sn,f0 :Rn →R,andf1 :Rn →Sn.

(a) (5%) Determine if Problem (1) is a convex problem. Justify your answer.

  1. (b)  (5%) Write the Lagrangian of the problem L(x, Z) where Z ∈ Sn is the Langrange multiplier associated with the generalized inequality constraint.
  2. (c)  (5%) Find the Lagrange dual function g(Z) and its domain dom g.
  3. (d)  (5%) Formulate the Lagrange dual problem. Determine if it is a convex problem.
  4. (e)  (7%) If Problem (1) is convex, please take the parameters defined in Table 1 and use CVX to solve the problem. Write down the optimal value and the optimal point you obtained from CVX. Denote them as p∗CVX and x∗CVX, respectively.
  5. (f)  (5%) Find a generalized logarithm ψ() that is concave, close, twice continuously differentiable, with dom ψ = int Sn+, and for all s > 0, ψ(sy) = ψ(y)+θlogs. Find the degree θ of the ψ function you chose.
  6. (g)  (5%) Formulate the centrality problem with parameter t, where the objective function is written as f(x) = tf0(x)−ψ(−f1(x)). Find the domain of f.
  7. (h)  (8%) Find the gradient ▽f(x) and Hessian ▽2f(x), of f, respectively.
    (Hint: It might be useful to note that if A is an invertible matrix whose entries are functions of a, then

    ∂A−1 = −A−1 ∂A A−1.) ∂a ∂a

  8. (i)  (5%) Write a matlab m-file as a function which takes inputs t, c, F1 , F2 , F3 , G, and x, and evaluates the objective function at the point x, as well as the gradient and the Hessian.
    Hint: the function can have a header that looks like the following, where F is a three-way array.

         function [f, g, H] = my_objective(x, t, c, F, G)
    
  9. (j)  (5%) From this step on, write another m-file as the main function for your program to solve the centrality problem. Set c, Fi’s, and G as in Table 1 and set the initial point x(0) = 0. Hint: the function may be declared something simliar to the following. You don’t have to use exactly the same names of the function parameters, though. 1
         function [x_central, lambda_2_2] = centrality_problem(x_init, t, c, F, G, alpha, beta)
    
  10. (k)  (5%) Use the Newton step’s formula: ∆x = −(▽2f(x))−1▽f(x) and calculate the Newton step ∆x(k) nt nt

    for the kth inner iteration.

  11. (l)  (5%) Calculate the Newton decrement λ(k)(x) = (−▽f(x)T∆x(k))1/2. Store the values of λ(k)2/2 of

    each iteration for future use.

  12. (m)  (5%) Perform backtracking line search along search direction using β = 0.7 starting from s = 1 until

    f(x + s∆x(k)) ≤ f(x) − αsλ(k)(x)2, where α = 0.1. 2 nt

  13. (n)  (5%) Perform the update x(k+1) = x(k) + s∆x(k). Determine whether λ2/2 ≤ ε where ε = 10−8. nt inner

    Terminate the iteration loop if it is true.

1The m-file for solving the centrality problem shall return the central point as will as a list of λ2/2 for each iteration.
2We use s to denote the backtracking parameter instead of t because t has been used as the centrality problem’s parameter.

∑n i=1

nt

1

  1. (o)  (5%) In your main script m-file, set μ = 2 and t(0) = 1. Write a loop to solve the centrality problem for t, starting from t = t(0), by calling the function you wrote from (j) to (n). Terminate this outer loop if n/t < εouter where εouter = 10−8. When an outer loop iteration is done, do not reset the inner loop index k, letting it represent the total number of Newton steps being run at any given moment. Use l to denote the outer loop index and denote the centrality point of the lth outer loop as x∗(t(l)) where t(l) = μt · t(0) is the centrailty problem’s parameter in the lth outer iteration, l ≥ 0.
  2. (p)  (5%) Compare the optimal value p∗ and optimal point x∗ you obtained with those obtained from CVX as in (e). Specifically, calculate |p∗ − p∗CVX| and ||x∗ − x∗CVX||2, respectively.
  3. (q)  (5%) Plot f0(x∗(t(l))) − p∗ versus l in log-scale.
  4. (r)  (5%) Plot λ(k)2/2 versus k in log-scale.
  5. (s)  (5%) Submit your source code as hw3.m or hw3.py.
    Parameters n  F1  F2 

3

0.9  −0.4

0.6

−0.4 0.6
3.9 −1.0 

−1.0 2.7 F3

0.5

0.8 −1.0

0.8 −1.0

1.7 −2.6  −2.6 5.4

G

Parameters  c 

−4
 −2  −4



0.2 0.1  0.1 0.6

0.6 −0.1

0.6 −0.1 

3.3



−1.2 0.5 −1.2
 0.5 −1.4 −1.0  −1.2 −1.0 −3.3

Guidelines of Homework Submission:

Table 1: Parameters for the SDP Problem

  • HW3-eqg4s4.zip