20
IA en el Póker Online Clasificador Preflop Presentación Final Raúl Martínez Fernández Antonio Díaz Ponce Javier García-Cuerva Velasco La Inteligencia Artificial en las Organizaciones 2009-2010

Presentacion final

Embed Size (px)

Citation preview

IA en el Póker OnlineClasificador Preflop

Presentación Final

Raúl Martínez FernándezAntonio Díaz PonceJavier García-Cuerva Velasco

La Inteligencia Artificial en las Organizaciones 2009-2010

Índice

• Problema a resolver

• Obtención de datos

• Procesado de los datos• Procesado de los datos

• Exploración de los datos (Weka)

• Técnicas de selección de atributos (Weka)

• Experimenter (Weka)

La Inteligencia Artificial en las Organizaciones 2009-2010

Problema a resolver

Clasificador de manos preflop

Recuerdo

Jugadores de Póker Online

Texas Hold’em Sin Límite

La Inteligencia Artificial en las Organizaciones 2009-2010

Extracción de Conocimiento

BBDD

Obtención de los datos

• No pagar por datos�Dificultades�Usuarios de poquer-red

Recuerdo

La Inteligencia Artificial en las Organizaciones 2009-2010

101 Ficheros xml

100.000 manos

Sólo manos si showdown

1795 jugadores

10710 manos

Procesado de los datos

• Programa en Java:

• Leer todos los ficheros

• Extraer los patrones

Nueva extracción de información

• Extraer los atributos• 3 atributos nuevos

• Clases a utilizar

• Arreglar los errores en los datos:• Manos con jugadores Sit out (caídos)

• Una mano con jugadores no pertenecientes a la mano

La Inteligencia Artificial en las Organizaciones 2009-2010

Menos manos

10710 ���� 10708

• CiegaPequena• CiegaGrande• Hora• Minuto• JugadoresTotales• PosicionJugador6• FichasJugador6

Procesado de los datosExtracción, con los nuevos 3 atributos

• MiPosicion• PaloCarta1• ValorCarta1• PaloCarta2• ValorCarta2

Añadimos 3 atributos: •La posición del

jugador en la mesa•Si las cartas son

pareja o no• FichasJugador6• PosicionJugador5• FichasJugador5• PosicionJugador4• FichasJugador4• PosicionJugador3• FichasJugador3• PosicionJugador2• FichasJugador2• PosicionJugador1• FichasJugador1

La Inteligencia Artificial en las Organizaciones 2009-2010

• Suited• Pareja• Consecutivas• ValorSubida1• ValorSubida2• ValorSubida3• ValorSubida4• ValorSubida5

pareja o no•Si las cartas son

consecutivas o no

Procesado de los datosNuevos atributos

Ciega Pequeña

Ciega Grande Hora Minuto

Nº Jugadore

s

Jugador 6ª

posiciónStack 6º Jugador … MiPosición

0.5 1.0 0.0 32.0 6.0 6.0 1.0E7 … 1.00.5 1.0 23.0 1.0 6.0 6.0 1.0E7 … 2.00.5 1.0 23.0 1.0 6.0 6.0 1.0E7 … 2.0

La Inteligencia Artificial en las Organizaciones 2009-2010

0.5 1.0 23.0 1.0 6.0 6.0 1.0E7 … 2.0

Palo Carta

Valor Carta

Palo Carta

Valor Carta Suited Pareja Consecutivas

Subida

nº 2

Subida nº 1

Subida nº 2 …

Subida nº 5 Accion

1.0 13.0 2.0 10.0 0.0 0.0 0.0 0.0 0.0 0.0 … 0.0 1.0

2.0 1.0 4.0 3.0 0.0 0.0 0.0 0.0 0.0 0.0 … 0.0 1.0

2.0 12.0 2.0 11.0 1.0 0.0 1.0 1.0 0.0 1.0 … 0.0 3.0

Exploración

• patrones.arff:10708 patrones, 100.000 manos, 1795 jugadores

• Clases a utilizar:

• 4 clases {0,1,2,3} � Valores Continuos (Aunque es Clasificación)

• 0: Apuesta de $0 � 1050 patrones � 9,8%

• 1: Apuesta entre $0 y $2.5 � 3868 patrones �36,1%

• 2: Apuesta entre $2.5 y $5 � 4193 patrones � 39,2%

Clases

• 2: Apuesta entre $2.5 y $5 � 4193 patrones � 39,2%

• 3: Apuesta superior a $5 � 1597 patrones� 14,9%

La Inteligencia Artificial en las Organizaciones 2009-2010

ExploraciónResultados Clasificadores

Clasificadores Lineales Algoritmo % Aciertos % Error Absoluto

Media Aciertos =49,1028% SMO 49.2447 % 90.2991 %

Media Error = 87,5366% Logistic 51.1673 % 88.441 %

Simple Logistic 51.2222 % 88.6475 %

Perceptrón Simple 41.582 % 88.0926 %

Naive Bayes 45.9489 % 88.2112 %

Bayes Net 55.4518 % 81.5284 %

Clasificadores No Lineales Algoritmo % Aciertos % Error Absoluto

Media Aciertos = 60,4144% J48 62.4554 % 61.4247 %

La Inteligencia Artificial en las Organizaciones 2009-2010

Media Error =69,8297%

Presentación

Intermedia:

•MLP:

Aciertos 46.0317 %

•J48:

Aciertos: 47.8369 %

OrdinalClassClassifier (J48) 62.4828 % 62.8628 %

Multilayer Perceptron

(train=66%)

60.8624 % 71.6913 %

OrdinalClassClassifier (MLP

train=66%)

60.1208 % 67.9233 %

Multilayer Perceptron

(test=train)

61.8043 % 70.5073 %

OrdinalClassClassifier (MLP

test=train)

64.4938 % 63.7474 %

RBFNetwork 52.2384 % 86.9388 %

REPTree 58.8575 % 73.5421 %

Selección de atributos

• Métodos de Selección de Atributos:

• Evaluación individual de atributos (Ranker)

• Evaluación de subconjuntos de atributos

• Filter: se evalúan los atributos de manera individual, pero tiene en cuenta la redundancia entre atributos.

•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).

Teoría

tiene en cuenta la redundancia entre atributos.

• Wrapper: se evalúan de manera conjunta. Bueno , pero lento

• Hay que definir:

• Una manera de moverse por el espacio de búsqueda (método de búsqueda)

• Una manera (medida) de evaluar subconjuntos de atributos (evaluador de atributos)

La Inteligencia Artificial en las Organizaciones 2009-2010

Selección de atributosTécnicas Usadas

1. Ranker:

•Evaluador de atributos: ChiSquaredAttributeEval•Método de búsqueda: Ranker.

2. Filter:

•Evaluador de atributos: CfsSubsetEval

La Inteligencia Artificial en las Organizaciones 2009-2010

•Evaluador de atributos: CfsSubsetEval•Método de búsqueda: GreedyStepwise

3. Wrapper:

•Evaluador de atributos: ClassifierSubsetEval•Clasificador: PART•Método de búsqueda: GreedyStepwise.

Selección de atributos

• Ranker: 30 atributos ordenados de mejor a peor

• Filter: los mejores 9 atributos, sin redundancia

• Wrapper (12 horas): los mejores 16 atributos.

•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).

Resultados

1. Hora2. Minuto

La Inteligencia Artificial en las Organizaciones 2009-2010

2. Minuto3. JugadoresTotales4. MiPosicion5. PaloCarta16. ValorCarta17. PaloCarta28. ValorCarta29. Suited10. Pareja11. Consecutivas12. ValorSubida113. ValorSubida214. ValorSubida315. ValorSubida4

Tienen mucho sentido para un jugador profesional

Pensamos que si usamos J48

y MLP, obtendremos los mejores resultados

Selección de atributosUsando Clasificadores (J48 y MLP)

Número Atributos % Aciertos J48 % Aciertos MLP

5 53.337 % 44.9602 %

10 59.1046 % 52.3483 %

15 64.0483 % 60.7525 %

20 64.3505 % 62.8673 %

25 62.1533 % 61.8511 %

1. Ranker:

La Inteligencia Artificial en las Organizaciones 2009-2010

25 62.1533 % 61.8511 %

30 62.0983 % 60.3406 %

2. Filter:

3. Wrapper:

% Aciertos J48 % Aciertos MLP

58.83 % 52.4032 %

% Aciertos J48 % Aciertos MLP

61.5216 % 61.4392 %

Selección de atributosComparativa Técnicas

Selector de

atributos

% Aciertos

J48

% Aciertos

MLP

Ranker (20

atributos)

64.3505 % 62.8673 %

Los mejores clasificadores con las técnicas de selección

de atributos:

La Inteligencia Artificial en las Organizaciones 2009-2010

atributos)

Filter (9 atributos) 58.83 % 52.4032 %

Wrapper (16

atributos)

61.5216 % 61.4392 %

Sin selección de

atributos (30

atributos)

62.4554 % 60.8624 %

Aprendizaje de las clasesMatriz de Confusión

J48 MLP

Ranker con 20 atributos, ofrece mejores resultados:

J48 (Porcentaje de aciertos:TP Rate)

La Inteligencia Artificial en las Organizaciones 2009-2010

MLP (Porcentaje de aciertos:TP Rate)

Aprendizaje de las clasesEquilibrado de Clases

J48 (sin metacost)

MetaClasificador : MetaCost, recibe un clasificador y una matriz de costes

J48 (con metacost)

La Inteligencia Artificial en las Organizaciones 2009-2010

MLP (sin metacost) MLP (con metacost)

ExperimenterExperimentos

Dataset (1) trees.J48 '-C | (2) functions.M--------------------------------------------------- -----------

• Aplicar varios algoritmos y estadísticamente ver cuál es mejor•Usaremos los mejores algoritmos y los mejores datos•Haremos validación cruzada para evitar sesgos•10 repeticiones para cada experimento

J48 (base) MLP

La Inteligencia Artificial en las Organizaciones 2009-2010

--------------------------------------------------- -----------'PatronesNL100-weka.filte(100) 61.52(1.50) | 61 .60(1.78) 'PatronesNL100-weka.filte(100) 64.34(1.46) | 61 .43(1.67) *--------------------------------------------------- -----------

(v/ /*) | (0/1/1)

Wrapper

Ranker(20 atributos)

(X,Y,Z) X: datasets donde el algoritmo es mejor que el baseY: datasets donde no es ni mejor ni peor.Z: datasets, donde el algoritmos es peor que el base

ExperimenterComparativa con Exploración

Técnica usada J48 MLP

%Aciertos Explorer

(Wrapper)

61.5216 % 61.4392 %

%Aciertos Experimenter 61.52 % 61.60%

• Con los resultados del experimenter podemos descartar que lacasualidad nos hiciera obtener los resultados que obtuvimos en la fasede exploración

La Inteligencia Artificial en las Organizaciones 2009-2010

%Aciertos Experimenter

(Wrapper)

61.52 % 61.60%

%Aciertos Explorer

(Ranker)

64.3505 % 62.8673 %

%Aciertos Experimenter

(Ranker)

64.34 % 61.43 %

• Resultados del Experimenter son bastante parecidos a los del Explorer• MLP llega a mejorar a J48• El mejor resultado sigue siendo J48 con Ranker con 20 atributos

ConclusionesBalance Positivo

• Pasamos de un 46% a un 64%:• Añadiendo nuevos atributos• Haciendo una buena exploración de los mejores algoritmos• Haciendo una buena selección de atributos

La Inteligencia Artificial en las Organizaciones 2009-2010

• Haciendo una buena selección de atributos• Son resultados buenos si tenemos en cuenta:

• El factor humano es muy importante, ya que es difícil aprenderlo•Dificultad para encontrar unos datos• Usamos datos de varios jugadores, siendo mejor de un solo jugador•Errores en los datos iniciales (stacks descomunales)

PREGUNTAS?

La Inteligencia Artificial en las Organizaciones 2009-2010