36
 Planaridad Algoritmos y Estructuras de Datos III

algo3_teo_planar

Embed Size (px)

Citation preview

Page 1: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 1/36

 

Planaridad

Algoritmos y Estructuras de Datos III

Page 2: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 2/36

 

¿Por que planares?

Page 3: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 3/36

 

¿Por que planares?

Page 4: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 4/36

¿Por que planares?

 

Page 5: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 5/36

Grafos planares

Definiciones:Una representacion planar de un grafo G  es un conjunto depuntos en el plano que se corresponden con los vertices de G 

unidos por curvas que se corresponden con las aristas de G ,sin que estas se crucen entre sı.

Un grafo es planar si admite una representacion planar.

Dada una representacion planar de un grafo G , una region es

el conjunto de todos los puntos alcanzables desde un punto(que no sea un vertice ni parte de una arista) sin atravesarvertices ni aristas.

 

Page 6: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 6/36

Grafos planares

 

Page 7: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 7/36

Grafos planares

Toda representacion planar de un grafo tiene exactamente una

region de area infinita, la region exterior.

La frontera de una region es el circuito que rodea a la region(puede tener vertices y aristas repetidos).

El grado o tamano de la region es el numero de aristas quetiene su frontera.

 

Page 8: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 8/36

Grafos planares

Propiedad: K 5 y K 33 son grafos no planares. K 5 es el grafo no

planar con el menor numero de vertices y K 33 es el que tiene elmenor numero de aristas.

K 5

u 1

u 2

u 3

u 4u 5

K 33

u 1

u 2

u 3

u 4

u 4

u 4

 

Page 9: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 9/36

Grafos planares

Propiedad: K 5 y K 33 son grafos no planares. K 5 es el grafo no

planar con el menor numero de vertices y K 33 es el que tiene elmenor numero de aristas.

K 5

u 1

u 2

u 3

u 4u 5

K 33

u 1

u 2

u 3

u 4

u 4

u 4

Propiedad: Si un grafo contiene un subgrafo no-planar esno-planar.

 

Page 10: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 10/36

Grafos planares - Subdivision y homeomorfismo

Definiciones:

Subdividir una arista e  = (v , w ) de un grafo G , consiste enagregar u  /∈ V  un vertice a G  y reemplazar la arista e  por dos

aristas e 

= (v , u ) y e 

= (u , w ).

 

Page 11: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 11/36

Grafos planares - Subdivision y homeomorfismo

Definiciones:

Subdividir una arista e  = (v , w ) de un grafo G , consiste enagregar u  /∈ V  un vertice a G  y reemplazar la arista e  por dos

aristas e 

= (v , u ) y e 

= (u , w ).

Un grafo G  es una subdivision de otro grafo G  si G  se puedeobtener de G  por sucesivas operaciones de subdivision.

 

Page 12: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 12/36

Grafos planares - Subdivision y homeomorfismo

Definiciones:

Subdividir una arista e  = (v , w ) de un grafo G , consiste enagregar u  /∈ V  un vertice a G  y reemplazar la arista e  por dos

aristas e 

= (v , u ) y e 

= (u , w ).

Un grafo G  es una subdivision de otro grafo G  si G  se puedeobtener de G  por sucesivas operaciones de subdivision.

Dos grafos G  y G  se dicen homeomorfos si hay unisomorfismo entre una subdivision de G  y una de G .

 

Page 13: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 13/36

Grafos planares - Subdivision

u 1 u 2

u 3u 4

 

Page 14: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 14/36

Grafos planares - Subdivision

u 1 u 2

u 3u 4

u 1 u 2

u 3u 4

 

Page 15: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 15/36

Grafos planares - Subdivision

u 1 u 2

u 3u 4

u 1 u 2

u 3u 4

 

Page 16: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 16/36

Grafos planares - Subdivision

u 1 u 2

u 3u 4

u 1 u 2

u 3u 4

 

Page 17: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 17/36

Grafos planares - Homeomorfismo

G u 1

u 2

u 3

u 4 u 5

v 1

v 2

v 3 v 4 v 5

 

Page 18: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 18/36

Grafos planares - Homeomorfismo

G u 1

u 2

u 3

u 4 u 5

v 1

v 2

v 3 v 4 v 5

u 1

u 2

u 3

u 4 u 5u 

v 1

v 2

v 3 v 4 v 5

 

G f l T d K ki

Page 19: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 19/36

Grafos planares - Teorema de Kuratowski

Propiedad: Si G  es una subdivision G , entonces G  es planar si ysolo si G  es planar.

 

G f l T d K ki

Page 20: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 20/36

Grafos planares - Teorema de Kuratowski

Propiedad: Si G  es una subdivision G , entonces G  es planar si ysolo si G  es planar.

Propiedad: La planaridad es invariante bajo homeomorfismo.

 

G f l T d K t ki

Page 21: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 21/36

Grafos planares - Teorema de Kuratowski

Propiedad: Si G  es una subdivision G , entonces G  es planar si ysolo si G  es planar.

Propiedad: La planaridad es invariante bajo homeomorfismo.

Corolario: Si un grafo G  tiene un subgrafo que es homeomorfo aun grafo no planar entonces G  es no-planar.

 

G f l T d K t ki

Page 22: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 22/36

Grafos planares - Teorema de Kuratowski

Propiedad: Si G  es una subdivision G , entonces G  es planar si ysolo si G  es planar.

Propiedad: La planaridad es invariante bajo homeomorfismo.

Corolario: Si un grafo G  tiene un subgrafo que es homeomorfo aun grafo no planar entonces G  es no-planar.

Teorema (Kuratowski, 1930): Un grafo es planar si y solo si no

contiene ningun subgrafo homeomorfo a K 33 o K 5.

 

G f s l s T d Whit

Page 23: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 23/36

Grafos planares - Teorema de Whitney

Definiciones:

La operacion de contraccion de una arista e  = (v , w ) consisteen eliminar la arista del grafo y considerar sus extremos comoun solo vertice u  /∈ V , quedando como aristas incidentes a u 

todos las aristas que eran incidentes a v  o a w .

Un grafo G  es una contraccion de otro grafo G  si se puedeobtener a partir de G  por sucesivas operaciones decontraccion. En este caso se dice que G  es contraible a G .

 

Grafos planares Teorema de Whitney

Page 24: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 24/36

Grafos planares - Teorema de Whitney

Definiciones:

La operacion de contraccion de una arista e  = (v , w ) consisteen eliminar la arista del grafo y considerar sus extremos comoun solo vertice u  /∈ V , quedando como aristas incidentes a u 

todos las aristas que eran incidentes a v  o a w .

Un grafo G  es una contraccion de otro grafo G  si se puedeobtener a partir de G  por sucesivas operaciones decontraccion. En este caso se dice que G  es contraible a G .

Teorema (Whitney): G  es planar si y solo si no contiene ningunsubgrafo contraıble a K 33 o K 5.

 

Grafos planares Teorema de Whitney

Page 25: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 25/36

Grafos planares - Teorema de Whitney

Definiciones:

La operacion de contraccion de una arista e  = (v , w ) consisteen eliminar la arista del grafo y considerar sus extremos comoun solo vertice u  /∈ V , quedando como aristas incidentes a u 

todos las aristas que eran incidentes a v  o a w .

Un grafo G  es una contraccion de otro grafo G  si se puedeobtener a partir de G  por sucesivas operaciones decontraccion. En este caso se dice que G  es contraible a G .

Teorema (Whitney): G  es planar si y solo si no contiene ningunsubgrafo contraıble a K 33 o K 5.

¿Se podrıan usar estos dos teoremas en la practica para decidir siun grafo es planar?

 

Grafos planares Teorema de Euler

Page 26: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 26/36

Grafos planares - Teorema de Euler

Teorema (Euler, 1752): Si G  es un grafo conexo planar entoncescualquier representacion planar de G  determina r  = m − n + 2regiones en el plano (ecuacion poliedral de Euler).

 

Grafos planares Teorema de Euler

Page 27: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 27/36

Grafos planares - Teorema de Euler

Teorema (Euler, 1752): Si G  es un grafo conexo planar entoncescualquier representacion planar de G  determina r  = m − n + 2regiones en el plano (ecuacion poliedral de Euler).

Corolario: Si G  es simple, sin loops, conexo y planar con n ≥ 3,

entonces m ≤ 3n − 6.

 

Grafos planares - Teorema de Euler

Page 28: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 28/36

Grafos planares - Teorema de Euler

Teorema (Euler, 1752): Si G  es un grafo conexo planar entoncescualquier representacion planar de G  determina r  = m − n + 2regiones en el plano (ecuacion poliedral de Euler).

Corolario: Si G  es simple, sin loops, conexo y planar con n ≥ 3,

entonces m ≤ 3n − 6.

Corolario: K 5 es no planar.

 

Grafos planares - Teorema de Euler

Page 29: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 29/36

Grafos planares Teorema de Euler

Teorema (Euler, 1752): SiG 

es un grafo conexo planar entoncescualquier representacion planar de G  determina r  = m − n + 2regiones en el plano (ecuacion poliedral de Euler).

Corolario: Si G  es simple, sin loops, conexo y planar con n ≥ 3,

entonces m ≤ 3n − 6.

Corolario: K 5 es no planar.

Corolario: Si G  es simple, conexo, bipartito y planar con n ≥ 3,

entonces m ≤ 2n − 4.

 

Grafos planares - Teorema de Euler

Page 30: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 30/36

Grafos planares Teorema de Euler

Teorema (Euler, 1752): SiG 

es un grafo conexo planar entoncescualquier representacion planar de G  determina r  = m − n + 2regiones en el plano (ecuacion poliedral de Euler).

Corolario: Si G  es simple, sin loops, conexo y planar con n ≥ 3,

entonces m ≤ 3n − 6.

Corolario: K 5 es no planar.

Corolario: Si G  es simple, conexo, bipartito y planar con n ≥ 3,

entonces m ≤ 2n − 4.

Corolario: K 33 es no planar.

 

Grafos planares - Grafo dual

Page 31: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 31/36

Grafos planares Grafo dual

El grafo dual G ∗ de un grafo planar G  tiene un vertice por cada

region de G  y una arista uniendo dos vertices correspondientes ados regiones r 1 y r 2 de G  por cada arista en la frontera entre r 1 yr 2 en G .

 

Grafos planares - Grafo dual

Page 32: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 32/36

Grafos planares Grafo dual

Notar que el grafo dual de un grafo simple podrıa tener aristas

multiples y loops.

Distintos dibujos de un mismo grafo planar podrıan llevar a dualesdistintos. Eso no pasa para grafos 3-conexos (tienen esencialmenteuna unica representacion planar).

 

Testeo de planaridad

Page 33: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 33/36

p

Algoritmo de Demoucron , Malgrange y Pertuiset

Esquema:

Comienza con una representacion planar R  de un subgrafo S 

de G  y la expande iterativamente hasta obtener unarepresentacion planar de todo el grafo G  o concluir que no esposible representarlo en forma planar.

Si el grafo es planar, cada componente c  (componenteconexa) de G \ R  tiene que estar completamente contenidadentro de una region de R .

Si el grafo es planar, las aristas que conectan a c  con elconjunto W  de vertices de R  no pueden cruzarse con otras,entonces todos los vertices de W  deben estar en la frontera deuna misma region de R  (pueden estar en la frontera de masde una region).

 

Testeo de planaridad

Page 34: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 34/36

p

Algoritmo de Demoucron, Malgrange y Pertuiset

Notacion y definiciones:

Llamamos parte p  de G  relativa a R  a:1. Una componente conexa de G  \ R  junto con las aristas que la

conectan a vertices de R  (aristas colgantes ).2. Una arista e  = (u , v ) de G  \ R  con u , v  ∈ R .

Dada una parte p  de G  relativa a R , un vertice de contactoes un vertice de R  incidente a una arista colgante de p .

R  es extensible a una representacion planar de G  si se puedeobtener una representacion planar de G  a partir de R .

Una parte p  es dibujable en una region f   de R  si existe una

extension planar de R  en la que p  queda en f  .

Una parte p  es potencialmente dibujable en f   si todovertice de contacto de p  pertenece a la frontera de f  .

Llamamos F (p ) al conjunto de regiones de R  donde p  es

potencialmente dibujable. 

Testeo de planaridad

Page 35: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 35/36

p

Algoritmo de Demoucron , Malgrange y Pertuiset

R  := una representacion planar de cualquier ciclo de G 

mientras R  no sea una representacion planar de G  hacerpara cada parte p  de G  relativa a R  calcular F (p )

si para algun p , F (p ) es vacıo entonces

retornar FALSO

si para algun p , F (p ) = {f  } entonceselegir p  y f  

sino

elegir cualquier p  y f  ∈ F (p )

buscar camino/circuito q  en p  que empieza y termina en

dos aristas colgantes diferentes si es posible; caso

contrario, q  es el camino formado por la unica arista

colgante

R  := R ∪ q 

retornar VERDADERO y R  representacion planar de G 

 

Testeo de planaridad

Page 36: algo3_teo_planar

5/17/2018 algo3_teo_planar - slidepdf.com

http://slidepdf.com/reader/full/algo3teoplanar 36/36

p

Algoritmo de Demoucron , Malgrange y Pertuiset

Teorema: El algoritmo de Demoucron es correcto, es decirencuentra una representacion planar de G  si existe, o si G  es noplanar lo reconoce correctamente.

Complejidad: La complejidad de este algoritmo es O (n2)

Existen algoritmos para detectar planaridad de complejidad menor.Hopcroft y Tarjan propusieron un algoritmo de complejidad O (n),

mas complicado de describir que este.