28
Introduction to Convex Optimization Chee Wei Tan Topics in Optimization and its Applications to Computer Science

Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Introduction to Convex Optimization

Chee Wei Tan

Topics in Optimization and its Applications to Computer Science

Page 2: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Outline

• Optimization

• Examples

• Overview of Syllabus

• An Example: The Illumination Problem

• References

Acknowledgement: Grateful thanks to Mung Chiang (Princeton)

and Stephen Boyd (Stanford) for course materials in this class.

1

Page 3: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Optimization Mentality

OPT

OPT

OPT

Theories

SolutionsProblems

Optimization as a mathematical language, as a rule for algorithmand system design, as a unifying principle

2

Page 4: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Optimization

minimize f(x)

subject to x ∈ C

Optimization variables: x. Constant parameters describe objectivefunction f and constraint set C

3

Page 5: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Questions

• How to formulate an optimization problem and describe its

constraint set? What properties does it have?

• Is the problem feasible or solvable?

• Can this problem possibly relate to other optimization problems?

• Can we find an algorithm to solve the problem in an efficient and

scalable way?

• If we can’t solve the original problem, can we reformulate it,

approximate it or relax it to an easier one? Can we bound it?

• Can we find an optimization problem for a given solution?

4

Page 6: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Solving Optimization Problems

• general nonlinear optimization problem

often difficult to solve, e.g., nonconvex problemsmethods involve some compromise, e.g., very long computational time

• local optimization

find a suboptimal solutioncomputationally fast but dependent on initial point and parameter tuning

• global optimization

find a global optimal solutioncomputationally slow

Convex optimization is both art and technology. You need to understand the artof problem formulation and exploit problem structure to design algorithms to solve

the problem. Over time, this process becomes a technology, e.g., least-squares.

5

Page 7: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Perspective

Widely known: linear programming is powerful and easy to solve

Modified view: “... the great watershed in optimization

isn’t between linearity and nonlinearity, but

convexity and nonconvexity.”– R. Rockafellar, SIAM Review 1993.

• Local optimality is also global optimality

• Lagrange duality theory well developed

• Know a lot about the problem and solution structures

• Efficiently compute the solutions numerically

We’ll start with introducing convex optimization theory and algorithms, and thenspecialize into various applications involving convex and even nonconvex problems

6

Page 8: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Examples

• Least-Squares:minimizex ‖Ax− b‖2

Analytical solution: x? = (ATA)−1AT b; reliable and efficient algorithms andsoftware; computational time proportional to n2k (A ∈ Rk×n); less withstructure; a mature technology

• Linear Programming:

minimize cTxsubject to aTi x ≤ bi, i = 1, . . . ,m

No analytical formula for solution; reliable and efficient algorithms and software;computational time proportional to n2m if m ≥ n; less with structure; a maturetechnologyNot as easy to recognize as least squares

7

Page 9: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

• Convex Optimization:

minimize f0(x)subject to fi(x) ≤ bi, i = 1, . . . ,m

Typically, no analytical formula for solution; reliable and efficient algorithmsand software; computational time (roughly) proportional to max{n3, n2m,F}where F is the cost of evaluating the objective and constraint functions fi andtheir first and second order derivatives (if they exist); almost a technology

• Applications of convex optimization

Often difficult to recognize, many tricks for transforming problems, surprisinglymany problems can be solved (or be tackled elegantly) via convex optimization

Once the formulation is done, solving the problem is, like least-squares or linearprogramming, (almost) technology. Learn tricks from examples and applications.Convex optimization software are important as they determine how soon convexoptimization becomes a technology.

8

Page 10: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

How to Learn Convex Optimization?

Find new ways to interpret a mathematical statement given one way. Drawinferences about other possible applications from one instance

Learn how to recognize and formulate convex optimization, and use optimizationtools to creatively solve problems (an objective of this course)

9

Page 11: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Convex Sets and Convex Functions

f(y)

(x, f(x))

f(x) +∇f(x)T (y − x)

10

Page 12: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Convex Optimization and Lagrange Duality

11

Page 13: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Linear Programming and QuadraticProgramming

Px∗

−c

12

Page 14: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Geometric Programming

13

Page 15: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Semidefinite Programming

K

K∗

x

y

14

Page 16: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Decomposition

Master Problem

Subproblem 1...

Secondary Master Problem

prices / resources

First LevelDecomposition

Second LevelDecomposition

Subproblem

Subproblem N

prices / resources

15

Page 17: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Network Utility Maximization in Internet

Linux TCP Linux TCP FAST

Average

utilization

19%

27%

92%

txq= 100 txq= 10000

95%

16%

48%

Linux TCP Linux TCP FAST

2G

1G

txq= 10000txq= 100

16

Page 18: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Web Intelligence: Ranking, Statistical Inference

17

Page 19: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Wireless Network Optimization

18

Page 20: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Combinatorial Graph Problems

Finding a bipartite subgraph with the maximum number of edges

19

Page 21: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Non-Convex Problems: Convex-Cardinality,SOS Proofs, Reasoning in AI

Sparsity, Compressed Sensing, Shortest-Path Routing, ShortestProof in AI, Dynamic Programming

20

Page 22: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Optimization Methods in Machine Learning

21

Page 23: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

Illumination Problem

m lamps illuminating n (small, flat) patches

Intensity Ik at patch k depends linearly on lamp powers pj:

Ik =

m∑j=1

akjpj, akj = r−2kj max{cos θkj, 0}

problem: achieve desired illumination Ides with bounded lamp powers

minimize maxk=1,...,n

| log Ik − log Ides|subject to 0 ≤ pj ≤ pmax, j = 1, . . . ,m

22

Page 24: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

How to Solve Illumination Problem

1. use uniform power: pj = p, vary p

2. use least-squares:

minimizen∑

k=1

(Ik − Ides)2

round pj if pj > pmax or pj < 0

3. use weighted least-squares:

minimizen∑

k=1

(Ik − Ides)2+

m∑j=1

wj (pj − pmax)2

iteratively adjust weights wj until 0 ≤ pj ≤ pmax

23

Page 25: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

4. use linear programming:

minimize maxk=1,...,n

|Ik − Ides|subject to 0 ≤ pj ≤ pmax, j = 1, . . . ,m

which can be solved via linear programming

of course these are suboptimal ‘solutions’ (to the original problem)

5. use convex optimization: problem is equivalent to

minimize f0(p) = maxk=1,...,n

h (Ik/Ides)

subject to 0 ≤ pj ≤ pmax, j = 1, . . . ,m

with h(u) = max{u, 1/u}

24

Page 26: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

0 1 2 3 40

1

2

3

4

5

u

h(u

)

25

Page 27: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

f0(p) is convex because maximum of convex functions is convex

exact solution obtained with effort ≈ modest factor × least-squares effort

additional constraints: does adding (a) or (b) below complicate the problem?

(a) no more than half of total power is in any 10 lamps(b) no more than half of the lamps are on (pj > 0)

• answer: with (a), still easy to solve; with (b), extremely difficult• moral: (untrained) intuition doesn’t always work; without the proper

background very easy problems can appear quite similar to very difficultproblems

6. Can you think of yet another way to solve the Illumination Problem exactly?

26

Page 28: Introduction to Convex Optimizationcheewtan/CSCVXClass/Lec1.pdf · Primary Textbook:Convex Optimizationby Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 Introduction

References

• Primary Textbook: Convex Optimization by Stephen Boyd and

Lieven Vandenberghe, Cambridge University Press, 2004

• Introduction to Matrix Analysis, R. Bellman, SIAM, 1997

• Nonlinear Programming, D. Bertsekas, Athena Scientific, 1999

• Lectures on Modern Convex Optimization: Analysis, Algorithms,

and Engineering, by A. Ben-Tal and A. Nemirovski, SIAM, 2001

• Parallel and Distributed Computation: Numerical Methods by D.

Bertsekas and J. N. Tsitsiklis, 1st Edition, Prentice Hall, 1989

27