multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples •...

24
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 of multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples •...

Page 1: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Multi-period processor speed scheduling

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

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

t=1 φ(st)

• 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

1Tθt = 1,

Di∑

t=Ai

θtist ≥ Wi

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

2

Page 3: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Minimum energy processor speed scheduling

• work with variables Sti = θtist

st =

n∑

i=1

Sti,

Di∑

t=Ai

Sti ≥ Wi

• solve convex problem

minimize E =∑T

t=1 φ(st)subject to smin ≤ st ≤ smax, t = 1, . . . , T

st =∑n

i=1 Sti, t = 1, . . . , T∑Di

t=AiSti ≥ Wi, i = 1, . . . , n

• a convex problem when φ is convex

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

3

Page 4: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Example

• T = 16 periods, n = 12 jobs

• smin = 1, smax = 6, φ(st) = s2t

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

0 1 2 3 4 5 6 70

5

10

15

20

25

30

35

40

st

φ(s

t)

0 2 4 6 8 10 12 14 16 180

2

4

6

8

10

12

jobi

t

4

Page 5: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Optimal and uniform schedules

• uniform schedule: Sti = Wi/(Di −Ai + 1); gives Eunif = 204.3

• optimal schedule: S⋆ti; gives E

⋆ = 167.1

0 2 4 6 8 10 12 14 16 180

1

2

3

4

5

6

st

t

optimal

0 2 4 6 8 10 12 14 16 180

1

2

3

4

5

6

st

t

uniform

5

Page 6: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Minimum-time optimal control

• linear dynamical system:

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

• 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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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 = Atxinit +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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Ignoring vibration modes

• treat object as single mass; apply only u1

• analytical (‘bang-bang’) solution

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

0.5

1

1.5

2

2.5

3

(xt)

3

t

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

−1

−0.5

0

0.5

1

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

−0.1

−0.05

0

0.05

0.1

t

t

(ut)

1(u

t)2

9

Page 10: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

With vibration modes

• no analytical solution

• a quasiconvex problem; solved using bisection

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

0.5

1

1.5

2

2.5

3

(xt)

3

t

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

−1

−0.5

0

0.5

1

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

−0.1

−0.05

0

0.05

0.1

t

t

(ut)

1(u

t)2

10

Page 11: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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∑

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

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

µif(i)3 ≥

(

f(i)21 + f

(i)22

)1/2

friction cone constraints

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

11

Page 12: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Example

12

Page 13: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

at receiver (i, j):

• signal power:Sij = Aijipi

• noise plus interference power:

Iij =∑

k 6=i

Aijkpk +Nij

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

problem: choose pi to maximize smallest SINR:

maximize mini,j

Aijipi∑

k 6=iAijkpk +Nij

subject to 0 ≤ pi ≤ pmax

. . . a (generalized) linear fractional program

14

Page 15: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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 signalej(xi cos θ+yi sin θ−ωt)

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

15

Page 16: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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

• linearly combine with complex weights wi:

y(θ) =

n∑

i=1

wiej(xi cos θ+yi sin θ)

• 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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Sidelobe level minimization

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

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

via least-squares (discretize angles)

minimize∑

i |y(θi)|2subject to y(θtar) = 1

(sum is over angles outside beam)

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

17

Page 18: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

θtar = 30◦

50◦

10◦

@@@R

|y(θ)|

@@R

sidelobe level

18

Page 19: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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 tsubject to |y(θi)| ≤ t

y(θtar) = 1

19

Page 20: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

θtar = 30◦

50◦

10◦

@@@R

|y(θ)|

@@R

sidelobe level

20

Page 21: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

Extensions

convex (& quasiconvex) extensions:

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

• w is real (amplitude only shading)

• |wi| ≤ 1 (attenuation only shading)

• minimize σ2∑n

i=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: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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

x

q

b1

q

b2

q

b3

a

a1

a

a2

a

a3

22

Page 23: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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

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

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

S/I = mini

‖x− ai‖−α2

‖x− bi‖−α2

• what receiver location x maximizes S/I?

23

Page 24: multi-period processor speed scheduling minimum time ... · Convexoptimizationexamples • multi-period processor speed scheduling • minimum time optimal control • grasp force

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

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

q

b1

q

b2

q

b3

a

a1

a

a2

a

a3

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

24