Академический Документы
Профессиональный Документы
Культура Документы
Autor:
Titulacin:
Tutor:
Fecha:
03/09/2012
ndice
1. Introduccin
2. Algoritmos Genticos
18
19
20
23
23
31
31
35
40
4. Resultados y conclusiones
45
4.1 Convergencia
45
4.2 Resultados
51
4.3 Conclusiones
60
1. INTRODUCCIN
Este trabajo tiene como objetivo principal disear estrategias ptimas en
el Pker (modalidad Texas HoldEm) mediante Algoritmos Genticos.
El Pker Texas HoldEm es un juego de cartas cuyo objetivo principal
es, para todos los jugadores, formar la mejor jugada o combinacin de cinco
cartas posible con dos cartas individuales y cinco que son comunes. Los
jugadores apostarn en funcin de sus naipes cuando lo consideren oportuno.
Se define una estrategia como un conjunto de probabilidades de llevar a
cabo acciones ante situaciones determinadas, en este caso, relacionadas con
el Pker. Encontrar una estrategia ptima se considera un problema de
optimizacin numrica muy complejo, para ello se utilizan los Algoritmos
Genticos.
Los Algoritmos Genticos son mtodos adaptativos que se emplean para
la resolucin de problemas de bsqueda y optimizacin. Permiten optimizar
funciones numricas (llamadas fitness), generalmente aplicadas sobre datos
binarios cuya naturaleza analtica es muy compleja o se desconoce por
completo y su bsqueda exhaustiva es imposible de realizar.
Una vez caracterizada la estrategia de un jugador se obtiene su valor de
fitness, correspondiente al resultado de una partida en la que compiten varios
individuos, cuyo valor determinar la generacin de nuevos individuos en el
Algoritmo Gentico.
El proceso de optimizacin imita al que tiene lugar en los
procedimientos biolgicos evolutivos, en el cual una poblacin inicial de
individuos sufre procesos como cruce (reproduccin) y mutacin originando
una nueva poblacin de individuos mejores (en este caso, soluciones a la
funcin fitness a optimizar) que sustituirn a sus predecesores, continuando as
el Algoritmo Gentico de forma iterativa hasta lograr su convergencia, lo que
permite hallar una solucin final.
Los Algoritmos Genticos son muy potentes y efectivos, sobre todo para
solucionar problemas con un espacio de bsqueda para los que no existe una
tcnica especfica para resolverlos o es muy difcil de implementar.
Para la resolucin del problema planteado se utiliza el software
matemtico MATLAB ya que brinda grandes prestaciones para el clculo
numrico de una manera eficiente y precisa.
Jugada
Descripcin
Escalera
real o flor
imperial
Escalera
de color
Cinco consecutivas
seguidas del mismo
palo del As al 10.
Cinco cartas
consecutivas del
mismo palo, en
caso de empate
decide la carta ms
alta.
Cuatro cartas de
igual valor. En caso
de empate, gana el
Pker con cartas
ms altas.
Combinacin de
tres cartas iguales
(tro) y dos cartas
iguales (par). En
caso de empate
gana el tro ms alto
Pker
Full
Ejemplo
Combinaciones
posibles
4
36
624
3.774
Color
Escalera
Tro
Dobles
Parejas
Pareja
10
Carta
Alta
y luego el par ms
alto.
Cinco cartas del
mismo palo. En
caso de empate,
gana la carta ms
alta.
Cinco cartas
consecutivas de
palos diferentes. En
caso de empate,
gana la escalera
que tenga la carta
de valor ms alto.
Tres cartas de igual
valor. En caso de
empate gana el tro
ms alto.
Combinacin de dos
pares de cartas. En
caso de empate
decide la pareja
ms alta. Si
contina el empate
lo har la pareja
ms baja.
Dos cartas de igual
valor. En caso de
empate, decide la
pareja ms alta.
Carta de mayor
valor. En caso de
empate decide la
siguiente carta ms
alta y as
sucesivamente.
5.108
10.200
54.912
123.552
1.098.240
1.303.596
2. ALGORITMOS GENTICOS
2.1 DESCRIPCIN DE LOS ALGORITMOS GENTICOS
Inicio-AG
Inicializar Poblacin (al azar)
Asignar valores aptitud iniciales (uniformes)
Establecer n como nmero de generaciones del Algoritmo
desde i = 0 hasta n
obtener evaluacin de los individuos mediante la funcin fitness
seleccionar para reproduccin
reproducir
mutar
asignar aptitudes (evaluar individuo)
evaluar nueva poblacin
verificar condicin de terminacin
fin-desde
fin-AG
10
Figura 1
Poblacin Inicial
El cdigo gentico de la primera poblacin debe ser inicializado
aleatoriamente, para conseguir una uniformidad en la creacin de los
individuos. Existe la posibilidad de seleccionar tcnicas heursticas para la
inicializacin de los genes, pero los pocos estudios que hay al respecto
demuestran que el Algoritmo Gentico tiende a converger ms rpidamente
con el riesgo de producir soluciones mximas locales.
El nmero de individuos inicial no debe excederse en tamao para no
producir un coste computacional elevado, y no puede ser demasiado pequeo
para que el Algoritmo explore todos los espacios de bsqueda. Es aceptable
para cdigos binarios una cantidad de poblacin comprendida entre la longitud
de su cadena gentica, y dos veces dicha longitud.
11
Seleccin
Existen varias tcnicas de seleccin de individuos predominantes en una
generacin que sern cruzados para la creacin de nuevos individuos. Una de
ellas se denomina funcin de seleccin proporcional a la funcin de evaluacin.
Como su propio nombre indica, la probabilidad de seleccin de un individuo
ser directamente proporcional a su resultado obtenido en la funcin fitness.
Utilizando este procedimiento se corre el riesgo de que la poblacin converja
prematuramente hacia un mximo local, debido a la aparicin de
"superindividuos" muy similares entre s, con baja diversidad gentica. Por lo
tanto se encontrar una solucin buena, pero no la mejor para la poblacin
dada.
Otra tcnica es la seleccin Elitista, en la que solamente son candidatos
para la reproduccin los individuos que tengan una mayor evaluacin de
fitness. Tambin corre el riesgo de producir superindividuos, por lo que no ser
vlida para la resolucin de este proyecto.
El mtodo utilizado para hallar una estrategia ptima en el Pker es el
que se conoce como mtodo de Torneo, que tiene similitudes con el proceso
de seleccin del mundo animal, donde los machos combaten por el control del
grupo. Consiste en hacer competir a los individuos de manera aleatoria,
normalmente por parejas (al tratarse de partidas de Pker se utilizar una
variante de esta tcnica, hacindolos competir en grupos de nueve jugadores).
Este mtodo nos asegurar que al menos dos progenitores del mejor individuo
de cada generacin actuarn en la siguiente.
Las ventajas de utilizar este ltimo mtodo es que permite comparar a
los individuos manteniendo una variabilidad gentica, y evitando la aparicin de
superindividuos.
12
Reproduccin
Una vez seleccionados los individuos que han obtenido mejor resultado
en su evaluacin, deben ser cruzados (crossover) entre ellos, tal y como hace
la naturaleza. El proceso consiste en crear descendientes mediante el
intercambio de los genes de sus padres. Existen dos tcnicas mostradas en la
figura 2 para realizar la reproduccin, a partir de un punto de cruce y a partir de
dos puntos de cruce:
Figura 2
13
Estrategias de reemplazo
Existen dos tipos de Algoritmos Genticos atendiendo a las estrategias
de reemplazo de individuos para formar una nueva generacin:
El primer tipo es el Algoritmo Gentico Generacional, que reemplaza
toda la poblacin por sus predecesores.
El segundo tipo es el Algoritmo Gentico de Estado Estacionario que
reemplazan N individuos, utilizando uno de los siguientes criterios:
- Los N individuos con peor evaluacin son sustituidos por los nuevos.
- Los nuevos individuos reemplazan a sus N progenitores.
- Los nuevos individuos reemplazan a los ms parecidos entre s ya
existentes.
Normalmente el mtodo de reemplazo ms comn es el primero de los
mencionados anteriormente, aunque si se utiliza el segundo, los individuos que
perduran o sobreviven de una generacin a otra representan un porcentaje
muy pequeo de la poblacin.
Mutacin
Tal y como ocurre en las cadenas de ADN de los seres vivos, en los
Algoritmos Genticos se aplica durante el proceso de cruce el operador de
mutacin. Se modifican uno o varios genes de los individuos descendientes de
la anterior generacin. Esta tcnica permite aumentar la diversidad gentica
favoreciendo la de aparicin de nuevos individuos, posibles soluciones al
problema que se intenta solucionar.
Tambin ayuda a evitar mximos locales cuando han transcurrido un
cierto nmero de poblaciones. La probabilidad de mutacin debe ser baja (con
valores habituales menores del 1% o 0.1%), dado que si se abusa de este
procedimiento estaremos empleando estos algoritmos como una tcnica de
bsqueda al azar.
14
Figura 3
Convergencia
La implementacin de un Algoritmo Gentico se utiliza para hallar la
solucin un problema determinado, el cual no tiene otra tcnica especfica para
resolverlo. Esto implica que no podemos saber si el algoritmo ha encontrado la
mejor solucin posible o una solucin aproximada (mximo local), a no ser que
para un caso concreto sepamos a priori cual es la mejor solucin.
A da de hoy no existe ningn mtodo que asegure la correcta
convergencia de un Algoritmo Gentico. Dependiendo de cada problema, se
pueden utilizar tcnicas que pueden resultar tiles.
Una de ellas consiste en ejecutar el algoritmo durante un determinado
nmero de generaciones, detenerlo y emplear el mejor cromosoma de los
individuos de la ltima generacin como resultado al problema. Esta tcnica,
muy utilizada en inteligencia artificial, es muy til cuando el tiempo de proceso
del algoritmo es crtico (algoritmos en tiempo real) y nos vale con la mejor
solucin encontrada aunque no sea la ptima.
Otro mtodo muy utilizado es procesar el algoritmo hasta que la mayora
de la poblacin converja. Esto suceder cuando gran parte de los individuos
tenga un cdigo gentico muy similar y una adaptacin al medio (valor de
fitness) muy prxima.
15
Figura 4
Figura 4: Algoritmos Genticos, Javier Ventoso Reigosa (Artculo publicado en la revista Slo
Programadores Num. 89, pg 8).
16
Ventajas y Limitaciones
Una de las ventajas ms importantes de los Algoritmos Genticos es que
trabajan simultneamente con varias soluciones y no necesita conocer el
problema para hallar el resultado final. Ser la funcin de evaluacin fitness la
que se encargue de guiar el desarrollo algoritmo hacia una mejor solucin. Su
fcil implementacin en paralelo aumenta el espacio de bsqueda y evita
estancamientos locales. Son realmente buenos para la exploracin de
problemas con un espacio de bsqueda enorme y para los que no existe un
mtodo determinista para solucionarlos, como se da en el caso de una
estrategia de Pker.
La estrategia de bsqueda de los Algoritmos Genticos incrementa
exponencialmente a los individuos con un mejor valor de fitness, pero sin dejar
de probar nuevas soluciones.
En cambio, tienen limitaciones que pueden producir que un Algoritmo
Gentico no sea el mejor mtodo para resolver determinados casos. Pese a
que el diseo de un algoritmo sea adecuado, no tenemos garantas de que la
solucin encontrada sea un mximo global, corremos el riesgo de que se
quede estancado localmente y tarde mucho en salir, o no salga nunca.
Tienen gran dependencia de los operadores de seleccin, cruce,
mutacin que seleccionemos, as como de su implementacin en paralelo
(migracin de poblacin), del diseo de la funcin fitness, del tamao de la
poblacin inicial, condicin de parada, codificacin de la cadena de ADN de los
individuos, nmero de generaciones a evaluar, etc.
Tambin el ptimo encontrado por el algoritmo (ya sea local o global)
depende del cdigo gentico elegido aleatoriamente de la poblacin inicial. Con
el paso de las generaciones se pierde variabilidad gentica, ya que los
individuos son cada vez ms parecidos entre s para lograr la convergencia.
Para poder encontrar una solucin, la poblacin, antes de alcanzar su
convergencia, debe tener valores de fitness suficientemente diferentes:
17
Figura 5
18
Refs: [11]
19
La frmula es la siguiente:
Donde:
-
20
Estos datos anteriores se calculan para cada caso como nmero total de
jugadas que existen de cada tipo dividido entre el nmero total de
combinaciones de cartas que existen en el Pker.
Cabe destacar la rpida disminucin de probabilidad de conseguir una
jugada a medida que sta aumenta en valor.
21
22
2:
3:
4:
5:
6:
7:
23
8:
9:
Probabilidad de subir/ ver subida teniendo dos cartas del mismo palo
(propensas a formar color).
10:
11:
12:
13:
14:
15:
16:
Probabilidad de echar/ ver all-in teniendo dos cartas del mismo palo.
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
24
Flop
27:
Probabilidad de farol.
28:
Porcentaje de agresividad.
29:
Porcentaje de actividad.
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
25
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
P.de ver una subida si la ha visto entre el 75% y 100% de los jugadores.
74:
P.de ver una subida si la ha visto entre el 50% y 75% de los jugadores.
75:
P.de ver una subida si la ha visto entre el 25% y 50% de los jugadores.
76:
77:
78:
79:
26
Turn
80:
Probabilidad de farol.
81:
Porcentaje de agresividad.
82:
Porcentaje de actividad.
83:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
27
124:
Porcentaje actividad.
128:
129:
130:
131:
132:
133:
28
134:
135:
136:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
29
Inicializacin de la estrategia
Como se ha explicado con anterioridad en el apartado de Algoritmos
Genticos, todos los genes se deben inicializar aleatoriamente para conseguir
una distribucin uniforme para los individuos y evitar una convergencia
prematura de los mismos, que puede producir mximos locales, en la ejecucin
del algoritmo.
Los nicos genes inicializados con un valor fijo (100%) son los definidos
como probabilidad de ver/ echar all-in teniendo escalera real (en las rondas de
Flop, Turn y River), ya que es la mayor combinacin de cartas posible en este
juego.
Para establecer las probabilidades de subir/ ver subida y echar/ ver all-in
para cada combinacin de cartas en las cuatro rondas de apuestas, primero se
inicializa el porcentaje de actividad como un nmero aleatorio entre 0 y 100. En
funcin de esta cifra, se crean las otras dos probabilidades de manera que la
suma de apostar, subir y all-in sea igual al porcentaje de actividad, y la suma
de este ltimo con su opuesto (probabilidad de pasar) sea igual a 100%.
Las probabilidades de pasar y apostar no estn definidas en la
estrategia. Estos datos se extraen de los porcentajes antes mencionados,
como se muestra en la figura 7.
Figura 7
30
Corazones
As
9 10
9 10 11 12 13
Picas
14 15 16 17 18 19 20 21 22 23 24 25 26
Diamantes
27 28 29 30 31 32 33 34 35 36 37 38 39
Trboles
40 41 42 43 44 45 46 47 48 49 50 51 52
31
32
Ejemplo 1:
Figura 9
1 Parmetro
2 Parmetro
3 Parmetro
4 Parmetro
Cartas Jugada
Cartas Mano
Carta Alta
Carta Alta 2
0 Escalera Real
7 Escalera Color
0 Pker
0 Full
7 Color
10
0 Tro
0 Dobles Parejas
0 Pareja
10
9 Escalera
9 Carta Alta
33
Ejemplo 2:
Figura 10
1 Parmetro
2 Parmetro
3 Parmetro
4 Parmetro
Cartas Jugada
Cartas Mano
Carta Alta
Carta Alta 2
0 Escalera Real
0 Escalera Color
0 Pker
11
13
11
6 Dobles Parejas
11
0 Pareja
13
0 Carta Alta
6 Full
0 Color
11 Escalera
0 Tro
Este ejemplo muestra como un individuo tiene full como jugada ms alta
(con una carta individual). En este caso es un full de (11 11 6 6 6). Esta
informacin se obtiene en la fila del tro, que indica que tiene tres 6s con una
carta individual.
Para comparar a este jugador con los dems, como en todos los casos,
hay que mirar la primera jugada completa ms alta (full). Los valores de tro,
dobles parejas y pareja vienen implcitos en el full, ya que est compuesto por
estas jugadas ms bajas.
En este ejemplo el valor de la carta ms alta es de utilidad, ya que de
haber empate de full con otro jugador se recurre a esta cifra, que en este caso
es un Rey (K).
De estos datos se pueden extraer otras conclusiones como la de que
este jugador tiene en la mano un Rey (K) y un 6.
34
35
Inicializacin de Parmetros
En primer lugar se inicializan los parmetros que intervienen en la
funcin. Estos son:
-
Condicin de parada
El diagrama de flujo, que se corresponde con una mano de Pker, se
repite mientras se cumplan dos condiciones: O que quede un nico jugador
ganador o que transcurra un nmero mximo de manos que vara dependiendo
de la simulacin del algoritmo (normalmente suelen ser 50 manos). Este lmite
se pone debido a que cuando transcurren varias generaciones en el Algoritmo
Gentico, la poblacin est tan igualada (poblacin de superindividuos), que las
partidas de Pker pueden llegar a tener un nmero demasiado elevado de
manos o incluso existe la posibilidad de que no acaben.
Rondas
Los bloque de: repartir dos cartas a cada jugador, quemar baraja
(eliminar del juego la carta situada en la primera posicin) y repartir tres cartas
comunes, quemar baraja y repartir carta comn y quemar baraja y repartir carta
comn se corresponden con las distintas rondas del juego: Preflop, Flop, Turn y
River sucesivamente.
36
Eleccin de apuesta
Este bloque es comn independientemente de la ronda que se est
jugando. Determina el tipo de accin que realizar cada jugador (pasar,
apostar, ver apuesta, subir, ver subida, echar all-in o ver all-in).
Figura 12
37
2 Parmetro
3 Parmetro
4 Parmetro
Cartas Jugada
Cartas Mano
Carta Alta
Carta Alta 2
0 Escalera Real
7 Escalera Color
0 Pker
0 Full
7 Color
10
0 Tro
0 Dobles Parejas
0 Pareja
10
9 Escalera
9 Carta Alta
38
Figura 10
1 Parmetro
2 Parmetro
3 Parmetro
4 Parmetro
Cartas Jugada
Cartas Mano
Carta Alta
Carta Alta 2
0 Escalera Real
0 Escalera Color
0 Pker
11
13
11
6 Dobles Parejas
11
0 Pareja
13
0 Carta Alta
6 Full
0 Color
11 Escalera
0 Tro
39
40
Inicializacin de parmetros
Los valores de los parmetros mencionados en la pgina anterior son los
siguientes:
-
41
42
Cruce y mutacin
Una vez seleccionados los individuos mejores de cada generacin
deben ser cruzados y mutados para generar una nueva poblacin que sustituir
a su predecesora.
Al estar seleccionada la mitad de los individuos, cada pareja deber
tener cuatro hijos para duplicarse en nmero y volver al tamao de poblacin
original.
Se establecen tres puntos de cruce (los genes que separan el Preflop
del Flop, el Flop del Turn, y el Turn del River). Estos son el 26, 79 y 124
sucesivamente. De estos tres puntos distintos se seleccionan 2 distintos
aleatoriamente.
Se realiza de esta forma para no mezclar informacin, perteneciente a
una misma ronda, de distintos individuos. Si recordamos, la probabilidad de allin ms la de subir sumada con la de apostar (esta ltima no est implcita en la
estrategia), debe ser igual al porcentaje de actividad, y ste ltimo ms el de
pasar debe ser igual al 100%. Si no se separasen las cuatro rondas por estos
tres puntos de cruce, ya no se cumpliran las sumas de los porcentajes
anteriores.
La figura 14 ayuda a comprender mejor cmo se lleva el proceso de
cruce.
Figura 14
43
Criterio de parada
El criterio de parada se alcanza cuando un nmero elevado de la
poblacin ha convergido (superior al 85% - 90 %), con un valor de fitness de
500.
El Algoritmo Gentico no finaliza cuando se alcanza este porcentaje de
convergencia, ya que en todas las simulaciones alcanza estos valores en
generaciones no muy avanzadas debido a mximos locales. Es necesario
establecer un nmero elevado de generaciones (en torno a 100 o 150 para
poblaciones grandes), para que la convergencia sea estable y no presente
picos.
Cuando finaliza la simulacin de la ltima generacin, se devuelve como
solucin al mejor individuo, el que mayor fitness tenga.
En el siguiente captulo se explicar con ms detalle por qu el algoritmo
converge, qu pruebas se han realizado para comprobarlo, los resultados
obtenidos y conclusiones.
44
4. RESULTADOS Y CONCLUSIONES
4.1 CONVERGENCIA
Uno de los hechos que demuestran que el Algoritmo Gentico funciona
correctamente es su convergencia. Esto se consigue con el paso de varias
generaciones, cuando todos los individuos de una poblacin alcanzan valores
de fitness similares debido a que tienen una cadena gentica muy parecida.
Este es el resultado que deseamos obtener.
En el caso de disear estrategias ptimas en el Pker, es imposible
converger a una nica solucin, es decir, que todos los individuos tengan
exactamente la misma cadena gentica, dado a que sta es muy compleja.
Adems, la solucin obtenida en cada simulacin depender de la poblacin
inicial (siempre inicializada aleatoriamente), de los cruces y mutaciones, y de la
buena o mala suerte que tengan los jugadores en las partidas.
Se realizan varias pruebas explicadas a continuacin para comprobar la
convergencia.
Histograma
Un histograma es un diagrama de barras que muestra la evolucin
estadstica de una variable, un conjunto de datos, etc.
En este caso se representa el nmero de la poblacin (en el eje vertical)
que alcanza los distintos valores de fitness (eje horizontal), separados en
intervalos de 100 en 100.
Esta representacin, que se actualiza cada vez que entra una nueva
generacin, se puede ver en vivo cuando el programa se est ejecutando.
La figura 15 es una captura del histograma en la ltima generacin.
45
Figura 15
Generacion = 100
3500
3000
Poblacin
2500
2000
1500
1000
500
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Fitness
%87.4444
100
80
60
40
20
10
20
30
40
50
Generacin
60
70
80
90
100
46
47
Figura 16
Varianza
La varianza es un parmetro estadstico que mide la dispersin de una
variable aleatoria. En nuestro caso mide cunto se alejan los jugadores en
cada gen de la media de dicho gen que pertenece a la poblacin.
Su frmula matemtica es:
Donde:
-
48
Media
El ltimo experimento que se realiza es la media de los genes de toda la
poblacin. Los valores obtenidos, para cada caso estn en el adjunto 2
simulaciones.xml.
Aunque la varianza ya nos da informacin de lo cercanos que estn
unos individuos de otros, la media nos proporciona datos sobre una estrategia
global que sigue esta poblacin.
La comparacin gen a gen entre la media y la estrategia del individuo
ganador no dista demasiado. Para obtener valores ms globales, se calcula la
distancia media de todos los genes para el ganador y para la poblacin entera.
Sus valores se encuentran, dependiendo del caso entre el 15% y el 19%.
Por tanto significa que en media, cada gen de un individuo dista de la
media en un 15% o 19%. En algunos genes estas distancias son mucho
menores (en torno al 5%) y en otros ms elevada (en torno al 25%).
49
4.2 RESULTADOS
Los resultados de las estrategias ganadoras se proporcionan en el
adjunto 2 simulaciones.xml debido a que se visualizan mejor en una hoja Excel.
En este apartado se explica con detalle la valoracin y comparacin de
cada uno de los individuos vencedores.
Se proporciona el resultado correspondiente a tres simulaciones, a partir
de ahora Estrategia A, Estrategia B y Estrategia C.
La Estrategia A se corresponde con una simulacin de 900 de poblacin,
50 manos por partida como mximo, una probabilidad de cruce del 100%,
probabilidad de mutacin del 0.2% y 100 generaciones.
La Estrategia B se corresponde con una simulacin de 1.800 de
poblacin, 50 manos por partida como mximo, probabilidad de cruce del
100%, probabilidad de mutacin del 0.3% y 100 generaciones.
La Estrategia C se corresponde con una simulacin de 3.600 de
poblacin 50 manos por partida como mximo, probabilidad de cruce 100%,
probabilidad de mutacin 0.1% y 150 generaciones.
La eleccin de estos valores no tiene ningn por qu, excepto en la
Estrategia C que hay ms generaciones porque la poblacin es mayor, el
algoritmo tarda ms en converger. El resto de parmetros solo afectan a la
convergencia que influye en el resultado final, y estas pequeas variaciones no
perturban a la convergencia de una simulacin a otra.
De esta se demuestra la robustez de la solucin frente a los parmetros
inicializados en el Algoritmo Gentico, ya que siempre se llega a parecida
solucin.
A continuacin se muestran para cada una de las tres simulaciones los
resultados de los experimentos aplicados para comprobar la convergencia,
explicados en el apartado anterior.
50
Resultados, convergencia
Estrategia A: Convergencia conseguida 88,11%
Histograma
Figura 17
Generacion = 100
900
800
700
Poblacin
600
500
400
300
200
100
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Fitness
%88.1111
100
80
60
40
20
10
20
30
Fotografa de la poblacin
40
50
Generacin
60
70
80
90
100
Figura 18
Varianza: en el adjunto 2.
Media: Esta simulacin ha conseguido una distancia de 15,45 de media para el
ganador, y una distancia de 18,7 de media para la poblacin.
51
Figura 19
Generacion = 100
1800
1600
1400
Poblacin
1200
1000
800
600
400
200
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Fitness
%90.1111
100
80
60
40
20
10
20
Fotografa de la poblacin
30
40
50
Generacin
60
70
80
90
100
Figura 20
Varianza: en el adjunto 2.
Media: Esta simulacin ha conseguido una distancia de 16,9 de media para el
ganador, y una distancia de 18,79 de media para la poblacin.
52
Figura 21
Generacion = 150
3500
3000
Poblacin
2500
2000
1500
1000
500
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Fitness
%91.3056
100
80
60
40
20
50
100
150
Generacin
Fotografa de la poblacin
Figura 22
Varianza: en el adjunto 2.
Media: Esta simulacin ha conseguido una distancia de 19.59 de media para el
ganador, y una distancia de 19.5 de media para la poblacin.
53
Resultados, comparaciones
A continuacin procedemos a comparar las figuras 18, 20 y 22, de las
que se pueden sacar conclusiones sobre cmo juega la poblacin al Pker.
Para ello la figura 23 muestra cmo se dividen los genes.
Figura 23
54
55
Flop
Turn
River
Farol
Estrategia A
Estrategia B
Estrategia C
39
84
78
72
69
92
17
49
89
50
93
2
Agresividad
Estrategia A
Estrategia B
Estrategia C
45
73
2
9
26
60
31
79
46
9
45
77
Actividad
Estrategia A
Estrategia B
Estrategia C
100
69
45
66
94
100
72
98
56
87
64
95
Kelly
Estrategia A
Estrategia B
Estrategia C
55
27
98
34
6
0
69
21
4
91
55
23
P. Retirarse
Estrategia A
Estrategia B
Estrategia C
88
96
99
56
Figura 25
Preflop
Flop
Turn
River
12
73
52
1
90
8
73
8
30
34
37
56
51
2
13
11
9
12
40
75
66
91
79
68
31
28
88
65
51
30
37
17
33
66
83
28
6
82
89
99
59
28
53
16
87
27
99
42
17
66
89
37
69
94
79
31
10
39
77
56
14
13
95
97
36
25
41
13
22
16
49
83
63
1
58
14
43
88
95
86
34
75
21
7
57
En general, los datos que nos muestra la figura 25, son cifras bastante
elevadas. Son buenos resultados para mantener a una poblacin bastante
activa y agresiva (como la que tenemos en los resultados). La probabilidad de
ver una subida o un all-in depende de las cifras anteriores y de la jugada que
tenga el individuo.
Por lo general, las probabilidades son mayores en el River que en las
otras tres rondas. Es un resultado lgico, ya que un jugador que se ha
mantenido activo durante toda una mano, debera mantenerse activo tambin
en la ltima ronda, para no perder las cantidades apostadas anteriormente.
Figura 26
P. Subir
Preflop
Flop
Turn
River
Carta Alta
Estrategia A
Estrategia B
Estrategia C
36
9
1
19
39
34
55
19
4
56
42
0
Pares
Estrategia A
Estrategia B
Estrategia C
77
50
23
16
84
25
18
6
53
74
26
63
Pares Altos
Estrategia A
Estrategia B
Estrategia C
66
21
36
12
3
14
0
33
54
55
16
8
D. Parejas
Estrategia A
Estrategia B
Estrategia C
55
79
70
37
15
3
31
40
30
D. Parejas A
Estrategia A
Estrategia B
Estrategia C
42
27
52
10
65
22
11
27
67
58
Figura 27
P. Allin
Preflop
Flop
Turn
River
Carta Alta
Estrategia A
Estrategia B
Estrategia C
54
15
25
25
28
40
0
35
45
10
4
82
Pares
Estrategia A
Estrategia B
Estrategia C
11
10
22
48
7
37
38
89
1
7
38
4
Pares Altos
Estrategia A
Estrategia B
Estrategia C
29
28
2
27
87
21
40
45
1
8
38
75
D. Parejas
Estrategia A
Estrategia B
Estrategia C
4
10
15
18
76
41
29
19
17
D. Parejas A
Estrategia A
Estrategia B
Estrategia C
16
62
47
26
2
18
66
13
9
59
No hay que fiarse mucho de estas cifras, solo son orientativas, por la
razn de que en una partida de pker la jugada ms comn y con la que ms
se suele ganar es con pares altos, dobles parejas o tros como mucho. Las
dems combinaciones de cartas se consiguen con una probabilidad muy baja.
Es decir, si por ejemplo en la estrategia de un jugador nos encontramos
una probabilidad baja de subir o echar all-in con escalera de color, a primera
vista puede parecer contradictorio, porque es una jugada que gana a todas las
dems excepto a escalera real, pero hay que tener en cuenta que esa jugada
le habr salido a dicho individuo muy pocas veces en las partidas simuladas, o
incluso ninguna vez.
4.3 CONCLUSIONES
Como ya sabemos, los Algoritmos Genticos son la mejor solucin para
resolver problemas cuya naturaleza es muy compleja, y no existe otro mtodo
especfico para resolverlos.
Como se explic en el captulo Algoritmos Genticos, una mala decisin
a la hora de dar valores a las probabilidades de mutacin y reproduccin, as
como el nmero de generaciones, puede ser fatal para la convergencia del
algoritmo. En nuestro caso estos valores, dentro de un rango lgico, no
influyen.
Una vez que el Algoritmo ha convergido correctamente, encontramos la
estrategia ganadora, o al menos la no perdedora. Es un error pensar que
utilizando este mtodo vamos a encontrar siempre la mejor solucin, o que en
varias simulaciones encontremos soluciones idnticas gen a gen. Esto no
ocurre a menos que sepamos a priori cual es la estrategia ptima.
Aparte, en un juego como es el Pker, no todo es tener una buena
estrategia, sino la suerte es un tema fundamental para ganar, y eso no se
puede controlar.
Por tanto, la solucin hallada depender tanto de la poblacin inicial
como de las probabilidades de mutacin, el nmero de generaciones, el
correcto diseo de la funcin fitness y de los genes, etc.
Los Algoritmos proporcionan pues, la mejor o una de las mejores
soluciones para una determinada poblacin, que vendr influida por los
factores comentados anteriormente.
60
Lneas futuras
Una de las posibles mejoras que se podran aplicar a este software,
sera ampliar la funcin que calcula las probabilidades de ganar con ciertas
jugadas en el Pker aplicadas al criterio de Kelly. Como se explic en su
correspondiente apartado, se utiliza una versin simplificada del clculo de las
probabilidades, ya que es un tema muy complejo, ya que el hecho de ganar
depende tanto de tus cartas, como las del resto de jugadores y las que se
sitan en la mesa.
Factores como la suerte o la calidad con la que un individuo farolea o
detecta faroles no figuran en la cadena gentica. Otra posible mejora sera
incluirlos aunque son difciles de implementar, ya que el factor suerte o calidad
con la que se farolea son variables ms abstractas.
61
Adjuntos
Adjunto 1: Software. Para ejecutar, abrir con MATLAB la funcin
algoritmoGentico.
Adjunto 2: Resultados obtenidos en el archivo simulaciones.xmlx
Adjunto 3: Resumen del trabajo.
62
Referencias
[1] Reglamento El Pker Texas HoldEm, Fournier [www.nhfournier.es,
05/08/2012].
[2] Pker Texas HoldEm [wikipedia.es, 05/08/2012]
[3] Algoritmos Genticos, Javier Ventoso Reigosa (Artculo publicado en la
revista Slo Programadores Num. 89).
[4] Algoritmos Genticos, Pedro Isasi (Asignatura Computacin Biolgica.
Departamento de Informtica Universidad Carlos III de Madrid).
[5] Algoritmos Genticos [wikipedia.es 06/08/2012]
[6] La teora de los juegos, sus aplicaciones en economa y metodologa, Jos
Luis Ferreira Garca (Departamento de Economa Universidad Carlos III de
Madrid)
[7] Comprendiendo la teora de juegos y el Hold'Em, Bryce Paradis ; Douglas
Zare.
[8] Teora de los Juegos [wikipedia.es 06/08/2012]
[9] Pker y negocios [www.euribor.com.es 08/01/2009]
[10] Pker online [wikipedia.es 09/08/2012]
[11] Gua de Apuestas Deportivas. Juan Carreo Garro
[12] www.poquer.com.es/jugadores-poker
63