• Nem Talált Eredményt

Minimum sum multicoloring on the edges of trees

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Minimum sum multicoloring on the edges of trees"

Copied!
36
0
0

Teljes szövegt

(1)

Minimum sum multicoloring on the edges of trees

Dániel Marx

Budapest University of Technology and Economics dmarx@cs.bme.hu

Workshop on Approximation and Online Algorithms Budapest, 2003

(2)

Minimum sum multicoloring

Given: a graph G(V, E), and demand function x: V → N

Find: an assignment of x(v) colors (integers) to every vertex v, such that neigh- bors receive disjoint sets

Finish time: f(v) of vertex v is the largest color assigned to it in the coloring.

Goal: Minimize P

v∈V f(v), the sum of the coloring.

(3)

Minimum sum multicoloring

Given: a graph G(V, E), and demand function x: V → N

Find: an assignment of x(v) colors (integers) to every vertex v, such that neigh- bors receive disjoint sets

Finish time: f(v) of vertex v is the largest color assigned to it in the coloring.

Goal: Minimize P

v∈V f(v), the sum of the coloring.

1

3 1

1 2

2

(4)

Minimum sum multicoloring

Given: a graph G(V, E), and demand function x: V → N

Find: an assignment of x(v) colors (integers) to every vertex v, such that neigh- bors receive disjoint sets

Finish time: f(v) of vertex v is the largest color assigned to it in the coloring.

Goal: Minimize P

v∈V f(v), the sum of the coloring.

1

3 1

1 2

2

1,4

2,5 1 2

1,4,5

3

(5)

Minimum sum multicoloring

Given: a graph G(V, E), and demand function x: V → N

Find: an assignment of x(v) colors (integers) to every vertex v, such that neigh- bors receive disjoint sets

Finish time: f(v) of vertex v is the largest color assigned to it in the coloring.

Goal: Minimize P

v∈V f(v), the sum of the coloring.

1

3 1

1 2

2

1,4

2,5 1 2

1,4,5 3

,5

,4 3 ,5

1 2

Sum of the coloring:

5 + 1 + 2 + 4 + 3 + 5 = 20

(6)

Known results

Special case: the chromatic sum problem: x(v) = 1, ∀v ∈ V

Trees:

? polynomial time solvable if every demand is 1 [Kubicka, 1989],

? sum multicoloring is NP-hard for binary trees [Marx, 2002]

? (1 + ε)-approximation for sum multicoloring [Halldórsson et al., 1999]

Partial k-trees:

? (1 + ε)-approximation for sum multicoloring [Halldórsson and Kortsarz, 1998]

Bipartite graphs:

? APX-hard, even if every demand is 1 [Bar-Noy and Kortsarz, 1998]

? 1.5-approximation for sum multicoloring [Bar-Noy et al., 1998]

(7)

Edge coloring version

Assign x(e) colors to each edge e, minimize the sum of finish times of the edges.

Each color can appear at most once at a vertex.

Application: scheduling dedicated biprocessor tasks

Each task requires the simultaneous work of two preassigned processors for a given number of time slots. Goal: minimize the sum of completion times.

vertices ⇐⇒ processors

edges ⇐⇒ jobs

demand ⇐⇒ length of job colors ⇐⇒ time slots

Preemptive scheduling: jobs can be interrupted and continued later Bipartite graphs: processors are divided into clients and servers

(8)

Edge coloring results

Known results:

? Polynomial time solvable on trees with demand 1 [Giaro and Kubale 2000]

? NP-hard on bipartite graphs even if every demand is 1 [Giaro and Kubale 2000]

? 1.796-approximation for bipartite graphs with demand 1 [Halldórsson et al.]

? 2-approximation for general graphs and general demand [Bar-Noy et al., 2000]

(9)

Edge coloring results

Known results:

? Polynomial time solvable on trees with demand 1 [Giaro and Kubale 2000]

? NP-hard on bipartite graphs even if every demand is 1 [Giaro and Kubale 2000]

? 1.796-approximation for bipartite graphs with demand 1 [Halldórsson et al.]

? 2-approximation for general graphs and general demand [Bar-Noy et al., 2000]

Our results:

? NP-hard on trees even if every demand is 1 or 2

? (1 + ε)-approximation on trees with arbitrary demand

(10)

Scaling the demand

Theorem: If the graph is a tree, then multiplying the demand of each edge by integer q multiplies the minimum sum by exactly q.

(11)

Scaling the demand

Theorem: If the graph is a tree, then multiplying the demand of each edge by integer q multiplies the minimum sum by exactly q.

⇒ The problem can be solved in polynomial time on trees if every edge has the same demand

(12)

Scaling the demand

Theorem: If the graph is a tree, then multiplying the demand of each edge by integer q multiplies the minimum sum by exactly q.

⇒ The problem can be solved in polynomial time on trees if every edge has the same demand

⇒ Increasing the demand to the next power of (1 + ε) increases the sum by at most a factor of (1 + ε) ⇒ we can assume that each demand is of the form (1 + ε)i

(13)

Bounded degree trees

Theorem: Minimum sum edge coloring admits a linear time PTAS in bounded degree trees.

Method:

The line graph of a tree with max degree d is a partial (d − 1)-tree, hence the PTAS of Halldórsson and Kortsarz can be used.

In a partial k-tree we can compute a polynomial number of color sets for each vertex such that there is a good approximate solution using only these sets ⇒ PTAS with standard dynamic programming

(14)

Bounded degree trees

Theorem: Minimum sum edge coloring admits a linear time PTAS in bounded degree trees.

Method:

The line graph of a tree with max degree d is a partial (d − 1)-tree, hence the PTAS of Halldórsson and Kortsarz can be used.

In a partial k-tree we can compute a polynomial number of color sets for each vertex such that there is a good approximate solution using only these sets ⇒ PTAS with standard dynamic programming

Bounded degree trees: In edge coloring bounded degree trees, a constant number of color sets is sufficient for each edge ⇒ linear time PTAS

(15)

Bounded degree trees

Theorem: Minimum sum edge coloring admits a linear time PTAS in bounded degree trees.

Method:

The line graph of a tree with max degree d is a partial (d − 1)-tree, hence the PTAS of Halldórsson and Kortsarz can be used.

In a partial k-tree we can compute a polynomial number of color sets for each vertex such that there is a good approximate solution using only these sets ⇒ PTAS with standard dynamic programming

Bounded degree trees: In edge coloring bounded degree trees, a constant number of color sets is sufficient for each edge ⇒ linear time PTAS

Almost bounded degree trees: trees that have bounded degree after deleting the degree 1 nodes. Algorithm works for such trees as well.

(16)

General case

Theorem: Linear time PTAS for general trees.

•Partition the tree into almost bounded degree subtrees

•Use the PTAS for subtrees

•Merge the colorings of the subtrees to a coloring of the whole tree

(17)

General case

Theorem: Linear time PTAS for general trees.

•Partition the tree into almost bounded degree subtrees

•Use the PTAS for subtrees

•Merge the colorings of the subtrees to a coloring of the whole tree

(18)

General case

Theorem: Linear time PTAS for general trees.

•Partition the tree into almost bounded degree subtrees

•Use the PTAS for subtrees

•Merge the colorings of the subtrees to a coloring of the whole tree

(19)

General case

Theorem: Linear time PTAS for general trees.

•Partition the tree into almost bounded degree subtrees

•Use the PTAS for subtrees

•Merge the colorings of the subtrees to a coloring of the whole tree

?

How to partition the tree?

How to resolve the conflicts when merging the colorings?

(20)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε

(21)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε 1/ε2

(22)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε 1/ε2

1/ε2

(23)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε 1/ε2

1/ε2

(24)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε 1/ε2

1/ε2

Total demand of the small edges is very small, they can be thrown away.

(25)

The Small, the Large, and the Frequent

The child edges of a given node are divided into small, large, and frequent edges.

Every demand is of the form (1 + ε)i. Number of edges for each demand size:

1

0 2 3 . . .

of edges number

of demand log1+ε 1/ε2

1/ε2

Total demand of the small edges is very small, they can be thrown away.

Each node has at most a constant number (≤ 1/ε4) of large child edges.

(26)

Partitioning the tree

The tree is split at the frequent edges:

(27)

Partitioning the tree

The tree is split at the frequent edges:

(28)

Partitioning the tree

The tree is split at the frequent edges:

(29)

Partitioning the tree

The tree is split at the frequent edges:

(30)

Partitioning the tree

The tree is split at the frequent edges:

(31)

Partitioning the tree

The tree is split at the frequent edges:

(32)

Partitioning the tree

The tree is split at the frequent edges:

(33)

Partitioning the tree

The tree is split at the frequent edges:

Claim: Each subtree is an almost bounded degree tree ⇒ PTAS can be used Proof:

• Deleting the degree 1 nodes deletes every frequent edge

• Only the large edges remain

• Each node has at most a constant number of large child edges

(34)

How to merge the colorings?

Shifting the frequent edges: We modify the coloring such that each frequent edge e uses only colors above x(e)/ε. This can be done with only a small

increase of the sum.

Resolving the conflicts: remove the conflicting colors from the child edges.

e x(e) colors,

each color is > x(e)/ε

(35)

How to merge the colorings?

Shifting the frequent edges: We modify the coloring such that each frequent edge e uses only colors above x(e)/ε. This can be done with only a small

increase of the sum.

Resolving the conflicts: remove the conflicting colors from the child edges.

e x(e) colors,

each color is > x(e)/ε e

We remove at most x(e) colors, each of them is greater than x(e)/ε.

To replace these colors, it is easy to find x(e) unused colors below x(e)/ε.

(36)

Conclusions

• Problem: edge coloring version of minimum sum multicoloring on trees.

• PTAS for vertex coloring partial k-trees implies a PTAS for edge coloring bounded degree trees. Linear time PTAS with additional techniques.

• Linear time PTAS for general trees uses the algorithm for bounded degree trees as a subroutine

Minimum sum edge multicoloring is NP-hard on trees.

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

Also, a , b and c denote the rate of reproduction of the people, trees and rats respectively, M is the maximum number of trees which can live on the island, f is the negative eect

These gadgets are trees with a single pendant edge, and have the following general property: if a coloring is “cheap,” meaning that it has as small error on the internal vertices

New result: Minimum sum multicoloring is NP-hard on binary trees, even if every demand is polynomially bounded (in the size of the tree).. Returning to minimum

Clearly, every small and frequent edge becomes a leaf edge in its subtree, thus if every node has at most D large child edges in the tree, then in every subtree each node has at most

[This paper] PTAS for the minimum sum edge multicoloring of partial k-trees and planar graphs....

We give the first polynomial-time approximation scheme (PTAS) for the Steiner forest problem on planar graphs and, more generally, on graphs of bounded genus.. As a first step, we

Node degree. The neighborhood structure N can be quantified. This gives the defi- nition of node degree, which is the number of edges adjacent to a node. In our case, this measures

This paper also contains results about the classical online graph coloring problem the case of the (k+1)-Claw free graphs and graphs with bounded degree are considered, and it is