ADVANCED ALGORITHMS
Lecture 20: Linear Programming
1
ADVANCED ALGORITHMS Lecture 20: Linear Programming 1 ANNOUNCEMENTS - - PowerPoint PPT Presentation
ADVANCED ALGORITHMS Lecture 20: Linear Programming 1 ANNOUNCEMENTS HW 4 is due on Monday, November 5 Project meetings 2 LAST CLASS Optimization {x 1 , x 2 , , x n } are variables values in some domain D find
ADVANCED ALGORITHMS
Lecture 20: Linear Programming
1ANNOUNCEMENTS
➤ HW 4 is due on Monday, November 5 ➤ Project meetings …
2LAST CLASS
3➤ Optimization ➤ Can phrase many natural problems as optimization — e.g. scheduling, matching,
shortest paths, …
➤ {x1, x2, …, xn} are variables — values in some domain D ➤ find maximum value of f(x) subject to
g2(x) ≥ 0 g1(x) ≥ 0 ….
WHEN CAN WE SOLVE OPTIMIZATION?
4➤ The bad news: ➤ all the formulations we wrote so far are intractable! ➤ The good news: ➤ Continuous optimization with linear constraints, objective ➤ Convex optimization
Main challenge: can we express problem of interest as an optimization we can solve?
discrete optimization
domainis
a solitude
linear
programming
usually
Linear
Programs
In
Vars
x 1
2
Xu EIR
g
min
C H
t CzN
t
t Cnxn
subject
to
aTn 3 b
A
X t Akka t
tansen
b
n
gin
3 b
It
ain's.sn
Frivialobservations
air
b is
a hyperplane
a.tn
b
is
a half space
E
LAST CLASS (CONTD.)
5➤ Linear and convex optimization ➤ Visualizing linear optimization
N t X tRy t 2 42 I
µ
Every linear constrain
is a half space
ATx b
A
X
t
a zXzt t 9nXn3
I
LINEAR FUNCTIONS — “LEVEL SETS”
6x + 2y = 1 x + 2y = 1.5 x + 2y = 2
not
Yotz
Go Yo
f cT no yo
kot2y
y
Elnothyoth Is
I
2
Observation
minimizing
In
in
R
p
finding the furthest
R
point in R in the
direction
c
Ty
d
Finder
aTn Eb
ain
LEI
solve for the
n
OBSERVATIONS
7➤ Theorem: optimum value is always achieved at a “vertex” or a “corner
point” of the polytope
➤ Feasible region (and hence opt value) can be unbounded ➤ Saw approach, not algorithm! ➤ Brute-force algorithm: check all corners — not all corners are feasible! ➤ Simplex algorithm (Dantzig 1949): systematic way to move from one
corner point to a neighbor — local search
77
ffeanhi.Y.IEaD
paenuaearnuiicheaEkh'bimff
7 Fia
melon
exp time
SIMPLEX
Algorithm
local search on set
start with
corner ft v
basic feasible solution
mom
that has a
random pivot
lowercturalmee
I
if there is
no such neighbor stop
return solution
am
x
U
l
v
In General
a
neighbor of
v
is
a ptithat has
precisely Cn l
equations in common with je
bi
repaced
Ain Eb
by another equation
ant'sbn
DOES “NO NEIGHBOR” => GLOBAL OPTIMUM?
8i.e., can we get stuck?
➤ Note: ➤ this is NOT the same as local opt = global opt!
the
Fomenktopht
MATH OF LINEAR PROGRAMS — NEIGHBORING DIRECTIONS
9we get
n different neighborsof
iix b
fit
aIn bz
V
each
Hygagusataint ain bio replacing fight
ai'n bn
Z M
1.5
ai
Gen whatis AX
the i jthentry
ai
MATH OF LINEAR PROGRAMS — NEIGHBORING DIRECTIONS
10fit
n'H
v
if I
a
ayy
bi
AX
is
a
diagonal matrix
Can think of
Ax
I
X
A
Moira
the directions UH
are simply the columns
A
CORRECTNESS OF THE SIMPLEX ALGORITHM
11if
cTu c
ctu
ctfu.jo
v
then
3 j
s't
I
v
Iv
Iu
co
For any point atR claim
n
U
can be
expressed as
dj
U'd't when
dj 30
afs.bg
ai
g
um
ane
N
U
di Uli
because u
form a basis
for pi
ajtx
g.tv
di Cafu
g ajT
I I
11
bj
bj 1
because u
were
Y
chosentobe
columnsofthe
dj 70
inverse
GENERAL RESULTS
12➤ [Dantzig 1949]: simplex algorithm — known to be exp-time ➤ Khachiyan’s “ellipsoid” algorithm — 1979
1
interior point
methods
Karmarkow 843
MATCHING AS LINEAR PROGRAM
13MATCHING AS LINEAR PROGRAM
14MATCHING AS LINEAR PROGRAM
15