Aprendizaje en los Sistemas Multi-Agentes BDI ·...

53
Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias Aprendizaje en los Sistemas Multi-Agentes BDI Dr. Alejandro Guerra-Hernández Universidad Veracruzana Centro de Investigación en Inteligencia Artificial https://www.uv.mx/personal/aguerra [email protected] VI Foro de Divulgación en Ciencias de la Computación DCC/MSICU/CA Tecnología Computacional y Educativa Facultad de Estadística e Informática 6–7 de Noviembre de 2017 1 / 53

Transcript of Aprendizaje en los Sistemas Multi-Agentes BDI ·...

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Aprendizaje en los Sistemas Multi-Agentes BDI

Dr. Alejandro Guerra-HernándezUniversidad Veracruzana

Centro de Investigación en Inteligencia Artificialhttps://www.uv.mx/personal/aguerra

[email protected]

VI Foro de Divulgación en Ciencias de la ComputaciónDCC/MSICU/CA Tecnología Computacional y Educativa

Facultad de Estadística e Informática6–7 de Noviembre de 2017

1 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Agentes

I Un sistema computacional capaz de actuar de maneraautónoma en medio ambiente para satisfacer sus objetivos.

Ambiente

agentePercepción

Acción

I Exhiben un comportamiento flexible, pro-activo y sociable.I Ejemplos: Robots, asistentes personales, controladores de

vuelos, monitoreo de redes telefónicas.

2 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Sistema Multi-Agente

I Las metas y habilidades de cada agente, así como los recursosdisponibles dan lugar a interacciones cooperativas ycompetitivas.

Medio ambienteAgenteInteracciónOrganización

3 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Fundamentos filosóficos BDI

I Daniel Dennett. La postura intencional.Adscribir creencias, deseos (metas), intenciones alos demás, para interpretar su comportamiento.

I John Searle. Comunicación basada en actos dehabla. Informar, ordenar, preguntar, instruir, sonmensajes intencionales.

I Michael Bratman. Razonamiento práctico. Lasintenciones son planes parciales, jerárquicos ydinámicos que se adoptan intencionalmente.

4 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Intencionalidad en la computación

I John McCarthy. La postura intencional en laInteligencia Artificial puede ser legítima y útil,aunque no necesaria.

I Anand Rao. Modelos formales (BDICTL,AgentSpeak(L)) para el diseño, implementacióny verificación de Arquitecturas BDI (dMARS).

I Yoav Shoham. Programación Orientada aAgentes (Agent0). Sintaxis y SemánticaOperacional BDI.

5 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

AgentSpeak(L): Sintaxis

ag ::= bs ps gsbs ::= b1, . . . , bn (n ≥ 0)b ::= lit | rule ground(lit)lit ::= at | ∼ atat ::= p(t1, . . . , tn) (p ∈ Pred , n ≥ 0)

| p(t1, . . . , tn)[s1, . . . , sm] (p ∈ Pred , n ≥ 0,m > 0)s ::= percept | self | idrule ::= lit :- fbffbf ::= lit | ¬fbf | fbf ∧ fbf | fbf ∨ fbft ::= X | f | f (t1, . . . , tn) (X ∈ Var , f ∈ Func, n ≥ 1)ps ::= p1, . . . , pn (n ≥ 1)p ::= te : ct ← hte ::= +lit | − lit | + g | − gct ::= fbf | >h ::= h1;> | >h1 ::= a | u | g | h1; h1a ::= ac(t1, . . . , tn) (ac ∈ Actn, n ≥ 0)u ::= +b | − litg ::= !lit | ?litgs ::= g1, . . . , gn (n ≥ 0)

6 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

AgentSpeak(L): Programa

1 /* Initial beliefs and rules */2

3 clear(table).4 clear(X) :- not(on(_,X)).5

6 /* Plans */7

8 +!put(X,Y) : true <-9 move(X,Y);

10 .print("Yeah, I did the task succesfully");11 .send(experimenter,tell,experiment(done)).12

13 -!put(X,Y) : true <-14 .print("I’ve failed :- (");15 .send(experimenter,tell,experiment(done)).

7 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

AgentSpeak(L): Semántica Operacional

I Basada en un autómata γ = 〈ag ,C ,M,T , s〉

ProcMsg

SelEv RelPl ApplPl

SelAppl

AddIM

SelInt

ExecInt

ClrInt

SelEv2

SelEv1 Rel1

Rel2

Appl1Appl2

SelApplExtEvIntEv

SelInt1

SelInt2

Action

AchvGl

TestGl1TestGl2

AddBelDelBel

ClrInt2

ClrInt1ClrInt3

I C = 〈I ,E ,A〉, intenciones, eventos y acciones. M es unbuzón de mensajes.

8 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Un framework BDI: JaCaMo

Ambiente

Nodo de red

art2

Artefacto

art1

art3

Espacio detrabajo

art4 art5

art6 art7

Abstracción del ambiente

Agente

Agentes

ag1

ag2 ag3

Jaso

nC

ArtA

gO

Accciones

Actos dehabla

Ligado

Creencias

Métodos Java

ingresar/salirPropObsNombre(Args)

...

Señales

◯ OpNombre(Params)

◯ ...

Propiedadesobservables

Operaciones

IdNombre de Artefacto

Moi

se

Misión

Rol

Adoptar

Esquema

Organización

Grupo

9 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Aprendizaje

I Un programa de computadora aprende de una experiencia, conrespecto a una tarea y una medida de desempeño, si sudesempeño mejora con la experiencia.

I Ejemplo: Damas chinas:I Tarea: Jugar damas chinas.I Desempeño: Porcentaje de partidas perdidas.I Experiencia: Jugar contra si mismo (Aprendizaje por refuerzo).

I ¿Cómo aprender en términos BDI? Aprendizaje intencional.

10 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Descubrimiento de Conocimiento y Minería de datos

Datos Datos objetivo

Selección

PreProceso

Datos preprocesados

Datos transformados

Transformación

Minería de Datos

Patrones

Interpretación / Evaluación

Conocimiento

I ¿Cómo dar soporte con agentes BDI? Minería de Datosbasada en agentes

11 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Justificación

ProcMsg

SelEv RelPl ApplPl

SelAppl

AddIM

SelInt

ExecInt

ClrInt

SelEv2

SelEv1 Rel1

Rel2

Appl1Appl2

SelApplExtEvIntEv

SelInt1

SelInt2

Action

AchvGl

TestGl1TestGl2

AddBelDelBel

ClrInt2

ClrInt1ClrInt3

// Beliefson(b,a).on(a,table).on(c,table).on(z,table).

// Rules Believedclear(X) :- not(on(_,X)).clear(table).

// Desires!put(b,c).

// Plans (bold agent)@put+!put(X,Y) : true<- move(X,Y).

I ¿Qué sucede si tras intentar put alguien pone z en c?I ¡No había ningún modelo de aprendizaje BDI!

12 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

¿Cómo aprender intencionalmente?

I ¿Qué componente del agente será mejorado? El contexto delos planes. Bajo que condiciones un plan como intención ycuando la abandono.

I ¿Qué retroalimentación se usa para aprender? El éxito ofracaso de las intenciones y el contexto de su ejecución.

I ¿Qué conocimiento previo hay disponible? Lo que el agentesabe creencias y planes.

I ¿Qué representación es usada para los componentes? UnaLógica de primer orden.

13 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Inducción de Arboles Lógicos de Decisión

Base conocimientos (Ejemplos)

begin(model(1))fail.intend(put,b,c).on(b,a).on(a,table).on(c,table).on(z,c).end(model(1))

intend(put, A, B), clear(A)

succ

failclear(B)

fail

Bias lenguaje (Candidatos)

rmode(clear(+V1)).rmode(on(+V1,+V2))....lookahead(intend(put,V1,V2),clear(V1)).lookahead(intend(put,V1,V2),clear(V2))....

Conocimiento previo (Reglas)

clear(X) :- not(on(_,X)).clear(table).

14 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Algoritmo de aprendizaje: Tilde

procedure buildTree(E,Q) . E is a set of examples, Q a query← Qb := best(ρ(← Q)) . best max information gainif stopCriteria(← Qb)) then . E.g., No information gain obtained

T := leaf (majority_class(E))else

Conj ← Qb\QE1 ← {e ∈ E | e ∧ B |= Qb}E2 ← {e ∈ E | e ∧ B 6|= Qb}buildTree(Left,E1,Qb) ;buildTree(Right,E2,Q)T ← node(Conj , Left,Right)

end ifreturn T . The built tree

end procedure

I Implementado como una acción interna

15 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Una librería para Jason: Jildt

+ suspendIntention(): boolean + execute(TransitionSystem, Unifier, Term[]): Object

DefaultInternalAction

+ suspendIntention(): boolean + execute(TransitionSystem, Unifier, Term[]): Object

InternalAction

+ execute(TransitionSystem, Unifier, Term[]): Object

getCurrentCtxt

+ execute(TransitionSystem, Unifier, Term[]): Object

setLearningMode

+ execute(TransitionSystem, Unifier, Term[]): Object

setSMLearningMode

+ execute(TransitionSystem, Unifier, Term[]): Object

getCurrentBels

+ execute(TransitionSystem, Unifier, Term[]): Object

execTilde

+ execute(TransitionSystem, Unifier, Term[]): Object

setTilde

+ execute(TransitionSystem, Unifier, Term[]): Object

changeCtxt

+ execute(TransitionSystem, Unifier, Term[]): Object

addDropRule

+ execute(TransitionSystem, Unifier, Term[]): Object

getCurrentInt

+ execute(TransitionSystem, Unifier, Term[]): Object

getLearnedCtxt

16 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Clases de Agente

I IntentionalLearner

SelEv RelPl

SelInt

ClrInt

ExecInt AddIM

SelAppl

AppPl

ProcMsg

Rel2

SelEv1 Rel1

Appl2 Appl1 SelEv2

SelAppl SelInt1 ExtEv

IntEv

SelInt2

Action TestGl1 TestGl2

AddBel DelBel

ClrInt1 ClrInt3

AchvGl

ClrInt2

-!put(b,c)

fail

+!learning(put)

I SingleMindedLearner

SelEv RelPl

SelInt

ClrInt

ExecInt AddIM

SelAppl

AppPl

ProcMsg

Rel2

SelEv1 Rel1

Appl2 Appl1 SelEv2

SelAppl SelInt1 ExtEv

IntEv

SelInt2

Action TestGl1 TestGl2

AddBel DelBel

ClrInt1 ClrInt3

AchvGl

ClrInt2

-!put(b,c)

fail

+!learning(put)

SelInt3

17 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Experimento

experimenter default learner singleMinded

Initial State

a c zb

!put(b,c)!put(b,c)

!put(b,c)

success

a c zb

done(success)

done(success)

done(sucess)

p(N) failure

a czb

done(failure) Learning

failure before

a czb

done(failure)

+rejected_intention

p(L) failure after

a czb

done(failure)done(failure)

+dropped_intention

+rejected_intention

Learning

18 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Racionalidad

19 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Trabajos sobre Aprendizaje Intencional

I Un modelo de aprendizaje BDI implementado en Lisp [5].I Una aproximación formal al aprendizaje y la reconsideración de

intenciones (CTLAgentSpeak) [4].I La librería Jildt para el aprendizaje intencional en Jason [6].I Una semántica operacional del aprendizaje intencional [2].I Un intento de modelar aprendizaje social [3].

20 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Descarga de Jildt

I Repositorio:http://sourceforge.net/projects/jildt/files/

I Página web: http://jildt.sourceforge.netI Requisitos:

I Jason >= 1.3.XI Java >= 1.6

21 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Herramientas para Minería de Datos

I Weka y MOA.I Representación uniforme de ejemplos, atributos, modelos, etc.I Herramientas de evaluación de modelos.I Soporte: Libro, documentación, comunidad activa, etc.I Diversos algoritmos, código abierto, para:

Minería de Datos Transformación Meta-AprendizajeÁrboles de decisión Selección de atributos Bagging

Reglas Discretización BoostingModelos lineales Proyección Combinación de modelos

Modelos basados en casos Muestreo Regresión aditivaPredicción numérica Calibración StackingModelos bayesianos etc. etc.Redes neuronales

ClusteringFlujos

22 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Justificación

I El proceso KDD es demasiado complejo: Automatizar flujos detrabajo.

I Se puede complicar más: BigData, Minería Distribuida.

DA

D1A1

D2A2

D2A3

VS

D1A1

2

23 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Consideraciones

I Distribución de los datos.I Algoritmos centralizados.I Datos heterogéneos.I Comunicación.I Privacidad.I Cómputo concurrente y/o distribuido.I Datos cambiantes y/o crecientes.I Escalabilidad.

24 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Posibles soluciones

dsj

ds1 J48ds0

Centralización de Datos Distribución del Aprendizaje

dsj

ds1 ds0

J48

J48

J48

ConocimientoConocimiento

25 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

JaCa-DDM

I Una herramienta para diseñar, implementar, desplegar yevaluar estrategias de aprendizaje distribuido.

I Su modelo abstracto tiene dos constructores básicos:

Estrategia JaCa-DDM. Flujo de trabajo basado en agentes yartefactos basados en Weka y MOA.

Sistema de Despliegue JaCa-DDM. La manera en que loscomponentes del sistema se ubican en laarquitectura de cómputo distribuida donde seejecutará la estrategia. Basada en nodosCArtAgO.

26 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Arquitectura JaCa-DDM

node0

node1 …

Ja Ca ws0

Ca ws1

… nodej

dsj

Ca wsj

ds1

ag0

ag1 agn

art2

art1

art7

art6

artm

art4

art3

art5

join

createcommunicate

link

createperceive

use

27 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Tipos de artefactos predefinidos

Tipo de Artefacto DescripciónClassifierXXX Classificadores: J48, VFDT, Bagging.Directory Localización de agentes y artefactos.Evaluator Evaluación de modelos basada en Weka.GUI Una intefaz gráfica.FileManager Manejador de archivos ARFF.InstancesBase Repositorio de ejemplos de aprendizaje.LogBook Blog de reportes de experimentos.Oracle Un distribuidor de datos.TrafficMonitor Su uso es opcional.Utils Una navaja suiza para los agentes.

28 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Agentes obligatorios en JaCa-DDM

Responsable de Sistema de Despliegue. Es el encargado deconfigurar la arquitectura y evaluar los resultadosobtenidos (ag0).

Responsable de estrategia. Es el encargado de iniciar y terminaruna estrategia determinada (ag1).

29 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Flujo de trabajo (1)

ag0

FileManager

join

ws0

ws1

ws0

ag0

GUI creates

configuration

ag0

agn…ag1

ws0

wsj

EvaluatorLogBook

Traffic Monitor Oracle Directory

Traffic Monitor

FileManager

Traffic Monitor

GUI

FileManager

ws0ws1 wsj

EvaluatorLogBook

Traffic Monitor Oracle Directory

Traffic Monitor

FileManager

Traffic Monitor

GUI

ds

ag0

ds1 dsj

FileManager

ws1Traffic

Monitor

ds1

wsj

FileManager

Traffic Monitor

dsj

GUI

EvaluatorLogBook

Traffic Monitor Oracle Directory

ds

time

30 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Flujo de trabajo (2)

ag0

agj

…ag1

ws0 wsj

FileManager

Traffic Monitor dsj

GUI

EvaluatorLogBook

Traffic Monitor Oracle Directory

ds

ag2

Instances Base

ws2

FileManager

Traffic Monitor ds2

Instances BaseJ48-ag2 link

start

init

ag0

ag1

ws0GUI

EvaluatorLogBook

Traffic Monitor Oracle Directory

ds

ag2 ws2

FileManager

Traffic Monitor ds2

Instances BaseJ48-ag2 link

finish(J48-ag2) J48-ag2agj

time

wsj

FileManager

Traffic Monitor dsj

Instances Base

31 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Flujo de trabajo (3)

ag0

ag1

ws0

EvaluatorLogBook

Traffic Monitor Oracle Directory

ds

ws2

FileManager

Traffic Monitor ds2

Instances BaseJ48-ag2

agj

wsj

FileManager

Traffic Monitor dsj

Instances Base

results GUI

evaluate

32 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Estrategias incluídas en JaCa-DDM

I Centralizadas:I CentralizedI Centralized Bagging

I Centralizantes:I CentralizingI Round

I Basadas en Meta-Aprendizaje:I Distributed BaggingI Random Forest

I Basadas en Windowing:I CounterI Round CounterI Parallel Round CounterI Counter GPUI Parallel Counter GPUI Parallel Counter GPU Extra

33 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Estrategia centralizante

Centralizinginteraction

ag1 sender1ag0

1 : !start

2 : !start

3 : makeArtifact(instances-sender1)

4 : feedExamplesFromFile(File,Atts)

5 : atts(Atts,Num)

6 : ready

7 : !waitAllReady

8 : makeArtifact(j48-ag1)

9 : !sendExamples(j48-ag1)

10 : sendAllExamples(j48-ag1)

11 : finish

12 : !waitAllFinish

13 : induce

14 : finish(j48-ag1)

34 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Windowing

Algoritmo

1: function Windowing(Exs)2: Window ← sample(Exs)3: Exs ← Exs −Window4: repeat5: stopCond ← true6: model ← induce(Window)7: for ex ∈ Exs do8: if classify(model , ex) 6= class(ex) then9: Window ←Window ∪ {ex}10: Exs ← Exs − {ex}11: stopCond ← false12: end if13: end for14: until stopCond15: return model16: end function

Ventajas

I Reduce ejemplos.I Mantiene precisión.

Desventajas

I Costo inducción.I Costo clasificación.

35 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Estrategia contra ejemplos

36 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Bases de Datos usadas.

Datos Ejemplos Atributos Clasesadult 48842 15 2australian 690 15 2breast 683 10 2credit-g 1000 21 2covtypeNorm 581012 55 7diabetes 768 9 2ecoli 336 8 8german 1000 21 2hypothyroid 3772 30 4imdb-D 120919 1002 2kr-vs-kp 3196 37 2letter 20000 17 26mushroom 8124 23 2poker 829201 11 10segment 2310 20 7sick 3772 30 2splice 3190 61 3waveform-5000 5000 41 3

37 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Precisión vs Ejemplos usados (Forest Plots)

38 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Tiempo vs Tráfico

39 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Optimización con GPUs

Transform

Parallel Search of Counter Examples

Counter Examples Reduction

Filtering Counter Examples

J48 Weka Classifier

Counterexamples

Decision Tree for GPU

Counter ExamplesIndexes

GPU

CPU

Add Examples to the Window

40 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Cluster

node0

node1 …

Ja Ca ws0

Ca ws1

… nodej

dsj

Ca wsj

ds1

ag0

ag1 agn

art2

art1

art7

art6

artm

art4

art3

art5

join

createcommunicate

link

createperceive

use

I 2 procesadores Xeon a 2.40GHz, con 4 cores, dos hilosc/u.

I 24 GB of RAM.I GPU Tesla C2050 con 448

cores, 6 GB de memoria.

41 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Parallel Counter GPU Extra

I Reducir el tamaño de la ventana:

+ + + ++ + + - -

- - -Correctly classified

examples Alike counter examples

42 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Datos

Datos Ejemplos Atributos Clasesairlines 539383 8 2covtypeNorm 581012 55 7KDDCup99 4898431 42 23poker-lsn 829201 11 10pixelSegCancer [1] 1434060 31 2

43 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Precisión

Dataset Estrategia Precisión Test de Wilcoxonairlines Parallel Counter GPU Extra 65.36 ± 0.25 –airlines Weka Centralized 66.34 ± 0.11 Wonairlines Parallel Counter GPU 66.26 ± 0.12 Wonairlines Centralizing VFDT 65.24 ± 0.27 Tieairlines Bagging 66.45 ± 0.13 Wonairlines Random Forest 66.76 ± 0.11 WoncovtypeNorm Parallel Counter GPU Extra 92.17 ± 0.52 –covtypeNorm Weka Centralized 94.59 ± 0.04 WoncovtypeNorm Parallel Counter GPU 93.10 ± 0.34 WoncovtypeNorm Centralizing VFDT 76.83 ± 0.35 LostcovtypeNorm Bagging 94.99 ± 0.10 WoncovtypeNorm Random Forest 78.34 ± 0.39 LostKDDCup99 Parallel Counter GPU Extra 99.98 ± 0.01 –KDDCup99 Weka Centralized 99.99 ± 0.01 TieKDDCup99 Parallel Counter GPU 99.96 ± 0.01 LostKDDCup99 Centralizing VFDT 99.97 ± 0.01 LostKDDCup99 Bagging 99.99 ± 0.01 TieKDDCup99 Random Forest 99.97 ± 0.01 Lostpoker-lsn Parallel Counter GPU Extra 99.53 ± 0.59 –poker-lsn Weka Centralized 99.78 ± 0.01 Tiepoker-lsn Parallel Counter GPU 98.67 ± 0.46 Lostpoker-lsn Centralizing VFDT 87.78 ± 1.92 Lostpoker-lsn Bagging 99.71 ± 0.01 Tiepoker-lsn Random Forest 96.73 ± 0.25 Lost

44 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Memoria y Tiempo

Dataset Estrategia %Ejemplos Tiempo(Segs.)airlines Parallel Counter GPU Extra 51.21 ± 0.03 435.04 ± 106.28airlines Weka Centralized 100.00 ± 0.00 1164.66 ± 211.76airlines Parallel Counter GPU 94.95 ± 0.01 1810.78 ± 446.47airlines Centralizing VFDT 100.00 ± 0.00 4.67 ± 0.53airlines Bagging 100.00 ± 0.00 144.67 ± 4.47airlines Random Forest 100.00 ± 0.00 123.82 ± 3.89covtypeNorm Parallel Counter GPU Extra 43.28 ± 0.04 817.30 ± 253.27covtypeNorm Weka Centralized 100.00 ± 0.00 855.41 ± 97.88covtypeNorm Parallel Counter GPU 48.44 ± 0.01 1089.03 ± 277.06covtypeNorm Centralizing VFDT 100.00 ± 0.00 8.96 ± 0.56covtypeNorm Bagging 100.00 ± 0.00 149.35 ± 5.37covtypeNorm Random Forest 100.00 ± 0.00 44.47 ± 4.38KDDCup99 Parallel Counter GPU Extra 4.29 ± 0.01 93.23 ± 6.671KDDCup99 Weka Centralized 100.00 ± 0.00 1688.91 ± 363.89KDDCup99 Parallel Counter GPU 9.28 ± 0.01 199.72 ± 45.62KDDCup99 Centralizing VFDT 100.00 ± 0.00 56.17 ± 1.307KDDCup99 Bagging 100.00 ± 0.00 371.51 ± 19.39KDDCup99 Random Forest 100.00 ± 0.00 132.43 ± 21.23poker-lsn Parallel Counter GPU Extra 8.80 ± 0.01 22.93 ± 3.51poker-lsn Weka Centralized 100.00 ± 0.00 174.26 ± 28.55poker-lsn Parallel Counter GPU 9.56 ± 0.01 24.90 ± 8.05poker-lsn Centralizing VFDT 100.00 ± 0.00 4.25 ± 0.47poker-lsn Bagging 100.00 ± 0.00 64.09 ± 5.49poker-lsn Random Forest 100.00 ± 0.00 236.34 ± 14.37

45 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Segmentación basada en pixeles

I Secuencias de imágenes de colposcopia, presentando posibleslesiones cervicales pre-cancerosas:

I 38 pacientes.

I 1,434,060 pixeles deentrenamiento.

I 30 atributos.

I 6 clases, agrupadas en 2.time

46 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Resultados

Estrategia Precisión Wilcoxon test Sen EspParallel Counter GPU Extra 67.61 ± 19.32 – 60.96 64.83Weka Centralized 63.68 ± 18.44 Lost 60.80 61.60Centralizing VFDT 53.34 ± 20.58 Lost 53.10 58.51Bagging 64.25 ± 21.78 Lost 65.40 59.16Random Forest 58.88 ± 23.71 Lost 68.78 49.34Acosta et al. [1] 67.00 ± n/a n/a 71.00 59.00

Estrategia % Ejemplos Tiempo (Seg.)Parallel Counter GPU Extra 37.00 ± 3.52 3782.26 ± 1094.21Weka Centralized 100.00 ± 0.00 6436.64 ± 923.16Centralizing VFDT 100.00 ± 0.00 32.03 ± 2.61Bagging 100.00 ± 0.00 1138.83 ± 108.83Random Forest 100.00 ± 0.00 1817.10 ± 179.18Acosta-Mesa et al. [1] n/a n/a

47 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Trabajos sobre JaCa-DDM

I Una implementación inicial de JaCa-DDM [7].I Un modelo basado en estrategia y despliegue y el diseño de las

estrategias predefinidas [10].I Una optimización basada en GPUs de las estrategias basadas

en Windowing [8].I Otra optimización (tamaño de ventana) y aplicación a

segmentación de imágenes [9].

48 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

El sistema

I Repositorio: http://sourceforge.net/projects/jacaddm/I Web: http://jacaddm.sourceforge.netI Ayuda: http://sourceforge.net/p/jacaddm/wiki/Home/I Requisitos:

I Jason >= 1.4.XI Java >= 1.7

I Opcionalmente:I CUDAI jcuda (http://www.jcuda.org)

49 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Trabajo Futuro

I Artefactos basados en TILDE para DDM.I Formalización e implementación del Aprendizaje Social.I Estrategias como organizaciones.I Mejorar la facilidad de uso de JaCa-DDM:

I Interfaz como un servicio WebI Herramientas basadas en DSL/AUMLI Mejorar transparencia de CArtAgO

I Analizar la relación precisión vs ejemplos.I Analizar generalización del Windowing.I Buscar Otras Aplicaciones:

I Análisis de tendencias en twitterI Simulación Social

50 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Referencias I

H-G Acosta-Mesa, N Cruz-Ramírez y R Hernández-Jiménez. “Aceto-whitetemporal pattern classification using k-NN to identify precancerous cervicallesion in colposcopic images”. En: Computers in biology and medicine 39.9(2009), págs. 778-784.

CA González-Alarcón, F Grimaldo y A Guerra-Hernández. “Jason IntentionalLearning: An Operational Semantics”. En: Progress in Artificial Intelligence.16th Portuguese Conference on Artificial Intelligence, EPIA 2013, Angra doHeroísmo, Azores, Portugal, September 9-12, 2013. Ed. por L Correia, LP Reisy J Cascalho. Vol. 8154. Lecture Notes in Artificial Intelligence. BerlinHeidelberg: Springer Verlag, 2013, págs. 432-443.

CA González-Alarcón, F Grimaldo y A Guerra-Hernández. “Instructive SocialLearning on Jason”. En: Arfificial Intelligence Research and Development.Ed. por E Armengol, D Boixader y F Grimaldo. Vol. 277. Frontiers in ArtificialIntelligence and Applications. Amsterdam, NL: IOS Press, 2015, págs. 271-274.

A Guerra-Hernández, JM Castro-Manzano y A El-Fallah-Seghrouchni. “CTLAgentSpeak(L): a Specification Language for Agent Programs”. En: Journal ofAlgorithms 64 (2009), págs. 31-40.

51 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Referencias II

A Guerra-Hernández, A El-Fallah-Seghrouchni y H Soldano. “Learning in BDIMulti-agent Systems”. En: CLIMA IV. Ed. por J Dix y J Leite. Vol. 3259.LNCS. Berlin Heidelberg: Springer-Verlag, 2004, págs. 218-233.

A Guerra-Hernández, CA González-Alarcón y AEF Seghrouchni. “JasonInduction of Logical Decision Trees”. En: MICAI 2010, Part I. Ed. por G Sidorovy A Hernández. Vol. 6437. Lecture Notes in Artificial Intelligence. BerlinHeidelberg: Springer-Verlag, 2010, págs. 374-385.

X Limón y col. “An Agents & Artifacts approach to Distributed Data Mining”.En: MICAI 2013: Eleventh Mexican International Conference on ArtificialIntelligence. Ed. por F Castro, A Gelbukh y MG Mendoza. Vol. 8266. LectureNotes in Artificial Intelligence. Berlin Heidelberg: Springer Verlag, 2013,págs. 338-349.

X Limón y col. “A windowing based GPU optimized strategy for the inductionof Decision Trees”. En: Arfificial Intelligence Research and Development.Ed. por E Armengol, D Boixader y F Grimaldo. Vol. 277. Frontiers in ArtificialIntelligence and Applications. Amsterdam, NL: IOS Press, 2015, págs. 100-109.

52 / 53

Sistemas Multi-Agente BDI Aprendizaje intencional Minería de Datos basada en Agentes Referencias

Referencias III

X Limón y col. “A Windowing strategy for Distributed Data Mining optimizedthrough GPUs”. En: Pattern Recognition Letters 93.Suplement C (2017),págs. 23-30.

X Limón y col. “Modeling and implementing Distributed Data Mining Strategiesin JaCa-DDM”. En: Knowledge and Information Systems Pre-accepted. (2017).

53 / 53