Compresi´on fractal y grupos autosimilares

Diego Villamizar
26 de noviembre de 2012
Resumen
Como hace rato no publico nada en RIC porque soy jodidamente
conchudo, ´este res´ umen de cositas varias pretende ser mi aporte por un
tiempo mientras preparo cada tema por separado haciendo menci´ on a to-
da la teor´ıa que hay detr´ as de cada uno. O sea, mientras completo lo que
hay y, si llega a funcionar, el puente entre las teor´ıas que pongo. El que
est´e desparchado tiene todo el derecho a leerlo a criticarme, echarme la
madre y dem´ as.
1. Introduccion
En inform´atica siempre se busca, por la finitud de los recursos, optimizar el
tiempo de c´ omputo o el espacio de almacenamiento de alguna forma. La com-
presi´ on es la forma de optimizar espacio gastando tiempo. La idea de ´esta es
usar algoritmos que permitan expresar un texto, una im´ agen, un archivo de una
forma que ocupe menos espacio y en la cual se gaste poco tiempo y se gaste
muy poca calidad del archivo original. Se han aplicado una variedad inmensa
de t´ecnicas en la compresi´on de datos y todav´ıa queda mucho por hacer y tipos
de datos para comprimir.
Las matem´aticas han jugado un importante papel en la teor´ıa de la compre-
si´ on, desde la teor´ıa de la informaci´on establecida por Shannon, pasando por el
an´alisis funcional creando herramientas de transformaciones hasta la teor´ıa de
aut´omatas que es, hasta ahora, lo m´as avanzado en compresi´on.
2. Compresi´ on de Datos
2.1. Informaci´on y entrop´ıa
Primero tendremos que definir qu´e se entiende por informaci´on y alguna
forma de medir esa informaci´on.
Definici´on 1. Sea S = ¦x
1
, x
2
, ..., x
n
¦ un espacio de eventos(alfabeto) y sea
P = ¦p
1
, p
2
, ..., p
n
¦ la probabilidad de ocurrencia de ese evento en una pal-
abra(un conjunto de eventos ordenados), donde p(x
i
) = p
i
entonces a I(x
i
) =
−log
k
(p
i
) se le conoce como la informaci´ on asociada a el evento x
i
1
Definida la informaci´on asociada a un evento, lo que queremos es establecer
es alguna forma de medir la predicibilidad de la informaci´on, o sea, saber si la
informaci´on es predecible bajo alg´ un tipo de inferencia o no, a esa forma de
entender la informaci´on se le conoce como entrop´ıa de Shannon.
Definici´on 2. Se define como entrop´ıa al valor esperado del ´ındice de informa-
ci´on en la palabra, osea
E(P) =

xi∈P
p
i
∗ I(x
i
) =

xi∈P
p
i
∗ (−log
k
(p
i
)) = −

xi∈P
p
i
∗ log
k
(p
i
)
Por qu´e se define la informaci´on? La informaci´on es con lo que se trabaja en
compresi´on de datos, es con lo que se trabaja en inform´atica. As´ı que siempre
es un buen inicio para establecer las bases de lo que se hablar´ a ahora.
2.2. Compresi´on como c´odigo
La teor´ıa de C´odigos es un ´area de las matem´aticas aplicadas que tuvo
much´ısima importancia en la constituci´ on de las redes de comunicaci´on como lo
son el tel´efono, Internet y la televisi´ on. Sigue siendo important´ısima para buscar
mejores y m´as ´optimas formas de comunicarse, por ejemplo, bajar informaci´on
de sat´elites como fotograf´ıas y datos de los sensores que operan en ellos.
Definici´on 3. Un c´odigo se define como una funci´on inyectiva que va de un
evento a otro
φ : S −→ C
B´asicamente lo que busca un c´ odigo es otra forma de identificar algo, digamos
un c´ odigo de el n´ umero 5 es 101 que es su representaci´on binaria. Sabemos que
la funci´ on de cambio de base es inyectiva y va de conjunto de eventos(palabras
con d´ıgitos) a otro conjunto de eventos(palabras con elementos de otra base
num´erica).
Ahora, ´esto por qu´e tiene que ver con la compresi´on de datos? Pues es muy
simple, la idea de comprimir datos es buscar un c´ odigo que total o parcialmente
discrimine la informaci´on que queremos comprimir minimizando su longitud. O
sea, lo que queremos es encontrar un c´ odigo ϕ que minimice

xi∈P
p
i
∗ [ϕ(x
i
)[,
siendo p
i
la probabilidad asociada al evento x
i
.
Bien, ahora lo que queremos es encontrar alg´ un tipo de caracter´ıstica de los
eventos que nos permita encontrar un c´ odigo as´ı.
Definici´on 4. Denotemos a C = ¦c
1
, c
2
, . . . , c
m
¦ como el codominio de un
c´odigo ϕ, Un c´odigo cumple la condici´on de prefijo si y s´olo si ∀c
n
∈ C, ∃c
k

C tales que c
n
= c
k
s
Proposici´ on 1. ∀S = ¦x
1
, x
2
, ..., x
n
¦ ∃ϕ : S −→ C t.q C ⊂ ¦0, 1¦

que cumple
la propiedad del prefijo y es un c´odigo ´optimo, osea que podemos minimizar

xi∈P
p
i
∗ [ϕ(x
i
)] que cumpla:
2
→ Si p
i
< p
j
entonces L
j
≤ L
i
→ Si p
i
= m´ın¦p
j
[x
j
∈ P¦ y p
k
= m´ın¦p
j
[x
j
∈ P ∧x
j
,= x
i
¦ entonces [ϕ(x
i
)[ =
[ϕ(x
k
)[
→ Sean c
i
, c
j
los dos c´odigos m´as largos entonces los c´odigos son iguales excepto
por el ´ ultimo s´ımbolo.
Demostraci´on. La prueba puede encontrarse en [1].
2.3. C´ odigo de Huffman
La unidad que se maneja en la informaci´on en los computadores actuales es
un byte que equivale a 8 bits, o sea 256 s´ımbolos distintos.Luego, en un com-
putador la codificaci´on de una palabra como abc, requiere 8 ∗ 3 = 24 bits para
poder ser guardada o procesada.
La idea detr´as del teorema de Huffman es lo que se conoce como el c´ odi-
go de Huffman que funciona de la siguiente forma: se toma una cadena x =
x
1
x
2
x
3
. . . x
n
donde x
n
∈ ¦0, 1, 2, . . . , 255¦ ahora por cada s´ımbolo distinto en
x, se saca la frecuencia que tiene el s´ımbolo en x, osea
P
xi
=
|{xj∈Sim(x):xj=xi}|
|x|
donde Sim(x) es el conjunto como tal de s´ımbolos. Se
ordenan las frecuencias de s´ımbolos con el orden usual y las dos probabilidades
m´as bajas se funden en una sola creando un nuevo s´ımbolo y ´esto se hace tantas
veces como la cantidad de s´ımbolos distintos que hay en la cadena x.
Ahora, la idea detr´as de el c´ odigo de huffman es crear un ´arbol binario en el
cual el camino de la ra´ız al s´ımbolo x
i
sea el c´ odigo c
i
. As´ı que el fundimiento
de las probabilidades significa crear un nuevo nodo que tenga como hijos a los
dos previos. As´ı, los s´ımbolos con menor probabilidad tendr´an los caminos m´as
largos y los de menos, los m´as cortos.
La justificaci´on para el paso de ”fundir”dos s´ımbolos es la siguiente:
Para un conjunto de eventos(una palabra) S = ¦S
1
, S
2
, . . . , S
n
¦ se define otro
conjunto de eventos S

= ¦S

1
, S

2
, . . . , S

n−2
¦ y se les asocia una frecuencia de la
siguiente forma P(S

i
) = P(S
i
) Si i < n −1 pero, P(S
n−2
) = P(S
n−1
) +P(S
n
)
Proposici´ on 2. Si el c´odigo S’ es ´optimo, entonces S es ´optimo.
Un ejemplo para ver c´ omo funciona el c´ odigo de Huffman ser´ıa:
Dada x = abrakadabra, calculamos las frecuencias y las ordenamos. P(a) =
5
11
P(b) =
2
11
P(r) =
2
11
P(k) =
1
11
P(d) =
1
11
luego cojemos los dos ´ ultimos s´ımbolos y los unimos. luego, creamos un nuevo
nodo, al que llamaremos ¦k, d¦ tal que P(¦k, d¦) =
2
11
se hace as´ı varias veces
y el resultado es el siguiente
P(¦¦¦r, ¦k, d¦¦, b¦, a¦) = 1
3
λ
.
0
.
0
r
0
.
1
k
0
d
1
b
1
a
1
Luego b´ asicamente los c´ odigos asociados quedan como:
a = 1
b = 01
d = 0011
k = 0010
r = 000
y eso cumple con todas las propiedades de un c´ odigo ´optimo del teorema de
Huffman. As´ı la palabra x queda codificada como 10100010010100111010001
que tiene longitud 23 que es claramente una compresi´on con la codificaci´on
est´ andar en binario que ser´ıa de longitud 88.
3. Compresi´ on Fractal
Hay much´ısimas formas de abordar la compresi´on, en las secciones anteriores
hicimos un brev´ısimo repaso de lo que es la compresi´on cl´asica vista desde la
teor´ıa de c´ odigos, ahora la idea es ver la compresi´on desde otra perspectiva, una
un poco m´as nueva y con resultados mucho m´as interesantes.
Como ya definimos lo que es compresi´on, pues ahora toca definir lo que es un
fractal de una forma muy r´apida.
Definici´on 5. Un fractal es un objeto que cumple ciertas condiciones, pero que
ninguna completa sus caracter´ısticas; se suele definir, por comodidad, como un
objeto tan complicado que no puede explicarse con la geometr´ıa usual.
Una de las propiedades m´as importantes para definir un fractal es que su
dimensi´ on de Hausdorff es mayor a su dimensi´ on topol´ogica.
D
H
> D
T
Siendo
D
H
= ´ınf
s∈R
+
¦H
s
(F) = 0¦
con H
s
(F) = l´ım
δ→0
H
s
δ
(F)
y H
s
δ
(F) =´ınf¦

i∈M
[U
i
[
s
: F ⊆ ∪
i∈M
U
i
∧ [U
i
[ < δ¦
4
En particular, hay una forma muy espec´ıfica de trabajar con fractales y es la
primera forma con la que se pudo hablar de compresi´on fractal. Los Sistemas
de Funciones Iteradas.
Definici´on 6. Sea X un espacio m´etrico completo, un SIF es un conjunto finito
de funciones I = ¦f
i
: X −→ X : ∀x, y ∈ X∃s ∈ Rs < 1 δ(f
i
(x), f
i
(y)) ≤
s δ(x, y)¦
Eso quiere decir que las funciones son contractivas en ese espacio m´etrico.
Como las funciones son contractivas y es sobre un espacio m´etrico completo,
por el teorema de punto fijo de Banach se tiene que las funciones aceptan un
´ unico punto fijo.
´
Esto Hutchinson lo trabaj´o y lo extendi´o(no a elementos del
espacio m´etrico si no a subconjuntos del espacio m´etrico) para decir que: S =

i
f
i
(S).
Definici´on 7. Un PIFS es un SIF pero el dominio est´a particionado de alguna
forma.
Bien, y ´esto c´ omo se usa en compresi´on? Pues lo que queremos es encontrar
un PIFS tal que nuestra im´ agen sea el atractor de ese sistema(particionado),
entonces tambi´en quisieramos poder particionar la im´ agen, de lo que salen bas-
tantes t´ecnicas(explicar´e una de ellas despu´es).
Consideremos el espacio m´etrico (R
n
, d

)
con d

(x, y) = m´ax
1≤i≤n
[x
i
−y
i
[
sea λ
0
∈ R
n
el vector a codificar.
Deber´ıamos encontrar W ∈ L(R
n
) tal que:
∃s ∈ [0, 1), d

(W(x), W(y)) ≤ sd

(x, y)
Como W es contractiva en un espacio m´etrico, existe un ´ unico ϕ
W
∈ R
n
tal que
W(ϕ
W
) = ϕ
W
, entonces d


0
, ϕ
W
) = m´ın
V ∈L(R
n
)
d


0
, ϕ
V
)
Osea, lo que queremos es encontrar es una funci´ on de R
n
en R
n
tal que el punto
fijo de esa funci´ on sea muy cercano a λ
0
Listo pues ser´ıa buen´ısimo encontrar la funci´ on y ya porque simplemente co-
mo el vector a comprimir es casi el punto fijo, s´olo ser´ıa iterarla muchas veces
definiendo un error peque˜ no. El problema es que encontrar una funci´ on que haga
eso de todas las que hay en R
nR
n
es computacionalmente muy dif´ıcil, entonces
el problema tiene que restringirse un poco.
Se considerar´ an sistemas de funciones
w
i
: R
D
→ R
B
x → w
i
(x) = a
i
φ(x) +b
i
I
B
.
donde D es el tama˜ no inicial del vector a comprimir y B < D es el tama˜ no del
vector que resulta al aplicar w
i
. Adem´as [a
i
[ < 1
As´ı al separar el vector en varios, usar´ıamos lo propuesto por Hutchinson W(λ) =
5

i
w
i

i
)
Algoritmo de Codificaci´on
Ahora que tenemos una peque˜ na idea de que es lo que queremos hacer,
el algoritmo basicamente ser´ıa dividir el vector a codificar en M
n
vectores de
longitud D y codificar cada uno con w
i
luego, al finalizar, se tendr´ıa un vector
de longitud M
n
∗ B < M
n
∗ D = n luego tendr´ıamos una compresi´on.
Bueno y c´ omo hacemos para optimizar el minimizar la distancia de el punto a
codificar y el punto fijo? El siguiente teorema nos da la soluci´on
Proposici´ on 3. Si φ es el punto fijo de f una funci´on contractiva con par´ ametro
s en un espacio m´etrico completo, entonces d

(x, φ) ≤
1
1−s
d

(x, f(x))
Demostraci´on. d

(x, φ) ≤ d

(x, f(x)) + d

(f(x), φ), eso por desigualdad tri-
angular.
Luego, aplic´ andola n veces ser´ıa.
d

(x, φ) ≤
n

j=1
d

(f
j−1
(x), f
j
(x)) +d

(f
n
(x), φ)
Como f es contractiva con par´ ametro s
d

(x, φ) ≤
n

j=1
s
j−1
d

(x, f(x))+d

(f
n
(x), φ) = d

(x, f(x))
n

j=1
s
j−1
+d

(f
n
(x), φ)
y haciendo el l´ımite cuando n −→ ∞ se tiene d

(x, φ) ≤ d

(x, f(x))

j=1
s
j−1
+
d

(f

(x), φ) =
d

(x, f(x))
1 −s
+d

(f

(x), φ) =
d

(x, f(x))
1 −s
Osea que basta buscar la funci´ on que minimice la distancia del vector λ
0
a
su im´ agen.
Bueno, uno empieza definiendo la contracci´on, como ejemplo eligiremos la m´as
sencilla φ(d
i
) =
d2i+d2i−1
2
, la media entre todo par de vectores.Definida ´esta
contracci´on el siguiente algoritmo halla la funci´ on.
definir B.
−→ Definir M
R
=
n
B
, donde λ
0
∈ R
n
−→ Particionar λ
0
en bloques de tama˜ no M
R
(Bloques Rango r
i
)(sin sobreposi-
ci´on)
−→ Particionar λ
0
en los bloques Dominio d
i
−→ Iterar sobre los bloques Rango y hallar la tupla (a
i
, b
i
, m
i
) tal que minimice
d

(r
i
, a
i
φ(d
mi
) +b
i
I
B
)
Algoritmo de Decodificaci´on
Pues el algoritmo de decodificaci´on por todo lo que hicimos arriba ser´ıa sim-
plemente tomar un punto inicial e iterar la funci´ on hasta lograr encontrar el
6
punto fijo de la funci´ on.
4. Compresi´ on con WFA
Bien, ya entrados un poco en lo que es la compresi´on fractal, veremos un
poco su m´as sofisticada arma que son los WFA. Para poder trabajar sobre
ellos, lo primero que tenemos que hacer es defini una estructura de datos, como
promet´ı en la secci´ on 2.
4.1. Quadtrees
Definici´on 8. Un Quadtree Q es una estructura de datos que permite manejar
im´agenes parti´endolas en 4 cada vez. Dada una Im´agen I de dimensiones 2
n
2
n
.
Q, a su vez, se puede ver como un ´arbol Q = (E, L) Donde E =
n

i=0
¦0, 1, 2, 3¦
i

¦0, 1, 2, 3¦

Y L = ¦(w, x) ∈ E
2
: x = wa, a ∈ ¦0, 1, 2, 3¦¦ ⊂ E
2
Ese ´arbol define la trayectorias de las partes de la im´ agen usualmente vistas
como
0 3
1 2
As´ı como vimos antes que una im´ agen queda determinada por un vector, usando
un Quadtree la im´ agen queda totalmente determinada por una funci´ on f : E −→
R, que dado un camino en el Quadtree devuelve el valor de su pixel.
4.2. Im´agenes Escala de Grises
Otra forma muy sencilla y pr´actica de ver una im´ agen es asociarle una matriz.
Sea I una im´ agen de dimensi´ on n m, entonces se le asocia A(I) ∈ M(R)
n×m
una matriz de entradas reales, donde en la entrada a
ij
est´ a la escala de grises
que pertenece a el pixel i, j de la im´ agen. Usualmente a
ij
∈ [0, 2
k
) ∩ N
Definici´on 9. Dada una im´agen I (2
n
2
n
) y su respectivo Quadtree Q
Se entiende por Direcci´on de una subim´agen(2
d
2
d
, d ≤ n) de I a la cadena
x ∈ ¦0, 1, 2, 3¦

que define el cuadro donde est´a la subim´agen de I.
Se entiende por Profundidad a el n´ umero natural d.
Despu´es de esas definiciones es bueno y ser´a importante notar que las fun-
ciones que definen las im´ agenes sobre caminos por los Quadtree son un espacio
vectorial con la suma usual de funciones.
7
4.3. Aut´ omatas Finitos Ponderados
Ahora, definiremos la herramienta m´as importante
Definici´on 10. Un Aut´omata finito ponderado o, por sus siglas en ingl´es, WFA
A es una qu´ıntupla A = (Q, Σ, L, I, F)
Donde
Q = ¦q
0
, q
1
, . . . , q
n
¦ es el conjunto de estados.
Σ es el alfabeto
L = ¦L
a
: Q
2
−→ R : a ∈ Σ¦ son funciones que dados un s´ımbolo denota los
pesos de los lados del aut´omata.
I : Q −→ R funci´on de peso inicial.
F : Q −→ R funci´on de peso final.
De la definici´on se puede intuir que las transiciones en el aut´omata est´ an
dadas por L, donde se tiene que si hay alg´ un camino de un par de estados p,q
bajo un s´ımbolo a (p, a, q) est´ a definida si y s´olo si L
a
(p, q) ,= 0
Adem´as de ´esto, es c´ omodo denotar las funciones de transici´on como matrices(de
adyacencia) y las funciones de inicio y terminaci´ on como vectores. Todos esos
objetos sobre R
denotaremos la matriz como A(L
a
) ∈ M(R)
|Q|×|Q|
Bueno, ahora lo que tenemos que hacer es asociarle un n´ umero a un camino,
una funci´ on que nos permita cuantificar caminos
Definici´on 11. Se le asocia una funci´on al aut´omata f
A
: Σ

−→ R definida
como
f
A
(x) = f
A
(x
1
x
2
x
3
. . . x
n
) = IA(L
x1
)A(L
x2
) . . . A(L
xn−1
)A(L
xn
)F.
Bien, como la idea es definir los estados de un aut´omata como im´ agenes para
as´ı poder usarlas y describir la im´ agen original, se define una im´ agen por estado.
Definici´on 12. ∀q
i
∈ Q se define ϕ
i
: Σ

−→ R en base a una funci´on φ,
definida:
φ(λ) = F
φ(aw) = A(L
a
)φ(w) con a ∈ Σ
Se define a ϕ
i
como la i-´esima componente del vector obtenido por φ.
ϕ
i
=< φ, e
i
>
Adem´as, tendriamos
f
A
=< I, φ >=
n

i=1
I
i
ϕ
i
De lo que se puede deducir lo siguiente.
Proposici´ on 4. ϕ
i
(aw) =
n

j=1
A(L
a
)
i,j
ϕ
j
(w)
8
Demostraci´on. ϕ
i
(aw) =< φ(aw), e
i
>=< A(L
a
)φ(w), e
i
>=< (a
1
, a
2
, . . . , a
n
), e
i
>
donde a
k
=
n

j=1
(A(L
a
))
k,j
ϕ
j
(w)
luego ϕ
i
(aw) =< (a
1
, a
2
, . . . , a
n
), e
i
>= a
i
=
n

j=1
(A(L
a
))
i,j
ϕ
j
(w)
De lo anterior podemos deducir algo muy importante y es que f
A
es combi-
naci´on lineal de las im´ agenes definidas por los estados del aut´omata A.
4.4. Aut´ omatas AP y funciones APF
Definici´on 13. Sea f : Σ

−→ R una funci´on. Se dice que preserva la me-
dia(APF por sus siglas en ingl´es) si se tiene que
f(w) =
1
|Σ|
|Σ|

i=1
f(wa
i
) ∀w ∈ Σ

B´asicamente lo ´ unico que nos da esa definici´on son im´ agenes cuyo cambio
no es tan dr´astico, porque en el quadtree al hacer un ”zoom out.
es
simplemente
la media de sus cuadros internos, as´ı que el cambio al ojo humano es bastante
suave.
Otra cosa que se puede verificar f´acilmente es que las funciones APF conforman
un subespacio vectorial de las funciones de cadenas de s´ımbolos a R viendo que
la funci´ on 0 est´ a y la suma y multiplicaci´on por escalar se mantiene.
Definici´on 14. Sea A = (Q, Σ, L, I, F) un WFA, se dice que es AP si
1
|Σ|
|Σ|

i=1
A(L
ai
)F =
F
Luego, F es un autovector de
|Σ|

i=1
A(L
ai
) con autovector [Σ[
Bien, ahora lo que uno quiere es poder conectar esas dos definiciones, y eso
nos lo permite hacer el siguiente teorema.
Proposici´ on 5. Sea f : Σ

−→ R una funci´on computable por un WFA.
Si el WFA es AP entonces f es APF.
Demostraci´on. De la hip´otesis se tiene que existe A tal que
f(w) = f
A
(w) = I
|w|

j=2
A(L
wj
)F
y pues se tiene que A es AP, luego
1
|Σ|
|Σ|

i=1
A(L
ai
)F = F
Por lo que reemplazando en f
A
,
9
f
A
(w) = I
|w|

j=1
A(L
wj
)(
1
[Σ[
|Σ|

i=1
A(L
ai
)F) =
1
[Σ[
|Σ|

i=1
I
|w|

j=1
A(L
wj
)L
ai
F =
1
[Σ[
|Σ|

i=1
f
A
(wa
i
).
Luego f es APF.
4.5. Algoritmo de Inferencia
Ahora la idea es que dada una im´ agen por su funci´ on definida sobre su
quadtree, queremos encontrar un aut´omata finito ponderado que la genere y
para ´esto es el algoritmo de inferencia.
De aqu´ı en adelante usaremos una funci´ on sobre recuadros de la im´ agen original,
o sea, se denota como f
x
(y) a la funci´ on evaluada en un sub´arbol del (Quadtree
o estructura)..en particular f
x
(y) = f(xy) con x ∈ Σ

fijo.
→ Input f : Σ

−→ R una APF.
N = 0, i=0,F(q
0
) = f(λ),µ(q
0
) = λ;
while(i ≤ N)
if(∃(c
0
, c
1
, . . . , c
N
) ∈ R
N
tal que f
µ(qi)a
=
N

j=0
c
j
f
µ(qj)
)
L
a
(q
i
, q
j
) = c
j
para todo j ≤ N
else
µ(q
N+1
) = µ(q
i
)a,F(q
N+1
) = f(µ(q
i
)a),L
a
(p
i
, p
N+1
) = 1,N = N + 1
i = i + 1
B´asicamente el algoritmo hace directamente lo que se quiere que haga, nada
raro, fuerza los estados si es necesario y si no es necesario crear uno y se halla
una combinaci´ on lineal, simplemente el peso de las transiciones son el coeficiente
que se forma de la combinaci´ on lineal.
El siguiente teorema nos determina una condici´on necesaria y suficiente para
saber si el algoritmo de inferencia es finito o no. Luego si se puede expresar la
funci´ on dada como un aut´omata.
Proposici´ on 6. Sea f : Σ

−→ R una funci´on
La funci´on puede definirse usando un WFA si y s´olo si el conjunto de funciones
que determinan sus subcuadros ¦f
u
, u ∈ Σ

¦ generan un espacio vectorial de
dimensi´on finita.
Demostraci´on. Si existe A un aut´omata finito ponderado pues hay un conjunto
de estados Q = (q
0
, q
1
, . . . , q
n
)tales que a cada uno se le asocia una funci´ on ϕ
i
.
Entonces, veamos por inducci´on sobre la longitud del subcuadro.
para[w[ = 0, w = λ
f
λ
= f =< I, φ >=
n

i=0
I
i
ϕ
i
luego f es combinaci´ on lineal de las im´ agenes asociadas a los estados del aut´oma-
ta.
Supongo que para f
w
existen c
0
, c
1
, . . . , c
n
reales tales que f
w
=
n

i=0
c
i
ϕ
i
Ahora veamos para f
aw
con a ∈ Σ
10
f
aw
= (f
w
)
a
= (
n

i=0
I
i
ϕ
i
)
a
=
n

i=0
I
i

i
)
a
=
n

i=0
I
i
(
N

j=0
(L
a
)
i,j
ϕ
j
)
Luego ¦f
u
: u ∈ Σ

¦ es un espacio vectorial con dimensi´ on d ≤ n
Bien, ya dado el algoritmo de codificaci´on y las condiciones lo ´ unico que
queda es c´ omo se decodifica.
4.6. Algoritmo Decodificaci´on
→ Input A = (Q, L, I, F) un WFA
ϕ
i
(λ) = F
i
∀q
i
∈ Q
for(i=0;i ≤ n,i++)
para q
u
∈ Q, w ∈ Σ
i−1
, y a ∈ Σ
ϕ
i
(aw) =
n

j=0
(L
a
)
i,j
ϕ
j
(w)
for(w ∈ Σ
n
)
f
A
(w) =< I, φ(w) >
Bien, ahora que se ha definido c´ omo comprimir y c´ omo descomprimir pues s´olo
queda ver si hay alguna forma de optimizar ´esto y la respuesta es que s´ı, adem´as,
el m´etodo m´as r´apido de compresi´on que se conoce hasta hoy es el uso de WFA
y Wavelets.
4.7. Aproximaci´on
En la secci´ on 3 vimos c´ omo comprimir una im´ agen con una funci´ on cuyo
punto fijo se aproximaba a la im´ agen, ac´a funciona similarmente, lo que se
quiere hacer es dotar de alg´ un tipo de medida a las funciones y ver que pasa si
se aproxima el aut´omata que lo genera. Por lo general se les ve a las im´ agenes
como un espacio de Hilbert.
A las im´ agenes de profundidad d, se les dota con un producto interno como
< φ, ψ >
d
=

w∈Σ
d
φ(w)ψ(w)
Luego se define una distancia d(φ, ψ) = [[φ −ψ[[
2
d
y el algoritmo lo que buscar´ıa es aproximar la im´ agen por profundidades.
5. Grupos Autosimilares
En la secci´ on pasada se definiron aut´omatas finitos ponderados, que es una
clase especial de aut´omata, ac´a lo que se har´ a es definir totalmente los aut´omatas
y dar los conceptos b´ asicos para el estudio de los grupos autosimilares que, creo,
es una teor´ıa que se puede acoplar bien a la compresi´on fractal para buscar
formas mejores de comprimir im´ agenes.
11
5.1. Aut´ omatas
Definici´on 15. Un aut´omata es un objeto formado por 5 elementos (Q, Σ, φ, ψ, q
0
)
donde Q es un conjunto finito llamado el conjunto de estados, Σ es el alfabeto
sobre el que el aut´omata se mueve, φ : QΣ −→ Q es la funci´on de transici´ on
entre estados, ψ : QΣ −→ Σ es la funci´on de evaluaci´on y q
0
∈ Q se le llama
estado inicial del aut´omata.
Definici´on 16. Un aut´omata se dice reversible si ∀q ∈ Q ψ(q, x) : Σ −→ Σ es
una biyecci´on. O sea, se puede definir σ
q
como una permutaci´on en Σ
Una cosa que no se dijo antes cuando se dieron las nociones b´ asicas de los
WFA es que los aut´omatas se pueden ver como grafos para trabajar m´as f´acil,
al irse a los libros de referencia se ver´a c´ omo los ejemplos se facilitan much´ısimo
al tratar con los grafos.
a un Aut´omata A = (Q, Σ, φ, ψ, q
0
), le asociaremos un grafo Γ(A) = (Q, E)
donde E = ¦(q, p) ∈ Q
2
: ∃d ∈ Σφ(q, d) = p¦
Cuando se definieron los WFA definimos una forma de caminos con una funci´ on
que iteraba el camino y devolv´ıa un n´ umero, ac´a la idea es la misma s´olo que
queremos una funci´ on que nos de una cadena.
Definici´on 17. Dado un aut´omata A = (Q, Σ, φ, ψ, q
0
) se define un proced-
imiento en D a una funci´on δ : Σ

Q −→ Σ

definida como
δ(w, q) =

ψ(w, q) Si w ∈ Σ
ψ(w
0
, q)δ(w
1
w
2
...w
n
, φ(w
0
, q)) Si w = w
0
w
1
...w
n
∈ Σ

Sea A un aut´omata invertible. Si fijo a δ sobre un estado inicial q
0
δ(q
0
, ◦) : Σ

−→ Σ

ser´a un automorfismo(que es f´acil de ver recordando que
podemos tratar a Σ

) como un ´arbol y hay toda una teor´ıa de autoformismos
sobre ´arboles.
Ahora, definamos lo que es un grupo autom´ atico
Definici´on 18. Sea A un aut´omata invertible, se define G(A) al grupo asociado
al aut´omata A como el grupo de permutaciones de A

generado por los estados
de A. O sea, G(A) = ¸q, q ∈ Q¸
A su vez, es grupo puede verse como el grupo de las permutaciones de Σ
generadas por las relaciones de los estados del aut´omata.
Un ejemplo ser´ıa la m´aquina aditiva que se puede encontrar en ´este enlace[5](que
es otra introducci´on a los grupos autosimilares)
Ahora Definiremos lo que es una acci´on autosimilar para poder definir un grupo
autosimiar.
Definici´on 19. Suponga ¦ϕ
e
¦
e∈E
funciones inyectivas de un conjunto F en
s´ı mismo, que definan un sistema iterado de funciones. Una acci´on de un grupo
G en F se dice autosimilar si ∀e ∈ E, ∀g ∈ G, ∃f ∈ E, ∃h ∈ G tales que
g(ϕ
e
(p)) = ϕ
f
(h(p)) con p ∈ F
12
En particular, usando cadenas
Dado F = X

sobre X alg´ un alfabeto y G actuando sobre F una acci´on de G
sobre F se dice autosimilar si
g(xw) = yh(w) con w ∈ X

Definici´on 20. Un grupo se llama autosimilar si define una acci´on autosimilar
sobre alg´ un conjunto F.
Para ejemplos, ver [5] donde se define el grupo de Grigorchuk.
Ahora lo que queremos ver es c´ omo se complementan.
Si G define una acci´on autosimilar sobre el conjunto X

entonces ´esta acci´on de-
fine un procedimiento de un aut´omata A = (G, X, φ, ψ) donde φ y ψ se definir´ an
de tal forma que g(xw) = ψ(g, x)φ(g, x)(w) que es basicamente la definici´on de
el procedimiento δ (A esos aut´omatas se les llama completos Si δ(g, w) = g(w))
Ahora formalmente se tiene el siguiente teorema
Proposici´ on 7. Una acci´on de un grupo sobre el conjunto X

es autosimilar
si y s´olo si es generada por un aut´omata.
6. A trabajar
Bien, las primeras secciones est´ an fuertemente relacionadas porque todas
tratan de compresi´on, all´ı s´olo se busca introducir un poco la compresi´on fractal
y en la ´ ultima secci´ on se busca introducir muy brevemente a lo que es la teor´ıa
de grupos autosimilares. Todo lo anterior bajo la hip´otesis de que se puede
hacer un puente entre la teor´ıa de grupos autosimilares y la compresi´on fractal
sobretodo en la parte de WFA, hallando nuevas formas de relacionar informaci´on
y tratando de buscar grupos que generen las im´ agenes. La idea es ver hasta donde
se podr´an unir ´estas dos teor´ıas.
Referencias
[1] Adam Drozdek, Elements Of Data Compression. Duquesne University.
Thomson-Learning
[2] Yuval Fisher, Fractal Image Compression
Springer-Verlag
[3] Grigorchuk, Nekrashevych, Bartholdi From Fractal groups to Fractal Sets
[4] Culik, Rosemberg Generalized Weighted Finite Automata Based Compres-
sion
[5] Diego Villamizar http://rinconmatematico.com/foros/index.php?
action=printpage;topic=57266.0
13

Sign up to vote on this title
UsefulNot useful