- 119 Views
- Uploaded on
- Presentation posted in: General

Flexible Optimization Problems

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Flexible Optimization Problems

A. Akavia, S. Safra

What do we do with all the NP-hard optimization problems ???

- Optimization function approximation
- Input flexibility
Example – graph coloring problem:

- Optimization function –
- find an approximation of the min coloring.

- Input flexibility –
- find a k-coloring with few monochromatic edges.

- Approximation
- Input flexibility
- Flexible optimization problems
- Examples
- Definitions
- Hardness results

- An approximation algorithm is an algorithm that returns an answer C which “g-approximates” the optimal solution C*.
- C g C*(minimization)
- 1/g C* C(maximization)

example: 2-colorability

complexity and approximation results are w/r to the number of modifications

Input:

- a graph G, and
- a desired property
Goal: find a small set of edge-modifications (addition/deletion/both) that transforms Ginto G’with the desired property

- Combining both relaxations –
- approximating the optimization function,
- while allowing input flexibility.

- Example: Given a graph G, find a coloring with fewcolors, and perhaps few monochromatic edges.

Natural Flexible-Approximation-Problems:

- Min Non-Deterministic Automaton
- Min Synthesis Graph

- Many applications:
- program verification
- speech recognition
- natural language processing
- …

Approximating the minimum NFA, which accepts a given language L is hard.

Sometimes it suffices to find:

- a smallNFA,(Approximation)
- accepting a language “similar” to the input one.(Input Flexibility)

- ProgramP is correct with respect to a specificationsTif: L(P) L(T)
- In concurrent programming: processesP1,..., Pn are correct w/r to specificationTif: L(P1x…x Pn) L(T)

P

. . .

P1

. . .

P2

. . .

P3

. . .

in the worst case, |P1x…xPn| is exponential in n

- Coping with this state-explosion [K94]:
- finding a small automaton P’ (Optimization)
- such that L(P1x…x Pn) L(P’)(Input Flexibility)
- and then checking whether L(P') L(T)

L(P1x…x Pn) L(P’)

L(P1x…x Pn) L(T)

L(P’) L(T)

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

a multi dimensional space

attributecoordinate

molecule point

similarity (molecules)proximity (points)

- Choose
- Synthesize
- Screen

*

a

b

c

a

b

c

Node - grow step

Label - appended unit

a

b

c

a

b

c

b

a

b

c

a

a

b

b

c

c

Produces each string s s.t.s = labels concatenation along a path

a

b

b

a

b

a

b

a

b

c

a

Synthesis Graph

a

b

b

b

b

b

b

c

c

a

a

a

b

b

c

c

c

c

Split Synthesis [F91,L91,CS99]

Output: A smallsynthesis-graphproducing S’, which is similar to S

Input: A set of strings S

a

b

c

a

b

c

a

b

c

a

b

- Input flexibitily–
- producing S’ and not S

- Approximation –
- finding a small synthesis graph
- not the minimum

Definitions, Theorems and Proofs

- Assume a distance function(x,x’)to be the smallest number of basic modifications (say, bit-changes) necessary in order to transform x to x’.
the ball of radius d around a given input x is ball(x,d) = {x’ | (x,x’)d}

d

- Assume:
- a distance function , and
- an optimizationfunction f.

- In a (d,g)-flexible-approximation problem, given an input x, a solution y’ is returned s.t.
- y’ is feasible for some x’ball(x,d), and
- f(x’,y’) is g-approximateto the optimum (for x).

f(x’,y’) ≤ gf(x,y*)

x’

x

Input: Bipartite graph G

Goal: Cover all edges by bicliques(i.e. complete bipartite subgraphs)

- Assume:
- (G,G’) = symmetric edge difference
- f(G,y) = no. of bicliques in the cover y.

G

G’

f(G’,y)=2

f(G,y)=3

(G,G’)=7

- In a (d,g)-Biclique Edge Cover ((d,g)-BEC) given an input G, a solution y’ is returned s.t.
- y’ is the no. of bicliques in a cover ofG’ball(x,d), and
- f(G’,y’) is g-approximateto the min-BECfor G.

G

G’

Thm: >0(d,g)-Biclique-Edge-Cover problem is hard for any g=O(|V|1/5-) and d=O(g), unless NP=ZPP.

Proof: later.

- Assume:
- (L,L’) = symmetric difference between L and L’
- f(L,A) = no. of states in an NFA A accepting L.

- In a (d,g)-NFA, given a language L, a solution y’ is returned s.t.
- y’ is the no. of states in an NFA accepting L’ball(L,d), and
- f(L’,y’) is g-approximateto the optimum for L.

Thm: >0 (d,g)-NFA problem is hard for any g=O(|L|1/10-) and d=O(g), unless NP=ZPP

qF

q0

{uv| (u,v)E}

Bipartite graph G

Strings set S

NFA

- Reduction from Biclique-Edge-Cover:

v5

v4

v3

v2

v1

Define L

Define L = {vu| (v,u)E}

u5

u4

u3

u2

u1

qF

q0

A - an automaton acceptin L

Reduction from flexible approximation Biclique Edge Cover:

k-biclique edge cover of G’in d-distance from G

NFA with k+2 states,accepting L’ in d-distance from L

Reduction from Biclique Edge Cover:

k-biclique edge cover of G

NFA with k+2 states,accepting L

(d,g)-BECis hard for

g=O(|V|1/5-) and d=O(g)

(d,g)-NFAis hard for

g=O(|L|1/10-) and d=O(g)

G=(V,U,E) a bipartite graph.

- A synthesis-graph Hproduces a string s if:s is a label concatenation along a path from first to last layers in H.

Given a set of strings S, output a small synthesis-graph producing S’, which is similar to S

- Assume:
- (S,S’) = symmetric difference between S and S’
- f(S,H) = no. of internal nodes in a synthesis graph H that produces the strings S.

- In a (d,g)-Synthesis Graph, given an input S, a solution y’ is returned s.t.
- y’ is the no. of internal nodes in a synthesis graph H producing S’ball(S,d), and
- f(S’,y’) g-approximatethe optimum for S.

Thm: >0 (d,g)-Synthesis Graph problem is hard for any g=O(|S|1/10-) and d=O(g), unless NP=ZPP

Proof:

A

A

{uAv| (u,v)E}

A

Bipartite graph G

Synthesis graph H

Strings set S

- Reduction from Biclique-Edge-Cover:

Define S = {vAu| (v,u)E}

Define S

Reduction from flexible approximation Biclique Edge Cover:

k-biclique edge coverof G’in d-distance from G synthesis graph H with k internal nodes producing S’ in d-distance from S

Reduction from Biclique Edge Cover [CS99]:

k-biclique edge coverof G synthesis graph H with k internal nodes producing S

A

A

(d,g)-BECis hard for

g=O(|V|1/5-) and d=O(g)

(d,g)-SGis hard for

g=O(|S|1/10-) and d=O(g)

A

G=(V,U,E) a bipartite graph.

H - a graph constructing S

Hardness Proof of(d,g)-Biclique-Edge-Cover((d,g)-BEC)

- In a (d,g)-Biclique Edge Cover ((d,g)-BEC) given an input G, a solution y’ is returned s.t.
- y’ is the no. of bicliques in the cover of G’ball(G,d), and
- f(G’,y’) is g-approximateto the min-BECfor G.

G

f(G,y)=3

Thm: (d,g)-BEC is hard for any g=O(|V|1/5-) and d=O(g), unless NP=ZPP.

Proof:

Lemma: from any solution y’ to G’ball(G,d),we may construct a solution y to G,s.t. f(G,y) ≤ f(G’,y’) + d

G

G’

Claim: Let G be a graph, if v’=f(G’,y’)’g-approximate(d,g)-BEC,where d=O(g),then y, f(G,y)v’+d, s.t. v=v’+dO(g)-approximateBEC

Proof: By the lemma y, f(G,y)a’+d, and v O(g)optG

v = v’ + d

goptG + d

2goptG(since d = O(g))

Assume BEC is hard for g=O(|V|1/5-)

then:

(d,g)-BEC is hard for g=O(|V|1/5-) and d=O(g)

Proof Outlines:

- Construction [Simon90]
- Graph coloring is hard to approximate by g=O(|V|1-) [FK98]
- Simple calculation, improves Simon’s bound from a constant factor to g=O(|V|1/5-).

1

1

1

1

2

2

2

5

5

5

3

3

3

3

4

4

4

2

5

4

Input: A graph G

Goal: Cover all vertices by cliques

Clique Cover is equivalent to Graph Coloring

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

1

1’

1

2

2’

2

5

3

3’

3

4

4

4’

5

5’

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

H

GI

G

1

1’

2

2’

3

3’

4

4’

5

5’

G

GI

1

2

5

3

4

- a clique-cover in G translates into abiclique-cover of the horizontaledges in GI, and vice versa
- a clique-cover in G translates into t2biclique-covers of the horizontaledges in H.

No. of GI’s copies in H.

H

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

1

2

5

3

4

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

G=(V,E)

- 2|E|t bicliques are necessary and sufficient in order to cover the diagonal edges of H.

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

H

H

- horizontaledges in different copies of GIcannotbe members of the samebiclique.

Ascending, hence cannot connect copies within the same row.

H

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

1

2

5

3

4

1

1’

1

1’

1

1’

2

2’

2

2’

2

2’

3

3’

3

3’

3

3’

4

4’

4

4’

4

4’

5

5’

5

5’

5

5’

G=(V,E)

- sclique-cover in G(t2s + 2|E|t)biclique-cover in H
- rbiclique-cover in H(r – 2|E|t) / t2clique-cover in G

- Given a solution with rbicliques for H, we may construct a solution with scliques for G, and
- it is easy to verify that
- if ris O(|VH|x)-approximate to ropt
- then sisO(|V|5x)-approximate to sopt

Clique-Cover is hard to approximate by O(|V|1-), >0, unless NP=ZPP (from [FK98])

BEC is hard to approx within g=O(|VH|1/5-), >0, , unless NP=ZPP.

- Property testing [GGR]
- Sample size
- Typically seeking an exact solution and not an approximated one

- Bi-criteria optimization[MRSR]
- optimization (vs. relaxation).
- Might be easy when only one criterion is considered.
- Bi-criteria: hard with one criterionhard in the bi-criterionversion.

- Typically hostile objectives.

- optimization (vs. relaxation).

relevant case for (d,g)-SG

hard

easy

d=0

d=O(|V|1/5-)

d=O(|V|)

d=O(|E|)

d=|V|2-|E|

Graph coloring is easy

- Similar proof is valid for any problem, which is
- hard to approximate, and
- “v vd + d”

- The gap is still too large:

- Improving our results
- Extending our results to other problems
- Achieving positive results
- Parameterized polynomial solution
- Approximation algorithm

- Distinguish, by a small no. of probes, between instances x that
- satisfy a given property accept
- no set of |x| modifications causes x to satisfy the property reject

back

- Bi-criteria network design problem is a tuple (A,B,S)
- A,B are two minimization objectives
- S specify a membership requirement in a class of sub-graphs
- The problem specifies a budget value on objective A
- And seeks minimum over B (within the budget)

- A (k,l)-approximation algorithm for an (A,B,S)-bi-criteria optimization problem is a poly.-time algorithm, that produces a solution that belongs to the sub-graph class S, in which
- the objective A is at most k times the budget, and
- the objective B is at most l times the minimum

back