+ All Categories
Home > Documents > Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling •...

Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling •...

Date post: 30-May-2020
Category:
Upload: others
View: 6 times
Download: 0 times
Share this document with a friend
25
Convex optimization examples multi-period processor speed scheduling minimum time optimal control grasp force optimization optimal broadcast transmitter power allocation phased-array antenna beamforming optimal receiver location 1
Transcript
Page 1: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Convex optimization examples

• multi-period processor speed scheduling

• minimum time optimal control

• grasp force optimization

• optimal broadcast transmitter power allocation

• phased-array antenna beamforming

• optimal receiver location

1

Page 2: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Multi-period processor speed scheduling

processor adjusts its speed st ∈ [smin, smax] in each of T time periods • �T

energy consumed in period t is φ(st); total energy is E = φ(st)• t=1

• n jobs

– job i available at t = Ai; must finish by deadline t = Di

– job i requires total work Wi ≥ 0

• θti ≥ 0 is fraction of processor effort allocated to job i in period t

Di

1Tθt = 1, θtist ≥ Wi

t=Ai

• choose speeds st and allocations θti to minimize total energy E

2

Page 3: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

� �

Minimum energy processor speed scheduling

• work with variables Sti = θtist

n Di

st = Sti, Sti ≥ Wi

i=1 t=Ai

• solve convex problem

�Tminimize E = t=1 φ(st)subject to smin ≤ s

nt ≤ smax , t = 1, . . . , T

st = i=1 Sti, t = 1, . . . , T �Di Sti ≥ Wi, i = 1, . . . , n t=Ai

• a convex problem when φ is convex

• can recover θt⋆ as θ⋆ = (1/s⋆

t )S⋆

ti ti

3

Page 4: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Example

• T = 16 periods, n = 12 jobs

smin = 1, smax = 6, φ(st) = s2 • t

• jobs shown as bars over [Ai, Di] with area ∝ Wi

40

12

35

1030

25

0 2 4 6 8 10 12 14 16 18

φt (

st )

20

15

10

5

0

job i

8

6

4

2

0 0 1 2 3 4 5 6 7

st t

4

Page 5: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Optimal and uniform schedules

uniform schedule: Sti = Wi/(Di − Ai + 1); gives Eunif = 204.3• • ti; gives optimal schedule: S⋆ E⋆ = 167.1

optimal uniform 6 6

5 5

4 4

0 2 4 6 8 10 12 14 16 18

st

3

2

1

0 0 2 4 6 8 10 12 14 16 18

s t

3

2

1

0

tt

5

Page 6: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Minimum-time optimal control

• linear dynamical system:

xt+1 = Axt + But, t = 0, 1, . . . , K, x0 = x init

• inputs constraints:

umin � ut � umax, t = 0, 1, . . . , K

• minimum time to reach state xdes:

f(u0, . . . , uK) = min {T | xt = xdes for T ≤ t ≤ K + 1}

6

Page 7: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

state transfer time f is quasiconvex function of (u0, . . . , uK):

f(u0, u1, . . . , uK) ≤ T

if and only if for all t = T, . . . , K + 1

xt = At x init + At−1Bu0 + + But−1 = xdes · · ·

i.e., sublevel sets are affine

minimum-time optimal control problem:

minimize f(u0, u1, . . . , uK)

subject to umin � ut � umax, t = 0, . . . , K

with variables u0, . . . , uK

a quasiconvex problem; can be solved via bisection

7

Page 8: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Minimum-time control example

u1

u2

• force (ut)1 moves object modeled as 3 masses (2 vibration modes)

• force (ut)2 used for active vibration suppression

• goal: move object to commanded position as quickly as possible, with

|(ut)1| ≤ 1, |(ut)2| ≤ 0.1, t = 0, . . . , K

8

Page 9: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

(xt )

3

Ignoring vibration modes

• treat object as single mass; apply only u1

• analytical (‘bang-bang’) solution

1

−2 0 2 4 6 8 10 12 14 16 18 20 0

0.5

1

1.5

2

2.5

3

t

(ut )

1 (u

t ) 2

0.5

0

−0.5

−1

−2 0 2 4 6 8 10 12 14 16 18 20

t 0.1

0.05

0

−0.05

−0.1

−2 0 2 4 6 8 10 12 14 16 18 20

t

9

Page 10: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

0.5

2

2.5

3

With vibration modes

• no analytical solution

• a quasiconvex problem; solved using bisection

1

−2 0 2 4 6 8 10 12 14 16 18 20

t

(ut )

2 (u

t ) 1

−1

−2 0 2 4 6 8 10 12 14 16 18 20

1.5 t 0.1

1

0.5

0

−0.5

0.05

0

−0.05

−0.1 0

−2 0 2 4 6 8 10 12 14 16 18 20

t

10

(xt )

3

Page 11: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Grasp force optimization

• choose K grasping forces on object

– resist external wrench – respect friction cone constraints – minimize maximum grasp force

• convex problem (second-order cone program):

minimize maxi �f (i)�2 max contact force

subject to �

i Q(i)f (i) = f ext force equillibrium

i p(i) × (Q(i)f (i)) = τ ext torque equillibrium

µif3(i) ≥

f1(i)2

+ f2(i)2

�1/2 friction cone contraints

variables f (i) ∈ R3 , i = 1, . . . , K (contact forces)

11

Page 12: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Example

12

Page 13: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Optimal broadcast transmitter power allocation

• m transmitters, mn receivers all at same frequency

• transmitter i wants to transmit to n receivers labeled (i, j), j = 1, . . . , n

• Aijk is path gain from transmitter k to receiver (i, j)

• Nij is (self) noise power of receiver (i, j)

• variables: transmitter powers pk, k = 1, . . . , m

transmitter i

transmitter k

receiver (i, j)

13

Page 14: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

at receiver (i, j):

• signal power: Sij = Aijipi

• noise plus interference power:

Iij = Aijkpk + Nij

k 6=i

• signal to interference/noise ratio (SINR): Sij/Iij

problem: choose pi to maximize smallest SINR:

Aijipimaximize min �

i,j k 6 Aijkpk + Nij =i

subject to 0 ≤ pi ≤ pmax

. . . a (generalized) linear fractional program

14

Page 15: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Phased-array antenna beamforming

(xi, yi)

θ

• omnidirectional antenna elements at positions (x1, y1), . . . , (xn, yn)

unit plane wave incident from angle θ induces in ith element a signal •j(xi cos θ+yi sin θ−ωt)e

(j = √−1, frequency ω, wavelength 2π)

15

Page 16: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

demodulate to get output ej(xi cos θ+yi sin θ) ∈ C•

• linearly combine with complex weights wi:

n

y(θ) = wiej(xi cos θ+yi sin θ)

i=1

• y(θ) is (complex) antenna array gain pattern

• |y(θ)| gives sensitivity of array as function of incident angle θ

• depends on design variables Re w, Im w (called antenna array weights or shading coefficients)

design problem: choose w to achieve desired gain pattern

16

Page 17: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Sidelobe level minimization

make |y(θ)| small for |θ − θtar| > α

(θtar: target direction; 2α: beamwidth)

via least-squares (discretize angles)

minimize i y(θi)2| |

subject to y(θtar) = 1

(sum is over angles outside beam)

least-squares problem with two (real) linear equality constraints

17

Page 18: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

θtar = 30◦

10◦

50◦

� �

��

|y(θ)|

���

sidelobe level

18

Page 19: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

minimize sidelobe level (discretize angles)

minimize maxi y(θi)| |subject to y(θtar) = 1

(max over angles outside beam)

can be cast as SOCP

minimize t subject to y(θi) t| | ≤

y(θtar) = 1

19

Page 20: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

θtar = 30◦

10◦

50◦

� �

��

|y(θ)|

���

sidelobe level

20

Page 21: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Extensions

convex (& quasiconvex) extensions:

• y(θ0) = 0 (null in direction θ0)

• w is real (amplitude only shading)

• |wi| ≤ 1 (attenuation only shading)

• minimize σ2 �

in =1 |wi|2 (thermal noise power in y)

• minimize beamwidth given a maximum sidelobe level

nonconvex extension:

• maximize number of zero weights

21

Page 22: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

Optimal receiver location

• N transmitter frequencies 1, . . . , N

transmitters at locations ai, bi ∈ R2 use frequency i• • transmitters at a1, a2, . . . , aN are the wanted ones

• transmitters at b1, b2, . . . , bN are interfering

receiver at position x ∈ R2 •

� b3

a3 �

a2 � � b2 x

a1 �

� b1

22

Page 23: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

−α • (signal) receiver power from ai: �x − ai�2 (α ≈ 2.1)

• (interfering) receiver power from bi: �x − bi� −α (α ≈ 2.1)2

• worst signal to interference ratio, over all frequencies, is

−α

S/I = min �x − ai�2

−αi �x − bi�2

• what receiver location x maximizes S/I?

23

Page 24: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

S/I is quasiconcave on {x | S/I ≥ 1}, i.e., on

{x | �x − ai�2 ≤ �x − bi�2, i = 1, . . . , N}

a1 �

a2 �

a3 �

� b3

� b2

� b1

can use bisection; every iteration is a convex quadratic feasibility problem

24

Page 25: Convex optimization examples - MIT OpenCourseWare · Multi-period processor speed scheduling • processor adjusts its speed st ∈ [smin,smax] in each of T time periods T • energy

MIT OpenCourseWare http://ocw.mit.edu

6.079 / 6.975 Introduction to Convex Optimization Fall 2009

For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.


Recommended