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
Multi-period processor speed scheduling processor adjusts its speed s t [s min,s max ] in each of T time periods energy consumed in period t is φ(s t ); total energy is E = T t=1 φ(s t) n jobs job i available at t = A i ; must finish by deadline t = D i job i requires total work W i 0 θ ti 0 is fraction of processor effort allocated to job i in period t 1 T θ t = 1, D i t=a i θ ti s t W i choose speeds s t and allocations θ ti to minimize total energy E 2
Minimum energy processor speed scheduling work with variables S ti = θ ti s t solve convex problem s t = n S ti, i=1 D i t=a i S ti W i minimize E = T t=1 φ(s t) subject to s min s t s max, t = 1,...,T s t = n i=1 S ti, t = 1,...,T Di t=a i S ti W i, i = 1,...,n a convex problem when φ is convex can recover θ t as θ ti = (1/s t)s ti 3
Example T = 16 periods, n = 12 jobs s min = 1, s max = 6, φ(s t ) = s 2 t jobs shown as bars over [A i,d i ] with area W i 40 35 12 30 10 25 8 φ(st) 20 job i 6 15 4 10 5 2 0 0 1 2 3 4 5 6 7 s t 0 0 2 4 6 8 10 12 14 16 18 t 4
Optimal and uniform schedules uniform schedule: S ti = W i /(D i A i +1); gives E unif = 204.3 optimal schedule: S ti ; gives E = 167.1 6 optimal 6 uniform 5 5 4 4 st 3 st 3 2 2 1 1 0 0 2 4 6 8 10 12 14 16 18 t 0 0 2 4 6 8 10 12 14 16 18 t 5
Minimum-time optimal control linear dynamical system: x t+1 = Ax t +Bu t, t = 0,1,...,K, x 0 = x init inputs constraints: u min u t u max, t = 0,1,...,K minimum time to reach state x des : f(u 0,...,u K ) = min{t x t = x des for T t K +1} 6
state transfer time f is quasiconvex function of (u 0,...,u K ): f(u 0,u 1,...,u K ) T if and only if for all t = T,...,K +1 x t = A t x init +A t 1 Bu 0 + +Bu t 1 = x des i.e., sublevel sets are affine minimum-time optimal control problem: minimize f(u 0,u 1,...,u K ) subject to u min u t u max, t = 0,...,K with variables u 0,...,u K a quasiconvex problem; can be solved via bisection 7
Minimum-time control example u 1 u 2 force (u t ) 1 moves object modeled as 3 masses (2 vibration modes) force (u t ) 2 used for active vibration suppression goal: move object to commanded position as quickly as possible, with (u t ) 1 1, (u t ) 2 0.1, t = 0,...,K 8
Ignoring vibration modes treat object as single mass; apply only u 1 analytical ( bang-bang ) solution 3 1 2.5 2 (ut)1 0.5 0 0.5 (xt)3 1.5 1 0.5 (ut)2 1 0.1 0.05 0 0.05 2 0 2 4 6 8 10 12 14 16 18 20 t 0 2 0 2 4 6 8 10 12 14 16 18 20 t 0.1 2 0 2 4 6 8 10 12 14 16 18 20 t 9
With vibration modes no analytical solution a quasiconvex problem; solved using bisection 3 1 2.5 2 (ut)1 0.5 0 0.5 (xt)3 1.5 1 0.5 (ut)2 1 0.1 0.05 0 0.05 2 0 2 4 6 8 10 12 14 16 18 20 t 0 2 0 2 4 6 8 10 12 14 16 18 20 t 0.1 2 0 2 4 6 8 10 12 14 16 18 20 t 10
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 max i 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 ( ) 1/2 µ i f (i) 3 f (i)2 1 +f (i)2 2 friction cone constraints variables f (i) R 3, i = 1,...,K (contact forces) 11
Example 12
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 A ijk is path gain from transmitter k to receiver (i,j) N ij is (self) noise power of receiver (i,j) variables: transmitter powers p k, k = 1,...,m transmitter k receiver (i, j) transmitter i 13
at receiver (i, j): signal power: S ij = A iji p i noise plus interference power: I ij = k ia ijk p k +N ij signal to interference/noise ratio (SINR): S ij /I ij problem: choose p i to maximize smallest SINR: A iji p maximize min i i,j k i A ijkp k +N ij subject to 0 p i p max... a (generalized) linear fractional program 14
Phased-array antenna beamforming (x i,y i ) θ omnidirectional antenna elements at positions (x 1,y 1 ),..., (x n,y n ) unit plane wave incident from angle θ induces in ith element a signal e j(x icosθ+y i sinθ ωt) (j = 1, frequency ω, wavelength 2π) 15
demodulate to get output e j(x icosθ+y i sinθ) C linearly combine with complex weights w i : y(θ) = n w i e j(x icosθ+y i sinθ) i=1 y(θ) is (complex) antenna array gain pattern y(θ) gives sensitivity of array as function of incident angle θ depends on design variables Rew, Imw (called antenna array weights or shading coefficients) design problem: choose w to achieve desired gain pattern 16
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
y(θ) 50 θ tar = 30 sidelobe level 10 18
minimize sidelobe level (discretize angles) (max over angles outside beam) minimize max i y(θ i ) subject to y(θ tar ) = 1 can be cast as SOCP minimize t subject to y(θ i ) t y(θ tar ) = 1 19
y(θ) 50 θ tar = 30 sidelobe level 10 20
convex (& quasiconvex) extensions: y(θ 0 ) = 0 (null in direction θ 0 ) w is real (amplitude only shading) Extensions w i 1 (attenuation only shading) minimize σ 2 n i=1 w i 2 (thermal noise power in y) minimize beamwidth given a maximum sidelobe level nonconvex extension: maximize number of zero weights 21
Optimal receiver location N transmitter frequencies 1,...,N transmitters at locations a i, b i R 2 use frequency i transmitters at a 1, a 2,..., a N are the wanted ones transmitters at b 1, b 2,..., b N are interfering receiver at position x R 2 b 3 a 3 x a 2 b 2 a 1 b 1 22
(signal) receiver power from a i : x a i α 2 (α 2.1) (interfering) receiver power from b i : x b i α 2 (α 2.1) worst signal to interference ratio, over all frequencies, is x a i α 2 S/I = min i x b i α 2 what receiver location x maximizes S/I? 23
S/I is quasiconcave on {x S/I 1}, i.e., on {x x a i 2 x b i 2, i = 1,...,N} b 3 a 3 a 2 b 2 a 1 b 1 can use bisection; every iteration is a convex quadratic feasibility problem 24