comprimiendo grafos de la web

170
Mapa Comprimiendo Grafos de la Web Gonzalo Navarro Centro de Investigaci´ on de la Web Departamento de Ciencias de la Computaci ´ on Universidad de Chile En colaboraci ´ on con los estudiantes Francisco Claude y Rodrigo Gonz´ alez G. Navarro Comprimiendo Grafos de la Web

Upload: truongnga

Post on 09-Jan-2017

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Comprimiendo Grafos de la Web

Mapa

Comprimiendo Grafos de la Web

Gonzalo Navarro

Centro de Investigacion de la WebDepartamento de Ciencias de la Computacion

Universidad de Chile

En colaboracion con los estudiantes Francisco Claude y Rodrigo Gonzalez

G. Navarro Comprimiendo Grafos de la Web

Page 2: Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 3: Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 4: Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 5: Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 6: Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 7: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 8: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 9: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 10: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 11: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 12: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Page 13: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 14: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 15: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 16: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 17: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 18: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 19: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 20: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Page 21: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 22: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Page 23: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Page 24: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Page 25: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa de orden k : si SA son los caracteres que siguen alas ocurrencias de A en S,

Hk (S) =1n

∑A∈Σk

|SA|H0(SA)

I Cota inferior a codificaciones que consideran los ksımbolos precedentes.

G. Navarro Comprimiendo Grafos de la Web

Page 26: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa de orden k : si SA son los caracteres que siguen alas ocurrencias de A en S,

Hk (S) =1n

∑A∈Σk

|SA|H0(SA)

I Cota inferior a codificaciones que consideran los ksımbolos precedentes.

G. Navarro Comprimiendo Grafos de la Web

Page 27: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 28: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de Incidencia

a

d

e

c

b

d eb ca

a

b

c

d

e

G. Navarro Comprimiendo Grafos de la Web

Page 29: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Page 30: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Page 31: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Page 32: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Page 33: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

b:

c:

d:

e:

d

d,c,a

d,c

d,c,ba:

a

d

e

c

b

b:

c:

d:

e:

a,b,e

a

ba:

a,b,c,e

G. Navarro Comprimiendo Grafos de la Web

Page 34: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Page 35: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Page 36: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Page 37: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Page 38: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Page 39: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Page 40: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Page 41: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Page 42: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Page 43: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Page 44: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Algunos ejemplos de bpe’s (crawls reales)

Grafo n e Matriz Lista 2 x Lista Rel. BinUK 18.5M 298M 1.15M 25.89 51.78 20.13EU 860K 19M 39K 20.81 41.62 15.25Arabic 23M 640M 827K 25.51 51.02 19.66Indochina 7M 194M 253K 23.73 47.46 17.95

G. Navarro Comprimiendo Grafos de la Web

Page 45: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Page 46: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Page 47: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Page 48: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Page 49: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Page 50: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Page 51: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Page 52: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Page 53: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Page 54: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Page 55: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 56: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 57: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 58: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 59: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 60: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 61: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Page 62: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Page 63: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Page 64: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Page 65: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Page 66: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Page 67: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 68: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 69: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 70: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 71: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 72: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 73: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Page 74: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 75: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 76: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 77: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 78: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 79: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Page 80: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 81: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 82: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 83: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 84: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 85: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Page 86: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Page 87: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Page 88: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Page 89: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Page 90: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 91: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 92: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 93: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 94: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 95: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 96: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Page 97: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Page 98: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Page 99: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Page 100: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Page 101: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Page 102: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

0.6

0.8

1

1.2

1.4

1.6

1.8

2

2 4 6 8 10 12 14 16

time

per n

eigh

bor (

ms)

space (bpe)

Retrieving neighbors

oursBV

BV (fwd)

G. Navarro Comprimiendo Grafos de la Web

Page 103: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

0

5

10

15

20

25

30

6 7 8 9 10 11 12 13 14 15

time

per n

eigh

bor (

ms)

space (bpe)

Retrieving reverse neighbors

oursBV

G. Navarro Comprimiendo Grafos de la Web

Page 104: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Page 105: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Page 106: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Page 107: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

H = 1 0 0 1 0 0 1 1 0

a

de

c

ba:

b:

c:

d:

e:

d

d,c,a

d,c

d,c,b

T = d c b d c a d d c

G. Navarro Comprimiendo Grafos de la Web

Page 108: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 109: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 110: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 111: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 112: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 113: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 114: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 115: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 116: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Page 117: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 118: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 119: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 120: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 121: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 122: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Page 123: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Vuelta a Compresion Pura

I Hay una forma elegante y efectiva de comprimir T ?I Re-Pair: encontrar el par mas repetido en T y

reemplazarlo por un nuevo sımbolo, hasta que todos lospares sean unicos.

G. Navarro Comprimiendo Grafos de la Web

Page 124: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Vuelta a Compresion Pura

I Hay una forma elegante y efectiva de comprimir T ?I Re-Pair: encontrar el par mas repetido en T y

reemplazarlo por un nuevo sımbolo, hasta que todos lospares sean unicos.

G. Navarro Comprimiendo Grafos de la Web

Page 125: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Paira a a b c a a b a a a b c a b d a b d

d A dc Aa a Ac a Aa a A

a a

a b

b c

c a

b d

d a 1

2

2

2

5

4

a bA

G. Navarro Comprimiendo Grafos de la Web

Page 126: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Paira a A c a A a a A c A d A d

c A d A da Bc B

a a

a

c

c a

d

1

2

2

2

A 3

A

1

A

c A

A 1d

aB A

a bA

a B

G. Navarro Comprimiendo Grafos de la Web

Page 127: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

a B c B a B c A d A d

a

a

2

1

A 1d

a bA

B

B c 2

c B 1

B

c A 1

A d 2

AC d

a B c B a B c C C

G. Navarro Comprimiendo Grafos de la Web

Page 128: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

AC d

a B c B a B c C C

C CB a D

a

a

2

1

a bA

B

B c 2

c B 1

B

c 1C

C C 1

BD c

a D

G. Navarro Comprimiendo Grafos de la Web

Page 129: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

AC d

BD c

a DB a DC C

C CB E

a 2

1

a bA

1

1C

D

DB 1

B a

DC

C

a DE

E

diccionario

secuencia comprimida

G. Navarro Comprimiendo Grafos de la Web

Page 130: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 131: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 132: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 133: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 134: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 135: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Page 136: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Page 137: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Page 138: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Page 139: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Page 140: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Page 141: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Page 142: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Page 143: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Page 144: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Page 145: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Page 146: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Page 147: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Page 148: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Page 149: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

UK: 18.5M nodos, 298M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10 12

time

(mse

g/ed

ge)

space (bits/edge)

UK

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

UK

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Page 150: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

EU: 860K nodos, 19M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10 12 14

time

(mse

g/ed

ge)

space (bits/edge)

EU

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

EU

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Page 151: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

Arabic: 23M nodos, 640M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10

time

(mse

g/ed

ge)

space (bits/edge)

Arabic

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

Arabic

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Page 152: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

Indochina: 7M nodos, 194M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10

time

(mse

g/ed

ge)

space (bits/edge)

Indochina

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

Indochina

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Page 153: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Page 154: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Page 155: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Page 156: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Page 157: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 158: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 159: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 160: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 161: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 162: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 163: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Page 164: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 165: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 166: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 167: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 168: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 169: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Page 170: Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

H = 1 0 0 1 0 0

t

h

e

1

2

n

d

T = t h e e n d

1: t h e2: e n d

G. Navarro Comprimiendo Grafos de la Web