Professional Documents
Culture Documents
Evolutionary Learning Using Fine-Grain Parallelism For Data Mining
Evolutionary Learning Using Fine-Grain Parallelism For Data Mining
La proposta que realitza aquesta tesi combina idees provinents de l’aprenentatge artifici-
al, la computació evolutiva (concretament de l’aprenentatge artificial evolutiu) i la vida
artificial. L’objectiu que es planteja rau en la creació d’un model de mineria de dades
que satisfaci certes consideracions. La primera consisteix en el fet que aquest model ha
de poder resoldre problemes de mineria amb tot tipus d’atributs. El segon és que aquest
model no estigui especı́ficament dissenyat per un tipus de representació del coneixement
particular. És a dir, que sigui un model unificat capaç de treballar amb diferents repre-
sentacions. Finalment, aquest model ha d’ésser inherentment massivament paral·lel. És
en aquest punt on són útils les aportacions que pot dur a terme la vida artificial.
Resumen
La propuesta que esta tesis realiza combina ideas procedentes del aprendizaje automtico,
la computación evolutiva (concretamente del aprendizaje automtico evolutivo) y la vida
artificial. El objetivo que se plantea recae en la creación de un modelo de minerı́a de
datos que satisfaga ciertas consideraciones. La primera consiste en que el modelo tiene
que resolver problemas de minerı́a con todo tipo de atributos. El segundo es que este
modelo no esté especı́ficamente diseñado para un tipo de representación del conocimiento
particular. Este modelo debe ser un modelo unificado capaz de trabajar con diferentes
representaciones. Finalmente el modelo tiene que ser inherente y masivamente paralelo.
En este punto resultan útiles las aportaciones que puede realizar la vida artificial.
Abstract
This thesis combines different ideas provided by machine learning, evolutionary compu-
tation (genetic based machine learning), and artificial life. The aim of this work is to
create a data mining model that satisfies certain guidelines. The first one deals with the
type of attributes that can be used in the model. The second one focuses on the goal
that the model has to independent of the knowledge representation used. Finally, the
model must exploit massive parallelism. Artificial Life can be very useful dealing with
parallelism models.
Resum
La tesi que aquı́ es presenta s’emmarca dins el camp conegut com a mineria de dades
(o data mining). Concretament, el treball que aquı́ es presenta es centra en el procés
d’extracció de coneixement coneixement de la informació continguda en bases de dades,
concretament per tasques de classificació. En front de les diferents alternatives que exis-
teixen per expressar aquest coneixment, aquesta tesi proposa d’un model de mineria de
dades unificat. És a dir, en lloc de posseir un algorisme especı́fic per cada representació
del coneixement possible, el que es vol obtenir és un model únic que permeti l’extrac-
ció de coneixement emprant diferents representacions sense haver de canviar l’algorisme
que s’utilitza. La proposta passa per una aproximació basada en l’aprenentatge evolu-
tiu. Aquest tipus d’aprenentatge evolutiu perment, amb variacions mı́nimes, treballar
fàcilment amb diferents representacions del coneixement.
La proposta que realitza aqueta tesi busca combinar innovadorament idees provinents
de l’aprenentantge artificial, la computació evolutiva (concretament de l’aprenentatge
artificial evolutiu) i la vida artificial. L’objectiu inicial que es planteja rau en la creació
d’un model de mineria de dades que satisfaci certes consideracions. La primera consisteix
en el fet que ha d’ésser aplicable a tot tipus de problemes de mineria. Això implica la
capacitat de treballar amb tot tipus d’atributs, per exemple numèrics i categòrics entre
d’altres. El segon és que aquest model no estigui especı́ficament dissenyat per un tipus de
representació del coneixement particular. És a dir, tal i com s’ha comentat anteriorment,
que sigui un model unificat capaç de treballar amb diferents representacions. Finalment,
aquest model havia d’ésser inherentment massivament parallel. És en aquest punt on són
útils les aportacions que pot dur a terme la vida artificial. Aquest procés ha de tractar
amb grans volums de dades, essent un procés computacionalment costos. Imposant la
consideració que el model sigui inherentment paral·lel, aquest escull es evitar explotant
directament el paral·lelisme inherent al model.
La tesi tesi es complementa amb l’estudi del comporatament del model proposat.
Per altra banda, el treball realitzat amb aquest model, que s’ha anomenat GALE, també
s’ha avaluat en la resolció de problemes reals de mineria de dades. Aquestes proves,
acompanyades de la metodologia adient i anàlisi estadı́stica pertinent, han permès ava-
luar el comportament de l’aproximació proposada en front dels resultats que obtenen els
algorismes tradicionals proposats per l’aprenentatge artificial.
Índex
Pròleg xi
1 Introducció 1
2 Mineria de Dades 7
2.1 Objectius de la Mineria de Dades . . . . . . . . . . . . . . . . . . . . . 7
2.2 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Tipus de Mineria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.1 Anàlisi d’associacions . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.2 Classificació/Predicció . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.3 Anàlisi d’agrupacions . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 On es situa la tesi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5 Dades: De què es disposa? . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6 Coneixement: Què es vol obtenir? . . . . . . . . . . . . . . . . . . . . 15
2.7 Resum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.8 Notes Bibliogràfiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Aprenentatge Artificial 19
3.1 Tipus d’Aprenentatge Artificial . . . . . . . . . . . . . . . . . . . . . . 19
3.1.1 Natura de l’entorn . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.2 Relació amb l’entorn . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.3 Representació del coneixement i algorismes associats . . . . . . 21
3.2 Aprenentatge Artificial i Mineria de Dades . . . . . . . . . . . . . . . . 22
xiv Índex
4 Computació Evolutiva 51
4.1 Taxonomia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.1 Algorismes Genètics . . . . . . . . . . . . . . . . . . . . . . . . 52
4.1.2 Programació Genètica . . . . . . . . . . . . . . . . . . . . . . . 52
4.1.3 Estratègies Evolutives . . . . . . . . . . . . . . . . . . . . . . . 53
4.1.4 Programació Evolutiva . . . . . . . . . . . . . . . . . . . . . . 53
4.2 Orı́gens dels Algorismes Genètics . . . . . . . . . . . . . . . . . . . . . 53
4.3 Model d’un Algorisme Genètic . . . . . . . . . . . . . . . . . . . . . . 54
4.4 Fases d’un Algorisme Genètic . . . . . . . . . . . . . . . . . . . . . . . 56
4.5 Aprenentatge Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.6 Enfocament de Pittsburgh . . . . . . . . . . . . . . . . . . . . . . . . 58
4.6.1 Representació . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.6.2 Avaluació . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.6.3 Operadors genètics . . . . . . . . . . . . . . . . . . . . . . . . 60
xv
4.6.4 GABIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.6.5 GIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.6.6 Altres sistemes . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.7 Enfocament de Michigan . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.7.1 Model general . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.7.2 Problemàtica del model . . . . . . . . . . . . . . . . . . . . . . 77
4.7.3 SCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.7.4 XCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.7.5 Altres sistemes . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.8 Resum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.9 Notes Bibliogràfiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5 Vida Artificial 91
5.1 Autòmats Cel·lulars . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.1.1 The Kinemàtic Beast . . . . . . . . . . . . . . . . . . . . . . . 92
5.1.2 El primer Autòmat Cel·lular . . . . . . . . . . . . . . . . . . . . 94
5.1.3 El Joc de la Vida . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.1.4 Els Autòmats de Wolfram . . . . . . . . . . . . . . . . . . . . . 96
5.1.5 Altres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.1.6 Recopilatori . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.2 Algorismes Evolutius . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
5.2.1 La formiga d’UCLA . . . . . . . . . . . . . . . . . . . . . . . . 100
5.2.2 Sistemes Classificadors . . . . . . . . . . . . . . . . . . . . . . 101
5.2.3 El món d’Echo . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2.4 Programació Genètica . . . . . . . . . . . . . . . . . . . . . . . 103
5.2.5 Efecte Baldwin . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.3 Ecologies Artificials . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.3.1 L-System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.3.2 Tierra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.3.3 AL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.3.4 Jocs de guerra . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
xvi Índex
Agraı̈ments 293
Bibliografia 295
3.2 Probabilitats d’aparició dels valors dels atributs pel problema del temps
nominalitzat de la taula 3.1 . . . . . . . . . . . . . . . . . . . . . . . . 43
8.1 Atributs extrets del processat de les imatges de les biòpsies de càncer de
mama presents a [Vos, 1996, Martı́nez et al., 1996]. . . . . . . . . . . 229
8.6 Resultats dels t-tests aparellats d’una cua: el valor indica quants cops el
mètode de la fila millora significativament el mètode a la columna. La
taula mostra els resultats emprant nc=0.05 i nc=0.01. . . . . . . . . . 256
xx Índex de taules
6.19 Estructura del genoma dels individus que codifiquen conjunts de regles . 145
6.26 Exemple de cooperació entre tres testos (δ1, δ2 i δ3) per definir diferents
regions de classificació . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
6.29 Estructura del genoma dels individus que codifiquen conjunts d’instàncies
totalment definides . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6.31 Estructura del genoma dels individus que codifiquen conjunts d’instàncies
parcialment definides . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
7.17 Evolució del tauler, amb l’histograma associat, pel problema HTF, ℓ = 4,
amb concatenació múltiple per m = 2 . . . . . . . . . . . . . . . . . . 207
7.18 Evolució del tauler, amb l’histograma del genoma associat, pel problema
HTF, ℓ = 4, amb concatenació múltiple per m = 4 . . . . . . . . . . . 208
7.19 Evolució del l’histograma del genoma pel problema HTF amb concate-
nació múltiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
7.20 Comparació de A(t), aixı́ com la diversitat resultant, pel problema HTF
amb concatenació múltiple de ℓ = 5. Codi de colors: A(t) vermell i la
diversitats blava. El resultats del GALE es marquen amb punts, els del
TGA2 amb triangles, i els del TGA8 amb quadrats. . . . . . . . . . . 213
7.21 Detall de la diversitat resultant de la figura 7.20 pel problema HTF amb
concatenació múltiple. Codi de colors: GALE(vermell), TGA2(blau) i
TGA8(verd). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Introducció
La tesi que aquı́ es presenta s’emmarca dins el camp conegut com a mineria de dades
(o data mining). Aquest camp sorgeix, entre d’altres, de la intersecció de tres disciplines
diferents: (1) les bases de dades, (2) l’estadı́stica i (3) l’aprenentatge artificial. Degut als
diferents camps que intervenen en la seva creació, alguns autors defineixen la mineria de
dades [Weiss and Indurkhya, 1998] com a “la cerca d’informació valuosa en grans volums
de dades”. D’altres ho fan dient que és “l’extracció d’informació implı́cita, prèviament
no coneguda, i potencialment útil, de les dades” [Han and Kamber, 2001]. O senzilla-
ment és definida com “l’extracció de coneixement a partir de volums de dades elevats”
[Witten and Frank, 2000]. D’aquestes definicions es pot extreure dues premisses que
descriuen el caràcter de la mineria de dades. El primer és l’extracció de coneixement,
és a dir, és vol obtenir (extreure o inferir) una descripció compacta, o intensional, del
conjunt de dades. El segon rau en l’elevat volum propi de les dades a tractar (mida de
la base de dades).
El camp de la mineria de dades és extens. Per aquest motiu, existeixen diferents
aproximacions dins la mineria centrats en la resolució de problemàtiques particulars. Per
exemple, un punt important del procés de mineria és el preprocessat que es realitza de les
dades. Normalment, no es poden utilitzar directament i necessiten un tractament previ.
Aquest preprocés també pot incloure tractaments especı́fics de les dades cara a facilitar el
procés d’extracció del possible coneixement que en elles es conté. Però un cop es disposa
de les dades adientment tractades, la mineria es centra en el procés d’obtenció, o sı́ntesi,
del coneixement que es troba representat per extensió en les dades del problema a tractar.
Posteriorment, altres àrees de la mineria es centren en el tractament, interpretació, o
possible utilització d’aquest coneixement obtingut.
La tesi que aquı́ es presenta es centra en el procés d’extracció d’aquest coneixement.
Existeixen diferents tipus d’extracció en funció del tipus de coneixement que es vol
obtenir. A grans trets, es pot dir que existeixen tres grans tipus de mineria depenent del
2 Introducció
tipus de coneixement que es vol obtenir d’una base de dades particular. Aquests tres
tipus es poden resumir com:
1. Anàlisi d’associacions
2. Classificació o predicció
evolutiu) i la vida artificial. L’objectiu inicial que es planteja rau en la creació d’un
model de mineria de dades que satisfaci certes consideracions. La primera consisteix
en el fet que ha d’ésser aplicable a tot tipus de problemes de mineria. Això implica la
capacitat de treballar amb tot tipus d’atributs, per exemple numèrics i categòrics entre
d’altres. El segon és que aquest model no estigui especı́ficament dissenyat per un tipus
de representació del coneixement particular. És a dir, tal i com s’ha comentat ante-
riorment, que sigui un model unificat capaç de treballar amb diferents representacions.
Finalment, aquest model ha d’ésser inherentment massivament paral·lel. És en aquest
punt on són útils les aportacions que pot dur a terme la vida artificial. Tal i com es
comentà, aquest procés ha de tractar amb grans volums de dades. Conseqüentment,
el procés resultat esdevé computacionalment costos. Imposant la consideració que el
model sigui inherentment paral·lel, permetria superar aquest escull fàcilment, ja que es
podria explotar directament el paral·lelisme inherent al model.
La tesi no ha parat amb la definició d’aquest model, el qual s’ha anomenat GALE.
Aquesta ha continuat introduint les principals representacions del coneixement emprades
en processos de mineria aplicats a tasques de classificació com són, entre d’altres, les
basades en regles, instàncies o arbres de decisió. A continuació, la tasca realitzada
s’ha diversificat en dues lı́nies d’actuació diferents. La primera és centra en l’estudi del
comportament del model, aixı́ com l’impacte que en aquest tenen els paràmetres que
el controlen. Per altra banda, i tenint present els resultats que s’obtenen de l’estudi
i anàlisi del comportament del model, s’ha emprat el GALE per resoldre problemes
reals de mineria de dades. Aquestes proves, acompanyades de la metodologia adient
i l’anàlisi estadı́stica pertinent, han permès avaluar el comportament de l’aproximació
proposada en front dels resultats que obtenen els algorismes tradicionals proposats per
l’aprenentatge artificial.
Per concloure aquest primer capı́tol introductori tot seguit es comentarà com s’es-
tructura aquest document. Aquesta memòria esta formada per nou capı́tols, inclòs
aquest primer introductori, i un annex format per dos capı́tols. El capı́tol 2 (pg. 7)
descriu el marc general en el qual es mou la tesi que aquı́ es presenta. Concretament
aquest capı́tol descriu breument què s’entén per mineria de dades, junt amb algunes
de les principals tipologies d’aquest tipus de problemes. Tot això permet afitar i definir
clarament els requeriments dins els quals es mou aquesta tesi.
Els tres capı́tols següents repassen el material sobre el qual es recolza aquesta tesi.
El primer d’aquestes capı́tols, el 3 (pg. 19), repassa com els problemes de mineries
de dades objectiu d’aquesta tesi es poden resoldre emprant tècniques d’aprenentatge
artificial. Aquest capı́tol para una especial atenció a la representació del coneixement
que s’utilitza per resoldre problemes de classificació, aixı́ com alguns dels algorisme
especı́fics per la seva obtenció a partir d’un conjunt d’instàncies.
El segon d’aquests tres capı́tols dedicats al repàs del material sobre el qual es recolza
aquesta tesi és el capı́tol 4 (pg. 51). Aquest capı́tol es centre en el camp de la com-
putació evolutiva. Lluny de voler fer un repàs exhaustiu, aquest capı́tol presenta alguns
dels principals paradigmes que es poden trobar dins aquesta disciplina, proporcionant les
referències necessàries per poder aprofundir allà on es vulgui. Aquest capı́tol es centra
4 Introducció
per la realització de les proves, per passar tot seguit a presentar els resultats obtinguts
agrupats en funció de les diferents representacions que pot evolucionar el GALE. El
capı́tol conclou amb l’anàlisi estadı́stic dels resultats obtinguts de les proves exhaustives
realitzades emprant els diferents conjunts de dades i algorismes disponibles.
L’últim dels capı́tols que forma aquest document, és el 9 (pg. 277), el qual recull les
conclusions que es poden treure d’aquest tesi. Concretament es fa un repàs dels princi-
pals punts que es poden ressaltar del treball realitzat. Aquest capı́tol es complementa
amb l’exposició de les principals lı́nies de recerca futura que s’obren gràcies a la feina
realitzada en aquesta tesi. Aquest document es complementa amb un annex format
per dos capı́tols breus que recullen monogràfics especı́fics. Concretament l’apèndix A
(pg. 283) recull les consideracions necessàries per la implementació del mapping pira-
midal. Per la seva banda, l’apèndix B (pg. 289) presenta el resum, en pseudocodi, de
l’algorisme que implementa el model de mineria proposat pel GALE.
6 Introducció
CAPÍTOL 2
Mineria de Dades
Mineria de dades (Data Mining) és el nom que es dona al camp sorgit de la
intersecció de tres disciplines diferents: (1) les bases de dades, (2) l’estadı́stica i (3)
l’aprenentatge artificial. Aquest capı́tol descriu el que s’enten per mineria de dades, és
a dir, els seus objectius i les diferents formes en que es presenta. També es descriu en
quina part de la mineria de dades s’enmarca la tesi que aquı́ es presenta. El capı́tol
conclou amb la descripció d’alguns conceptes bàsics que s’empraran d’ara en endavant.
Alguns autors defineixen la mineria de dades [Weiss and Indurkhya, 1998] com a “la
cerca d’informació valuosa en grans volums de dades”. D’altres ho fan dient que és
“l’extracció d’informació implı́cita, prèviament no coneguda i potencialment útil, de
les dades” [Han and Kamber, 2001]. O senzillament és definida com “l’extracció de
coneixement a partir de volums de dades elevats” [Witten and Frank, 2000]. D’aquestes
definicions se’n pot extreure dues premisses que descriuen el caràcter de la mineria de
dades. El primer és l’extracció de coneixement, és a dir, és vol obtenir (extreure o inferir)
una descripció compacta del conjunt de dades. El segon rau en el volum propi de les
dades a tractar (mida de la base de dades).
Les bases de dades juguen un paper important en la mineria de dades. Gràcies a la
seva constant evolució es pot emmagatzemar i recuperar gran volums d’informació de
forma eficient (sistemes transaccionals) [Date, 1994, Garcia-Molina et al., 2000]. Dins
d’aquesta cerca per l’eficiència, les bases de dades han tendit a crear sistemes basats
en l’explotació de sistemes paral·lels i distribuı̈ts [Özsu and Valduriez, 1999]. També
8 Mineria de Dades
2.2 Metodologia
A grans trets el procés d’extreure coneixement d’una base de dades (Knowledge Disco-
very in Databases) es pot esquematitzar com un procés iteratiu composat per set etapes
diferents [Han and Kamber, 2001].
En totes aquestes etapes existeix una re-alimentació provinent de les etapes posteri-
ors. Un possible exemple és la selecció de les dades que s’han d’emprar. A vegades, un
cop s’ha completat les tasques de mineria, s’aprecia que certa informació, que inicial-
ment es considerava útil, no ho ha estat realment. Per tant, es pot tornar a realitzar la
selecció descartant aquesta informació, podem aixı́ millorar el rendiment de l’etapa de
mineria.
2.3 Tipus de Mineria 9
Com es pot apreciar, abans de poder realitzar tasques de mineria sobre un conjunt
de dades, aquestes han de ser tractades adientment. Aquest tractament sol passar per
desnormalitzar la informació continguda en bases de dades relacionals. Sols ser habitual
no empar formes normals [Parsaye et al., 1989] en el moment de realitzar la mineria de
dades, ja que en certs casos en facilita la seva manipulació. Com es veurà més endavant
en aquest capı́tol, les dades s’han de presentar d’una forma que sigui intel·ligible per
l’algorisme de mineria de dades. De la mateixa manera, un cop realitzada la mineria,
el coneixement obtingut ha de ser adientment interpretat. Malgrat el tractament previ
a les mineria, aixı́ com la posterior interpretació del resultat, són importants no són
l’objectiu d’aquesta tesi. Això sı́, és important tenir present la seva existència cara a les
tasques de mineria, ja que en poden condicionar el seu rendiment.
La mineria de dades emprant aprenentatge artificial es pot classificar en funció del tipus
de coneixement que es capaç d’inferir. És a dir, donat un conjunt de dades, la mineria
es pot classificar en funció del què s’apren. A grans trets, es pot dir que existeixen
tres grans tipus de mineria depenent de l’objectiu que cerquen obtenir al resoldre un
problema. Aquests tres tipus es poden resumir com:
1. Anàlisi d’associacions
2. Classificació o predicció
Tal i com s’ha comentat anteriorment, l’anàlisi d’associacions busca inferir regles que
mostrin condicions, emprant els valors presents a les dades, que succeeixen freqüentment.
Més formalment, una regla d’associació és aquella que presenta la forma X ⇒ Y, és a dir
“A1 ∧ · · · ∧ Am → B1 ∧ · · · ∧ Bn”, on Ai (per i ∈ {1, . . . , m}) i Bj (per j ∈ {1, . . . , n})
són condicions sobre els atributs. Aquestes condicions poden contenir, per exemple,
operadors relacionals (<, ≤, =, >, ≥) tal i com es mostra a l’exemple següent.
Exemple 1 Suposem que disposem del conjunt de dades descrites a la taula 2.1. D’a-
questes dades se’n poden extreure les següents regles d’associació:
Com es pot apreciar a l’exemple anterior, les regles d’associació poden presentar
parelles atribut-valor a ambdós bandes de la regla. No obstant, no existeix cap mena de
restricció en el moment d’obtenir relacions emprant el conjunt de dades que es tracta.
Aquest fet es pot apreciar a l’exemple anterior, on l’atribut edat apareix indistintament
tant a l’antecedent com al conseqüent de la regla d’associació.
2.3.2 Classificació/Predicció
El segon tipus de mineria de dades és en el qual s’emmarca aquesta tesi. Aquest tipus
de mineria busca l’obtenció d’un model que descrigui el conjunt de dades tractades. En
2.3 Tipus de Mineria 11
aquests punt es important diferenciar el que alguns autors anomenen classificació i el que
entenen per predicció [Han and Kamber, 2001]. Solen reservar el terme classificació per
l’obtenció de models per valors objectius categòrics. Per contra, parlen de predicció quan
els valors objectius són valors numèrics continus. Altres autors [Koza, 1992] empren el
terme regressió simbòlica pels problemes de predicció esmentats.
Aquest tipus de mineria es sol dividir en dues etapes. En la primera, es prenen
les dades disponibles i s’utilitzen per la construcció del model. Dins de l’aprenentatge
artificial és coneix aquesta etapa com a fase d’entrenament. Posteriorment, un cop s’ha
obtingut aquest model, es pot interpretar (anàlisi del coneixement generat) o fer servir
per classificar/predir nous exemples no vistos anteriorment (o també conegut com a
etapa de test). Tot seguit posarem un parell d’exemples il·lustratius, un d’un problema
de classificació i un altre d’un problema de predicció/regressió simbòlica.
A diferència de l’anàlisi d’associacions, no existeix una única forma de representar el
coneixement que es pot extreure d’un problema de classificació. Tal i com es presentarà
en el capı́tol següent, l’aprenentatge artificial ha generat una profusa varietat de formes
de representació del coneixement. Alguns exemples són les regles , els arbres de decisió
, o les basades en instàncies , entre d’altres.
Exemple 2 Emprant les dades presentades a la taula 2.1 (pg. 10), i suposant que
s’utilitza una representació basada en regles, un possible exemple de classificació seria
l’obtenció d’un model que descrigui quan es pot jugar (play=yes), i quan no (play=no).
És a dir, es busca obtenir una representació de la informació descrita per l’atribut play
que permeti descriure les dues categories representades: yes o no. Alguns exemples de
regles de classificació podrien ser:
De l’exemple anterior se’n poden extreure algunes diferències clares amb les presen-
tades per l’anàlisi d’associacions. Si es formalitza la definició de les regles de l’exemple
anterior s’obté que X ⇒ Y ′ , on “A1 ∧ · · · ∧ Am → C”, essent Ai (per i ∈ {1, . . . , m})
condicions sobre els atributs i C un categoria de l’atribut classe que s’analitza. Per tant,
la diferència més destacada és el fet que en el conseqüent no pot aparèixer qualsevol test,
sinó que es restringeix sols a valors categòrics de l’atribut emprant per la classificació.
Els processos per obtenir aquest tipus de coneixement emprant tècniques d’aprenentatge
artificial, serà tractat amb detall en el capı́tol 3.
A partir d’aquest punt és important fer un incı́s abans de presentar l’exemple de
predicció. El fet és que d’ara endavant s’emprarà el terme regressió simbòlica, enlloc
de predicció. Aquest terme es reservarà pel procés de classificació que es realitza, amb
12 Mineria de Dades
un coneixement prèviament extret, en la fase de test. Dit d’una altra forma, d’ara
endavant, un cop es disposi d’un coneixement que descriu un conjunt de dades, donat
un nou conjunt de dades que descriu el mateix problema, s’entendrà com a predicció al
fet de classificar les noves dades, ja que s’està predient la mateixa. Aquesta capacitat
de la mineria, basada en l’aprenentatge artificial, també es coneix com a capacitat de
generalització del sistema. Fetes aquestes puntualitzacions, tot seguit ja es passarà a
presentar un exemple de regressió simbòlica.
Exemple 3 Donades, un cop més, les dades presentades a la taula 2.1 (pg. 10), un
possible exemple de problema de regressió simbòlica podria ser l’obtenció d’un model
que descrigui l’atribut temperature. Per dur-ho a terme es disposa de la resta d’atributs
existents en el problema. Un possible exemple podria ser:
L’últim tipus de mineria de dades que s’esmentarà és el que es dedica a l’anàlisi d’agru-
pacions. L’anàlisi d’agrupacions és el procés d’agrupar les dades en classes. A diferència
de la classificació, en aquest tipus de mineria no existeix un atribut categòric el qual
explicita el conjunt de classes disponibles o existents. Per tant, les dades s’han d’agrupar
en classes de tal forma que els objectes continguts en una agrupació (cluster) posseeixin
una similitud elevada, quan aquesta es compara amb objectes pertanyents a una altra
agrupació.
A2 A2 A2
A1 A1 A1
(a) Dues agrupacions (b) Tres agrupacions (c) Dues agrupacions
mostra la figura 2.1. Per tant, les dades d’aquest conjunt es poden pintar damunt
d’aquest pla (punts). L’anàlisi d’agrupacions busca identificar grups de dades amb
caracterı́stiques comuns. La figura 2.1 presenta tres possibles agrupacions (a, b i c)
sorgides de tres criteris diferents d’anàlisi.
L’anàlisi d’agrupacions conté una gran nombre d’aproximacions diferents per resoldre
el problema esmentat. Referim al lector interessant en aprofundir en aquest tema a la
secció 2.8, ja que tot seguit sols s’esmentarà les principals propostes existents, donant-ne
una breu descripció dels conceptes en els quals es basen.
Tal i com s’ha vingut esmentant, existeixen diferents tipus de mineria de dades. La
tesi que aquı́ es presenta, s’emmarca dins de la mineria de dades emprant aprenen-
tatge artificial, restringint-ne l’abast a problemes de classificació. Per tant, l’objectiu
final serà l’extracció de coneixement, a partir d’un conjunt de dades, que en permeti:
(1) proporcinar-ne un model que les descrigui i (2) permetre la classificació (futures
prediccions) de noves dades, no vistes prèviament, emprant el coneixement adquirit.
Per fer-ho, aquesta tesi explora quines aportacions poden fer la vida artificial i la
computació evolutiva al camp de la mineria de dades. Concretament, es proposa un
model genèric de mineria per problemes de classificació, independent del coneixement
14 Mineria de Dades
Les dades són la matèria primera de la mineria. Per aquest motiu és important definir
de què es disposarà en el moment de realitzar-ne el seu anàlisi. Tal i com s’ha esmen-
tat anteriorment, el tipus de mineria en el qual s’emmarca aquest treball es centra en
problemes de classificació. Concretament, serà imprescindible que les dades de que es
disposi descriguin tres elements importants: (1) concepte, (2) instància i (3) atributs.
A continuació descriurem que s’entendrà per cadascun d’ells d’ara endavant, deixant la
seva formalització per més endavant. Aquesta precisió és determinant, ja que en fun-
ció del tipus de mineria de dades que s’estigui tractant, diferent de la classificació, les
definicions posterior podrien substancialment.
Concepte Anomenarem concepte a l’objectiu de la mineria, és a dir, a allò que s’ha d’aprendre
a classificar. Lluny de definicions filosòfiques, el concepte és aquella categorització que
s’ha d’aprendre a realitzar automàticament. Retornant a l’exemple del temps, presentat
a la taula 2.1 (pg. 10), el concepte a aprendre és ‘play?’. El que es vol es saber classificar
automàticament, categoritzar, quan es podrà sortir a jugar en funció de les condicions
de temps. Un altre punt important a tenir en compte en la definició de concepte és que
aquesta ve referida sobre un conjunt finit de classes o categories. En l’exemple esmentat,
aquestes en serien dues: (1) yes i (2) no.
Instància Un altre terme important quan es parla de mineria de dades és el d’instància. Si el
concepte era allò que es volia aprendre, la instància en serà una particularització. Dit
d’una altra forma, una instància serà un exemple del concepte tractat. Per altra banda,
les dades que s’han d’analitzar emprant la mineria de dades, no seran res més que un
conjunt d’instàncies. En l’exemple del temps de la taula 2.1 (pg. 10), es presenten
catorze instàncies del concepte play, de les quals 9 són exemples de la categoria yes, i 4
de la categoria no.
Atribut L’atribut és l’últim element que jugarà un paper important en la definició de les
dades que s’empraran per la mineria. Les diferents instàncies, que serviran d’entrada
al procés de mineria basat amb aprenentatge artificial, venen caracteritzades per valors
que pertanyen a un conjunt finit de caracterı́stiques, o tal i com les anomenarem aquı́,
instàncies. Outlook, temperature, humidity, windy i play, són els atributs que defineixen
les instàncies del problema del temps de la taula 2.1 (pg. 10).
És important fer algunes apreciacions en aquest punt. Existeix un únic atribut (play)
2.6 Coneixement: Què es vol obtenir? 15
que descriu la categorització del concepte objectiu. D’atributs concepte sols en pot
existir un en el conjunt de dades a analitzar, el del concepte a aprendre, en aquest cas
play, tal i com s’ha comentat a l’apartat 2.3.2 (pg. 10). Per altra banda, aquest atribut
sols pot ser un atribut categòric (col·lecció finita de classes o etiquetes), ja que l’objectiu
d’aquesta tesi és la mineria de dades per problemes de classificació. La resta d’atributs
seran els que s’empraran en el model que descriurà el concepte a aprendre. Aquest
atributs poden ser de diferents tipus, per exemple numèrics (temperature o humidity),
categòrics (outlook), o booleans (windy) entre d’altres.
La varietat d’atributs emprats en la definició de les dades és equiparable a la va-
rietat d’atributs (camps) presents en les bases de dades relacionals que les contenen
[Date, 1994, Garcia-Molina et al., 2000]. Aquest punt també és interessant, ja que fins
ara s’ha estat presentant les dades a analitzar en forma d’una única taula. A la realitat,
això no té per què succeir. Les dades que conformen una instància poden trobar-se
escampades en diferents taules de la base de dades relacional que les conté. Això no és
problema, ja que tota la informació que descriu la instància pot ser ràpidament formada
fent servir motors relacionals eficients (podent arribar a explotar conceptes de compu-
tació paral·lela i distribuı̈da) [Özsu and Valduriez, 1999]. Un escull que si que s’haurà
de tenir en compte en el procés de mineria, i que no tindrà una solució universal, serà la
presència de valors desconeguts en les instàncies. Tal i com es tractarà més endavant,
existiran problemes de mineria en els qual les instàncies podran presentar atributs sense
un valor real, ja per desconeixement del mateix o per inaplicabilitat al cas en qüestió
(per exemple, no tothom te cotxe). Aquesta problemàtica és anàloga a la que generà
l’aparició del valor NULL a les bases de dades relacionals [Garcia-Molina et al., 2000].
Anteriorment s’ha parlat de concepte com aquella categorització que s’ha d’aprendre
a realitzar automàticament. Aquest fet es pot veure, també, com al descobriment
de patrons estructurals en les dades [Witten and Frank, 2000, Han and Kamber, 2001].
Quan es parli de coneixement (o representació del coneixement), es farà referència a
com aquest patrons, o conceptes, poden ser expressats. Per tant, quan es parli de
coneixement es parlarà d’estructures de dades que recullin aquestes regularitats que
apareixen en els patrons que s’han identificat.
Hi ha un gran nombre de formes de representar el coneixement que es pot extreure
d’un procés de mineria de dades emprant aprenentatge artificial. Moltes d’elles depenen
alhora del tipus de mineria que s’estigui duent a terme. En el capı́tol 3, es descriuran
amb més deteniment, malgrat això, tot seguit es descriuran breument algunes de les
principals formes de representar el coneixement que apareixeran de forma reiterativa al
llarg d’aquesta tesi. Aquesta descripció es centrarà només en aquelles representacions
que s’adecuen a problemes de classificació, i no pretén ser exhaustiva, ja que el que es
busca es il·lustrar idees que es definiran més endavant.
16 Mineria de Dades
Taules de de- La primera representació que es comentarà són les taules de decisió. Aquestes presen-
cisió ten la mateixa representació que les dades d’entrada. És a dir, una taula amb atributs,
on el irrellevants han estat eliminats,i les instàncies han estat adientment condensades.
La seva utilització és senzilla, consisteix en buscar a la taula aquella instància condensada
que descriu l’exemple que es vol resoldre, associant-li la classe pertanyent a l’instància
condensada.
Arbres de de- Una altra forma més elaborada de representar el coneixement són els arbres de decisió.
cisió Existeixen gran varietat d’arbres de decisió, ja sigui en funció del tipus d’atributs que
poden tractar [Quinlan, 1986, Quinlan, 1993], o bé de si serveixen per altres tipus de
mineria que no sigui la classificació [Michalski et al., 1998]. Malgrat això, els nodes dels
arbres de decisió solen representar testos sobre algun atribut en particular, per exemple
comprovar si un valor d’un atribut, per una instància donada, és més gran o més petit
que una certa constant. Per contra. Malgrat això els nodes d’alguns arbres poden
presentar tests sobre més d’un atribut. Per contra, les fulles de l’arbre representa la
classe associada (o una distribució de probabilitats, etc.) a totes les instàncies que són
descrites pel camı́ fet per arribar a elles.
Regles de Les regles de classificació descriuen les dades emprant un conjunt de regles. En
classificació aquest cas també existeixen una gran varietat de formes i lògiques per descriure regles
de classificació, també en part lligades al problema a resoldre [Michalski et al., 1998].
Generalment, aquestes solen presentar la forma X ⇒ Y, on X és el que s’anomena
l’antecedent i Y és una classe del concepte a aprendre. Un exemple d’aquest tipus de
regles són les presentades a l’apartat 2.3.2 (pg. 10), en les quals l’antecedent venia
descrit únicament per la conjunció de testos sobre el valor dels atributs del problema
de classificació. Sols per esmentar-ho, aquestes regles poden posseir, o no, excepcions
associades.
Basades en L’últim tipus de representació que s’esmentarà aquı́ són les basades en instàncies.
instàncies Enlloc de construir estructures de dades que recullin els patrons, existeix una altra apro-
ximació a l’aprenentatge que rau en l’ús dels exemples pròpiament dits. El que es busca
és memoritzar aquelles instàncies representatives per la categorització del concepte. El
model pròpiament, serà aquell conjunt d’instàncies que representi eficientment la classi-
ficació. L’objectiu és poder recuperar (o recordar) aquella instància que millor concordi
amb el nou cas que s’està classificant.
2.7 Resum
En aquest capı́tol s’ha descrit el marc general en el qual s’inscriu aquesta tesi, és a dir,
la mineria de dades emprant aprenentatge artificial. Amb aquest fi s’han revisat els
principals objectius de la mineria de dades, que s’han resumit dient que és “l’extracció
de coneixement a partir de volums de dades elevats”. Tot seguit, s’ha passat a revisar
breument la metodologia que es segueix per l’extracció de coneixement en bases de
dades, identificant-ne les set principals etapes a tenir en compte.
2.8 Notes Bibliogràfiques 17
Dins la descripció d’aquest marc també era important revisar els tipus de mineria
de dades existents. Això es degut a que els tres principals tipus de mineria (l’anàlisi
d’associacions, la classificació/predicció i l’anàlisi d’agrupacions) difereixen en el tipus
de coneixement que es vol extreure. Per aclarir les diferències entre ells s’han presentat
alguns exemples il·lustratius dels tipus de mineria presentats.
L’últim tram de d’aquest capı́tol s’ha centrat en la presentació informal de les entra-
des (dades a analitzar) i la sortida (coneixement obtingut) del processos de mineria de
dades dedicats a la classificació automàtica. Independentment de la tècnica emprada,
aquest tipus de mineria de dades comparteix la forma d’acceptar les dades d’entrada
(una relació, possiblement recuperada d’una base de dades). No obstant, el coneixe-
ment que se n’extreu depèn de la representació que se n’estigui emprant (taules o arbres
de decisió, regles de classificació, conjunts d’instàncies, etc.).
Per concloure aquest capı́tol dedicat a la mineria de dades, tot seguit es repassarà la
bibliografia rellevant als temes tractats. Concretament, es presentarà el principals textos
il·lustratius que es poden emprar per aprofundir en les temàtiques presentades. Aquesta
bibliografia es pot separar en tres blocs principals: (1) bases de dades, (2) primeres
aproximacions a la unió de les bases de dades amb els sistemes basats en el coneixement
i finalment (3) mineria de dades pròpiament dita.
Un text que recull els fonaments bàsics de les bases de dades es pot trobar al
llibre “An introduction to Database Systems” [Date, 1994]. Aquest llibre presenta els
principals conceptes emprats en bases de dades relacions. Per contra “Database System
Implementations” [Garcia-Molina et al., 2000] recull un ampli aprofundiment, no sols
en conceptes de bases de dades, sinó també amb la seva pertinent implementació. Per
contra el llibre “Principles of Distributed Database Systems” [Özsu and Valduriez, 1999]
fa un pas més enllà. Fixa els fonaments i consideracions necessàries a tenir en compte
quan les bases de dades relacionals s’empren en entorns de computació distribuı̈da.
Conseqüentment presenta diferents tècniques buscant millorar l’eficàcia i l’eficiència de
les bases de dades relacionals paral·lelizant-ne el manegament de la informació que
manipulen. Un altre aspecte interessant en el camp de les bases de dades es la seva
aplicació per la creació de magatzems de dades. Un exemple d’aquesta utilització és el
llibre que porta per tı́tol “Data Warehousing in the Real World: a practical guide for
building Decision Support Systems” [Anahory and Murray, 1997]. Concretament fa un
repàs dels principals conceptes emprats en els magatzems de dades, com són els data
cubes i els data marts.
Abans de l’aparició de la disciplina, que posteriorment s’anomenà mineria de da-
des, aparegueren treballs que apuntaren cap a la seva creació. Concretament, aquests
treballs començaren a estudiar les possibilitats que oferia la unió de les bases de da-
des amb els sistemes basats en el coneixement. Un exemple il·lustratiu són els dos
18 Mineria de Dades
volums que porten per tı́tol “Principles of Databases and Knowlege-based Systems”
[Ullman, 1988, Ullman, 1989]. El primer volum (“Classical Database Systems”) fa un
repàs a les bases de dades, aixı́ com les seves caracterı́stiques i implementacions. Per
contra, el segon volum (“The New Technologies”) explora com les bases de dades po-
den ser emprades per la creació de sistemes basats en el coneixement. Dins d’aquesta
lı́nia també es pot destacar el llibre que porta per tı́tol “Intelligent Databases: Object-
Oriented, Deductive, Hypermedia technologies” [Parsaye et al., 1989]. El qual és un
compendi de com tècniques procedents de la intel·ligència artificial i la representació del
coneixement permeten convertir les bases de dades en sistemes gestors del coneixement.
Aquest llibre també recull aplicacions incipients en el camp de l’hipermèdia.
Dins ja de l’àmbit de la mineria de dades, es voldrien destacar quatre llibres que
perfilen el camp de la mineria de dades. Un text bàsic és el que porta per tı́tol “Da-
ta Mining: practical machine learning tools and techniques with java implementati-
ons” [Witten and Frank, 2000]. Aquest llibre fa una revisió dels objectius de la mineria
de dades, incloent els diferents tipus que s’hi poden trobar. També recull mesures
per avaluar l’eficiència de la mineria de dades, aixı́ com la descripció i implementació
de les principals tècniques d’aprenentatge artificial que es poden aplicar a la mineria.
Un text molt complert és el que porta per tı́tol “Data Minig: Concepts and Techni-
ques” [Han and Kamber, 2001]. Fa una revisió de la mineria, tant des de la perspectiva
de les bases de dades, com des de l’aplicació de tècniques d’aprenentatge artificial.
També inclou temes interessants con el processat previ de les dades, arquitectures per
la mineria o aplicacions varies. Per contra “Predictive Data Minig: a practical guide”
[Weiss and Indurkhya, 1998] presenta la mineria de dades sota un punt de vista marca-
dament estadı́stic. Això no exclou que sigui d’utilitat per la revisió de temes importants
per la mineria com: mètriques per avaluar l’eficiència de la mineria, la reducció de da-
des, o com aquestes poden ser tractades per facilitar la mineria. L’últim dels textos
de mineria que es comenten aquı́, és “Machine Learning and Data Mining: methods
and applications” [Michalski et al., 1998]. Aquest llibre tracta mètodes d’aprenentatge
artificial i la seva aplicació a problemes de mineria puntuals. Alguns exemples dels pro-
blemes que es tracten passant per l’enginyeria (computació d’elements finits, planificació
de producció, etc.), la detecció de patrons en text, imatge i música, o bé la medicina i
biologia.
CAPÍTOL 3
Aprenentatge Artificial
Tal i com s’ha esmentat en la introducció, no es pretén realitzar una descripció en pro-
funditat dels tipus d’aprenentatge artificial existents. Per aquest motiu, i buscant com-
20 Aprenentatge Artificial
plementar aquesta revisió, l’apartat 3.6 (pg. 48) proporciona referències bibliogràfiques
suficients per aprofundir en els punts tractats al llarg del capı́tol. Malgrat tot, de totes les
possibles formes de definir tipologies dins l’aprenentatge artificial, se’n presentaran tres
escollides pel seu interès cara a la mineria de dades introduı̈da al capı́tol 2. La primera
taxonomia fa referència a la natura de l’entorn en si. D’ara endavant els termes entorn i
problema d’aprenentatge seran emprats indistintament. La segona tindrà en compte la
relació de l’algorisme d’aprenentatge amb l’entorn. Finalment, la tercera agrupació es
realitza tenint en funció de la representació de coneixement emprada i, conseqüentment
dels algorismes emprats per la seva adquisició.
És important fer un incı́s en aquest punt. L’aprenentatge artificial que es presenta
és aquell que es centra en problemes de classificació/predicció. Per aquest motiu, d’ara
endavant, quan es parli d’aprenentatge es parlarà d’aprendre a resoldre problemes de
classificació/predicció. En aquest tipus d’aprenentatge es disposa d’un conjunt d’exem-
ples, els quals són la bases del procés que obtindrà el coneixement intensional que les
representarà. Quedaran per tant fora d’aquesta discussió temes, per exemple, com l’a-
prenentatge basat en explicacions [Mitchell, 1997], ja que el seu objectiu no són el tipus
de problemes que marquen aquest treball.
Una altra forma de classificar els sistemes d’aprenentatge artificial és fer-ho en funció
de la relació que desenvolupen amb l’entorn. És a dir, aquest tipus de taxonomia rau
en la informació provinent de l’entorn de que es disposa per realitzar l’aprenentatge.
Aixı́, depenent de la informació que es disposi, els algorismes d’aprenentatge es poden
agrupar en dos grans tipus, els incrementals i els no incrementals.
Els algorisme d’aprenentatge incremental són aquells que realitzen el seu aprenen- Aprenentatge
tatge en un entorn que els proporciona els exemples a aprendre d’un en un. Un exemple incremental
d’aquest tipus de problema podria ser l’aprenentatge que un robot dur a terme per evitar
obstacles. A mida que el robot avança pel medi, va recollint informació del seu estat i la
configuració de l’entorn que l’envolta. Aquest procés proporciona un exemple cada cop,
condicionant conseqüentment el tipus d’aprenentatge que el robot pot dur a terme.
Per altra banda, existeixen entorns que proporcionen un conjunt de dades. Aquest
tipus d’entorn dona lloc a conductes d’aprenentatge no incremental. Un exemple pot ser Aprenentatge
l’anàlisi de dades cientı́fiques. Concretament és disposa d’un conjunt de dades provinents no incremen-
de mostres (o experiments) d’un cert problema, i el que es vol és aprendre un concepte. tal
En aquest cas el què es busca és una representació intensional (en forma de llei, principi,
etc.) que en descrigui la representació extensiva (dades proveı̈des pel problema).
Analı́tic : solen representar el coneixement emprant regles també, però difereixen del
paradigma anterior en l’enfocament emprat. En lloc d’induir regles, el que pro-
posen és plantejar, en un llenguatge formal, el problema de classificació com un
teorema. D’aquesta forma l’aprenentatge es transforma la cerca d’una demostració
al teorema plantejat.
Algorismes Genètics : per norma general, els algorismes genètics tradicionals aplicats
a l’aprenentatge artificial, representen el coneixement en poblacions d’individus.
Aquesta aproximació, de marcada inspiració biològica, sol codificar emprant els
individus de la població regles de baix nivell (funcions Booleanes a nivell de bit).
Els individus de la població són evolucionats (adaptats al problema d’aprenentatge
a resoldre) emprant esquemes provinents de la teoria de les espècies de Darwin, aixı́
com de la teoria genètica. Aquests tipus d’algorismes seran àmpliament tractats
al capı́tol 4 (pg. 51).
Xarxes Neurals : representen el coneixement com una xarxa multicapa d’unitats ba-
sades en llindars que transmeten l’activació de les entrades cap a les sortides.
Associat a cada connexió de la xarxa, es pot trobar un pes que determina la quan-
titat d’activació que es passa. L’aprenentatge de les xarxes neurals es basa en
l’ajust dels pesos que determinen aquests llindars d’activació. Aquesta manipula-
ció buscarà millorar la capacitat de classificació/predicció de la xarxa.
Tal com ja es comentà al capı́tol 2 (pg. 7), una possible forma de mineria de dades es
aquella que es basa en l’ús de tècniques d’aprenentatge artificial. No obstant, no totes les
tècniques d’aprenentatge serveixen per dur a terme tasques de mineria. El principal motiu
prové de la natural del problema de mineria. Aquests tipus de problemes proporcionen
un conjunt de dades a analitzar per extreure cert coneixement útil. Fent el paral·lelisme
entre la mineria de dades i el que s’ha comentat fins al moment d’aprenentatge artificial,
es pot entreveure que els principals mètodes emprats serà aquells que es descrivien com
a pertanyents a l’aprenentatge no incremental (malgrat hi ha excepcions a tenir en
compte).
De la mateixa forma, les principals tasques de la mineria també presenten una corres-
pondència clara amb la natura de l’entorn present en l’aprenentatge artificial. L’anàlisi
d’agrupacions de la mineria de dades queda perfectament circumscrit a l’aprenentatge
no supervisat. Això és degut al fet que no existeix, a priori, cap noció de les possibles
3.3 Classificació i Representació de Coneixement 23
agrupacions, ja que si es coneixés a priori no existiria anàlisi possible. Per altra banda,
tant l’anàlisi de relacions i la classificació/predicció queden fàcilment emmarcats dins l’a-
prenentatge supervisat. El principal motiu és el fet que sempre es pot crear un tutor que
avaluı̈ el progrés de l’aprenentatge a partir de les pròpies dades a analitzar. Per exemple,
en el problema del temps presentat a la taula 2.1 (pg. 10), consistia en classificar les
dades en funció de si es podrà sortir a jugar o no. Un tutor senzill el proporcionen les
pròpies dades amb l’atribut play. Sols és necessari comprovar el valor d’aquest atri-
but per saber si la classificació realitzada pel procés d’aprenentatge ha estat correcte.
D’igual forma funcionaria per l’anàlisi d’associacions. Per altra banda, l’aprenentatge
per reforçament no presentaria una traducció tant directa per les principals tasques de
mineria.
Pel que fa als principals paradigmes de l’aprenentatge artificial, tots ells han estat
aplicats, en més o menys grau, a problemes de mineria de dades. La resta d’aquest capı́tol
es dedicarà a revisar aquelles parts de l’aprenentatge artificial que seran de rellevància
en la tesi que aquı́ es presenta. Tot seguit es passarà a formalitzar que s’entendrà per
problema de classificació, aixı́ com les principals representació que apareixerant de forma
recurrent d’ara endavant.
El principal objectiu d’aquest apartat serà formalitzar certs conceptes que han anat
apareixen fins al moment i, que posteriorment, esdevindran d’importància cabdal. Con-
cretament, es començarà descrivint que serà un problema de classificació (definició única
tant si es mira de la vessant de la mineria de dades, com si es veu des de la perspectiva de
l’aprenentatge artificial), per passar tot seguit a formalitzar les principals representacions
dels coneixement manegades al llarg del treball que aquı́ s’exposa.
Recuperant l’exemple presentat a la taula 2.1 (pg. 10), es poden trobar cinc atributs
diferents outlook, temperature, humidity i windy. Aquest atributs representen conjunts
de valors diferents. Per exemple, l’atribut windy és booleà (sols pot valdre TRUE o
24 Aprenentatge Artificial
FALSE), mentre que outlook és categòric. Per contra l’atribut temperature és numèric.
Els atributs poden representar qualsevol tipus de dada, ja siguin booleana, categòric,
numèrica, textual, etc. Degut a l’interès per la mineria de dades, s’ha centrat aquest
treball en problemes que empren atributs categòrics i numèrics, ja que permeten repre-
sentar tot tipus de dades, sempre i quan s’emprin els morfismes adequats1 .
Definició 2 Sigui {a0, a1, . . . al} el conjunt no buit d’atributs A, que descriuen el pro-
blema de classificació a resoldre. A+ nota l’espai dels atributs definit per A, és a dir
a0 × a1 × . . . al. La cardinalitat de A s’expressarà com |A| i quedarà definida com
|A| = l.
Definició 3 Sigui l’atribut de categorització X el conjunt finit {χ0, χ1, . . . χm} de classes
possibles del problema de classificació.
De la definició d’instància anterior, un exemple e pel problema del temps podria ser
e = hsunny, 85, 85, FALSEi, on eχ =no. Un cop fetes aquestes definicions prèvies, ja es
podrà passar a definir el que s’entendrà com a problema de classificació.
Com es pot apreciar, un problema de classificació queda definit per conjunt d’atributs,
les classes que el defineixen, i finalment les instàncies de les que es disposa. Com es
pot intuir, l’existència de X és degut a que es volen resoldre problemes de classificació,
sota l’enfocament de l’aprenentatge supervisat. Hi ha cops que el conjunt de classes X
s’amplia per incorporar la possibilitat d’una classe indefinida. Tot seguit se’n dona la
definició i ja s’aprofundirà en la seva significació més endavant. A tall de resum, la classe
indefinida serà la resposta dels sistemes d’aprenentatge quan no saben com classificar
una instància.
Per facilitar l’explicació d’alguns conceptes posteriors, tot seguit s’introduiran tres
problemes de classificació definits artificialment. Aquest problemes comparteixen el ma-
teix conjunt d’atributs. Es a dir, per tots tres problemes, els atributs que formen A
són x∈[-6,6] i y∈[-6,6]. Una forma fàcil de presentar aquests problemes és a partir de
la seva representació gràfica (figura 3.1). Aquesta és possible gràcies a que A+ és un
espai bidimensional. Sobre el pla que defineixen els atributs es poden representar les
instàncies de les quals és disposa pel problema d’aprenentatge. Cada instància, o punt
de A+, és pinta sagnant-lo amb la classe a la qual pertany les instàncies. Aquest tres
problemes són els següents:
Obliques : el segon problema defineix el conjunt de classes com X = {3, 6, 9}. Aquest
problema és el resultat de fragmentar l’espai d’atributs definit per A emprant dos
trapezis i un triangle (veure figura 3.1.b). El nombre d’instàncies que composen
Σ és també de 625. La distribució de les instàncies en funció de la classe és
26 Aprenentatge Artificial
TAO : l’últim problema artificial torna a ser de classificació binària, X = {black, white}.
Les instàncies provenen de mostrejar la figura del TAO (veure figura 3.1.c) emprant
una malla de pas 0.25. El nombre d’instàncies resultants d’aquest procés de
mostreig formen un Σ composat de 1888 instàncies. Aquestes es troben agrupades
en 944 instàncies (50%) pertanyents a la classe ‘black’ i de 944 instàncies (50%)
pertanyents a la classe ‘white’.
6
6
4
4
2
2
0
0
y
y
−2
−2
−4
−4
−6
−6
−6 −4 −2 0 2 4 6 −6 −4 −2 0 2 4 6
x x
−2
−4
−6
−6 −4 −2 0 2 4 6
(c) TAO
Tal i com es veurà tot seguit, l’aprenentatge per problemes de classificació es pot
entendre geomètricament. El que durà a terme un algorisme d’aprenentatge serà frag-
mentar (compartimentar), d’alguna forma, l’espai definit per A+. Aquesta fragmentació
buscarà identificar regions comunes que comparteixin la mateixa classe. Això s’assolirà
a través de dos elements: la representació del coneixement escollida (d’aquı́ la seva
3.3 Classificació i Representació de Coneixement 27
importància) i la interpretació que se’n fa. Per aquest motiu, els problemes anteriors
(Quads, Obliques i TAO) presenten propietats diferenciades que s’aniran comentant a
mida que es vagi desenvolupant aquest capı́tol.
El primer tipus de representació del coneixement que es tractarà serà els arbres de decisió.
D’arbres de decisió n’existeixen una gran varietat. Un model general és aquell que es
basa en una conjunció de testos disjunts. Com del seu nom se’n desprén, els arbres de
decisió són una representació del coneixement basada en una estructuració jeràrquica de
la informació, l’objectiu de la qual és recollir el coneixement (estructuració) que descriu
la classificació pel problema a resoldre (o a aprendre).
Una estructuració genèrica del arbres de decisió és aquella en que: (1) els nodes
interns de l’arbre representen testos sobre el conjunt d’atributs A, i (2) les fulles recullen
un conjunt d’instàncies que comparteixen (idealment) la mateixa classe (pertanyent a
X). Donat un cert problema de classificació P, les branques que surten d’un node
(condició sobre A) representen la disjunció corresponent als possibles valors resultants
del test fet sobre el node.
Un punt vital en els arbres de decisió és la definició dels testos possibles sobre el
conjunt d’atributs. És a dir, un punt que diferenciarà els arbres de decisió és el nombre
d’atributs que intervenen en un test. Una aproximació senzilla a aquesta definició és
aquella en la qual els testos es realitzen sobre un atribut cada cop. Recuperant l’exemple
dels temps de la taula 2.1 (pg. 10), el que es faria en aquesta primera aproximació és
que cada node intern de l’arbre representi un test sobre un atribut. Per tant, un node
representaria un test sobre un dels quatre atributs disponibles (outlook, temperature,
humidity, windy).
L’altre punt vital en els arbres de decisió és la forma que prenen els testos. Aquests
s’han de definir en funció del tipus d’atribut tractat. Per exemple, en el problema del
temps, si es pren l’atribut outlook aquest és categòric, és a dir disposa d’un conjunt
finit de valors (sunny, overcast, rainy). Conseqüentment, es podria definir els testos
com a parelles atribut-valor (ei = k), de l’estil outlook=sunny, o bé outlook=overcast.
Per contra, si en el mateix problema s’escull per realitzar un test en un node l’atribut
temperature, ja no es pot aplicar la idea anterior degut a la seva natura numèrica.
Arribats a aquest punt és necessita escollir alguna altra forma de realitzar el test. Per
exemple, una forma senzilla seria la següent: ei ≤ k. Aquest test proporciona dos
possibles resultats (a diferència de l’anterior que en presentava tres): cert o fals.
Arribats a aquest punt, si s’uneix tot el que s’ha comentat anteriorment, un possible
exemple d’arbre de decisió pel problema del temps seria el que es presenta a la figura 3.2.
Com es pot apreciar cadascun dels nodes interns de l’arbre representen una condició sobre
algun dels atributs de A. El node arrel defineix el test emprant l’atribut outlook. Els seus
fills representen els possibles valors pel test, en aquest cas tres (sunny, overcast, rainy), o
el que és el mateix, realitza la disjunció dels possibles valors. Si tot seguit s’aprofundeix
28 Aprenentatge Artificial
en alguna branca, per exemple la primera, és troba un altre test, en aquest cas sobre
l’atribut humidity. De nou es torna a presentar la disjunció entre els possible valors del
test (≤ 75, o bé >75). Finalment s’arriba a un node fulla, que indica la classe associada
a totes les instàncies descrites per la conjunció dels testos trobats al llargs del camı́ entre
l’arrel i la fulla. En el cas de la fulla etiquetada com a yes, les instàncies descrites serien
aquelles en que l’atribut outlook pren per valor sunny i l’atribut humidity≤75.
outlook
yes no no yes
D’ara endavant es notarà aquest tipus d’arbre de decisió de forma compacta. Per
assolir aquesta fita es presentarà l’arbre com a resultat del corresponent recorregut en
pre-ordre del mateix, sagnant-lo en funció de la profunditat a la qual es trobi el node en
qüestió. Concretament, es recolliran els testos sobre A+ que proposa l’arbre de decisió.
L’últim test, abans d’arribar a una fulla, tindrà associat la classe que representa la fulla
corresponent. Per exemple, l’arbre presentat a la figura 3.2 es notarà tal i com apareix
a l’exemple 5.
Ortogonals Aquest tipus d’arbres de decisió també solen anomenar-se ortogonals. Aquest so-
brenom prové del particionat que duen a terme sobre A+. Les condicions expressades
anteriorment descriuen particions perpendiculars als eixos definits pels atributs. Per
il·lustrar aquest punt s’emprarà el problema Quads presentat a la figura 3.1 (pg. 26).
Un possible arbre d’inducció per aquest problema seria el que es presenta a l’exemple 6.
3.3 Classificació i Representació de Coneixement 29
−2
−4
−6
−6 −4 −2 0 2 4 6
Figura 3.3: Particionat d’A+ per l’arbre de decisió presentat pel problema Quads
x ≤ -0.5
x≤1
x≤0: 9
x>0
y≤ -1.5 : 9
y> -1.5 : 6
x>1
y ≤ 3.5
x≤ 3.5 : 9
x> 3.5
y ≤ -5
x ≤ 4.5 : 9
x > 4.5
y ≤ -6 : 9
y > -6 : 6
...
La primera consideració que es pot extreure de l’equació 3.2 és que sols es vàlida
per atributs numèrics. Malgrat ser originalment pensats per problemes amb atributs
numèrics hi ha autors que s’han dedicat a l’estudi de com aplicar-los a problemes amb
atributs no numèrics [Breiman et al., 1984, Van de Merckt, 1993] . Per altra banda ne-
cessiten tota la informació disponible, ja que en cada node intern de l’arbre es necessiten
tots els valors de la instància que es classifica. Els coeficients α1, . . . , α|A|+1 són co-
eficients numèrics que defineixen l’hiperplà (expressió general del pla quan es disposa
de n dimensions) encarregat de separar, i per tant definir, una frontera de classificació.
Amb aquest tipus d’expressió s’aconsegueix fragmentar l’espai d’atributs en polı́edres
que recullen aquelles instàncies que comparteixen la mateixa classe associada.
Els arbres de decisió oblics presenten però un problema que ha fet que s’apliquin
poc. El problema és que la generació d’un arbre de decisió oblic es basa en la capacitat
3.3 Classificació i Representació de Coneixement 31
Tal i com es pot apreciar a la figura 3.4, el particionat d’A+ que realitza aquest arbre
de decisió de l’exemple 8 és molt més acurat que en la seva versió ortogonal. Aquest
arbre oblic elimina el problema d’escala, representant de forma molt més compacta (sols
utilitza 3 hiperplans) les diferents regions de classificació.
6
4
2
0
y
−2
−4
−6
−6 −4 −2 0 2 4 6
Figura 3.4: Particionat d’A+ pel problema Obliques emprant arbres de decisió oblics
Malgrat les modificacions introduı̈des amb els arbres de decisió oblics, existeixen pro-
blemes en els quals les fronteres de classificació no poden ser correctament descrites. Un
exemple d’aquest tipus de problemes és el problema TAO presentat a la figura 3.1 (pg.
26). Com es pot apreciar, aquest problema requereix d’una representació del coneixe-
ment que permeti definicions de fronteres corbes. Per aquest motiu existeixen un tercer
grup d’arbres de decisió, els anomenats multivariants [Murthy et al., 1994]. Aquests ti- Multivariants
pus d’arbres redefineixen de nou les condicions dels nodes interns dels arbres de decisió.
Algunes d’aquestes modificacions defineixen condicions basades en: combinacions d’atri-
buts no lineals [Utgoff and Brodley, 1990], regions de classificació basades en instàncies
[Llorà and Garrell, 2000a], o bé en xarxes neurals [Hampson and Volper, 1986].
32 Aprenentatge Artificial
3.3.3 Regles
Exemple 9 Conjunt de regles que descriuen el problema del temps. Les condicions de
les regles representen la conjunció i disjunció de testos sobre alguns atributs de A per
aquest problema.
Exemple 10 Conjunt de regles que descriuen el problema del temps. Les condicions
de les regles representen la conjunció de testos sobre alguns atributs de A per aquest
problema. La disjunció s’introdueix per mitjà de l’ús de la disjunció entre regles.
(outlook = sunny) ∧ (humidity ≤ 75) → yes
(outlook = rainy) ∧ (windy = FALSE) → yes
(outlook = overcast) → yes
(outlook = sunny) ∧ (humidity > 75) → no
(outlook = rainy) ∧ (windy = TRUE) → no
Existeix un altre motiu per escollir aquest tipus de representació per les regles. Aquest
rau en la facilitat amb la qual es pot transformar un arbre de decisió ortogonals en un Transformar
conjunt de regles equivalent. Aquest pas sempre es possible, a diferència del cas contrari
que pot no ser-ho. El procediment per obtenir el conjunt de regles d’un arbre de decisió
és el basa en que els camins des de l’arrel fins a les fulles representa la conjunció de
testos (condició de la regla equivalent), i la fulla conté la classe associada (acció de la
regla). Degut a que els fills d’un node de l’arbre representa una disjunció, el conjunt
de regles format per tots els camins entre el node arrel de l’arbre i les fulles del mateix,
esdevé en forma normal conjuntiva. Per il·lustrar aquest procés, l’exemple 11 recupera
l’arbre de decisió ortogonal proposat pel problema Quads (exemple 6), obtenint-ne el
conjunt de regles resultant.
Exemple 11 Extracció de regles a partir d’un arbre de decisió ortogonal pel problema
Quads. Les regles (dreta) corresponen als camins entre el node arrel i les fulles de l’arbre
d’inducció ortogonal (esquerra)
x≤2 (x ≤ 2) ∧ (y ≤ -2) → +
y ≤ -2 : + (153)
(x ≤ 2) ∧ (y > -2) ∧ (y ≤ 2) → ×
y > -2
y ≤ 2: × (136) (x ≤ 2) ∧ (y > -2) ∧ (y > 2) → +
y > 2: + (136) (x > 2) → ×
x > 2 : × (200)
Com es pot intuir, el pas contrari de transformació no és sempre possible, ja que
requereix que les regles estiguin en forma normal conjuntiva i, que a més a més, els
testos siguin complementaris i es puguin ordenar adientment.
34 Aprenentatge Artificial
Pel que fa al particionat de l’espai A+ que duen a terme els conjunts de regles, és
equivalent al proporcionat pels arbres de decisió oblics. Això és degut principalment a
que els testos disponibles sobre els atributs són els mateixos, d’igual forma que la unió
entre els es continua basant en conjuncions i disjuncions dels mateixos. Existeixen força
varietats d’aproximacions per modificar aquest comportament en el moment de definir
fronteres de classificació. Sols es voldria fer esment en aquest punt de les aproximacions
basades en lògica de conjunts difusos [Zadeh, 1965], les quals permeten suavitzar i
modificar les fronteres de classificació redefinint el formalisme (regles) que s’empra per
descriure les regions de classificació.
y a
v
u |A|
uX
dist(e, x) = t (ei − xi)2 (3.3)
i=1
Exemple 12 Donada la figura 3.5, sigui a = h1, 8i i b = h8, 1i. Si es calcula les
distàncies per cadascuna de les instàncies respecta a la nova instància a classificar,
e = hex, eyi, s’obté:
v
u 2 q
uX
dist(e, a) = t (ei − ai) = (ex − 1)2 + (ey − 8)2
2
(3.4)
i=1
v
u 2 q
uX
dist(e, b) = t 2
(ei − bi) = (ex − 8)2 + (ey − 1)2 (3.5)
i=1
El resultat (equació 3.11) representa la equació implı́cita d’una recta dins l’espai A+.
Aquesta frontera es presenta a la figura 3.5 en forma de lı́nia discontı́nua. Conseqüent-
ment, totes les instàncies que queden compreses per sobre de la recta (ex − ey < 0) són
de classe aχ, mentre que les que són per sota (ex − ey > 0) pertanyen a bχ. Pel que fa
a les instàncies que queden distribuı̈des al llarg de la frontera (ex − ey = 0), no queda
clara la seva classificació.
Com es pot apreciar de l’exemple anterior, amb dues instàncies i una funció de
distància es pot separar en dues parts A+. Aquest particionat recorda força a l’obtingut
emprant arbre de decisió oblics. Pel que fa a les instàncies de la frontera, es poden
36 Aprenentatge Artificial
Tal i com s’ha vist, aquest tipus de representació es basa en l’ús del veı́ més pròxim
NN (nearest neighbour, o NN) per realitzar la classificació. Les fronteres que apareixen
continuen essent hiperplans, encara que es calculin de forma diferent. Aquest tipus de
frontera presenta la problemàtica que no sol tolerar bé soroll a les instàncies properes
a la frontera, fet que provoca classificacions incorrectes. Per intentar paliar aquest
problema, aixı́ com per suavitzar aquestes fronteres, en lloc d’emprant per la definició
de les fonteres només el veı́ més pròxim, el que es fa és fer-ho amb els k veins més
pròxims (k-NN) [Aha, 1992].
k-NN El k-NN pren en el moment de classificar una nova instància e els k veı̈ns més
propers. La classe a la qual pertanyarà e és detemina com a la classe majoritariament
votada per el k veı̈ns més propers. El valor de k es sol escollir normalment de forma
que no permeti l’aparició d’empats, ja que no es podria afirmar amb rotunditat quina
seria la classe de e i s’hauria de classificar com a λ. Per exemple, en el problema dels
TAO presentat a la figura 3.1 (pg. 26) X és {black, white}. Alguns valors emprats per
k podrien ser {3,5,7,. . . }2 . Com es pot apreciar, sols s’utilitzen valors senars. El motiu
és que el problema TAO és un problema de classificació binària, per tant prenent un
nombre senar de veı̈ns, mai es pot donar el cas d’un empat en la votació.
2
k=1 correspondria senzillament a NN.
3.3 Classificació i Representació de Coneixement 37
La regressió lineal es centra en escollir els coeficients (wi) que minimitzin la suma
de l’error comès en la predicció de les instàncies de Σ. L’error comès per una instància
ej és pot calcular a partir de la diferència entre el valor esperat i el predit. És a dir,
l’error per la instància j de Σ seria ǫj = ejχ − χj. Per tant, l’error total a minimitzar, ǫ
és calcula com la suma dels errors elevats al quadrat, tal i com mostra l’expressió
n
!!2
n
X X n
X l
X
ǫ= ǫj = ejχ − χj = ejχ − wie0i + ωl+1 (3.14)
j=0 j=0 j=0 i=0
|X|, obtenint per tant |X| conjunts de coeficients. El procés de classificació és senzill, si
s’interpreta el resultat de la regressió com a una funció de pertinença a la classe per la
qual s’ha fet la regressió. És a dir, per cada nova instància e, aquesta es classifica com
a pertanyent a la classe que proporcioni un valor de regressió més gran.
Tal i com el seu nom indica, la regressió sols es capaç de resoldre problemes de
classificació que siguin linealment separables per classe. Això és degut a que l’expressió
emprada (equació 3.13) no és res més que un hiperplà. Tal i com se’n desprén d’aquest
punt, la capacitat de classificació emprant regressió lineal és limitada. Per aquest motiu
han aparegut aproximacions per estendre aquest tipus de classificació, tal i com es
comentarà en el que resta d’apartat.
Per superar les limitacions comentades, s’extenen els models lineals amb que s’ha
Màquines de anomenat màquines de suport vectorial [Cristianini and Shawe-Taylor, 2000] (support
suport vecto- vector machines o SVM). Malgrat el nom, el que es busca és enriquir la capacitat
rial per definir regions de classificació presentades pel models lineal. A grans trets, les
SVM presenten una aproximació diferent a les presentades anteriorment. Continuen
resolent els problemes emprant regressions lineals, però aquesta definició d’una frontera
de classificació no es realitza sobre A+ sinó sobre un espai construir a partir de A+.
Enlloc de definir fronteres de classificació no lineal, les SVM transformen A+ en un altre
espai A mitjançant transformacions no lineals. D’aquesta forma, quan es defineix una
frontera de classificació lineal a A, el resultat sobre A+ és una frontera no lineal degut
a la transformació no lineal emprada.
La transformació no lineal emprada converteix les instàncies de A+ en instàncies
transformades de A. Concretament, el que les SVM empren és una transformació que
presenta la següent forma:
f : A+ 7−→ A (3.15)
f : A+ 7−→ A
D E (3.16)
7 → x2, xy, y2
hx, yi −
per n = 2, on si n = 3 s’obtindria
f : A+ 7−→ A
D E (3.17)
7 → x3, x2y, xy2, y3
hx, yi −
Per tant, quan es desfà la transformació d’una frontera lineal sobre A, s’obté una
frontera sobre A+ que no és lineal. Per il·lustrar aquest punt la figura 3.7 il·lustra
com es veuria sobre A+ una frontera lineal definida a A. Concretament la figura 3.7.a
desfà la transformació descrita per l’equació 3.16, mentre que la figura 3.7.b correspon
a l’equació 3.17.
6
6
4
4
2
2
0
0
y
y
−2
−2
−4
−4
−6
−6
−6 −4 −2 0 2 4 6 −6 −4 −2 0 2 4 6
x x
Per tot el comentat fins el moment, la representació del coneixement que empraria
la classificació lineal estesa passaria per dos element: (1) la funció de transformació i
(2) els pesos associats a les regressions existents. Per calcular aquest pesos es disposa
de les instàncies del problema, és a dir Σ. Les SVM però no calculen aquest pesos
directament. Degut a que les transformacions poden generar espais d’elevada dimensió,
no és computacionalment viable. Per aquest motiu, les SVM empren el que s’anomena
hiperplà de màxim marge. La finalitat d’emprar aquest tipus d’hiperplà serà el de reduir
el nombre de pesos a ajustar per l’algorisme d’aprenentatge que s’utilitza.
Un hiperplà de màxim marge és un tipus particular l’hiperplà, i, per tant, de model Hiperplà de
lineal. Per facilitar l’explicació es farà servir l’exemple que es presenta a la figura 3.8. màxim marge
Com es pot apreciar es disposa d’un conjunt d’instàncies disposades de forma linealment
separable. Per tant existeix un hiperplà que es capaç de classificar totes les instàncies
correctament. L’hiperplà de màxim marge és aquell que proporciona la màxima separació
entre les classes. Aquest és defineix en funció del polı́gon encerclant (o convex hull) que
encercla cadascuna de les classes. A la figura 3.8 es pot apreciar els dos polı́gons
40 Aprenentatge Artificial
encerclants. Aquests polı́gons són convexos i representen el mı́nim polı́gon que recull en
el seu interior totes les instàncies de la classe. Com que les dues classes són linealment
separables els polı́gons encerclants no es sobreposen. Un cop fet aquest aclariment,
l’hiperplà de màxim marge es defineix com aquell hiperplà ortogonal a la lı́nia més curta
entre ambdós polı́gons encerclants (marcada a la figura en traç discontinu). Comentar
en aquest punt que aquesta aproximació és igual de vàlida en el cas que les classes no
siguin linealment separables. L’objectiu llavors consisteix en buscar l’hiperplà de màxim
marge que proporciona una millor separabilitat lineal.
Les instàncies que es troben més properes a l’hiperplà de màxim marge (mı́nima
distància) són el que s’anomena vectors de suport (o support vectors). Els vectors de
suport per l’exemple de la figura 3.8 són aquelles instàncies que apareixen encerclades
en la mateixa. Existeix com a mı́nim un vector de suport per cadascuna de les classes
involucrades en el problema. Emprant sols aquests vectors es pot reconstruir l’hiperplà de
màxim marge, fent que la resta d’instàncies d’entrenament siguin irrellevants. Suposant
un espai definit per dos atributs a1 i a2, un hiperplà es pot definir com:
Aquesta equació es pot transformar per que l’hiperplà es defineixi emprant els seu
vectors de suport, enlloc del vector de pesos ω = hω0, ω1, ω2i. Arribats a aquest punt
es important dir que inicialment les màquines de suport vectorial es pensaren per proble-
mes binaris, malgrat es poden estendre a tasques de classificació n-àries [Vapnik, 1995].
Per aquest motiu s’emprarà la transformació que es sol emprar per problemes de classi-
ficació binària, on χ = {χ0, χ1}. Per dur a terme aquesta transformació es pot etiquetar
les instàncies d’entrenament de la classe χ0 com a 1, mentre que les de la classe χ1
s’etiquetaran com a −1. Llavors l’hiperplà de màxim marge es pot definir com:
X
χ=b+ αiyia(i) · e (3.20)
i∈CVS
On CVS és el conjunt d’ı́ndex del conjunt de vectors de suport. Per la seva banda,
yi és el valor amb el qual s’ha etiquetat la instància a(i), mentre que b i αi són valors a
ajustar per l’algorisme d’aprenentatge (enlloc del vector de pesos ω anterior). El vector
3.3 Classificació i Representació de Coneixement 41
a(i) correspon a un vector de suport, mentre que e és la instància de test a classificar;
a(i) · e representa el producte escalar d’aquests dos vectors.
Arribats a aquest punt és el moment de recuperar les transformacions no lineals
en les que es basen les màquines de suport vectorial. L’objectiu és incorporar-les a la
formulació d’hiperplà. Per incorporar les transformacions no lineals presentades a les
equacions 3.16 i 3.17, l’equació 3.20 pot ser reescrita com:
X
χ =b+ αiyi (a(i) · e)n (3.21)
i∈CVS
El terme (a(i) · e)n correspon a la transformació no lineal de les instàncies. Per altra
banda, aquesta transformació presenta una propietat força interessant. Concretament,
és el fet que es pot realitzar primer el producte escalar, i posteriorment elevar el resultat
a la enèssima potència. Aquesta operació presenta els mateixos termes que primer fer la
transformació i posteriorment fer el producte escalar dels vectors, diferint són en alguns
termes d’escalament dels eixos [Witten and Frank, 2000]. Conseqüentment, el producte
escalar (costós ja que es realitza repetidament tant en l’entrenament com en el test) es
pot mantenir a l’espai A+. La dimensió de A+ és inferior comparada amb la obtinguda
en l’espai generat per la transformació no lineal.
Finalment, comentar que el terme (a(i) · e)n és el que s’anomena nucli polinomial Polinomial
(polinomial kernel), degut a la natura polinòmica de la transformació no lineal. Malgrat
que aquesta és una de les transformacions més emprades en les màquines de suport
vectorial, n’existeixen d’altres. Per exemple, les basades en nucli basat en funció radials Radials
(radial basis function kernel) que es poden considerar com un cas particular de xarxes
neurals, les radial basis function networks. Un altre exemple de nucli no polinomial és el
nucli sigmoidal (sigmoidal kernel), que també es pot interpretar com un cas particular Sigmoidal
de xarxa neural, la d’un perceptró multicapa sense capes ocultes. Per altres tipus de
nuclis és refereix al lector a [Burges, 1998].
Amb aquesta senzilla regla, i fent algunes assumpcions es pot crear un senzill mètode
de classificació. Concretament, la principal assumpció que s’ha de realitzar és assumir
que les contribucions que realitzen cadascun dels atributs són independents i idèntiques.
Com es pot apreciar aquestes consideracions costa que es produeixin en la realitat. És
fàcil que en un problema no tots els problemes siguin independents, presentant aixı́ una
certa relació entre algun subconjunt d’ells. Per altra banda, tampoc sol ser molt realista
42 Aprenentatge Artificial
suposar que les contribucions de cada atribut siguin igual de rellevants. Malgrat això,
i amb aquestes suposicions fetes el resultat es un mètode de classificació senzill que
funciona de forma acceptable en la majoria de casos. Per altra banda, aquesta forma
de classificar proporciona un conjunt de probabilitats que corresponen a les probabilitats
associades, donada una instància, per les classes disponibles.
El classificació presenta un funcionament senzill. Consisteix en mantenir, donat
el conjunt d’exemples d’entrenament, per cada valor possible de cada atribut la seva
probabilitat d’aparició en funció de cadascuna de les classes del problema, donat un
conjunt d’instàncies d’entrenament. Presentada una nova instància a classificar, es
calcula la probabilitat per cadascuna de les classes. Això s’assoleix per cada classe
calculant el producte de les diferents probabilitats d’aparició aixı́ com la probabilitat total
d’aparició de la classe [John and Langley, 1995], tal i com es presentarà amb un exemple
un xic més endavant. Finalment, s’agafen les diferents probabilitats i es normalitzen dins
l’interval [0,1].
Retornant a l’exemple del temps presentat a la taula 2.1 (pg. 10), aquest es pot
transformar per que tots els atributs esdevinguin nominals [Witten and Frank, 2000],
tal i com es presenta a la taula 3.1. Amb aquesta informació ja es pot procedir a
calcular la informació necessària per classificar una nova instància. Tal i com s’ha
comentat anteriorment, és necessari calcular la probabilitat d’aparició de cada possible
valor d’atribut en funció de la classe a la qual pertany. Això s’assoleix fàcilment a partir
de les instàncies d’entrenament presentades a la taula 3.1, tal i com es mostra a la taula
3.2. Amb aquesta informació ja es pot passar a classificar una nova instància.
Donada una nova instància qualsevol, per exemple e={outlook=sunny, temperatu-
re=cool, humidity=high, windy=true, play=?}, la probabilitat associada a cadascuna
de les classes de X per aquest problema es poden calcular emprant la regla de la proba-
3.3 Classificació i Representació de Coneixement 43
Taula 3.2: Probabilitats d’aparició dels valors dels atributs pel problema del temps
nominalitzat de la taula 3.1
outlook temperature humidity windy play
yes no yes no yes no yes no yes no
sunny 2 3 hot 2 2 high 3 4 true 6 2 9 5
overcast 4 0 mild 4 2 normal 6 1 false 3 3
rainy 3 2 cool 3 1
sunny 2/9 3/5 hot 2/9 2/5 high 3/9 4/5 true 2/5 2/5 9/14 5/14
overcast 4/9 0/5 mild 4/9 2/5 normal 6/9 1/5 false 3/5 3/5
rainy 3/9 2/5 cool 3/9 1/5
El fet de desconèixer p[e] no és un problema seriós, ja que tal i com es podrà veure
a continuació, aquest desapareixerà al normalitzar les propietats. Tot seguit es presenta
el càlcul de les dues probabilitats, p[yes—e] i p[no—e].
Finalment, l’últim pas consisteix en normalitzar les probabilitats que s’han obtingut
anteriorment. Aquest fet fa desaparèixer la necessitat de disposar de p[e], tal i com es
presenta a continuació.
0.0053
pyes = = 0.205 (3.26)
0.0053 + 0.0206
0.0206
pno = = 0.795 (3.27)
0.0053 + 0.0206
Existeixen un ampli ventall d’algorismes d’aprenentatge que treballen amb les diferents
representacions del coneixement presentades en l’apartat 3.3 (pg. 23). En aquest apar-
tat no es vol realitzar ni una taxonomia, ni tampoc un repàs exhaustiu. Per contra, el
que es podrà trobat tot seguit és una breu descripció d’alguns algorismes representatius
de cadascuna de les representacions presentades anteriorment. Concretament, els algo-
rismes que es presenten han estat escollits degut a l’ús posterior que se’n farà d’ells en
aquesta tesi.
Els algorismes que es comentaran breument a continuació, apareixen en funció del
tipus de representació amb el qual treballen segons l’ordre en el qual es presentaven
a la secció 3.3 (pg. 23). És a dir, primer es descriuran els algorismes que treballen
amb arbres de decisió (ID3 i C4.5), per passar tot seguit a descriure els que treballen
amb regles del classificació (0-R, 1-R i PART). A continuació es passaran a descriure els
basats en instàncies (IBL), per finalitzar un algorisme d’aprenentatge per classificació
lineal estesa (SMO), i un basat en models estadı́stics (Naive Bayes).
Dins dels algorismes d’inducció d’arbres de decisió un dels més coneguts i contrastats
ID3 és el ID3 [Quinlan, 1986]. Aquest algorisme construeix un arbre de decisió ortogonal
emprant un conjunt d’instàncies de forma heurı́stica. Donat un conjunt d’instàncies Σ,
en la qual tots els seus atributs són nominals, l’algorismes construeix un arbre de decisió
que representa la definició intensional del coneixement descrit per les instàncies. Aquest
procés s’assoleix de forma recursiva. Donat el conjunt d’instàncies Σ, emprant l’heurı́stic
basat en el guany d’informació, escull l’atribut a ∈ A que maximitza l’heurı́stic. Aquesta
atribut passa a formar el node arrel de l’arbre, mentre que a continuació Σ es fragmenta
en tants conjunts com possibles valors de a. L’arbre es construeix, de forma recursiva,
repetint el procés anterior per cadascuna de les particions de Σ realitzades.
L’ID3 presenta limitacions importants. Aquestes afecten al tipus d’atribut que pot
manegar, tant sols nominals, aixı́ com la impossibilitat de treballar amb instàncies que
3.4 Algorismes d’aprenentatge 45
Els algorismes que s’anomenen i són algorismes molt senzills d’obtenció de regles de
classificació. El primer dels algorismes basats en regles que es comentarà en aquesta
secció és el conegut com 0-R [Holte, 1993]. Aquest algorisme consisteix senzillament
en classificar una nova instància e en funció de la classe majoritària χi ∈ X present en
el conjunt d’instàncies Σ del conjunt d’entrenament. El nom de 0-R prové del fet que
l’algorisme no utilitza cap dels atributs de A per realitzar aquest procés. Conseqüentment
la regla que genera l’algorisme correspon a:
∅ → χi (3.28)
El segon dels algorismes d’aprenentatge de regles escollit és el 1-R [Holte, 1993].
Aquest algorisme és una evolució del 0-R comentat anteriorment. L’algorismes genera
una regla de classificació on l’antecedent sols consisteix en el test sobre un dels atributs
aj de A, d’aquı́ el seu nom. És a dir, en el cas que aj sigui un atribut nominal la regla
que s’obté esdevé:
aj = vk → χi (3.29)
aj ≤ vk → χi (3.30)
3.4.3 PART
L’últim dels algorismes que s’utilitzarà en aquesta tesi per la obtenció de regles de
classificació és el PART [Frank and Witten, 1998]. Aquest algorisme construeix regles
de forma incremental. La principal particularitat d’aquest algorisme és el procés que
s’utilitza per construir cadascuna de les regles. Enlloc de fer-ho de forma incremental
46 Aprenentatge Artificial
a partir de l’adició de conjuncions a una regla buida, fet que acaba implicant processos
d’optimització i cerca globals, el que proposa es emprar arbres de decisió parcialment
definits. La idea consisteix en extreure les regles d’un arbre d’inducció parcialment
definit. Això implica que no es totes les instàncies són cobertes per l’arbre. Un cop
extretes regles, es treuen de Σ aquelles instàncies cobertes, repetint el procés fins que no
queden ja instàncies per cobrir. Aquest arbres s’obtenen emprant l’algorisme C4.5 que
s’ha comentarà anteriorment. Una de les principals propietats d’aquest algorisme rau en
el fet que sense necessitat d’optimitzacions globals obté conjunts de regles compactes i
acurades [Frank and Witten, 1998].
3.4.4 IBL
El tercer bloc d’algorismes escollits són els que treballen amb instàncies. El primer
algorisme que es presenta és el IB1 [Aha et al., 1991, Aha, 1992]. Aquest algorisme
implementa l’algorisme del veı́ més pròxim (nearest neighbor algorithm, o NN) emprant
com a mesura de distància la distància euclidiana. Complementariament, lligat a aquest
algorismes es pot trobar el IBk [Aha et al., 1991, Aha, 1992]. La seva principal diferència
respecte el IB1 rau en el fet que utilitza els k veı̈ns més pròxims (k-NN) per dur a terme
el procés de classificació. Concretament, el que realitza és classificar una instància en
funció de la classe majoritària proposada pels k veı̈ns més pròxims.
Un dels problemes que presenten els algorismes basats en instàncies és l’elevat nom-
bre d’instàncies que s’han de mantenir per poder realitzar la classificació. És per aquest
motiu que també es vol comentar, degut a l’utilització que se’n farà en la part ex-
perimental de la tesi, algunes variants de l’IB1 com són l’IB2, l’IB3, l’IB4, i l’IB5
[Aha et al., 1991, Aha, 1992]. Aquests algorismes busquen, alhora que classifiquen, re-
duir el nombre d’instàncies emmagatzemades per dur a terme el procés de classificació.
L’IB2 es similar a la regla condensada del veı́ més pròxim (condensed nearest neigh-
bor, o CNN) [Hart, 1968]. La CNN comença escollint, a l’atzar, una instància de Σ
per cadascuna de les classes de X. Si una nova instància és mal classificada emprant
les instàncies existents, aquesta s’afegeix al conjunt d’instàncies emmagatzemades per
evitar futurs errors. Emprant aquesta polı́tica l’IB2 emmagatzema instàncies sorolloses,
degut a que aquestes no es classificaren correctament. Per la seva part l’IB3 utilitza
testos estadı́stics per permetre sols emmagatzemar instàncies mal classificades accep-
tables, buscant aixı́ reduir l’impacte del soroll en el conjunt d’instàncies que es manté.
Finalment l’IB4 i l’IB5 estenen l’IB3 computant un conjunt de pesos per cadascun dels
atributs presents a A, buscant aixı́ minimitzar l’impacte d’atributs irrellevant presents
en el problema P a resoldre. A l’igual que succeı̈a amb l’IB1 tant l’IB2, l’IB3, l’IB4,
com l’IB5, poden treballar també amb modalitat de k-NN.
3.5 Resum 47
3.4.5 SMO
Dins de la classificació lineal estesa, i concretament dins les màquines de support vec-
torial, existeixen una gran quantitat d’algorismes d’aprenentatge per obtenir els vectors
de suport. Un dels més emprats recentment és el que s’anomena minimal sequential
optimization o SMO [Platt, 1998]. Aquest algorisme correspon a una algorisme d’apre-
nentatge per màquines de suport vectorial centrades en la resolució de problemes de
classificació binària. Degut a les consideracions matemàtiques d’aquest algorisme que
obligarien a explicació detallada per poder explicar el funcionament de l’algorisme, es
refereix al lector interessat a [Platt, 1998].
L’últim dels algorismes que es vol comentar és un algorisme basat en models estadı́stics.
Aquest és el conegut com a Naive Bayes [John and Langley, 1995]. Aquest algorisme
utilitza la regla de la probabilitat condicionada de Bayes per dur a terme la classificació
utilitzant les instàncies de Σ, tal i com s’ha descrit a a la secció 3.3.6 (pg. 41). El
mot d’ingenu (naive) prové del fet que assumeix independència entre les aportacions
dels diferents atributs de A, aixı́ com de la importància de cadascun d’ells. L’algorisme
és simple, consisteix solament en automatitzar el procés de recompte i aplicació de la
regla de Bayes presentada a la secció 3.3.6. L’algorisme s’ha incorpora una extensió per
poder treballar valors d’atributs desconeguts, afegint aquest valor desconegut amb un
més dels que poden adoptar els atributs de A. L’algorisme però requereix d’una etapa
de discretització prèvia dels atributs numèrics. Aquesta és imprescindible per permetre
a l’algorisme treballar alhora amb atributs nominals i numèrics.
3.5 Resum
En aquest capı́tol, lluny de voler realitzar una exposició exhaustiva del que s’enten per
aprenentatge artificial, s’ha introduı̈t algunes conceptes i elements que s’han utilitzat
al llarg d’aquesta tesi. Per aquest motiu, aquest capı́tol ha començat fent una revisió,
a grans trets, del tipus d’aprenentatge artificial que es podent trobar. Concretament,
aquesta descripció ha versat sobre tres punts importants per l’aprenentatge, com són: (1)
la natura de l’entorn o problema d’aprenentatge a resoldre, (2) la relació amb l’entorn,
i (3) la representació del coneixement utilitzada.
Posteriorment, el capı́tol s’ha centrat en posar de relleu les possibles connexions
existents entre l’aprenentatge artificial i la mineria de dades. En aquest punt s’ha posat
de relleu les coincidències entre ambdues disciplines i com, sota certes consideracions, els
problemes de mineria de dades es poden resoldre emprant aprenentatge artificial. Dins
48 Aprenentatge Artificial
d’aquest punt s’ha tornat a posar de manifest que el marc d’aquesta tesi correspon a un
cas particular de mineria, el es sol anomenar com problemes de classificació automàtica.
Havent identificat aquestes connexions, el capı́tol ha prosseguit comentant algunes
consideracions importants pels problemes de classificació. Concretament, aquestes fan
referència a l’impacte que la tria de la representació del coneixement té pels problemes de
classificació automàtica. Dins d’aquest apartat s’ha revisat com algunes de les principals
representacions del coneixements emprades per la classificació condicionen i limiten la
capacitat per expressar conceptes de classificació. Concretament, aquest fet ha quedat
en els sis diferents tipus de representacions exposades. Lluny de fer un repàs exhaustiu
s’ha comentat algunes de les més emprades com són: (1) arbres de decisió, (2) regles,
(3) basades en instàncies, (4) classificacions lineals esteses, i (5) models estadı́stics.
Finalment, el capı́tol ha presentat alguns dels principals algorismes associats a ca-
dascuna de les representacions del coneixement presentades. La finalitat de presentar
aquests algorismes ha estat doble. La primera era per pode il·lustrar com, donada una
representació del coneixement, es pot construir al seu damunt un algorisme d’aprenen-
tatge. Per altra banda, els algorismes s’han presentat degut a que s’ha utilitzat en la
tesis que aquı́ es presenta, tal i com es podrà apreciar més endavant.
Per concloure aquest capı́tol, tot seguit es proporcionaran algunes referències bibli-
ogràfiques que corresponen, i alhora amplien, el material presentat en aquest capı́tol.
Per començar, tant a [Kodratoff, 1986], com [Langley, 1996] es poden trobar exten-
ses introduccions al camp de l’aprenentatge artificial. Dins d’aquest grup de referències
genèriques d’aprenentatge artificial, s’hi pot afegir una tercera referència que correspon a
[Mitchell, 1997]. Continuant amb les referències de caire genèric tot seguit se’n volen es-
mentar un parell més. Tant a [Witten and Frank, 2000], com a [Han and Kamber, 2001],
es poden trobar clarament identificades les relacions existents entre la mineria de dades
i l’aprenentatge artificial, i com aquest últim hi pot jugar un paper rellevant.
Pel que fa als arbres de decisió ortogonals, referència obliga és [Quinlan, 1993] en la
qual es descriu, entre d’altres, la seva estructura. Pel que fa als arbres de decisió oblics
se’n volen presentar algunes de puntuals. A [Heath et al., 1993] es pot trobar, entre
d’altres, el per que la inducció d’arbres de decisió oblics és un problema NP-Hard. Per la
seva banda, els arbres de decisió oblics es poden estendre per poder treballar amb atributs
nominals, tal i com es pot trobar a [Breiman et al., 1984] i a [Van de Merckt, 1993].
Pel que fa a l’últim dels tres tipus d’arbres de decisió presentats en aquest capı́tol, els
multivariats, se n’han seleccionat quatre de diferents. Aquestes referències que corres-
ponent a [Murthy et al., 1994], [Utgoff and Brodley, 1990], [Llorà and Garrell, 2000a],
i [Hampson and Volper, 1986], presenten quatre aproximacions diferenciades a la repre-
sentació d’arbres de decisió multivariats.
3.6 Notes Bibliogràfiques 49
Dins les representacions del coneixement basades en regles existeixen dues referències
de gran influència. La primera correspon a [Zadeh, 1965]. En ella es presenta un tipus
de representació de regles anomenades difuses. Per altra banda, a [Muggleton, 1992] es
recull un compendi de la tasca realitzada en el camp de la programació lògica inductiva
(inductive logic programming, o ILP). En aquesta referència es descriu el treball en
l’aprenentatge de regles de primer ordre basades en l’ús de clàusules de Horn.
Pel que fa a les representacions basades en instàncies, existeixen un gran nombre
de referències possibles. Malgrat això, sols se’n volen referenciar dues de particulars.
Aquestes corresponen a [Aha et al., 1991, Aha, 1992]. El motiu de presentar aquestes
dues és la gran rellevància i impacte que han tingut dins la comunitat que treballa amb
l’aprenentatge basat en instàncies.
Un dels primer llibres de text sobre la classificació lineal estesa i les màquines de
suport vectorial es pot trobar a [Vapnik, 1995]. Un altra referència de recent aparició
és [Cristianini and Shawe-Taylor, 2000]. Una altra referència àmpliament emprada és el
tutorial que es pot trobar a [Burges, 1998].
El tema de models estadı́stics és àmpliament treballat per la comunitat matemàtica
que es dedica a l’estadı́stica. Per no esbiaixar la referència cap a un model o tema
concret, a [Canavos, 1988] es pot trobar un recull de material i modelat estadı́stic de
dades. Malgrat això, les referències genèriques presentades al començament d’aquest
capı́tol també es poden trobar descripcions de models particulars, aixı́ com la seva
possible implementació pràctica.
Per concloure aquest capı́tol de referències, tot seguit es comentaran algunes re-
ferències que permeten aprofundir en els algorismes d’aprenentatge presentats al llarg
d’aquest capı́tol. L’article en el qual es presentà l’ID3 es pot trobar [Quinlan, 1986]. Per
la seva banda, el C4.5 fou àmpliament descrit a [Quinlan, 1993]. Els algorismes basats
en regles 0-R i 1-R es poden trobar a [Holte, 1993]. Per la seva banda, el PART es pot
trobar comentat àmpliament a les dues referències següents [Frank and Witten, 1998,
Witten and Frank, 2000]. Dins la famı́lia d’algorismes d’aprenentatge basat en instàncies
IBL, les dues referències que han marcat el camp són [Aha et al., 1991, Aha, 1992],
malgrat ja existı́s força feina feta amb anterioritat, com en el cas del CNN [Hart, 1968]
emprant per l’IB2. El penúltim algorisme presentat, el SMO, es presentà a [Platt, 1998],
aixı́ com l’últim dels algorismes presentats, el Naive Bayes, se’n pot trobar més material
a [John and Langley, 1995].
50 Aprenentatge Artificial
CAPÍTOL 4
Computació Evolutiva
La computació evolutiva és el nom que rep el camp que amalgama diferents
tècniques i metodologies d’inspiració biològica. Aquest capı́tol descriurà informalment les
principals tècniques que s’hi podem trobar. Com es podrà apreciar en aquesta descripció,
moltes d’elles estan pensades per aplicar-se a diferents problemes, per exemple problemes
d’optimització (numèrica o combinatòria), de planificació, o fins i tot d’aprenentatge
artificial. És en aquest últim, l’aprenentatge artificial emprant computació evolutiva,
que se’n farà una descripció detallada. El motiu és descriure, tant les bases com el el
treball existent, en el qual s’emmarca aquesta tesis.
4.1 Taxonomia
Sota el nom de computació evolutiva [Fogel, 1995] es poden trobar una gran varietat
de tècniques d’inspiració biològica. Lluny de voler realitzar una descripció exhaustiva, el
que es vol fer a continuació és descriure les principals vessants, aixı́ com ressaltar algunes
de les seves caracterı́stiques diferenciadores.
Una possible classificació de les tècniques que conformen la computació evoluti-
va és la que agrupa les tècniques en quatre grans blocs: (1) els algorismes genètics
[Holland, 1975], (2) la programació genètica [Koza, 1992], (3) les estratègies evolutives
[Rechenberg, 1965, Schwefel, 1965], i finalment l’últim gran bloc que és (4) la programa-
ció evolutiva [Michalewicz, 1992, Fogel, 1995]. Tot seguit es donaran quatre pinzellades
de cadascuna d’elles. Posteriorment, s’aprofundirà en el camps dels algorismes genètics,
aixı́ com la seva aplicació a l’aprenentatge artificial, degut a la importància que presenten
per la tesi que aquı́ es presenta.
52 Computació Evolutiva
Els algorismes genètics són el resultat del treball realitzat per John H. Holland buscant
abordar problemes computacionals amb tècniques d’inspiració marcadament biològica
[Holland, 1969, Holland, 1975]. La principal aportació realitzada fou la presentació d’un
dels primers models basats en la idea d’evolució artificial, aixı́ com la descripció i estudi
d’algunes de les seves aplicacions. Alguns dels exemples de les aplicacions proposa-
des passaven per la resolució de problemes d’optimització, aprenentatge o modelat de
sistemes ecològics.
La continuació d’aquesta proposta fou duta a terme per David E. Goldberg, feina
que es recull a [Goldberg, 1989]. Entre d’altres, s’aprofundeix en l’estudi d’algorismes
selecto-recombinatius. Concretament, es proposen extensions i ampliacions del model
inicial cara a millorar l’eficiència en la resolució de problemes, principalment d’optimit-
zació (unimodal, multimodal i multiobjectiu). També destaquen l’èmfasi en l’estudi
dels mecanismes que guien i controlen el comportament i l’eficiència dels algorismes
genètics amb genomes basats en cromosomes de codificació binària. Extensions cap a
genomes per optimització numèrica, o per optimització combinatòria, es poden trobar a
[Michalewicz, 1992]. Per altra banda, alguns exemples de les possibles aplicacions dels
algorismes genètics es poden trobar a [Davis, 1991].
Una altra vessant de la computació evolutiva és el que ha rebut el nom de programació
genètica [Koza, 1992, Koza, 1994, Koza et al., 1999]. L’objectiu és força diferent dels
algorismes genètics. La programació genètica busca la creació automàtica de programes,
o dit d’una altra forma, la creació de sistemes capaços d’autoprogramar-se. Una de les
principals diferències que diferencien els algorismes genètics i la programació genètica rau
en el genoma, i com aquest es codifica. La programació genètica utilitza una represen-
tació genòmica arborescent, capaç de codificar des de senzilles funcions matemàtiques
a complerts programes codificats emprant s-expressions.
Aquesta aproximació presenta diverses aplicacions. D’entre elles destaca la utilitza-
ció de la programació genètica com a eina de disseny automàtic. Les utilitats d’aquest
tipus d’aplicació per camps tant diversos com la generació automàtica d’etapes d’ampli-
ficació o filtres passabanda. Una altra interpretació d’aquest tipus de disseny automàtic
ha donat lloc al camp conegut com hardware evolutiu. Aquest últim es centre en l’e-
volució de dispositius lògics programables, permeten obtenir automàticament hardware
especı́ficament obtingut per un problema concret.
4.2 Orı́gens dels Algorismes Genètics 53
La tercera de les vessants en que es pot dividir la computació evolutiva és el que s’-
han anomenat estratègies evolutives [Rechenberg, 1965, Rechenberg, 1973]. El model
d’evolució artificial que proposen les estratègies evolutives difereixen del dels algorismes
genètics en que els primers no són selecto-recombinatius. És a dir, les estratègies evo-
lutives no disposen d’operadors de creuament del material codificat en el seu genoma.
Aquesta diferència fa que el model d’evolució artificial sols es basi en l’ús de la pressió
selectiva i la modificació dels individus a través de la mutació.
Algunes de les aplicacions de les estratègies evolutives són diverses, però centrades
principalment en problemes modelables com a problemes d’optimització, principalment,
numèrica [Schwefel, 1965, Schwefel, 1981]. D’entre aquest tipus de problemes desta-
quen problemes d’enginyeria com són el disseny de perfils d’ales per avions, o tuberies
d’aigua.
L’última de les vessants que es comentarà breument és la programació evolutiva. Aquest
és un enfocament selecto-recombinatiu que es centra en l’evolució d’estructures de dades
[Fogel, 1995, Michalewicz, 1992]. La idea és resoldre problemes especı́fics introduint la
idea d’evolució artificial dins la resolució del problema. Concretament, la idea és donat
un problema a resoldre amb una certa codificació, adaptar l’evolució artificial per què
pugui treballar directament sobre el poblema per poder-lo resoldre. Com es pot apre-
ciar, aquesta aproximació és diferent a la que s’utilitza per resoldre problemes emprant
algorismes genètics. En aquests es busca adaptar al problema per poder-lo encabir en
una representació de genoma lineal binària. Conseqüentment, la programació evolutiva
necessita la redefinició constant dels seus operadors de recombinació, principalment, per
poder resoldre cada nou problema. Una de les primeres aplicacions a les que s’aplicà
aquesta aproximació fou l’evolució d’autòmats finits [Fogel, 1995].
t ← 0
initialize P(t)
evaluate P(t)
WHILE <not-end-criterion>
DO
t ← t+1
select P(t) from P(t − 1)
recombine P(t)
evaluate P(t)
DONE
2. Selecciona els individus més ben adaptats a l’entorn. Aquest procés s’aconse-
gueix escollint de la iteració anterior aquells individus que posseeixen una millor
avaluació. Aquest individus, escollits en funció de la seva adaptació, són els que
sobreviuen a la iteració actual, conformant aixı́ una nova població.
El procés descrit anteriorment, es pot representar de forma gràfica com es pot apreciar
a la figura 4.2. Tal i com s’observa la figura, existeixen dues parts diferenciades: la
inicialització, i el procés evolutiu (representat per les successives iteracions). Pel que
fa a la inicialització ja s’ha comentat anteriorment, on l’objectiu d’aquesta etapa inicial
consisteix en obtenir una població inicial a partir de la qual es pugui iniciar el procés
evolutiu. Per altra banda, el procés evolutiu es pot descomposar principalment en quatre
etapes diferenciades.
Avaluació L’etapa d’avaluació consisteix en assignar a cada individu de la població una mesura
de la seva adaptació al medi en el qual es troba. Per exemple, en un problema d’opti-
mització d’una funció matemàtica, aquesta fase consistiria en assignar a cada individu
el resultat de calcular el valor de la funció en aquest punt.
Selecció El següent pas és la selecció. Un cop avaluats els individus que conformen la població,
s’aplica una polı́tica de supervivència dels individus més ben adaptats a l’entorn. És a dir,
es trien el individus que sobreviuran en el medi en funció de la seva avaluació. Seguint
aquesta idea, un exemple de possible mètode de selecció dels individus que conformen
la següent població es pot realitzar proporcionalment a l’avaluació que se’ls ha assignat.
Recombinació Un cop construı̈da la nova població, tot seguit es passa a la recombinació. Selec-
cionats els millors individus, el següent pas és introduir la filosofia de la recombinació
del material genètic dels individus. És en les dues etapes en les que es pot separar la
recombinació (creuament i mutació) on es generen els nous individus, descendents dels
seus progenitors, que hereten el material genètic recombinat que els descriu.
Reemplaçament Dins d’aquest model d’algorisme genètic no es té en compte el reemplaçament de
la població. És a dir, inicialment el model és generacional. Això vol dir que la població
de descendent reemplaça completament a la població de progenitors que els ha general.
Tal i com es veurà més endavant, aquesta no és la única alternativa, ja que existeixen
models no generacionals en els qual conviuen progenitors i descendents.
• Enfocament de Pittsburgh.
• Enfocament de Michigan.
4.5 Aprenentatge Artificial 57
Inicialització
Avaluació
Població 1 Població 1
Mutació
Selecció
Població 3 Població 2
Creuament
• Enfocament de Pittsburgh.
• Enfocament de Michigan.
Tot seguit es descriurà i comentarà amb més profunditat cadascun dels enfocaments.
Convergència: L’algorisme genètic tendeix a convergir cap a una única solució, que és
el que precisament es necessita en l’aproximació de Pittsburgh.
Com es pot entreveure els sistema que en resultarà estarà dividit en dues etapes
diferenciades: una d’entrenament, i una de test.
Tot seguit es realitzarà una breu descripció de les principals caracterı́stiques comunes
que presenten els sistemes pertanyents a l’enfocament de Pittsburgh. Malgrat cada
algorisme presenta les seves particularitats, tots ells parteixen de la mateixa base comuna.
Concretament, a continuació es revisaran tres punts: la representació, l’avaluació, i els
operadors genètics.
4.6.1 Representació
C : (S = R ∧ J = R) ∨ (S = T ∧ H = B)
on {S, J, H} són els possibles atributs, aixı́ com {R, T , B} els posibles valors que poden
adoptar cadascun d’ells, una regla es pot representar com:
(100|100|111 ∨ 010|111|001)
Per cada test a realitzar sobre un atribut es codifica amb un 1 si el valor corresponent
ha d’ésser present (l’ordre amb que apareixen el valor dels atributs és important), o amb
0 si no ha d’apareixer. Un test sobre un atribut amb tot els tests a 1 indica que l’atribut
pot adoptar qualsevol valor. Per contra un test amb tots els tests a 0 representa que no
es pot satisfer mai, donant lloc a una regla que mai serà emprada.
Aquesta representació pot ser fàcilment estesa per tractar problemes de classificació
amb més d’una classe. Concretament, això es pot assolir codificant binàriament, dins
de cada regla,el concepte/classe que s’està descrivint explı́citament. Per intentar aclarir
aquest punt estendrem l’exemple anterior.
60 Computació Evolutiva
4.6.2 Avaluació
L’avaluació d’un individu es fa mesurant l’eficiència del conjunt de regles que descriu
sobre el conjunt d’instàncies d’entrenament. Normalment es tenen en compte els criteris
de completesa (exemples positius coberts), consistència (no cobrir cap exemple negatiu)
i simplicitat (en alguns casos, es poden afavorir els conjunts de regles mes reduı̈ts).
Una formulació emprada tradicionalment per calcular l’avaluació dels individus en
un enfocament de Pittsburgh [De Jong and Spears, 1991, Spears et al., 1993], que és:
c 2
fitness (indi) = (4.1)
t
Per exemple, existeixen operadors que per poder realitzar l’intercanvi d’informació
entre cromosomes realitzen una alineació de les regles abans de l’intercanvi (degut
a la mida variable dels individus) [Michalewicz, 1992].
Disseny d’operadors especı́fics: Els diferents sistemes apareguts sota aquest enfoca-
ment han aportat una gran varietat d’operadors diferents. Per exemple, hi ha
sistemes [Janikow, 1993] que defineixen meta-operadors que actuen a varis nivells
(a nivell de cromosoma, a nivell de regla, i a nivell d’atribut). Aquest operadors
són el resultat d’aplicar tècniques de generalització i especialització provinents de
l’aprenentatge inductiu. El problema d’aquest tipus d’aproximació sol néixer de la
complexitat d’ajustar la gran quantitat de paràmetres que se’n deriven.
Tot seguit es passarà descriure alguns del sistemes més representatius de l’enfoca-
ment de Pittsburgh. Per cada sistema se’n farà una breu revisió, aixı́ com es destacaran
algunes de les seves principals peculiaritats.
4.6.4 GABIL
Representació
En aquest apartat es revisarà la representació, aixı́ com la seva codificació, del conjunt
de regles per part dels individus. Aquesta es podria resumir de la següent forma.
• Cada individu és un conjunt de regles de classificació. Per tant, un individu és del
tipus: indi = {r1 ∨ r2... ∨ rn}.
– la part esquerra que conté la conjunció dels tests sobre els atributs disponibles.
– la part dreta que indica el concepte associat.
• El test de cada atribut es representa amb una cadena binària de longitud fixa, de
longitud igual al nombre de valors possibles d’aquell atribut. De fet, el test per
cada atribut és una disjunció entre tots els possibles valors que pot prendre.
62 Computació Evolutiva
Per intentar aclarir aquesta descripció, tot seguit es presenta un exemple il·lustratiu
de com funcionaria aquesta representació.
Exemple 16 Es vol expressar regles per un problema de classificació definit sobre dos
atributs { Color, Forma }. Concretament, la informació del problema es pot resumir
dient que:
mide) llavors c0
si (Color=vermell) i (Forma=cub o pira
Es bo tornar a esmentar en aquest punt que un attribut amb tot 1 és una atribut
irrellevant ja que qualsevol possible valor satisfà els tests. D’igual forma es permeten
patrons amb tot 0, indicant que els tests no són satisfets per cap possible valor. Tot i
que aquest tipus de patrons no tenen sentit en la descripció final del concepte, poden
ser útils pel procés evolutiu que duu a terme l’algorisme genètic.
La part dreta d’una regla és el concepte/classe al qual pertany la mateixa. Això
indica que aquest llenguatge de regles defineix un sistema estı́mul-resposta. És a dir, el
sistema quan se l’hi ensenya una instància respon amb la classe associada a la regle que
s’ha activat.
Per codificar un conjunt de regles, sols es necessari anar concatenant diferents regles,
formant una tira de bits de longitud multiple a la d’una regla. La longitud de la tira és
variable en funció del nombre de regles que codifica.
Avaluació
Operadors genètics
Els operadors genètics aplicats són els clàssics, amb algunes lleugeres modificacions per
adaptar-ho a la mida variable dels individus que conformen la població.
El creuament entre individus es fa seleccionant 2 punts de tall. Però al contrari del Creuament
crossover amb 2 punts de tall clàssic, aquı́ apareixen 4 graus de llibertat, enlloc de 2.
És a dir, en escollir dos punts de tall per a un pare, podem no conservar-se els mateixos
per l’altre pare, donat que potser no existeixen. Per tant, cal seleccionar de nou 2 punts
de tall per l’altre pare. L’únic requeriment és que els punts de tall siguin semànticament
correctes. És a dir, si un punt de tall està entre dues regles, en l’altre pare també. Per
il·lustrar-ne el funcinonament, tot seguit s’en presenta un exemple.
ind0 : 111|01001|0|101|01101|1
ind1 : 001|11111|1|010|11000|0
Es poden definir els quatre punts de tall necessaris pel creuament, tenint present les
restriccions semàntiques corresponents, tal i com es mostra a continuació,
Els punts de tall apareixen indicats pel sı́mbol ⋄. Com es pot apreciar el primer punt
de tall en ambdós individus correspon a dos punts semànticament idèntics. És a dir,
ambdós tallen la regla pel primer atribut en el test que correspon al seu tercer valor. Pel
que fa al segon punt de tall d’ambdós individus apareix a la part final d’una regla. Un
cop definits aquests punts de tall, es procedeix a intercanviar el material genètic comprès
entre els dos punts de tall d’ambdós individus. Els individus resultants d’aquest procés
es mostren a continuació:
ind0 : 111|01001|0|101|11111|1|010|11000|0
ind1 : 001|01101|1
Una de les peculiaritats de l’operador de creuament emprat pel GABIL és la seva
capacitat per explorar conjunts de regles de diferents mides. Tal i com es pot apreciar
a l’exemple 17, l’operador, a més a més de recombinar el material genètic, modifica la
longitud dels individus en funció dels punts de tall que han estat seleccionats.
Pel que fa referència a l’operador de mutació és l’habitual d’inversió de bit. A Mutació
diferència de l’operador de creuament, no s’ha d’alterar-ne la definició, ja que consisteix
en invertir el valor d’un determinar gen en funció d’una certa probabilitat. Com es pot
apreciar, aquesta aproximació funciona tant per individus de mida fixa com de mida
variable.
64 Computació Evolutiva
El GABL és l’algorisme genètic que, donat un conjunt d’instàncies, troba el conjunt de
regles que classifiquen els exemples. Aquest algorisme està pensat per funcionar en dues
modalitats diferenciades. La primera és d’entrenament, en la qual s’obtenen les regles
que descriuen les instàncies presentades; la segon, o de test, es centra en l’explotació de
les regles obtingudes, fent-les servir per classificar exemples no vistos anteriorment.
1. Es comença amb una única instància i s’usa el GABL per trobar el conjunt de
regles que la classifiquen correctament. Aquesta instància s’afegeix al conjunt
d’entrenament.
2. S’agafa una nova instància proveı̈da per l’entorn, aixı́ com el millor conjunt de
regles (individu) que ha trobat el GABL i s’utilitza per predir aquest nou exemple.
La instància s’afegeix al conjunt d’entrenament.
3. Si la predicció és errònia, s’aplica de nou el GABL per trobar un nou conjunt
de regles que cobreixi el màxim nombre possible d’instàncies emmagatzemades al
conjunt d’entrenament.
5. Si l’entorn encara pot proporcionar més instàncies es torna al pas 2. En cas contrari
el procés finalitza.
En aquest cas, cada instància actua com a entrenament i test. Per tant, l’avaluació
del conjunt de regles es fa sobre tots els exemples disponibles, a diferència del GABL
simple que només ho fa sobre el conjunt d’entrenament.
4.6.5 GIL
El sistema GIL (Genetic Inductive Learning) [Janikow, 1993] és un altre dels precursor
de l’enfocament de Pittsburgh. Va ser dissenyat per l’aprenentatge d’un únic i concep-
te. Sorgeix com una aproximació hı́brida a l’aprenentatge emprant algorismes genètics
on posseeix operadors provinents de l’aprenentatge inductiu. Els operadors incorporen
tècniques de generalització i especialització àmpliament estudiades en l’aprenentatge
inductiu.
4.6 Enfocament de Pittsburgh 65
Representació
La representació emprada pel GIL és pràcticament idèntica que la explicada a la secció
4.6.4 pel GABIL. L’única diferència significativa rau en el fet que el GIL està pensat
per l’aprenentatge d’un únic concepte. Aquest fet, simplifica les regles a representar,
ja que es pot suprimir la part en que es descriu la classe/concepte a aprendre. Això es
realitza mitjançant l’assumpció d’un món tancat, on tota instància no coberta pertany
a la negació del concepte.
Avaluació
En aquest apartat tampoc difereix excessivament de la proposta feta pel GABIL. Con-
tinua basant la funció d’avaluació dels individus en funció del seu percentatge d’encert
resolent instàncies d’entrenament.
Operadors genètics
Intercanvis de regles: s’intercanvien les regles entre dos individus diferents. Per exem-
ple els dos individus següents,
h10000|100 ∨ 00100|111i i h10011|110 ∨ 01111|001i
poden produir la descendència:
h10000|100 ∨ 10011|110i i h00100|111 ∨ 01111|001i
Còpia de regles: les regles es copien de forma aleatòria d’un pare a un altre. Per
exemple, donats el pares següents:
h10000|100 ∨ 00100|111i i h10011|110 ∨ 01111|001i
es pot copiar una una rega del segon pare al primer quedant
h10000|100 ∨ 00100|111 ∨ 10011|110i i h10011|110 ∨ 01111|001i
Nou event positiu: aquest és un operador unari que donat un pare i un event positiu
(instància representativa del concepte a aprendre), afegeix una nova regla en el
pare que incorpora aquell fet. Un exemple seria el donat per l’individu
66 Computació Evolutiva
Eliminació de regles: elimina un subconjunt aleatori de regles d’un individu. Per exem-
ple, donat l’individu
h10000|100 ∨ 00100|111 ∨ 11010|010 ∨ 10011|110i
es poden eliminar dues regles a l’atzar, quedant un individu com el següent:
h10000|100 ∨ 11010|010i
Regla El segon tipus d’operadors genètics són aquells que s’apliquen a nivell de regla.
Aquest operadors ja no actuen sobre tota la informació codificada en el cromosoma de
l’individu, sinó que es centren en les regles que l’individu codifica. Aquests operadors es
poden resumir tal i com es fa a continuació.
Fragmentació de regles: aquest operador divideix una regla en dues. Donada la regla
00110|111
aquesta es pot dividir a l’atzar pel segon atribut, generant dues regles diferents,
tal i com es mostra tot seguit
00110|100 ∨ 00110|011
4.6 Enfocament de Pittsburgh 67
Selector drop: operador que actua sobre una passat els bits d’un atribut, triat a l’atzar,
a 1. Amb això s’aconsegueix que l’atribut esdevingui irrellevant per la regla. Un
exemple seria el següent. Donada una regla com
00110|100
s’escull un atribut a l’atzar i es converteix en irrellevant, tal i com es pot apreciar
tot seguit
11111|100
Intro-Selector: operador invers a l’anterior. S’aplica sobre un atribut que té tot 1s i
canvia alguns dels seus bits a 0s. Un exemple podria ser el següent. Donada la
regla
11111|100
s’escull l’atribut irrellevant i canvien alguns dels bits de 1 a 0, obtenint
10101|100
Nou event negatiu: canvia la definició d’una regla per tal que no cobreixi una instància
que no pertany al concepte que s’està aprenent. Un exemple seria el donat per la
regla
10011|111
i l’event
00010|001
Aquest produeix que la regla presenti la següent forma:
10011|110
Finalment, l’últim tipus d’operadors són aquells que actuen a nivell d’atribut. Aquest Atribut
operadors són els de nivell més elemental, els quals presenten força similituds amb els
operadors de mutació tradicionals dels algorismes genètics. Aquests tres operadors es
poden resumir tal i com es fa a continuació.
Extensió de referència: estén el domini d’un atribut, afegint-li valors addicionals (és
a dir, passant bits a 1).
Restricció de referència: operador invers a l’anterior. Elimina valors d’un atribut (can-
via de 1 a 0).
El GIL és un sistema complex perquè hi ha molts paràmetres a ajustar, com per
exemple les probabilitats sota les qual s’aplicarà cada operador. Les probabilitats de cada
operador es calculen amb 2 paràmetres: l’equilibri entre generalització i especialització, i
la mesura (dinàmica) de la cobertura (nombre d’instàncies classificades) [Janikow, 1993].
68 Computació Evolutiva
D’ençà l’aparició del GABIL i el GIL han aparegut altres sistemes que s’han inspirat en
aquesta lı́nia de treball. En aquest apartat es farà una breu revisió d’alguns d’ells, que
per un motiu o altre han estat representatius. Alguns d’ells, presenten alguna influència
provinent de l’enfocament de Michigan. Malgrat això, continuen mantenint les idees
inicials presents als sistemes de Pittsburgh.
El COGIN [Greene and Smith, 1993], coetani del GIL fou un dels primers sistemes
que fou especı́ficament dissenyat per la resolució de problemes de classificació n-aris.
Concretament, el COGIN es capaç de fer evolucionar poblacions de regles emprant un
model competitiu basat en el nombre d’instàncies classificades. Per la seva banda, el
REGAL [Giordana and Neri, 1995] presenta un esquema força similar al COGIN, ja que
també està pensat per l’aprenentatge en problemes de classificació n-aris. Introdueix un
operador de selecció basat en sufragi universal, on diferents regles tendeixen a classificar
diferents conjunts d’entrenament que solucionen globalment el problema de classificació.
Per la seva banda, el GA-MINER [Flockhart, 1995] és un sistema dissenyat pel des-
cobriment de patrons dins de bases de dades. Aquest fet l’allunya un xic dels problemes
de classificació pròpiament dits, acostant-lo cap a problemes d’obtenció d’associacions
entre dades de la base de dades explorada. Cada individu de la població descriu una
única regla expressada en forma normal disjuntiva. Malgrat pugui semblar proper a l’en-
focament de Michigan, cada regla és avaluada independentment de la resta de regles
de la població. La formació de conjunts de regles es realitza emprant una estratègia
heurı́stica incremental. Com que l’objectiu el GA-NINER és descobrir associacions, on
el percentatge d’encert global passa a formar part d’un segon pla, no quedant garantida
pel sistema.
Una de les principals problemàtiques que presenten aquests sistemes és l’elevat cost
computacional que comporten. Per aquest motiu, s’ha buscat en la paral·lelització una
eina que permeti reduir el temps de procés necessari per arribar a una solució. Un
exemple en són els esforços duts a terme per assolir la paral·lelització eficient del GA-
MINER [Flockhart, 1995, Araujo et al., 2000].
Com es pot apreciar en aquest tipus de proposta es busca paral·lelitzar un algorismes
seqüencial. Aquest no ha estat el punt de partida del GALE [Llorà and Garrell, 2000a],
el qual presenta directament un model totalment paral·lel de classificació. Aquest es
basa en l’ús de paral·lelisme de gra fi, explotant la localitat inherent en les relacions
que s’estableixen en malles 2D. També difereix, entre d’altres, de la resta de membres
de l’enfocament de Pittsburgh, en que és un model independent de la representació del
coneixement emprada. Tal i com s’exposarà més endavant, no es limita a obtenir con-
junts de regles, sinó que també es capaç de treballar, per exemple, amb representacions
basades en instàncies o arbres.
4.7 Enfocament de Michigan 69
L’aproximació que es coneix com a enfocament de Michigan , sorgeix d’un filosofia clara-
ment diferenciada de l’enfocament de Pittsburgh. En aquesta proposta d’aprenentatge
de regles, l’algorisme genètic pren un paper més acotat. És a dir, si abans l’algorisme
genètic era el motor principal de l’aprenentatge, en aquesta aproximació sols pren el
paper d’introduir noves regles, explorant aixı́ l’espai de possibles solucions (regles). Dit
d’una altra forma, l’algorisme genètic és una part que forma un sistema més ampli. Els
algorismes que pertanyen a aquest tipus de paradigma, dins la comunitat de computació
evolutiva, reben el nom genèric de sistema classificador (classifier system).
Esquema
• Un algorisme genètic.
Detectors: els detectors representen els ‘sensors’ del sistema classificador. Es podria fer el
sı́mil dient que són els ulls, l’oı̈de, . . . que recullen la informació de l’entorn en el
qual es troba immers el sistema classificador o individu que pretén dur a terme el
procés d’aprenentatge.
70 Computació Evolutiva
Sistema de regles
Satisfà
Condició Missatge
Llista de Llista de
missatge regles
Envia
Algorisme genètic
Entorn
Efectors: els efectors són el motor d’interacció amb l’entorn. Fent una analogia, són les mans
i els peus del sistema classificador, i per tant són els responsables de proporcionar
una resposta. Aquesta resposta s’origina de la interacció entre el coneixement
adquirit, representat per les regles de la llista de regles, i els estı́muls provinents
del medi proporcionats pels detectors.
Entorn: l’entorn representa el medi en el qual es mou el sistema classificador. És el conte-
nidor implı́cit dels conceptes que el sistema classificador ha d’aprendre. Aquests
conceptes són transmesos en forma d’estı́muls (missatges) captats pel detectors.
Per altra banda, el medi és capaç d’aportar al sistema recompenses per premiar
l’aprenentatge correcte dels conceptes, fet que es fa patent a través de les accions
que emprenen els efectors.
Un cop comentats els conceptes bàsics que baralla un sistema classificador, es passarà
a comentar els principals elements que els composen.
Sistema de regles
El sistema de regles és aquella part del sistema classificador encarregada de l’emma-
gatzamatge dels conceptes que el sistema ha anat adquirint. Està composat per dos
elements complementaris com són:
1. Llista de missatges
2. Llista de regles
Si es continua amb les analogies, es podria considerar la llista de regles com el co-
neixement que possibilitarà la capacitat de raonar; mentre que per la seva banda la llista
de missatges conté la informació que es genera en el procés de raonament, barrejant el
coneixement intern (missatges enviats per l’activació de regles) i la informació provinent
de l’exterior (missatges dels detectors). Tot seguit es comentarà aquests dos elements
amb més detall.
Tal i com el seu nom indica, la llista de missatges és sols això, una llista. La funció Llista de mis-
d’aquesta llista és doble. Per una banda recull la informació provinent de l’exterior, és satges
a dir missatges enviats pels detectors. Per altra, la llista també conté la informació
generada pel raonament en curs. Dit d’una altra forma, recull els missatges enviats com
a resultat de l’activació d’una regla que ha guanyat en l’etapa de repartiment de crèdit.
Els missatge que es maneguen a la llista presenta una estructura que correspon a:
{ 0,1 }l
s’ha extès a la resta de sistemes classificadors. Una regla (o classificador) està composada
per dues parts, la condició i el missatge associat. Resumint:
1. La condició (gràfica 4.3) és defineix sobre l’alfabet format per {0,1,#}l. Tot
seguit es pot trobar un exemple que il·lustra el funcionament d’aquest tipus de
condicions.
2. Els missatges es defineixen, tal i com s’ha comentat anteriorment, sobre l’alfabet
definit per {0, 1}l.
La llista de regles disposa d’un espai finit, motiu pel qual sols pot arribar a contenir
n regles. A diferència de l’enfocament de Pittsburgh, un individu sobre el qual actuarà
l’algorisme genètic, correspon a una única regla. Amb aquesta aproximació, es torna a
treballar per tant amb individus de longitud fixa.
101010
001110
010001
Per altra banda, alguns exemples possibles de regles es poden trobar a continuació.
##10##:010001
####11:101101
0100##:110111
101010 −→ ##10##:010001 −→
010001 −→ 0100##:110111 −→
110111 −→ ####11:101101 −→
101101
Un cop introduit el missatge 101010 l’única condició que s’activa, és a dir, que la con-
difció satisfà sı́mbol a sı́mbol el missatge és ##10##:010001. Aquesta activació genera
que el missatge de la regla 010001 sigui abocat a la llista de missatges, recomençant el
procés. L’encadenament de regles finalitza amb el missatge 101101, el qual no es capaç
d’activar cap de les regles disponibles.
4.7 Enfocament de Michigan 73
Repartiment de crèdit
La principal finalitat del repartiment de crèdit no és altra que la d’assignar a cada regla
existent a la llista una avaluació. Això és degut a que un individu és una única regla,
fet que impossibilita l’ús de l’esquema tradicional d’avaluació. La finalitat d’aquesta
avaluació (també anomenada força) és la de permetre distingir quines regles són útils
dins el conjunt total de regles, fet que permetrà implementar mecanismes de pressió
selectiva dins el conjunt de regles. Aquesta messura és imprescindible per poder dur
a terme l’exploració de l’espai de solucions per part de l’algorisme genètic. Per altra
banda, la proposta realitzada per John H. Holland basa aquesta mesura en la predicció
de la recompensa que una regla és capaç d’obtenir de l’entorn.
El Bucket Brigate Algorithm (o BBA) es basa en una filosofia d’economia de mercat,
on el que es compra i es ven és informació. Concretament, el que es compra i ven són els
missatges de la llista, fet que permetria a una regla activar-se i vendre el seu missatge
a través de la llista. El funcionament de l’algorisme es pot descomposar en les següents
etapes:
• La subasta (o auction)
Una de les principals peculiaritats del BBA consisteix en el fet que permet l’activació
de multiples regles alhora. És a dir, donat un missatge de la llista és possible que aquest
activi més d’un classificador, o el que és el mateix, que la condició de les regles siguin
satistefes per missatges de la llista. Dit d’una altre forma, els 0 i 1 de les condicions
corresponen en lloc als del missatge, mentre que els # de la condició accepten tant 0
o 1 en la possició corresponent del missatge, és a dir qualsevol valor. Aquesta polı́tica
d’activació provoca que pugui arribar a existir més d’un classificador que es trobi en
condicions d’enviar el seu missatge. Aquı́ és on es veu la necessitat d’introduir algun
mecanisme que permeti dir qui és activat, mecanisme que es coneix com a subasta.
La subasta consisteix en que cada classificador realitza una oferta per ‘comprar’ el Subasta
missatge que l’ha activat. Aquesta oferta és funció de la seva força [Holland, 1975,
Holland and Reitman, 1978]. Els guanyador/s de la subasta seran els que enviaran els
seus missatges i entren a la següent etapa, la casa de compensació. Posteriorment és
descriurà que s’entén per enviar els seus missatges.
La casa de compensació consisteix, senzillament, en pagar les ofertes realitzades pels Casa de com-
classificadors guanyadors de la subasta. És a dir, aquests classificadors pagan el valor pensació
ofert als classificadors responsables de l’enviació del missatge que els ha activat a la
llista de missatges. És a dir, decrementa la força en funció el valor de la oferta realizada,
passant aquesta quantitat al classificador responsable de dipositar el missatge a la llista.
Arribats a aquest punt i per intentar aclarir-ho un xic es comentarà el funcionament
conjunt del sistema de regles i la seva interacció amb el BBA. Els principals punts del
funcionament conjunt del BBA el sistema de regles correspondrien a:
74 Computació Evolutiva
4. Els classificadors guanyadors (si n’hi ha) paguen l’oferta realitzada a la subasta a
través de la casa de compensació.
Cal destacar que s’envien als dos llocs. Això és degut a que la principal finalitat que
es persegueix (veure [Holland, 1975]) és l’aprenentage de desicions seqüencials.
6. Aquest procés es repeteix fins que s’assoleix una recompensa provinent del mitjà,
o bé s’ha esgotat el nombre màxim d’iteracions que pot realitzar el BBA1 .
Algorisme genètic
2. Recombinació de solucions
(a) Creuament
(b) Mutació
3. Inicialització
4. Selecció de classificadors
Abans de tirar endavant cal destacar que l’algorisme genètic ja no és considerat com
un procés iteratiu, sinó que ara és un conjunt d’etapes (selecció, creuament, mutació i
reemplaçament) l’execució de les quals es realitza quan el rendiment del sistema classifi-
cador comença a caure. Conseqüentment aquestes etapes s’executaran entre activacions
del BBA. Tot seguit es passarà a comentar com afecta a la implementació d’un algorisme
genètic la seva introducció en un sistema classificador.
2. Recombinació de solucions
Com s’ha esmentat anteriorment, la codificació dels classificadors en cromosomes
de longitud fixa simplifica la feina de la recombinació de les regles. Això és degut
al fet que es pot continuar mantenint els operadors tradicionals de creuament i
mutació dins l’algorisme genètic. Tot seguit es comentaran breument cadascun
d’ells.
(a) Creuament
L’operador de creuament utilitzat és el tradicional dels algorismes genètics.
Aquest sols consisteix en triar un punt de tall aleatori en els cromosomes, i
intercanviar la part final del material genètic.
(b) Mutació
L’operador de mutació que es proposa és una variant del clàssic, que inver-
teix un bit seleccionat a l’atzar dins el cromosoma. La definició clàssica,
sols és aplicable sobre el missatge del classificador, el qual es troba definit
sobre l’alfabet binari {0,1}. Per contra en les condicions es defineixen sobre
l’alfabet és ternari {0,1,#}.
Aquest fet no tindria més trascendència si es prengués una probabilitat de
substitució ps = 13 per tot sı́mbol de l’alfabet. Aquesta aproximació és co-
neixcom a mutació natural (o natural mutation). Aquesta no és l’única
76 Computació Evolutiva
3. Inicialització
Degut a la nova concepció de l’algorisme genètic aquesta etapa inicial, ha pròpiament
desaparegut. L’única inicialització que es duu a terme és la llista de regles inicials
que manipula el sistema classificador. Per fer-ho es prenen en consideració les
problemàtiques presentades en l’etapa de mutació. Aquesta inicialització sol ser
aleatòria emprant les probabilitats d’aparició comentades anteriorment, o bé per
el que s’anomena covering [Wilson, 1995]. Aquesta segona es basa en la creació
incremental de regles. Si no existeix cap regla que s’activi per un determinat mis-
satge enviat pels detectors, aquesta es genera amb una condició que correspon
al misatge en el qual s’han subtituits aleatoriament algunes posicions per #; per
contra, el missatge de la regla es construeix aleatoriament.
4. Selecció de classificadors
Aquesta etapa és una de les que també s’ha vist modificada. La finalitat de
l’algorisme genètics és introduir noves regles en la població de classificadors. El
treball dels classificadors és col·lectiu, és a dir, el coneixement que es pretén
adquirir, normalment, no es pot representar amb un únic classificador, sinó que
necessita el treball cooperatiu de més d’un. Algunes consideracions que s’han de
tenir present sobre l’algorisme genètic són, entre d’altres:
• Cerca la millor solució, o el que és el mateix en aquest cas, el millor clas-
sificador. Pel comentat anteriorment, això no és el que interesa en aquest
problema.
• Per altra banda, també seria desitjable que la llista de classificadors no possei-
xi elements repetits, fet que no ens és excessivament útil en aquest problema.
Tots aquests punts fan plantejar si el que realment es necessita és manipular tota
la població de classificadors cada cop que es vol executar l’algorisme genètic. Pel
que s’ha comentat anteriorment sembla que seria recomenable treballar amb un
subconjunt reduit de la mateixa. Per aquesta finalitat John H. Holland i David
E. Goldberg proposen emprar una adaptació d’una idea proposa per Keneth A.
De Jong [De Jong, 1975] en els seu estudis sobre optimització de funcions ma-
temàtiques anomenat espai generacional (o generation gap) que ells renombraran
com selecció proporcional (o selection proportion).
La idea inicial de De Jong consisteix en definir un paràmetre G el qual indica la
proporció d’individus que seran triats per conformar la població sobre la qual es
4.7 Enfocament de Michigan 77
5. Problemàtica inherent
Com s’ha anat veient existeix una necessitat clara de mantenir la diversitat de
classificadors dins la llista. Per aquest motiu és necessari introduir alguna tècnica
d’especiació dins de l’algorisme genètic cara a garantir la diversitat d’individus a
la població. La proposta original de Holland passa per la reintroducció acurada
dels nous classificadors dins la població inicial. Aquesta tècnica es coneix pel nom
de crowding, la qual es basa en definir una polı́tica de reemplaçament, és a dir
com i quins individus de la llista de classificadors inicial seran substituits pels nous
classificadors.
De Jong [De Jong, 1975], realitza una generalització del mètode de preselecció
proposat per Cavicchio que fou la primera aproximació al crowding. El mètode
consisteix en seleccionar, per cada classificador generat en la recombinació, una
subpoblació de CF individus de la llista original, on CF és una constant relati-
vament petita, usualment 3. Un cop establerta la subploblació, es substitueix el
classificador pertanyent a la subpoblació seleccionada, que més seblant sigui2 al
classificador fill, pel descendent a reintroduir a la població inicial.
En aquest cas, la competència per l’espai continua existint, però ara aquesta no
es dona en un nucli familiar (com passa amb la tècnica de presselecció), sinó
en una subpoblació escollida a l’atzar. Aquest mètode pot presentar problemes
de rendiment i convergència com els comentats a [Goldberg, 1989]. Posterior-
ment han aparegut diverses tècniques d’especiació, com per exemple el sharing
[Goldberg, 1989].
S’ha comprobat que existeixen certes situcions en les quals els sistemes classificadors
experimenten certes dificultats [Golberg et al., 1992b]. Existeixen gran diversitat de
propostes per esmenar aquests aspectes, total o parcialment. Alguns exemples es poden
trobar a [Goldberg, 1989, Shu and Shaffer, 1991, Golberg and Wang, 1997] Alguns dels
principals punts es resumeixen a continuació:
2
Distància de Hamming.
78 Computació Evolutiva
• Optimització multinodal
• Deceptive functions
• Falta de separació entre jerarquies
solució al final de l’execució. Per contra, el que es vol obtenir en un sistema clas-
sificador és que en tot moment l’algorisme genètic sigui capaç de dur a terme la
seva feina correctament incrementant el rendiment global del sistema. Això, degut
al caracter intrı́nsec de l’algorisme, és una tasca complexa, ja que el rendiment de
tota la població no té per què millorar després de l’aplicació de l’algorisme genètic,
i inclós pot empitjorar puntualment. Dins d’aquest apartat es podria destacar com
a principals problemes els següents [Golberg et al., 1992b]:
• Optimització multimodal
L’algorisme genètic s’ha d’enfrontar al fet d’haver de mantenir un conjunt
de classificadors (individus). D’aquı́ a que es proposi l’analogia amb els pro-
blemes que presenta l’optimització de funcions multinodals. És a dir, s’ha
d’introduir dins l’algorisme genètic tècniques d’especiació que en permetin
la co-evolució. L’objectiu es permetre que diferents classificadors convisquin
al llarg de l’evolució dins la població. Algunes de les tècniques més em-
prades són el crowding i el sharing [Goldberg, 1989]. La tria de la tècnica
pot esbiaxar de forma important el comportament del sistema classificador
[Golberg et al., 1992b].
• Falta de separació entre jerarquies
Degut a la codificació empreda, i a la proposta de jerarquies forçades, es pot
veure els classificadors altament especı́fics com a implantacions d’exepcions
dins el coneixement emmagatzemat pel sistema classificador. Per contra
quan més general sigui més casos abarcarà. Per exemple:
cls1 #######:0
cls2 ###0###:1
Com es pot apreciar les diferències entre els dos són mı́nimes, però tot i aixı́ re-
presenten universos totalment diferenciats. Si ara es suposa que s’empra una
tècnica d’especiació com per exemple crowding [Deb and Goldberg, 1989],
aquesta falta de separació entre classificadors pot portar a la presa de de-
cisions erronees per part del sistema classificador. Si ara es creuen els dos
classificadors s’obtenen dos classificadors fills amb identiques condicions però
amb una inversió de classes. Degut a la falta de separació el sistema podria
patir una caiguda del rendiment global del sistema classificador. Aquest punt
s’agreuja més quan un classificador és força general, degut a l’elevat nombre
d’exemples que descriu.
• Deceptive functions
Altres direccions proposen buscar mecanismes (operadors genètics) que su-
portin la problemàtica que sorgeix en l’optimizació multinodal de funcions les
quals presenten dos màxims globals en els extrems dels intervals d’estudi, i un
nombre elevat de màxims locals en la seva part central. D’aquı́ novament sur-
geix una certa connexió entre optimització eficient i els sitemes classificadors
emprant algorismes genètics [Deb et al., 1992, Deb and Goldberg, 1994].
80 Computació Evolutiva
4.7.3 SCS
El SCS (Simple Classifier System) [Goldberg, 1989] és la simplificació que Goldberg
proposa reprecte el model original de Holland. Malgrat les modificacions, que tot seguit
es descriuran, l’arquitectura bàsica del SCS és equivalent a la presentada en la descripció
anterior. És a dir, els elements que conformen el SCS són els mateixos que apareixien
en el model de sistema classificador originals.
El principal motor que ha mogut la simplificació ha estat la de convertir el sistema
classificador de Holland en un model estı́mul-resposta. Dit d’una altra forma, el que es
busca és que el sistema es comporti de la següent forma: donada una entrada (missatge
suministrat pel medi) el SCS proporcioni directament la classe a la qual pertany el
missatge d’entrada. Com es pot comprovar aquesta proposta difereix de la filosofia
inicial dels sistemes classificadors, que estaven pensats per l’aprenentatge de desicions
seqüencials, en que s’ha simplificat pensant en problemes de classificació. Aquesta
simplificació del model genera l’aparició de modificicacions al llarg de totes les etapes
que composen el sistema classificador. Tot seguit es pot un resum de les modificacions
que es proposen.
Consideracions generals
1. Detectors
Els detectors presenten la mateixa construcció que posseı̈en en el model de Holland.
És a dir, continuen essent els responsables de la transformació de la informació
del medi en missatges interns que el classificador es capaç de manipular.
2. Efectors
La concepció dels efectors s’ha vist simplificada. Això és degut a que ara sols ha
de translladar a l’entorn la resposta associada a l’estı́mul d’entrada (classe a la
qual pertany l’exemple). Aquest fet provoca que els missatges enviats als efectors
no siguin, normalment, de la mateixa mida que els rebuts dels detectors. Aquest
fet condicionarà, més endavant el funcionament tradicional del sisteme de regles.
3. Entorn
En aquest model estı́mul-resposta la feina que ha de dur a terme l’entorn és força
més sencilla que en la proposta de Holland. Ara l’entorn sols ha de comprovar
que la classe que proporciona el SCS, com a resposta d’un estı́mul d’entrada,
correspon realment amb la classificació correcta de la mostra. Si això succeix, el
medi proporcionarà la recompensa adient al SCS.
4.7 Enfocament de Michigan 81
Sistema de regles
Degut a les simplificacions que s’estan proposant, el sistema de regles també es veurà
sensiblement modificat. La primera gran diferència apareix en la impossibilitat de rea-
litzar la realimentació dels missatges generats per l’activació de regles. Això és degut,
principalment, al fet de que els missatges generats pels detectors són diferents dels
consumits pels efectors. On aquest fet impedirà mantenir la realimentació interna de
missatges. La desaparició de la realimentació de missatges no és preocupant. Això és
afirmable degut a que ja no s’està cercan l’aprenentage de decisions seqüencials, sinó
que el que es cerca és apendre a associar respostes immediates als estı́muls d’entrada.
Donades les consideracions anteriors, tot seguit es comentaran com afecten interna-
ment al sistema de regles.
1. Llista de missatges
Una de les restriccions que imposa el model estı́mul-resposta que s’ha triat és el
fet que donat un missatge d’entrada es genera una resposta immediata. Si això
s’ajunta amb el fet que no existeix realimentació de missatges, es pot deduir que
la longitud de la llista de missatges es veu reduı̈da a l’unitat. És a dir, en la llista
de missatges sols existeix un únic missatge: el d’entrada.
2. Llista de regles
Degut a tots els factors vistos anteriorment, també s’hauran d’introduir modifica-
cions en el que és una regla. En la proposta de Goldberg una regla esdevé:
l’opció de recompensar a l’anterior. Per altra banda, en aquells problemes que la classifi-
cació sols depengui d’ella mateixa, independentment del que hagi succeı̈t anteriorment,
l’opció no serà massa útil, on es podrà prescindir d’ella.
Algorisme Genètic
4.7.4 XCS
El sistema classificador XCS representa l’estat de l’art dels classificadors basats en l’enfo-
cament de Michigan. Presentat per primer cop a [Wilson, 1995], i posteriorment ampliat
a [Wilson, 1996, Wilson, 1998, Kovacs, 1999], el XCS busca adreçar els principals pro-
blemes que pateixen els sistemes classificadors, especialment quan aquest s’apliquen a
tasques de mineria de dades com la classificació.
A l’igual que la resta de sistemes classificadors vistos anteriorment, el XCS es basa
en l’interacció amb l’entorn. Tot seguit es farà una revisió del sistema, aixı́ com de la
nomenclatura que s’empra en aquest sistema. L’entorn, tal i com passa amb la resta
de sistemes classificadors, proporciona instàncies σ codificades com a tires de bits de
longitud l. És a dir, σ ∈ {0, 1}l. Per altra banda, les accions α ∈ α1, _,αn són executades
a l’entorn. Si es tracta d’un problema de classificació α són les diferents classes del
problema representat per l’entorn. Finalment, l’entorn proporciona una recompensa en
forma de valor escalar p ∈ ℜ que mesura el grau de correctesa o qualitat de la última
acció duta a terme.
El XCS, a l’igual que la resta de sistemes classificadors utilitza una població [P]
Classificador de classificador de longitud fixa n. L’estructura dels classificadors és molt semblant
a la utilitzada pel SCS. La part de la condició C especifica quan el classificador és
aplicable. Aquesta correspon cadena sobre l’alfabet ternari {0, 1, #} de longitud l, és dir
C ∈ {0, 1, #}l. Pel que fa a la part de l’acció/classificació A pot especificar qualsevol
de les accions de α que pot executar l’entorn, és a dir A ∈ α. Aquesta no és la
única forma de codificar els els classificadors que es pot trobar a la bibliografia. Per
exemple a [Wilson, 1999a] s’introdueix una codificació dels testos dels atributs basada
en nombres reals, enlloc de l’habitual test binari. També hi ha aproximacions basades
en codificacions enteres per mineria de dades obliqües [Wilson, 2000]. Altres autors
han introduı̈t codificacions basades en s-expressions [Lanzi and Perrucci, 1999], o en
codificacions messy [Lanzi, 1999]. Una revisió d’alguns d’aquests elements es pot trobar
a [Wilson, 1999b].
Mesures Cada classificador té associades algunes mesures del seu funcionament. La predicció
4.7 Enfocament de Michigan 83
(moyenne adaptive modifiée) la qual fixa el valors dels paràmetres emprant la mitjana
dels valors trobats fins al moment. Pel que fa a l’avaluació, o fitness, del classificador,
aquest s’actualitza en tres passos que.
1 si ǫcl < ǫ0,
kcl = −v (4.5)
α ǫcl altrament.
ǫ0
′ kcl · numcl
kcl =P (4.6)
c∈[A] (kc · numc)
′
Fcl = Fcl + β kcl − Fcl (4.7)
acurat, (2) experimentat, i (3) més general entre els que satisfan (1) i (2). Sı́ aquest clas-
sificador existeix, subsumeix tots els classificadors dins [A] que siguin més especı́fics. Els
classificadors més especı́fics són eliminats, incrementant-se adientment la numerositat
del classificador que els subsumeix.
Per finalitzar aquesta descripció general del XCS comentar que troba mapes com-
plerts minimals [Kovacs, 1996, Kovacs, 1997]. És a dir, que es capaç de proporcionar
un conjunt de regles acurat, i minimal, que sintetitza el coneixement extret de l’entorn.
4.8 Resum
En aquest capı́tol s’ha fet un revisió del que es coneix com a computació evolutiva. Com
s’ha anat veient a mida que s’anava desgranant aquest capı́tol, computació evolutiva és
el nom que rep el camp que amalgama diferents tècniques i metodologies d’inspiració
biològica. Com s’ha pogut apreciar en aquesta el repàs per algunes de les principals
tècniques d’aquest camp, moltes d’elles estan pensades per aplicar-se a diferents proble-
mes, per exemple problemes d’optimització (numèrica o combinatòria), de planificació,
o fins i tot d’aprenentatge artificial.
És en aquest últim, l’aprenentatge artificial emprant computació evolutiva, que s’hi
ha fet una descripció més detallada. El motiu d’aquest interès rau en la seva relació amb
el treball proposat en aquesta tesi. És per aquest motiu que s’ha realitzat una revisió
dels principals paradigmes d’aprenentatge artificial emprant computació evolutiva, aixı́
com de les principals tècniques proposades en cadascuna d’elles. Concretament s’ha
revisat tant l’enfocament de Pittsburgh, com el de Michigan.
L’enfocament de Pittsburgh, tal i com s’ha pogut apreciar al llarg de la descripció
realitzada en aquest capı́tol, és la més propera a la filosofia original proposada pels
algorisme genètics. Conseqüentment els individus que es fan evolucionar són solucions
86 Computació Evolutiva
Per concloure aquest capı́tol es farà un repàs d’algunes referències bibliogràfiques d’in-
terès respecte al material presentat. La primera de les referències a comentar és la que
feu possible aquest tipus de computació evolutiva. Aquesta no es altra que “L’origen
de les espècies” de Charles Darwin [Darwin, 1859]. En aquest llibre es proposa la pri-
mera descripció de la teoria de l’evolució natural que ha servit de basa al camp de la
computació evolutiva.
Pel que fa ja a la computació evolutiva, dins els algorismes genètics existeixen dife-
rents referències que poden servir per ampliar el material proporcionat en aquest capı́tol.
La primera és [Holland, 1975] en la qual es pot trobar la primera descripció del model
evolutiu que proposen els algorismes genètics. Per la seva banda, [De Jong, 1975] pre-
senta un dels primer estudis rigorosos sobre el comportament i propietats del model
d’evolució artificial que presenten els algorismes genètics. Però un dels llibres més em-
prats com a llibre de text pel camp de la computació evolutiva és [Goldberg, 1989]. En
aquest es recull des del model original d’algorismes genètic i la seva modelització teòrica,
fins a la seva aplicació pràctica a problemes de cerca, optimització i aprenentatge arti-
4.9 Notes Bibliogràfiques 87
ficial. Finalment, a [Davis, 1991] es pot trobar una breu introducció al que s’entén per
algorisme genètics. Aquesta es complementa amb una amplia descripció d’aplicacions
reals dels algorismes genètics.
Un altre dels paradigmes de la computació evolutiva és la programació genètica. Dins
aquest camp, existeixen tres referències centrals per introduir-se en el tema. La primera
[Koza, 1992] recull la primera proposta del model de programació genètica, aixı́ com
exemples extensos de com es poden dur a terme aquesta idea, junt amb la codificació
dels sistemes resultants. La segona [Koza, 1994] es centra en descriure, entre d’altres,
exemples i problemes concrets en els qual la programació genètica es competitiva amb
experts humans, com per exemple el disseny i sı́ntesis de circuit electrònics. Per últim,
la tercera referència és [Koza et al., 1999]. En aquesta es debat com aquest paradigma
es pot portar cap a la generació de dispositius, o màquines, autoprogramables, aixı́ com
les seves possibles aplicacions pràctiques.
Els tercer dels paradigmes de la computació evolutiva que s’ha comentat ha estat la
programació evolutiva. Dins aquesta es poden trobar dues referències clares per ampliar
el material presentat en aquest capı́tol. La primera és [Michalewicz, 1992]. Aquest llibre
es centra a portar el paradigma evolutiu cap als problemes a resoldre. Concretament
es centra en com el model evolutiu es pot adaptar a diferents estructures de dades per
permeten una solució senzilla. Per altra banda, a [Fogel, 1995] es poden trobar dues
coses diferenciades. La primera és un repàs general de la computació evolutiva, aixı́
com una de les possibles taxonomies que s’hi poden trobar. Per altra banda, en aquesta
referència també pot servir per ampliar l’explicació de la feina realitzada en el camp de
la programació evolutiva pel que fa a l’evolució d’autòmats finits.
Pel que fa l’últim dels paradigmes de la computació evolutiva comentats, aquell
que es coneix com estratègies evolutives, es poden proporcionar quatre referències d’in-
terès. Les dues primeres [Schwefel, 1965, Schwefel, 1981] descriuen el que s’entén per
estratègia evolutiva, aixı́ com aquestes idees es poden aplicar a problemes d’optimitza-
ció numèrica. Per altra banda, les referències [Rechenberg, 1965, Rechenberg, 1973], a
part de descriure que s’entén per estratègia evolutiva presenta aplicacions pràctiques al
disseny industrial, ja sigui de canonades o de perfils d’ales dels avions.
Tal i com ja s’ha comentat anteriorment, al llarg del temps han sorgit gran quantitat
de sistemes que es poden classificar com a pertanyents a l’enfocament de Pittsburgh. A
continuació es recullen algunes referències als sistemes més representatius dins d’aquesta
aproximació. Un dels primers sistemes presentats sota aquest enfocament és el LS-1.
Una descripció del mateix es pot trobar a [Smith, 1983]. Un altra sistema és el GABIL
[De Jong and Spears, 1991, Spears et al., 1993] que és un del primers sistemes d’aquest
de l’enfocament de Pittsburgh que permet la seva aplicació a problemes d’aprenentatge
incremental. Per la seva banda a [Janikow, 1993] es pot trobat la proposta realitzada pel
GIL d’introduir dins l’algorisme genètic coneixement que faciliti el procés d’aprenentatge
artificial proposat. El COGIN, primer classificar n-ari d’aquest enfocament, es pot trobar
descrit a [Greene and Smith, 1993]. Una altre sistema pensat per la classificació n-ària
és el REGAL descrit amb detall a [Giordana and Neri, 1995]. El penúltim dels sistemes
del qual es vol donar referències és el GA-MINER, que presenta una de les primeres
88 Computació Evolutiva
Vida Artificial
Vida artificial, segons una definició més o menys estesa, és l’estudi d’organismes
i sistemes que, malgrat ser construı̈ts per l’home, presenten comportaments atribuı̈ts
als éssers vius. Com es pot apreciar, aquesta definició és força genèrica, d’aquı́ que
sota el nom de vida artificial és trobin aportacions provinents de camps, aparentment
dispersos, com són la informàtica, la teoria d’informació, la biologia, l’estudi de sistemes
fı́sics, entre d’altres. Per tant és normal trobar sota el nom de vida artificial una barreja
eclèctica d’idees i propostes provinents de diferents disciplines, buscant totes elles crear
sistemes que presentin caracterı́stiques inherents a la vida. Com ja es pot intuir, un dels
principals esculls amb el qual aquesta disciplina s’ha d’enfrontar és què vol dir “viu”.
En aquest capı́tol es durà una breu revisió dels principals elements i tècniques que
es defineixen la disciplina que s’anomena vida artificial. Per dur-la a terme es centrarà
en els principals element que la conformen: autòmats cel·lular, algorismes evolutius,
ecologies i una breu passada pel món dels robots. Al llarg del capı́tol s’aniran proporcio-
nant abundants referències dels temes proposats, permetent-ne l’aprofundiment al lector
interessat.
En aquest apartat es revisarà un dels principals pilars de la vida artificial: els autòmats
cel·lulars. Tot seguit es farà serà un recorregut general, des dels orı́gens fins alguns dels
principals resultats obtinguts.
92 Vida Artificial
El model kinemàtic [Burks, 1966] fou la primera aproximació que presentà John von
Neumann al concepte de “màquina auto-replicant” [Levy, 1993]. La idea que es perse-
guia era crear un sistema artificial que explotes un tret distintiu de la vida: la capacitat
per la reproducció. Per reproducció von Neumann entenia l’autocòpia d’un sistema. És
a dir, donat un sistema A qualsevol, es volia obtenir-ne un altre, B, que fos la còpia
exacta de l’original. Aquesta idea fou possible gràcies a la teoria de Church-Turing
[Hopcroft and Ullman, 1979], que permetia veure el sistemes biològics com a proces-
sadors massius d’informació. Això era possible gràcies a que es podia descriure tot
organisme com un tipus concret d’autòmat, i conseqüentment tractar-los com a infor-
mació.
El model kinemàtic que plantejà era un sistema fı́sic composat d’elements electro-
mecànics. D’aquı́ que aquest model parla d’entitats fı́siques enlloc d’entitats d’informa-
ció. El model, a part dels seus elements computacionals, presenta cinc altres elements
imprescindibles:
1. Un element per manipular l’entorn que l’envolta. Aquest element accepta ordres
dels elements computacionals (control) del sistema.
• La factoria (A)
• El duplicador (B)
• El controlador (C)
La finalitzat del computador junt amb els altres cinc elements és ser capaç de replicar-
se a si mateixos creant un altre sistema idèntic. Per fer-ho és necessita una última
estructura anomenada component D.
5.1 Autòmats Cel·lulars 93
(a)
(b)
El component D és una tira de girders, l’aspecte del qual apareix a la figura 5.1. Girders
Aquest component codifica la informació necessària per permetre que el sistema és
repliqui, o dit d’una forma més planera, les instruccions del procés. D’aquı́ l’analogia
amb la màquina universal de Turing. La codificació és binaria on una ∧ indica un ‘0’ i
una ∧ amb una barra indica ‘1’, permetent codificar qualsevol informació interpretable.
D’aquı́ que a la figura 5.1.a codifiqui la dada ‘000000’, mentre que a la 5.1.b el valor
correspon a ‘101001’.
Un cop l’autòmat comença el procés auto-replicació, els passos que es segueixen són
els següents:
4. Els elements es van recollint un a un, i es van unint sota la direcció del computador
(component A).
• “Caixa negre”: el sistema requereix de sensors per reconèixer parts, tallants, uni-
ficadors . . . D’on surten els components del primer sistema?.
• Els elements anteriors solen presentar una complexitat elevada. Però el que real-
ment impedeixen és l’anàlisi matemàtic del model.
Degut al problema de la “caixa negre” que impedia l’anàlisi matemàtic del model, von
Neumann, a partir d’una idea de Stanislaw Ulam, replantejar el el sistema auto-replicant
que plantejava. El canvi passava per redefinir l’entorn i l’estructura del model kinemàtic.
Concretament el que es proposà fou la creació d’un món bidimensional. Aquest món és
idèntic a un tauler d’escacs, amb les següents caracterı́stiques:
• Cada casella del tauler es defineix com un autòmat finit (AF), idèntic per totes
les caselles del món.
Amb aquesta definició s’elimina els dos principals problemes de model kinemàtic:
la “caixa negre” i l’efecte “Santa-Claus”. Per altra banda, aquest model presenta la
peculiaritat que tot és informació. Cada casella del tauler, o cel·la (d’aquı́ prové el nom
d’autòmat cel·lular), conté informació; aquesta no es altra que l’estat de l’autòmat finit.
El següent pas fou la redefinició del monstre del model kinemàtic sobre aquest món.
Això obligà a von Neumann a redefinir els components principals del model tal i com
es presentà a [Burks, 1966]. Els elements a redefinir són: la factoria (A), el duplicador
(B), el controlador (C) i les instruccions (D). La resta de parts ja no són necessàries
ja que es tracta amb un organisme construı̈t d’informació, que s’expandeix per un mar
d’informació. Dit d’una altra forma, un “organisme” en aquest model és defineix com
una agrupació de cel·les que descriu un conjunt d’estats.
Tal i com s’ha esmentat anteriorment, la principal peculiaritat que destaca de la nova
definició d’organisme és el fet que no existeix fı́sicament, sinó que es l’agrupació d’un
conjunt de cel·les amb una determinada configuració d’estats. Això implica que a partir
d’elements relativamet senzills (AF), apareix un cert comportament comú, o compor-
tament emergent. Dit d’una altra forma, un conjunt de cel·les conformen l’organisme,
que no presenta cap control centralitzat, que es capaç d’auto-replicar-se. D’aquı́ que els
components A, B i C ocupin un rectangle de 8 × 4000 cel·les, i les instruccions (D) una
tira de 150.000 cel·les [Burks, 1966].
5.1 Autòmats Cel·lulars 95
Amb aquest nova definició von Neumann assolı́ la creació d’una màquina auto-
replicant, formalment analitzable. Per altra banda, també destapà el fet que és possible
generar un cert comportament emergent a partir d’unitats elementals molt simples (i.e.
els autòmats finits emprats en els autòmats cel·lulars).
Un clar exemple de l’aplicabilitat de les idees de von Neumann, fou el joc de sobretaula
que proposà John H. Conway anomenat Life [Berlekamp et al., 1982] (o joc de la vida). Life
La idea és basava en una simplificació de l’autòmat cel·lular proposat per von Neumann.
El joc de la vida continua essent un espai bidimensional format per cel·les rectangulars
que contenen autòmats finits. Aquest autòmats evolucionen en increments discrets de
temps. La simplificació prové de l’autòmat que s’empra.
El model d’autòmat cel·lular és una versió simplificada del model proposat per von
Newmann. El seu fi no és la replicació d’un “organisme” amb capacitat d’auto-replicació.
Per aclarir aquest model tot seguit se’n presenta una breu definició informal:
• Si una cel·la és morta continua morta al següent instant de temps, a no ser que
tres dels vuit veı̈ns siguin vius. Si això passa la cel·la reviu al següent instant de
temps.
Tal i com es pot apreciar no existeix control central, i de la definició anterior es pot
apreciar la simplicitat de l’autòmat proposat. Malgrat això, en aquest tipus d’autòmat
presenta l’aparició de certs comportaments emergents. Un exemple de comportament
emergent, i la complexitat que es pot obtenir amb aquest model, són les estructures
que “espontàniament” apareixen en el món (o tauler). Alguna de les estructures que
apareixen en aquest món són les estructures que apareix a la taula 5.1.
Dins del joc de la vida de Conway emergeixen certs patrons (organismes o agrupa-
cions de cel·les-estats) que es repeteixen al llarg de l’execució. Aquests solen presentar
diferents comportaments, des de comportaments estàtics fins a comportaments lliscants.
Algunes dels patrons o estructures repetitives del Life són els que es presenten a la taula
5.1. Per exemple la de l’estructura de la taula 5.1.a és estàtic. Donada la configuració
inicial que es presenta, si s’apliquen les regles descrites anteriorment, aquesta acaba
portant després de tres generacions a una configuració final estable.
96 Vida Artificial
• • • •
(a) • • • • • • • •
• • • •
•
• • • • • •
(b) • • • • • • • • • •
• • • • • • • •
A partir d’aquest punt els autòmats cel·lulars s’empren en varietat de camps, com per
exemple la fı́sica. Però cap d’aquestes aplicacions acaba realment reeixint. Per altra
banda, totes les propostes que apareixien s’allunyaven cada cop més de la idea original
de von Neumann, la creació de màquines auto-replicants, i per tant “vives”.
La cosa canvia de rum amb l’aparició del treball d’Stephen Wolfram. La principal
crı́tica que fa és la falta de rigor de les propostes que apareixen i la, segons ell maldestre,
utilització dels autòmats per a l’estudi de la complexitat. Per altra banda afirma que
els resultats obtinguts de la simulació de sistemes fı́sics no aporten resultats concloents.
Per aquests motius el primer punt que pretén realitzar és obtenir una taxonomia dels
possibles autòmats cel·lulars.
La principal innovació que introdueix Wolfram fou l’estudi d’autòmats cel·lulars d’u-
na única dimensió [Wolfram, 1983]. A diferència de les versions bidimensionals de von
5.1 Autòmats Cel·lulars 97
Neumann i Conway, aquests autòmats estan formats per una tira de cel·les. Aquest
autòmats permeten una fàcil representació gràfica de la computació que efectuen. Con-
cretament, les cel·les dels autòmats de Wolfram poden estar en dos estats: mortes
(blanques) o vives (negres). Per cada interval de temps és pinta sota la tira de cel·les
la nova tira resultant de computar tots els autòmats. Aixı́, amb una simple gràfica es
poden apreciar tota la història de la computació duta a terme per l’autòmat cel·lular.
Un dels primers fets que destaquen d’aquest autòmats, és el fet que certes computa-
cions presenten una gran similaritat visual amb les closques de mol·luscs. Concretament
aquestes fan referència a certes closques formades per triangles blancs. És aquesta
coincidència la que fa revifar l’interés pel camp de la vida artificial. Però la principal
aportació de Wolfran és la creació de la primera classificació dels autòmats cel·lulars
[Wolfram, 1984a]. Per fer-ho es centra en els autòmats cel·lulars unidimensionals que
proposà. Per això estudià els 256 possibles autòmats unidimensionals que el seu model
pot generar. D’aquest estudi proposà la següent classificació:
Class 1 CA Aquesta classe descriu aquells autòmats que, o bé “blanquejant” (totes les
cel·les esdevenen mortes), o bé “ennegreixen” (totes les cel·les són vives).
Class 2 CA Versions més actives que els de classe 1, però l’activitat acaba parant
donant pas a estructures estables.
Class 4 CA Aquesta classe agrupa els autòmats que presenten una gran complexitat i
aparent aleatorietat. Malgrat això, i amb la senzillesa de les seves regles, es poden
trobar autòmats capaços de propagar informació, incloent els CA (com el Life)
que descriuen computadors universals.
És finalment la classe 3 la que finalment és interessant en la vida artificial, no sols
pel fet que suporti computadors universals, sinó també per que són capaços de descriu-
re sistemes complexes emprant regles senzilles. Un exemple d’aquesta utilitat n’és la
modelització matemàtica de flocs de neu emprant autòmats cel·lulars [Wolfram, 1984b].
5.1.5 Altres
Per acabar aquest apartat d’autòmats cel·lulars, és imprescindible comentar, encara que
sigui breument, dos altres propostes: el Loops de Langton i el Boids de Reynolds.
Loops
Christopher Langton és considerat un dels fundadors del camp que rep el nom de “vida
artificial”. Dues de les seves principals aportacions són: la classificació de sistemes
98 Vida Artificial
Boids
El Boids és un sistema proposat per Craig Reynolds [Reynolds, 1987]. Davant d’orga-
nismes d’informació amb capacitat de moviment, com els gliders del Life, taula 5.1.b,
es desprén que un cert comportament emergent, col·lectiu i distribuı̈t, és generable em-
prant autòmats finits, o un equivalentment, regles. Aquest punt és en el que es centrà
Reynolds per resoldre el seu problema d’animació per ordenador.
El que es volia resoldre era modelar el moviment d’ocells formant estols. Davant la
no existència de cap teoria que li fos d’utilitat per l’animació, fou necessari el desenvolu-
pament d’un model. La seva solució passà per emprar els conceptes vistos anteriorment,
essent una de les primeres aplicacions populars de la vida artificial. Els ocells són mo-
delats de forma elemental, ja que sols són un vector d’orientació (del moviment) i un
radi de visió, tal i com es presenta a la figura 5.2.a. El model emprat per descriure el
5.1 Autòmats Cel·lulars 99
2. Un ocell és capaç de moures en la mateixa direcció i velocitat que l’estol (figura
5.2.c).
3. Una força de separació evita que els ocells s’acostin excessivament (figura 5.2.d).
5.1.6 Recopilatori
Per concloure l’apartat d’autòmats cel·lulars es voldria resumir, a grans trets, les princi-
pals idees que aporten.
• És precı́s un delicat equilibri per que la informació pugui fluir (5.1.4).
• No existeix un control centralitzar sinó que aquest és totalment distribuı̈t, i nor-
malment, massivament paral·lel (Tots excepte el model kinemàtic que ràpidament
es refé).
Una de les moltes aplicacions dels algorismes evolutius és l’aprenentatge artificial. Un
exemple il·lustratiu, a cavall d’ambdós, és la formiga que es proposà per un grup de
recerca d’UCLA. La idea que perseguien era aplicar l’enfocament bottom-up inherent de
la vida artificial a un problema d’aprenentatge automàtic [Levy, 1993].
5.2 Algorismes Evolutius 101
El problema consistia en fer que una formiga aprengues a cercar menjar en una
malla bidimensional. Concretament el que es volia que aprengués era a seguir un tipus
concret de recorregut anomenat John Muir Trail. Per assolir els seu objectius empraren
un algorisme genètic. La finalitat d’aquest algorisme era fer “evolucionar” (aprendre)
les formigues per que seguissin el recorregut.
La peculiaritat d’aquest enfocament era el que feia evolucionar l’algorisme. Una
formiga no era res més que un autòmat finit. És en aquest punt quan es torna a veure la
informació que descriu un individu (formiga) com un cert programa. Com es pot apreciar
s’ha tornat a arribar a la idea del model kinemàtic de von Neumann, però aquest cop
partint de l’extrem oposat, la biologia com a font d’inspiració.
Efectors: reben missatges dels classificadors i són els responsables d’actuar en l’entorn
tal i com els ho ha indicat el missatge rebut.
Llista de missatges: actuen de magatzem dels missatges entrants dels detectors, aixı́
com dels missatges recurrents dels classificadors.
Classificadors: són regles del tipus if-them, en les quals les seves condicions es verifiquen
contra missatges provinents de la llista de missatges. El resultat d’aquestes regles
són nous missatges que poden ser enviats, o bé a la llista de missatges, o bé als
efectors.
Per dur a terme la seva tasca d’aprenentatge, els sistemes classificadors empren un
algorisme genètic per realitzar la tasca d’obtenir les regles o classificadors. L’algoris-
me genètic es complementa amb un algorisme d’assignació de crèdit (Bucket Brigade
Algorithm) per determinar el fitness de les regles.
Dels sistemes es ressaltarien dues aportacions provinents de la biologia al món de la
vida artificial:
• El material genètic (informació) és una petita part del sistema global, però prou
important com per controlar-ne el comportament.
Per contra, presenta alguns punts foscos per ser absorbits dins el marc de conceptes
que conforma la vida artificial. Aquests serien:
John H. Holland en el seu afany de modelar sistemes complexes, feu evolucionar els
sistemes classificadors en el que acabà conformant el que es coneix com a món d’Echo
[Holland, 1975, Holland, 1995, Holland, 1998]. El món d’Echo és un espai en forma de
malla bidimensional en el qual si poden trobar els següents elements:
Recursos: per l’espai es poden trobar recursos, que corresponen a algun dels elements
de l’alfabet dels recursos { a, b, c, d }
Fonts: corresponen a fonts renovables de recursos. Això indica que cada cert perı́ode,
la font genera nous recursos.
Agents unicel·lulars: són els organismes més simples que recorren el món d’Echo. Són
l’evolució dels sistemes classificadors comentats anteriorment. La seva estructura
serà comentada més endavant.
Agents multicel·lulars: els organismes unicel·lulars del món d’Echo es poden agrupar,
formant aixı́ un individu complex basat en la simbiosi dels individus que el formen.
Els agents del món d’Echo han intentat fer desaparèixer el problema de “caixa negra”
dels sistemes classificadors. Per assolir-ho l’agent queda totalment definit per la seva
informació genètica. Per altra banda, els agents poden realitzar tasques individuals, o
d’interacció amb la resta d’agents del món.
Les tasques individuals que pot realitzar un agent són: desplaçar-se pel món, alimentar-
se (recollir recursos del món), i replicar-se (sempre que disposi dels recursos adients). Pel
que fa a les activitat col·lectives, els agents poden: establir combat, comerciar recursos,
5.3 Ecologies Artificials 103
o bé aparellar-se. Però la principal peculiaritat del comportament col·lectiu és el fet que
dos agents poden decidir recombinar el seu material genètic.
Com es pot apreciar, en el món de l’Echo s’intenta sintetitzar totes les idees vis-
tes fins al moment. Es pretén obtenir sistemes auto-replicants, els quals es basen en
fluxos d’informació, amb un comportament emergent distribuı̈t i paral·lel. Per altra ban-
da, també incorpora conceptes provinents dels algorismes genètics com és el concepte
d’aparallement (creuament sexual d’informació genètica).
La programació genètica proposada per John R. Koza [Koza, 1992] no neix dins el món
de la vida artificial. El seu objectiu és l’obtenció de programes emprant com a mètode
de cerca programes basats en els mateixos conceptes que els algorismes genètics.
Parlar de programació genètica cau un fora d’aquest treball, malgrat això, és interes-
sant comentar-ho per varis motius. El primer és que més endavant es tornarà a parlar
del concepte d’aprenentatge de programes. El segon és pel fet que el problema de la
formiga d’UCLA (5.2.1) es tornà a abordà emprant programació genètica, obtinguen
bons resultats.
A l’igual que el punt anterior, l’efecte Baldwin [Baldwin, 1896] es comenta aquı́ breument
cara al fet que en apartats posteriors se’n farà referència. La proposta de Baldwin proposa
un punt intermig entre, l’evolució de mendeliana i el lamarkisme . El primer proposa
una evolució en que els individus no en poden controlar el procés. El segon, per contra,
proposa una evolució (actualment totalment descartada) en la qual un individu, al llarg
de la seva vida podria modificar la seva informació genètica amb més o menys voluntat.
L’efecte Baldwin, rebutja el lamarkisme, però malgrat això, proposa una evolució en
la que l’aprenentatge d’un individu pot influir en el procés evolutiu. El que proposa és
que un individu pot aprendre certes avantatges al llarg de la seva vida, proposant canvis
en l’entorn que l’afavoreixin. Concretament, el que proposa és un canvi dinàmic en la
funció d’avaluació, provocant aixı́ que l’evolució que afavoreixi cert tipus de solucions.
Un exemple d’aquest tipus de proposta es pot trobar en la proposta feta per Ackley i
Littman [Ackley and Littman, 1991] que serà comentada en l’apartat següent.
104 Vida Artificial
Dins la vida artificial, a part dels autòmats cel·lulars i els algorismes genètics (entesos en
el sentit més ampli de la paraula), es troben també diverses propostes sota el nom genèric
de ecologies artificials. L’origen d’aquestes propostes solen ser d’inspiració clarament
biològica. A continuació es presenta algunes de les propostes més rellevants.
5.3.1 L-System
El que es coneix com a L-System és el resultat de la proposa feta per Aristid Lindenmayer
[Lindenmayer and Prusinkiewicz, 1990]. El principal objectiu que perseguia era trobar
una forma matemàtica de descriure el desenvolupament de les plantes. La seva proposta,
degut a tot el que s’ha comentat anteriorment, havia d’ésser simple. El resultat és una
forma de descriure el desenvolupament de plantes emprant gramàtiques.
Gramàtica Un dels exemples més senzills que presentà fou el d’una alga. La gramàtica que la
descriu és:
a → ab
(5.1)
b→a
On la mot inicial és ab. Aplicant les regles de derivació de gramàtica al mot inicial,
es va obtinguen aba, abaab, abaababa, . . . Aquesta successió de mots descriuen
el desenvolupament de l’alga, on aquest desenvolupament es sol interpretar de forma
gràfica. La figura 5.3 presenta algunes representacions gràfiques obtingudes a partir de
gramàtiques.
Degut a aquesta reinterpretació gràfica del model matemàtic, els L-Systems han
sortit força vegades del reducte de la vida artificial en direcció al camp dels gràfics per
ordinador. En aquest salt, han aparegut hibridacions entre aquests sistemes i fractals.
Alguns exemples són els proposats per Alvy Ray Smith [Smith, 1987] sota el nom de
“graftals” [Smith, 1984]. Alguns d’aquests sistemes són capaços de generar jardins
virtuals d’alt realisme visual.
5.3.2 Tierra
El Tierra [Ray, 1995] és un model de vida artificial que recull força idees de les vistes
fins al moment. El seu creador, Thomas Ray, és un biòleg interessat per les idees que
es presenten dins el camp de la vida artificial.
El seu objectiu principal és crear un món en el qual els “organismes” es dediquin a
replicar-se a si mateixos (von Neumann), competint en un entorn amb recursos limitats.
Concretament el organismes dels que parla el Tierra són programes (o estratègies) que es
5.3 Ecologies Artificials 105
dediquen a auto-replicar-se. És una idea similar al individus que s’usen en programació
genètica.
Aquests “organismes” (programes en un ensamblador molt senzill, idea heretada dels
“jocs de guerra” que es comenten a continuació) competeixen pels recursos finits d’un
ordinador virtual. Dit d’una altra forma, principalment competeixen per la memòria i el
temps de CPU. En aquest món els “organismes” sols poden sofrir variacions resultants
d’una mutació. El curiós és que aquesta es pot produir, o bé en el procés de recombinació
(habitual en la natura), o bé per agressió externa (punt que presenta certes similituds
amb una aproximació provinent del lamarkisme).
Com es pot veure, aquesta proposta recull gran part de les idees proposades en el
camp de la vida artificial. Això va des de la capacitat de rèplica, els autòmats (els
“organismes” en són les instruccions), fins a les idees de selecció natural i mutació de
l’individu en el procés de copia. Sorprenentment, queda fora del Tierra conceptes com
la recombinació d’informació (creuament sexual dels algorismes genètics), estimulació
de comportament emergent entre els individus, etc.
5.3.3 AL
Un altre món que busca recollir els conceptes apareguts en el món de la vida artificial
és l’AL (Artificial Life) proposat per David Ackley [Ackley and Littman, 1991].
L’AL és un món bidimensional pla de mida finita (cent caselles al llarg i cent a
l’ample). Aquest món es poblat per formes artificials de vida amb una reproducció basada
en la genètica, que anomenà “agents”. Aquest agents s’alimenten, principalment, de
vegetals existents en el món i poden ésser ferits, o bé per xocs contra els murs del món,
106 Vida Artificial
Core War
A. K. Dewdney proposà un joc anomenat Core War [Dewdney, 1988]. Aquest joc pro-
posava una lluita entre organismes consistents en instruccions d’un senzill llenguatge
ensamblador anomenat “Red Code”. Aquest organismes vivien en un ordinador virtual
(aprofitant la idea d’una màquina de Turing emulant-ne una altra) amb la finalitat de
replicar-se i sobreviure emprant qualsevol mitjà disponible.
En aquesta proposta els individus, a part de replicar-se, també es dedicaven a difi-
cultar al màxim la tasca dels altres organismes, buscant augmentar la seva probabilitat
de sobreviure a la selecció natural imperant. Aquest joc, acaba essent el predecessor,
entre d’altres, del Tierra (ja comentat) i del Venus.
Venus
per definir el que anomena Core World. La idea de fons parteix del caldo prebiòtic en el
qual s’originà la vida.
El sistema proposa organismes que són conjunts d’instruccions residents a memòria.
Aquests organismes presenten la peculiaritat que solien ésser el resultat d’estructures
cooperatives, o agrupacions d’instruccions elementals.
Corol·lari: Virus
Es important fer menció aquı́ del treball de Fred Cohen [Cohen, 1987]. Aquest fou el pri-
mer a intuir les possibilitats que aquest tipus de sistemes oferien. Les propostes anteriors
sempre emulaven màquines a partir d’altres màquines (aprofitant les idees de Turing),
però que passaria si es provés directament damunt d’una màquina?. Aquesta situació
tenia la seva vessant més positiva, l’aparició d’organismes automàticament per resoldre
problemes, i la contrapartida més perillosa, l’aparició de depredadors d’informació dins
els sistemes. Aquest últim és conegut per un cas concret, els virus.
5.4 Robots
Una altra vessant de la vida artificial és les noves propostes que han afectat a la robòtica.
Aquesta branca s’allunya bastant de l’objectiu del treball dut a terme en aquesta tesi.
Malgrat això, tot seguit es comentarà breument on s’han aplicat les idees provinents de
la vida artificial al camp de la robòtica.
Arquitectura: El primer punt que afecta les idees que proposa la vida artificial és la
concepció de la seva arquitectura. Un exemple clar és la proposa de Brooks
[Brooks, 1986], que passa d’un sistema clàssic de pipeline amb percepció, mode-
lització, planificació, execució de la tasca i motor de control, a una arquitectura
de subsumpció. La idea és posseir petites unitats capaces de desenvolupar tasques Subsumpció
de forma distribuı̈da, posseint un senzill control distribuı̈t que en proporciona un
cert comportament emergent.
Maquinari: Apareixen propostes com el Genghis i l’Attila del MobotLab (MIT) [Levy, 1993],
els quals presenten forma d’insectes. La peculiaritat d’aquests és el fet de tornar Insectes
a basar-se en un control distribuı̈t, cooperatiu i emergent que els proporciona
una gran senzillesa i simplicitat a l’hora de comparar-los amb els seus homònims
d’aquitectures clàssiques.
Nanobots: Sota aquest nom s’agrupen un conjunt de propostes que, de moment, són
més properes a la ciència-ficció. La idea bàsica és construir robots de mida mi-
croscòpica, els quals sigui capaços d’auto-replicar-se i mostrar comportaments
emergents, propis de les idees que sorgeixen del camp de la vida artificial, per
108 Vida Artificial
5.5 Resum
Tal i com s’ha pogut anar veient al llarg d’aquest capı́tol, el camp de la vida artificial recull
idees provinents de diferents disciplines, cadascuna d’ella proposant diferents tècniques
(autòmats cel·lulars, algorismes evolutius, ecologies . . . ). Això és degut, principalment,
a la dificultat de definir que és un sistema “viu”.
Malgrat això, al llarg de les propostes presentades, apareixen certes propietats que
es repeteixen, i que sembla que tot sistema hauria de proporcionar i explotar. A tall de
resum, les principals es són les que es citen a continuació:
• L’aprenentatge juga un paper important, ja sigui des del punt de vista evolutiu, o
bé d’un organisme.
General Tant a [Levy, 1993], com a [Emmeche and Sampson, 1996], es poden trobar introduc-
cions entenidores a la vida artificial. En ambdós llibres es fa un repàs general a les
principals àrees existents, aixı́ com proporcionen abundants referències per aprofundir en
els temes tractats
Autòmats D’autòmats cel·lulars n’existeix una amplia bibliografia. Aquı́ només es repassaran
cel·lulars alguns dels materials que s’han emprat per escriure aquest capı́tol. El treball de John
von Newmann fou publicat fou publicat pòstumament a [Burks, 1966]. Aquest llibre és
la descripció del primer autòmat cel·lular, el qual implementava el model kinemàtic de
von Newmann. Per la seva banda, una descripció del Joc de la Vida de John H. Conway
es pot trobar a [Berlekamp et al., 1982], on la demostració de la seva idempotència a la
màquina de Turing, i per tant convertint-lo en un computador universal es pot trobar a
5.6 Notes Bibliogràfiques 109
GALE (Genetic and Artificial Life Environment) és el nom que rep la proposta que
fa en aquesta tesi per resoldre problemes de mineria de dades. Tal i com es definı́ en
els capı́tols 2 (pg. 7) i 3 (pg. 19), la mineria de dades engloba la resolució de diferent
tipus de tasques. De totes elles, aquesta tesi es centra en la resolució de problemes de
classificació.
Aquest capı́tol proposa l’ús d’un algorisme genètic paral·lel de gra fi. La caracterı́stica
més rellevant d’aquest algorisme per la mineria de dades rau en el fet que el model és
independent de la representació del coneixement que s’utilitzi. Dit d’una altra forma,
el mateix model és capaç de treballar eficientment amb diferents representacions del
coneixement. El model serveix tant per fer evolucionar regles de classificació, instàncies,
o bé arbres d’inducció, tal i com es presentarà en aquest capı́tol.
Per facilitar l’explicació del model, s’ha decidit separar en tres capı́tols diferenciats.
Aquest és el primer d’aquest capı́tols, el qual es centra en la descripció del model
pròpiament dit. Concretament, es descriurà detalladament l’algorisme GALE pròpiament
dit. El capı́tol 7 (pg. 167) és el segon dels tres capı́tols i es centra en estudiar el
comportament i dinàmica de l’algorisme proposat. Finalment, el capı́tol 8 (pg. 219),
tercer i últim, repassa l’aplicació del GALE a problemes reals de mineria de dades.
Per concloure aquesta breu introducció, tot seguit es pararà a descriure l’estructu-
ració d’aquest primer capı́tol sobre el GALE. A la secció 6.1 es farà un repàs de les
principals caracterı́stiques que haurà de satisfer el GALE. Un cop fet aquest repàs, la
secció 6.2 comentarà breument alguns dels referents d’aquest treball, buscant posant-
los en relació entre si. La secció 6.3 passarà a descriure el model que proposa el GALE
pròpiament dit. Serà en aquesta secció on es descriurà tot el marc que es proposa per
poder assolir treballar amb qualsevol tipus de representació del coneixement disponible.
Els diferents tipus de representacions de coneixement emprades es detallen a la secció
6.4. Finalment, la secció 6.5 fa un resum del que s’ha presentat al llarg del capı́tol,
112 GALE: Model Evolutiu per la Mineria de Dades
mentre que la secció 6.6 conclou el capı́tol repassant algunes referències bibliogràfiques
d’interès que han anat apareixent al llarg del mateix.
El GALE neix com a resultat d’un conjunt de restriccions. El treball realitzat ha estat el
resultat de mantenir, al llarg del mateix, tres consideracions o directrius que han guiat
les decisions que s’ha pres. Aquestes es poden resumir breument dient que el GALE
havia de ser:
Ef.
Existeix un altre punt que indica la necessitat d’un model independent de la repre-
sentació del coneixement que es vol obtenir. Aquest és que en un sistema de mineria
de dades l’usuari final ha de poder tenir la capacitat de triar aquella representació que
prefereix, ja sigui per inteligibilitat, eficiència, o qualsevol altre consideració que vulgui
satisfer. Això implica que, per exemple, l’usuari pot voler obtenir inicialment un arbre de
decisió i, posteriorment, un conjunt d’instàncies (o exemples) representatius. General-
ment, els algorismes d’aprenentatge artificial no solen ser capaços de mantenir el mateix
algorisme a través de l’espectre de possibles representacions del coneixement possibles.
És a dir, al canviar la representació l’algorisme d’aprenentatge sol deixar de tenir sentit,
i per tant aplicabilitat. Aquesta relació eficiència/espectre de problemes resolubles es
pot representar gràficament [Goldberg, 1989] tal i com presenta la figura 6.1.
L’última consideració que marca el treball realitzat en aquesta tesi imposa que el
model ha d’ésser massivament paral·lel. Aquesta directriu torna a sortir del fet d’exami- Massivament
nar els problemes de mineria de dades. En aquest tipus de problemes el volum de dades paral·lel
a examinar sol ser molt elevat. Aquest fet provoca que el temps emprat per l’algorisme
d’aprenentatge sigui també molt elevat. Per aquest motiu el model que es volia generar
havia de ser, per definició, massivament paral·lel. Conseqüentment, l’objectiu era poder
disminuir, en cas de necessitat, el temps de computació de forma directa explotant el
paral·lelisme inherent en el model.
6.2 Referents
En aquesta secció no es farà un repàs dels referents directes d’aquest treball. Aquesta
tasca s’ha dut a terme, principalment, en els capı́tols 3 (pg. 19), 4 (pg. 51) i 5
(pg. 91). En aquests capı́tols previs es pot trobar els referents en els quals s’emmarca
el treball d’aquesta tesi. Malgrat això, el que es vol realitzar en aquesta secció tot
seguit és comentar un xic més detalladament algunes connexions existents entre alguns
d’aquests referents i el treball que aquı́ es presenta. Per fer-ho, s’ha cregut oportú
114 GALE: Model Evolutiu per la Mineria de Dades
El concepte de paral·lelisme és inherent tant als algorismes genètics, capı́tol 4 (pg.
51), com pel que fa als autòmats cel·lulars, capı́tol 5 (pg. 91). Pel que fa al algoris-
mes genètics, existeix un referent clar com és el GA-MINER [Flockhart, 1995]. Aquest
algorisme és una de les primeres incursions dels algorismes genètics al camp de la mi-
neria de dades, malgrat que la seva tasca principal no és la de resoldre problemes de
classificació, si no l’obtenció de regles d’associació. Per altra banda, en el cas dels
autòmats cel·lulars, malgrat les seves caracterı́stiques, no s’ha trobat fins al moment
cap treball que pugui servir de referent directe pel treball que es presenta aquı́. El
treball més proper és el presentat per Moshe Sipper [Sipper, 1997] que busca la pro-
gramació automàtica d’autòmats cel·lulars, aixı́ com el fet per Michael Kirley i David
Green [Kirley and Green, 2000, Green and Kirley, 2000] en la simulació d’ecosistemes.
Tot seguit es comentaran breument ambdós treballs.
El GA-MINER [Flockhart, 1995] és un sistema dissenyat pel descobriment de patrons
dins de bases de dades. Aquest fet l’allunya un xic dels problemes de classificació
pròpiament dits, acostant-lo cap a problemes d’obtenció d’associacions entre dades de la
base de dades explorada. Cada individu de la població descriu una única regla expressada
en forma normal disjuntiva. Cada regla és avaluada independentment de la resta de regles
de la població. La formació de conjunts de regles es realitza emprant una estratègia
heurı́stica incremental. Com que l’objectiu el GA-MINER és descobrir associacions, on
el percentatge d’encert global passa a formar part d’un segon pla, no quedant garantida
pel sistema.
El model d’evolució que proposa el GA-MINER és configurable. Permet execucions
seqüencials emprant el model original d’algorisme genètic, però també permet models
paral·lels força variats2 . El principal model paral·lel que empra és el que utilitza un model
multipoblacional (o també conegut com a model d’illes). Aquests tipus de model paral·lel
es basa en l’ús de diferents poblacions que, al llarg del procés evolutiu, intercanvien
individus que són anomenats immigrants. Alguns exemples dels esforços duts a terme
per assolir la paral·lelització eficient del GA-MINER es poden trobar a [Flockhart, 1995,
Araujo et al., 2000].
Pel que fa al treball presentat a [Sipper, 1997], el seu objectiu no és resoldre ni
problemes de classificació, ni de mineria de dades. El seu objectiu és programar au-
tomàticament autòmats cel·lulars. Dit d’una altra forma, el que busca es trobar de
forma automàtica les regles (o funció de transició) que han de governar un determinat
2
Quan es descrigui el model que proposa el GALE es comentarà en detall els principals tipus de
paral·lelisme que es poden trobar dins dels algorismes genètics.
6.2 Referents 115
autòmat cel·lular per resoldre un problema concret. Per fer-ho proposa un model dis-
tribuı̈t d’algorisme evolutiu que és capaç d’obtenir les regles de transició dels autòmats
més adients per solucionar acuradament el problema a resoldre. El principal interès
que té aquest treball, com a referent per aquesta tesi, és el fet que, a diferencia de les
aproximacions tradicionals que es poden trobar en el camp de la computació evolutiva,
presenta un model totalment distribuı̈t. No existeix un procés central que governi el fun-
cionament de l’algorisme evolutiu. La idea no es nova, ja que es l’aplicació de les idees
en les que es basa un autòmat cel·lular per resoldre el problema de com programar-lo. És
a dir, utilitza un model d’evolució cel·lular per resoldre el problema de la programació.
A l’igual que el treball anterior, el treball realitzat sobre algorismes genètics cel·lulars
(o cellular genetic algorithms, CGA), introduı̈ts a [Whitley, 1993], presenta l’aplicació
d’algorismes genètics paral·lels de gra fi. A l’igual que succeeix amb el GALE, els CGA
presenta un model d’algorisme genètic paral·lel inspirat en els autòmats cel·lulars. Mal-
grat aquestes similaritats, els CGA no estan pensats per resoldre problemes de classifica-
ció, sinó d’optimització, fet que els allunya com a referent del treball que aquı́ es presen-
ta. El model proposat pels CGA ha estat ampliat posteriorment [Kirley and Green, 2000,
Green and Kirley, 2000] per introduir el que s’ha anomenat desastres. S’entén per des-
astre, un event extintiu massiu en la població d’individus, i com pot això ajudar a
resoldre el problema d’optimització. Concretament, l’extinció busca la millora del procés
d’optimització a través de l’augment de la pressió selectiva sobre els individus.
L’interès per la mineria de dades emprant sistemes classificadors és força recent. Les
primeres propostes de mineria de dades emprant sistemes classificadors es poden trobar
a [Saxon and Barry, 2000, Wilson, 2000]. Aquest treballs fan lleugeres modificacions
al XCS, secció 4.7.4 (pg. 82), per permetre’l treballar, entre d’altres amb problemes
reals, com és el cas del problema conegut com “Wisconsin Breast Cancer” pertanyent
al repositori de l’Universitat de Califòrnia a Irvine [Merz and Murphy, 1998]. Aquest
interès ha dut a la recent aparició de treballs preliminars [Dixon et al., 2001, Lanzi, 2001]
que buscant l’aplicació de XCS a problemes de mineria de dades. Però, un estudi en
profunditat sobre el XCS comparat amb altres mètodes, com per exemple C4.5, IBL o el
propi GALE és pot trobar a [Bernadó et al., 2001]. La principal aportació d’aquest últim
treball és la d’aportar una metodologia per comparar el rendiment de diferents sistemes
quan s’apliquen a problemes de mineria de dades.
Per altra banda, un dels principals problemes que presenten els sistemes classificadors
en la seva aplicació a problemes de mineria de dades és l’escalabilitat. El problema prové
del fet que els models que s’estan utilitzant actualment no són fàcilment paral·lelitzables.
Aquests punt és crı́tic, especialment si es vol treballar amb problemes amb volums de
dades elevats. Un dels pocs referents que es poden trobar és el treball de paral·lelització
del SCS [Robertson, 1987]. En aquest treball es proposa una paral·lelització de la imple-
mentació del model proposat pel SCS. La implementació no és del tot satisfactòria, ja
que els sistemes classificadors (ja sigui el SCS, el XCS, o bé el ZCS) presenten processos
116 GALE: Model Evolutiu per la Mineria de Dades
purament seqüencials. Aquest punt converteix certes etapes dels sistemes classificadors
en colls d’ampolla en el moment de realitzar-se la paral·lelització, limitant-ne l’escalabi-
litat, tal i com es pot apreciar en el treball esmentat anteriorment.
Un cop comentades breument les consideracions de sortida, aixı́ com els principals refe-
rents del treball presentat en aquesta tesi, tot seguit es passarà a descriure amb detall
el GALE. Tal i com s’ha vingut comentant fins al moment, el GALE és un algoris-
me genètic paral·lel de gra fi dissenyat per resoldre problemes de mineria de dades, en
concrets tasques de classificació.
El model que proposa el GALE és un xic extens. Per facilitar-ne l’explicació, aquesta
s’ha dividit en buit parts diferenciades. Cadascuna d’elles es centra en una part del
model proposat. Aquestes parts es poden resumir de la següent forma:
1. Topologia
2. Mapping
3. Algorisme paral·lel
4. Avaluació
5. Merge
6. Split
7. Survival
8. Test
Tot seguit es pararà a descriure cadascuna d’elles amb detall. Cal esmentar en aquest
punt que no es farà cap referència a la representació del coneixement emprada. Degut
a que el model que proposa el GALE és independent de la representació evolucionada,
la descripció de les mateixes es farà en la secció 6.4 (pg. 143).
Per concloure aquest preamble, es vol comentar que la primera descripció del GA-
LE publicada es pot trobar a [Llorà and Garrell, 2000b, Llorà and Garrell, 2000a]. En
aquests articles es presenta principalment el model, aixı́ com la descripció breu de les se-
ves parts. Pel que fa a les aplicacions del mateix, aixı́ com els resultats obtinguts, aquests
es poden trobar a [Llorà and Garrell, 2001b, Bernadó et al., 2001, Llorà and Garrell, 2001c,
Llorà and Garrell, 2001a]. Fetes aquestes puntualitzacions ja es passarà a descriure, sen-
se menys dilació, el treball realitzat.
6.3 Descripció del model 117
Master
Workers
6.3.1 Topologia
La primera part del GALE que es descriurà és la topologia de l’algorisme paral·lel que es
proposa. Per fer-ho primer es farà un breu repàs a les principals propostes realitzades
fins al moment3 .
Les primeres aproximacions a la paral·lelització dels algorismes genètics sorgı́ de la
constatació que la major part del temps s’empra en l’avaluació dels individus. És a dir,
cada iteració d’una algorismes genètic necessita avaluar la mesura de fitness associada a
cada individu de la població. A mesura que la complexitat del problema creix, també ho
fa el percentatge de temps que l’algorisme genètic utilitza per avaluar la població, podent
arribar a superar el 99% total del temps d’execució. Conseqüentment, les primeres
proposta d’algorisme genètic que es poden trobar paral·lelitzen l’avaluació de la població.
Per fer-ho, utilitzen un model master/worker (o també anomenat master/slave).
La figura 6.2 mostra la topologia de la paral·lelització master/worker. Aquest tipus
de paral·lelització disposa d’un element de procés distingit (master) i un conjunt variable
d’elements de procés auxiliars (workers). El funcionament és simple. El master executa
de forma seqüencial l’algorisme genètic, excepte la fase d’avaluació de la població. En
aquesta fase el master distribueix la població d’individus entre els diferents elements de
procés disponibles, els quals computen en paral·lel l’avaluació dels individus que se’ls ha
assignat. Aquest procés de distribució de la població es pot realitzar de diferents formes:
Sı́ncrona: el master divideix la població en tants fragments com workers disposi. Aquest
fragments són enviats als workers que computen l’avaluació, retornant-la al master
un cop finalitzada.
Assı́ncrona: els workers van solicitant, a mida de que disposen de recursos disponibles,
al master individus per calcular-ne la seva avaluació.
Dins de cadascuna d’aquestes modalitats, el master pot estar esperant les avaluaci-
ons calculades pels workers (poc eficient), o bé computar també ell un fragment de la
població. Com es pot apreciar aquest model de paral·lelització és molt senzill, on sols
afegeix la tasca de planificació (o scheduling) sobre qui ha de calcular l’avaluació de
3
Es refereix al lector interessat a [Cantú-Paz, 1997, Cantú-Paz, 2000].
118 GALE: Model Evolutiu per la Mineria de Dades
quins individus. Aquest punt es força important per un bon balanç de la carrega al llarg
de tots els elements de procés disponibles. L’única contrapartida que presenta aquest
model és el fet que la codificació seqüencial de la resta de l’algorisme genètic limita
el rendiment màxim assolible (o speedup) de la implementació paral·lela (llei d’Amdhal
[Hwang, 1993]).
La limitació imposada per la part seqüencial de l’algorisme fou un dels motius de
buscar altres models per paral·lelitzar els algorismes genètics. Concretament, el referent
torna a ser un fet biològic. L’evolució natural no es sol basar en disposar d’una única
població d’individus en la qual tothom es pot relacionar amb tothom (o també anomenat
model panmı́tic). Al contrari, l’evolució natural disposa d’un conjunt de poblacions dins
les quals es produeix l’evolució. Aquestes poblacions es solen relacionar espontàniament,
per exemple intercanviant individus (immigrants). Aquest tipus de model es coneix
com model de paral·lelismes de gra gruixut, o model d’illes. La figura 6.3.a representa
gràficament un exemple d’aquest tipus de paral·lelisme. Els vèrtex del graf representen
diferents poblacions, cadascuna formada per un conjunt d’individus. Per altra banda,
les arestes representen les relacions entre les diferents poblacions. Dit d’una altra forma,
representa entre quines poblacions es poden intercanviar individus.
Com es pot apreciar, el model multipoblacional no és equivalent al model tradicional
d’algorisme genètic. A diferència del master/worker en que el model d’algorisme genètic
es mantenia, en aquest model apareixen nous paràmetres a ajustar, principalment tres. El
primer és la topologia del graf, en concret, de quantes poblacions es disposarà. El segon
és com es relacionaran les poblacions entre elles (disposició de les arestes i la freqüència
de la migració d’individus entre poblacions). Finalment, el tercer és el nombre d’individus
de cada població, aixı́ com el criteri de selecció. Un altre punt interessant a tenir en
compte és el fet que la existència d’immigrants dins una població augmenta la pressió
selectiva dins la mateixa [Cantú-Paz, 2000]. Aquest és un dels principals motius pels
quals aquest tipus de model solen presentar speedup superlinials quan es comparen amb
el model tradicional d’algorisme genètic.
6.3 Descripció del model 119
El model de paral·lelisme de gra fi, o també anomenat model cel·lular (degut a la seva
semblança amb els autòmats cel·lulars) o model de difusió (pel seu comportament), es
pot veure com el resultat de portar el model de gra gruixut a l’extrem. El que es busca
en aquest tipus de model és explotar el màxim paral·lelisme existent dins l’algorisme
genètic. Per aquest motiu es solen emprar topologies basades en malles (referent proveı̈t
pels autòmats cel·lulars), tal i com es presenta a la figura 6.3.b. En aquesta aproximació
cada node del graf conté un únic individu. Aquesta assumpció obliga a redefinir el
model d’evolució emprant, ja que no es disposa d’un conjunt d’individus a evolucionar.
Per contra una subpoblació (o deme) es defineix com la població formada per l’individu
contingut en un vèrtex i els individus continguts en els vèrtexs directament connectats
a ell.
Per la descripció anterior, ja es pot apreciar que el model d’algorisme genètic no es
vàlid, havent-se de redefinir tots els seus components per permetre assolir-ne una im-
plementació totalment distribuı̈da del mateix. És en aquest punt on apareixen diverses
alternatives. Des de decidir quins nodes estan directament connectats amb quins altre, a
decidir com serà el model de selecció distribuı̈t, etc. Malgrat aquestes dificultats, aquest
model presenta una avantatge respecte el model de gra gruixut. Concretament, el model
de gra fi permet una explotació massivament paral·lela de la computació, gràcies a que
per definició és totalment distribuı̈t, no disposant de cap control centralitzat. Malgrat
tot, aquest punt s’assoleix a canvi d’un augment considerable en el cost de les comuni-
cacions entre elements de procés, que sols surt rentable quan el cost, principalment de
l’avaluació d’un individu és molt elevada.
Un cop feta aquesta breu revisió dels principals models de paral·lelisme emprant pels
algorismes genètics, és el moment de reemprendre el fil del treball que aquı́ es presenta.
La mineria de dades és una tasca costosa, on s’han de processar volums ingents de
dades. Aquest volums, com es veurà en l’apartat següent, afecten directament al temps
d’avaluació d’un individu de la població. És per aquest motiu, el cost elevat d’avaluació
de la solució proposada per un individu4 , que en el GALE s’obtà per emprar un model
de paral·lelisme de gra fi. Aquest model permet, explotar al màxim el paral·lelisme per
buscar resoldre el problema de mineria de dades a resoldre. El que resta d’aquesta secció
es dedicarà exclusivament a descriure la topologia emprada pel GALE.
El GALE, pels motius esmentats anteriorment, es basa en una topologia de paral·le-
lisme de gra fi. Concretament, s’utilitza una malla toroidal de dues dimensions, tal i com
es mostra a la figura 6.4.a. Cada element de procés (o cel·la, tal i com l’anomenarem
d’ara en davant), que conté com a molt un únic individu, està directament connectat als
vuit veı̈ns que l’envolten. És important remarcar en aquest punt que un individu és una
solució complerta a la tasca de classificació a resoldre. És a dir, la solució al problema
de mineria de dades consisteix en trobar aquell individu que millor resolgui, per si sol,
el problema de mineria proposat. Com es pot apreciar aquest enfocament s’emmarca
clarament dins l’enfocament de Pittsburgh pel que fa a sistemes basats en algorismes
genètics. Tot seguit es podrà trobar un xic més formalitzada la definició de la topologia
que empra el GALE.
4
Quan es compara amb el cost de comunicació.
120 GALE: Model Evolutiu per la Mineria de Dades
Com es desprén de la definició anterior, una cel·la pot contenir zero o un individus.
La formalització d’aquest concepte es pot trobar a la definició següent.
Definició 9 Definirem estat (o cardinalitat) d’una cel·la ζ(Tij) com la funció definida
de la següent forma:
0 sii Tij és buida,
ζ (Tij) =
1 sii Tij conté un individu.
Definició 10 Definirem cardinalitat d’un tauler ζ(T ) coma el nombre de cel·les ocupa-
des. ζ(T ) serà la funció definida de la següent forma:
XX
ζ (T ) = ζ (Tij)
i j
Un cop definida la cardinalitat d’un tauler, ja es pot definir la mesura d’ocupació del
mateix, tal i com mostra la definició 11.
Arribats a aquest punt, tal i com s’ha comentat anteriorment, els models de paral·lelisme
de gra fi defineixen una topologia basada en el veı̈nat. Concretament, el GALE utilitza
una topologia toroidal, on cada cel·la està connectada al seu veı̈ns més pròxims, tal i
com mostra la figura 6.4. Conseqüentment, és imprescindible formalitzar la relació de
veı̈nat existent entre les cel·les de T .
a ⊕ b = (a + b) mod c
a ⊖ b = (a − b + c) mod c
Per concloure la formalització del tauler emprat pel GALE, ja sols falta definir la
cardinalitat del veı̈nat.
Donada l’estructura toroidal que utilitza el GALE, amb sols vuit veı̈ns per cada cel·la,
la cardinalitat del veı̈nat és fitada. Concretament
ζ(Tijν) ∈ [0, 8]
6.3.2 Mapping
En la secció anterior sols s’ha comentat quina és la topologia que empra el GALE com
a base per la paral·lelització de la computació. Associada a la topologia presentada,
existeix un altre problema a resoldre abans de poder passar a descriure l’algorisme que
proposa el GALE pròpiament. Com ja esmentar força cops, l’objectiu del GALE és resol-
dre problemes de mineria de dades, concretament problemes de classificació. Recuperant
la definició 6 (pg. 25) de problema de classificació, per dur a terme la tasca d’aprenen-
tatge es disposa, entre d’altres d’un conjunt Σ d’instàncies {e0, e1, . . . en}, pertanyents
al conjunt universal d’instàncies U presentat a la definició 5 (pg. 24), il·lustratives del
problema a resoldre. Conseqüentment, la pregunta que s’ha de resoldre abans de poder
descriure l’algorismes paral·lel és com es distribueixen els exemple de Σ al llarg del tauler
T.
Aquesta problemàtica és la que busca adreçar el mapatge (o mapping). L’objectiu
es decidir, per cada cel·la del tauler T , quines instàncies de Σ si dipositen. Per la
seva banda, les cel·les necessiten contenir alguna instància del problema de classificació
a resoldre, ja que aquestes es fan servir per avaluar el fitness de l’individu (solució al
problema) contingut. La definició 15 formalitza aquesta idea, indicant-ne també algunes
propietats.
Com es pot apreciar de la definició anterior, cada cel·la Tij conté un conjunt d’instàn-
cies µ(Σ, Tij), subconjunt de Σ. Aquest subconjunt d’instàncies µ(Σ, Tij) no pot ser buit,
ja que si ho fos la cel·la no disposaria de cap element per avaluar el fitness de l’individu
contingut. Per altra banda, ha d’existir alguna cel·la Tij que contingui tots les instàncies
disponibles, és a dir Σ. La finalitat d’aquesta propietat és garantir que s’està resolent
el problema de classificació original. Això és degut a que el fet d’assignar µ(Σ, Tij) ⊂ Σ
a través de la funció de mapping està canviant el problema original a resoldre, ja que
l’està relaxant eliminant-ne instàncies.
En el treball que aquı́ es presenta, s’ha fet servir un parell de funcions de mapping
diferents. L’objectiu, com es veurà més endavant, era avaluar si la forma de repartir les
instàncies de Σ sobre el tauler T afectava d’alguna forma el comportament del GALE en
el moment de resoldre el problema. Tot seguit es descriurà les dues funcions de mapping
emprades, les quals s’ha anomenat uniforme i piramidal.
6.3 Descripció del model 123
Uniforme
La funció de mapping més senzilla que es pot proposar és la que s’ha anomenat uniforme.
Aquest tipus de mapping consisteix en que cada cel·la Tij disposi de totes les instàncies
disponibles. La definició 16 presenta formalment la funció de mapping que correspon a
aquesta proposta.
La funció µu és una funció de mapping ja que satisfà les tres propietats exigides, tal
i com es demostra tot seguit.
Prova. La demostració que µu és una funció de mapping s’obté verificant les tres
propietats que s’han de satisfer. És a dir,
Per completar la demostració sols s’ha de substituir µu(Σ, Tij) pel seu valor, en aquest
cas Σ, tal i com s’indica a continuació:
Piramidal
L’altra funció de mapping utilitzada en aquest treball és la que s’ha anomenat piramidal.
La idea d’aquest tipus de mapping sorgeix de la voluntat de relaxar la complexitat del
problema P a resoldre. Concretament, l’assumpció que hi ha darrera d’aquesta proposta
de mapping és el fet que dins el procés evolutiu serà més ràpid de resoldre el problema
relaxat. D’aquesta manera, al disposar d’una solució que satisfà el problema relaxat, es
pot accelerar, al llarg del procés evolutiu, l’obtenció al problema original.
124 GALE: Model Evolutiu per la Mineria de Dades
Mid
a
x
Figura 6.5: Distribució d’instàncies de Σ sobre T emprant mapping uniforme
El primer punt per descriure aquest tipus de mapping és el què s’entrendrà per
relaxar el problema de classificació P. Existeixen gran quantitat de formes d’aproximar
la relaxació del problema de classificació. Concretament, la forma que es planteja es
basa en reduir el nombre d’instàncies existents en el problema de classificació. A menys
instàncies a tractar, per norma general, menys temps triga el procés evolutiu a obtenir
una solució que les descriu. Per aclarir un xic aquesta idea, tot seguit es presenta el que
s’entendrà per problema de classificació relaxat.
Com es pot apreciar de la definició anterior, aquesta és una possible forma de relaxar
el problema de classificació. Altres podrien passar, per exemple, per la reducció del
nombre d’atributs. Arribats a aquest punt, i per facilitar l’explicació de la funció de
mapping, és important introduir la figura 6.6. En aquesta figura es presenta la forma
en es vol relaxar el problema de classificació P a resoldre al llarg del tauler T . El que
la figura representa és la mida de Σr a mesura que es va relaxant. Concretament, per
cada cel·la Tij es presenta la cardinalitat (o mida) de Σr. Com es pot apreciar, en la
part superior de la piràmide truncada, Σr = Σ. Progressivament, i a mida que es va
acostant als extrems del tauler T , el problema P es va relaxant Pr cada cop més, és a
dir, posseeix menys instàncies.
Aquest tipus de mapping presenta dues caracterı́stiques interessants. La primera
5
Veure definició 15 (pg. 122).
6.3 Descripció del model 125
Mid
a
x
Figura 6.6: Distribució d’instàncies de Σ sobre T emprant mapping piramidal
existeix una simetria dins les cel·les del tauler. Com es pot apreciar a la figura 6.6, les
cel·les formen anells al voltant de les cel·les de la piràmide. Aquest anells s’expliciten a la
figura 6.7, la qual mostra gràficament que els anells estant formats de cel·les equivalents.
Quan es parla de cel·les equivalents, es parla de cel·les que comparteixen el mateix
problema relaxat Pr. La segona caracterı́stica a destacar és que, tal i com s’ha definit
Pr (def. 17), el relaxament de P és monòton, i la complexitat decreixent. Dit d’una
altra forma, les cel·les del centre de T contenen tots els exemples de Σ. Per contra,
a mida que un es desplaça cap a cel·les que pertanyen als extrems del tauler, es van
eliminat instàncies. Tornant a la definició 17, es pot formular aquesta monotonia de la
forma següent:
Σi+1 = Σi ∪ {ei+1} −→ Σi ⊂ Σi+1 (6.1)
El que és important comentar en aquest punt, es que la funció ⋆ mapa la posició de
cada cel·la sobre la seva classe d’equivalència corresponent. Això vol dir que per exemple
les cel·les T00, T01, T10, T02 i T206 pertanyen totes a la mateixa classe d’equivalència,
6
Esmentar que per simplificar la formulació de ⋆ s’ha assumit que l’extrem inferior del tauler T és
T00 .
126 GALE: Model Evolutiu per la Mineria de Dades
Com es pot apreciar, la funció µkp és paramètrica. El paràmetre k és l’encarregat de
mesurar l’àrea de la part superior de la piràmide truncada que genera aquest tipus de
mapatge. En el cas particular que k = 0 s’obté la funció de mapping uniforme µu. Però
abans d’acceptar µk p com a funció de mapping és precı́s comprovar que satisfà les tres
propietats exigides, tal i com es demostra tot seguit.
Prova. La demostració que µk p és una funció de mapping s’obté verificant les tres
propietats que s’han de satisfer. És a dir,
(1) µk
p(Σ, Tij) ⊆ Σ
(2) µk
p(Σ, Tij) 6= ∅
(3) ∃ij : µk
p(Σ, Tij) = Σ
6.3 Descripció del model 127
On el punt a queda demostrat per la definició 17 (pg. 124) i la propietat que se’n deriva
presentada a l’equació 6.1.
(2) µkp(Σ, Tij) 6= ∅. A l’igual que l’anterior, per demostrar aquesta propietat s’estudiaran
els dos possibles casos que proposa µk p
j k
|Σ|
(1+⋆(Tij ))
a. µk
p(Σ, Tij) 6= ∅ ⊣⊢ Σ k+1
6= ∅ sii ⋆ (Tij) < k,
k
b. µp(Σ, Tij) 6= ∅ ⊣⊢ Σ 6= ∅ sii ⋆ (Tij) ≥ k,
El cas b queda demostrat per la definició del problema P. El cas a es satisfà degut a
que sempre es compleix que:
|Σ|
(1 + ⋆(Tij)) > 0
k+1
j k
|Σ|
(1+⋆(Tij ))
D’això se’n dedueix que Σ k+1
6= ∅, quedant demostrada aquesta segona
propietat.
(3) ∃ij : µk p(Σ, Tij) = Σ. La demostració d’aquesta propietat és un xic diferent de
les dues anteriors, ja que sols s’ha de demostrar que sempre existeix una cel·la en la
qual es satisfà ⋆(Tij) ≥ k. Si això succeeix, dona com a resultat que en aquesta cel·la
µkp(Σ, Tij) = Σ, satisfent-se la propietat a demostrar. Per demostrar que aquesta cel·la
existeix, es recuperarà la definició de µk
p (def. 18). En aquesta s’afirma que
m n
0 ≤ k ≤ min ,
2 2
Per tant, si a la cel·la T m2 n2 és calcula la classe d’equivalència a la que pertany ⋆(Tij)
s’obté m n
⋆(Tij) = min ,
2 2
D’aquesta forma es demostra que es compleix, com a mı́nim en una cel·la, que ⋆(Tij) ≥ k,
ja que
k per
definició satisfà que 0 ≤ k ≤ min m n
2 2 . Conseqüentment a la cel·la
,
µk
p Tm n
2 2
= Σ, quedant aixı́ demostrada la tercera propietat.
Conseqüentment, un cop demostrades les propietats (1), (2) i (3), queda també demos-
trat que µk
p és una funció de mapping vàlida.
128 GALE: Model Evolutiu per la Mineria de Dades
GALE(T ,P)
FOR-EACH Tij ∈ T
DO IN PARALLEL
t ← 0
initialize Tij
evaluate the accuracy of individual in Tij using P
REPEAT
t ← t+1
merge individual in Tij among Tijν
split individual in Tij among Tijν
evaluate the accuracy of individual in Tij using P
survival of Tij among Tijν
UNTIL Ω (Tij, t)
DONE
RETURN T
Un cop revisades la topologia i el mapping que fa servir el GALE, tot seguit es passarà a
descriure l’algorisme paral·lel que s’implementa en el model proposat. Abans de fer-ho,
però, es vol recordar que l’algorisme que es proposa és un algorisme paral·lel de gra fi,
que es comporta com un SPMD (Simple Program Multiple Data). És a dir, cada cel·la
Tij de T executa el mateix algorisme de forma sincrònica, on el que varien són les dades
que manipula. La figura 6.8 mostra el pseudocodi del programa que executa el GALE.
Com es pot apreciar, l’algorisme proposat és defineix en termes de la cel·la Tij i el
seu veı̈nat Tijν. D’aquesta forma s’assoleix un alt grau de paral·lelisme. Per altra banda,
l’algorisme que executa la cel·la Tij presenta dues etapes diferenciades. La primera es
centra en la inicialització de la cel·la pròpiament dita; la segona modela el procés evolutiu
distribuı̈t que el GALE mapa sobre T .
En la primera etapa de l’algorisme, la cel·la Tij inicialitza la informació que conté.
Tal i com s’ha comentat en la secció anterior, cada cel·la Tij pot contenir com a molt un
individu. La primera decisió que duu a terme la cel·la és decidir en quin estat es troba.
És a dir, decidir si ζ(Tij) = 0, o bé si ζ(Tij) = 1. Aquesta decisió es pren de forma
probabilı́stica tal i com mostra la següent definició.
Com es pot apreciar pζ és constant per totes les cel·les de T , essent un paràmetre a
6.3 Descripció del model 129
ajustar del model proposat pel GALE. Per altra banda, la inicialització també calcula el
mapping del problema P que li correspon a la cel·la, és a dir µ(Σ, Tij). Aquesta primera
etapa de l’algorisme conclou calculant l’avaluació (o fitness) de l’individu contingut a la
cel·la. Aquesta avaluació, que sols es duu a terme quan ζ (Tij) = 1, utilitza el conjunt
d’instàncies obtingudes a partir de la funció de µ(Σ, Tij). La forma de calcular aquesta
avaluació s’explicarà en detall en la secció següent (secció 6.3.4).
La segona etapa de l’algorisme és la que introdueix el procés evolutiu pròpiament dit.
Com es pot apreciar a la figura 6.8, el cicle evolutiu està format per quatre processos
diferenciats: (1) merge, (2) split, (3) survival i (4) avaluació. Aquests quatre processos
s’explicaran amb detall en seccions posteriors. Malgrat això, tot seguit es comentarà,
breument, cadascun d’ells. El merge i el split s’encarreguen de la manipulació del material
genètic que defineix l’individu que conté la cel·la. Aquest procés es troba relacionat amb
el veı̈nat de la cel·la, aixı́ com els individus que contenen. El tercer procés, survival,
introdueix la pressió per la supervivència que requereix el procés evolutiu artificial que
es proposa. Com es pot veure a la figura 6.8, aquest procés també està relacionat amb
la informació de les cel·les que formen el veı̈nat. L’últim procés és l’avaluació. Aquest
procés és el mateix que es proposa en la primera fase de l’algorisme, en el qual és mesura
quan bé es comporta l’individu contingut a la cel·la.
El procés evolutiu, que descriu aquesta segona etapa, es manté fins que s’assoleix
algun criteri de finalització. Concretament, el criteri de finalització pot ser múltiple.
Malgrat això, recordar que una de les caracterı́stiques del GALE és que és independent
del tipus de representació del coneixement emprada. Per aquest motiu la condició de
finalització del procés evolutiu no incorpora cap mena de coneixement sobre la informa-
ció. Concretament, la funció de finalització sols incorpora informació del procés evolutiu
pròpiament dit. El criteri de finalització del GALE, que s’ampliarà a la secció 6.3.4, és
el que es presenta a la definició 20. D’aquesta definició s’aprecia que totes les cel·les
comparteixen el mateix criteri de finalització Ω (Tij).
6.3.4 Avaluació
Un punt imprescindible dins el model que proposa el GALE és la capacitat d’una cel·la
Tij per avaluar l’individu TijI que conté (o càlcul del fitness). Per facilitar-ne l’explicació
assumirem que ζ (Tij) = 1. Això es degut, a que el càlcul de l’avaluació d’un individu,
no té sentit quan ζ (Tij) = 0.
Per poder calcular l’avaluació d’un individu és necessari fer algunes definicions prèvies.
Com es podrà observar aquestes definicions serviran per augmentar la informació asso-
ciada a una cel·la, concretament la informació referent a quan bé està resolent l’individu
130 GALE: Model Evolutiu per la Mineria de Dades
el problema mapat sobre la cel·la. Com ja s’ha vingut esmentant repetides vegades
fins al moment, el GALE és capaç de fer evolucionar diferents tipus de representacions
del coneixement. Malgrat això, totes elles comparteixen una caracterı́stica en comú,
estan pensades per resoldre problemes de classificació. Conseqüentment, aquestes dife-
rents representacions, donada una instància, són capaces de retornar la classe associada
qualsevol instància e presentada.
Com es pot apreciar, la definició anterior no presenta com la funció porta a terme la
classificació pròpiament dita. Això és degut a que depèn directament de la representació
del coneixement que l’individu estigui descrivint, tal i com es presenta a l’apartat 6.4
(pg. 143). Aquesta funció és la base per mesurar el comportament de l’individu TijI
davant la tasca de classificació que ha de realitzar dins la cel·la. El comportament, pel
que fa a la classificació, de l’individu contingut a la cel·la es recull emprant una matriu
de confusió, tal i com mostra l a següent definició.
Definició 22 Anomenarem matriu de confusió a aquella matriu TijC de |X∗ |×|X∗ | definida
com:
TijCkl = N eχ = k ∧ ∇ TijI, e = l , ∀ k, l ∈ X∗
e∈µ(Σ,Tij )
Cada element TijCkl de la matriu, conté el nombre d’instàncies que essent de classe
eχ = k han estat classificades per ∇ TijI, e com pertanyents a la classe l.
La informació continguda a TijC és la base per poder definir una mesura de lo acurat
que és l’individu TijI resolent el conjunt d’instàncies mapades sobre la cel·la, és a dir,
µ(Σ, Tij). Aquesta mesura serà la base per definir l’avaluació de l’individu contingut a
la cel·la.
Aquesta mesura, compresa a l’interval [0, 1], correspon al quocient entre el nombre
d’instàncies de µ(Σ, Tij) correctament classificades per TijI, i el nombre total d’instàncies
classificades.
6.3 Descripció del model 131
1.0
0.8
0.6
A (T ij)
0.4
0.2
0.0
ε(T ij)
Arribats a aquest punt, ja es disposa d’una mesura que permet avaluar un individu.
Com es pot apreciar la mesura presentada a la definició 23 sols té en compte la informació
resultant de classificar les instàncies disponibles. Degut a que el GALE ha d’ésser capaç
de treballar amb diferents representacions del coneixement, la mesura final de l’avaluació
no incorpora informació particular sobre l’individu. És a dir, si per exemple un individu
és un conjunt de regles es podria esbiaixar l’avaluació d’un individu en funció del nombre
de regles contingudes o la complexitat de les mateixes. Aquest no és el cas en aquest
treball pels motius esmentats anteriorment. Fetes aquestes consideracions, ja es pot
passar tot seguit a definir l’avaluació d’un individu.
Definició 24 L’avaluació d’un individu TijI en una cel·la Tij és aquella funció A (Tij) tal
que:
A (Tij) = E (Tij)2
Com es pot apreciar a la definició 24, l’avaluació d’un individu sols depèn de lo
encertadament que resolgui el problema de classificació. Sols s’ha introduı̈t la mo-
dificació d’elevar al quadrat l’encert de classificació. El motiu passa per poder afa-
vorir aquells individus que presenten un millor encert en contra dels menys acurats
[De Jong and Spears, 1991]. Dit d’una altra forma, diferències significatives d’encert
en la classificació, quan aquesta és dolenta, presenten petites variacions en l’avaluació.
Per contra, petites variacions en l’encert de classificació, quan aquest és bo, representen
variacions importants en l’avaluació.
La figura 6.9 mostra gràficament el comportament de A (Tij). En lı́nia discontı́nua
132 GALE: Model Evolutiu per la Mineria de Dades
Evaluate(Tij)
FOR-EACH k, l ∈ X∗
DO
TijCkl ← 0
DONE
FOR-EACH e ∈ µ(Σ, Tij)
DO
k ← eχ
l ← ∇ TijI, e
TijCkl ← TijCkl +1
DONE
acc ← 0
FOR-EACH k ∈ X∗
DO
acc ← acc + TijCkl
DONE
2
acc
A (Tij) ←
|µ(Σ, Tij)|
6.3.5 Merge
Una de les principals caracterı́stiques de tot algorisme evolutiu és la seva capacitat per
recombinar la informació genètica que codifiquen els seus individus. El merge s’encarrega
recombinar el material genètic de l’individu TijI. A diferència d’un algorisme genètic
tradicional en el qual tot individu es pot recombinar amb qualsevol altre, en el GALE,
aquest procés de recombinació, degut a la topologia emprada, queda restringit al conjunt
d’individus que formen el veı̈nat de Tij. És a dir, l’individu TijI sols pot recombinar-se
amb algun dels individus ubicats a alguna de les cel·les veı̈nes de Tij, o el que és el
mateix Tijν.
Dins del procés que proposa el merge es pot dividir en: (1) tasques no depenents de
la representació, i (2) tasques depenents de la representació. De fet, les primeres estan
relacionades amb seleccionar quin dels individus pertanyents a les cel·les que conformen el
veı̈nat Tijν serà l’escollit per recombinar-se amb TijI. Per contra, les tasques dependents de
la representació tenen lloc un cop ja s’ha decidit quins dos individus s’han de recombinar.
La recombinació es basa, com es veurà a la secció 6.4, en l’ús d’operadors de creuament
tradicionals lligats a la representació del coneixement que el GALE evoluciona.
En aquesta secció es descriurà les tasques independents de la representació del conei-
xement. El merge no és un procés d’execució determinista. A l’igual que els processos de
recombinació presents als algorismes genètics tradicionals, la recombinació del material
genètic que proposa el merge sols es duu a terme si es satisfà una certa probabilitat.
Aquesta probabilitat és la que es presenta a la definició 26. Com es pot entreveure de
la definició, aquesta probabilitat pM és constant per totes les cel·les Tij que formen el
tauler T .
Existeix una altra restricció a la possible aplicació del merge en una cel·la Tij. La
primera tasca que duu a terme el merge és escollir un individu contingut en una cel·la
veı̈na. Donada la cel·la Tij, el GALE escull un individu a l’atzar dins de les cel·les
veı̈nes de Tij, és a dir Tijν. Òbviament, això sols es pot fer quan hi ha veı̈ns, o dit
d’una altra forma, quan la cardinalitat del veı̈nat és més gran que zero, ζ(Tijν) > 0.
Conseqüentment, si es satisfà alhora la probabilitat pM i que ζ(Tijν) > 0, llavors es pot
tirar endavant amb el merge.
134 GALE: Model Evolutiu per la Mineria de Dades
Tij
La figura 6.11 mostra un exemple del procés de tria comentat anteriorment. Com
es pot apreciar la cel·la Tij disposa d’un veı̈nat format per:
El merge es pot aplicar degut a que la cardinalitat del veı̈nat és més gran que zero,
concretament ζ(Tijν) = 3. On el conjunt de possibles candidats a la recombinació amb
TijI, són:
ν
TijI = {Ti⊖1j⊕1
I I
, Ti⊕1j I
, Ti⊖1j⊖1}
Tal i com ja s’ha esmentat, la tria de l’individu que s’haurà de recombinar amb TijI és
ν
tria a l’atzar dins del conjunt de veı̈ns existents, és a dir, TijI . La figura 6.11 representa
l’individu escollit pintant la cel·la de color gris.
X : TijI × IM
ij 7−→ D
TijI
TijI IM
ij X D
IM
ij
T (t-1) T (t)
Merge(Tij)
IF rand(0, 1) < pM THEN
DO ν
IM
ij ← rand T I (t-1)
ij
Tij(t) ← X TijI(t-1), IM
I
ij
DONE
evoluciona amb intervals discrets de temps. És per aquest motiu que l’individu TijI(t) es
defineix en funció d’individus pertanyents a l’instant precedent de temps. Concretament,
TijI(t) és el resultat de recombinar el material genètic de TijI(t−1) i IM
ij (t−1). Finalment,
per concloure la descripció del merge,la figura 6.13 presenta el pseudocodi que el descriu.
6.3.6 Split
El segon procés del GALE que conforma el cicle evolutiu és la que s’ha anomenat split. Si
el merge es dedicava a la recombinació de material genètic, el procés que s’ha anomenat
split es centra en la introducció de canvis dins aquest material, a l’igual que la mutació
ho realitza en un algorisme genètic tradicional. Aquest procés es pot resumir dient que
la cel·la: (1) genera una còpia de l’individu TijI que conté, (2) introdueix canvis aleatoris
en el material genètic de l’individu copiat, i (3) finalment, seguint un cert criteri, ubica
el nou individu en alguna de les cel·les veı̈nes. Tot seguit es passarà a descriure en detall
cadascun dels elements que conformen aquest procés.
A l’igual que el merge, el procés de split és d’aplicació estocàstica. Això vol dir que
una cel·la Tij sols durà a terme aquest procés si es satisfà una certa probabilitat. Degut a
la proposta que realitza el procés de split, la finalitat d’aquesta probabilitat és doble. Per
una banda, la probabilitat serveix per determinar quan s’aplica el procés de split. Però,
per altra banda, aquesta probabilitat també és responsable del ritme de creixement en
l’ocupació del tauler. És a dir, degut a que el procés genera un nou individu que s’ubica
en alguna cel·la pertanyent a Tijν, aquesta probabilitat està directament relacionada, tal
136 GALE: Model Evolutiu per la Mineria de Dades
i com es veurà més endavant, amb l’evolució del nombre de cel·les ocupades al llarg de
l’evolució. La definició d’aquesta probabilitat es pot trobar tot seguit.
El primer que destaca de la definició anterior és que la probabilitat de split és diferent
per cada cel·la. Concretament, això és degut a que pS (Tij) és proporcional l’avaluació de
l’individu TijI. Per altra banda, el paràmetre ksp, és el llindar que controla la freqüència
màxima amb la qual es podrà invocar el procés de split, essent aquest llindar comú per
totes les cel·les de T .
Si la probabilitat pS es satisfà, la següent tasca que empren el split és duplicar l’in-
dividu Tij. Malgrat això, aquest procés no s’implementa de forma perfecte. En aquesta
còpia s’hi introdueixen errors aleatoris. La còpia imperfecte és pràcticament idèntica
a l’individu original, excepte algunes modificacions puntuals generades per l’error de la
còpia del genoma original. Aquest procés de còpia imperfecte està estretament relaci-
onat amb la representació del coneixement que el GALE estigui evolucionant en aquell
moment. Es degut a aquest fet que, a l’igual que succeı̈a amb l’operador de creua-
ment, l’operador de mutació, que és l’encarregat d’aquest procés de còpia imperfecte,
vindrà definit per cada representació que codifica l’individu. Això sı́, cada implementació
puntual d’aquest operador, donada una representació particular, segueix la definició 30
presentada a continuació.
Arribats a aquest punt, i havent obtingut l’individu ISij com a resultat d’aplicar
l’operador de mutació Y sobre l’individu TijI, la següent tasca que duu a terme el split
és decidir a quina cel·la veı̈na s’enviarà el nou individu. Aquesta decisió es pren en
funció de la configuració de les cel·les en l’estat t-1 que configuren el veı̈nat Tijν de
la cel·la Tij que està realitzant el procés de split. Concretament, la decisió es pren de
forma
diferenciada
en funció de si existeix alguna cel·la del veı̈nat en l’estat t-1 buida
ν
ζ Tij (t − 1) < 8, o no. Tot seguit es descriurà com es tria la cel·la per cadascun dels
dos possibles casos.
El primer cas és simple. Aquest succeeix quan ζ Tijν(t − 1) < 8, és a dir, quan
existeix alguna cel·la buida. El procés de split, representat gràficament a la figura 6.14,
6.3 Descripció del model 137
Tij Y ISij
T (t-1) T (t)
Figura 6.14: Ubicació en el split de l’individu ISij quan ζ Tijν(t − 1) < 8
Tij Y ISij
T (t-1) T (t)
Figura 6.15: Exemple d’ubicació en el split de l’individu ISij quan ζ Tijν(t − 1) = 8
escull com a cel·la destı́ una de les cel·les veı̈nes lliures a l’atzar. Es a dir, a l’instant t
s’escull una cel·la d’entre les que pertanyen al conjunt L(t) definit com:
a
L(t) = Tijν(t − 1) − Tijν (t − 1) (6.4)
El segon cas, representat gràficament a la figura 6.15, es dona quan ζ Tijν(t − 1) =
8, o el que és el mateix, no existeix cap cel·la de Tijν(t − 1) buida. En aquestes condicions
la cel·la escollida com a destı́ de TijI, a l’instant t, és aquella que conté l’individu menys
adaptat a l’instant t-1. Dit d’una altra forma, la cel·la destı́ r(t) ∈ Tijν tal que satisfà:
A (r(t)) = min
a
(A(c)) (6.5)
c∈Tijν (t-1)
Finalment, la figura 6.16 presenta el pseudocodi que descriu el procés que proposa el
split.
138 GALE: Model Evolutiu per la Mineria de Dades
Split(Tij)
IF rand(0, 1) < pS (Tij(t)) THEN
DO
ISij ← Y TijI(t-1)
IF ξ Tijν(t − 1) = 8 THEN
DO
r(t)I | A (r(t)) = min
a
(A(c)) ← ISij
c∈Tijν (t-1)
DONE
ELSE
DO
rand (L(t))I ← ISij
DONE
DONE
6.3.7 Survival
Tal i com es pot observar a la figura 6.8 (pg. 128), l’última tasca que la cel·la realitza,
un cop ha re-avaluant l’individu que conté i abans de comprovar la funció de finalització,
és la de decidir si l’individu sobreviurà. El que es busca en la tasca que s’ha anomenat
survival és esbiaixar el procés evolutiu cap aquells individus que presenten una millor
avaluació. La capacitat per seleccionar quins individus sobreviuen al llarg de l’evolució
és una de les principals caracterı́stiques de la computació evolutiva.
El survival defineix l’estat de la cel·la Tij a l’instant de temps t, aixı́ com l’individu
que conté si és el cas, en funció de la configuració i informació del veı̈nat Tijν a l’instant
de temps t, un cop la cel·la ha estat re-avaluada. A l’igual que succeı̈a amb el split,
en el survival la cardinalitat de Tijν(t) serà la que determinarà el comportament del
survival. Concretament, el survival presenta tres comportaments diferents en funció de
la cardinalitat. Aquests tres comportaments s’han anomenat: (1) aı̈llat, (2) sostenible,
i (3) superpoblat.
El comportament aı̈llat és produeix quan ζ Tijν(t) < 2. Aquest tipus de configu-
ració dificulta les possibilitats d’intercanviar informació genètica entre individus. Això
es degut a que com a molt existeix una sola cel·la del veı̈nat que conté un individu per
relacionar-se. Sota aquestes condicions, un individu sobreviu en funció de l’avaluació
que presenti resolent el problema de classificació a resoldre.
pa
R (Tij(t)) = A (Tij(t))
Finalment,
el comportament del survival anomenat sostenible és produeix quan 2 ≤ Sostenible
ζ Tijν(t) < 7. En aquest tipus de configuració existeix ja un nombre de veı̈ns que
permeten proposar que la probabilitat de sobreviure d’un individu depèn de l’avaluació
que presenten els seus veı̈ns. De nou, a l’igual que succeı̈a en el comportament de
superpoblació, el comportament sostenible és determinista. El comportament sostenible
és centra en decidir si l’individu TijI contingut a la cel·la a l’instant t continua ocupant-la.
Per decidir si l’individu sobreviu, la decisió es basa en dues mesures extretes de la
informació del veı̈nat, tal i om es pot apreciar a la definició que apareix tot seguit. Si la
condició es satisfà llavors l’individu sobreviu, altrament la casella resta lliure degut a la
mort de l’individu.
La figura 6.17 presenta el pseudocodi que descriu el survival. Aquest codi presenta
els tres comportaments (aı̈llat, sostenible i superpoblat), descrits anteriorment, en funció
de la cardinalitat del veı̈nat existent al voltant de la cel·la Tij.
140 GALE: Model Evolutiu per la Mineria de Dades
Survival(Tij)
I ← TijI(t)
IF ξ Tijν(t) < 2 THEN
DO
IF A(I) < rand(0, 1) THEN
DO
I←λ
DONE
DONE
ELSE IF ξ Tijν(t) < 7 THEN
DO
IF A(I) > Aµ Tijν(t) + ksr · Aσ Tijν(t) THEN
DO
I←λ
DONE
DONE
ELSE
DO
I ← r(t)I | A (r(t)) = max
a
(A(c))
c∈Tijν (t)
DONE
TijI(t) ← I
6.3.8 Test
Per concloure l’explicació del model que proposa el GALE el que es comentarà en aquesta
secció, no forma part pròpiament del model proposat. Tal i com es presentava a la figura
6.8 (pg. 128), el GALE és capaç de fer evolucionar individus en un tauler T que resolen
el problema de classificació P. Un cop el GALE ha finalitzat, retorna el tauler T que
conté els individus resultants de l’evolució duta a terme. Arribats a aquest punt sorgeix
inevitablement una pregunta: quina solució s’escull?.
Un punt important per entendre el que es proposarà a continuació, torna a ser
el fet que el model s’ha de mantenir el màxim d’independent de la representació del
coneixement que s’evoluciona. És per aquest motiu que els criteris emprats per la tria
de la solució final no inclouen elements especı́fics de la representació, com pot ser per
exemple el nombre de regles que descriu un individu. Conseqüentment, per aquesta tria
sol es pot emprar la informació continguda al tauler T . En les seccions que es podrà
trobar a continuació es descriurà les dues formes proposades per la tria de la solució
final. Abans, però, es realitzarà una definició prèvia, necessària per entendre el procés
de generar la solució final al problema P.
T P = {t ∈ T | µ(Σ, t) = Σ}
Com es pot apreciar a la definició 33, el que descriu el conjunt T P és el subconjunt
de cel·les que resolen el problema original P. Això implica, que el conjunt T P deixa fora
totes aquelles cel·les en que el mapping n’ha relaxat el problema. La primera decisió
important en el procés de tria de la solució final, i que comparteixen les dues propostes
que es presentaran a continuació, és que sols hi participaran aquelles cel·les que tracten
amb el problema original P a resoldre.
Abans de passar a descriure cadascuna de les dues formes de realitzar aquesta tria,
es vol comentar que la finalitat d’aquesta tria quedarà clarificada al capı́tol 8 (pg. 219).
En aquest punt sols es vol esmentar que aquesta solució final serà la que es farà servir
posteriorment per l’usuari. Conseqüentment, serà la solució proposada un cop s’ha
executat el GALE la que es proposarà com a resultat del procés de mineria de dades. De
moment, es passarà tot seguit a presentar les dues formes de construir aquesta solució
final, deixant per més endavant l’explicar amb detall la seva utilització la tesi que aquı́
es presenta.
Millor individu
La primera forma que es presenta en aquest apartat és molt simple. Aquesta es pot
resumir dient que s’escull aquell individu que presenta la millor avaluació dins de les
142 GALE: Model Evolutiu per la Mineria de Dades
cel·les del tauler que resolen el problema original P. Com es pot apreciar, aquesta forma
de proposar la solució final és simple. Senzillament consisteix en escollir l’individu que
presenta la millor avaluació dins del conjunt de cel·les T P . Això implica que la solució
serà aportada per una única cel·la, aquella que presenta la millor avaluació dins T P . O
el que és el mateix, la cel·la t que aportarà l’individu que esdevindrà la solució final es
pot expressar com:
És interessant ressaltar en aquest punt que la solució final escollida, a diferència del
que es presentarà a l’apartat següent, correspon a un únic individu.
Bagging
Cada element Bk del vector, conté el nombre de classificadors la classificació dels quals
∇ (I, e) correspon a la classe k.
Bagging(T ,e)
FOR-EACH k ∈ X∗
DO
Bk ← 0
DONE
I
FOR-EACH I ∈ T P
DO
k ← ∇ (I, e)
Bk ← Bk + 1
DONE
RETURN k | Bk = max∗ (Bk)
c∈X
L’últim gran apartat que inclou la descripció del GALE tracta de les representacions del
coneixement que s’han utilitzat en aquesta tesi. Tal i com s’ha vingut comentant repe-
tides vegades, el model que proposa el GALE és capaç d’evolucionar diferents tipus de
representació del coneixement. És important deixar clar en aquest punt, que les execuci-
ons del GALE són homogènies respecte la representació del coneixement evolucionada.
Dit d’una altra forma, l’usuari decideix quina representació vol que es faci servir. On
sols es fa servir una representació alhora d’executar el procés evolutiu, cara a simplificar
la interacció entre els individus.
Aquest apartat no farà un repàs exhaustiu dels tipus de representació del coneixe-
ment que es podrien fer servir. El que es podrà trobar en aquest apartat és el repàs
de les representacions del coneixement emprades pels individus en el treball realitzat en
aquesta tesi. Concretament, les representacions que es podran trobar a continuació es
poden dividir en tres tipus principals7 .
El primer tipus de representació que es pot trobar a continuació (secció 6.4.1) és la es
basa en l’ús de regles nominals. El motiu d’incloure aquests tipus de regles és per facilitar
7
Per una explicació detallada de cadascuna d’elles, aixı́ com la problemàtica associada a cadascuna
d’elles, es pot trobar comentada àmpliament al capı́tol 3 (pg. 19).
144 GALE: Model Evolutiu per la Mineria de Dades
la comparació dels resultats que obté el GALE amb sistemes tradicionals d’aprenentatge
de regles emprant computació evolutiva, tal i com es presentaven al capı́tol 4 (pg. 51).
El segon tipus de representació utilitzada (secció 6.4.2) pertany als arbres de decisió.
Concretament, el GALE s’ha provat amb diferents tipus d’arbres (ortogonals, oblics i
multivariats). Finalment el tercer i últim tipus de representació utilitzada és la basada
en instàncies (secció 6.4.3). Aquest tipus de representació també explora diferents tipus
d’aproximacions, concretament les basades en instàncies totalment definides, això com
les parcialment definides.
Tot seguit es comentarà cadascuna d’aquestes representacions. Concretament, per
cada representació es descriurà dues parts diferenciades. La primera passarà per la
descripció de la codificació del genoma realitzada per poder definir els individus que
manipula el GALE, aixı́ com de la funció de classificació ∇ proposada. La segona,
descriurà els operadors genètics especı́fics que s’han de definir per poder permetre a
la representació ser manipulada pel model que presenta el GALE. Concretament, els
operadors que es descriuran són, principalment, l’operador de creuament X (def. 28,
pàgina 134) i de mutació Y (def. 30, pàgina 136). Junt amb aquests dos operadors,
també es comentarà breument la forma d’inicialitzar la representació, ja que el procés
evolutiu comença emprant una població inicialitzada a l’atzar.
6.4.1 Regles
El primer tipus de representació que es presenta és aquell que es basa en l’ús de regles.
Concretament, el tipus de regla que s’utilitza es basa en la conjunció de testos nomi-
nals sobre parelles atribut valor. Aquesta representació no inclou el test sobre atributs
numèrics, deixant-ho per l’apartat següent. Tal i com s’ha comentat anteriorment, el
primer que es passarà a descriure és com es codifica dins els genoma de l’individu el
conjunt de regles.
La primera consideració a tenir en compte és que un individu és un conjunt de
regles de mida variables. Les regles que es volen codificar són de l’estil condició →
acció. On la condició és la conjunció de testos de la forma atribut valor. Per contra,
l’acció recull la classe que s’associa a la condició de l’antecedent. Aquest tipus de
representació, presentada amb detall a la secció 3.3.3 (pg. 32), proposa la cerca d’un
conjunt de regles, de longitud fixa, com a solució al problema de mineria de dades a
resoldre. Conseqüentment, els individus que manipularà el GALE han de codificar, en el
seu genoma, conjunts variables de regles.
La figura 6.19 mostra gràficament com el genoma d’un individu del GALE codifica
aquest tipus de representació. Com es pot apreciar, el genoma correspon a una estructura
lineal en la qual es replica, de mida variable, els blocs de mida fixa que són les regles de
classificació. Cada regla queda codificada com una successió de valors. En la condició,
aquests valors corresponen al valor que han d’adoptar els diferents dels atributs de A en
el problema P. Existeix un valor particular, #, que poden adoptar tots els atributs en
la condició indicant que l’atribut no s’ha de tenir en compte en el moment de testejar
6.4 Representacions del coneixement emprades 145
r1 r2 r3 rn
c1 c2 c3 c4 cm k
ci = α ci = #
Figura 6.19: Estructura del genoma dels individus que codifiquen conjunts de regles
la conjunció que descriu la condició. Pel que fa a l’acció, aquesta codifica una de les
possibles classes de X pel problema P.
Donada aquesta codificació, també és imprescindible descriure pels individus que co-
difiquen regles la funció de classificació ∇ davant d’una instància qualsevol e presentada Funció de
a la definició 21 (pg. 130). El procés es relativament simple, retornant la classe de la classificació
primera regla que s’activa. O el que és el mateix, la classe de la primera regla en la
qual la conjunció de testos de la condició del la regla, donada la instància e, és satisfà.
Com es pot apreciar aquest procés de classificació tracta les regles a mida que van apa-
reixen en la tira que codifica el genoma de l’individu. És pot donar el cas, que donada
una instància e i un individu I no s’activi cap regla. En aquesta situació, el procés de
classificació retorna la classe buida λ, on λ ∈ X∗ . Per poder definir aquest procés, el
pseudocodi del qual es presenta a la figura 6.20, és necessari formalitzar l’activació de
les regles, aixı́ com la nomenclatura que es farà servir, tal i com mostra la definició 35.
Definició 35 Donada una instància e = he0, e1, . . . eli i una regla r = hr0, r1, . . . rl : rχi,
la regla r és activada per la instància e, o r ⊜ e, si es satisfà:
∀
i∈{1...l}
(ri = ei) ∨ (ri = #) ,
Per altra banda, dins el model que proposa el GALE existeixen dos operadors que
manipulen la representació del coneixement codificada pels individus. L’operador de
creuament X , presentat a la definició 28 (pg. 134), s’encarrega de recombinar el material
genètic de dos individus. D’igual forma, l’operador de mutació Y, presentat a la definició
30 (pg. 136), també manipula el material genètic, però ho fa introduint lleugeres
modificacions al genoma descrit per l’individu.
La forma de codificar les regles, presentades a la figura 6.19, simplifica la implemen-
tació d’aquests operadors. Degut a la seva estructura es pot re-aprofitar els operadors
tradicionals presentats a la literatura dels algorismes genètics [Goldberg, 1989], tal i com
s’han comentat al capı́tol 4 (pg. 51). Concretament, l’operador X emprat és un ope-
rador de creuament amb un únic punt de tall. A l’igual que les propostes tradicionals,
aquest operador escull a l’atzar per cada individu un punt pel qual tallar el material
genètic intercanviant els fragments de material entre els individus. Aquests intercanvi
146 GALE: Model Evolutiu per la Mineria de Dades
∇(TijI,e)
(k, i) ← (λ, 1)
R ← TijI
WHILE (k = λ ∧ i ≤ n)
DO
r ← Ri
IF (r ⊜ e) THEN
DO
k ← rχ
DONE
i←i+1
DONE
RETURN k
Figura 6.20: Algorisme de la funció de classificació per individus que el seu genoma
codifica regles
es realitza de tal forma que els dos fragments que composen la descendència prové del
material pertanyent a ambdós progenitors. La diferència respecte als operadors tradici-
onals és que els punts de tall escollits a l’atzar sols han de complir que corresponen al
mateix punt dins d’una regla, no restringint-se la regla dins de cada individu a emprar.
El motiu d’aquest tipus de tria dels punts és degut a que l’operador de creuament X
ha de treballar amb genomes de longitud variable (conjunt variable de regles). L’altra
peculiaritat d’aquest tipus d’operador rau en el fet que X sols genera un descendent, en
comptes dels dos tradicionals dels algorismes genètics.
Per altra banda, l’operador de mutació Y també adopta una implementació particular
en els individus que en el seu genoma codifiquen conjunts de regles. La implementació
utilitzada en el GALE és una senzilla variació de la mutació uniforme tradicional dels
algorismes genètics [Goldberg, 1989]. Concretament, Y consisteix en generar un nous
valors a l’atzar en els gens del genoma. Això sı́, sols es realitza aquesta modificació si
es satisfà una certa probabilitat.
Tal i com s’ha vingut comentant fins al moment, les regles que es codifiquen en
aquest tipus d’individus sols poden treballar amb atributs nominals, a diferència de les
que es presentaven a la secció 3.3.3 (pg. 32). Cara a ampliar el tipus d’atribut que
poden manegar les regles es decidir no complicar la codificació simple presentada fins
al moment. El que es proposa en el seu lloc és aprofitar una propietat que presenten
els arbres de decisió ortogonals, tal i com es presentà a l’exemple 11 (pg. 33). Con-
cretament, és el fet que dels arbres de decisió ortogonals se n’extreu de forma directe
conjunts de regles de classificació equivalents. Degut a aquesta caracterı́stica, el GALE
empra la codificació que es presenta a l’apartat següent, basada en arbres de decisió,
per l’obtenció d’aquest tipus de conjunts de regles.
6.4 Representacions del coneixement emprades 147
El segon tipus de representació del coneixement que es pot evolucionar amb el GALE
es basa en l’ús arbres de decisió. Com ja s’ha comentat en l’apartat 3.3.2 (pg. 27),
existeixen diferents tipus d’arbres de decisió en funció del tipus de test que es proposen
en els nodes de la seva estructura jeràrquica. En aquest treball s’ha restringit l’evolució
a tres diferents tipus d’arbres de decisió, que són:
1. Ortogonals
2. Oblics
3. Multivariats
Elements comuns
Els diferents tipus d’individus que codifiquen arbres de decisió presenten una carac-
terı́stica comuna. Aquesta és que, a diferència dels individus que codifiquen regles, el
genoma no es representa en forma de tira de gens. El que s’utilitza per representar arbres
de decisió són implementacions dinàmiques arborescents procedents de la programació
genètica [Koza, 1992, Koza, 1994, Koza et al., 1999].
Cara a unificar el llenguatge que es farà servir en els diferents individus que codifiquen
els arbres de decisió, en aquest apartat es faran algunes definicions que s’utilitzaran més
endavant. Com s’ha introduı̈t anteriorment, la codificació dels genomes dels individus
que codifiquen arbres de decisió es basa en jerarquies dinàmiques, tal i com presenta
la figura 6.21.a. Les definicions 36 i 37 formalitzen la notació que es farà servir per
aquesta estructuració. La figura 6.21.b presenta la notació compacta que s’empra per
representar l’exemple presentat a la figura 6.21.a.
δ1
δ2 δ3 δ4
δ5 δ6
∆ = [δ1, < [δ2], [δ3, < [δ5], [δ6] >], [δ4] >]
(a) Representació gràfica (b) Notació compacta
test δ distingit ∆δ, anomenat test arrel, i zero o més agregacions jeràrquiques disjuntes,
o arbres de decisió, que es notarà com ∆i on i = 1, 2 . . . d. Escriurem ∆ com [δ, <
∆1, ∆2, . . . ∆d >].
És important destacar en aquest punt que tant el test δ, com la funció de classificació
∇, depenen del tipus d’arbre de decisió amb que es treballi. A continuació es poden
trobar algunes definicions complementàries que estenen la flexibilitat de la notació.
Ortogonals
3. Funció de classificació.
4. Operadors genètics.
L’estructura dels testos varia en funció de sobre quin atribut a s’està definint. És a Estructura
dir, si el test que proposa el node recau sobre un atribut nominal o numèric. En el cas dels testos
que l’atribut sigui nominal, el test δ es el resultat de la comparació relacional ≤ entre
la constant continguda en el node, i el valor que aquest atribut a pren en la instància
que s’està classificant ea. Com es pot apreciar, el resultat d’aquesta classificació és bi-
avaluada. Per altra banda, en el cas que l’atribut a sigui nominal, el test escollit difereix
lleugerament. Concretament, el test actua com a discriminant dels possibles valors que
pot prendre a, és a dir |a|. Aquest punt és important, tal i com queda reflectit en la
definició següent.
Definició 40 Es definira el node intern ortogonal δ en funció del tipus d’atribut sobre
el qual s’està realitzant el test.
Numèric: el test definit per δ es defineix com: δα ≤ δρ. On δα és l’atribut sobre el que
es realitza el test relacional, i δρ la constant sobre la qual es realitza la comparació.
Nominal: el test definit per δ es defineix com el discriminant o descodificador del valor
que pren l’atribut δα en la instància e a classificar.
Es notarà com η (δ, e) al valor resultant del test proposat per δ davant la instància e.
Tal i com es defineixen els nodes interns (def. 40) no queda clar com aquest s’agrupen
de forma jeràrquica. La idea és simple, sempre que s’ha de classificar una instància
qualsevol e es comença pel node distingit ∆δ. Un cop s’ha avaluat ∆δ, el procés de
classificació de e continua en el ∆i tal que i correspon al resultat de l’avaluació del test
∆δ, és a dir ∆δ ⊜ e. Cara a simplificar la notació, el resultat de testos reals correspondrà
{1, 2} (fals, cert), mentre que pels atributs numèrics aquest correspon a {1, . . . |X|}. Això
força que, per construcció, ∆c = 2 quan ∆δ és un test numèric, mentre que ∆c = |X|
quan ∆δ és un test nominal.
L’estructura de les fulles és força elemental. Les fulles de l’arbre codifiquen la classe Estructura de
associada a la conjunció de testos del camı́ existent entre el node arrel ∆ i la fulla. La les fulles
definició de fulla es presenta a la definició 41.
La figura 6.22 presenta la funció de classificació que utilitzen els individus que en el Funció de
seu genoma codifiquen arbres de decisió ortogonals. Com es pot apreciar, aquest procés classificació
de classificació retorna la classe continguda en aquella fulla a la qual s’arriba pel camı́
que indiquen els testos davant la instància a classificar e. Mirant més detalladament la
150 GALE: Model Evolutiu per la Mineria de Dades
∇(TijI,e)
(k, ∆) ← (λ, TijI)
IF (∆c = 0) THEN
DO
k ← ∆χ
DONE
ELSE
DO
i ← η (∆δ, e)
k ← ∇(∆i, e)
DONE
RETURN k
Figura 6.22: Algorisme de la funció de classificació per individus que el seu genoma
codifica arbres de decisió ortogonals
classificació que es proposa en aquest tipus d’arbre de decisió, queda patent el fet que
el camı́ fins a les fulles representa la conjunció de testos, mentre que els nodes interns
representen disjuncions8 .
L’últim punt que falta per descriure completament com els individus codifiquen arbres
de decisió ortogonals en el seu genoma, i com aquest és manipulat a posteriori, són els
Operadors operadors genètics. Pel que fa a l’operador de creuament X , els individus del GALE
genètics aprofiten directament, gràcies a la codificació del genoma presentada, el creuament amb
un punt de tall que s’utilitza tradicionalment per la programació genètica [Koza, 1992],
aixı́ sı́, sols generen un descendent. Quelcom semblant succeeix amb l’operador de
mutació Y. Aquest operador consisteix senzillament en generar nous valors a l’atzar de
∆δ, o ∆χ en funció del tipus de node, quan es fa una certa probabilitat constant fixada
a priori.
A l’igual que succeı̈a amb els individus que en el seu genoma codifiquen regles, els
individus que codifiquen arbres de decisió ortogonals també necessiten ser inicialitats per
poder formar una població inicial pel GALE. Aquesta inicialització no es tant senzilla com
el cas dels individus que codifiquen regles. Però a l’igual que succeeix amb els operadors
X i Y, s’utilitza el mètode grow tradicional també de la programació genètica. El mètode
consisteix en la construcció progressiva de l’arbre de decisió ortogonal, decidint a l’atzar
el tipus de nodes descendents de l’arrel ∆δ (interns o fulla), i repetint recursivament per
cadascun d’aquest nodes nodes el mateix procés, d’aquı́ el nom de grow.
8
És per aquest motiu que aquest tipus d’arbre també reben el nom de arbres AND/OR, fet que en
permet l’extracció de regles equivalents.
6.4 Representacions del coneixement emprades 151
Oblics
Tal i com es descrigué en l’apartat 3.3.2 (pg. 27), els arbres de decisió ortogonals
presenten liminitacions importants. El principal inconvenient que posseeixen rau en la
forma en que es defineixen els testos δ (definició 40) en els nodes interns de l’arbre. El
motiu és que amb el tipus de test que es proposa, un arbre de decisió ortogonal genera
fronteres de classificació perpendiculars als eixos que defineix A+. Això implica que
quan la solució al problema de mineria no sigui paral·lela als eixos de l’espai d’atributs,
els arbres de decisió ortogonals presenten efectes d’escala. Concretament, busquen
aproximar la frontera a partir de testos ortogonals generant arbre poc acurats i de mida
elevada, tal i com es presentava en l’exemple 7 (pg. 29).
Una possible solució a aquest problema és la proposada pels arbres de decisió oblics.
En aquest tipus d’arbre de decisió es proposa, pel nodes interns de l’arbre, testos que
defineixen fronteres lineals orientables. És a dir, el test es basa en comprovar si un punt
es troba pel damunt, o no, d’un determinat hiperplà que defineix el propi test o node
intern. Concretament el test a realitzar donada una instància e és el que es presentà a
l’equació 3.2 (pg. 30), que tot seguit es reprodueix.
|A|
X
αiei + α|A|+1 > 0 (6.10)
i=1
Definició 42 Es codificarà el node intern d’un arbre de decisió oblic ∆δ com al vector de
coeficients α1, α2, . . . α|A|+1 , els quals es notaran com δαi . Es notarà com η (∆δ, e)
al valor resultant de calcular:
|A|
X
η (∆δ, e) = δαi ei + δα|A|+1
i=1
Finalment, el test definit per ∆δ, donada una instància e qualsevol, es defineix com:
η (∆δ, e) > 0
Per poder completar la definició de l’estructura que presenta el genoma dels arbres
de decisió oblics falta descriure l’estructura de les fulles. L’estructura de les fulles dels
arbres de decisió oblics és la mateixa que es presentava en els arbres de decisió ortogonals
a la definició 41 (pg. 149).
152 GALE: Model Evolutiu per la Mineria de Dades
∇(TijI,e)
(k, ∆) ← (λ, TijI)
IF (∆c = 0) THEN
DO
k ← ∆χ
DONE
ELSE
DO
IF (η (∆δ, e) ≤ 0) THEN
DO
k ← ∇(∆1, e)
DONE
ELSE
DO
k ← ∇(∆2, e)
DONE
DONE
RETURN k
Figura 6.23: Algorisme de la funció de classificació per individus que el seu genoma
codifica arbres de decisió oblics
La figura 6.23 presenta la funció de classificació que utilitzen els individus que en Funció de
el seu genoma codifiquen arbres de decisió oblics. Com es pot apreciar, a l’igual que classificació
succeı̈a amb els arbres de decisió ortogonals, aquest procés de classificació retorna la
classe continguda en aquella fulla a la qual s’arriba pel camı́ que indiquen els testos
davant la instància a classificar e. Aquest testos corresponen ara a fronteres lineals
orientables en funció dels coeficients de ∆δ. Aquests coeficients seran ajustats com a
resultat del procés evolutiu que el duu a terme el GALE.
L’últim punt que falta per descriure completament com els individus codifiquen arbres
de decisió ortogonals en el seu genoma, i com aquest és manipulat a posteriori, són els
Operadors operadors genètics. Pel que fa a l’operador de creuament X , els individus del GALE
genètics aprofiten, gràcies a la codificació del genoma presentada, el creuament amb un punt
de tall que s’utilitza tradicionalment per la programació genètica [Koza, 1992]. Aquest
operador sols introdueix una lleugera variant per poder afrontar que els nodes interns de
l’arbre de decisió conté un vector de coeficients δα. La modificació que s’introdueix rau
en el fet que els dos nodes dels progenitors, a partir dels quals es generarà l’intercanvi de
material genètic, apliquen alhora un operador de creuament d’un punt de tall tradicional
dels algorismes genètics [Goldberg, 1989]. El motiu és permetre recombinar el material
genètic que representa els vectors de coeficients dels nodes escollits. Per altra banda,
l’operador de mutació Y consisteix senzillament en generar nous valors a l’atzar de ∆δα i ,
o ∆χ en funció del tipus de node, quan es satisfà una certa probabilitat constant fixada
a priori.
6.4 Representacions del coneixement emprades 153
A l’igual que succeı̈a amb els individus que en el seu genoma codifiquen arbres de
decisió ortogonals, els individus que codifiquen arbres de decisió oblics també necessiten
ser inicialitats per poder formar una població inicial pel GALE. Aquesta inicialització
utilitza també el mètode consistent en la construcció progressiva de l’arbre de decisió
oblic, decidint a l’atzar el tipus de nodes descendents de l’arrel ∆r (interns o fulla), i
repetint recursivament per cadascun d’aquest nodes el mateix procés, també conegut
com a procés grow.
Multivariats
Els arbres de decisió multivariats, que es proposen en aquesta tesi, són un pas més en
l’augment de la flexibilitat dels testos dels nodes interns presents en l’arbre de decisió. La
proposta que s’implementa en aquest tipus d’individus del GALE, tal i com s’ha esmentat
a l’apartat 3.3.2 (pg. 27), correspon al treball realitzat sobre la classificació emprant
regions basada en l’agregació jeràrquica d’instàncies publicat a [Llorà and Garrell, 2000b,
Llorà and Garrell, 2000a]. En aquest apartat, a part de descriure la implementació del
genoma d’aquest tipus d’arbre, s’exposarà breument com funciona la classificació basada
en regions proposada.
L’estructura dels testos dels nodes dels arbres de decisió multivariats que es proposa Estructura
es basa en el concepte de punt significatiu [Llorà and Garrell, 1999b] dins de l’espai A+ dels testos
definit pel conjunt d’atributs A del problema P. El que es busca és identificar regions
d’aquest espai que comparteixin la mateixa classe associada.
ρ és un punt de l’espai d’atributs tal que ρ ∈ A+. π(ρ) és el subconjunt d’atributs,
no buit, emprat per definir ρ. Un test ∆δ permetent l’ús de punts parcialment
definits, es a dir:
π(ρ) ⊆ A ∧ π(ρ) 6= ∅
θ és un llindar, θ ∈ ℜ+, que defineix el radi de la regió de classificació definida per ∆δ.
Un punt important dels arbres de decisió multivariats que es proposa és el fet que
tots els nodes són homogenis. És a dir, tal i com es presenta a la definició 43, no es
fa distinció a l’estructura entre el node intern i fulla, ja que ambdós comparteixen la
mateixa estructura. La principal diferència rau en el nombre de descendents del node, i
el tractament que es fa dels mateixos en funció d’aquest informació, tal i com es veurà
més endavant.
La definició de la regió de classificació d’un test δ s’obté a partir de la funció de
similitud γ. La finalitat d’aquesta funció és permetre determinar si una instància qualse-
vol e, pertany a la regió definida per δ, és a dir e ∈ δ. En aquest cas la instància e serà
154 GALE: Model Evolutiu per la Mineria de Dades
classificada en la mateixa classe que la descrita per ∆δ, on tot seguit es detallarà aquest
procés. Per contra, si e no pertany a la regió definida per δ no es fa cap suposició sobre
la classe a la qual pertany e. Per tant, és es marcarà e com a pertanyen a la classe
indefinida, λ. Tot seguit es defineix el procés emprat per determinar si e ∈ δ, aixı́ com
la funció γ emprada.
e ∈ δ ←→ γ(δρ, eα) ≤ δθ
γ : A+ × A+ 7−→ ℜ+
tal que v
u
u 1 X dist(ρa, eα ) 2
γ (ρ, eα) = t a
|π(ρ)| max(a)
a∈π(ρ)
on dist computa la distància de dos valors d’un determinat atribut a. Si l’atribut a és
numèric, llavors dist es computa com dist(ρa, eαa ) = ρa − eαa . Per altra banda, si
l’atribut a és nominal, dist(ρa, eαa ) és igual a 1 si ρa = eαa , i 0 altrament. Finalment
max és la màxima distància possible per l’atribut a, si aquest és numèric, o bé 1 si
aquest és nominal.
α2 α2 α2
θ
θ θ
ρ2 ρ2
ρ1 ρ1
α1 α1 α1
(a) π(δρ ) = {α1 , α2 } (b) π(δρ ) = {α1 } (c) π(δρ ) = {α2 }
Figura 6.24: Possibles regions de classificació definides per una test multivariat δ en un
problema P en el qual A = {α1, α2}
α2
θ
ρ2
e1
e2
ρ1
α1
Figura 6.25: Exemple de classificació d’un parell d’instàncies e1 i e2 per un test multi-
variat δ
Arribats a aquest punt, com es pot apreciar a la figura 6.25, la regió que s’està
definint és circular. Per assolir regions més complexes entra en joc l’estructura jeràrquica
de l’arbre de decisió multivariats. Això s’assoleix classificant la instància que pertany
a la regió definida per ∆δ en funció dels testos descendents, sols parant, a l’igual que
succeı̈a amb la resta d’arbres de decisió, quan s’arriba a una fulla. Per poder continuar
el procés de classificació en els descendents de ∆δ, el procés es pot resumir dient que: la
regió de classificació que defineix un test acaba allà on comença la d’un altre. La figura
6.26 presenta un exemple il·lustratiu de com aquesta filosofia es duria a terme emprant
tres agents diferents ∆1δ,∆2δ i ∆3δ. Com es pot apreciar a la figura, la regió definida per
cada agent δ manté un equilibri entre la seva regió i la dels seus veı̈ns.
Un dels principals motius pel quals s’estructura jeràrquicament el conjunts de testos
és el d’obtenir un nou nivell de refinament en el procés de definició de regions de classi-
ficació. Com es pot apreciar a la figura 6.26, la capacitat de classificació de l’agregació
de testos supera les capacitats individuals de cadascun dels testos que el formen. Això
156 GALE: Model Evolutiu per la Mineria de Dades
α2
∆1δ
∆2δ
∆3δ
α1
Figura 6.26: Exemple de cooperació entre tres testos (δ1, δ2 i δ3) per definir diferents
regions de classificació
passa, no sols per l’estructuració dels testos, sinó que també per definir com es classifi-
caran les instàncies dins aquesta estructura jeràrquica, que té com a base les capacitats
elementals de classificació dels testos que la formen.
Aquesta estructuració obliga a definir com s’ampliarà el procés de classificació dels
testos δ per permetre la resolució cooperativa del problema dins ∆. Abans de passar però
Funció de a descriure la funció de classificació es presentaran algunes definición prèvies, necessaries
classificació per entendre com es realitzarà el procés de classificació cooperatiu d’una instància dins
d’un arbre de decisió multivariat ∆.
L’objectiu del conjunt Φ(∆, e) és identificar quin arbre de decisió multivariat per-
tanyent al conjunt visible Θ(∆, e) és més γ-proper a la instància e. Malgrat això, és
pot donar el cas que |Φ(∆, e)| > 1, indicant que existeix més d’un possible agregat al
conjunt actiu. Per aquest motiu és distingirà un arbre de decisió del conjunt Φ(∆, e)
b
com Φ(∆, e). Aquest agregat serà aquell que primer apareixi dins el conjunt ordenat de
possibles Ψ(∆).
b
Definició 49 Sigui Φ(∆, e) aquell arbre de decisió que satisfà:
b
Φ(∆, e) = ∆i ←→ ∆i ∈ Φ(∆, e) ∧ ∀∆ j
∈ Φ(∆, e), i ≤ j
6.4 Representacions del coneixement emprades 157
α2 α2 α2
δ2
δ1 δ5
δ4 δ3
δ6
α1 α1 α1
(a) camı́={δ1 } (b) camı́={δ1 , δ3 } (c) camı́={δ1 , δ3 , δ6 }
Figura 6.27: Exemple de les possibles regions de classificació definides per l’arbre de
decisió multivariat que presenta l’estructura de la figura 6.21 (pg. 148) en funció del
camı́ realitzat
Un cop fetes aquestes definicions prèvies ja es pot descriure com l’arbre de decisió
multivariat proposat permet que els testos que el formen treballen junts per classificar
una instància e. Per definir la classificació es necessitarà, per tant, un arbre de decisió
∆ i una instància a resoldre e.
7 → X∗
∇ : TijI × U −
definida com
e = λ
si γ(∆ρ, eα) > ∆θ,
∇(∆, e) = e = ∆rχ
si γ(∆ρ, eα) ≤ ∆θ ∧ ∆c = 0,
b
e = ∇ Φ(∆, e), e si γ(∆ρ, eα) ≤ ∆θ ∧ ∆c > 0.
∇(TijI,e)
(k, ∆) ← (λ, TijI)
IF (γ(∆, e) ≤ ∆rθ) THEN
DO
IF (∆c = 0) THEN
DO
k ← ∆χ
DONE
ELSE
DO
k ← ∇ Φ(∆, b e), e
DONE
DONE
RETURN k
Figura 6.28: Algorisme de la funció de classificació per individus que el seu genoma
codifica arbres de decisió multivariats
de decisió ortogonals o oblics, els individus que codifiquen arbres de decisió multivariats
també necessiten ser inicialitats per poder formar una població inicial pel GALE. Aquesta
inicialització utilitza també el mètode consistent en la construcció progressiva de l’arbre
de decisió oblic, decidint a l’atzar els testos de l’arrel ∆δ, i repetint recursivament per
cadascun d’aquest nodes el mateix procés, conegut com a procés grow anteriorment
comentat.
6.4.3 Instàncies
L’últim tipus d’individus que s’ha proposat en aquesta tesi són els que la seva represen-
tació del coneixement està basada en instàncies presentat a la secció 3.3.4 (pg. 34). La
classificació que es duu a terme amb aquest tipus de representació és basa en la capacitat
de fragmentar l’espai A+ en regions de classificació a partir d’un conjunt d’instàncies.
Per poder assolir el particionat de l’espai que a tall d’exemple proposen les figures 3.5
(pg. 34) i 3.6 (pg. 36), és necessari disposar de dos elements diferenciats. El primer és
el conjunt d’instàncies representatives a emprar pel procés de classificació. Per contra
el segon és l’ús d’una mètrica que permeti calcular distàncies entre instàncies.
Els individus que codifiquen en el seu genoma representacions del coneixement ba-
sades en instàncies, contenen conjunts d’instàncies de mida variable. És a dir, una
solució (individu) al problema de mineria a resoldre correspon a un conjunt d’instàncies
representatives, que són les que s’empren per la classificació. Per altra banda, existei-
xen diferents propostes de funcions de distància que es poden aplicar en el individus
que codifiquen instàncies, tal i com es recull a [Llorà, 2000], o bé les proposades a
[Wilson and Martinez, 1997, Wilson and Martinez, 2000]. Malgrat això, les diferents
aproximacions existents, en aquest tipus d’individus es decidir mantenir una versió de la
distància euclidiana degut a la seva simplicitat conceptual. Aquesta funció pot treballar
alhora, tal i com veurà tot seguit, amb atributs nominals o numèrics indistintament.
En el que resta d’aquesta secció es descriurà els dos tipus d’individus basats en
instàncies que s’han emprat en el GALE. La principal diferència entre ambdós tipus
d’individus rau en el tipus d’instància que s’utilitza. Mentre que el primer tipus d’individu
utilitza instàncies totalment definides, tal i com es presentaren en el seu moment a la
definició 4 (pg. 24). Per contra, el segon tipus d’individu codifica instàncies parcialment
definides, o el que és el mateix, instàncies en que no tots els valors dels atributs són
coneguts. Amb aquesta relaxació s’enriqueix el tipus de regió de classificació que es pot
definir, tal i com succeı̈a en els arbres de decisió multivariats.
Totalment definides
e1 e2 e3 en
Figura 6.29: Estructura del genoma dels individus que codifiquen conjunts d’instàncies
totalment definides
Aquestes semblances també es faran palpables en els operadors genètics que aquests
tipus d’individus utilitzen per la manipulació del seu genoma.
Codificació La codificació del conjunt d’instàncies dins el genoma de l’individu es presenta
gràficament a la figura 6.29. Com es pot apreciar, l’estructura lineal conté un nom-
bre n variable d’instàncies. Cadascuna d’aquestes instàncies posseeix una longitud fixa,
ja que la longitud d’una instància només depèn del nombre d’atributs del problema P a
resoldre (l) i la classe associada. Això fa que per cada instància del conjunt l’individu
hagi de codificar l + 1 valors en el seu genoma.
Funció de Abans de poder presentar la funció de classificació ∇ emprada en aquest tipus de
classificació codificació, és necessari presentar la funció de similitud que s’utilitza per decidir les
regions de classificació. La funció emprada és una simplificació de la presentada a la
definició 45 (pg. 154). La simplificació consisteix en forçar que tots els atributs de la
instància intervinguin en el càlcul de la distància, a diferència del que succeı̈a amb la
funció γ presentada anteriorment.
∇(TijI,e)
(k, d) ← (λ,+∞)
FOR-EACH eI ∈ TijI
DO
IF γt eI, e < d THEN
DO
(k, d) ← eIχ, γt(eI, e)
DONE
DONE
RETURN k
Figura 6.30: Algorisme de la funció de classificació per individus que el seu genoma
codifica instàncies totalment definides
L’últim punt que falta per descriure completament com els individus codifiquen con-
junts d’instàncies totalment definides en el seu genoma, i com aquest és manipulat a
posteriori, és els operadors genètics que s’empren per la manipulació del genoma. Degut Operadors
a l’estructura del seu genoma lineal els operadors genètics X i Y són els mateixos que genètics
els presentats a la secció 6.4.1 pels individus que codifiquen en el seu genoma conjunts
de regles.
D’igual forma que succeı̈a amb els individus que en el seu genoma codifiquen regles,
els individus que codifiquen conjunts de regles també necessiten ser inicialitats per poder
formar una població inicial pel GALE. La inicialització consisteix en generar un nombre
aleatori d’instàncies en el genoma, cadascuna de les quals també adopta els seus valors
de forma aleatòria.
Parcialment definides
Existeix un segon tipus d’individus que pot emprar el GALE els quals codifiquen conjunts
d’instàncies però, aquest cop, parcialment definides. Els individus presentats a la secció
anterior forçaven que per cada instància del conjunt codificat, tots i cadascun dels atri-
buts presenti un valor que s’utilitzen en el moment de calcular la funció de distància. Per
contra, en els individus amb instàncies parcialment definides els atributs d’una instància
involucrats en el càlcul de la funció de similitud corresponent a π eI ⊆ A.
La codificació del conjunt d’instàncies parcialment definides dins del genoma de Codificació
l’individu es presenta gràficament a la figura 6.31. Com es pot apreciar, la principal
diferència respecte la codificació anterior rau en que per cada atribut de cada instància
codificada, s’ha afegit un bit per indicar explı́citament si aquest s’ha d’utilitzar per
calcular la distància o no. La funció de distància emprada és γ, tal i com es definı́ a 45
(pg. 154). Conseqüentment, la codificació en pseudocodi de la funció de classificació que Funció de
es presenta a la figura 6.32 sols difereix de l’emprada per instàncies totalment definides classificació
162 GALE: Model Evolutiu per la Mineria de Dades
e1 e2 e3 en
Figura 6.31: Estructura del genoma dels individus que codifiquen conjunts d’instàncies
parcialment definides
∇(TijI,e)
(k, d) ← (λ,+∞)
FOR-EACH eI ∈ TijI
DO
IF γ eI, e < d THEN
DO
(k, d) ← eIχ, γ(eI, e)
DONE
DONE
RETURN k
Figura 6.32: Algorisme de la funció de classificació per individus que el seu genoma
codifica instàncies parcialment definides
en la funció de distància que utilitza, és a dir, γ enlloc de γt. La resta del procés de
classificació és idèntic, ja que no s’ha modifica res que l’afecti.
Operadors Pel que fa als operadors genètics, l’operador de creuament X és idèntic a l’emprat
genètics pels individus que codifiquen instàncies totalment definides, tractant conjuntament el
valor d’un atribut i la marca d’utilització. Pel que fa a l’operador de de mutació Y, aquest
amplia lleugerament el dels individus que codifiquen instàncies totalment definides. La
modificació afecta a que la marca d’utilització també pot ser variada a l’atzar quan es
satisfà una certa probabilitat, a l’igual que succeeix amb la resta de valors codificats en
el genoma. Finalment, comentar que el mètode d’inicialització és el mateix proposat
anteriorment generant també les marques d’utilització a l’atzar.
Per concloure la secció dedicada a les representacions del coneixement que els individus
del GALE utilitzen, s’ementarà algunes consideracions que no s’han introduı̈t anterior-
ment cara a simplificar l’explicació. Aquestes afecten principalment a les representacions
basades amb instàncies, aixı́ com a les caracterı́stiques que es poden trobar en certs tipus
6.4 Representacions del coneixement emprades 163
de classificació són parcialment definides. Aquest punt afecta a la forma en que la funció
de classificació ∇ ha de tractar les instàncies. Existeixen diferents formes de resoldre,
per cada representació, aquesta problemàtica [Witten and Frank, 2000]. En el treball
que aquı́ es presenta s’ha optat per una de senzilla. En lloc de substituir els desconeguts
per valors mitjans, o bé introduir un nou valor especı́fic, la tècnica emprada ha estat
obviar, allà on calgui, l’atribut que presenta el valor desconegut. Això vol dir que si és
en la condició d’una regla, l’atribut no es té en compte en la conjunció, o bé si això
succeeix en una representació basada en instàncies, l’atribut no s’utilitza per computar
la funció de similitud.
6.5 Resum
En aquest capı́tol s’ha presentat el model de mineria de dades que es proposa en aquesta
tesi. El GALE és un model, basat en el paral·lelisme de gra fi, que permet l’evolució
de diferents tipus de representacions del coneixement. La descripció que se ha versat
entorn tres eixos principals: (1) La descripció de les consideracions de sortida i el referents
existents pel treball que es volia proposar, (2) la descripció del model pròpiament dit,
i finalment (3) la descripció de com es tracta cadascuna de les representacions del
coneixement emprades.
Les consideracions de sortida han servit per aclarir les directrius que han condicio-
nat el treball que s’ha dut a terme. Aquestes es resumeixen dient que el model que es
proposa ha de ser: aplicable a problemes de classificació de tot tipus, independent de
la representació del coneixement emprada, i basada en un model inherentment massi-
vament paral·lel. Sota aquestes consideracions inicials, s’ha fet també una revisió dels
principals referents dins els quals s’emmarca la tesi proposada. Aquesta revisió identifica
els principals sistemes existents que han buscat abordar un problema similar al plantejat
en aquest treball.
Un cop fet aquest preamble, tot seguit s’ha descrit el model que proposa el GALE.
Aquesta descripció, que ha arrancat amb una revisió dels tipus de paral·lelisme que
es poden trobar dins els algorismes genètics, ha cobert les principals caracterı́stiques
del model, com són: la seva topologia, com aquesta es relaciona amb el problema a
resoldre (mapping), i l’algorisme pròpiament dit incloent tots els operadors involucrats.
Aquesta descripció ha tingut en compte el seu caràcter marcadament independent de la
representació del coneixement que s’estigui fent evolucionar.
L’últim gran eix de la descripció del GALE ha passat per la descripció detallada de
com diferents representacions del coneixement són manipulades dins del model. Concre-
tament, s’ha presentat com es poden codificar en el genoma dels individus que evoluciona
el GALE des de conjunts de regles, arbres de decisió, o bé conjunts d’instàncies. Per
cadascuna de les representacions l’explicació a girat a l’entorn de com aquesta es pot
codificar en el genoma dels individus, de com això afecta a la funció de classificació,
i finalment com han d’actuar els operadors genètics sobre aquesta representació per
6.6 Notes Bibliogràfiques 165
Per finalitzar aquest capı́tol, a l’igual que s’ha vingut realitzant amb els anteriors, tot
seguit es farà un resum d’algunes notes bibliogràfiques d’interès relacionades amb el que
s’ha vingut comentant.
A [Goldberg, 1989] es pot trobar una introducció entenedora a la base dels opera-
dors de creuament X i mutació Y emprats tradicionalment en els algorismes genètics.
Pel que fa als operadors basats en la programació genètica, [Koza, 1992, Koza, 1994,
Koza et al., 1999] són llibres de text obligats, aixı́ com compendi de l’estat actual de la
recerca que en aquest camp s’està realitzant.
Pel que fa als referents de la tesis que es proposa [Cantú-Paz, 1997, Cantú-Paz, 2000]
contenen un recull entenedor dels diferents models de paral·lelisme existent dins els al-
gorismes genètics. Altres referències passarien per [Flockhart, 1995, Araujo et al., 2000]
les quals descriuen amb detall el GA-MINER, aixı́ com l’estat de la seva paral·lelització.
Pel que fa al treball amb autòmats cel·lulars evolutius [Sipper, 1997] presenta un com-
pendi de com l’evolució pot servir de guia per la seva programació. Pel que fa l’aplicació
d’algorismes genètics cel·lulars (i, cellular genetic algorithms) [Whitley, 1993] n’és una
de les primeres descripcions, junt amb la seva aplicació a problemes d’optimització.
Posteriors ampliacions i l’efecte de la introducció de desastres dins el procés evolutiu
es poden trobar a [Kirley and Green, 2000, Green and Kirley, 2000]. Per altra banda,
[Robertson, 1987] presenta una de les primeres paral·lelitzacions dels sistemes classifica-
dors.
Pel que fa a la mineria de dades, dues referències útils són [Witten and Frank, 2000] i
[Han and Kamber, 2001]. Altres propostes especı́fiques de mineria de dades emprant al-
gorismes evolutius passen pel treball fet amb el XCS, inicialment [Saxon and Barry, 2000,
Wilson, 2000] i posteriorment [Dixon et al., 2001, Lanzi, 2001], o bé per comparatives
entre el XCS i el GALE [Bernadó et al., 2001].
Algunes publicacions relacionades amb el GALE són les que es descriuen a conti-
nuació. A [Llorà and Garrell, 2000b, Llorà and Garrell, 2000a] es pot trobar les prime-
res descripcions publicades sobre el model proposat. Aquesta descripció es pot tro-
bar ampliada a [Llorà, 2000]. Resultats sobre l’aplicació del GALE a problemes re-
als de mineria de dades és recullen a [Bernadó et al., 2001, Llorà and Garrell, 2001c,
Llorà and Garrell, 2001a]. Per altra banda, [Llorà and Garrell, 2001b] descriu l’utilitza-
ció del GALE a la reducció dels requeriments d’emmagatzamatge per algorismes d’apre-
nentatge basats en instàncies. Finalment, [Llorà and Garrell, 1998, Llorà and Garrell, 1999b,
Llorà and Garrell, 1999a] recullen descripcions dels fonaments de la classificació basada
en regions presentada.
Per finalitzar aquest resum de notes bibliogràfiques és repassaren algunes referències
166 GALE: Model Evolutiu per la Mineria de Dades
diverses. [Merz and Murphy, 1998] presenta un repositoris de bases de dades per pro-
blemes d’aprenentatge. Descipcions de paral·lelisme arquitectònic, aixı́ com de la llei
d’Amdhal [Hwang, 1993]. Consideracions de la funció d’avaluació emprada en el GALE
és poden trobar a [De Jong and Spears, 1991]. El bagging es presenta detalladament
[Breiman, 1996]. La descripció sobre l’ID3 es pot trobar a [Quinlan, 1986], aixı́ com la
del C4.5 a [Quinlan, 1993]. Finalment, diferents mètriques de distància, aixı́ com algoris-
mes de reducció de l’emmagatzematge, es poden trobar a [Wilson and Martinez, 1997,
Wilson and Martinez, 2000].
CAPÍTOL 7
El segon dels capı́tols dedicats al GALE es centra en l’estudi del comportament que
aquest presenta al llarg del procés evolutiu. A diferència del capı́tol precedent, centrat en
l’exposició del model proposat, l’estudi del comportament del GALE que es presenta en
aquest capı́tol es pot destriar en dos parts diferenciades. La primera es centra en l’anàlisi
teòric del model paral·lel que proposa el GALE, fent èmfasi el cost computacional del
model, aixı́ com els requeriments de memòria necessaris. Per altra banda, la segona part
presenta un estudi detallat del comportament del GALE en funció dels seus paràmetres,
aixı́ com de certes caracterı́stiques inherents al model proposat. Per facilitar aquest estudi
es realitzarà una simplificació del model proposat. Concretament, aquesta simplificació
sols afectarà al problema que es resol mantenint, això sı́, el model paral·lel proposat.
Per altra banda, aquest estudi també inclourà la comparació dels resultats del GALE
amb els obtinguts de diferents tipus d’algorismes genètics, permetent destacar aixı́ les
diferències de comportament existents entre el models tradicionals i el GALE.
Per concloure aquesta breu introducció, tot seguit es pararà a descriure l’estruc-
turació d’aquest segon capı́tol sobre el GALE. El capı́tol comença a la secció 7.1 amb
l’anàlisi teòric del model de paral·lelisme que proposa el GALE. Un cop fet aquest anàlisi,
a l’apartat 7.2 descriu un model simplificat del GALE que, mantenint les propietats i ca-
racterı́stiques de l’original, simplificarà l’estudi que es realitzarà en els apartats següents.
La secció 7.3 per la seva banda presenta algunes definicions prèvies necessàries per la
resta del capı́tol. En aquest estudi del comportament del GALE emprant el model sim-
plificat s’utilitzen un ventall de funcions especialment escollides per les seves propietats.
Les funcions es descriuen amb detall a la secció 7.4, aixı́ com els paràmetres d’estudi del
GALE es resumeixen a l’apartat 7.5. Finalment, els resultats de l’estudi es presenten a
la secció 7.6, la qual en resumeix els resultats obtinguts. El capı́tol conclou amb un breu
resum, secció 7.7, aixı́ com la ja habitual revisió de les notes bibliogràfiques d’interès
relacionades amb aquest capı́tol 7.8.
168 Comportament del GALE
Aquest apartat analitza el paral·lelisme inherent al model proposat pel GALE. És impor-
tant comentar en aquest punt que aquest anàlisi busca descriure teòricament el màxim
grau de paral·lelisme que amb ell es pot assolir. Una de les consideracions de sortida del
GALE, que es presentaven a l’apartat 6.1 (pg. 112), és el fet que el model proposat ha
d’ésser inherentment massivament paral·lel. El motiu d’aquesta consideració és la possi-
bilitat de proposar implementacions paral·leles del mateix, en cas de necessitat de reduir
el temps d’execució del procés de mineria. L’anàlisi que es pot trobar a continuació es
centra en dos punts. El primer és l’acceleració del paral·lelisme (o speedup), mentre que
el segon busca analitzar els requeriments de memòria que presenta el model.
7.1.1 Speedup
Per poder obtenir les equacions teòriques del speedup és necessari calcular les equa-
cions d’un model genèric seqüencial i les que s’extreuen del GALE. Concretament, el
model genèric seqüencial escollit pel càlcul és el GABL [De Jong and Spears, 1991,
Spears et al., 1993]. El motiu de fer servir aquest model evolutiu com a referència
rau en el fet que és un dels referents de la tesi que aquı́ es presenta.
Tot seguit es presenten les equacions del temps d’execució que se’n desprén de
l’ús del GABL en problemes de mineria de dades. A les equacions que es presenten a
continuació, es recull el temps ta d’execució emprat pel GABL. En aquestes equacions
p és el nombre d’individus del GABL, n el nombre d’instàncies de Σ, i τ el nombre
d’iteracions de l’algorisme genètic.
ta = τ · tloop
= τ (teval + tsel + tcross + tmut)
(7.1)
= τ (tclspn + tcopyp log p + txalgρX p + tmalgρY p)
= τp (α1n + α2 log p + α3)
següent.
ta ∈ O (τp (n + log p)) (7.2)
Donades les equacions 7.1 i 7.2, el següent pas es repetir els mateixos càlculs per
obtenir les equacions corresponents al GALE. Com s’ha esmentat al començament d’a-
quest apartat el què es busca és determinar el grau de paral·lelisme màxim assolible.
Conseqüentment, per aquests càlculs, es suposarà de moment que el model proposat pel
GALE s’executa en una màquina paral·lela ideal, en concret una PRAM (parallel random
access machine) [Hwang, 1993].
Per obtenir una primera aproximació a aquestes equacions és faran algunes assump-
cions. Tal i com s’ha comentat al començar d’aquest apartat, l’objectiu que es vol
mesurar el màxim grau de paral·lelisme que s’assoleix amb aquest model, obviant de
moment qualsevol consideració sobre una hipotètica implementació paral·lela. En l’e-
quació del temps del GALE que es presentarà tot seguit, cada cel·la Tij es mapa sobre
un element de procés diferent. Conseqüentment, el nombre d’elements de procés ρ serà
idèntic al nombre d’individus p. També es suposarà que cada element de procés està
connectat amb qualsevol altre amb un cost de comunicació constant O(1). Comentades
aquestes consideracions, tot seguit es pot trobar l’equació que recull el temps d’execució
del GALE en funció del radi de veı̈natge existent en el tauler T . La figura 7.1 presenta
gràficament la idea del que s’enten per radi de veı̈natge.
1
tcp
b (r) = pτ · tcell
ρ
1
= pτ · tcell
p
= τ (teval + tmerge + tsplit + tsurvival) (7.3)
= τ tclsn + tralgpM + tsalgpS + tcopy (2r + 1)2
= τ β1n + β2 (2r + 1)2 + β3
A l’equació 7.3 tcls correspon al temps de classificar una instància sotes les mateixes
consideracions realitzades en el GABL, tcopy és el temps de copiar un individu, tralg el
temps de l’algorisme de merge, i tsalg el temps de split d’una cel·la. Com s’ha comentat
al començar aquesta secció, l’objectiu es analitzar la capacitat màxima de paral·lelisme
170 Comportament del GALE
del model. Per aquest motiu, el càlcul del temps emprat pel GALE s’ha realitzat en el
cas en que ζ(T ) = m × n, és a dir, quan el tauler és ple. Finalment, quan r = 1 (radi
proposat pel GALE que minimitza el temps de comunicació) s’obté la següent equació
de complexitat temporal del GALE:
tcp
b (1) ∈ O (τn) (7.4)
L’equació 7.6 de speedup resultant, pel GALE mostra que creix linealment amb
el nombre de processadors emprats, ja que ρ = p. Aquesta equació també mostra
una peculiaritat important. El component superlineal 1 + n log p
és degut al canvi del
mètode de selecció. Concretament, el GALE elimina, quan r = 1, el coll d’ampolla que
suposa la selecció seqüencial proposada per la ruleta del GABL.
Com ja s’ha comentat anteriorment, els càlculs del temps d’execució tcp b (r) del
GALE (eq. 7.3) són purament teòrics. En una implementació paral·lela s’hauria d’afegir
a tcp co
b (r) el temps de comunicació tb (r) emprat entre cel·les. Aquest temps, depenent
de r, es recull a l’equació 7.7. Aquest temps de comunicació correspon a la suma dels
temps de comunicació emprats en les etapes de merge tcm, split tcs i survival tcsr.
1
tco
b (r) = pτtccell
ρ
1 (7.7)
= pτ (tcm + tcs + tcsr)
p
= τ 3(2r + 1)2 · tA + 3ti
Amb aquesta equació a la mà, es pot escriure el temps total d’execució del GALE1 , com
la suma del temps de computació emprat més el temps de computació, és a dir:
tb(r) = tcp co
b (r) + tb (r)
= τ β1n + β2 (2r + 1)2 + β3 + τ β5(2r + 1)2 + β6 (7.8)
= τ β1n + β7 (2r + 1)2 + β8
tb(r) = tcp co
b (r) + tb (r)
(7.9)
= τ (β1n + β9)
Si es revisa l’equació 7.5 amb la nova equació de temps, presentada a 7.9, ampliada
del GALE, s’obté la
Això es pot afirmar ja que α2 log p + α3 << β1n + β9 degut a que β1n és el temps
emprat per un individu TijI del GALE per classificar totes les instàncies del conjunt d’en-
trenament. Per contra, α2 log p+α3 correspon a constants que recullen temps d’execució
de tasques de selecció, creuament i mutació del GABL. Interpretant les constants α1 i
β1 de l’equació 7.12, s’aprecia que corresponen al temps de classificar una instància pel
GABL i el GALE, respectivament. Conseqüentment, si els individus d’ambdós mètodes
comparteixen la mateixa representació del coneixement codificada en el seu genoma.
aixı́ com la mateixa funció de classificació ∇, resulta que α1 = β1. Per tant l’equació
7.12 es pot reescriure com:
β1n n n
= β1 n+β9
= β9
≈1 (7.13)
β1n + β9 β1 n+ β1
1
Suposant el temps d’idle com a negligible.
172 Comportament del GALE
1.00
0.95
n+κ
0.90
n
0.85
0.80
n
Figura 7.2: Comportament de β per n={1000,2500,5000,7500}
n+ β 9
1
L’equació anterior es pot satisfer de diferents formes. En aquest punt es vol fer incı́s
en una de totes elles. Aquesta és la que es mostra a continuació:
β9
n >> (7.14)
β1
Concretament, β9 que recull, entre d’altres, el cost de comunicació pot ser raonablement
gran fet que no afectarà excessivament el speedup.
n
La figura 7.2 presenta com evoluciona la relació β davant diferents mides n del
n+ β 9
1
conjunt d’instàncies. Concretament, les mides que es presenten són relativament con-
tingudes davant de problemes de mineria reals, com són n={1000,2500,5000,7500}.
La importància d’aquesta relació determina el pendent, i per tant l’eficiència de la
paral·lelització, del split lineal respecte el nombre d’elements de procés. Com es pot
β9
apreciar a la gràfica, per valors elevats β 1
és manté un pendent elevat, recalcant aixı́ la
tolerància al model a una possible implementació amb latències de comunicació elevada.
Aquest fet suggereix la possibilitat d’implementacions eficients en arquitectures de baix
cost, com poden ser xarxes de workstations en xarxes ethernet.
7.2 Simplificació del GALE 173
L’altre punt a tenir en compte són els requeriments de memòria del model paral·lel. En el
model proposat pel GALE cada cel·la Tij disposa d’espai per contenir diferents elements.
La cel·la conté un individu TijI i una matriu de confusió TijC. Els requeriments d’espai
de la cel·la Tij per contenir aquest elements és negligible en front de l’espai necessari
per emmagatzemar les instàncies que s’utilitzen per avaluar l’individu de la cel·la. És
aquest espai, tal i com es podrà observar en les mesures assimptòtiques es presentaran
tot seguit, el que marca els requeriments de memòria necessaris del model.
Per calcular el màxim asimptòtic dels requeriments de memòria necessaris, aquest es
centrà en el pitjor escenari possible. És a dir, en aquell entorn que necessitarà els màxims
requeriments de memòria per poder implementar una paral·lelització eficient del model.
Concretament, l’entorn emprat per l’anàlisi es centra en l’ús d’un multicomputador de
memòria distribuı̈da. Els màxims requeriments de memòria es produeixen quan cada
cel·la Tij es mapa sobre un element de procés diferenciat del multicomputador. Per
altra banda, aquest requeriments, tal i com s’ha comentat anteriorment, també depenen
directament del nombre d’instàncies del problema P contingudes a Tij.
A la secció 6.3.2 (pg. 122) es presentava el mapping, o procés de mapat del problema
de mineria de dades P a resoldre. Concretament, cada cel·la Tij conté el conjunt
d’instàncies µ(Σ, Tij). Conseqüentment, els requeriments de memòria M(T , P) pel
GALE, sota les consideracions esmentades anteriorment, es poden expressar com:
X
M(T , P) = |µ(Tij, Σ)| (7.15)
Tij ∈T
Degut a que es busca el llindar assimptòtic superior, el mapping uniforme és el que
necessita els majors requeriment de memòria, i conseqüentment serà el que es farà servir
per obtenir aquesta mesura. Aquest tipus de mapatge, presentat a la secció 6.3.2 (pg.
123), replica totes les instàncies de Σ que descriuen el problema P a totes i cadascuna
de les cel·les de T , és a dir, µu(Σ, Tij) = Σ. Conseqüentment, es pot reescriure l’equació
7.15 tal i com es presenta a continuació.
X X
M(T , P) = |Σ| = n (7.16)
Tij ∈T Tij ∈T
Suposant que la matriu que conté el tauler T és quadrada contenint c × c cel·les,
els requeriments de memòria es poden reescriure tal i com es presenta a l’equació que
apareix a continuació.
M(T , P) = c × c × n = nc2 (7.17)
El model proposat pel GALE està plantejat per la resolució de problemes de mineria de
dades, en concret tasques de classificació. Tal i com s’ha comentat en la introducció
d’aquest capı́tol, aquest pretén realitzar un anàlisi del comportament de GALE. És per
aquest motiu que en aquesta secció es proposa simplificar el model per facilitar-ne
l’anàlisi.
Les simplificacions proposades han de servir per permetre comparar el comportament
resultant del model respecte a esquemes tradicionals d’algorismes genètics. Conseqüent-
ment, la simplificació del GALE passarà per resoldre problemes especialment dissenyats
per estudiar el comportament d’aquest tipus d’algorismes. Aquest problemes solen ser
problemes d’optimització, fet que provoca que s’hagi d’introduir lleugeres modificacions
dins el GALE.
7.2.1 Motivacions
Les simplificacions que es proposen del model proposat pel GALE tenen com a ob-
jectiu permetre l’estudi del comportament complex que presenta. Per aproximar-se a
aquest estudi existeixen diferents alternatives. Una de les possibles es la proposada
a [Golberg et al., 1992a], la qual proposa la decomposició de l’estudi en subproblemes
tractables. Aquest subproblemes es poden llistar com:
Si s’observa el model proposat pel GALE sota aquesta òptica, s’aprecia que, malgrat
resoldre problemes de mineria de dades, aquests es pot entendre com un problema d’op-
timització particular. Concretament, el GALE busca maximitzar, al cap i la fi, l’avaluació
A(Tij) dels individus. Aquesta funció presenta algunes particularitats interessants, com
és el fet que degut a la seva definició A(Tij) ∈ [0, 1]. Conseqüentment, les simplifica-
cions que es proposen per l’anàlisi passen per substituir el problema a resoldre amb el
GALE per problemes d’optimització sintètics pensats per l’anàlisi dels punts presentats
comentats anteriorment.
El canvi del problema a resoldre afecta a varies parts del GALE, tal i com es descriurà
al següent apartat. Malgrat aquests lleugers canvis, el model és idèntic al presentat al
7.3 Definicions prèvies 175
La primera modificació que s’introdueix afecta a la codificació dels individus. Concreta- Individus
ment, el que es proposa és la definició d’un individu que sigui capaç de resoldre problemes
d’optimització. Per aquest motiu l’individu proposat recull la codificació binària tradi-
cional dels algorismes genètics [Holland, 1975] per la optimització. Aixı́, cada individu
codifica una solució al problema d’optimització a maximitzar.
La funció l’avaluació consisteix senzillament en avaluar el valor de la funció a op- Funció l’ava-
timitzar. Les funcions emprades, que es descriuran amb detall al següent apartat, són luació
funcions dissenyades a la bibliografia especialment per forçar els lı́mits de funcionament
dels algorismes a estudiar. L’única modificació que s’introdueix en aquestes funcions és
que han de satisfer A(Tij) ∈ [0, 1] per permetre que el model proposat pel GALE funcioni
correctament. Aquest punt es pot assolir fàcilment dividint l’avaluació proporcionada
per la funció entre el màxim valor assolible. Aquesta transformació es pot dur a terme
ja que les funcions que s’empraran han estat construı̈des per posseir unes peculiaritats
concretes, coneixent per tant la seva forma i solucions, aixı́ com el recorregut que pro-
posen. Per altra banda, són aquests canvis en la funció l’avaluació el que impossibilita
l’anàlisi del mapping en el model simplificat. Això és degut a que totes les cel·les Tij
del model simplificat resolen la mateixa funció d’optimització, podent-se sols assimilar
al mapping uniforme presentat a la secció 6.3.2 (pg. 123). Per aquest motiu l’anàlisi es
farà en el capı́tol següent sobre el model no simplificat.
L’altre punt que també s’ha de modificar degut a les simplificacions proposades
correspon als operadors genètics. Contràriament, l’operador de creuament X utilitza Operadors
l’operador tradicional d’un punt de tall emprant pel algorismes genètics tradicionals genètics
[Holland, 1975, Goldberg, 1989]. El mateix succeeix amb l’operador de mutació Y,
el qual utilitza la mutació uniforme d’inversió de bit proposada per la literatura dels
algorismes genètics. Pel que fa a la inicialització dels individus és manté la inicialització
aleatòria del genoma dels individus, tal i com ha vingut essent habitual en les diferents
representacions del coneixement emprandes pel GALE presentades a la secció 6.4 (pg.
143).
Fetes les consideracions anteriors, ja es pot entreveure que la resta del model proposat
pel GALE es manté. És a dir, que en el model simplificat, tant el mètode d’inicialit-
zació del tauler T proposat, com les fases evolutives emprades (merge, split i survival)
presenten la mateixa definició i funcionament que les descrites al capı́tol 6 (pg. 111).
176 Comportament del GALE
Per facilitar la descripció de les funcions d’avaluació emprades, aixı́ com la realització
d’algunes consideracions, tot seguit es donaran algunes definicions provinents de la te-
oria dels algorismes genètics. Es refereix al lector interessat a [Holland, 1975] per una
presentació més detallada. Aquestes serviran per introduir alguns conceptes que es fa-
ran servir en el que resta de capı́tol. Aquestes definicions es basen en representacions
binàries de les solucions en el genoma, és a dir, en codificacions explı́cites com pot ser:
g = h10101001110...i (7.19)
Definició 53 S’anomena ordre d’un esquema o(S) al nombre de posicions dins la codifi-
cació d’un genoma que contenen 0 o 1. Aquestes posicions també s’anomenen posicions
fixes.
S1 = (001010100) o(S1) = 9
S2 = (0*10*01*0) o(S2) = 6
S3 = (001*101**) o(S3) = 6
S4 = (***01*1**) o(S4) = 3
S5 = (0*******0) o(S5) = 2
S6 = (****1****) o(S6) = 1
7.4 Funcions d’avaluació 177
L’última definició que es presentarà en aquest punt és el que s’anomena longitud de
definició.
S1 = (001010100) δ(S1) = 8
S2 = (0*10*01*0) δ(S2) = 8
S3 = (001*101**) δ(S3) = 6
S4 = (***01*1**) δ(S4) = 3
S5 = (0*******0) δ(S5) = 8
S6 = (****1****) δ(S6) = 0
Abans de passar a descriure l’anàlisi proposat, aixı́ com els resultats obtinguts, en aquesta
secció es descriurà amb detall les funcions d’avaluació emprades. Aquestes funcions han
estat escollides en funció de les seves caracterı́stiques, i en particular del seu nivell de
dificultat creixent. Tot seguit es presenta cadascuna de les tres famı́lies de funcions
d’avaluació, en ordre de dificultat creixent. Aquesta presentació s’acompanya de la
representació gràfica de les mateixes.
La primera funció d’avaluació que es presenta és la que es coneix com One Max
[Goldberg, 1989]. El nom prové del fet que aquesta funció d’optimització posseeix una
única solució. La definició de la funció és simple. Consisteix senzillament en sumar el
nombre de 1 que apareixen en el genoma g de longitud ℓ de l’individu TijI. És a dir:
ℓ
X
f(g) = gi (7.21)
i=1
178 Comportament del GALE
2.0
4
1.5
3
aval.
aval.
1.0
2
0.5
1
0.0
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 0 5 10 15
gen. gen.
(a) ℓ = 2 (b) ℓ = 4
8
15
6
10
aval.
aval.
4
5
2
0
0 50 100 150 200 250 0 10000 20000 30000 40000 50000 60000
gen. gen.
(c) ℓ = 8 (d) ℓ = 16
Com es pot apreciar a l’equació 7.21, els BBs que ha de manipular el GALE són
simples. Concretament, els BBs són aquells patrons minimals que contribueixen a la
millora del valor resultant de la funció d’avaluació. En aquest cas concret, la mı́nima
expressió dels BBs es poden representar en aquest problema concret seria *1*. És a
dir, esquemes S d’ordre o(S) = 1 i de longitud de definició δ(S) = 0, on la posició
fixa gi existent correspon al valor 1. Amb aquestes consideracions, la funció One Max
busca proposar una funció simple que encaixa amb la natura selecto-recombinativa dels
algorismes evolutius.
La figura 7.3 representa gràficament la funció One Max. Concretament, aquesta
figura presenta la funció per diferents longituds del genoma, ℓ = {2, 4, 8, 16}. A mida
que augmenta la longitud del genoma ℓ, conseqüentment també augmenta l’espai de
cerca que la funció proposa. Per altra banda, la figura també fa patent la importància
de la codificació del genoma.
7.4 Funcions d’avaluació 179
La segona famı́lia de funcions a emprar són les que es solen anomenar bounded deceptive
problems. La principal caracterı́stica que presenten les funcions d’aquesta famı́lia és
que estan dissenyades especı́ficament per dificultar l’evolució proposada pels algorismes
selecto-recombinatius. La idea és enganyar el procés evolutiu a partir de petits enganys
que s’introdueix en els BBs que conformen la solució al problema. Concretament, les
funcions que es proposen per les proves es basen en l’ús de BBs de quatre bits, com les
presentades a [Pelikan et al., 2000].
La primera funció proposada és la que s’ha anomenat BDP4. Aquesta funció es
defineix en funció de BBs de quatre bits, on s’expressa com:
ℓ
X 4i
X
f(g) = f4 gi (7.22)
i=1 j=4i−3
4
3
f4(u)
2
1
0
0 1 2 3 4
La funció d’engany pels BBs es pot generalitzar per BBs de longitud arbitrària k.
Això s’assoleix senzillament de la forma següent:
k − u − 1 si u < k,
fk(u) = (7.25)
k altrament.
Finalment, l’últim tipus de funció d’avaluació que es proposa és la que que s’anome-
na hierarchical trap function (HTF), o més especı́ficament hierarchical if-and-only-if
(IFF) [Pelikan and Golberg, 2001]. A diferència de les funcions proposades anterior-
ment, aquesta funció d’avaluació no presenta un únic màxim global, sinó dos. Per
altra banda, aquests dos màxim actuen com atractors oposats. Aquestes dues solucions
corresponen als esquemes que es presenten a continuació.
S0 = (000 . . . 000)
S1 = (111 . . . 111)
8
3
6
aval.
aval.
2
4
1
2
0
gen. gen.
(a) ℓ = 1 (b) ℓ = 2
12
15
10
8
10
aval.
aval.
6
4
5
2
0
0 1000 2000 3000 4000 0 10000 20000 30000 40000 50000 60000
gen. gen.
(c) ℓ = 3 (d) ℓ = 4
15
6
10
aval.
aval.
4
5
2
0
0
0 50 100 150 200 250 0 10000 20000 30000 40000 50000 60000
gen. gen.
(a) ℓ = 1 (b) ℓ = 2
- f=18
4
- 1 f=14+4
2 2 2
- 0 1 1 f=8+6
1 1 1 1 1 1 1 1
1 0 0 0 1 1 1 1 f=8
α si α = β ∧ α 6= ‘-’,
8fv(α, β) = (7.27)
‘-’ altrament.
4.0
12
3.5
10
aval.
aval.
3.0
8
2.5
6
2.0
gen. gen.
(a) ℓ = 1 (b) ℓ = 2
80
30
70
25
60
50
aval.
aval.
20
40
15
30
10
20
0 50 100 150 200 250 0 10000 20000 30000 40000 50000 60000
gen. gen.
(c) ℓ = 3 (d) ℓ = 4
Paràmetre Descripció
m×n Mida del tauler T
kmax Nombre màxim d’iteracions evolutives
pζ Probabilitat d’estat inicial
pM Probabilitat de merge
ksp Llindar de màxima replicació
pmu Probabilitat de mutació uniforme emprada a Y
ksr Llindar de survival sostenible
Un cop descrites les funcions d’avaluació que s’utilitzaran en les proves del model sim-
plificat, en aquest apartat es revisarà els paràmetres que controlen el comportament del
GALE. Amb aquest repàs, també es voldrà aprofitar per introduir com aquests paràmetres
determinen les proves que s’han realitzat. En total el nombre de paràmetres que con-
trolen el comportament del model simplificat del GALE són els set que es presenten a
la taula 7.1.
El primer dels paràmetres que apareix a la taula 7.1 correspon a la mida m × n del
tauler T . Aquest paràmetre és crucial en el procés evolutiu ja que, com es veurà en el
següent apartat, intervé directament en la qualitat de la solució final. També intervenen
directament en aquesta qualitat el nombre màxim d’iteracions a realitzar kmax, aixı́ com
la probabilitat d’estat inicial pζ, o probabilitat que una cel·la Tij contingui un individu
TijI en la inicialització del tauler T . Però és especı́ficament la mida del taules, aixı́ com
la probabilitat d’estat inicial, els directes responsables de proveir suficients BBs a la
població inicial. Aquest punt és crı́tic tal i com es comentava a l’apartat 7.2.1 (pg. 174)
[Golberg et al., 1992a].
Per la seva part pM determina la probabilitat d’execució de l’etapa de merge. Aquest
paràmetre afecta directament a un altre dels problemes de la decomposició que s’ha de
dur a terme en l’anàlisi, concretament el de la combinació dels BBs que conformen la
solució al problema a resoldre. ksp mentrestant controla el llindar de màxima replicació,
és a dir, la màxima freqüència amb la qual un individu inicia el procés de split. Si el
procés de split s’inicia, tenint en compte que els individus que es manipularan provenen
estan pensat per la optimització i són genomes basats en tires de bits, el paràmetre pmu
defineix la probabilitat que ha d’utilitzar l’operador Y de mutació uniforme. Finalment,
l’últim paràmetre a tenir em compte és ksr, o llindar de survival, el qual presenta un clar
impacte en el temps necessari per obtenir la solució final al problema a resoldre.
186 Comportament del GALE
Les proves que es presenten en aquest apartat es centren en els set paràmetres esmentat
en l’apartat anterior. Per poder estudiar l’impacte de cadascun d’ells en la versió sim-
plificada del GALE emprant les funcions presentades a la secció 7.4 (pg. 177). Per altra
banda, aquest apartat també recull proves especı́ficament dissenyades per poder deixar
al descobert les principals propietat del model que es presenta en aquesta tesi.
Per poder ressaltar el comportament del GALE, algunes de les proves incorporen
comparacions amb altres model d’optimització evolutiva. Els algorismes introduı̈ts per
comparar, concretament diferents variants d’algorismes genètics, serviran alhora per
ressaltar també algunes peculiaritats que apareixen en l’execució comparada del GALE
amb la resta d’algorismes. És per aquest motiu, que tot seguit es farà una breu descripció
dels algorismes genètics emprats, per passar, tot seguit a descriure les proves pròpiament
dites.
individus. El motiu d’escollir aquest dos últims models es comentarà més detalladament
quan es comentin els resultats de les proves realitzades.
La selecció proporcional del SGA es basa en la selecció basada en ruleta (o roulete SGA
wheele selection), on la probabilitat de selecció es proporcional a la seva avaluació. La
probabilitat de l’individu pi, donada la seva avaluació fi, en una població formada per
ps individus es defineix com:
fi
pi = ps (7.28)
X
fj
j=1
Aquesta notació també s’utilitzarà pels tres models d’algorisme genètic involucrats
a les proves. La notació:
hps, kmax, pX , pY i (7.30)
recull els quatre paràmetres ajustables en els tres models d’algorisme genètic pro-
posats anteriorment. El paràmetre ps recull la mida de la població emprada, aixı́ com
kmax correspon al nombre d’iteracions a realitzar. Finalment, pX i pY corresponen a la
probabilitat de creuament i mutació dels algorismes, respectivament.
La primera de les proves es centra en l’impacte de la mida del tauler T emprat pel GALE.
La mida de T , al cap i a la fi, determina la mida màxima que pot assolir la població,
factor crı́tic pels algorismes evolutius [Golberg et al., 1992a]. Per aquest motiu, aquesta
188 Comportament del GALE
primera presenta com varia el comportament del GALE a mida que augmenta la mida
del tauler T .
Per fer les proves s’emprà la funció d’avaluació One Max amb una longitud del
genoma ℓ = 32. El motiu d’escollir aquesta funció és la seva simplicitat de resolució,
tant pel que fa al GALE com pels altres tres models d’algorisme genètic. Aquest punt
facilita la interpretació dels resultats, ja que en totes les execucions els quatre models
assoleixen la solució al problema.
La prova consisteix en realitzar pels quatre models un escombrat incremental de
la mida de la població. Per poder comparar els resultats, donats els quatre models
involucrats, els paràmetres equivalents dels models comparteixen els mateixos valors. És
a dir, els quatre paràmetres corresponent a: (1) la mida de la població (m × n ≡ ps),
(2) el nombre d’iteracions a realitzar (kmax), (3) la probabilitat de recombinació del
material genètic (pM ≡ pX ), i finalment (4) la probabilitat de mutació del genoma
(pmu ≡ pY ). Pel que fa als algorismes genètics aquest són:
Per la seva banda, el GALE comparteix en els seus paràmetres els mateixos valors
que els proposats anteriorment, allà on és possible. El valor de tots els paràmetres del
GALE es presenten a continuació.
La figura 7.9 presenta els resultats de la prova. Donada una mida de població,
cada algorisme s’executà 250 cops, buscant minimitzar l’impacte del comportament
estocàstic dels mateixos. El resultat que es presenta d’aquestes execucions és la mitjana
d’avaluacions necessaris per obtenir la solució, individu representat per l’esquema S =
{111 . . . 111}, figura 7.9.a. En aquesta figura, a part del GALE i els altres tres models
d’algorisme genètic, també es representa el nombre màxim d’avaluacions que es poden
realitzar, és a dir m × n × kmax. Per altra banda, la figura 7.9.b presenta el percentatge
d’avaluacions realitzades respecte al total de possibles.
El primer que ressalta dels quatre models és el fet que tots assoleixen la solució al
problema abans d’exhaurir el nombre màxim d’avaluacions disponibles. De tots quatre
destaca particularment el SGA. Aquest primer model d’algorisme genètic destaca per
l’elevat nombre d’avaluacions que requereix en comparació amb els altres tres models.
Una altra consideració, també interessant, és la que es pot extreure de la comparació
del TGA2 i el TGA8. Aquests dos models basats en torneig, que milloren clarament la
selecció proporcional, suggereix que quan més pressió selectiva en el problema del One
Max, més ràpidament s’assoleix la solució final. Aquesta observació ja s’havia realitzat
en per altres treballs basats en l’ús d’algorismes genètics paral·lels [Cantú-Paz, 2000].
El comportament que presenta el GALE, per la seva part, té una clara similitud amb
el presentat pel TGA8. Com es pot apreciar a la figura 7.9, un cop superar un petit
transitori inicial, el comportament és pràcticament idèntic, excepte pel fet que es troba
lleugerament desplaçat verticalment. Aquest fet és fàcilment explicable. El motiu es
7.6 Proves realitzades 189
30000
25000
Avaluacions realitzades
20000
15000
10000
5000
mxn
(a) Absolut
1.00
0.50
Percentatge d’avaluacions realitzades
0.20
0.10
0.05
0.02
mxn
(b) Proporcional
degut al comportament de l’etapa de survival del GALE presentada a la secció 6.3.7 (pg.
138). Quan el survival es troba en estat de superpoblat, aquest actua, al cap i a la fi, com
un model de supervivència basa en torneig. On, a més a més, la mida de la subpoblació
és de vuit individus, a l’igual que succeeix amb el TGA8. La diferència entre el GALE
i el TGA8 és la forma de generar les subpoblacions. Mentre que en el GALE aquesta
està clarament definida per criteris espacials, en el TGA8 aquesta es forma a l’atzar. La
influència d’aquest punt ja es comentarà amb més detall en les proves següents.
També és interessant ressaltar en aquest punt que el problema no és tant senzill
com per ser resolt tant sols amb una inicialització aleatòria de la població. Aquest punt
es pot constatar degut a que si això succeı́s, els percentatges d’avaluacions realitzades
dels models, presentats a la figura 7.9.b, tendiria cap a la fita mı́nima possible, és a
dir, aquella que correspon al nombre d’avaluacions realitzades en l’etapa d’inicializació
1
dels models. Aquesta fita correspon a kmax +1 , que per les proves que aquı́ es presenten
esdevindria aproximadament 0.004.
Una altre punt interessant pel que fa al comportament del GALE rau en les carac-
terı́stiques del model que proposa. Com es pot apreciar dels resultats d’aquesta prova,
una implementació seqüencial del model proposat és competitiva en front dels models
seqüencials proposats d’algorisme genètic. Aquest punt ja és interessant per si sols, ja
que suggereix que una implementació paral·lela del mateix aportaria importants reduc-
cions en el temps esmerçat en el procés evolutiu.
El segon tipus de prova que es vol presentar correspon a l’estudi de l’impacte del crei-
xement de l’espai de cerca en el comportament general. La finalitat d’aquesta prova es
descriure com es veu afectat el model a mida que es va augmentant l’espai de cerca que
ha d’explorar. Aquest punt és força important per les connotacions que pot plantejar
per els problemes de mineria de dades que es volen resoldre.
Per poder fer un estudi de l’impacte del creixement de l’espai de cerca s’ha escollit,
a l’igual que en l’apartat anterior, la funció d’avaluació One Max. Els motius per escollir
aquesta funció recauen en la simplicitat amb la qual es pot escalar per augmentar l’espai
a explorar. Això s’assoleix senzillament allargant la longitud dels genomes que codifiquen
els individus de la població. Per aquest motiu, les proves que es presenten ajusten els
paràmetres tant el GALE, com dels tres models tradicionals d’algorismes genètics (SGA,
TGA2 i TGA8) amb valors equivalents. Pel que fa al GALE, aquests valors són:
h32 × 32, 250, 0.8, 0.4, 0.5, 0.003, −0.25i (7.33)
Mentre que pels tres models d’algorisme genètic, els valors dels paràmetres són:
h1024 × 32, 250, 0.4, 0.003i (7.34)
50000
20000
Avaluacions realitzades
5000
1000 2000
500
10 20 30 40 50 60
fins assolir ℓ = 64. Per cada longitud dels genoma, cada model s’executà 250 cops
recollint la mitjana d’avaluacions necessàries per assolir la solució al problema One Max.
La figura 7.10 mostra gràficament els resultats d’aquesta prova pels quatre models
emprats.
De l’observació de la figura 7.10 se n’extreuen algunes consideracions interessants.
La primera que se’n pot fer es constatar que el pitjor model és el que proposa el SGA. Com
es pot apreciar, aquest model requereix fins a un ordre de magnitud més d’avaluacions
per assolir el resultat quan ℓ = 64. També queda patent que el pendent del SGA és
força més pronunciat, fent que sigui el que pitjor s’escala en front de l’augment de la
mida de l’espai de cerca a explorar.
Els dos models basats en la selecció per competició, el TGA2 i el TGA8, es pot
apreciar que s’escalen millor que el SGA en front de l’augment de l’espai de cerca. En
aquesta prova es torna a fer patent el fet que els TGA8, degut a la seva major pressió
selectiva, redueix considerablement el nombre d’avaluacions necessàries per obtenir la
solució del problema.
Per altra banda, el GALE continua mostrant les semblances en el seu comportament
respecte al TGA8. Com es pot apreciar a la figura 7.10, la corba de comportament del
GALE continua apareixen emmarcada per les corbes dels dos models d’algorisme genètics
basats en selecció per torneig. Per altra banda, l’augment en l’espai de cerca comporta
un augment en el nombre d’avaluacions a realitzar per resoldre el problema. Aquest
punt també afavoreix l’ús d’un model paral·lel com el del GALE, degut a la capacitat de
reduir el temps d’execució gràcies a la paral·lelització de la implementació del mateix.
192 Comportament del GALE
10000
8000
Avaluacions realitzades
6000
4000
2000
0
pζ
Arribats a aquest punt, ja s’ha revisat alguns dels principals paràmetres que controlen
el comportament del GALE. Malgrat això, existeixen dos paràmetres que presenten un
fort impacte en el comportament del model proposat. Aquests paràmetres corresponent
al llindar de survival sostenible ksr i al llindar de màxima replicació ksp. Aquest dos
paràmetres controlen comportaments complementaris dins l’evolució que duu a terme
el GALE. Per una banda, el llindar de survival sostenible ksr controla la pressió vers
l’extinció dins el tauler T . Per l’altra, el llindar de màxima replicació ksp controla el
ritme amb el qual els individus del tauler es repliquen i, conseqüentment, la velocitat
d’ocupació de T . Tot seguit es passarà a comentar amb detall les proves realitzades per
cadascun d’aquest paràmetres.
El primer dels dos paràmetres que es tractarà correspon al llindar de survival sostenible
ksr. L’objectiu de les proves que es presenten a continuació és identificar com es veu
afectat el comportament del GALE quan es varia aquest paràmetre. Amb les proves
que es realitzaran també es voldrà observar quins valors són adients per aquest tipus de
paràmetre.
Abans de començar a descriure les proves que s’han dut a terme, primer es farà
194 Comportament del GALE
algunes consideracions sobre el survival sostenible. Aquest tipus de survival és presentava
quan el veı̈nat està format
per un nombre de veı̈ns comprès entre 2 i 6, ambdós inclosos.
És a dir, quan 2 ≤ ζ Tijν < 7. En aquesta situació el survival, tal i com es presentava
a la definició 32 (pg. 139), sols permet sobreviure als individus que satisfan la següent
equació:
A (Tij(t)) > Aµ Tijν(t) + ksr · Aσ Tijν(t) (7.36)
De l’equació anterior es pot apreciar que ksr controla la pressió extintiva dins aquest
tipus de survival. Però el que es vol ressaltar en aquest punt, és que aquest tipus de
survival també és un tipus particular de torneig. Aquest torneig, en el qual la pressió
selectiva es pot variar, és la responsable del transitori que apareixia a les figures 7.9 (pg.
189) i 7.10 (pg. 191). Aquest transitori començava amb un GALE que presentava un
comportament semblant al TGA2 i acabava comportant-se com un TGA8. O dit d’una
altra forma, el GALE augmenta la pressió extintiva a mida que el tauler es va emplenant,
passant més i més caselles d’un survival sostenible a un survival superpoblat.
Per poder posar de relleu l’impacte que presenta aquest paràmetre sobre el compor-
tament del GALE, es plantejà un conjunt d’execucions basades en un escombrat selectiu
de ksr. El problema escollit fou un cop més el One Max amb una longitud del genoma
de ℓ = 50. Els paràmetres del GALE es fixaren tal i com es mostra a continuació.
h20 × 20, 250, 0.5, 0.4, 0.5, 0.003, ksr i (7.37)
Per la seva part paràmetre ksr s’escombrà des de ksr=-0.05 fins a ksr=0.01 amb
increments de 0.002. Per cadascun d’aquests valors el GALE 250 cops, promitjant-se
els resultat d’aquestes execucions.
La figura 7.12 mostra gràficament els resultats d’aquestes proves. A diferència de
les figures presentades en les proves anteriors, les tres gràfiques que composen la figura
presenten diferents mesures preses sobre el tauler T del GALE al llarg del procés evolutiu.
És a dir, les gràfiques mostren l’evolució d’aquestes mesures al llarg de les successives
iteracions evolutives representades per t. La primera de les tres mesures que es presenten,
A(t), a la figura 7.12.a correspon a l’avaluació mitjana del la població al llarg d’una
execució. Per la seva banda, la figura 7.12.b representa l’ocupació O(t) del tauler T a
l’instant t. És a dir, representa el percentatge de cel·les Tij que contenen un individu.
Finalment, la figura 7.12.c presenta el nombre d’avaluacions necessàries per obtenir la
solució al problema plantejat.
El primer que es pot apreciar a la figura 7.12 és que existeix un clar punt de ruptura
dins ksr. Aquest punt, situat aproximadament a ksr=0.002, provoca que la pressió vers
l’extinció sigui tant elevada, que el tauler T perd tots els individus que conté. Aquesta
extinció massiva provoca que l’execució del GALE no pugui continuar. Per altra banda,
l’augment de la pressió extintiva també presenta variacions en el comportament, tant
pel que fa a l’ocupació del tauler T , com pel que fa a l’avaluació del individus que
conformen la població.
Com es pot observar a la figura 7.12.b, l’augment de la pressió en l’etapa de survival
sostenible provoca una extinció massiva inicial. En aquest procés desapareixen els indivi-
7.6 Proves realitzades 195
1.0
0.8
0.6
A (t)
0.4
0.2
0.0
0 10 20 30 40 50 60 70
0.4
0.2
0.0
0 10 20 30 40 50 60 70
15000
5000
0
0 10 20 30 40 50 60 70
Figura 7.12: Escombrat de llindar de survival sostenible ksr a l’interval {-0.05,0.01} amb
increments de 0.002 pel problema One Max on ℓ = 50. Codi de colors: el llindar inferior
és vermell i el superior violeta, la resta es representa amb l’escombrat pertinent.
196 Comportament del GALE
dus més pobrement adaptats, on la ocupació del tauler T es recupera un cop comencen
a aparèixer individus ben adaptats. Aquests individus sorgeixen com a resultat de la
recombinació i alteració dels seus materials genètics. Aquesta reducció dràstica de la
població a l’augmentar ksr presenta un altre efecte col·lateral. Aquest és la necessitat
d’un major nombre d’iteracions evolutives, que no d’avaluacions tal i com mostra la fi-
gura 7.12.c, per assolir la solució al problema One Max. Aquest fet es degut a la pèrdua
de diversitat dins la població continguda a T com a resultat del procés extintiu. Per
aquest motiu, l’obtenció de la solució final s’alenteix degut a que no es pot aprofitar les
caracterı́stiques del merge per millor els individus, sols introduint-se la millora a través
de la introducció de nou material genètic que duu a terme el split.
És important ressaltar aquı́ el fet que un major nombre d’iteracions no té perquè
suposar necessàriament un major nombre d’avaluacions i per tant temps d’execució, tal
i com succeeix en aquest cas. Aquesta caracterı́stica és pròpia del GALE, però no dels
models tradicionals d’algorismes genètics. Això es degut al comportament dinàmic de
la ocupació del tauler, ja que no totes les cel·les Tij ha d’estar ocupades en tot instant
de temps t. Dit d’una altra forma, la mida de població, i conseqüentment l’ocupació
del tauler T , del GALE és variable, ja que per definició l’ocupació del tauler O(T ) en
un instant de temps t satisfà que O(T ) ≤ 1. Aquest punt encaixa amb estudis teòrics
que proposen que dona millors resultats emprar poblacions reduı̈des durant més temps
que el cas contrari [Goldberg, 2000].
El segon dels dos paràmetres crı́tics pel funcionament del GALE és el llindar de màxima
replicació ksr. L’objectiu de les proves que es presenten a continuació, a l’igual que
succeı̈a amb el paràmetre anterior, és identificar com es veu afectat el comportament
del GALE quan es varia aquest paràmetre. Amb les proves que es realitzaran també es
voldrà observar quins valors són adients per aquest tipus de paràmetre.
Tal i com es presentava a la definició 29 (pg. 136), el llindar de màxima replicació
ksp correspon a la fita superior que la probabilitat de split pot assolir dins una execució
del GALE. Aquest paràmetre, que sols pot adoptar valors dins l’interval ksp ∈ [0, 1],
intervé en la definició de la probabilitat de split. Aquesta probabilitat, que controla el
ritme de replicació dels individus dins la població continguda dins T , es defineix com:
pS (Tij(t)) = ksp · A (Tij(t-1)) (7.38)
La importància del paràmetre ksp queda patent quan es calcula una mesura teòrica
del temps de take over, o temps que triga el millor individu a saturar la població amb
còpies de si mateix. La importància d’aquesta mesura es pot trobar a [Goldberg, 2001].
Per calcular aquesta mesura es suposarà que la població inicial del GALE sols està
formada per un únic individu. Aquest individu, que correspon a la solució al problema a
resoldre, presenta conseqüentment una avaluació A (Tij(t-1)) = 1. Per aquest motiu,
la probabilitat de split, es pot expressar com:
pS (Tij(t)) = ksp (7.39)
7.6 Proves realitzades 197
200
100
log(1 + ksp)
log(mxn)
50
20
10
5
ksp
Aquesta fita inferior es pot representar gràficament, tal i com mostra la figura 7.13.
Com es pot apreciar, quan més elevat és el llindar de màxima replicació ksp, menys
iteracions són necessàries per assolir el col·lapse del tauler T per part del millor individu.
Amb aquest resultat teòric molt present, i per poder posar de relleu l’impacte que
presenta aquest llindar sobre el comportament del GALE, es plantejà, un cop més, un
conjunt d’execucions basades en un escombrat selectiu de ksp. El problema escollit fou
de nou el One Max amb una longitud del genoma de ℓ = 50. Els paràmetres del GALE
es fixaren tal i com es mostra a continuació.
Per la seva part paràmetre ksp s’escombrà des de ksr=0 fins a ksr=0.15 amb in-
crements de 0.005. Per cadascun d’aquests valors el GALE 250 cops, promitjant-se els
resultat d’aquestes execucions.
La figura 7.14 mostra gràficament els resultats d’aquestes proves. A l’igual que
l’estudi de ksr, les tres gràfiques que composen la figura presenten diferents mesures
preses sobre el tauler T del GALE al llarg del procés evolutiu. És a dir, les gràfiques
mostren l’evolució d’aquestes mesures al llarg de les successives iteracions evolutives
representades per t. La primera de les tres mesures que es presenten, A(t), a la figura
7.14.a correspon a l’avaluació mitjana del la població al llarg d’una execució. Per la seva
banda, la figura 7.14.b representa l’ocupació O(t) del tauler T a l’instant t. És a dir,
representa el percentatge de cel·les Tij que contenen un individu. Finalment, la figura
7.14.c presenta el nombre d’avaluacions necessàries per obtenir la solució al problema
plantejat.
El llindar de màxima replicació ksp presenta, tal i com es pot apreciar a la figura
7.14, un fort impacte en l’avaluació de la població, aixı́ com en l’ocupació de T . Tant en
7.6 Proves realitzades 199
1.0
0.9
0.8
A (t)
0.7
0.6
0.5
0 20 40 60 80 100
0.7
0.6
0.5
0 20 40 60 80 100
10000
5000
0
0 20 40 60 80 100
Figura 7.14: Escombrat de llindar de màxima replicació ksp a l’interval {0,0.15} amb
increments de 0.005 pel problema One Max on ℓ = 50. Codi de colors: el llindar inferior
és vermell i el superior violeta, la resta es representa amb l’escombrat pertinent.
200 Comportament del GALE
un cas com en l’altre, a mida que augmenta ksp augmenta: (1) la velocitat amb la que
s’assoleix la solució i (2) l’ocupació del tauler. Això concorda amb els resultats teòrics
presentats a l’equació 7.43 (pg. 197), la qual prediu la reducció del nombre d’iteracions
necessàries pel take over a mida que augmenta ksp. La constatació empı́rica d’aquest
resultat és important per dos motius principals.
El primer motiu pel qual són importants els resultats presentats a la figura 7.14
afecte a la pressió selectiva. Com es pot apreciar, la solució al problema s’assoleix
més de pressa quan més de pressa es col·lapsa el tauler T . Aquest punt confirma que
millor disposar d’una pressió selectiva elevada per assolir la solució ràpidament. Això
és degut a que quan el tauler es col·lapsa, el comportament del survival es veu alterat,
passant de sostenible a superpoblat. O el que és el mateix, es passa d’una pressió
per l’extinció relaxada com la que proposa el survival sostenible, a una pressió extrema
degut a l’esquema de torneig que utilitza el survival quan aquest entra en la modalitat
de superpoblació.
L’altre motiu pel qual els resultats obtinguts són rellevants recau en el fet que el
llindar de màxima replicació ksp presenta una doble interpretació. La primera és la
freqüència de replicació i, per tant, el ritme al qual es col·lapsarà el tauler. Però la
segona no és tant evident. Aquesta interpretació de ksp diu que, a la llum del resultat
obtinguts, es capaç de controlar el tipus de comportament de survival que es vol obtenir.
Com ja s’ha comentat, jugant amb ksp es pot jugar a controlar el nivell d’ocupació del
tauler i, conseqüentment, el tipus majoritari de comportament del survival que s’aplica
en el mateix.
Finalment, i per concloure el comentaris sobre els resultats obtinguts dels llindars
ksr i ksp, es vol fer algunes reflexions. La principal és la que s’extreu de les gràfiques
presentades a les figures 7.12 (pg. 195) i 7.14 (pg. 199). Existeix un delicat equilibri
entre l’extinció i la replicació dels individus del tauler. Un excés de pressió extintiva a
les etapes inicials de l’evolució, és a dir un ksr > 0.015, provoca la desaparició total
de la població continguda a T . Aquest punt queda patent en el resultats presentats a
la figura 7.12 (pg. 195). Per altra banda, un cop els individus comencen a presentar
una avaluació adaptada al problema que estan resolent, quan més pressió millor a l’hora
d’accelerar la velocitat d’obtenció de la solució. Això es pot assolir fàcilment colapsant
el tauler, O(T ) = 1, a base de replicar ràpidament els bons individus, forçant aixı́ un
augment en la pressió extintiva degut a l’aplicació d’un survival superpoblat. És en
aquest punt que intervé el llindar de màxima replicació ksp. Amb valors de ksp > 0.25
s’assoleix un col·lapse del tauler que permet accelerar el refinament i obtenció de la
solució final al problema que s’està resolent, tal com mostren els resultats de la figura
7.14 (pg. 199).
Arribats a aquest punt, es precı́s analitzar l’impacte que presenten la manipulació del
material genètic en el model proposat pel GALE. A diferència de la resta de proves
7.6 Proves realitzades 201
que es presenten en aquest apartat, les que es descriuran en aquest apartat no són
extrapolables fora del model simplificat. Això és degut a que aquests resultats van lligats
inevitablement a la representació que s’està evolucionen, com als operadors genètics
que s’hi apliquen. Degut al caràcter independent de la representació del coneixement
del GALE, els resultats obtinguts en el model simplificat s’han d’interpretar en cura,
sols essent indicatius de tendències dins el model, havent-se de contrastar per cada
representació que es faci evolucionar.
Fetes les consideracions anteriors, en aquest apartat s’estudiarà l’impacte dels dos
paràmetres que controlen la manipulació del material genètic. En primer lloc es revisarà
la probabilitat de merge pM que determina l’aplicació de l’operador de creuament X . Un
cop fet l’estudi d’aquest paràmetre, tot seguit es passarà a descriure com la probabilitat
de mutació uniforme pmu, la qual controla les alteracions que s’introdueixen a l’operador
Y dins la copia que es fa del genoma d’un individu, condiciona el comportament resultat
de GALE.
Probabilitat de Merge
Per la seva part paràmetre pcalM s’escombrà des de pcalM=0.01 fins a pM =0.8 amb
increments de 0.026. Per cadascun d’aquests valors el GALE 100 cops, promitjant-se
els resultat d’aquestes execucions.
La figura 7.15 mostra gràficament els resultats d’aquestes proves per n = 4 i ℓ =
16. La figura presenten diferents mesures preses sobre el tauler T del GALE al per
cada valor de l’escombrat realitzat sobre pM . La primera de les tres mesures que es
presenten, A(t), a la figura 7.15.a correspon a l’avaluació mitjana del la població al llarg
de les execucions realitzades. Per la seva banda, la figura 7.15.b presenta el nombre
202 Comportament del GALE
0.98
0.96
0.94
0.92
A(T)
0.9
0.88
0.86
0.84
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Probabilitat
(a) Avaluació mitjana de la població A(t)
280000
260000
240000
220000
Avaluacions realitzades
200000
180000
160000
140000
120000
100000
80000
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Probabilitat
(b) Nombre d’avaluacions realitzades
5
4.5
3.5
Diversitat
2.5
1.5
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Probabilitat
(c) Diversitat del tauler T
genètic.
Per poder posar de relleu l’impacte que presenta aquest paràmetre sobre el compor-
tament del GALE, es plantejà un conjunt d’execucions basades en un escombrat selectiu
de pmu. El problema escollit fou, a l’igual que en l’estudi de l’impacte de la probabilitat
de merge pM , el bounded deceptive problem presentat a l’apartat 7.4.2 (pg. 179). El
motiu d’aquesta tria també recau en el fet que aquest problema està especı́ficament per
posar en dificultats els operadors que manipulen el material genètic. Per aquestes pro-
ves, i vistos els resultats presentats en l’apartat anterior, es feu servir una única variants
del problema. Aquesta és la formada per blocs de quatre bits, n = 4, i un nombre de
setze blocs, ℓ = 16, que genera una la longitud final del genoma és de seixanta quatre
bits. Els paràmetres del GALE es fixaren tal i com es mostra a continuació.
Per la seva part paràmetre pmu s’escombrà des de pmu=0.0001 fins a pmu=0.045
amb increments de 0.0025. Per cadascun d’aquests valors el GALE 100 cops, promitjant-
se els resultat d’aquestes execucions.
La figura 7.16 mostra gràficament els resultats d’aquestes proves. La figura presenten
diferents mesures preses sobre el tauler T del GALE al per cada valor de l’escombrat
realitzat sobre pmu. La primera de les tres mesures que es presenten, A(t), a la figura
7.16.a correspon a l’avaluació mitjana del la població al llarg de les execucions realitzades.
Per la seva banda, la figura 7.16.b presenta el nombre d’avaluacions necessàries per
obtenir la solució al problema plantejat. Finalment, la figura 7.16.b representa el nombre
de solucions diferents presenta en el tauler T en el moment d’aturar-ne l’execució.
Com es pot apreciar als resultats presentats a la figura figura 7.16.a, a mida que
augmenta la probabilitat de mutació uniforme pmu també augmenta l’avaluació mitjana
de la població. Però a diferència del que succeı̈a en el cas anterior, aquest increment
en l’avaluació no va acompanyat d’un increment del nombre d’avaluacions necessàries.
La figura 7.16.b mostra aquest fet, suggerint que les variacions en el material genètic
introduı̈des afavoreixen un augment en la velocitat d’obtenció de la solució del problema
a resoldre. Aquest comportament, oposat al que s’obté en variar la probabilitat de merge
pM , no és gens anormal, essent la base sobre la qual es recolzen les estratègies evolutives
[Rechenberg, 1965, Rechenberg, 1973].
Finalment, la figura 7.16.c presenta el resum de la diversitat present en funció del la
probabilitat de mutació uniforme pmu. A diferència del comentat en l’apartat anterior,
en aquest punt la diversitat és causa directa de l’augment de la probabilitat de muta-
ció. Quan més augmenta pmu, més material genètic es veu alterat dins el tauler T i,
conseqüentment, més difı́cil esdevé la convergència cap a la solució al problema. Per
altra banda, l’augment de la pmu també és responsable de la disrupció dels BBs dins
la població, malgrat que aquest efecte es veu paliat per la forta pressió selectiva que
existeix quan el tauler es troba col·lapsat, és a dir, O(T ) = 1.
7.6 Proves realitzades 205
0.975
0.97
A(T) 0.965
0.96
0.955
0.95
0.945
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045
Probabilitat
(a) Avaluació mitjana de la població A(t)
210000
205000
200000
Avaluacions realitzades
195000
190000
185000
180000
175000
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045
Probabilitat
(b) Nombre d’avaluacions realitzades
3.5
2.5
Diversitat
1.5
1
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045
Probabilitat
(c) Diversitat del tauler T
Un cop arribats a aquest punt, ja s’ha explorat l’impacte dels paràmetres presents al
model simplificat presentats a la taula 7.1 (pg. 185). D’aquest estudi s’ha pogut observar
algunes particularitats interessants, les qual suggereixen un major estudi. Concretament,
el focus d’interès se centra en la capacitat que el model presenta per mantenir diferents
solucions (o espècies) alhora coexistint en el tauler T .
L’interés per la capacitat d’especiació del GALE sorgı́ de dues proves realitzades.
La primera correspon a l’estudi de l’impacte de la probabilitat de merge realitzat a la
secció 7.6.6 (pg. 200). En aquest s’intuı̈a una interessant relació entre la generació
de solucions subòptimes i el que anomenarem especiació espacial. La segona prova, es
realitzà per corroborar o refutar la intuı̈ció anterior.
Per poder veure si el GALE era capaç de mantenir un comportament d’especiació
basat en la seva topologia espacial, es plantejà un conjunt d’execucions encarades a po-
sar de relleu aquest fet. El problema escollit fou, la variant del hierachical trap function
proposada a l’aparta 7.4.3 (pg. 180). Aquesta variant proposa afegir m bits redundants
al començament del genoma. Aquests bits, si s’interpreta la funció gràficament, provo-
quen que la funció d’avaluació apareixi com la concatenació de funcions HTF. Aquest fet
provoca que la funció contingui 2m concatenacions de la funció HTF, i conseqüentment
2m+1 màxims globals. La peculiaritat d’aquests màxims és que es reparteixen a parts
iguals entre els esquemes:
Per altra banda, aquesta funció presenta la peculiaritat que existeixen dos atractors
diferenciat, S0m i S1m, complicant aixı́ l’especiació. Això és degut a que pot apareixer
una clara pressió cap a un dels dos degut a les condicions d’inicialització, aixı́ com
als errors comesos a través de l’extinció de solucions que es realitza al llarg del procés
evolutiu, podent fer desaparèixer un dels dos esquemes. Aquesta desaparició portaria
conseqüentment a la pèrdua irremissible de la meitat dels màxim de la funció.
Per poder estudiar el comportament del GALE enfront d’aquesta situació es pre-
pararen dues proves diferenciades. En ambdues proves l’alçada del HTF fou ℓ = 4,
proporcionant genomes de setze bits. Per altra banda, la concatenació que es realitzà
emprà m = {2, 4}. D’aquesta forma, per m = 2 s’obté la concatenació de quatre HTFs
de setze bits, mentre que per m = 4 se n’obté la concatenació de setze de diferents.
En el primer cas la longitud final del genoma és de divuit bits, mentre que en el segon
aquesta longitud és de vint. Per cadascuna d’aquestes funcions el GALE s’executa amb
els paràmetres fixats tal i com es mostra a continuació.
Les figures 7.17 i 7.18 presenten gràficament el comportament del GALE a llarg d’una
execució. Concretament, aquestes figures presenten un resum de l’estat del tauler T en
7.6 Proves realitzades 207
7
6
5
Freqüència
4
3
2
1
0
0 50000 150000 250000
Genotip
(a) t=0
150
Freqüència
100
50
0
Genotip
(b) t=9
2000
1500
Freqüència
1000
500
0
Genotip
(c) t=25
Figura 7.17: Evolució del tauler, amb l’histograma associat, pel problema HTF, ℓ = 4,
amb concatenació múltiple per m = 2
208 Comportament del GALE
8
6
Freqüència
4
2
0
0e+00 4e+05 8e+05
Genotip
(a) t=0
120
100
80
Freqüència
60
40
20
0
Genotip
(b) t=9
800
600
Freqüència
400
200
0
Genotip
(c) t=25
Figura 7.18: Evolució del tauler, amb l’histograma del genoma associat, pel problema
HTF, ℓ = 4, amb concatenació múltiple per m = 4
7.6 Proves realitzades 209
tres instants de temps diferenciats. Aquests tres instants de temps corresponen a: (1)
t=0, just després de la inicialització; (2) t=9, en un estadi primerenc del procés evolutiu;
i (3) t=25, un cop el GALE ha finalitzat la seva execució. Cadascun d’aquests resums es
separa en dues parts. La primera, a l’esquerra de la gràfica, representa el mapa genòmic
del tauler T a l’instant t. Cada cel·la Tij presenta l’individu TijI que conté emprant el
color associat al seu valor genòmic. En cas que una cel·la Tij no contingui cap individu,
és a dir ζ (Tij) = 0, aquesta es representa de color blanc. La segona part del resum, a
mà dreta, conté dos elements importants. El primer és les correspondències de colors
que donat per representar els diferents valors numèrics del genoma de l’individu TijI. En
segon lloc recull l’histograma de les freqüències d’aparició dels diferents valors genòmics,
permetent observar a simple vista la distribució del població al llarg de la recta de valors
genòmics possibles.
De l’observació del comportament del GALE a les figures 7.17 i 7.18 se’n desprenen
dues caracterı́stiques interessants. La primera correspon a la dinàmica que apareix al
llarg de l’evolució proposada pel model. Un cop superada l’extinció inicial d’individus
poc adaptats, apareixen illes de cel·les que contenen individus ben adaptats. Degut a
que la probabilitat de split, definició 29 (pg. 136), és proporcional a l’avaluació, les illes
que contenen millors individus creixen més ràpidament. Aquest creixement es realitza a
les fronteres que defineix l’illa. Això també és resultat directe de la forma amb la qual
la fase de split posiciona els nous individus dins el veı̈nat, afavorint la creació d’illes,
o subpoblacions, compactes augmentant aixı́ dins elles la pressió selectiva. Aquesta
propietat ja havia estat apuntada en altres models d’algorismes genètics paral·lels de gra
fi [Davidor, 1991].
És aquesta dinàmica d’aparició d’illes, formades per individus idèntics, la que sug-
gereix una capacitat d’especiació basada en la distribució espacial de la població dins el
tauler T . Les fronteres d’aquestes illes que contenen diferents espècies es mantindrien,
principalment, pel fet que el GALE defineix el criteri de survival superpoblat en funció de
l’avaluació dels individus. Degut a que tots els màxims presenten la mateixa avaluació,
1, la pressió vers el millor desapareix. A les figures 7.17.c i 7.18.c A(T ) = 1, fet que
implica que tots els individus presents a T siguin solucions al problema plantejat. Però,
és en aquest punt que reapareix la importància del merge. La recombinació d’individus
dins una illa genera com a resulta el mateix individu. Això es degut a que els progenitors
són idèntics. Per contra, a la frontera entre dos illes el comportament del merge és
clarament diferent.
Quan el merge succeeix a la frontera entre dues illes pot donar-se dos casos diferen-
ciats. El primer és que els individus de les dues illes pertanyin al mateix esquema, ja sigui
S0m o bé S1m. En aquest cas, l’individu resultant del procés de merge continuarà perta-
nyent al mateix esquema. En el pitjor dels casos començarà una nova illa d’espècies a la
frontera entre les dues existents anteriorment. Per contra, si els dos individus pertanyen
a esquemes oposats, el resultat del creuament pot generar un individu subòptim. Aquest
individu, degut a que el tauler està col·lapsat, serà reemplaçat en l’etapa de survival su-
perpoblat per algun dels seus veı̈ns. Aquest efecte manté l’equilibri a les fronteres entre
les dues espècies. Amb aquestes consideracions en ment, es pot interpretar les gràfiques
210 Comportament del GALE
Per la seva banda, tant el TGA2 com el TGA8 foren configurats amb els valors
dels paràmetres anteriors equivalents. És a dir, els paràmetres per aquests models
corresponen a:
h1024, 100, 0.4, 0.003i (7.49)
Per minimitzar l’impacte del comportament estocàstic dels tres models, per cada
funció es repetir l’experiment 250 cops, promitjant-ne els resultats. Concretament, les
mesures que es preneren en consideració són el percentatge d’encert mitjà de la població,
aixı́ com la diversitat, o nombre d’individus diferents, existents a la població.
La figura 7.20 mostra gràficament els resultats d’aquestes proves. La figura mostra
els resultat de les dues mesures preses sobre el tauler T del GALE al llarg del procés
evolutiu, aixı́ com de la població evolucionada pel TGA2 i el TGA8. És a dir, les
gràfiques mostren l’evolució d’aquestes mesures al llarg de les successives iteracions
evolutives representades per t. La primera de les tres mesures que es presenten, A(t)
apareix a les figures en vermell. Aquesta correspon a l’avaluació mitjana del la població
al llarg d’una execució. Per la seva banda, les corbes en blau representen la diversitat
7.6 Proves realitzades 211
Freq
ü
ènci
a
t
Geno
tip
(a) m = 2
Freqü
ència
tip
no
Ge
(b) m = 4
Figura 7.19: Evolució del l’histograma del genoma pel problema HTF amb concatenació
múltiple
212 Comportament del GALE
Aquesta peculiaritat és important per entendre el que succeeix en les corbes de
diversitat que es presenten a la figura 7.21. Per la funció HTF amb m = 1, figura
7.21.a, la diversitat final que s’hauria d’obtenir en una població que contingués tant sols
solucions seria de quatre individus. Per contra, en el cas de m = 3 aquest valor s’eleva
fins a setze. El primer que destaca és que el TGA2, al no ser capaç de trobar la solució al
problema no pot col·lapsar la població vers les solucions del mateix. És per aquest motiu
que les corbes del TGA2 es troben, de llarg, del valor de diversitat esperat. Per altra
banda el TGA8, presenta una millor aproximació a la resolució del problema, poden fer
convergir la població cap a les solucions del problema. Malgrat això, la diversitat final
en les poques proves que trobaren la solució als problemes plantejats fou curiosament la
meitat dels esperats. És a dir, dos en el cas de m = 1 i vuit per m = 3. L’explicació és
senzilla un cop s’observà les poblacions resultats d’aquestes execucions. El TGA8 havia
col·lapsat la població vers un dels dos possibles esquemes solució, S0m o S1m, depenen
de quin fos el primer que apareixia al llarg del procés evolutiu. Perdent conseqüentment
la meitat de solucions al problema, i conseqüent reduint la diversitat a la meitat.
Per la seva banda, el GALE aproxima millor la diversitat final de la població al nombre
de solucions del problema a resoldre. Per m = 1 la diversitat mitjana de la població és
de 3.89, mentre que per m = 3 aquest valor és de 14.57. Com es pot apreciar aquests
valors són més grans que 2 i 8, indicant la presència dels dos esquemes solució S0m i S1m
dins la població final. Aquest punt es corroborà posteriorment examinant els genomes
7.6 Proves realitzades 213
3276
1
2621.24
0.85
1966.47
0.71
1311.71
0.56
656.94
0.42
2.18
0.27
0 10 20 30 40 50
(a) m = 1
3276
1
2622.43
0.85
1968.86
0.71
1315.28
0.56
661.71
0.42
8.14
0.27
0 10 20 30 40 50
(b) m = 3
Figura 7.20: Comparació de A(t), aixı́ com la diversitat resultant, pel problema HTF
amb concatenació múltiple de ℓ = 5. Codi de colors: A(t) vermell i la diversitats blava.
El resultats del GALE es marquen amb punts, els del TGA2 amb triangles, i els del TGA8
amb quadrats.
214 Comportament del GALE
2000 5000
2000 5000
500
500
200
200
80
80
40
40
20
20
7
7
4
4
2
2
1
1
0 10 20 30 40 50
(a) m = 1
2000 5000
2000 5000
500
500
200
200
80
80
40
40
20
20
7
7
4
4
2
2
1
0 10 20 30 40 50
(b) m = 3
Figura 7.21: Detall de la diversitat resultant de la figura 7.20 pel problema HTF amb
concatenació múltiple. Codi de colors: GALE(vermell), TGA2(blau) i TGA8(verd).
7.6 Proves realitzades 215
La figura 7.22 presenta els resultats obtinguts en aquestes proves. Com es pot apre-
ciar, el GALE és capaç de mantenir amb facilitat una diversitat proporcional al nombre
de solucions del problema que s’està resolent. Concretament, el nombre de solucions
diferents per m = {1, 2, 3, 4, 5, 6} corresponen a {4, 8, 16, 32, 64, 128} respectivament.
És interessant destacar que existeix un llindar de pζ a partir del qual es satisfà que el
GALE posseeix una diversitat superior a la meitat de les solucions del problema que
s’està resolent. Superat aquest llindar, situat al voltant de pζ ≈ 0.5, el GALE es capaç
de mantenir sense problemes espècies d’individus que pertanyen als dos possibles esque-
mes solució S0m i S1m. Aquest resultats corrobora la capacitat del GALE per mantenir
diferents espècies en un tauler col·lapsat gràcies a la distribució espacial de la població.
Per altra banda, aquestes proves també reforcen el fet ja comentat anteriorment de la
216 Comportament del GALE
100
50
20
Diversitat
10
5
2
pζ
Figura 7.22: Diversitat resultant en funció de la probabilitat d’estat inicial pζ pel pro-
blema HTF amb concatenació múltiple. Codi de colors: les proves realitzades que es
mostren corresponen a per m = {1, 2, 3, 4, 5, 6}, el vermell descriu m = 1 i el violeta
m = 6, fent l’escombrat de color per la resta de valors.
7.7 Resum
Aquest segon capı́tol dedicat al GALE s’ha centrat en l’anàlisi del seu comportament.
Aquest estudi s’ha realitzat des de dos punts de vista diferenciats. El primer, purament
teòric, es centrà en l’estudi de les possibilitats de paral·lelització del model proposat.
Per contra el segon s’ha centrat en l’estudi de com els paràmetres del model afecten al
comportament del GALE.
De l’estudi de les possibilitats de paral·lelització del model proposat pel GALE se
n’han extret un parell de consideracions importants. La primera és que, gràcies a les
consideracions prèvies en el moment de dissenyar el model, la fita màxima de paral·lelisme
assolible és molt elevada. Concretament, aquesta correspon un speedup equivalent al
nombre de cel·les Tij que composen el tauler T que manipula el GALE. Per altra ban-
da, degut al cost d’avaluació que presenten els individus TijI en front d’un problema
de mineria de dades, els càlculs realitzats indiquen una bona tolerància a latències de
comunicació elevades. Aquest resultat indica la viabilitat d’una possible implementa-
ció paral·lela en maquinari basat en estacions de treball interconnectades per xarxes
telemàtiques. Aquest bons resultats teòrics s’obtenen en contrapartida d’uns requeri-
7.8 Notes Bibliogràfiques 217
ments de memòria linealment proporcionals al speedup que es vol assolir. Això es degut
a la necessitat de replicació de dades per facilitar l’avaluació paral·lela dels individus.
L’estudi posterior s’ha centrat en l’anàlisi de l’impacte que presenten els paràmetres
del GALE sobre el seu comportament. Per aquest motiu s’ha emprat un model simplificat
que ha permès comparar-lo a models tradicionals de computació evolutiva basats en
algorismes genètics. El primer que ha destacat és la competitivitat de la implementació
seqüencial del model emprat en front dels algorismes genètics comparats, malgrat no fos
un dels objectius d’aquest capı́tol.
Dins l’anàlisi dels paràmetres pròpiament dit del GALE ha quedat patent la im-
portància de proporcionar suficients BBs al l’inici de l’execució, ja sigui a través de la
mida del tauler T o bé ajustant adientment la probabilitat d’estat inicial pζ. Aques-
ta aportació facilita l’obtenció final del problema a través del procés evolutiu. Dos
paràmetres que també presente un fort impacte en el comportament del model corres-
ponen al llindar de survival sostenible ksr i el llindar de màxima replicació ksp. Tal i
com s’ha presentat en les proves que s’han realitzat, aquests dos paràmetres controlen,
entre d’altres, la pressió extintiva que s’aplica a la població continguda a T . Mentre
que ksr controla la pressió en els estadis inicials de l’evolució, el ksp governa la velocitat
a la qual es col·lapsa el tauler T , O(T ) = 1, i conseqüentment s’augmenta la pressió
extintiva sobre els individus per l’aplicació d’un survival superpoblat. L’equilibri entre
ambdós paràmetres pot portar a obtenir ràpidament la solució al problema, o bé a l’ex-
tinció total de la població continguda a T fent l’execució irrellevant. En aquest capı́tol
també s’ha estudiat com s’han d’ajustar ksr i ksp per obtenir un funcionament eficient
del GALE.
L’estudi del comportament del GALE també ha posat de relleu un punt interessant.
Aquest és la capacitat que presenta per obtenir especiacions basades en la distribució es-
pacial de la població. Aquest comportament, que emergeix quan O(T ) = 1∧A(T ) = 1,
suggereix l’eficiència de l’utilització de models evolutius basats en topologies paral·leles
de gra fi que restringeixen les relacions dels individus emprant criteris de distribucions
espacials. Aquest punt queda patent quan es compara els resultats que obté el GALE en
front de models pammı́tics tradicionals. Concretament, el GALE és capaç de col·lapsar
la població que manipula vers al conjunt de possibles solucions al problema. Aquesta
especiació espacial presenta una rellevància especial quan es té en compte que els proble-
mes que es resolen són de mineria de dades. En aquest tipus de problemes, proporcionar
solucions diferents, igualment acurades, pot ser de gran utilitat.
per torneig es poden trobar a [Back, 1996]. També caurien dins l’apartat de referències
genèriques es pot incloure [Rechenberg, 1965, Rechenberg, 1973]. En aquestes es poden
trobar les bases de la disciplina coneguda com estratègies evolutives.
Les funcions emprades en els estudis es poden trobar descrites a diferents referències.
A [Goldberg, 1989] es pot trobar descripcions del One Max. Per la seva banda, el
bounded deceptive problem es pot trobar descrit, entre d’altres, a [Pelikan et al., 2000].
L’última de les funcions emprades, la que s’ha anomenat hierarchical trap function, es
pot trobar definida a [Pelikan and Golberg, 2001].
Finalment es comentaran quatre referències que descriuen temes especı́fics. L’anàlisi
dels algorismes genètics basat en diferents subproblemes es proposà per primer cop
a [Golberg et al., 1992a]. A [Goldberg, 2000] s’estudia, sota condicions de recursos de
computació fixes, com dimensionar la població i, conseqüentment, el nombre d’iteracions
a realitzar. Consideracions sobre la selecció i el temps de take over es poden trobar
a [Goldberg, 2001]. Consideracions sobre la relació entre diferents moldels paral·lels
d’algorisme genètic i l’augment en la pressió selectiva es pot trobar a [Cantú-Paz, 2000].
Pel que fa a l’aparició d’illes en altres models d’algorismes genètics paral·lels de gra fi,
es poden troba per exemple a [Davidor, 1991].
CAPÍTOL 8
passarà a descriure els resultats que s’obtenen de l’aplicació del GALE als problemes
de mineria de dades escollits. Aquests resultats es presenten agrupats en funció del
tipus de representació del coneixement utilitzat. Concretament, la secció 8.5 presenta
els resultats obtinguts amb l’ús de regles, aixı́ com l’apartat 8.6 els obtinguts amb l’ús
d’instàncies, i finalment la secció 8.7 els resultants de l’evolució d’arbres de decisió.
L’apartat 8.8 recull l’anàlisi dels principals resultats obtinguts emprant diferents tests
estadı́stics. El capı́tol conclou amb un breu resum, secció 8.9, aixı́ com la ja habitual
revisió de les notes bibliogràfiques d’interès relacionades amb aquest capı́tol 8.10.
Els problemes que utilitzats per dur a terme les proves de mineria de dades s’han escollit
per cobrir un ampli ventall de problemes. L’objectiu d’aquesta tria es disposar d’un
conjunt de problemes que presentin diferents caracterı́stiques. Degut a que el tipus de
mineria que es realitza es centra amb tasques de classificació, els diferents problemes
escollits presenten diferents caracterı́stiques que afecten tant als atributs com al nom-
bre de classes involucrades. Per una part, s’ha buscat disposar de diferents problemes
amb diferents nombres d’atributs involucrats, aixı́ com del tipus dels mateixos ja siguin
nominals o numèrics. Per altra banda, aquest conjunt de problemes també tracta amb
diferents cardinalitats de X. És a dir, el conjunt de problemes emprats tracten des de
problemes de classificació binària a n-aris (eg. |X| = 10).
Els problemes escollits es poden agrupar de diferents formes. La que es presentarà
a continuació agrupa els diferents problemes en funció del seu origen.
Artificials: agrupa tres problemes dissenyats especı́ficament per posar de relleu algunes
de les peculiaritats i limitacions dels sistemes de mineria de dades per la classifi-
cació. Algunes de les caracterı́stiques afecten a les capacitats de generalització i
especialització del algorismes, aixı́ com les limitacions inherents a les capacitats
de classificació de les diferents representacions del coneixement emprades.
Públics: un dels principals objectius d’aquest capı́tol és la prova del GALE amb pro-
blemes reals de mineria de dades. Sota aquesta agrupació es recullen un total
de tretze problemes reals amb diferents caracterı́stiques de classificació. Aquests
problemes s’han obtingut de repositoris públics que contenen problemes reals uti-
litzables en problemes de mineria de dades en tasques de classificació.
Privats: aquest últim grup de problemes es centra en dos problemes de mineria de dades
en aplicacions mèdiques. Ambdós problemes es centren en la integració de tasques
de classificació dins de sistemes de diagnosi automàtica de càncer de mama. La
diferència entre aquest dos problemes és centra en l’origen de les dades, ja que
aquest prové en un cas de imatges radiològiques de mammografies, mentre que
l’altre utilitza imatges de biòpsies.
8.1 Problemes emprats 221
i0
i1
i2
i3
i4 o0
i5
i6
i7
a2 a1 a0
Un cop presentada aquesta agrupació del conjunt de problemes, tot seguit es des-
criurà els problemes que s’inclouen dins de cada grup.
8.1.1 Artificials
El grup de problemes artificials que s’utitlitzaran a les proves està format per tres proble-
mes diferents, que són: (1) el multiplexors d’onze entrades, (2) el descodificador del LED
contingut al repositori de l’UCI (Universitat de Califòrnia a Irvine), i (3) el samplejat
de la figura del TAO. Cadascun d’aquests problemes presenta unes propietats diferents,
especialment útils al moment d’avaluar el comportament del GALE en el moment de
dur a terme tasques de classificació.
El multiplexor d’onze entrades [Wilson, 1995] és un dels problemes més utilitzats per la
comunitat del sistemes classificadors. Començat a ser emprat àmpliament amb l’apari-
ció del XCS, el problema consisteix en aprendre el comportament d’un multiplexor de
vuit entrades i tres adreces de direccionament. Gràficament, aquest multiplexor es pot
presentar tal i com es mostra a la figura 8.1.
Donat el multiplexor d’onze entrades el conjunt d’atributs dels quals es disposa està
format pels onze senyals binàries d’entrada del multiplexor. És a dir:
A = {i0, i1, i2, i3, i4, i5, i6, i7, a0, a1, a2}
Per altra banda, aquest problema de classificació és binari, ja que la classe correspon
al senyal de sortida o0 que és el mateix de l’entrada ii seleccionada pel conjunt d’adreces
222 Resolent problemes reals de Mineria de Dades
#######0000:0 #######1000:1
######0#001:0 ######1#001:1
#####0##010:0 #####1##010:1
####0###011:0 ####1###011:1
###0####100:0 ###1####100:1
##0#####101:0 ##1#####101:1
#0######110:0 #1######110:1
0#######111:0 1#######111:1
X = {0, 1}
El segon problema artificial utilitzat és l’anomenat light emitting diode (LED). Aquest
problema fou utilitzat per primer cop a [Breiman et al., 1984], formen part en l’actualitat
del repositori de l’Universitat de Califòrnia a Irvine [Merz and Murphy, 1998].
El LED consisteix en set atributs binaris, A = {a0, a1, a2, a3, a4, a5, a6}, i deu
classes associades, X = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. El problema es construeix a partir dels
dı́odes set segments que s’utilitzen per representar un dı́git, com el que es presenta
a la figura 8.3. D’aquı́ que es disposi de set atributs, un per dı́ode, i deu classes,
que corresponen als deu dı́gits possibles. A diferència del problema anterior, el GALE
requereix una codificació màximament especı́fica. És a dir, en el cas d’emprar regles
aquestes presenten tests especı́fics en els quals es descriuen els estats dels set segments,
no essent útil la generalització de les condicions. Aquesta peculiaritat es pot apreciar a
la figura 8.4. Aquesta figura presenta les deu regles que resolen aquest problema.
Aquest problema és aparentment simple, excepte per un punt. En la generació de les
instàncies, aquestes contenen un 10% de soroll afegit a cadascun dels set atributs pre-
sents. Aquesta adició controlada de soroll permet generar un conjunt ampli d’instàncies.
8.1 Problemes emprats 223
a0
a5 a1
a6
a4 a2
a3
1111110:0 0110000:1
1101101:2 1111001:3
0110011:4 1011011:5
1011111:6 1110000:7
1111111:8 1110011:9
Aquest conjunt no sols està format per les deu que descriuen cadascun dels dı́gits a
representar, sinó que també conté exemples de dı́gits distorsionats pel soroll introduı̈t.
TAO (tao)
L’últim problema de classificació artificial que s’ha utilitzat a les proves és el que s’ha
anomenat TAO. Aquest problema, presentat per primer cop a [Llorà and Garrell, 2001b],
requereix de la utilització de fronteres no lineals en el procés de classificació.
Aquest problema de classificació artificialment definit torna a ser de classificació
binària, X = {black, white}. Les instàncies provenen de mostrejar la figura del TAO, figura
3.1 (pg. 26), emprant una malla de pas 0.25. El nombre d’instàncies resultants d’aquest
procés de mostreig formen un Σ composat de 1888 instàncies. Aquestes es troben
agrupades en 944 instàncies (50%) pertanyents a la classe ‘black’ i de 944 instàncies
(50%) pertanyents a la classe ‘white’.
El motiu d’escollir aquesta figura i no una altra rau en el tipus de fronteres de clas-
sificació que es requereixen. Com s’ha comentat anteriorment aquestes passen per una
estructura no lineal. Això permet apreciar les liminitacions de certs tipus de representa-
cions dels coneixement per aportar solucions que s’hi adaptin correctament.
224 Resolent problemes reals de Mineria de Dades
8.1.2 Públics
El segon gran grup de conjunt de test són públics. Aquests conjunts es poden trobar
al repositori de l’Universitat de Califòrnia a Irvine [Merz and Murphy, 1998]. Aquest
repository, format en l’actualitat per seixanta nou conjunts de dades, recull problemes
reals de classificació provinents de diferents camps i disciplines.
Tal i com es comentà a l’inici d’aquest capı́tols, un dels principals objectius que es
persegueix en el mateix és la prova del GALE amb problemes reals de mineria de dades.
Per aquest motiu, i sota aquesta agrupació es recullen un total de tretze problemes
reals amb diferents caracterı́stiques de classificació. El criteri per seleccionar aquests
problemes, i no uns altres, és el de disposar d’un conjunt de ampli i variat. Això inclou
problemes amb atributs nominal, numèrics i mixtes, això com problemes de classificació
binària i n-ària. Lluny de realitzar una descripció exhaustiva d’aquests problemes, fet
que es pot trobar a [Merz and Murphy, 1998], el que es podrà trobar a continuació és
una breu descripció de les principals caracterı́stiques de cadascun d’ells.
Aquest conjunt de dades prové d’un conjunt de citologies. Les primera descripció d’a-
quest problema es pot trobar a [Wolberg and Mangasarian, 1995]. Aquest problema
està descrit per deu atributs diferents. D’aquests atributs s’ha prescindit del primer, ja
que sols serveix per identificar la citologia. Els altres nou són nominals, penent valors
pertanyents al conjunt {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}. Cadascun d’aquests atributs representa
una caracterı́stica diferent observada a la citologia. El problema de classificació es binari
X={benigne,maligne}. Finalment, el conjunt d’instàncies disponibles es de 699, en les
quals apareixen 16 de les quals que presenten valors desconeguts.
Sota el nom de BUPA liver disorders es recull un conjunt de dades d’origen mèdic.
Concretament, es centra en l’estudi de desordres produı̈ts pel consum d’alcohol. Aquest
problema fou utilitzat per primera vegada a [Forsyth, 1990]. El conjunt A està format
per sis atributs numèrics. D’aquests atributs els cinc primers són el resultat de tests
realitzats per mitjà d’anàlisis de sang, mentre que el sisè correspon al volum de consum
alcohòlic diari. Aquest problema de classificació binària ve descrit per 345 instàncies.
El conjunt Contraceptive Method Choice, utilitzat per primera vegada a [Lim et al., 2000],
recull exemples sobre la classificació de mètodes anticonceptius per part de les autori-
tats sanitàries. Les 1473 instàncies que el formen provenen de dones casades que en
el moment de l’entrevista no estaven embaraçades, o bé ho desconeixien. Els atributs
8.1 Problemes emprats 225
que conformen el conjunt A són numèrics (2) i nominals (7). Aquest atributs recullen
informació demogràfica i socio-econòmica de la dona entrevistada. Per altra banda,
aquest és un problema de classificació ternari, en el qual X={no n’utilitza, llarg termini,
curt termini}.
Glass (gls)
Aquest problema torna a provenir del dominic mèdic. Concretament es centra en el di-
agnòstic de malalties coronàries. Un dels primers treballs presentats que utilitzen aquest
conjunt de dades es pot trobar a [Gennari et al., 1989]. Per poder detectar possibles
malalties coronàries, es disposa de 303 instàncies. Aquests instàncies venen definides per
un conjunt A format per tretze atributs, dels quals sis són numèrics i set nominals. Per
la seva banda el conjunt de classes X conté cinc alternatives diferenciades, de les quals
una correspon a un estat sa i els altres quatre a diferents patologies. Concretament, el
conjunt de classes correspon a X={no anomalia, angina tı́pica, angina atı́pica, dolor no
angı́nic, assimptomàtic }. Aquest conjunt de dades també presenta la particularitat que
presenta 0.2% de valors desconeguts.
El programa heart hungarian [Detrano et al., 1989] és idèntic a l’anterior. L’única di-
ferència existent és el conjunt d’instàncies emprades. En lloc de provenir de l’àrea de
Cliveland provenen, com el seu nom indica, d’una regió d’Hungria. El conjunt de dades
està format per 294 casos en els qual es produeix una tassa de valors desconeguts del
20.4%.
226 Resolent problemes reals de Mineria de Dades
Aquest problema també es centra amb la diagnosi de malalties coronàries com els tres
anteriors. L’única diferència amb els anteriors rau en el fet que el treball recollit a
[Feng et al., 1993] agrupa les cinc classes possibles de X en dues, sa i patològic. Malgrat
això, el problema és idèntic, disposant de 270 instàncies totalment definides.
Ionosphere (ion)
Les dades que es recullen en aquest conjunt de dades provenen de mesures de radar
preses al sistema instal·lat a la badia de Goose, Labrador [Sigillito et al., 1989]. El
sistema consisteix en un array de setze antenes d’alta freqüència amb una potència
total d’emissió de 6.4 kilowatts. L’objectiu de les mesures foren els electrons lliures
de la ionosfera. El problema de classificació és binari, buscant discernir entre retorns.
Conseqüentment el conjunt X està format per dues classes. Aquests rebots poden ser
“bons”, aquells que presenten algun tipus d’estructura a la ionosfera, o bé “dolents”,
on la senyal ha passar a través de la ionosfera. Per altra banda, cada senyal ve descrita
per els trenta quatre atributs numèrics que defineixen A. El nombre total d’instàncies
disponibles es de 351.
Iris (irs)
El conjunt iris [Fisher, 1936] és un dels més emprats per provar tot tipus de mètodes
d’aprenentatge. El problema consisteix en classificar les variants d’un tipus particular
de flor. Cada flor es descriu en funció dels quatre atributs numèrics que formen A.
Els atributs emprats són A={longitud sèpal, amplada sèpal, longitud peta, amplada del
pètal}. Per la seva banda, les variants que s’han d’identificar conformen el conjunt de
classes disponibles el qual correspon a X={iris setosa, iris versicolor, iris virgı́nica }. El
conjunt està format per 150 instàncies diferents.
Aquest conjunt de dades [Smith et al., 1988] prové de l’estudi dels problemes de diabetis
en dones ı́ndies de mes de vint anys d’herència Pima. El conjunt de dades ve descrit
per vuit atributs numèrics, on A recull resultats de tests sanguinis, aixı́ com altres dades
provinents de l’expedient de la pacient. El conjunt de classes X és binari, descrivint la
pacient com diabètica o no. El conjunt de dades conté 768 instàncies.
Sonar (son)
El conjunt de dades sonar [Gorman and Sejnowski, 1988] conté 111 instàncies obtingu-
des de senyals de radar. L’objectiu és discernir els rebots produı̈ts per un cilindre metàlic
8.1 Problemes emprats 227
a diferents angles i condicions, i els rebots generats per roques en les mateixes condi-
cions. El conjunt d’instàncies es defineix sobre un conjunt A de 60 atributs numèrics.
Cada atribut representa l’energia d’una banda de freqüències particular, integrada al
llarg d’un cert perı́ode de temps. Per la seva banda, el conjunt de classes és binari. És
a dir, X={r, m}, on r correspon a una instància resultant d’una roca, i m correspon a
una instància sorgida del rebot en el cilindre metàlic.
Vehicle (veh)
El conjunt de dades vehicle [Mowforth and Shepherd, 1987] és el resultat del treball
realitzat en el reconeixement automàtic de vehicles emprant imatges digitalitzades. En
concret, les 946 instàncies que conformen aquest conjunt de dades venen descrites per
divuit atributs extrets de les imatges de les siluetes dels vehicles. Aquests divuit atributs
que conformen A són tots numèrics. Per la seva banda, el conjunt de classes X conté
quatre possibles alternatives, X= {opel, saab, bus, van }.
Wine (wne)
L’últim dels conjunts de dades públic és el que rep el nom de wine [Forina and et al., 1991].
El problema recull el resultat de diferents proves quı́miques realitzades a diferents vins
de la mateixa regió d’Itàlia però de diferents viticultors. Les instàncies és defineixen en
funció del tretze atributs numèrics que conformen A. Cadascun d’aquests atributs re-
presenta la quantitat trobada a la mostra de vi d’un determinat constituent. El conjunt
de classes disponibles X correspon als tres viticultors possibles de la regió estudiada. El
nombre total d’instàncies disponibles és de 178.
8.1.3 Privats
Dins dels conjunts de dades que es faran servir en aquesta comparativa s’ha inclòs dos
problemes més provinents del domini mèdic. Ambdós problemes tracten amb la diagnosi
de càncer de mamma. El primer es centra en la diagnosi automàtica de càncer de mama a
partir d’imatges de biòpsies de teixit de glàndula mamària. Per contra el segon és centra
en la diagnosi automàtica de càncer a partir d’imatges radiològiques de mammografies.
Tot seguit s’explica breument cadascun del problemes.
El primer dels dos problemes privats emprats, sorgeix de buscar automatitzar el procés
de diagnosi de càncer de mamma emprant com a base imatges digitalitzades de biòpsies
[Vos, 1996, Martı́nez et al., 1996]. Aquesta automatització consisteix en digitalitzar les
imatges de les biòpsies, on la figura 8.5.a. presenta un exemple d’aquestes imatges.
228 Resolent problemes reals de Mineria de Dades
Mammografies (mmg)
Taula 8.1: Atributs extrets del processat de les imatges de les biòpsies de càncer de
mama presents a [Vos, 1996, Martı́nez et al., 1996].
Nom Càlcul
Àrea de la cel·la Mitjana
Àrea de la cel·la Variança
Compactació Mitjana
Compactació Variança
Mitjana de nivell de gris Mitjana
Mitjana de nivell de gris Variança
Variança del nivell de gris Mitjana
Variança del nivell de gris Variança
Dimensió fractal Mitjana
Dimensió fractal Variança
Entropia Mitjana
Entropia Variança
Uniformitat Mitjana
Uniformitat Variança
Contrast Mitjana
Contrast Variança
Cel·la tipus 1
Cel·la tipus 2
Cel·la tipus 3
Cel·la tipus 4
Moment invariant Mitjana
Moment invariant Variança
Excentricitat Mitjana
Excentricitat Variança
Taula 8.2: Conjunt inicial d’atributs que descriuen les microcalcificacions segmentades
Nom Descripció
Area Número de pı́xels present a la microcalcificació
Perimeter Mida total dels contorns de la microcalcificació
P2
Compactness Derivat del perı́metre (P) i l’àrea (A) de la microcalcificació, és igual a 4πA
Box Min. X,Y; Max. X,Y Les coordenades dels extrems esquerra, superior, dret i inferior, respectivament, de cada microcalci-
ficació.
Feret X,Y Dimensions del mı́nim rectangle embolcallant de la microcalcificació, en les direccions horitzontal i
vertical respectivament.
Feret Minimum Diameter Diàmetre mı́nim de Feret trobat després de provar varis angles (màxim 64)
Feret Maximum Diameter Diametre màxim de Feret trobat després de provar varis angles
Feret Mean Diameter Mitjana del diàmetre de Feret un cop provats tots els angles
Feret Elongation Mesura de forma de la microcalcificació, és igual a FeretMax.Diameter
FeretMin.Diameter
8.1.4 Sumari
Tal i com s’ha comentat inicialment, els problemes que s’empraren per dur a terme les
proves de mineria de dades busquen cobrir un ampli ventall de problemes. L’objectiu d’a-
questa tria es disposar d’un conjunt de problemes que presentin diferents caracterı́stiques.
Degut a que el tipus de mineria que es realitza es centra amb tasques de classificació, els
diferents problemes escollits presenten diferents caracterı́stiques. La taula 8.3 presenta
un resum de les diferents caracterı́stiques de cadascun d’aquests problemes.
Com es pot apreciar a la taula resum, dels divuit problemes escollits, dos presenten
exclusivament atributs nominals (led, mux), tres els presenten mixtes (cmc, h-c, h-h), i
els tretze restants numèrics. De la mateixa forma, dels divuit problemes, deu corresponen
a problemes de classificació binària, mentre que els altres vuit restant són problemes de
classificació n-ària. Per altra banda, existeixen tres conjunts de dades (bre, h-c, h-h)
que presenten valors desconeguts en les instàncies que els formen.
A l’apartat anterior s’ha resumit el conjunt de problemes que s’utilitzen en aquest capı́tol.
De la mateixa manera, el GALE no serà l’únic algorisme emprat en la comparativa. En
aquest apartat es farà un breu resum dels diferents algorismes que serviran de marc
de referència pels resultats que s’obtenen amb el model proposat en aquest tesi. Els
algorismes escollits busquen també per la seva part cobrir diferents estils d’algorismes
d’aprenentatge. Concretament, aquests algorismes són el resultat de treballar amb di-
ferents representacions del coneixement, buscant aixı́ facilitar la comparació en front de
les diferents representacions que es capa d’evolucionar el GALE.
Els algorismes escollits representen les diferents representacions del coneixement que
es poden trobar al capı́tol 3 (pg. 19). És a dir, s’ha escollit algorismes que presenten
diferents aproximacions a la resolució de problemes de classificació emprant principal-
ment: (1) regles, (2) arbres de decisió, i (3) instàncies. Per altra banda, per disposar
Resolent problemes reals de Mineria de Dades
d’un conjunt ampli per la comparació també s’ha afegit algorismes que treballen amb
models estadı́stic i vectors de suport.
El primer dels grups d’algorismes són els basats en l’ús de regles com a representació
del coneixement. Dins d’aquests conjunt s’han escollit quatre exemples il·lustratius d’al-
gorismes d’aprenentatge de regles. Els diferents algorismes escollits presenten diferents
peculiaritats. Els dos primers, el 0-R i el 1-R, són algorismes per l’obtenció de regles
senzilles. Per altra banda, el PART és un algorismes d’inducció de regles que utilitza
arbres de decisió parcialment construı̈ts. Finalment, el XCS obté regles a través de l’ús,
entre d’altres, d’un algorisme evolutiu.
El primer dels algorismes basats en regles escollits és el conegut com 0-R [Holte, 1993]. 0-R
Aquest algorisme consisteix senzillament en classificar noves instàncies en funció de la
classe majoritària χi ∈ X present en el conjunt d’instàncies Σ del conjunt d’entrenament.
El nom prové del fet que no utilitzen cap dels atributs de A per realitzar aquest procés.
Conseqüentment la regla que genera l’algorisme correspon a:
∅ → χi (8.1)
El segon dels algorismes d’aprenentatge de regles escollit és el 1-R [Holte, 1993]. 1-R
Aquest algorisme és una evolució del 0-R comentat anteriorment. L’algorisme genera
una regla de classificació on l’antecedent sols consisteix en el test sobre un dels atributs
aj de A, d’aquı́ el seu nom. És a dir, en el cas que aj sigui un atribut nominal la regla
que s’obté esdevé:
aj = vk → χi (8.2)
aj ≤ vk → χi (8.3)
L’atribut aj, el valor vk i la classe χi s’obtenen a partir del conjunt d’instàncies d’en-
trenament de Σ. Concretament, l’algorisme d’aprenentatge consisteix en escollir aquella
combinació de valors que maximitza el percentatge d’encert en la classificació dels exem-
ples de Σ.
El tercer dels algorismes escollits és el PART [Frank and Witten, 1998]. Aquest PART
algorisme construeix regles de forma incremental. La principal particularitat d’aquest
algorisme és el procés que s’utilitza per construir cadascuna de les regles. Enlloc de
fer-ho de forma incremental a partir de l’adició de conjuncions a una regla buida, el
que proposa es emprar arbres de decisió parcialment definits. Aquest arbres s’obtenen
emprant l’algorisme C4.5 que es comentarà un xic més endavant.
L’últim dels quatre algorismes escollits que utilitzen regles és el XCS [Wilson, 1995]. XCS
Aquest algorisme, comentat amb detall a l’apartat 4.7.4 (pg. 82), és un algorisme evolu-
tiu per la obtenció de regles. Aquest sistema classificador, pertanyen a l’enfocament de
Michigan, combina l’aprenentatge evolutiu amb l’aprenentatge per reforçament, obtenint
aixı́ un algorismes incremental. El principal motiu per escollir aquest algorisme rau en el
fet que és un dels més emprats actualment per la comunitat de sistemes classificadors.
234 Resolent problemes reals de Mineria de Dades
Dins dels algorismes d’inducció d’arbres de decisió un dels més coneguts i contrastats
C4.5 és el C4.5 [Quinlan, 1993]. Aquest algorisme construeix un arbre de decisió ortogonal
emprant un conjunt d’instàncies de forma heurı́stica. Aquest procés de construcció es
realitza a partir de l’arrel, repetint-se recursivament per cadascun dels arbres de decisió
fills. Concretament, aquest algorisme utilitza el concepte de guany d’informació per
decidir de quin atribut, donades les instàncies existents, s’ha d’emprar en el test del
node arrel de l’arbre. Posteriorment, i un cop s’han repartit adientment les instàncies
entre cadascuna de les branques filles, és repeteix el procés anterior fins a obtenir un
node en que totes les instàncies comparteixin la mateixa classe, esdevenint aixı́ un node
fulla. Aquest algorisme és una versió millorada de l’ID3 [Quinlan, 1986] el qual és capaç
de treballar amb atributs nominals i numèrics, aixı́ com amb instàncies que presentin
valors desconeguts, entre d’altres.
El tercer bloc d’algorismes escollits són els que treballen amb instàncies. El primer
IB1 algorisme escollit és el IB1 [Aha et al., 1991, Aha, 1992]. Aquest algorisme implementa
l’algorisme del veı́ més pròxim (nearest neighbor algorithm, o NN) emprant com a mesura
de distància la distància euclidiana. Complementàriament, també s’escollı́ l’algorisme
IBk IBk [Aha et al., 1991, Aha, 1992]. La seva principal diferència respecte el IB1 rau en el
fet que utilitza els k veı̈ns més pròxims (k-NN) per dur a terme el procés de classificació.
Un dels problemes que presenten els algorismes basats en instàncies és l’elevat nom-
bre d’instàncies que s’han de mantenir per poder realitzar la classificació. És per aquest
motiu que també s’han utilitzat variants de l’IB1 com són l’IB2, l’IB3, l’IB4, i l’IB5
[Aha et al., 1991, Aha, 1992]. Aquests algorismes busquen, alhora que classifiquen, re-
duir el nombre d’instàncies emmagatzemades per dur a terme el procés de classificació.
IB2 L’IB2 es similar a la regla condensada del veı́ més pròxim (condensed nearest neigh-
bor, o CNN) [Hart, 1968]. La CNN comença escollint, a l’atzar, una instància de Σ
per cadascuna de les classes de X. Si una nova instància és mal classificada emprant
les instàncies existents, aquesta s’afegeix al conjunt d’instàncies emmagatzemades per
evitar futurs errors. Emprant aquesta polı́tica l’IB2 emmagatzema instàncies sorolloses,
IB3 degut a que aquestes no es classificaren correctament. Per la seva part l’IB3 utilitza
tests estadı́stics per permetre sols emmagatzemar instàncies mal classificades accepta-
bles, buscant aixı́ reduir l’impacte del soroll en el conjunt d’instàncies que es manté.
IB4 Finalment l’IB4 i l’IB5 estenen l’IB3 computant un conjunt de pesos per cadascun dels
IB5 atributs presents a A, buscant aixı́ minimitzar l’impacte d’atributs irrellevant presents
en el problema P a resoldre.
Finalment, dins el conjunt d’algorismes emprats en aquest capı́tol se n’han inclòs
dos més que no cauen en cap de les tres representacions del coneixement presentades
Naive Bayes anteriorment. El primer és el conegut com a Naive Bayes [John and Langley, 1995].
Aquest algorisme utilitza la regla de la probabilitat condicionada de Bayes per dur a
terme la classificació. El mot d’ingenu (naive) prové del fet que assumeix independència
entre les aportacions dels diferents atributs de A, aixı́ com de la rellavança de cadascun
d’ells. Per altra banda, el segon algorisme també incorporat és el que s’anomena mi-
SMO nimal sequential optimization o SMO [Platt, 1998]. Aquest algorisme correspon a una
algorisme d’aprenentatge per màquines de classificació binària.
8.3 Impacte del Mapping i el Test 235
Per concloure aquest apartat és precı́s comentar l’origen de les implementacions dels
algorismes utilitzats. Cara a minitzar els errors d’una possible implementació pròpia, es
decidı́ utilitzar implementacions públiques dels mateixos. En alguns casos aquestes foren
proporcionades pels propis autors de l’algorisme. Exemples d’aquest fet són els algorismes
IB1, IB2, IB3, IB4, IB5, i IBk que el propi David W. Aha [Aha et al., 1991, Aha, 1992]
proporciona a la seva plana Web [http://www.aic.nrl.navy.mil/∼aha]. En al-
tres ocasions, els algorismes emprats pertanyen a eines d’aprenentatge artificial com
el Waikato Environment for Knowledge Analysis (WEKA) [Witten and Frank, 2000]
[http://www.cs.waikato.ac.nz/ml/weka]. D’aquesta eina s’han utilitzat els al-
gorismes 0-R, 1-R, PART, C4.5, Naive Bayes, i SMO. Finalment, per la implementació
del XCS s’ha utilitzat la implementació proposada a [Bernadó, 2001].
Arribats a aquest punt, i abans de passar a descriure els resultats obtinguts amb el GALE,
en aquest apartat es descriurà l’impacte en el comportament de dos elements que no
es poderen estudiar en el capı́tol anterior. Això fou degut a les simplificacions que es
dueren a terme. Concretament, els dos punts que s’estudiaran són: (1) l’impacte de la
forma amb la qual es distribueixen les instàncies o mapping, i (2) com es classifiquen
les instàncies no vistes en l’entrenament, o test.
El mapping, presentat a l’apartat 6.3.2 (pg. 122), tracta amb la forma amb la qual
les instàncies de Σ han de ser distribuı̈des al llarg del tauler T . En aquesta tesi s’ha
treballat amb dues funcions de mapping diferents. El mapping uniforme, introduı̈t a
la secció 6.3.2 (pg. 123), és la primera d’elles. Aquest tipus de mapping, notat com
µu(Σ, Tij), replicat totes les instàncies de Σ en totes i cadascuna de les cel·les Tij del
tauler T . Per altra banda, el mapping piramidal introduı̈t a la secció 6.3.2 (pg. 123),
distribueix els exemples en forma de piràmide, tal i com mostra la figura 6.6 (pg. 125).
Aquest tipus de mapping, notat com µk p(Σ, Tij), es basa en la hipòtesi que reduint el
nombre d’exemples es relaxa el problema P podent-ne facilitar aixı́ la seva resolució.
Per la seva banda, el test, presentat a la secció 6.3.8 (pg. 141), tracta amb la
problemàtica de com classificar noves instàncies un cop s’ha fet evolucionar el tauler T .
En aquesta tesi se n’han estudiat i proposat un parell. La primera forma, introduı̈da
a la secció 6.3.8 (pg. 141), és l’anomenada millor. Aquesta suggereix que la nova
instància es classifiqui emprant el millor individu obtingut, d’aquı́ el seu nom. Per
contra, l’anomenada bagging, presentada a la secció 6.3.8 (pg. 142), classifica la nova
instància en funció de la classe majoritaria votada pels individus continguts en les cel·les
Tij que satisfan que µ(Σ, Tij) = Σ. Dit d’una altra forma, la nova instància es classifica
en funció de la combinació de les classificacions dels diferents individus ubicats en cel·les
que resolen el problema P original. Queden per tant exclosos d’aquest procés aquells
individus continguts en cel·les que resolen el problema relaxat Pr.
El que resta d’aquest apartat es centrarà en comentar l’impacte que tenen sobre el
236 Resolent problemes reals de Mineria de Dades
comportament del GALE, cadascun d’aquest factors. En ambdós casos, i degut a que
les proves que es presentaran pertanyen al model original, i no al simplificat, aquestes
tractaran en diferents representacions del coneixement, aixı́ com amb diferents problemes
pertanyents a la selecció presentada a l’apartat 8.1 (pg. 220).
L’efecte del mapping apareix reflexat en diferents punts del comportament del GALE.
De tots ells aquest apartat es centrarà en un punt concret. Aquest és el que afecta
a la hipòtesi que s’utilitzà per definir el mapping piramidal. Tal i com s’ha comentat
anteriorment, aquest mapping es basa en la idea que amb menys exemples més fàcil és
de resoldre el problema. Per aquest motiu la definició de problema relaxat Pr, realitzada
a la definició 17 (pg. 124), es centrava en reduir el nombre d’instàncies, permetent aixı́
definir fàcilment mappings particulars com el piramidal.
Un altra punt a tenir en compte en el moment de realitzar l’estudi de l’efecte del
mapping en el comportament del GALE és el seu caràcter independent de la representació
del coneixement emprada. És dir, degut a que el GALE és capaç d’evolucionar regles,
conjunts d’instàncies, o arbres de decisió, s’haurà de tenir present quin és l’impacte que
el mapping té sobre cadascuna d’elles. Per altra banda, també s’ha de tenir pressent
que existeixen diferents problemes disponibles, on no es podrà restringir aquestes proves
a un problema particular.
Per posar de manifest l’impacte del mapping sobre el comportament del GALE es
començarà exposant com evoluciona el tauler T quan s’usa el mapping piramidal. Con-
cretament el que es presentarà a continuació és el resultat d’emprar el GALE per resoldre
tres problemes diferents: (1) mux, (2) irs, i (3) son. En cadascun d’aquests problemes
s’ha utilitzat una representació del coneixement diferent. Pel problema mux el GALE ha
fet evolucionar regles, mentre que pel problema irs s’ha utilitzat instàncies, i finalment
en el son els individus corresponent a arbres de decisió ortogonals.
Un altre punt a ressaltar rau en el fet que les tres proves esmentades anteriorment
comparteixen una mateixa parametrització pel GALE. Tal i com es comentà en el capı́tol
anterior, els paràmetres que controlen el comportament del GALE eren els que es presen-
taven a la taula 7.1 (pg. 185). En aquest capı́tol es mantindrà la mateixa representació
compacta que s’utilitzava en el capı́tol anterior. És a dir,
hm × n, kmax, pζ, pM , ksp, pmu, ksri (8.4)
La figura 8.7 recull la primera de les tres proves que es presenten en aquest apartat.
Aquesta prova consisteix en resoldre el problema mux emprant el GALE i evolucionant
8.3 Impacte del Mapping i el Test 237
600
500
400
Freqüència
300
200
100
0
5 10 15
Complexitat
(a) t=19
700
600
500
Freqüència
400
300
200
100
0
0 5 10 15 20 25 30 35
Complexitat
(b) t=47
400
300
Freqüència
200
100
0
0 5 10 15 20 25
Complexitat
(c) t=150
Figura 8.7: Impacte del mapping piramidal sobre el problema mux evolucionant regles
238 Resolent problemes reals de Mineria de Dades
individus que descriuen regles, tal i com es descrigué a l’apartat 6.4.1 (pg. 144). La
figura mostra el tauler T en tres punts de l’evolució duta a terme. Concretament, els
tres instants corresponen a t={19,47,150}. Per cadascun d’aquest instants es representa
dues informacions. La primera, a mà esquerra, correspon a la representació gràfica de
Complexitat la complexitat dels individus. Per complexitat s’entendrà una cosa diferent en funció
de la representació del coneixement emprada. En aquesta primera prova que evoluciona
regles, la complexitat s’ha definit com el nombre de regles que conté l’individu, ja que
a més regles més complexa són les fronteres de classificació que proposa un individu.
Conseqüentment, el tauler representa, emprant colors diferents, el nombre de regles de
cadascun dels individus TijI continguts al tauler T . Per altra banda, a mà dreta, la figura
presenta l’histograma de la complexitat dels individus del tauler T a l’instant t presentat
a l’esquerra. Aquest histograma conté també el codi de colors que s’ha assignat a cada
individu en funció de la seva complexitat.
Dels resultats que presenta la figura 8.7 se’n dedueixen algunes consideracions in-
teressants. Aquesta prova utilitza un mapping piramidal. Això implica que les cel·les
Tij que es troben en el centre del tauler posseeixen totes les instàncies d’entrenament
Σ disponibles. Per contra, a mida que les cel·les s’allunyen del centre i s’aproximen
als extrems del tauler cada cop posseeixen menys instàncies. Aquest tipus de relaxa-
ment del problema, tal i com s’ha comentat anteriorment, s’escollı́ sota la hipòtesi que
menys exemples implica una major facilitat per resoldre el problema. Tenint present
aquesta consideració, si s’observà l’evolució del tauler T es pot apreciar una peculiaritat
interessant. Existeix una relació directa entre la complexitat de l’individu TijI i el nombre
d’instàncies ubicades a la cel·la Tij per la funció de mapping piramidal µk p(Σ, Tij). És a
dir, a major nombre d’exemples més complexa és la solució que es proposa, confirmant
aixı́ la hipòtesi de partida del mapping piramidal. Per altra banda, al final de l’execu-
ció, t=150, es pot apreciar una clara compartimentació de la complexitat en el tauler.
Aquest punt queda patent a l’histograma, en el qual apareixen quatre grans valors de
complexitat que recorren el tauler. Però, a més a més aquesta compartimentació de
la complexitat presenta una forta correlació amb el mapping emprat. Concretament,
aquesta complexitat forma anells al voltant del centre del tauler, tal i com succeı̈a amb
els anells de simetria del mapping piramidal presentats a la figura 6.7 (pg. 126).
Malgrat els resultats obtinguts són clars, es decidı́ repetir aquesta prova emprant
un problema diferent, aixı́ com una altra representació del coneixement. Concretament,
el problema escollit fou el son alhora que el GALE evolucionava conjunts d’instàncies,
tal i com es descrigué a l’apartat 6.4.3 (pg. 159). Per poder repetir la presentació
Complexitat dels resultats és imprescindible definir que s’entendrà per complexitat d’un individu que
codifica un conjunt d’instàncies. Aquesta mesura és molt semblant a la emprada pels
individus que codifiquen regles. Concretament, la complexitat d’un individu que codi-
fica instàncies correspon directament al nombre d’instàncies que conté, ja que a més
instàncies més complexa és les regions de classificació que es defineixen.
La figura 8.8 presenta el resultat d’aquesta prova en tres instants de temps diferen-
ciats, t={1,11,25}. Com es pot apreciar, a mida que el GALE evoluciona el tauler T ,
torna a fer-se present la correlació existent entre la complexitat de l’individu contingut
8.3 Impacte del Mapping i el Test 239
1000
800
600
Freqüència
400
200
0
1 2 3 4 5 6
Complexitat
(a) t=1
1200
Freqüència
800
600
400
200
0
1 2 3 4 5 6 7 8
Complexitat
(b) t=11
1500
1000
Freqüència
500
0
1 2 3 4 5 6 7 8
Complexitat
(c) t=25
Figura 8.8: Impacte del mapping piramidal sobre el problema irs evolucionant instàncies
240 Resolent problemes reals de Mineria de Dades
en una cel·la Tij i les instàncies que el mapping hi ha ubicat, µkp(Σ, Tij), o més concre-
tament el seu nombre. A diferència de la primera prova realitzada en la qual apareixien
quatre grans grups de complexitat, en aquesta els individus de T presenten un major
esglaonament. Destaca però la part més allunyada del centre del tauler. En les cel·les
de la perifèria sobresurten les solucions simples definides per una o dues instàncies. Per
altra banda, a l’igual que també succeı̈a amb la primera prova, a mida que les cel·les
apareixen més a prop del centre, i per tant el mapping piramidal hi ubica més exemples,
augmenta la complexitat de les solucions proposades.
Per acabar de reafirmar aquest comportament es realitzà una tercera i última prova.
Aquesta es centrà en la resolució del problema son emprant el GALE per evolucionar
arbres de decisió ortogonals, com els presentats a la secció 6.4.2 (pg. 147). Un cop
Complexitat més, al canviar de representació s’ha de tornar a definir el que s’entén per complexitat en
aquesta representació. La mesura utilitzada és senzilla, consistent tant sols en recomptar
el nombre de nodes que presenta l’arbre de decisió. Aquesta mesura és congruent amb el
fet que a més nodes, més tests són necessaris per realitzar la classificació de les instàncies
d’entrenament. Conseqüentment, una major complexitat implica que les fronteres de
classificació que defineix un individu TijI a l’espai A+ presentin una forma més rica.
La figura 8.9 presenta el resultat d’aquesta prova en tres instants de temps diferen-
ciats, t={4,21,59}. Com ja s’havia constatat en les dues proves anteriors torna a cada
patent la correlació entre el mapping piramidal emprat i la complexitat dels individus
evolucionats. Malgrat això, presenta una particularitat que no s’apreciava en les dues
proves anteriors. La compartimentació dels individus és molt clara i bipolaritzada en
dos valors de complexitat. Individus formats per tres nodes apareixen a la part exterior
del tauler T . Això posa de relleu que el problema son relaxat en aquestes cel·les es
separable lı́nialment, i a més a més, aquesta separabilitat és ortogonal als atributs de
A. Per altra banda, quan el problema que es resol és el problema original son sense
cap mena de relaxació, la complexitat augmenta clarament a valor compresos entre la
trentena i la quarentena de nodes. Aquest fet posa de manifest la dificultat del problema
original. Separant ambdós extrems apareix un anell de cel·les que es mou entre els dos
extrems. Aquestes cel·les, que presenten individus amb una complexitat que s’aproxima
a la vintena de nodes, actuen com a aı̈llament entre les diferent illes o espècies que
apareixen al tauler T com a resultat del mapping piramidal pel problema son que es
resol.
Fins al moment s’ha estat comentant l’impacte que el mapping piramidal presenta
sobre els individus del tauler T que evoluciona el GALE. Malgrat això, existeix una altre
tipus de mapping disponible en el GALE, el que a la secció 6.3.2 (pg. 123) es presentà
com a uniforme, o µu(Σ, Tij). En aquest mapping totes i cadascuna de les cel·les Tij
conten totes les instàncies d’entrenament de Σ disponibles. Conseqüentment, totes i
cadascuna de les cel·les Tij resolen el problema original a resoldre.
Per veure com evoluciona el tauler T , al llarg de l’evolució duta a terme pel GALE
emprant el mapping uniforme, es repetiren les tres proves realitzades anteriorment. En
totes tres s’aprecià un comportament molt similar entre elles. Desapareguda la distri-
bució de les instàncies, i replicant-se totes elles a les diferents cel·les Tij que formen T ,
8.3 Impacte del Mapping i el Test 241
1500
1000
Freqüència
500
0
0 5 10 15 20 25
Complexitat
(a) t=4
1500
Freqüència
1000
500
0
0 5 10 15 20 25
Complexitat
(b) t=21
2000
1500
Freqüència
1000
500
0
0 10 20 30 40
Complexitat
(c) t=59
Figura 8.9: Impacte del mapping piramidal sobre el problema son evolucionant arbres
de decisió ortogonals
242 Resolent problemes reals de Mineria de Dades
1200
Freqüència
Complexitat
(a) t=1
1500
1000
Freqüència
500
0
3 4 5 6 7 8
Complexitat
(b) t=11
1500
1000
Freqüència
500
0
3 4 5 6 7 8 9
Complexitat
(c) t=25
Figura 8.10: Impacte del mapping uniforme sobre el problema irs evolucionant
instàncies
8.3 Impacte del Mapping i el Test 243
El segons dels components del GALE, l’impacte del qual no es pogué avaluar emprant
el model simplificat, correspon a la forma de realitzar el test de noves instàncies un
cop l’algorisme ha finalitzat el seu funcionament. Exposat d’una altra forma, un cop
el GALE finalitza la seva execució i retorna el tauler T resultant, a l’apartat 6.3.8 (pg.
141) es proposaren dues formes d’emprar-l’ho per poder classificar noves instàncies no
vistes en el procés evolutiu. Aquest són les que s’han anomenat millor individu, apartat
6.3.8 (pg. 141), i bagging, aparat 6.3.8 (pg. 142).
Realitzant proves en diferents conjunts s’aprecià que la variant bagging, a l’igual
que succeeix a la literatura relacionada [Breiman, 1996], es produeix, en general, un
lleuger augment en el percentatge d’encert en la classificació, alhora que disminueix la
desviació, respecte a la proposta d’utilitzar el millor de T . La metodologia emprada per
realitzar aquestes proves s’exposarà amb detall en l’apartat següent. Serveixi d’exemple
els resultats obtinguts en un parell de problemes, com són el irs i el mmg. Quan s’aplica
bagging al problema irs s’obté encerts de classificació del 95.73±6.33; per contra quan
244 Resolent problemes reals de Mineria de Dades
8.4 Metodologia
Un cop presentats el resultats sobre l’impacte del mapping i el test sobre el compor-
tament del GALE, aquest apartat presenta un punt d’inflexió en el contingut d’aquest
capı́tol. El que es podrà torbar d’ara endavant és l’experimentació exhaustiva que s’-
ha dut a terme emprant el GALE per la resolució de problemes de mineria de dades.
Però abans de presentar els resultats obtinguts, aquest apartat es centrarà en exposar la
metodologia que s’ha seguit per realitzar l’experimentació que involucra els conjunts de
dades, presentats a la secció 8.1 (pg. 220), els algorismes de l’apartat 8.2 (pg. 231) i,
finalment, el GALE.
Abans de poder comentar la metodologia particular emprada per l’experimentació,
tot seguit es faran algunes consideracions. Bàsicament aquestes afecten a dues qüestions
importants:
2. Com es poden comparar els diferents algorismes en front d’un conjunt de dades?
Aquestes dues preguntes no van deslligades, ja que com es podrà apreciar tot seguit,
ambdues van fortament relacionades. Això es degut al fet que les comparacions reque-
reixen un tipus d’execució concreta, a l’igual que donat un tipus d’execució, es poden
realitzar certs tipus de comparacions, però d’altres no. Per simplificar es començarà des-
crivint com s’executaran els diferents algorismes, comentant breument el perquè. Tot
seguit, un cop comentada la forma en que s’executaran els algorismes ja es passarà a
8.4 Metodologia 245
descriure com es poden comparar els resultats obtinguts pels diferents algorismes als
conjunts de dades dels quals es disposa.
Una de les principals problemàtiques que implica executar l’algorisme és decidir quina
mesura s’emprarà per poder avaluar el seu rendiment. Recordant que els problemes que
es resolen són problemes de classificació, una mesura que sembla força encertada és
emprar el percentatge d’encert, tal i com s’ha presentat en les proves de l’apartat anterior.
Malgrat això, apareix una pregunta inel·ludible. Aquesta és, donat un conjunt de dades,
com s’ha de mesurar aquest percentatge d’encert. En funció de com es decideixi calcular
aquest valor s’obtindrà una forma o una altra d’executar l’algorismes. Per exemple, un
pot prendre un algorisme i executar-lo amb totes les instàncies de Σ disponibles. Un
cop fet això, la mesura que s’escolliria podria ser directament el percentatge d’encert
resultant obtingut de l’execució.
En el cas que s’esculli com a mesura el percentatge d’encert de l’algorisme emprant
tots els exemples té certs inconvenients. El principal rau en el fet que aquesta mesura
no aporta cap mena de noció sobre la capacitat de generalització de l’algorisme. És
important en aquest punt aclarir que s’entén per generalització de l’algorisme d’apre-
nentatge, per evitar confusions amb altres tipus de generalitzacions. Quan es parlava en
el capı́tol 3 (pg. 19) de generalització, es feia referència, principalment, a la capacitat Generalització
de les diferents representacions del coneixement presentades per assolir una represen-
tació intensional compacta. Un exemple clar d’aquesta idea de generalització pot ser
el caràcter ‘#’ de les regles dels sistemes classificadors presentat a la secció 4.7.1 (pg.
71). Com es pot apreciar la generalització en aquesta representació del coneixement
consisteix en introduir ‘#’ dins les regles, permetent eliminar atributs obtenint regles i
generals que cobreixen un major nombre d’exemples. Per contra, i un cop feta aquesta
puntualització, quan es parla de la capacitat de generalització d’un algorisme d’aprenen-
tatge es fa referència la capacitat que l’algorisme té per generalitzar el concepte après
de Σ a altres conjunts d’instàncies que no eren presents en el moment de realitzar-ne
l’aprenentatge. Dit d’una altra forma, la mesura que permeti avaluar el comportament
dels diferents algorismes no pot estat lligat a una execució de l’algorisme donat conjunt
particular d’instàncies. Per contra aquesta hauria d’estimar com es comportarà aquest
en front de nous exemples no vistos anteriorment, és a dir, avaluar-ne la capacitat de
generalitzar.
De les consideracions anteriors, sorgeix el concepte d’estimador de la capacitat de Estimador
generalització. És en aquest punt on per determinar com s’han d’executar els algo-
rismes intervé l’estadı́stica, i els estimadors estadı́stics [Liu and Motoda, 1998]. L’ob-
jectiu d’aquests és estimar el percentatge d’encert que presentarà l’algorisme en front
d’instàncies no utilitzades en l’entrenament. Dit d’una altra forma, la capacitat que
l’algorisme tindrà per generalitzar. La definició dels estimadors, i per tant la forma d’e-
xecutar els algorismes, està clarament lligat a l’estadı́stica. En el que resta d’apartat
es comentaran breument alguns estimadors existents, referint explicacions més detalla-
246 Resolent problemes reals de Mineria de Dades
des a [Liu and Motoda, 1998] i de caire pràctic a [Witten and Frank, 2000], aixı́ com
referències complementaries a [Bernadó, 2001].
Hold-out El primer estimador que es comentarà és l’anomenat hold-out. La idea és simple. Si
el que es vol és estimar com es comporta l’algorisme davant d’instàncies no presents en
el conjunt d’entrenament, una possible solució seria dividir Σ en dos conjunts Σα i Σω
disjunts que satisfaci:
Σ = Σα ∪ Σω ∧ Σα ∩ Σω = ∅ (8.6)
Havent fragmentat Σ tal i com s’ha comentat, es pot emprat Σα com a conjunt
d’instàncies d’entrenament. Per contra Σω s’utilitza com a conjunt d’instàncies per
avaluar el percentatge d’encert un cop l’algorisme ha finalitzat. Posteriorment es pren
aquest percentatge d’entrenament com a estimador de la generalització de l’algorisme.
Aquesta proposta presenta però greus problemes que neixen del fet d’haver de fragmen-
tar el conjunt d’instàncies Σ. El fet es que aquesta fragmentació hauria de garantir
que el conjunt Σω serviran de mesura fiable d’estimació de la capacitat d’estimació.
Estadı́sticament es demostra que aquest estimador sols és acurat quan la mida de Σ és
tendent a infinit [Canavos, 1988]. Aquest punt fa que pràcticament no s’utilitzi.
Bootstrap Una versió més elaborada del hold-out és el que es coneix com a bootstrap, o també
conegut com a 0.632 bootstrap. La idea continua essent idèntica a la presentada en
el cas del hold-out, però la diferència apareix en el punt que aquest estimador si que
especifica com formar els conjunt d’instàncies d’entrenament Σα i de test Σω. El sistema
que proposa es basa en l’ús de mostreig amb reemplaçament. El procés consisteix en
mostrejar el conjunt Σ format per n instàncies n cops per generar el conjunt d’instàncies
Σα. Degut al mostreig que es proposa, dins Σα existiran instàncies no mostrejades.
Aquestes instàncies que no han estat escollides són les que s’utilitzen per formar el
conjunt d’instàncies de test Σω.
Abans de continuar amb l’explicació del 0.632 bootstrap es vol comentar la peculia-
ritat que dona a aquest estimador. Donat el procés de mostreig presentat anteriorment
la probabilitat d’una instància d’ésser escollida per formar part de Σα és 1/n. Con-
seqüentment, la probabilitat de no ser escollida correspon a 1 − 1/n. Si el procés de
mostreig es repeteix n cops, la probabilitat d’una instància de no ser escollida és:
1 n
1− ≈ e−1 = 0.368 (8.7)
n
D’això se’n desprén que en front de conjunts de dades relativament grans el 36.8% de
les instàncies de Σ formaran Σω i seran utilitzades per calcular l’error εω de l’algorisme
un cop ha finalitzat l’entrenament. Per contra, el conjunt d’entrenament Σα, de mida
n, contindrà estadı́sticament el 63.2% per cent (d’aquı́ el nom de 0.632 bootstrap)
d’instàncies de Σ algunes d’elles replicades, a partir de les qual es pot calcular εα, o
error obtingut en l’entrenament. Per calcular l’estimador final, no s’escull directament
εω, ja que aquest és excessivament pessimista respecta l’estimació real. Per contra, εα
seria massa optimista. Finalment, l’estimador de l’error ε es calcula com:
On l’estimació del percentatge d’error real correspon a 1/ε. Per poder minimitzar
l’impacte que produeix el mostreig en aquest estimador, el procés es repeteix varis
cops, promitjant-ne els resultats obtinguts. Malgrat aquest estimador presenta un bon
comportament en conjunts de dades reduı̈ts, presenta problemes tal i com es relaten
descriuen a [Witten and Frank, 2000].
L’últim dels estimadors que es comentarà en aquest punt és el que es coneix amb el
nom de cross-validation, o validació creuada. Tant el hold-out com el 0.632 bootstrap Cross-
utilitzen algunes instàncies de Σ per dur a terme el test de l’algorisme d’aprenentatge validation
per avaluar-ne la seva capacitat de generalització. Per contra, l’estimador de validació
creuada parteix d’una premissa diferenciada. Aquesta diu que, en el procés de càlcul de
l’estimador, totes les instàncies de Σ han d’haver estat emprades. Dit d’una altra forma,
totes les instàncies han d’haver estat utilitzades per computar el percentatge d’encert
en test de l’algorisme. Per assolir aquest objectiu, l’estimador es recolza en l’ús de folds,
o fragments del conjunt d’instàncies Σ. Donat el conjunt Σ aquest és divideix en k
conjunts, o folds, que satisfan:
k
1X
p= pi (8.10)
k
i=1
acceptables de computació, és 10. Aquest cas particular es coneix com ten-fold cross-
validation.
Aquest estimador, malgrat tot, presenta alguns inconvenients. Tots ells sorgeixen
del mostreig que es realitza de Σ per formar els diferents folds. El comportament
de l’algorisme pot variar d’una execució de la validació creuada a una altra. Per altra
banda, la forma de general el diferents conjunts no garanteix que es mantingui la mateixa
distribució d’instàncies que la que es posseı̈a inicialment. Aquest fet fa que pugui tornar-
se el resultat poc realista.
Per solucionar aquestes dues problemàtiques existeixen un parell de variant de la
validació creuada. La primera consisteix en repetir l’experiment m cops, i promitjar els
resultats obtinguts en aquests m experiments. Un valor que es sol emprar habitualment
és el de 10 [Frank and Witten, 1998]. A aquesta variant, quan k = 10, se l’anomena
ten ten-fold cross-validation. Per altra banda, una altra variant d’aquest operador és la
que es centra en mantenir dins de cada fold la mateixa distribució de classes que apareix
al conjunt d’instàncies Σ disponible. Aquesta variant coneguda com stratified cross-
Stratified validation, o validació creuada estratificada, construeix cadascun del folds mantenint la
cross- distribució de classes de Σ, sempre i quan això sigui possible. L’estratificació també
validation aporta una altra propietat interessant. Aquest és la de reduir l’impacte del mostreig que
es realitza en els folds sobre l’estimador. Malgrat això la repetició de l’experimentació
ajuda a obtenir una mesura més acurada de l’estimador.
Per concloure aquesta breu revisió d’estimadors estadı́stics es vol comentar un cas
particular de la validació creuada. Aquest és l’estimador conegut com leave-one-out
LOO (LOO). Aquest estimador s’obté quan k = n, és a dir quan es fa una validació creuada
en la qual el nombre de folds correspon amb el nombre d’instàncies de Σ. En aquesta
situació Σω
i està format cada cop per una única instància. D’aquesta forma desapareix
la necessitat de dur a terme un mostreig de Σ, convertint l’estimador en determinı́stic,
evitant aixı́ la necessitat de repetir l’experimentació. Per contra, això implica un elevat
cost, ja que l’algorisme d’aprenentatge s’ha d’executat n cops.
Per les proves que es podran trobar en els apartats següents s’ha utilitzat com a
estimador el stratified ten-fold cross-validation. Els motius d’escollir aquest estimador
passen per dos motius principals. El primer prové del tipus de problemes de mineria de
dades que es volen resoldre. Degut a l’elevat volum d’instàncies que es poden trobar
en aquest tipus de problemes de mineria fa impracticable l’ús d’estimadors com el LOO,
degut a l’elevat nombre d’execucions que s’haurien de dur a terme. Per aquest mateix
motiu es descartà també l’ús de validacions creuades repetitives, deixant-ho com a lı́nia
de treball futur. Finalment, el mètode que s’escollı́ es correspon a l’ús de validacions cre-
uades estratificades pels diferents algorismes comparats aixı́ com pels diferents conjunts
de dades.
8.4 Metodologia 249
El segon punt a decidir és quines eines s’empraran per comparar el resultats obtinguts
pels diferents algorismes davant els conjunts de dades disponibles. Aquest no és una
tasca senzilla. El principal problema amb el qual tota la comparació d’algorismes és el
que s’ha anomenat a la literatura relacionada com el problema de superioritat selectiva
(selective superiority problem) [Brodley, 1993]. Existeixen proves empı́riques que els
algorismes tradicionals d’aprenentatge funcionen bé en alguns però no en tots el possibles
problemes. Alguns motius del per què d’aquesta problemàtica s’ha presentat en el capı́tol
3, concretament a l’apartat 3.3 (pg. 23) on es presentaven diferents representacions
del coneixement emprades per la classificació, i alhora es posaven de relleu les seves
limitacions. i
Davant d’aquesta situació, es recorré a l’estadı́stica per permetre estudiar com-
parativament el comportament dels algorismes en el problemes concrets dels quals es
disposa. Concretament, les eines escollides són tests basats en hipòtesis estadı́stiques
[Sachs, 1984, Canavos, 1988]. L’objectiu d’utilitzar aquests tests és permetre avaluar si
les diferències de comportament d’un algorisme respecte un altre, davant un conjunt de
dades concret, són significatives (estadı́sticament significatives). En el cas de ser-ho, es
podrà afirmar, amb un cert nivell de confiança, que en el problema concret analitzat, és
millor emprar un o altra algorisme. Com es pot apreciar, aquesta aproximació encaixa
correctament dins les consideracions esmentades a l’apartat anterior.
Dels possibles tests estadı́stics que es poden escollir n’hi ha dos d’especialment
adients pels objectius que es persegueixen. El primer és el conegut com a test t de
Student, mentre que el segon és el test basat en rang i signe de Wilcoxon. Ambdós
tests es calculen a partir del valor de l’estimador emprant, que en aquest cas correspon al
calculat a partir de la validació creuada estratificada. Recull de referències i justificacions
sobre aquests dos tests es poden trobar amb detalla a [Bernadó, 2001].
Concretament, el test t de Student es basa en les diferències aparellades de la Student
validació creuada dels dos algorismes comparats. És a dir, donats dos algorismes a
comparar, a i b, un cop realitzada la validació creuada es disposa dels resultats dels
diferents tests obtinguts per cada algorimes. O el que és el mateix, per l’algorisme a
s’ha obtingut {pa a a
1 , p2 . . . pk}, mentre que per l’algorisme b aquest valors corresponent a
{pb b b
1 , p2 . . . pk}. Per calcular l’estadı́stic t és necessari calcular les diferències aparellades
{d1, d2 . . . dk} com di = pa b
i − pi . Calcular aquestes diferències és lı́cit degut a que
els folds emprats per ambdós algorismes a i b són els mateixos. Calculades aquestes
diferències es pot també és calcular la mitjana de les diferències, d, això com la seva
variança σ2d. Amb aquesta informació ja es pot calcular l’estadı́stic t com:
d
t= q 2 (8.11)
σd
k
Un cop obtingut el valor de t, és precı́s decidir el nivell de confidència nc que es vol
emprar. Els valors que es solen emprar es solen moure entre un 5% i un 1%. Amb aquest
250 Resolent problemes reals de Mineria de Dades
valor ja es pot determinar el valor del llindar z que correspon a la distribució de Student.
Concretament, si els experiment corresponen a una validació creuada amb k=10, els
valor de z s’extreu de les taules de la distribució de Student amb 9 graus de llibertat.
Per altra banda, en el cas particular de comparar els algorismes a i b aquest test es
convenient realitzar-lo amb dues cues, fet que s’ha de tenir en compte en el moment de
consultar les taules. Tot seguit, amb els emprant els valors de t i z, ja es pot determinar
si el comportament d’un algorisme és significativament millor o pitjor pel conjunt de
dades estudiat amb el nivell de confidència escollit. Més detall sobre l’aplicació d’aquest
tipus de test per comparar algorismes d’aprenentatge es pot trobar a [Dietterich, 1998].
Wilcoxon El segon dels tests emprants és el conegut com a test de Wilcoxon. Aquest test
es basa en rang i el signe de l’estimador emprat, que en aquest cas és el basat en els
resultats de la validació creuada. L’aproximació d’aquest test difereix de l’anterior, en el
qual l’objectiu ra saber si un algorisme a és millor o pitjor que un altre algorisme b fixat
un cert nivell de confidència nc. En el cas del test de Wilcoxon el que s’obté és amb
quin nivell de confidència es pot afirmar que un determinat algorisme a és millor que un
altre algorisme b. Les consideracions a realitzar per poder explicar aquest test són un
xic extensa, motiu pel qual s’ha decidit dirigir al lector interessat a [Conover, 1971], on
trobarà explicat tant el que fa referència al test, com a la forma i condicions que s’han
de donar per poder-lo aplicar a la comparació d’algorismes.
Arribats a aquest punt ja es pot contestar a les dues preguntes que es feien al comença-
ment d’aquest apartat. Les proves s’han realitzat seguint de la següent forma. Per cada
conjunts de dades, presentat a l’apartat 8.1 (pg. 220), s’han executat tot els algorismes
disponibles, tant els presentats a l’apartat 8.2 (pg. 231) com el GALE, emprant validació
creuada estratificada amb una k=10. Un cop executats aquests algorismes, els resultats
obtinguts s’han comparat estadı́sticament emprant els dos testos estadı́stic presentats,
el de Student i el de Wilcoxon.
Degut a la peculiaritat que presenta el GALE de poder evolucionar diferents tipus de
representacions del coneixement, aquest fet afecta la forma en la que es presentaran els
resultats tot seguit. Per contra, tal i com s’ha vingut comentant repetides vegades, els
algorismes presentats a l’apartat 8.2 (pg. 231) solen estar disenyats per treballar sols
amb un tipus particular de representació. Per aquest motiu els resultats que es presenten
tot seguit s’han agrupat en funció del tipus de representació del coneixement que s’està
emprant. Principalment, aquestes agrupacions corresponen a regles, apartat 8.5 (pg.
251), instàncies, apartat 8.6 (pg. 256), i arbres de decisió, 8.7 (pg. 263). Aquests
resultats s’acompanyen amb una primera aproximació a la comparació estadı́stica basada
amb el test de Student.
Per altra banda, a l’apartat 8.8 (pg. 269) es presenta el resum dels resultats obtin-
guts, aixı́ com els d’aquells algorismes que no encaixen en els tres grans blocs esmentats
anteriorment. Aquests s’amplien amb el resultats dels dos tests estadı́stics aplicats, ara
8.5 Obtenció de regles 251
Taula 8.4: Percentatge d’encert en classificació i desviació estàndard de les proves em-
prant ten fold crossvalidation. Els resultat es marquem amb un ◦ si mostren una millora
significativa (significant en un 1% respecte el t-test aperellat de dues cues) respecte el
corresponen resultat del GALE, i amb una • si presenten una degradació representativa.
Cjt 0-R 1-R PART XCS GALE
bre 65.1±1.1• 92.3±0.6 95.3±2.2 96.4±2.5 94.9±3.2
led 10.5±0.0• 18.2±0.2• 75.1±0.0 74.5±0.0 75.0±0.0
mux 49.9±0.1• 51.6±0.3• 100.0±0.0 100.0±0.0 100.0±0.0
Pmg 41.8 54.0 90.1 90.3 90.0
Els primers resultats que es presentaran són aquells que afecten a la obtenció de regles.
Aquest primer apartat dedicat a la presentació de resultats recull les proves realitzades
emprant els algorismes 0-R, 1-R, PART, XCS, i GALE. Aquest algorismes s’han utilitzat
per obtenir regles que descriguin tres conjunts de dades, que són: (1) el bre, (2) el led,
i (3) el mux.
El motiu de sols començar tant sols amb tres conjunts de dades rau en les restriccions
exposades a l’apartat 6.4.1 (pg. 144) sobre el tipus de regles que evoluciona directament
el GALE. Aquestes, hereves de les que s’utilitzen en els sistemes classificadors, treballen
amb atributs nominals, on per poder treballar amb atributs reals requereixen un prepro-
cessat previ basat en la discretització dels valors numèrics. Per altra banda, tal i com
es comentà al final de a l’apartat 6.4.1 (pg. 144), per obtenir regles que treballin amb
atributs nominals i numèrics el GALE utilitza arbres de decisió ortogonals per extreuren
regles de classificació, tal i com es podrà trobar més endavant en aquest capı́tol.
Conseqüentment, degut a les consideracions anterior, de tots els conjunts de dades
disponibles sols se n’han utilitzat tres. Per la seva banda, tant el led com el mux són
problemes artificials especialment pensats per treballar amb atributs nominals, essent
el primer un problema de classificació n-ari mentres que el segon és binari. Per altra
banda, el tercer problema emprat, el bre, és un problema de classificació binari. Malgrat
els atributs es consideren numèrics, ja que prenen valors enters pertanyents a l’interval
[1,10], es pot veure clarament la seva utilització directa com a problema amb atributs
nominals pertanyents a {1,2,3,4,5,6,7,8,9,10}. Amb aquesta consideració es pot utilitzar
igualment.
La taula 8.4 presenta el resultat obtingut per cadascun dels algorismes als tres conjunt
de dades esmentats anteriorment. La taula mostra el resultat dels experiments emprant
validació creuada estratificada, emprant 10 folds, concretament la mitjana final, aixı́
252 Resolent problemes reals de Mineria de Dades
∅ → benign (8.12)
Com es pot apreciar aquesta regla no presenta antecedent, pels motius esmentats
anteriorment. Malgrat això, degut a la distribució de classes al conjunt d’instàncies
Σ, aquesta regla presenta un percentatge d’encert superior al 50%, concretament el
65.52%. Com es pot apreciar aquest comportament es el resultat particular d’explotar el
balanç de classes, problema molt important a tenir present en el moment de dur a terme
8.5 Obtenció de regles 253
el processos de mineria de dades. Per altra banda, la matriu de confusió associada és la
que es presenta tot seguit.
458 0
(8.13)
241 0
Com es pot apreciar, aquesta regla sols realitza un senzill test sobre un dels possibles
atributs de A, concretament sobre Cell Size Uniformity. Malgrat l’aparent simplicitat
de la representació instensional proposada, el percentatge d’encert assolit és remarcable,
assolint un 92.70%. Observant la matriu de confusió que es presenta a continuació,
es pot apreciar l’utilitat que pel 1-R té l’assumpció d’un món tancat. Per contra,
tal i com es pot apreciar a la taula 8.4, el fet de no poder-ho aplicar a problemes
de classificació n-ari, com led, empitjora el seu comportament, necessitant d’altres
mecanismes, la consideració dels quals cau fora del treball que aquı́ es presenta, referint
al lector interessat a [Holte, 1993].
444 14
(8.15)
37 204
Com es pot apreciar a la matriu de confusió anterior, la regla proposada pel 1-R
cobreix satisfactòriament 444 instàncies benign, sols errant en 14 d’aquestes instàncies.
Per altra banda malauradament, la regla també cobreix incorrectament 37 instàncies
marcades com a malignant.
Deixant enrera aquestes aproximacions simples, el PART és capaç de generar con-
junts de regles, no sols una. Per altra banda, aquestes regles poden arribar tenir a
l’antecedent tants testos com atributs formen el conjunt A. Concretament, pel proble-
254 Resolent problemes reals de Mineria de Dades
ma bre, el PART genera deu regles diferents, que són les que es presenten a continuació.
Cell Size Uniformity ≤ 2 ∧ Bare Nuclei ≤ 3∧
Single Epi Cell Size ≤ 2 → benign
Cell Shape Uniformity > 2 ∧ Cell Size Uniformity > 4∧
Clump Thickness > 6 → malignant
Cell Shape Uniformity ≤ 2 ∧ Clump Thickness ≤ 5 → benign
Bare Nuclei > 8 ∧ Bland Chromatin > 3 → malignant
(8.16)
Normal Nucleoli ≤ 9 ∧ Marginal Adhesion > 3 → malignant
Normal Nucleoli > 8 → malignant
Mitoses ≤ 1 ∧ Bare Nuclei ≤ 2 → benign
Clump Thickness > 6 → malignant
Bland Chromatin > 2 ∧ Cell Shape Uniformity ≤ 3 → malignant
→ benign
Com es pot apreciar, el part no fa cap assumpció. Les regles combinen tota mena
d’antecedents, aixı́ com tota mena de classes en el conseqüent. Concretament, de les deu
regles que genera, quatre marquen instàncies com a benign, mentre que sis ho fan com
a malignant. Amb aquest conjunt relativament compacte de regles, el PART es capaç
d’assolir un percentatge d’encert sobre el conjunt original d’instàncies Σ del 98.43%.
Però un dels punts interessants d’aquestes regles és amb l’augment amb la cura en la
classificació s’acaba assolint també una clara millora en la fiabilitat, reduint-se el nombre
d’instàncies mal classificades. Aquest ha d’ésser també un dels objectius del treball futur
d’aquesta tesi. El comportament de la classificació del PART es pot apreciar a la matriu
de confusió que es presenta tot seguit.
451 7
(8.17)
4 237
L’últim conjunt de regles que es presentarà en aquest aparat és el que genera el
GALE quan s’executa amb totes les instàncies del problema bre. A diferència de les
regles vistes anteriorment el GALE utilitza el mateix tipus de representació que utilitzen
els sistema classificadors que pertanyen a l’enfocament de Michigan. És per aquest
motiu que no es presenten les que genera el XCS, ja que a elles també s’hi poden aplicar
les mateixes consideracions que es faran per les que ha general el GALE. Fetes aquestes
consideracions prèvies, a la taula 8.5 es presenten les regles que ha general el GALE.
La taula 8.5 presenta dues cares de la mateixa moneda. A ma esquerra presenta el
conjunt de regles que el GALE ha generat en tal i com aquestes han estat codificades
en el seu genotip. Per contra, a ma dreta, apareixen les mateixes regles expressades tal
i com s’ha fet amb els sistemes d’aprenentatge anteriors. Abans de tirar endavant amb
els comentaris sobre aquestes regles, és important recalcar el fet que el GALE interpreta
les regles, a diferència del que fa el XCS, emprant l’ordre amb el que apareixen en el
genoma de l’individu. Un cop feta aquesta puntualització, ja es pot comentar alguns
punts rellevants sobre els resultats obtinguts.
8.5 Obtenció de regles 255
El primer primer punt a resaltar rau en el fet que les regles posseeixen en el seu
antecedent testos diferents a les presentades anterioment. Això fa referència a que les
regles obtingudes no treballen amb testos relacionals com ho feien les anteriors. Aquest
punt provoca que el nombre de regles generades sigui més elevat degut a les dificultat
d’expressar certs tipus de conceptes amb aquest tipus de regles. Per exemple, a les
regles 2, 3 i 4, els testos que s’estan proposant corresponen a Clump Thickness = 9,
Clump Thickness = 6, Clump Thickness = 7. Pel que se’n despren, el test més apropiat
podria passar per Clump Thickness ≥ 6, però degut a la codificació emprada en el
genoma aquest concepte no és expressable1 . Malgrat això el procés evolutiu solventa
el problema per extensió, repetint regles en les qual sols canvia el valor del test. Una
situació similar es torna a repetir, per exemple, a les regles 7 i 8.
Una altra peculiaritat de les regles obtingudes amb el GALE és la presència d’una
certa jerarquització dins el conjunt de regles [Shu and Shaffer, 1991]. Dit d’una altra
forma, degut a l’ordre amb el qual s’avaluen les regles, les regles que apareixen cap al
principi tendeixen a cobrir menys instàncies i força més especı́fiques que les que apareixen
al final. Serveixi d’exemple que en el conjunt de regles presentat, la última regla cobreix
444 instàncies, o el que és el mateix un 63.51% de les instàncies de Σ. Per altra banda,
les regles evolucionades també permeten entreveure la solució que ha buscat explotat
el procés evolutiu del GALE. Es pot veure clarament que les regles s’han centrat a
identificar les exepcions, les tretze primeres regles sols cobreixen un 36.49% de Σ, i a
més a més aquestes coincideixen amb les instàncies de la classe malignant, minoritària
dins de Σ. D’això es pot veure, que sense cap mena d’indicació, el procés evolutiu, guiat
pel mètode d’activació, ha acabat generant una solució que explota l’assumpció d’un
món tancat. Identifica les exepcions, i assomeix que tot el que no apareix dins aquest
1
Aquest punt no es preocupant degut a aquest tipus d’expressivitat es pot assolir a partir de l’extracció
de regles d’arbres de decisió evolucionats pel GALE.
256 Resolent problemes reals de Mineria de Dades
Taula 8.6: Resultats dels t-tests aparellats d’una cua: el valor indica quants cops el
mètode de la fila millora significativament el mètode a la columna. La taula mostra els
resultats emprant nc=0.05 i nc=0.01.
t-test aparellat d’una cua nc=0.05 t-test aparellat d’una cua nc=0.01
0-R 1-R PART XCS GALE 0-R 1-R PART XCS GALE
0-R - 0 0 0 0 - 0 0 0 0
1-R 2 - 0 0 0 1 - 0 0 0
PART 3 3 - 0 0 3 2 - 0 0
XCS 3 3 0 - 0 3 2 0 - 0
GALE 3 3 0 0 - 3 2 0 0 -
Per concloure aquest apartat dedicat a l’obtenció de regles, comentar els resultats
estadı́stics obtinguts a l’aplicar el test t de Student. Malgrat un estudi detallat es
podrà trobar a l’apartat 8.8 (pg. 269), la taula 8.6 mostren que no existeix diferències
significatives entre el PART, el XCS i el GALE en els tres conjunts de dades estudiats.
Per contra si que conclouen la clara superioritat dels tres mètodes anteriors sobre el
0-R. Per contra, res es pot comentar en aquest punt sobre el 1-R. Això és degut al bon
comportament que aquest obté en el problema real bre, deixant per més endavant el
tornar a avaluar aquest punt.
El següent tipus de representació del coneixement que es tractarà és la basa en instàncies.
Aquest segon apartat dedicat a la presentació de resultats recull les proves realitzades
emprant els algorismes IB1, IB2, IB3, IB4, i GALE. Aquest algorismes s’han utilitzat per
obtenir conjunts d’instàncies que descriguin deu dels conjunts de dades disponibles, que
són: (1) el bps, (2) el bre, (3) el gls, (4) el irs, (5) el mmg, (6) el mux, (7) el pmi,
(8) el son, (9) el tao, (10) el veh.
Tal i com es presentà a l’apartat 6.4.3 (pg. 159), el GALE és capaç també d’e-
volucionar conjunts d’instàncies com a representació del coneixement. És important
recalcar en aquest punt que aquestes instàncies que evoluciona no tenen una relació
directa amb les que formen Σ. Aquestes instàncies evolucionades són el que també s’ha
8.6 Obtenció d’instàncies 257
Taula 8.7: Percentatge d’encert en classificació i desviació estàndard de les proves em-
prant ten fold crossvalidation. Els resultat es marquem amb un ◦ si mostren una millora
significativa (significant en un 1% respecte el t-test aperellat de dues cues) respecte el
corresponen resultat del GALE, i amb una • si presenten una degradació representativa.
Cjt IB1 IB2 IB3 IB4 GALE
bps 82.78±3.49 75.74±2.80• 78.48±6.16 76.43±5.97• 83.64±4.71
bre 95.99±1.45 91.85±3.93• 94.44±2.58 94.85±3.18 94.99±2.50
gls 66.38±10.88 62.62±10.65 65.41±10.48 66.35±9.12 64.95±9.38
irs 95.30±3.29 93.98±3.78 91.33±6.31 96.66±4.71 95.33±3.22
mmg 64.36±14.06 66.20±11.22 60.19±11.80 60.17±9.05 66.66±11.55
mux 99.85±0.24 87.06±2.62• 81.59±3.47• 81.34±3.76• 100.00±0.0
pmi 70.42±3.75• 64.30±4.28• 66.91±7.10• 70.82±5.14 75.39±4.21
son 83.66±9.60 80.77±12.85 61.53±10.94• 63.47±11.28• 81.73±9.94
tao 95.99±1.45 91.86±3.93 94.99±2.85 94.85±3.17 95.50±1.03
veh 69.63±4.91 65.49±3.01 63.25±5.25 63.71±3.87 68.79±3.78
Pmg 82.44 77.99 75.81 76.86 82.67
l’IB3 i l’IB4 es marquen amb el resultat del test t de Student de dues cues (nc=0.01).
D’aquests resultats es pot observar alguns punts interessants. El primer punt a
comentar és que el GALE sempre obté millors resultats que els algorismes IB2 i IB3.
Aquest algorismes, en el seu afany de reduir el nombre d’instàncies que utilitzen permeten
una caiguda en el seu rendiment comparats amb els mateixos resultats de l’IB1. Per altra
banda, l’IB4 també presenta el mateix comportament d’empitjorament, sols presentant
una anomalia en el problemes irs en el qual és el que obté els millors resultats. Per
altra banda, com es pot apreciar a la taula, l’IB1 i el GALE es reparteixen al 50% els
conjunts de dades en els quals presenten un millor comportament. Punt curiós és el
comportament del GALE en el problema pmi en el qual supera de llarg el comportament
de l’IB1, tot i emprar la mateixa polı́tica de classificació.
Malgrat aquest resultats, on realment es pot apreciar la diferència de comportaments
entre els algorismes emprats i el GALE és a la taula 8.8. Aquesta taula presenta per
l’IB1, l’IB2, l’IB3 i l’IB4 el percentatge d’instàncies retingudes respecte el conjunt original
Σ, aixı́ com la desviació obtinguda. Per la seva part, el GALE presenta el percentatge
d’instàncies emprades que corresponen a la solució final evolucionada respecte el conjunt
d’instàncies Σ, aixı́ com la desviació obtinguda.
Un dels primers punts que destaquen a taula 8.8 és la gran diferència en els percen-
tatges de reducció entre el GALE i la resta d’algorismes. Com es pot apreciar, en vuit
dels deu problemes el GALE presenta un mı́nim en la reducció del nombre d’instàncies
emprades per la classificació. Pel que fa als altres dos conjunts en que el GALE pre-
senta un percentatge de reducció lleugerament superior corresponen als problemes bre
i tao. Pel que fa a aquest últim, aquest major nombre d’instàncies apareix degut a
la complexitat que aquest problema sintèctic ofereix. Degut a les seves fronteres de
classificació no lineals, tal i com es presentava a la figura 3.1 (pg. 26), l’evolució del
conjunt d’instàncies que ha de dur a terme el GALE utilitza individus amb un nombre
un xic més elevat d’instàncies per poder aproximar satisfactòriament aquestes fronteres.
8.6 Obtenció d’instàncies 259
6
4
4
2
2
0
0
y
y
−2
−2
−4
−4
−6
−6
−6 −4 −2 0 2 4 6 −6 −4 −2 0 2 4 6
x x
El següent conjunt d’instàncies que es presenta és el que el GALE obté quan s’aplica
sobre totes les instàncies del problema irs. Per aquest problema el conjunt evolucionat
que s’obté està forma per tant sols sis instàncies, fet que correspon a un 4% del conjunt
260 Resolent problemes reals de Mineria de Dades
El que es remarcable d’aquest conjunt d’instàncies no és el seu nombre, sinò el seu
percentatge d’encert. Concretament el percentatge d’encert que s’obté amb aquestes
sis instàncies és del 100%. Això vol dir que totes les instàncies originals del conjunt Σ
són correctament classificades utilitzant solament les sis que el GALE ha evolucionat.
Aquest punt queda reflectit clarament a la matriu de confusió resultant que es presentat
tot seguit.
50 0 0
0 50 0 (8.19)
0 0 50
L’últim conjunt d’instàncies que es presentarà en aquest apartat són les que s’han
obtingut pel GALE en el problema wne. El motiu de presentar els resultats d’aquest
problema és posar de manifest que la capacitat de sı́ntesi del GALE presentada a l’apartat
anterior no és un cas particular. En aquest cas, tal i com es pot apreciar a la taula 8.10,
el GALE genera nou instàncies que corresponen al un 5.06% de conjunt d’instàncies Σ
original. El conjunt d’instàncies de la taula es complementa, a l’igual que en el cas
anterior, amb el nombre d’instàncies del conjunt original de Σ que classifica cadascuna
de les instàncies evolucionades.
A l’igual que succeı̈a amb les instàncies generades pel problema del irs, d’aquest
conjunt de regles destaca el seu percentatge d’encert. Concretament el percentatge
d’encert que s’obté amb aquestes nou instàncies és del 100%. Això vol dir que totes les
instàncies originals del conjunt Σ són correctament classificades utilitzant solament les
nou que el GALE ha evolucionat. Aquest punt queda reflectit clarament a la matriu de
confusió resultant que es presentat tot seguit.
59 0 0
0 71 0 (8.20)
0 0 48
Per últim, abans de passar ja a comentar els resultats obtingut a l’aplicar el t test
als resultats presentats a la taula 8.7, es vol fer un comentari sobre les instàncies que ha
evolucionat el GALE. Com s’ha pogut apreciar aquestes són totalment definides, però
8.6 Obtenció d’instàncies
Taula 8.10: Instàncies produı̈des pel GALE en el problema wne
OD280-OD315
Nonflav.-phe.
Alca.-of-ash
Color-inten.
Magnesium
Flavanoids
Malic-acid
Total-phe.
Proantho.
Viticultor
Alcohol
Proline
Hue
Ash
#
12.14 2.02 2.85 16.49 69.41 3.38 3.56 0.22 2.58 11.88 1.39 2.71 524.79 1 (4)
12.66 4.56 2.42 14.59 158.60 1.51 0.52 0.47 1.20 10.90 1.04 1.85 854.89 2 (44)
11.25 4.05 2.37 13.79 119.24 1.30 0.75 0.48 1.24 3.40 1.75 2.71 524.79 1 (31)
14.63 2.83 2.61 12.84 85.47 2.86 1.73 0.23 2.31 6.62 1.01 2.37 1465.30 0 (59)
11.95 4.21 2.19 24.05 86.48 3.43 0.41 0.14 3.15 7.88 0.54 1.85 854.89 2 (4)
11.25 3.34 2.22 20.40 105.11 3.40 1.69 0.48 3.67 2.10 1.34 1.46 498.71 1 (9)
12.40 1.46 1.58 12.42 91.98 3.24 3.79 0.30 1.46 6.96 1.70 1.89 401.98 1 (17)
14.63 2.83 2.61 12.84 85.47 2.86 1.73 0.23 1.46 6.96 1.70 1.89 401.98 1 (4)
11.95 4.21 2.19 24.05 86.48 3.43 0.41 0.14 3.15 7.88 0.55 3.61 1020.31 1 (6)
261
262 Resolent problemes reals de Mineria de Dades
també és possible evolucionar instàncies parcialment definides tal i com es presentava a
l’apartat 6.4.3 (pg. 161). La diferència principal rau en que les instàncies evolucionades
poden posseir atributs que no presentin un valor particular, buscant aixı́ una forma de
generalització de les mateixes. Els resultats obtinguts a l’aplicar el GALE sobre els deu
conjunts de dades utilitzats en aquest apartat no presenten diferències apreciables pel que
fa al percentatge d’encert, malgrat això mostren una certa tendència a lleugeres millores
en problemes de dimensionalitat elevada, com per exemple el son. Malauradament els
resultats no són remarcablement diferents, requerint un estudi més detallat en un futur.
Si en el percentatge d’encert les variacions no són remarcables, sı́ que aquestes ho són
en el nombre d’atributs emprats per les instàncies parcialment definides obtingudes en
cadascun dels conjunts de dades. A continuació es presenta, pe cadascun del problemes,
el percentatge d’atributs emprats per les instàncies evolucionades en funció de la classe
a la que pertanyen.
Cjt χ0 χ1 χ2 χ3 χ4
bps 10,00 17.13 - - -
bre 72,22 68.14 - - -
gls 83,33 64.44 88,88 14,81 61,11
irs 75,00 75.00 50.00 - -
mmg 28,57 30.95 - - -
mux 38,36 40.02 - - -
pmi 60,57 50.00 - - -
son 62,14 65.93 - - -
tao 50,00 69.23 - - -
veh 82.64 79.16 86.11 - -
Com es pot apreciar dels resultats anteriors, la reducció que s’assoleix en el nombre
d’atributs és considerable, destacant per exemple els resultats que s’obtenen en bps i
mmg. En aquests dos problemes privats sembla apuntar-se la presència d’atributs irre-
llevants, fet que s’hauria de tenir present en aquest problemes en un futur. A l’altra
extrem sobresurt el veh que és un dels que requereix més atributs definits en les seves
instàncies per assolir un bon rendiment en la classificació.
Arribats a aquest punt, i per concloure aquest apartat dedicat a la presentació dels
resultats obtinguts en l’obtenció d’instàncies, es comentarà tot seguit els resultats obtin-
gut en la comparació estadı́stica dels resultat obtinguts. Aquests resultats es presenten
a la taula 8.11. Com es pot apreciar en aquesta taula, el comportament de l’IB1 i del
GALE no presenta diferències estadı́sticament significatives. Sols en el problema pmi el
GALE presenta un comportament diferent, concretament millor. On sı́ que les diferències
estadı́stiques si que es fan present és en cas dels algorismes de reducció IB2, IB3 i IB4.
En tots tres casos s’aprecia un deteriorament del comportament en el problemes emprats
quan aquest es compara amb els resultats obtinguts pel GALE.
8.7 Obtenció d’arbres de decisió 263
Taula 8.11: Resultats dels t-tests aparellats d’una cua: el valor indica quants cops el
mètode de la fila millora significativament el mètode a la columna. La taula mostra els
resultats emprant nc=0.05 i nc=0.01.
t-test aparellat d’una cua nc=0.05 t-test aparellat d’una cua nc=0.01
IB1 IB2 IB3 IB4 GALE IB1 IB2 IB3 IB4 GALE
IB1 - 7 5 5 0 - 6 4 5 0
IB2 0 - 2 3 0 0 - 2 2 0
IB3 0 1 - 1 0 0 1 - 0 0
IB4 0 2 2 - 0 0 2 1 - 0
GALE 2 5 5 7 - 1 4 4 4 -
Aquest és el darrer punt en el qual es comentaran els resultats obtinguts amb el GALE
abans de passar ja tot seguit a comentar l’anàlisi estadı́stic exhaustiu dels resultats
realitzats. Concretament, en aquest punt es presentaran els resultats obtinguts emprant
representacions arborescents. Els algorismes emprats en aquestes proves són el C4.5 i el
GALE emprant els tres tipus d’arbres de decisió presentats a l’apartat 6.4.2 (pg. 147), és
a dir, ortogonals, oblics i multivariats. Degut al fet de treballar amb una implementació
particular d’arbres de decisió oblics, els conjunts de dades escollits han estat sols aquells
que presenten atributs numèrics. Concretament, els onze conjunts emprats són: (1)
bps, (2) bre, (3) gls, (4) h-s, (5) ion, (6) irs, (7) mmg, (8) pmi, (9) son, (10) tao
i (11) veh.
Tal i com es comentà en el seu moment, apartat 6.4.2 (pg. 147), el GALE, degut
a la seva independència de la representació emprada, és capaç d’evolucionar tres tipus
diferents d’arbres de decisió. El primer tipus, els ortogonals, es basen en la representació
jeràrquica de testos simples sobre un únic atribut. Per contra els oblics corresponen
a agrupacions jeràrquiques de testos basats en combinacions lineals dels atributs, o
hiperplans orientables. Finalment, els multivariats representen agrupacions jeràrquiques
de testos complexes basades en instàncies. Degut a aquest caràcter arborescent de les
representacions emprades, s’ha inclós el C4.5 en aquest apartat de resultats. Malgrat
això, cal tenir present que els seus resultats sols seran directament comparables amb els
que obté el GALE emprant arbres de decisió ortogonals.
La taula 8.12 recull els resultats de la experimentació realitzada amb el C4.5 i les
tres variants del GALE, GALE-ort per arbres de decisió ortogonals, GALE-obl per arbres
de decisió oblics, i GALE-mul per arbres de decisió multivariats. També s’han inclòs
els resultats del 0-R com a llindar inferior de rendiment per sota del qual el comporta-
ment dels diferents algorismes mai hauria d’arribar. La taula presenta el resultat dels
experiment de valiadació creuada estratificada realitzats. Per cada algorisme i conjunt
de dades presenta la mitjana i la desviació (en els folds) obtinguda. Per altra banda,
els resultats obtinguts en cada conjunt pel GALE (-ort, -obl, -mul), es marquen amb
264 Resolent problemes reals de Mineria de Dades
el resultat del test t de Student de dues cues (nc=0.01) realitzat respecte els resultats
obtinguts amb el C4.5. Malgrat, tal i com s’ha comentat anteriorment, que sols el C4.5
i el GALE-ort són directament comparables, els resultats de la comparació respecte a les
altres variants del GALE poden permetre realitzar certes comparacions interessants.
El primer punt remarcable dels resultats presentats a la taula és el fet que el GALE
es presenta com un algorisme competent per l’obtenció d’arbres de decisió ortogonals.
Aquest fet es pot apreciar comparant a simple vista els resultats obtinguts pel C4.5 i
el GALE-ort. En els onze conjunts de dades emprats, a set de les execucions els arbres
ortogonal que ha evolucionat el GALE han estat més acurats que els induı̈ts pel C4.5.
Per contra els mals resultats que obté el GALE, per exemple són deguts a la dificultat a
que es veu sotmès el procés evolutiu per afrontar fronteres no lineals com la del tao. Per
superar-ho el C4.5 explota a les seves solucions l’efecte d’escala comentat a l’exemple
7 (pg. 29). Un punt a tenir també en compte quan es fan les consideracions anteriors
és el fet que, tal i com es comentà en el seu moment, totes les execucions del GALE
s’han realitzat amb els mateixos paràmetres. Malgrat això també ressalta els resultats
obtinguts que s’han obtingut amb el GALE en problemes de dimensió elevada, com el
ion (|A|=34) i el son (|A|=60). En aquest tipus de problemes, el GALE-ort presenta
un millor rendiment que el que assoleix l’inductor tradicional C4.5. Aquest punt pot ser
interessant cara al treball futur.
A l’igual que s’ha vingut realitzant en els apartats anteriors, i abans de comentar els
resultats estadı́stic obtinguts, tot seguit es presentarà alguns exemples d’arbre de decisió
obtinguts. Concretament, es presentaran els arbres que genera el C4.5 i el GALE-ort
quan s’apliquen al problema irs. Ambdós arbres han estat obtinguts de proves en les
8.7 Obtenció d’arbres de decisió 265
L’arbre anterior classifica correctament un 98% de les instàncies originals del proble-
ma irs. Aquest valor correspon a 147 instàncies classificades correctament, i sols tres
d’incorrectes. Curiosament, l’error no es produeix a cap instància pertanyent a la classe
Iris setosa, sinó que els conflictes apareixen a les instàncies de les dues altres classes de
X. Aquest comportament es pot apreciar a la matriu de confusió que es presenta tot
seguit.
50 0 0
0 49 2 (8.21)
0 1 48
Per la seva banda, l’arbre de decisió ortogonal evolucionat pel GALE proposa una
solució menys compacta que la del C4.5. L’arbre presenta dinou nodes, dels qual deu
són fulles. Una de les curiositats que presenta aquest arbre són els seus testos. A
diferència del que succeeix amb el C4.5 on les valors de les constants són calculades
a partir del conjunt d’instàncies del conjunt Σ, en el GALE aquestes són el resultat
del procés evolutiu. Aquesta puntualització és important quan s’observa es testos que
apareixen en l’arbre que evoluciona el GALE i que es presenta a continuació.
266 Resolent problemes reals de Mineria de Dades
Com es pot apreciar, força dels testos que apareixen involucren els mateixos atributs
que els del C4.5, aixı́ com a constants molt properes a les utilitzades per aquests. La
diferència és que les constants dels arbres del GALE són evolutives, no presentant relació
directa amb els valors de les instàncies de Σ. Això suggereix la capacitat del GALE per
proposar fronteres de classificació que s’aproximen a les proposades per l’arbre del C4.5.
Per altra banda, el fet que l’arbre de decisió presenti més nodes queda compensat quan
se n’avalua el seu percentatge d’encert. Aquest puja fins el 99.33%. Aquesta xifra
indica que sols una instància de Σ és mal classificada. Concretament, aquesta és mal
classificada per la fulla de l’arbre anterior marcada com ∗ . En aquesta fulla sols es
classifiquen tres instàncies, dos de les quals correctament. En front d’aquesta situació
es podria fàcilment modificar manualment substituint aquesta fulla per un test adient
que permetés distingir aquest cas.
Pel que fa al comportament de la classificació, succeeix quelcom semblant al que
succeı̈a amb l’arbre induı̈t pel C4.5. L’error es produeix entre les classes Iris virginica i
Iris versicolor. Aquesta situació es pot apreciar a la matriu de confusió resultant de la
classificació duta a terme pel GALE.
50 0 0
0 50 0 (8.22)
0 1 49
Abans de passar a comentar els resultats dels testos estadı́stics, tot seguit es presen-
taran un parells d’arbres més. El primer és l’arbre de decisió oblic que el GALE genera
quan s’executa amb totes les instàncies presents a Σ pel problema irs. L’arbre resul-
tant, el qual es mostra tot seguit, és molt compacta. Sols presenta set nodes, del quals
quatre són fulles.
8.7 Obtenció d’arbres de decisió 267
El fet que sols presenti tres testos és interessant quan es constata que el percentatge
d’encert és del 98.66%. Malgrat haver canviat de representació, passar d’arbres de decisió
ortogonals a oblics, les classes que continuen essent conflictives són la Iris virginica i la
Iris versicolor. Aquest fet es pot apreciar de nou a la matriu de confusió.
50 0 0
0 49 1 (8.23)
0 1 49
De nou, un arbre compacte és capaç de presentat un molt bon percentatge d’encert,
concretament un 99.33%. Això vol dir que sols hi ha una instància mal classificada
respecta el conjunt d’instàncies Σ original. On, curiosament, les classes que continuen
essent conflictives són la Iris virginica i la Iris versicolor. Aquest fet es pot apreciar un
cop més a la matriu de confusió associada.
50 0 0
0 49 0 (8.24)
0 1 49
Taula 8.13: Resultats dels t-tests aparellats d’una cua: el valor indica quants cops el
mètode de la fila millora significativament el mètode a la columna. La taula mostra els
resultats emprant nc=0.05 i nc=0.01.
t-test aparellat d’una cua nc=0.05
0-R C4.5 GALE-ort GALE-obl GALE-mul
0-R - 0 0 0 0
C4.5 11 - 2 6 2
GALE-ort 11 3 - 7 5
GALE-obl 11 2 2 - 1
GALE-mul 11 3 1 7 -
t-test aparellat d’una cua nc=0.01
0-R C4.5 GALE-ort GALE-obl GALE-mul
0-R - 0 0 0 0
C4.5 11 - 2 4 1
GALE-ort 11 1 - 6 0
GALE-obl 10 1 0 - 0
GALE-mul 11 1 1 4 -
que fixa el 0-R pels diferents problemes. Per altra banda, els dos algorismes que són
directament comparables degut a que utilitzen la mateixa representació del coneixement,
és a dir el C4.5 i el GALE-ort, no presenten diferències de comportament estadı́sticament
significatives. Aquest punt posa de relleu l’utilitat del GALE per evolucionar arbres de
decisió ortogonals.
Pel que fa als resultats del GALE-obl i del GALE-mul, s’aprecien lleugeres diferències
estadı́stiques en el comportament. Concretament, en el cas del GALE-obl presenta un
clar empitjorament. Aquests resultats contrasten amb la flexibilitat de la seva represen-
tació, tal i com s’ha pogut apreciar amb els arbres presentats anteriorment pel problema
irs. Malgrat això, els resultats no ho acaben de corroborar. Revisant les execucions
dutes pels arbres de decisió oblics i multivariats s’aprecià que la problemàtica provenia
d’un punt concret: la probabilitat de mutació del genoma dels arbres.
Tal i com comentà en el seu moment, totes les execucions del GALE s’executaren
emprant els mateixos paràmetres obtinguts de les proves realitzades en el capı́tol 7 (pg.
167). Aquest paràmetres han donat un molt bon resultat fins el moment, però en el cas
d’aquest dos tipus d’arbres sol ser excessiva. Això és degut a la mida dels genomes que
codifiquen l’arbre degut als coeficient que han d’ajustar. Concretament, aquesta mida
es mou al voltant de |A| × d, on d és el nombre de nodes de l’arbre. Al disposar d’un
genoma de dimensions tant elevades, la probabilitat emprada a les proves resulta massa
gran, presentant un fort caràcter disruptiu dels BBs continguts en el genoma. Aquest
punt fa pensar que dins el treball futur s’hauria d’incloure l’estudi de probabilitats de
mutació adaptatives. És a dir, que s’ajustin en funció de la mida del genoma que s’està
utilitzant.
8.8 Anàlisi estadı́stic de resultats 269
A part del GALE, les proves realitzades han involucrat nou algorismes més, tots resolent
divuit conjunts de dades diferents. Tal i com s’ha pogut apreciar anteriorment, la majoria
d’aquests algorismes foren escollits per poder ponderar equitativament el comportament
del GALE enfront de les diferents representacions del coneixement que pot evolucionar.
És a dir, s’escolliren algorismes que, per exemple, treballin amb regles per comparar el
comportament del GALE quan evoluciona aquest tipus de representació, i aixı́ successi-
vament per totes les representacions emprades pel GALE, tal i com s’ha pogut apreciar
en els apartats anteriors.
Arribats a aquest punt, el que es presentarà és l’anàlisi estadı́stic de les proves
realitzades emprant tots els algorismes disponibles en els diferents conjunts de dades
disponibles. Dins aquests anàlisi s’han inclòs també dos algorismes que es comentaren
en el seu moment però que no s’han utilitzat en les proves presentades en els tres
apartats anteriors, com són el Naive Bayes i el SMO. Aquest algorismes no s’utilizaren
anteriorment degut a que no existeix actualment una correspondència directa entre la
representació del coneixement que utilitzen i les representacions actuals amb les que pot
tractar el GALE, malgrat aquestes es tinguin molt presents pel que fa a treball futurs,
especialment la representació proposada pel SMO.
L’estudi que presenta aquest apartat es basa, a l’igual que els que s’han anat pre-
sentant anteriorment, en l’ús d’execucions basades en validació creuada estratificada i
el posterior anàlisi dels resultats emprant testos estadı́stics. En aquest punt concret els
resultats s’analitzaren els testos presentats a l’apartat 8.4.2 (pg. 249), és a dir el test
t-test de Student i el de rang amb signe de Wilcoxon.
Una peculiaritat de l’anàlisi que s’ha dut a terme parteix de decidir quins resultats
s’escollien pel GALE. Aquest fet apareix degut al fet que aquest pot treballar amb
diferents representacions del coneixement. Com ja es comentà en el seu moment, un
dels principals objectius del GALE era proposar un model unificat de mineria de dades
independent de la representació del coneixement emprada. El motiu d’aquesta decisió es
doble; el primer es degut a la dificultat de decidir a priori, en front d’un problema real,
quina serà la representació més adients; el segon és que l’usuari final de l’eina de mineria
ha d’ésser capaç de decidir quin tipus l’hi és més interessant, útil o entenedor. Davant
d’aquest dilema s’obtà per escollir els resultats del GALE per aquella representació que
presenta el millor comportament, essent conscients de l’esbiaixament que aquesta decisió
comporta. El motiu que ha fet perdre aquesta decisió és el de voler posar de relleu un
punt ja sabut com és la importància de la representació del coneixement escollida en el
moment de resoldre el problema eficientment.
La taula 8.14 presenta el percentatge d’encert, aixı́ com la desviació obtinguda, pels
algorismes comparats emprant execucions de validació creuada estratificada emprant
els divuit conjunts disponibles. En aquesta taula destaquen varies consideracions. La
primera es que, tal i com es pot apreciar, els resultats del GALE apareixen marcats en
funció del tipus de representació del coneixement emprada. Per altra banda, els resultats
Resolent problemes reals de Mineria de Dades
Taula 8.14: Percentatge d’encert per tots els conjunts de dades disponibles (promig i desviació). Cada resultat del GALE s’ha marcat amb la
representació del coneixement emprada. Les marques corresponent a: una ⋆ indica l’ús de regles, una † l’ús d’instàncies, un ⊕ l’evolució d’arbres
de decisió ortogonals, un ⊗ l’ús d’arbres de decisió oblics, i finalment un ⊙ l’us d’arbres de decisió multivariats.
Cjt 0-R 1-R PART XCS IB1 IBk C4.5 SMO NBa GALE
bps 51.6±0.6 69.8±2.5 79.0±3.3 83.2±3.1 83.2±3.2 82.8±4.3 80.1±4.8 86.4±3.0 78.6±5.5 83.7±3.8⊗
bre 65.5±1.1 92.3±0.6 95.3±2.2 96.4±2.5 96.0±1.5 96.7±1.4 95.4±1.6 96.7±1.7 96.0±2.3 95.7±2.2⊙
bpa 58.0±1.4 56.6±2.7 65.8±10.0 65.4±6.9 63.5±6.6 60.6±6.6 65.8±6.9 58.0±1.4 54.3±2.8 68.4±6.7†
cmc 42.7±0.4 47.8±0.2 49.8±3.6 55.5±2.5 44.4±2.7 46.8±3.3 52.1±2.3 - 50.6±2.8 50.3±5.1†
gls 34.6±2.5 56.1±1.0 69.0±10.0 70.8±8.5 66.3±10.9 66.4±10.9 65.8±10.4 - 47.6±8.9 65.6±11.9⊕
h-c 54.5±2.2 72.9±1.3 77.9±6.4 80.3±7.8 77.4±7.6 83.2±5.2 73.6±8.8 - 83.6±6.0 79.9±5.2†
h-h 63.9±2.1 78.5±0.3 79.6±10.6 79.9±6.3 78.3±6.4 82.4±8.4 80.3±9.0 - 83.7±7.8 78.2±7.2†
h-s 55.6±0.0 74.1±2.5 76.7±2.8 79.9±2.3 74.1±0.1 78.9±0.4 76.3±0.7 83.7±0.5 83.3±1.9 83.0±5.9 ⊙
ion 64.1±0.2 82.3±2.9 90.6±0.9 89.6±3.1 86.9±1.5 86.4±2.3 89.8±0.5 87.8±1.8 81.7±1.7 94.0±3.3 ⊕
irs 33.3±0.0 94.7±0.4 95.3±3.2 94.7±5.3 95.3±3.2 95.3±3.2 95.3±3.2 - 94.7±2.8 98.7±2.8⊗
led 10.5±0.0 19.3±0.1 75.1±0.0 74.5±0.0 62.4±0.0 75.0±0.0 74.9±0.0 - 74.9±0.0 75.0±0.0⋆
mmg 56.0±2.9 58.8±2.9 61.9±4.2 64.3±6.4 63.0±12.4 65.3±6.3 64.8±6.4 67.0±7.4 64.7±7.7 71.3±5.9⊕
mux 49.9±0.1 52.5±0.9 100.0±0.0 100.0±0.0 78.6±4.0 99.8±0.3 99.9±0.2 61.6±3.0 61.9±2.7 100.0±0.0⋆
pmi 65.1±0.0 72.3±1.7 72.6±5.0 75.4±4.7 70.3±3.4 73.9±5.3 73.1±5.2 76.7±4.6 75.4±6.8 75.8±4.0⊕
son 53.3±0.6 61.1±0.4 73.5±2.2 77.5±3.6 87.3±0.8 82.7±0.9 71.5±0.5 77.5±2.5 67.2±2.6 79.3±6.1 †
tao 49.8±0.2 71.9±0.7 93.6±2.8 89.9±1.3 96.1±1.2 96.0±1.4 95.1±2.0 83.6±2.3 80.8±1.8 95.5±1.0†
veh 25.1±0.5 53.3±0.7 72.6±4.6 73.0±4.4 69.4±5.3 69.7±5.9 73.6±5.3 - 46.2±5.7 68.8±3.8†
wne 39.8±4.5 79.8±3.0 92.9±6.1 95.1±6.8 95.6±5.0 96.8±4.5 94.6±6.6 - 97.8±2.9 97.2±2.9†
Pmg 48.5 66.3 79.0 80.3 77.1 79.9 79.0 77.9 73.5 81.3
270
8.8 Anàlisi estadı́stic de resultats 271
del SMO sols apareixen en aquells conjunts de dades que corresponen a problemes de
classificació binària, ja que aquest algorisme no es capaç de treballar directament amb
problemes de classificació n-ària.
Observant els resultats presentats a la taula 8.14 s’aprecia que cap dels algorismes
sobresurt. Aquests fet ja era previsible a priori, degut al problema de superioritat selectiva
introduı̈t a l’apartat 8.4.2. Conseqüentment, l’interessant d’aquesta taula no es quin
algorisme és millor en quin conjunt de dades, sinó quin d’ells presenta una bona robustesa
al llarg dels diferents problemes de prova. Per exemple, el mirar quin algorismes és millor
indicaria que el GALE presenta el millor comportament en cinc dels divuit problemes, el
SMO en quatre dels deu que ha esta provat, o el IB1 en tres dels divuit originals, fet que
no es excessivament indicatiu. Però el que si és interessant de posar de relleu és el fet que
a través dels diferents problemes, per exemple, el GALE no presenta alts i baixos, sinó
que permet resoldre satisfactòriament els diferents problemes de l’espectre presentat.
Això no succeeix per exemple amb el SMO, que tot i restringint-se a problemes binaris,
pot obtenir grans percentatges d’encert, per exemple en el problema bps, però també
presenta caigudes de rendiment preocupants, per exemple en el problema mux.
Analitzant els motiu particulars de la caiguda de rendiment del SMO en el problema
concret del mux, s’aprecia que la problemàtica sorgeix de la representació del coneixe-
ment emprada. Aquest no sembla ser capaç d’absovir les necessitar de generalització,
entesa des del punt de vista de la representació, com per a poder resoldre el problema
eficientment. Quelcom similar succeeix en aquest problema pel IB1. Aquest punt posa
de manifest, que la capacitat del GALE poder treballar amb diferents representacions del
coneixement permet obtenir la robustesa per poder obtenir un comportament eficient al
llarg dels diferents problemes proposats, paliant en aquest punt l’impacte del problema
de superioritat selectiva, gràcies a la capacitat per poder utilitzar, davant d’un problema
particular, aquella representació que millor s’escau. Aquest punt es posa de relleu a la
taula 8.15 que presenta els resultats de l’anàlisi estadı́stic realitzat.
La taula 8.15 resumeix l’anàlisi estadı́stic realitzat a partir dels resultats presentats
a la taula 8.14. En aquesta taula es troba dividida en dos apartats diferenciats. La
primera és la comparació de tots els algorismes respecte el XCS, mentre que la segona
realitza aquesta comparació respecte als obtinguts pel GALE. Concretament per cada
conjunt de dades es realitzà el test t de GALE emprant diferents nivells de confidència,
concretament nc={0.05,0.01,0.005}. Aquests tests es complementaren emprant el test
de Wilcoxon. El motiu de realitzar aquesta comparació respecte el XCS i el GALE prové
del fet que aquests dos algorismes són els únics que utilitzen aprenentatge evolutiu, en
contraposició a la resta que utilitza models d’aprenentatge més tradicionals.
El primer que es pot apreciar a simple vista és el fet que ambdós algorismes evolutius,
tant el XCS com el GALE presenten comportaments robustos enfront dels diferents
problemes tractats. Malgrat això XCS presenta més problemes que el GALE per matenir
un bon comportament al llarg dels diferents problemes. Això empalma amb el fet que
està lligat a una representació basada en regles. Aquest fet es pot apreciar per exemple
en el problema tao, on queda clarament contrastat que les representacions basades en
instàncies s’adapten millor a l’hora de resoldre’l.
Taula 8.15: Comparació estadı́stica del XCS i el GALE respecte els esquemes d’aprenentatge no-evolucionaris. Les diferències en l’encert
Resolent problemes reals de Mineria de Dades
de classificació són significants respecte el t-test d’una cua amb nc = .05• , .01•• , .005••• . Una • significa que el XCS o el GALE milloren
significativament l’algorisme comparat, mentre que un ◦ corresponen a una degradació significativa. Les files marcades com m-d llisten el nombre
de millores i degradacions del XCS i el GALE respecte la columna comparada, amb el nivell de significació indicat. L’última fila representa el
nivell de confidència respecte el test de Wilcoxon.
Comparació del XCS Comparació del GALE
PART
PART
GALE
SMO
SMO
C4.5
C4.5
NBa
NBa
XCS
0-R
1-R
0-R
1-R
IB1
IB1
IBk
IBk
Cjt
bpd ••• ••• • •• ◦◦ ••• ••• ••• ••• • ◦◦◦ •••
mux ••• ••• ••• • ••• ••• ••• ••• ••• • ••• •••
tao ••• ••• ◦◦◦ ◦◦◦ ◦◦◦ ◦◦◦ ••• ••• ◦◦◦ ••• ••• • ••• ••• •••
Promig 48.5 66.3 79.0 77.1 79.9 79.0 77.9 73.5 81.3 48.5 66.3 79.0 80.3 77.1 79.9 79.0 77.9 73.5
m-d .05 18-0 15-0 2-1 6-2 5-2 4-1 3-1 9-2 2-6 18-0 16-0 8-1 6-2 8-1 8-0 5-1 3-1 10-1
m-d .01 18-0 13-0 1-1 5-2 1-1 3-1 3-1 9-0 1-5 18-0 15-0 4-0 5-1 6-0 3-0 3-0 3-1 9-0
m-d .005 18-0 12-0 1-1 4-1 1-1 2-1 3-0 7-0 0-5 18-0 15-0 2-0 5-0 5-0 0-0 1-0 3-1 9-0
Wilcoxon 99.5 99.5 98.1 98.3 58.2 91.3 66.7 98.3 -83.3 99.5 99.5 99.0 83.3 99.1 85.0 99.3 95.0 99.1
272
8.9 Resum 273
Per la seva banda, el GALE és capaç de mantenir un comportament més robust,
obtinguen força casos millores estadı́sticament significatives. Malgrat això destaquen
alguns problemes que mereixen un menció especial. El primer és el bps. En aquest
problema el SMO presenta un comportament clarament millor que el GALE. És important
ressaltar en aquest punt que les representacions emprades en ambdós casos són diferents,
reforçant la intuı̈ció que seria interessant introduir la representació basada en vectors de
suport dins el conjunt de representacions que pot manegar el GALE. Quelcom semblant
succeeix en el problema veh, on els algorismes que utilitzen representacions basades
en regles milloren clarament els que utilitzen instàncies, com és el cas del GALE en
aquest problema. Aquest punt suggeriria la revisió de les proves fetes amb el GALE
emprant regles per aquest problema concret per esbrinar el motiu del seu rendiment
inferior respecte la resta d’algorismes. Una primera introspecció mostra que el podria
tornaria a recaure amb el valor de la probabilitat de mutació emprada, tal i com succeı̈a
amb els arbres oblics i multivariats presentats a l’apartat 8.7 (pg. 263).
Per concloure amb la presentació dels resultats d’aquest anàlisi estadı́stic, es vol co-
mentar els resultats obtinguts emprant el test de Wilcoxon. El que es vol ressaltar és que
en sis dels algorismes (0-R, 1-R, PART, IB1, C4.5 i Naive Bayes) el nivell de confidència
obtingut és superior al 99%, al 95% en el cas del SMO. Pel que fa al XCS i el IBk aquests
es mouen valors compresos entre el 83% i el 85%. L’interessant d’aquests resultats no
són els valors en sı́, sinó que són una confirmació de la robustesa del GALE en front de
problemes de mineria de dades, gràcies a treballar amb un model únic independent de la
representació del coneixement emprada, podent aixı́ escollir aquella que millor s’adapti
i paliant conseqüentment l’efecte del problema de superioritat selectiva.
8.9 Resum
Aquest capı́tol s’ha centrat el la presentació dels resultats obtinguts de l’aplicació del
GALE a problemes reals de mineria de dades. Concretament, el que capı́tol ha començar
realitzant una breu introducció, per passar tot seguit a descriure el conjunt de problemes
que s’han utilitzat per avaluar el GALE. Aquest conjunt de problemes provenen de
tres entorns diferenciats. El primer grup sorgeix de problemes proposats artificialment,
l’objectiu dels quals es posar a prova alguns aspectes puntuals. El segon conjunt de
problemes són els que s’ha anomenat públics. Aquests problemes solen provenir de
problemes reals de classificació, essent habitualment emprats per avaluar problemes
d’aprenentatge. Finalment el tercer bloc de problemes són problemes reals pertanyents a
dominis mèdics. A continuació, el capı́tol ha continuat presentant els diferents algorismes
que s’han emprat per poder avaluar comparativament el comportament del GALE en la
resolució dels diferents problemes disponibles.
Un cop feta aquest presentació preliminar, tant dels conjunts de dades emprats
com dels diferents algorismes, tot seguit el capı́tol ja ha passat a descriure el primers
resultats obtinguts de l’aplicació del GALE a problemes de mineria de dades. Aquests
274 Resolent problemes reals de Mineria de Dades
s’han centrat en analitzar l’impacte del mapping i el test sobre el comportament del
GALE. El motiu de realitzar-ho en aquest punt rau en el fet que no es pogué realitzar
en el capı́tol 7 (pg. 167), degut a que aquest elements no eren presents en el model
simplificat.
Aquestes proves prèvies sols es centren en l’impacte que aquest elements tenen
sobre el comportament global del GALE. Per aquest motiu, i abans de la presentació
dels resultats obtinguts en tasques de mineria, el capı́tol s’ha centrat en comentar la
metodologia que s’ha seguit per realitzar les proves exhaustives que permetin avaluar
els comportament dels diferents algorismes quan s’utilitzen per resoldre els diferents
problemes disponibles. D’aquesta metodologia s’ha fet especialment esment en la forma
d’executar els diferents algorismes, aixı́ com dels diversos mètodes estadı́stics disponibles
per realitzar la comparació de comportaments pel que fa a percentatge d’encert en
classificació.
En els tres apartats següents s’han presentat els resultats obtinguts de l’aplicació
dels diferents algorismes, seguint la metodologia presentada, als diferents problemes dis-
ponibles. Aquests resultats s’han agrupat en funció del tipus de representació del conei-
xement utilitzada. Concretament, s’ha començat comentat els resultats obtinguts pels
algorisme basats en regles, per passar tot seguit a representacions basades en instàncies
i, finalment, les basades en arbres de decisió. Per cadascun dels diferents tipus s’ha
presentat els resultats obtinguts, tant pel que fa al comportament en percentatge d’en-
cert, com pel que fa referència a l’anàlisi estadı́stic corresponent. Cadascun d’aquests
apartats s’ha complementat amb diferents exemples il·lustratius que han permès com-
parar les diferents solucions proposades pels diferents algorismes al llarg de les diferents
representacions.
El capı́tol ha finalitzat la presentació dels resultats amb un apartat especı́ficament
destinat a l’anàlisi estadı́stic de les diferents proves exhaustives realitzades. Aquest
anàlisi ha permès extreure conclusions i corroborar algunes de les hipòtesis sobre les
quals es basa el model proposat pel GALE. Per altra banda, el fet de realitzar aquest
anàlisi exhaustiu, ha permès també identificar lı́nies de treball futur encarades a millorar
certs aspectes del model proposat.
blemes emprats. Els conjunts de dades artificials es poden trobar comentat a varies
referències, malgrat això s’ha buscat nombrar aquelles en que s’utilitzaren per primer
cop. Dins aquest conjunt de problemes es començarà presentant les referències dels pro-
blemes artificials. El mux fou emprat per primer cop pel XCS a [Wilson, 1995]. El led
es pot trobar utilitat en problemes d’aprenentatge artificial a [Breiman et al., 1984].
Per la seva banda, el problema tao fou dissenyat i utilitzat per primera vegada a
[Llorà and Garrell, 2001b].
Pel que fa als conjunt de dades públics, aquests s’han obtingut principalment del re-
positori que proporciona la Universitat de Califòrnia a Irvine [Merz and Murphy, 1998].
Dins d’aquestes, el conjunt de dades del problema bre es pot trobar explicat amb
detall a [Wolberg and Mangasarian, 1995]. El problema bpa s’introdueix per primer
cop a [Forsyth, 1990]. Per la seva banda, el cmc és un problema de recent apari-
ció, on la seva primera utilització per avaluar algorismes d’aprenentatge es pot trobar a
[Lim et al., 2000]. El gls es pot trobar explicat amb detall a [Evett and Spiehler, 1987].
Pel que fa referència als problemes de diagnosi d’anomalies cardı́aques les primeres
utilitzacions per l’aprenentatge es poden trobar a [Gennari et al., 1989] pel h-c, a
[Detrano et al., 1989] pel h-h, i a [Feng et al., 1993] pel h-s. El problema d’anàlisi dels
rebots a la ionosfera ion s’introduı́ a [Sigillito et al., 1989]. El problema irs és un dels
més antics, les dades originals es publicaren per primer cop a [Fisher, 1936]. El pmi es pot
trobat comentat a diverses publicacions, de les qual es destacaria [Smith et al., 1988].
Per la seva part, el son es comenta amb detall a [Gorman and Sejnowski, 1988]. El
penúltim problema públic emprant, el veh, es s’introduı́ a [Mowforth and Shepherd, 1987].
Mentre que l’últim, el wne es pot trobar a [Forina and et al., 1991].
Pel que fa als problemes privats, utilitzats habitualment pel Grup de Sistemes Intel·li-
gents, el primer dels dos problemes, el bps, es pot trobar comentat a varies referències,
de les qual se’n destacarien dues [Vos, 1996, Martı́nez et al., 1996]. La primera explica
amb detall el procés d’obtenció, mentre que la segona fa una primera aproximació a
com es pot resoldre aquest problema de classificació. Per la seva banda, el problema
mmg s’introduı́ per primer cop a [Martı́ et al., 1998], mentre que a [Llorà et al., 2000] es
pot trobar algunes de les primeres aproximacions realitzades a la seva resolució emprant
tècniques d’aprenentatge artificial.
El segon bloc de referències que es volen presentar són les que fan referència als
algorismes que s’han utilitzat per comparar el comportament del GALE. Una de les pri-
meres aparicions del 0-R i del 1-R es pot trobar a [Holte, 1993]. El PART es presentà
per primer cop a [Frank and Witten, 1998], aixı́ com el XCS s’introduı́ inicialment a
[Wilson, 1995], malgrat la implementació emprada es la que es descriu a [Bernadó, 2001]
. La referència per excel·lència del C4.5 correspon a [Quinlan, 1993]. Pel que fa als pri-
mers treballs del IB1 i del IBk, malgrat existeixen moltes referències anteriors basades en
el veı́ més pròxim, se’n destacarien dues [Aha et al., 1991, Aha, 1992]. De referències
de màquines de suport vectorial n’hi ha moltes d’interessants, malgrat això aquı́ sols
s’esmentarà [Platt, 1998], ja que correspon a la implementació particular del SMO em-
prada en aquesta tesi. La versió utilitzada del Naive Bayes s’introduı́ per primer cop
a [John and Langley, 1995]. Els diferents algorismes, excepte el XCS formen part del
276 Resolent problemes reals de Mineria de Dades
Waikato Environment for Knowledge Analysis (WEKA) [Witten and Frank, 2000].
El tercer bloc de referències són les relacionades amb la metodologia emprada
per realitzar les diferents proves i anàlisi presentades en aquest capı́tol. Descripcions
generals sobre la metodologia, aixı́ com consideracions idoneı̈tat, es poden trobar a
[Liu and Motoda, 1998] i també a [Witten and Frank, 2000]. La descripció del pro-
blema de superioritat selectiva es pot trobar a [Brodley, 1993]. Referències útils per
consideracions sobre testos d’hipòtesis estadı́stiques es poden trobar a [Sachs, 1984] i a
[Canavos, 1988]. Descripcions acurades de utilitzar el test t de Student per la compara-
ció d’algorismes d’aprenentatge apareixen a [Dietterich, 1998], aixı́ com [Conover, 1971]
presenta el test de Wilcoxon. Consideracions interessants sobre l’aplició pràctica dels
mateixos també es pot trobar a [Bernadó, 2001].
Per concloure aquest repàs de referències, el quart i últim bloc de referències recull
temàtiques variades. La jerarquia de regles dins els sistemes classificadors es pot trobar
explicada a [Shu and Shaffer, 1991]. Una referència per ampliar els comentaris realitzat
sobre el bagging podria ser [Breiman, 1996]. Dins la reducció de la mida de conjunts
d’instàncies, una de les primeres referències que es pot trobar és [Hart, 1968], la qual
presenta el condensed nearest neighbor rule (CNN) mol similar al IB2. Dues referències
molt interessants són [Wilson and Martinez, 1997, Wilson and Martinez, 2000], les qual
fan, entre d’altres, un repàs de les tècniques existents de reducció, aixı́ com proporcionen
abundant referències relacionades. Finalment, pel que fa a prototipus, hiperrectangles i
altres mètodes hı́brids es destacarien el treball presentat tant a [Domingos, 1995], com
a [Wettschereck and Dietterich, 1994]. Finalment, també destacar la continuació del
treball presentat a la referència anterior que es pot trobar, entre d’altres treballs, a
[Wettschereck and Dietterich, 1995].
CAPÍTOL 9
La tesi que s’ha presentat s’emmarca dins el camp de la mineria de dades. De les
diferents branques que es poden trobar dins d’aquesta disciplina, el treball que s’ha
presentat s’ha centrat en una àrea particular, la resolució de problemes de classificació.
Aquest tipus de problemes de mineria són resolubles emprant diferents aproximacions,
però l’interès d’aquesta tesi recau en l’aprenentatge artificial evolutiu.
La proposta realitzada en aquesta tesi busca combinar idees provinents de l’aprenen-
tatge artificial, la computació evolutiva i la vida artificial. L’objectiu a assolir en aquesta
tesi era la creació d’un model de mineria de dades que satisfés certes consideracions.
La primera consistia en el fet que havia d’ésser aplicable a problemes amb tot tipus
d’atributs, per exemple numèrics i categòrics entre d’altres. També era imprescindible
que fos un model que no estigués especı́ficament dissenyat per un tipus de representació
del coneixement particular. Finalment, aquest model havia d’ésser inherentment massi-
vament paral·lel, ja que un dels principals esculls de la mineria és l’elevat cost associat
al procés.
Les propostes pertanyents a l’aprenentatge artificial solen estar restringides a un ti-
pus particular de representació del coneixement, on es solen introduir restriccions als
tipus d’atributs que poden manegar, fent aixı́ inviable l’aplicació d’aquest algorismes per
l’obtenció d’altres representacions, o senzillament a problemes amb atributs no contem-
plats. Per la seva part, la computació evolutiva aporta un model genèric d’aprenentatge
fàcilment extensible a tota mena de representacions del coneixement. A més a més, la
vida artificial pot aportar models distribuı̈ts amb comportaments emergents. Aquests
tipus de models que assoleixen un objectiu complex a partir de la interacció d’elements
constituents simples, proposen models basats en paral·lelisme de gra fi que permeten l’ús
de paral·lelisme massiu. El GALE és el model de mineria de dades evolutiu, independent
de la representació del coneixement manipulada, que amalgama idees i tècniques de les
disciplines comentades anteriorment.
278 Conclusions i Recerca Futura
Tal i com s’ha pogut apreciar a la definició del model de mineria, presentat al capı́tol
6 (pg. 111), que proposa el GALE, s’ha dedicat una especial cura per poder separar el
model pròpiament proposat, de les representacions que aquest model és capaç de mani-
pular. Aquest punt permet analitzar la dinàmica evolutiva que defineix el comportament
del GALE, tal i com s’ha presentat al capı́tol 7 (pg. 167), malgrat disposar d’un ampli
ventall de representacions del coneixement utilitzables. Aquest punt és rellevant quan es
té present en el marc de la mineria de dades, l’usuari del model pot voler decidir emprar
una o altra representació en funció de l’ús que en vulgui realitzar. Però la possibilitat
de disposar d’una clara separació entre el model i la representació emprada, ha permès
disposar d’un model simplificat del GALE sobre el qual analitzar amb facilitat l’impacte
dels diferents paràmetres existents en la seva eficiència.
De l’estudi del comportament del model simplificat del GALE esmentat anteriorment,
presentat al capı́tol 7 (pg. 167), se n’han pogut extreure conclusions interessants. La
primera ha estat clarificar l’impacte dels diferents paràmetres existents sobre el compor-
tament global del GALE. Tal i com s’ha pogut apreciar els diferents paràmetres afecten el
comportament de diferent forma, fet que ha permès davant de problemes reals esbrinar
com actuar per obtenir un comportament determinat. Lligat amb aquestes consideraci-
ons és important esmentar el fet que s’ha pogut apreciar l’existència d’una àmplia regió
de configuració, definida per diferents rangs dels paràmetres del GALE, que proporcionen
un comportament satisfactori en el moment de resoldre el problema en qüestió. Aquest
punt s’agraeix en el moment de resoldre problemes reals de mineria de dades.
Per altra banda, un altre punt molt interessant és la capacitat d’especiació espacial.
Sense cap mena de esforç realitzat especı́ficament en aquesta direcció el GALE permet
mantenir diferents solucions, igualment acurades, dins el tauler T . Aquest comporta-
ment sorgeix en forma d’illes, o agrupacions de cel·les Tij veı̈nes, que contenen individus
pràcticament idèntics. En aquest punt s’ha apreciat el paper fonamental que juga el
merge en la dinàmica que s’estableix entre les diferents illes. Aquest comportament
emergent d’especiació és de molta utilitat en el procés de mineria, ja que permet pre-
sentar diferents alternatives, igualment competents, com a solució al procés que es duu
a terme.
Però el pes se l’endú el capı́tol 8 (pg. 219). En aquest capı́tol s’han presentat els re-
sultats que s’han obtingut de l’aplicació del GALE a problemes de mineria reals. Aquests
resultats han permès corroborar la competència del model de mineria. Com s’ha pogut
apreciar, el GALE és capaç de treballar eficientment amb les diferents representacions
proposades. Dels resultats obtinguts especı́ficament per cada tipus de representació,
regles, instàncies i arbres de decisió, es pot concloure la competència del GALE en front
d’algorismes tradicionals d’aprenentatge artificial especı́ficament dissenyats per tractar
amb aquest tipus de representacions. On aquesta competència no sols apareix a nivell
de percentatge d’encert, sinó que també s’estén a la comprensibilitat de les solucions
proposades pel GALE.
Dels resultats obtinguts en aquesta aplicació pràctica també s’ha observat un altre
punt molt interessant. Aquest és el que fa referència a la robustesa del GALE davant
l’espectre de problemes tractats. Tal i com s’ha pogut apreciar en l’anàlisi estadı́stic
279
realitzat, el fet de poder treballar amb diferents representacions, aprofitant aquella que
millor s’adapti al problema a resoldre, permet esmorteir comportaments pobres en pro-
blemes concrets, quan aquests es compara amb els obtinguts pels algorismes tradicionals.
És a dir, minimitzar el problema de la superioritat selectiva.
El bons resultats obtinguts, tal i com s’ha esmentat anteriorment, confirmen la
competència del GALE en el moment de resoldre problemes de mineria de dades reals.
Malgrat això, les proves realitzades han estat a simulacions seqüencials del model paral·lel
proposat. Amb aquest tipus d’implementació s’ha pogut apreciar un cost considerable
quan aquest es compara amb els models tradicionals d’aprenentatge artificial. Però
aquesta situació no es preocupant, tal i com s’ha presentat als estudis teòrics del model
realitzats. Per definició el model que proposa el GALE és massivament paral·lel, fet
que permet la reducció directa del temps d’execució amb l’utilització d’implementacions
paral·leles del model proposat, tal i com es comentarà tot seguit quan es revisi la recerca
futura que aquesta tesi deixa oberta.
La proposta realitzada en aquesta tesi, tal i com s’ha pogut apreciar al llarg d’aquest
document, ha satisfet la problemàtica originalment plantejada. Malgrat això, aquest no
és un treball tancat. Al contrari, del treball realitzat en aquesta tesi es poden marcar
unes quantes lı́nies de recerca futura clares com a resultat i prolongació natural de les
propostes fetes. Per altra banda, el treball realitzat també obre l’aplicació del model
de mineria de dades presentat a altres camps, obrint noves direccions alternatives a la
recerca que en ells es realitza. Aquesta recerca futura es pot agrupar en quatres grans
lı́nies d’actuació. Aquestes es podrien resumir com:
4. Consideracions pràctiques.
La primera lı́nia d’actuació és la que agrupa la recerca directa que sorgeix dels
resultats obtinguts en aquesta tesi. Dins d’aquest punt es troben direccions heterogènies
relacionades, principalment, amb els resultats obtinguts a l’experimentació duta a terme.
Exemples d’aquests punt són la necessitat de l’estudi de l’impacte de la dimensió del
problema, |A|, quan es treballa, especialment, amb arbres de decisió ortogonals. Tal
i com es comentà en el capı́tol 8 (pg. 219), s’intueix que els inductors tradicionals,
com el C4.5, poden presentar un menor grau d’escalabilitat respecte la dimensió del
problema quan es compara amb el comportament del GALE evolucionant arbres de
decisió ortogonals.
Relacionat també amb els arbres de decisió, els resultats obtinguts pel GALE evolu-
cionant variants obliqües i multivariades també ha generat lı́nies interessants. Degut a
les possibilitats que ofereix l’aprenentatge evolutiu, ha permès abordar aquests dos ti-
pus de representacions, tradicionalment no emprades, degut a l’elevada complexitat que
presenten. Malgrat la duresa que comporta abordar aquest tipus d’arbres, els resultats
280 Conclusions i Recerca Futura
proposats pel GALE després del procés evolutiu han estat satisfactoris tenint present les
condicions en les que s’han obtingut. Per altra banda, un cop s’ha estudiat el que ha
succeı̈t al llarg de l’evolució, tant dels arbres de decisió oblics, com dels multivariats, s’ha
pogut identificar que la competència del GALE en l’evolució d’aquest tipus d’arbre es
pot millorar parant una atenció especial a la probabilitat de mutació emprada. Una pe-
culiaritat que comparteixen ambdues representacions és l’elevat nombre de gens, o valors
a ajustar, que, junt amb la topologia d’arbre, defineix un espai de cerca de proporci-
ons molt elevades. Tot això suggereix, junt amb el resultat d’algunes proves puntuals
realitzades, que la possibilitat de disposar d’un mecanisme d’adaptació automàtic de
la probabilitat de mutació del genoma és un requeriment ineludible pel funcionament
eficient del GALE per l’evolució d’aquest tipus de representacions. Aquest punt en-
tronca amb certes lı́nies de recerca existents dins la comunitat de computació evolutiva
cap a model amb paràmetres autoajustables, com per exemple el parameter-less genetic
algorithms [Lobo, 2000].
Dins aquesta primera lı́nia de temes de recerca sorgits dels resultats obtinguts, també
apareixen preguntes respecte a les possibilitats que ofereix l’evolució de representacions
basades en instàncies. Algunes, com la reducció del conjunt d’instàncies necessaris per
a la classificació, ja s’han explorat en aquesta tesi. Malgrat això, quan s’observen els
resultats obtinguts emprant instàncies parcialment i totalment definides es pot apreciar
que en molts casos no són necessaris l’ús de tots els atributs de |A| per assolir el mateix
rendiment en la classificació. Conseqüentment, això suggereix la possibilitat de dur
a terme recerca en la direcció de poder avaluar la viabilitat d’emprar les instàncies
parcialment definides del GALE per a la selecció d’atributs rellevants. Aquest punt
entronca directament amb la recerca que s’està realitzant dins el Grup de Sistemes
Intel·ligents pel que fa al problema mmg. En aquest problema s’ha pogut apreciar que les
instàncies parcialment definides obtingudes pel GALE utilitzen al voltant d’un 10% dels
atributs per realitzar la classificació eficientment. Això suggereix que en la recerca que
es duu a terme s’hauria de tenir en compte el fet que s’hauria de reavaluar el conjunt
d’atributs que s’estan emprant.
La segona lı́nia de recerca futura que es presenta és la que afecta a les diferents
representacions del coneixement que pot manipular el GALE. Com s’ha pogut apreciar
al capı́tol 8 (pg. 219), el disposar de diferents representacions del coneixement permet,
no sols utilitzar aquella que millor s’adapti a un problema concret, si no també identificar
dificultats en el procés de classificació, tal i com succeı̈a amb les diferents representacions
arborescent en el problema irs i com el conflicte sempre sorgia entre les mateixes classes.
És per aquest motiu, que part dels esforços de recerca futura s’haurien de centrar en noves
representacions cara a facilitar la detecció d’aquest tipus de problemàtica. En aquesta
direcció s’haurien d’encaminar els esforços per incorporar representacions basades en
vectors de suport i models estadı́stics.
L’altre gran tasca que engloba aquesta lı́nia té relació amb l’elecció de la representació
adient en front d’un nou problema a resoldre emprant el GALE. Tal i com s’ha pogut
observar, aquesta sols es pot fer a posteriori. És a dir, un cop s’ha vist quina es
comporta millor es pot escollir. Un dels punts en els quals s’ha recolzat la tesi és
281
GALE.
APÈNDIX A
△
Definició 55 Funció d’equivalència triangular inferior eq(Tij) és aquella que donada
una cel·la triangular inferior, projecta aquesta sobre els naturals, tal i com mostra la
següent definició com:
△ i sii i ≤ j,
eq(Tij) =
j sii i > j.
284 Simetria del mapping piramidal
...
7
5
4
3
2
1
0
p(u,v)
p’
Figura A.3: Projecció d’un punt emprant les diagonals del rectangle definit per la matriu
La figura A.2 mostra gràficament com funciona aquest procés de numeració de les
diferent classes d’equivalència. Aquest procés sols presenta un problema, i és el fet que
sols funciona correctament per cel·les que es troben per sota la diagonal definida pels
punts (0, m) i (n, 0). És a dir:
m
y=− x+m (A.1)
n
Emprant la representació implı́cita de la diagonal presentada a l’equació A.1 és poden
identificar els punts que es troben per sobre d’ella. Això succeeix quan:
m
y+ x−m>0 (A.2)
n
Un cop es poden identificar els punts que es troben per sobre la diagonal, emprant la
condició A.2, és on entra en joc la simetria existent emprant les diagonals del rectangle
que defineix T . La simetria emprada és la que es presenta a la figura A.3. Com es
pot apreciar a la figura, aquesta simetria consisteix en projectar el triangle que es troba
sobre la diagonal de l’equació A.1, sobre el triangle inferior, en el qual si que es pot
calcular la classe d’equivalència associada a la cel·la projectada. Això s’assoleix rotant
el triangle superior π graus respecte el centre de la figura. Una altra forma d’afrontar
aquesta projecció, que és la que es presentarà tot seguit, consisteix en:
Aquesta procés s’il·lustra gràficament a la figura A.3. Per trobar la forma analı́tica
d’aquesta projecció s’haurà de calcular un seguit d’elements que es llisten a continuació:
3. Calcular el punt projectat p ′ com aquell punt que pertany a la recta calculada al
primer punt i que es troba al doble de la distància entre p i c.
Per tant, el primer punt és calcular l’expressió de la recta que: (1) presenta el mateix
pendent que el de la diagonal definida pels punts (0, 0) i (n, m) i (2) passa pel punt p
a projectar. L’expressió d’aquesta regla serà
y = ax + b (A.3)
Degut a que el pendent ha d’ésser el mateix que el de la diagonal entre els punts
(0, 0) i (n, m), el pendent de la recta a és m
n . Per, altra banda, l’equació anterior ha de
passar pel punt p = (u, v). Emprant el valor calculat de a, i sabent que ha de passar
per p, es pot calcular b com:
y = ax + b (A.4)
m
y= x+b (A.5)
n
m
v= u+b (A.6)
n
m
b=v− u (A.7)
n
El següent pas és calcular el punt c, tal i com apareix a la figura A.3, com a
l’intersecció entre les rectes presentades a les equacions A.1 i A.8. Tot seguit es presenta
el càlcul d’aquest punt. La component y del punt c (cy), es calcula sumant les equacions
A.1 i A.8.
m
2y = m + v − u (A.9)
n
1 mu
y= m+v− (A.10)
2 n
287
L’última part del càlcul del punt projectat p ′ consisteix en trobar aquell punt que
pertany a la recta A.8 i que es troba al doble de la distància entre p i c. El punt p ′
s’obté com:
p ′ = p − 2(p − c) (A.19)
′
p = p − 2p + 2c (A.20)
′
p = 2c − p (A.21)
′ 1 nv 1 mu
p =2 n+u− , m+v− − (u, v) (A.22)
2 m 2 n
nv mu
p′ = n − ,m − (A.23)
m n
Arribats a aquest punt, ja es disposa de l’expressió que permet projectar les cel·les
del triangle superior sobre l’inferior. Conseqüentment, ja es pot definir la funció d’equi-
valència per tota cel·la del tauler T . La definició 56 presenta la funció d’equivalència de
cel·les piramidal. Per assolir aquesta definició, aquesta es basa en l’equivalència trian-
gular inferior donada a la definició 55, aixı́ com amb l’expressió del punt projectat p ′ de
l’equació A.23 i la condició de pertinença al triangle superior del tauler T presentada a
l’expressió A.2.
Definició 56 Funció d’equivalència de cel·les ⋆(Tij) és aquella que donada una cel·la
qualsevol de Tij, projecta aquesta sobre els naturals, és a dir
⋆ : Tij 7−→ N
288 Simetria del mapping piramidal
En aquest apèndix és recull el pseudocodi que descriu el model proposat pel GALE.
A la figura B.1 és presenta el procés principal de l’algorisme. Un cop presentat aquest
procés, tot seguit es detalla les principals parts que conformen el model. És a dir, la
figura B.2 presenta l’avaluació, mentre les figures B.3, B.4 i B.5 corresponen al merge,
el split i survival.
GALE(T ,P)
FOR-EACH Tij ∈ T
DO IN PARALLEL
t ← 0
initialize Tij
evaluate the accuracy of individual in Tij using P
REPEAT
t ← t+1
merge individual in Tij among Tijν
split individual in Tij among Tijν
evaluate the accuracy of individual in Tij using P
survival of Tij among Tijν
UNTIL Ω (Tij, t)
DONE
RETURN T
Evaluate(Tij)
FOR-EACH k, l ∈ X∗
DO
TijCkl ← 0
DONE
FOR-EACH e ∈ µ(Σ, Tij)
DO
k ← eχ
l ← ∇ TijI, e
TijCkl ← TijCkl +1
DONE
acc ← 0
FOR-EACH k ∈ X∗
DO
acc ← acc + TijCkl
DONE
2
acc
A (Tij) ←
|µ(Σ, Tij)|
Merge(Tij)
IF rand(0, 1) < pM THEN
DO ν
IM
ij ← rand T I (t-1)
ij
Tij(t) ← X TijI(t-1), IM
I
ij
DONE
Split(Tij)
IF rand(0, 1) < pS (Tij(t)) THEN
DO
ISij ← Y TijI(t-1)
IF ξ Tijν(t − 1) = 8 THEN
DO
r(t)I | A (r(t)) = min
a
(A(c)) ← ISij
c∈Tijν (t-1)
DONE
ELSE
DO
rand (L(t))I ← ISij
DONE
DONE
Survival(Tij)
I ← TijI(t)
IF ξ Tijν(t) < 2 THEN
DO
IF A(I) < rand(0, 1) THEN
DO
I←λ
DONE
DONE
ELSE IF ξ Tijν(t) < 7 THEN
DO
IF A(I) > Aµ Tijν(t) + ksr · Aσ Tijν(t) THEN
DO
I←λ
DONE
DONE
ELSE
DO
I ← r(t)I | A (r(t)) = max
a
(A(c))
c∈Tijν (t)
DONE
TijI(t) ← I
Agraeixo a en Josep Maria Garrell la supervisió del treball realitzat, aixı́ com l’ajuda
i l’amistat de tota la gent del Grup de Recerca en Sistemes Intel·ligents. A la Maria
merci pels ànims i hores esmerçades al despatx. Ester les converses m’han ajudat a
comprendre. No seria just no fer extensiu aquests agraı̈ments també als companys del
Departament d’Informàtica, tant els que hi són com els que han marxat, que m’han fet
sentir com a casa. A la resta de gent de l’Escola que, d’una forma o altra, m’han ajudat
al llarg d’aquesta tesi, gràcies. Teresa, et tornaré els llibres.
Gràcies per la vostra paciència Lluı́s i Xevi. Sense fer fressa, també heu patit d’aques-
ta tesi cada vespre. Francesc, la teva alegria als migdies es contagiosa. Merci també
a tots el amics i amigues que m’heu animat al llarg d’aquests anys. Agrair també a
la gent de la comunitat de computació evolutiva (Luı́s, Hernán, Martin, Terry, Alwyn,
Erick, David, Pier, Wolfgang, Sonia, Natalio...) que he conegut al llarg d’aquests anys
de peripècies per fer-me sentir un membre més. Agrair-vos, no cal dir-ho, també les
inquietuds, idees i discussions que hem compartit.
Però aquesta tesi segur que no hauria estat mai possible sense la meva famı́lia. Sé
que no us ha estat senzill. Margarita, Pere, Pilar i Manel les paraules no serveixin per
agrair-vos prou tot el que heu fet avis. Als meus pares, Isabel i Xavier, gràcies per ser-hi
sempre que us he necessitat i per les petites coses que sempre heu fet dia a dia per
ajudar-me. Mare, merci per tota aquella feina fosca que no es veu, i que a vegades no
es reconeix. Iaia, sense els teus consells les coses serien diferents. Per cert, iaia, mai
estic sol.
Finalment, agrair el suport rebut per part del CIRIT de la Generalitat de Catalunya,
sota la beca 1999FI-00719, que ha permès la realització d’aquesta tesi doctoral. Agrair
també a Enginyeria i Arquitectura La Salle el suport i la confiança rebuda al llarg d’a-
quests tres anys.
Xavier Llorà
[Ackley and Littman, 1991] Ackley, D. and Littman, M. (Addison-Wesley, 1991). In-
teractions between learning and evolution. In Proc. of 2nd Conf. on Artificial Life.
[Aha, 1992] Aha, D. W. (1992). Tolerating noisy irrelevant and novel attributes in
instance-based learning algorithms. International Journal of Man-Machine Studies,
36:267–287.
[Aha et al., 1991] Aha, D. W., Kibler, D., and Albert, M. K. (1991). Instance-based
Learning Algorithms. Machine Learning, 6:37–66.
[Anahory and Murray, 1997] Anahory, S. and Murray, D. (1997). Data Warehousing in
the Real World: a practical guide for building decision support systems. Addison-
Wesley.
[Araujo et al., 2000] Araujo, D. L., Lopes, H. S., and Freitas, A. A. (2000). Rule
Discovery with a Parallel Genetic Algorithms. In Whitley, D., D., G., Cantú-Paz,
E., L., S., I., P., and H., B., editors, Workshop on Data Mining with Evolutionary
Computation held in GECCO 2000, pages 89–92. Morgan Kaufmann Publishers.
[Back, 1996] Back, T. (1996). Evolutionary Algorithms in Theory and Practice. Oxford
University Press.
[Baldwin, 1896] Baldwin, J. (1896). A new factor in evolution. American Naturalist 30,
pages 441–451.
[Berlekamp et al., 1982] Berlekamp, E. R., Conway, J. H., and Guy, R. (1982). Winning
Ways for Your Mathematical Plays. New York: Academic Press.
[Bernadó et al., 2001] Bernadó, E., Llorà, X., and Garrell, J. M. (2001). XCS and GALE:
a Comparative Study of Two Learning Classifier Systems with Six Other Learning
Algorithms on Classification Tasks. In Proceedings of the 4th International Workshop
on Learning Classifier Systems (IWLCS-2001), to appear.
296 Bibliografia
[Bonelli and Parodi, 1991] Bonelli, P. and Parodi, A. (1991). An Efficient Classifier
System and its Experimental Comparison with Two Representative Learning Methods
on Three Medical Domains. In 4th. International Conference on Genetic Algorithms
(ICGA’91), pages 288–295. Morgan Kaufmann.
[Breiman et al., 1984] Breiman, L., Friedman, J., Olshen, R., and Stone, C. (1984).
Classification and Regression Trees. Wadsworth International Group.
[Brodley, 1993] Brodley, C. E. (1993). Addressing the seletive superiority problem: Au-
tomatic algorithm/model class selection. In Proceedings of the 10th International
Conference on Machine Learning, pages 17–24.
[Brooks, 1986] Brooks, R. A. (March 1986). A robust layered control system for a
mobile robot. IEEE journal of Robotics and Automation, pages 14–23.
[Burges, 1998] Burges, C. (1998). A tutorial on support vector machines for pattern
recognition. Data Mining and Knowledge Discovery, 2(2).
[Butz and Pelikan, 2001] Butz, M. V. and Pelikan, M. (2001). Analyzing the Evolutio-
nary Pressures in XCS. Illigal report no. 2001009, Illinois Genetic Algorithm Lab.
[Cantú-Paz, 2000] Cantú-Paz, E. (2000). Efficient and Accurate Parallel Genetic Algo-
rithms. Kluwer Academic Publishers.
[Cohen, 1987] Cohen, F. (1987). Computer Viruses: Theory and Experiments. Compu-
ters and Security 6, pages 22–35.
[Darwin, 1859] Darwin, C. (1859). On the origin of species by means of natural selection,
or the preservation of favoured races in the struggle for life. Edició traduida de Planeta-
Agostini (1992).
[Davidor, 1991] Davidor, Y. (1991). A Naturally Occuring Niche & Species Pheno-
menon: The Model and First Results. In 4th. International Conference on Genetic
Algorithms (ICGA’91), pages 257–263. Morgan Kaufmann.
[Davis, 1991] Davis, L. (1991). Handbook of Genetic Algorithms. Van Nostrand Rein-
hold, New York.
[De Jong and Spears, 1991] De Jong, K. A. and Spears, W. M. (1991). Learning Con-
cept Classification Rules Using Genetic Algorithms. In Proceedings of the International
Joint Conference on Artificial Intelligence, pages 651–656. Sidney, Australia.
[Deb and Goldberg, 1994] Deb, K. and Goldberg, D. E. (1994). Sufficient conditions for
deceptive and easy binary functions. Annals of Mathematics and Artificial Intelligence,
10:385–408.
[Deb et al., 1992] Deb, K., Horn, J., and Goldberg, D. E. (1992). Multinodal deceptive
functions. IlliGAL Report (No. 92003), University of Illinois at Urbana-Champaign.
[Detrano et al., 1989] Detrano, R., Janosi, A., Steinbrunn, W., Pfisterer, M., Schmid,
J., Sandhu, S., Guppy, K., Lee, S., and Froelicher, V. (1989). International application
of a new probability algorithm for the diagnosis of coronary artery disease. American
Journal of Cardiology, 64:304–310.
[Dewdney, 1988] Dewdney, A. (1988). The Armchair Universe. New York: Freeman.
[Dixon et al., 2001] Dixon, P., Corne, M., and Oates, M. (2001). A Preliminary Inves-
tigation of Modified XCS as a Generic Data Mining Tool. In Proceedings of the 4th
International Workshop on Learning Classifier Systems (IWLCS-2001), to appear.
[Emmeche and Sampson, 1996] Emmeche, C. and Sampson, S. (1996). The Garden in
the Machine (The Emerging Science of Artificial Life. Princeton University Press.
[Evett and Spiehler, 1987] Evett, I. W. and Spiehler, F. (1987). Rule Induction in Foren-
sic Science. Technical report, Central Reseach Establishment, Home Office Forensic
Science Service.
298 Bibliografia
[Feng et al., 1993] Feng, C., Sutherland, A., King, S., Muggleton, S., and Henery, R.
(1993). Comparison of machine learning classifiers to statistics and neural networks.
In Fourth International Conference on AI & Statistics, pages 41–52.
[Fisher, 1936] Fisher, R. (1936). The use of multiple measurements in taxonomic pro-
blems. Annual Eugenics, 7(2):179–188.
[Flockhart, 1995] Flockhart, I. W. (1995). GA-MINER: Parallel Data Mining with Hie-
rarchical Genetic Algorithms (Final Report). Technical Report EPCC-AIKMS-GA-
MINER-REPORT 1.0, University of Edinburgh.
[Forina and et al., 1991] Forina, M. and et al. (1991). PARVUS - An Extendible Package
for Data Exploration, Classification and Correlation. Institute of Pharmaceutical and
Food Analysis and Technologies, Via Brigata Salerno, 16147 Genoa, Italy.
[Frank and Witten, 1998] Frank, E. and Witten, I. H. (1998). Generating Accurate Rule
Sets Without Global Optimization. In Shavlik, J., editor, Machine Learning: Procee-
dings of the Fifteenth International Conference, pages 144–151. Morgan Kaufmann.
[Garcia-Molina et al., 2000] Garcia-Molina, H., Ullman, J. D., and Widom, J. (2000).
Database System Implementations. Prentice-Hall.
[Gennari et al., 1989] Gennari, J., Langley, P., and Fisher, D. (1989). Models of incre-
mental concept formation. Artificial Intelligence, 40:11–61.
[Giordana and Neri, 1995] Giordana, A. and Neri, F. (1995). Search-Intensive Concept
Induction. Evolutionary Computation, 3(4):375–416.
[Golberg et al., 1992a] Golberg, D. E., Deb, K., and Clark, J. H. (1992a). Genetic
Algorithms, noise, and the sizing of populations. Complex Systems, 6:333–362.
[Golberg et al., 1992b] Golberg, D. E., Horn, J., and Deb, K. (1992b). What Makes
a Problem Hard for a Classifier System. IlliGAL Report (No. 92007), University of
Illinois at Urbana-Champaign.
[Golberg and Wang, 1997] Golberg, D. E. and Wang, L. (1997). Adaptive Niching Via
Coevolutionary Sharing. IlliGAL Report (No. 97007), University of Illinois at Urbana-
Champaign.
[Green and Kirley, 2000] Green, D. G. and Kirley, M. G. (2000). Adaptation, diversity
and spatial patterns. International Journal of Knowledge-Based Intelligent Engineering
Systems, 4(3):184–190.
[Hampson and Volper, 1986] Hampson, S. and Volper, D. (1986). Linear function neu-
rons: Structure and Trainning. Biological Cybernetics, 53:203–217.
[Han and Kamber, 2001] Han, J. and Kamber, M. (2001). Data Minig: Concepts and
Techniques. Morgan Kaufmann.
[Hart, 1968] Hart, P. E. (1968). The Condensed Nearest Neighbor Rule. IEEE Transac-
tions on Information Theory, 14(1):515–516.
[Heath et al., 1993] Heath, D., Kasif, S., and Salzberg, S. (1993). Learning oblique
decision trees. In Proceedings of the 13th Intenational Joint Conference on Artificial
Intelligece, pages 1002–1007. Morgan Kaufmann.
[Hinton and S.J., 1987] Hinton, G. and S.J., N. (1987). How learning can guide evolu-
tion. Complex Systems 1, pages 495–502.
[Holland, 1969] Holland, J. H. (1969). Adaptive Plans Optimal for Payoff-Only En-
vironments. In Proceedings of the 2nd Hawaii International Conference on System
Sciences, pages 917–920.
[Holland, 1995] Holland, J. H. (1995). Hidden Order: How Adaptation Builds Com-
plexty. Perseus Books.
[Holland and Reitman, 1978] Holland, J. H. and Reitman, J. S. (1978). Cognitive sys-
tems based on adaptive algorithns. Pattern directed inference systems, pages 313–329.
300 Bibliografia
[Holte, 1993] Holte, R. (1993). Very simple classification rules perform well on most
commonly used datasets. Machine Learning, 11:63–91.
[Janikow, 1993] Janikow, C. (1993). A Knowledge Intensive Genetic Algorithm for Su-
pervised Learning. Machine Learning, 13:198–228.
[John and Langley, 1995] John, G. H. and Langley, P. (1995). Estimating Continuous
Distributions in Bayesian Classifiers. In 11th. Conference on Uncertainty in Artificial
Intelligence, pages 338–345.
[Kirley and Green, 2000] Kirley, M. G. and Green, D. G. (2000). An Empirical Inves-
tigation of Optimisation in Dynamic Environments Using the Cellular Genetic Al-
gorithm. In Proceedings of the Genetic and Evolutinary Computation Conference
(GECCO’2000), pages 11–18.
[Kovacs, 1996] Kovacs, T. (1996). Evolving Optimal Populations with XCS Classifier
Systems. Master’s thesis, School of Computer Science, University of Birmingham,
UK.
[Kovacs, 1997] Kovacs, T. (1997). XCS Classifier System Reliably Evolves Accurate,
Complete and Minimal Representations for Boolean Functions. In Roy, Chawdhryand,
and Pant, editors, Soft Computing in Engineering Design and Manufacturing, pages
59–68. Springer-Verlag.
[Kovacs, 1999] Kovacs, T. (1999). Deletion Schemes for Classifier Systems. In Procee-
dings of the Genetic and Evolutionary Computation Conference (GECCO’99), pages
329–336. Morgan Kauffmann.
[Koza et al., 1999] Koza, J. R., Bennett III, F. H., Andre, D., and Keane, M. A. (1999).
Genetic Programing: Darwinian Invention and Problem Solving (Complex Adaptive
Systems). MIT Pres.
301
[Langton, 1986] Langton, C. G. (1986). Studying artificial life with cel·lular automata.
Physica 22D, pages 120–149.
[Lanzi, 2001] Lanzi, P. L. (2001). Mining Interesting Knowledge from Data with the
XCS Classifier System. In Proceedings of the Genetic and Evolutinary Computation
Conference (GECCO’2001), pages 958–965. Morgan Kauffmann.
[Lanzi and Perrucci, 1999] Lanzi, P. L. and Perrucci, A. (1999). Extending the Repre-
sentation of Classifier Conditions Part II: From Messy Coding to S-Expressions. In
Proceedings of the Genetic and Evolutinary Computation Conference (GECCO’99),
pages 345–352. Morgan Kauffmann.
[Levy, 1993] Levy, S. (1993). Artificial Life: A report from the frontier where computers
meet biology. First Vintage Books Edition.
[Lim et al., 2000] Lim, T.-S., Loh, W.-Y., and Shih, Y.-S. (2000). A Comparison of
Prediction Accuracy, Complexity, and Training Time of Thirty-Three Old and New
Classification Algorithms. Machine Learning, 40:203–228.
[Liu and Motoda, 1998] Liu, H. and Motoda, H. (1998). Feature Selection for Know-
ledge Discovery and Data Mining. Kluwer Academic Press.
[Llorà, 2000] Llorà, X. (Juliol, 2000). Diploma d’Estudis Avançats. ETSEEI La Salle,
Universitat Ramon Llull.
[Llorà and Garrell, 1998] Llorà, X. and Garrell, J. M. (1998). A Classifier System based
on Genetic Algorithm under the Pittsburgh aproach for problems with real valued
attributes. In Proceedings of the First Catalan Conference on Artificial Inteligence
(CCIA’98), pages 85–93.
[Llorà and Garrell, 1999a] Llorà, X. and Garrell, J. M. (1999a). Extensions to the GE-
NIFER system: an incremental Machine Learning Approach. In Proceedings of the
Second Catalan Conference on Artificial Inteligence (CCIA’99), pages 253–260.
[Llorà and Garrell, 1999b] Llorà, X. and Garrell, J. M. (1999b). GENIFER: A Nearest
Neighbour based Classifier System using GA. In Proceedings of the Genetic and
Evolutionary Computation Conference (GECCO’99), page 797.
[Llorà and Garrell, 2000a] Llorà, X. and Garrell, J. M. (2000a). Automatic Classification
and Artfificial Life Models. In Proceedings of the International Worshop on Learning
(Learning00).
302 Bibliografia
[Llorà and Garrell, 2000b] Llorà, X. and Garrell, J. M. (2000b). Evolving Hierarchi-
cal Agents using Cellular Genetic Algorithms. In Proceedings of the Genetic and
Evolutionary Computation Conference, (GECCO2000), page 868. Morgan Kaufmann
Publishers.
[Llorà and Garrell, 2001a] Llorà, X. and Garrell, J. M. (2001a). Evolution of Decision
Trees. In Forth Catalan Conference on Artificial Intelligence (CCIA’2001), pages 115–
122. ACIA Press.
[Llorà and Garrell, 2001b] Llorà, X. and Garrell, J. M. (2001b). Evolving Partially-
Defined Instances with Evolutionary Algorithms. In Proceedings of the 18th Internatio-
nal Conference on Machine Learning (ICML’2001), pages 337–344. Morgan Kaufmann
Publishers.
[Llorà et al., 2000] Llorà, X., Golobardes, E., and Salamó, M. (2000). Diagnosis of
microcalsification using case-based and genetic algorithms. In Proceedings of Engi-
neering of Inteligent Systems (EIS200), pages 258–265.
[Lobo, 2000] Lobo, F. (2000). The parameter-less genetic algorithms: Rational and
automated parameter selection for simplified genetic algorithm operation. PhD thesis,
University of Lisbon, Portugal.
[Martı́ et al., 1998] Martı́, J., Cufı́, X., Regincós, J., and et al. (1998). Shape-based
feature selection for microcalcification evaluation. In Imaging Conference on Image
Processing, 3338:1215-1224.
[Martı́nez et al., 1996] Martı́nez, E., Vos, C., and et al. (1996). Morphological analysis
of mammary biopsy images. In Proceedings of the IEEE International Conference on
Image Processing (ICIP’96), pages 943–947.
[Merz and Murphy, 1998] Merz, C. J. and Murphy, P. M. (1998). UCI Repository
for Machine Learning Data-Bases [http://www.ics.uci.edu/∼mlearn/MLRepository.
html]. Irvine, CA: University of California, Department of Information and Computer
Science.
[Michalski et al., 1998] Michalski, R. S., Bratko, I., and Kubat, M. (1998). Machine
Learning and Data Mining: methods and applications. Wiley.
[Mowforth and Shepherd, 1987] Mowforth, P. and Shepherd, B. (1987). Vehicle Re-
cognition Using Rule Based Methods. Technical report, Turing Institute Research
Memorandum TIRM-87-018.
303
[Murthy et al., 1994] Murthy, S. K., Kasif, S., and Salzberg, S. (1994). A System for
Induction of Oblique Decision trees. Journal of Artificial Intelligence Research, 2:1–32.
[Özsu and Valduriez, 1999] Özsu, M. T. and Valduriez, P. (1999). Principles of Distri-
buted Database Systems. Prentice-Hall.
[Parsaye et al., 1989] Parsaye, K., Chignell, M., Khoshafian, S., and Wong, H. (1989).
Intelligent Databases: Object-Oriented, Deductive, Hypermedia technologies. Wiley.
[Pelikan and Golberg, 2001] Pelikan, M. and Golberg, D. E. (2001). Escaping Hie-
rarchical Traps with Competent Genetic Algorithms. IlliGAL Report (No. 2001003),
University of Illinois at Urbana-Champaign.
[Pelikan et al., 2000] Pelikan, M., Golberg, D. E., and Cantú-Paz, E. (2000). Bayesian
Optimization Algorithm, Population Sizing, and Time to Convergence. IlliGAL Report
(No. 2000001), University of Illinois at Urbana-Champaign.
[Platt, 1998] Platt, J. (1998). Fast training of support vector machines using sequential
minimal optimization. In Schlkopf, B., C., B., and A., S., editors, Advances in Kernel
Methods-Support Vector Learning. Cambridge, MA:MIT Press.
[Poundstone, 1985] Poundstone, W. (1985). The Recursive Universe. New York: Mor-
row.
[Quinlan, 1993] Quinlan, J. R. (1993). C4.5: programs for machine learning. Morgan
Kaufmann.
[Rasmussen et al., 1990] Rasmussen, S., K., C., Felberg, R., and Hindsholm, M. (1990).
The Core World: Emergence and Evolution of Cooperative Structures in Computati-
onal Chemistry. Physica 42D, pages 111–134.
[Ray, 1995] Ray, T. S. (1995). An evolutionary approach to synthetic biology: Zen and
art of creating life. Artificial Life 1(1/2). Artificial Life: an overview. The MIT Press,
pages 1–10.
[Sachs, 1984] Sachs, L. (1984). Applied Statistics. Springer Series in Statistics. New
York: Springer-Verlag.
[Saxon and Barry, 2000] Saxon, S. and Barry, A. (2000). XCS and the Monk’s Problems.
In Lanzi, S. and Wilson, editors, Learning Classifier Systems: From Foundations to
Applications, pages 223–242.
[Schwefel, 1965] Schwefel, H. (1965). Kybernetische Evolution als Strategie der Experi-
mentellen Forschung in der Strömungstechnick. Diploma thesis, Technical University
of Berlin.
[Shu and Shaffer, 1991] Shu, L. and Shaffer, J. (1991). HCS: Adding Hierarchies to
Classifier Systems. In Proceedings of the 4th Intenational Conference on Genetic
Algorithms, pages 230–236. Morgan Kaufmann.
[Sigillito et al., 1989] Sigillito, V. G., Wing, S. P., Hutton, L. V., and Baker, K. B.
(1989). Classification of radar returns from the ionosphere using neural networks.
Johns Hopkins APL Technical Digest, 10:262–266.
[Sipper, 1997] Sipper, M. (1997). Evolution of Parallel Cellular Machines: The Cellular
Programming Approach. Lecture Note in Computer Science (1194), Springer.
[Smith, 1987] Smith, A. R. (1987). Formal geometric languages for natural phenomena.
Pixar Technical Memo 182 (San Rafael, CA).
[Smith, 1984] Smith, A. R. (July 1984). Plants, fractals and formal languages. Com-
puter Graphics 18, pages 1–10.
[Smith et al., 1988] Smith, J., Everhart, J., Dickson, W., Knowler, W., and Johannes,
R. (1988). Using the ADAP learning algorithm to forecast the onset of diabetes
mellitus. In Proceedings of the Symposium on Computer Applications and Medical
Care, pages 261–265.
[Spears et al., 1993] Spears, W. M., De Jong, K. A., and Gordon, D. F. (1993). Using
Genetic Algorithms for Concept Learning. Genetic Algorithms for Machine Learning
(John J.Grefenstette editor), A Special Issue of Machine Learning, 13, 2-3, pages
161–188.
[Van de Merckt, 1993] Van de Merckt, T. (1993). Decision trees in numerical attri-
bute spaces. In Proceedings of the 13th Intenational Joint Conference on Artificial
Intelligece, pages 1016–1021. Morgan Kaufmann.
[Vapnik, 1995] Vapnik, V. (1995). The nature of statistical learning theory. Springer-
Verlag.
[Vos, 1996] Vos, C. (1996). Untersuchung von Biopsegewebe zur Klassifizierung von
Brustkrebs mit neuronalen Netzen. Master’s thesis, Master’s Tesis, Universitt Karls-
ruhe, Institut für Nachrichtentechnik, Intitut für Automation and Robotik.
[Weiss and Indurkhya, 1998] Weiss, S. M. and Indurkhya, N. (1998). Predictive Data
Minig: a practical guide. Morgan Kaufmann.
[Widrow and Hoff, 1960] Widrow, B. and Hoff, M. (1960). Adaptive Switching Circuits.
In Westens Electronic Show and Convention, volume 4, pages 96–104.
[Wilson and Martinez, 1997] Wilson, R. D. and Martinez, T. R. (1997). Instance Pru-
ning Thecniques. In Proceedings of the 14th International Conference on Machine
Learning, pages 403–411. Morgan Kaufmann.
[Wilson, 1994] Wilson, S. W. (1994). ZCS: A Zeroth Level Classifier System. Evoluti-
onary Computation, 2(1):1–18.
[Wilson, 1999a] Wilson, S. W. (1999a). Get Real! XCS with Continuous-Valued Inputs.
In Booker, L., Forrest, S., M., M., and R, R., editors, Festschrift in Honor of John
H. Holland, pages 111–121. Center for the Study of Complex Systems, University of
Michigan.
[Wilson, 1999b] Wilson, S. W. (1999b). State of XCS Classifier System Research. Tech-
nical Report No. 99.1.1, Prediction Dynamics.
[Wilson, 2000] Wilson, S. W. (2000). Mining Oblique Data with XCS. Illigal report no.
2000028, Illinois Genetic Algorithm Lab.
[Witten and Frank, 2000] Witten, I. H. and Frank, E. (2000). Data Mining: practical
machine learning tools and techniques with java implementations. Morgan Kaufmann.
[Wolfram, 1983] Wolfram, S. (1983). Cellular automata. Los Alamos Science 9, pages
2–21.
[Zadeh, 1965] Zadeh, L. A. (1965). Fuzzy Sets. Information and Control, 8:338–353.
Índex de Definicions
Ackley, D.H., 103, 105, 106, 109 Conover, W.J., 250, 276
Aha, D.W., 34, 36, 46, 49, 234, 235, Conway, J.H., 95, 109
275 Corn, D.W., 115, 165
Albert, M.K., 34, 46, 49, 234, 235, 275 Cristianini, N., 38, 49
Anahory, S., 8, 17 Cufı́, X., 228, 275
Andre, D., 52, 87, 147, 165
Araujo, D., 68, 88, 114, 165 Darwin, C., 53, 86
Date, C.J., 7, 15, 17
Back, T., 186, 218 Davidor, Y., 209, 218
Baker, K.B., 226, 275 Davis, L., 52, 87
Baldwin, J.M., 103, 106, 109 De Jong, K.A., 60, 61, 76, 77, 86, 87,
Barry, A., 88, 115, 165 131, 166, 168
Bennett III, F.H., 52, 87, 147, 165 Deb, K., 77, 79, 88, 174, 185, 187, 218
Berlekamp, E.R., 95, 109 Detrano, R., 225, 275
Bernadó, E., 88, 115, 116, 165, 166, Dewdney, A.K., 106, 109
235, 246, 249, 275, 276 Dickson, W.C., 226, 275
Bonelli, P., 85 Dietterich, T.G., 250, 257, 276
Bratko, I., 16, 18 Dixon, P.W., 115, 165
Breiman, L., 30, 48, 142, 166, 222, 242, Domingos, P., 257, 276
275, 276 Emmeche, C., 108
Broadley, C.E., 31, 48, 249, 276 Everhart, J.E., 226, 275
Brooks, R.A., 107 Evett, I.W., 225, 275
Burges, C.J.C., 41, 49
Burks, A.W., 92, 94, 108 Felberg, R., 107, 109
Butz, M.V., 84, 88 Feng, C., 226, 275
Fiorina, M., 227, 275
Canavos, G.C., 8, 37, 41, 49, 246, 249, Fisher, D., 225, 275
276 Fisher, R.A., 226, 275
Cantú-Paz, E., 117, 118, 165, 178, 188, Flockhart, I.A., 68, 88, 114, 165
218 Fogel, D.B., 51, 53, 87, 100, 109
Carsten, K., 107, 109 Forsyth, R.S., 224, 275
Chignell, M., 9, 18 Frank, E., 1, 7, 9, 15, 18, 32, 37, 41–
Clark, J.H., 174, 185, 187, 218 46, 48, 49, 164, 165, 233, 235,
Cohen, F., 107, 109 246–248, 275, 276
312 Índex d’Autors
Freitas, A.A., 68, 88, 114, 165 Janosi, A., 225, 275
Friedman, J., 30, 48, 222, 275 Johannes, R.S., 226, 275
Froelicher, V., 225, 275 John, G.H., 42, 47, 49, 234, 275
Garcia-Molina, H., 7, 15, 17 Kamber, M., 1, 2, 7–9, 11, 15, 18, 32,
Garrell, J.M., 31, 48, 68, 88, 115, 116, 34, 48, 165
153, 158, 163, 165, 166, 223, Kasif, S., 31, 48
275 Keane, M.A., 52, 87, 147, 165
Gennari, J.H., 225, 275 Khoshafian, S., 9, 18
Giordana, A., 68, 87 Kibler, D., 34, 46, 49, 234, 235, 275
Goldberg, D.E., 52, 69, 74, 76, 77, 79, King, S., 226, 275
80, 86, 88, 89, 100, 109, 113, Kirley, M.G., 114, 115, 165
145, 146, 152, 165, 174, 175, Knowler, W.C., 226, 275
177, 178, 182, 185–187, 196, Kodratoff, Y., 19, 32, 48
217, 218 Kovacs, T., 82, 84, 85, 88
Golobardes, E., 231, 275 Koza, J.R., 11, 51, 52, 87, 103, 109,
Gordon, D.F., 61, 87, 168 147, 150, 152, 165
Gorman, R.P., 226, 275 Kubat, M., 16, 18
Green, D.G., 114, 115, 165
Greene, D.F., 68, 87 Langley, P., 19, 21, 42, 47–49, 225, 234,
Guppy, K., 225, 275 275
Guy, R., 95, 109 Langton, C.G., 98, 109
Lanzi, P.L., 82, 88, 115, 165
Hampson, S., 31, 48 Lee, S., 225, 275
Han, J., 1, 2, 7–9, 11, 15, 18, 32, 34, Levy, S., 92, 98, 101, 106–108
48, 165 Lim, T.S., 224, 275
Hart, P.E., 46, 49, 234, 276 Lindenmayer, A., 104, 109
Heath, D., 31, 48 Littman, M., 103, 105, 106, 109
Henery, R., 226, 275 Liu, H., 245, 246, 276
Hindsholm, M., 107, 109 Llorà, X., 31, 48, 68, 88, 115, 116, 153,
Hinton, G.E., 106, 109 158, 159, 163, 165, 166, 223,
Hoff, M., 83, 88 231, 275
Holland, J.H., 51, 52, 54, 69, 73, 74, Lobo, F., 280
76, 86, 88, 100–102, 109, 175, Loh, W.Y., 224, 275
176, 186, 217 Lopes, H.S., 68, 88, 114, 165
Holmes, J.H., 85
Mangasarian, O.L., 224, 275
Holte, R.C., 45, 49, 233, 252, 253, 275
Martı́, J., 228, 275
Hong, H., 9, 18
Martı́nez, E., 227, 228, 275
Hopcroft, J.E., 92
Martinez, T.R., 158, 159, 166, 276
Horn, J., 77, 79, 88
Merz, C.J., 115, 166, 222, 224, 275
Hutton, L.V., 226, 275
Michalewicz, Z., 51–54, 61, 87, 100, 109
Hwang, K., 118, 166, 169
Michalski, R.S., 16, 18
Indurkhya, N., 1, 7, 18 Mitchell, T.M., 20, 48
Motoda, H., 245, 246, 276
Janikow, C.Z., 61, 64, 67, 87 Mowforth, P., 227, 275
Índex d’Autors 313
Muggleton, S., 21, 49, 226, 275 Sipper, M., 114, 165
Murphy, P.M., 115, 166, 222, 224, 275 Smith, A.R., 104, 109
Murray, D., 8, 17 Smith, J.W., 226, 275
Murthy, S., 31, 48 Smith, S.F., 68, 87
Spears, W.M., 60, 61, 87, 131, 166, 168
Neri, F., 68, 87 Spiehler, F., 225, 275
Nowlan S.J., 106, 109 Steinbrunn, W., 225, 275
Stone, C., 30, 48, 222, 275
Oates, M.J., 115, 165
Sutherland, A., 226, 275
Oslhen, R., 30, 48, 222, 275
Oszu, M.T., 7, 15, 17 Ullman, J.D., 7, 15, 17, 18, 92
Utgoff, P.E., 31, 48
Parodi, A., 85
Parsaye, K., 9, 18 Valduriez, P., 7, 15, 17
Pelikan, M., 84, 88, 178, 182, 218 Van de Merckt, T., 30, 48
Perrucci, A., 82, 88 Vapnik, V., 37, 40, 49
Pfisterer, M., 225, 275 Volper, D., 31, 48
Platt, J., 47, 49, 235, 275 Von Neumann, J., 92, 97
Poundstone, W., 96, 109 Vos, C., 227, 228, 275
Prusinkiewicz, P., 104, 109
Wang, L., 77, 89
Quinlan, J.R., 16, 44, 48, 49, 112, 166, Weiss, S.M., 1, 7, 18
234, 275 Wettschereck, D., 257, 276
Whitley, D., 115, 165
Rasmussen, S., 107, 109
Widom, J., 7, 15, 17
Ray, T.S., 104, 109
Widrow, B., 83, 88
Rechenberg, I., 51, 53, 87, 204, 218
Wilson, R.D., 158, 159, 166, 276
Regincós, J., 228, 275
Wilson, S.W., 76, 82, 84, 85, 88, 115,
Reitman, J.S., 69, 73, 88
165, 221, 233, 275
Reynolds, C.W., 98, 99, 109
Wing, S.P., 226, 275
Robertson, G.G., 115, 165
Witten, I.H., 1, 7, 9, 15, 18, 32, 37, 41–
Sachs, L., 249, 276 46, 48, 49, 164, 165, 233, 235,
Salamó, M., 231, 275 246–248, 275, 276
Salzberg, S., 31, 48 Wolberg, W.H., 224, 275
Sampson, S., 108 Wolfram, S., 96, 97, 109
Sandhu, S., 225, 275
Zadeh, L.A., 34, 49
Saxon, S., 88, 115, 165
Schmid, J., 225, 275
Schwefel, H.P., 51, 53, 87
Sejnowski, T.J., 226, 275
Shaffer, J., 77, 78, 88, 255, 276
Shawe-Taylor, J., 38, 49
Shepherd, B., 227, 275
Shih, Y.S., 224, 275
Shu, L., 77, 78, 88, 255, 276
Sigillito, V.G., 226, 275
314 Índex d’Autors
Índex Alfabètic
regla del gradient, 88 SMO, 44, 47, 49, 235, 269, 271, 273,
regla delta, 83 275
regles de classificació, 16 soroll, 36
regles de derivació, 104 sostenible, 138, 139
regressió speedup, 118, 168, 170, 172, 216, 217
lineal, 37 split, 116, 129, 135–138, 170, 175, 185,
lineal multiresposta, 37 196, 209, 289
simbòlica, 11 SPMD, 128
repartiment de crèdit, 69, 71, 73 stratified cross-validation, 248
representació del coneixement, 11, 15, stratified ten-fold cross-validation, 248
19, 21, 68, 111, 112, 116, 129, Student, 249, 250, 269, 276
143 subasta, 73
arbres de decisió, 11, 27 subhasta, 81
basada en instàncies, 11, 34 subpoblació, 118
lineal extesa, 37 subsumpció, 107
models estadı́stics, 41 subsumpció dins el conjunt d’acció, 84
regles, 11, 32, 57 subsumption deletion, 84
resolució, 33 sufragi universal, 68, 142
roulette wheel selection, 77, 84 superpoblat, 138, 139
rule system, 69 support vector machines, 37, 38
support vectors, 40
s-expressions, 82 survival, 116, 129, 138, 139, 175, 185,
scheduling, 117 190, 192, 194, 200, 209, 212,
schema, 176 217, 289
SCS, 80 SVM, 37
selecció, 56 sweet spots, 98
selecció de les dades, 8
selecció per competició, 186, 187 take over, 196
selecció proporcional, 77 TAO, 26, 223
selection proportion, 76 taules de decisió, 16
selective superiority problem, 249 ten ten-fold cross-validation, 248
selector drop, 67 test, 116, 235
SGA, 186–188, 190, 191, 217 test de Student, 249
sharing, 79 TGA, 186
co-evolutiu, 89 TGA2, 187, 188, 190, 191, 194, 210,
Simple Classifier System, 80 212, 215
sistema classificador, 233 TGA8, 187, 188, 190, 191, 194, 210,
sistema de regles, 69, 71 212, 215
sistema gestor de basses de dades, 281 Tierra, 104, 106
sistemes time stamp, 83, 84
classificadors, 69, 101, 119, 245, 251, tinina, 54
276 tipus d’atribut, 112
d’aprenentatge, 58 Topologia, 116
sistemes analı́tics, 8 tournament selection, 186
sistemes transaccionals, 7 transformació
Índex Alfabètic 321
d’arbres de decisió, 33
de dades, 8
travelling salesman problem, 54
TSP, 54
univers d’instàncies, 24
utilitat de la categoria, 13
validació creuada
estratificada, 248
validació creuada estratificada, 251, 269
valors desconeguts, 15
veı́ més pròxim, 46, 234, 257, 275
vector de votació, 142
vectors de suport, 40, 273, 280
Venus, 107
vida artificial, 13, 91, 101, 281
virus, 107
votació
classe majoritària, 36
WEKA, 235
Wilcoxon, 249, 250, 269, 271, 273, 276
workers, 117
ZCS, 85
322 Índex Alfabètic