Precoloring extension on chordal graphs D aniel Marx Budapest - - PowerPoint PPT Presentation

precoloring extension on chordal graphs
SMART_READER_LITE
LIVE PREVIEW

Precoloring extension on chordal graphs D aniel Marx Budapest - - PowerPoint PPT Presentation

Precoloring extension on chordal graphs D aniel Marx Budapest University of Technology and Economics dmarx@cs.bme.hu Graph Theory 2004, July 59, Paris Precoloring extension on chordal graphs p.1/16 Precoloring extension


slide-1
SLIDE 1

Precoloring extension on chordal graphs

D´ aniel Marx Budapest University of Technology and Economics

dmarx@cs.bme.hu

Graph Theory 2004, July 5–9, Paris

Precoloring extension on chordal graphs – p.1/16

slide-2
SLIDE 2

Precoloring extension

Generalization of vertex coloring: given a partial coloring, extend it to the whole graph using k colors. Example for k = 3: Example for k = 2: Cannot be extended!

Precoloring extension on chordal graphs – p.2/16

slide-3
SLIDE 3

Precoloring extension (cont.)

Vertex coloring is a special case of precoloring extension (PREXT). PREXT is polynomial time solvable for complements of bipartite graphs cographs split graphs trees partial k-trees PREXT is NP-complete for bipartite graphs line graphs of bipartite graphs line graphs of planar graphs interval graphs

Precoloring extension on chordal graphs – p.3/16

slide-4
SLIDE 4

The special case 1-PREXT

1-PREXT: every color occurs at most once in the precoloring. In general, not easier than PREXT: the vertices precolored with the same color can be identified.

Precoloring extension on chordal graphs – p.4/16

slide-5
SLIDE 5

The special case 1-PREXT

1-PREXT: every color occurs at most once in the precoloring. In general, not easier than PREXT: the vertices precolored with the same color can be identified.

Precoloring extension on chordal graphs – p.4/16

slide-6
SLIDE 6

The special case 1-PREXT

1-PREXT: every color occurs at most once in the precoloring. In general, not easier than PREXT: the vertices precolored with the same color can be identified.

Precoloring extension on chordal graphs – p.4/16

slide-7
SLIDE 7

The special case 1-PREXT

1-PREXT: every color occurs at most once in the precoloring. In general, not easier than PREXT: the vertices precolored with the same color can be identified.

Precoloring extension on chordal graphs – p.4/16

slide-8
SLIDE 8

The special case 1-PREXT

1-PREXT: every color occurs at most once in the precoloring. In general, not easier than PREXT: the vertices precolored with the same color can be identified. However, 1-PREXT can be easier for a restricted graph class: PREXT for interval graphs is NP-hard [Bir´

  • , Hujter, Tuza, 1992], even if every interval has the same length [M. 2003].

1-PREXT is polynomial-time solvable for interval graphs [Bir´

  • , Hujter, Tuza, 1992].

Precoloring extension on chordal graphs – p.4/16

slide-9
SLIDE 9

An application

Example: Assign aircrafts (colors) to the different flights (time intervals).

Precoloring extension on chordal graphs – p.5/16

slide-10
SLIDE 10

An application

Example: Assign aircrafts (colors) to the different flights (time intervals).

Precoloring extension on chordal graphs – p.5/16

slide-11
SLIDE 11

An application

Example: Assign aircrafts (colors) to the different flights (time intervals). Interval coloring is linear time solvable ⇒ linear time algorithm for scheduling. The problem is NP-hard if there are preassigned flights (PREXT). If each aircraft has a preassigned maintenance interval, then the problem can be solved in polynomial time (1-PREXT).

Precoloring extension on chordal graphs – p.5/16

slide-12
SLIDE 12

Chordal graphs

Question: [Bir´

  • , Hujter, Tuza] Is it possible to generalize the 1-PREXT algorithm for chordal

graphs? Our main result: 1-PREXT is polynomial-time solvable for chordal graphs. A graph is chordal if it does not contain induced cycles longer than 3. Interval graphs are chordal. Intersection graphs of intervals on a line ⇔ interval graphs. Intersection graphs of subtrees in a tree ⇔ chordal graphs. Chordal graphs are perfect.

Precoloring extension on chordal graphs – p.6/16

slide-13
SLIDE 13

Tree decomposition

Every chordal graph can be built using the following operations. We consider chordal graphs with a distinguished clique. Add: attach a new vertex to the clique. Forget: remove a vertex from the clique. Join: identify the cliques of two chordal graphs.

Precoloring extension on chordal graphs – p.7/16

slide-14
SLIDE 14

Coloring chordal graphs

Tree decomposition gives a method of coloring chordal graphs. Main idea: before the join

  • peration we can permute the colors such that the clique has the same coloring in both

graphs. This approach does not work if there are precolored vertices: precolored precolored The two colorings cannot be joined!

Precoloring extension on chordal graphs – p.8/16

slide-15
SLIDE 15

Precoloring extension

Idea 1: For each subgraph appearing in the construction of the chordal graph, list all possible colorings that can appear on the distinguished clique in a precoloring extension. The graphs can be joined if they have colorings that agree on the clique. The colors outside the clique are not important. Problem: There can be too many (exponentially many) colorings.

Precoloring extension on chordal graphs – p.9/16

slide-16
SLIDE 16

Colorings of the clique

For a subgraph H, let CH be those colors that are used in the precoloring inside H. precolored We do not have to distinguish between and since colors not in CH can be freely permuted.

Precoloring extension on chordal graphs – p.10/16

slide-17
SLIDE 17

Colorings of the clique

For a subgraph H, let CH be those colors that are used in the precoloring inside H. precolored We do not have to distinguish between and since colors not in CH can be freely permuted. We do not have to distinguish between and either: outside H no vertex is precolored with CH (1-PREXT!), thus the colors can be freely permuted. Idea 2: The only important thing in a coloring of the clique is which vertices receive colors from

CH, and which vertices receive colors not in CH.

Precoloring extension on chordal graphs – p.10/16

slide-18
SLIDE 18

The set system

Let H be a graph with a distinguished clique K. Set system S(H, K) contains

S ⊆ K if and only if there is a precoloring extension on H such that

vertices in S receive colors from CH, vertices not in S receive colors not in CH. Example:

x z y K CH = {•, •}

Precoloring extension on chordal graphs – p.11/16

slide-19
SLIDE 19

The set system

Let H be a graph with a distinguished clique K. Set system S(H, K) contains

S ⊆ K if and only if there is a precoloring extension on H such that

vertices in S receive colors from CH, vertices not in S receive colors not in CH. Example:

x z y K CH = {•, •}

Precoloring extension on chordal graphs – p.11/16

slide-20
SLIDE 20

The set system

Let H be a graph with a distinguished clique K. Set system S(H, K) contains

S ⊆ K if and only if there is a precoloring extension on H such that

vertices in S receive colors from CH, vertices not in S receive colors not in CH. Example:

x z y K CH = {•, •} {x, y} {x, y} {y, z} {y, z} S(H, K) = { {x, y}, {y, z} }

Precoloring extension on chordal graphs – p.11/16

slide-21
SLIDE 21

Representing the set systems

For each subgraph H appearing in the tree decomposition, we determine the set system

S(H, K).

Problem: Size of S(H, K) can be exponentially large.

Precoloring extension on chordal graphs – p.12/16

slide-22
SLIDE 22

Representing the set systems

For each subgraph H appearing in the tree decomposition, we determine the set system

S(H, K).

Problem: Size of S(H, K) can be exponentially large. Idea 3: The set system S(H, K) can be compactly represented by network flows. the clique K sinks Sets in S(H, K)

  • Maximum flows in the network

Precoloring extension on chordal graphs – p.12/16

slide-23
SLIDE 23

Representing the set systems

For each subgraph H appearing in the tree decomposition, we determine the set system

S(H, K).

Problem: Size of S(H, K) can be exponentially large. Idea 3: The set system S(H, K) can be compactly represented by network flows. 0 0 0 1 1 1 the clique K sinks Sets in S(H, K)

  • Maximum flows in the network

Precoloring extension on chordal graphs – p.12/16

slide-24
SLIDE 24

Representing the set systems

For each subgraph H appearing in the tree decomposition, we determine the set system

S(H, K).

Problem: Size of S(H, K) can be exponentially large. Idea 3: The set system S(H, K) can be compactly represented by network flows. 1 1 0 0 the clique K sinks Sets in S(H, K)

  • Maximum flows in the network

Precoloring extension on chordal graphs – p.12/16

slide-25
SLIDE 25

Representing the set systems

For each subgraph H appearing in the tree decomposition, we determine the set system

S(H, K).

Problem: Size of S(H, K) can be exponentially large. Idea 3: The set system S(H, K) can be compactly represented by network flows. 1 1 0 0 the clique K sinks Sets in S(H, K)

  • Maximum flows in the network

Theorem: S(H, K) is the projection of the basis set of a matroid.

Precoloring extension on chordal graphs – p.12/16

slide-26
SLIDE 26

Building the networks

When we build the graph with the add, forget, and join operations, we can build at the same time the networks representing the set systems. In the case of join, we use the following lemma:

S ∈ S(G, K)

  • S can be partitioned into S1 and S2 such that

S1 ∈ S(G1, K) and S2 ∈ S(G2, K)

(+ some technical condition holds)

G G2 G1

Precoloring extension on chordal graphs – p.13/16

slide-27
SLIDE 27

Building the networks

When we build the graph with the add, forget, and join operations, we can build at the same time the networks representing the set systems. In the case of join, we use the following lemma:

S ∈ S(G, K)

  • S can be partitioned into S1 and S2 such that

S1 ∈ S(G1, K) and S2 ∈ S(G2, K)

(+ some technical condition holds)

S(G1, K) S(G2, K)

Precoloring extension on chordal graphs – p.13/16

slide-28
SLIDE 28

Building the networks

When we build the graph with the add, forget, and join operations, we can build at the same time the networks representing the set systems. In the case of join, we use the following lemma:

S ∈ S(G, K)

  • S can be partitioned into S1 and S2 such that

S1 ∈ S(G1, K) and S2 ∈ S(G2, K)

(+ some technical condition holds)

S(G1, K) S(G2, K)

Precoloring extension on chordal graphs – p.13/16

slide-29
SLIDE 29

Building the networks

When we build the graph with the add, forget, and join operations, we can build at the same time the networks representing the set systems. In the case of join, we use the following lemma:

S ∈ S(G, K)

  • S can be partitioned into S1 and S2 such that

S1 ∈ S(G1, K) and S2 ∈ S(G2, K)

(+ some technical condition holds)

S2 S1 S(G1, K) S(G2, K)

Precoloring extension on chordal graphs – p.13/16

slide-30
SLIDE 30

Building the networks

When we build the graph with the add, forget, and join operations, we can build at the same time the networks representing the set systems. In the case of join, we use the following lemma:

S ∈ S(G, K)

  • S can be partitioned into S1 and S2 such that

S1 ∈ S(G1, K) and S2 ∈ S(G2, K)

(+ some technical condition holds)

S2 S1 S = S1 ∪ S2 S(G1, K) S(G2, K)

Precoloring extension on chordal graphs – p.13/16

slide-31
SLIDE 31

The algorithm

Algorithm for 1-PREXT on chordal graphs: Find a tree decomposition of G. For each subgraph H in the tree decomposition, construct a network representing

S(H, K).

The network for G can be used to determine whether there is a precoloring extension for

G or not.

Precoloring extension on chordal graphs – p.14/16

slide-32
SLIDE 32

A non-matroidal example

If the graph is not chordal, then the set system may not be the projection of a matroid:

z y x

There are 4 possible colorings:

S(G, K) = { {x}, {y, z} }

Precoloring extension on chordal graphs – p.15/16

slide-33
SLIDE 33

Summary

Special case 1-PREXT of PREXT. Previous result: 1-PREXT is polynomial-time solvable for interval graphs. Our result: 1-PREXT is polynomial-time solvable for chordal graphs. Set system S(H, K) is the projection of a matroid if the graph is chordal. If the graph is not chordal, the this set system is not necessarily a matroid.

Precoloring extension on chordal graphs – p.16/16

slide-34
SLIDE 34

Summary

Special case 1-PREXT of PREXT. Previous result: 1-PREXT is polynomial-time solvable for interval graphs. Our result: 1-PREXT is polynomial-time solvable for chordal graphs. Set system S(H, K) is the projection of a matroid if the graph is chordal. If the graph is not chordal, the this set system is not necessarily a matroid.

Thank you for your attention! Questions?

Precoloring extension on chordal graphs – p.16/16