diapositivas juego ajedrez
TRANSCRIPT
![Page 1: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/1.jpg)
AJEDREZ
![Page 2: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/2.jpg)
LOS ELEMENTOS
Dos jugadores.
Tablero color intercalado(8x8).
Piezas:
- Rey
:: 1
- Reina
:: 1
- Alfiles
:: 2
- Caballos
:: 2
- Torres ::
2
- Peón :: 8
![Page 3: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/3.jpg)
MOVIMIENTO DE LAS PIEZAS
REY◦ El Rey se mueve en cualquier dirección, una casilla cada vez.
◦ Es decir, que puede moverse a cualquiera de las casillas
contiguas a la que ocupe, siempre que no haya en ella una pieza
propia.
![Page 4: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/4.jpg)
MOVIMIENTO DE LAS PIEZAS
REINA◦ La Reina, que también se denomina corrientemente "Dama",
puede moverse, lo mismo que el Rey, en las columnas, filas o
diagonales, es decir, vertical, horizontal o diagonalmente.
La Reina tiene la
mayor potencia
en comparación
al resto de las
demás piezas.
![Page 5: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/5.jpg)
MOVIMIENTO DE LAS PIEZAS
ALFIL◦ Lo mismo que la Reina, el Alfil puede moverse y capturar
diagonalmente.
◦ A diferencia de la Reina y la Torre, no puede moverse ni en filas
ni en columnas.
En sus movimientos, el Alfil
tiene las mismas
limitaciones que la Reina y
la Torre, es decir, puede
ser bloqueado por piezas
propias o enemigas,
pudiendo capturar estas
últimas.
![Page 6: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/6.jpg)
MOVIMIENTO DE LAS PIEZAS
CABALLO◦ Cada Caballo se mueve con la combinación de una y dos casillas:
a) Una casilla hacia arriba o hacia abajo, y después dos a la derecha o a la
izquierda.
b) Una casilla hacia la derecha o hacia la izquierda, y dos para arriba o para
abajo.
El Caballo puede ser
descrito como el clown, el
mal muchacho o el arma
secreta del ajedrez.
![Page 7: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/7.jpg)
MOVIMIENTO DE LAS PIEZAS
TORRE◦ La Torre puede moverse horizontalmente (en fila) o
verticalmente (en columna).
La Torre no puede
moverse en
diagonal, no
siendo, por tanto,
tan fuerte como la
Reina.
![Page 8: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/8.jpg)
MOVIMIENTO DE LAS PIEZAS
PEON◦ El Peón tiene un número considerable de diferencias con
relación a las otras piezas.
◦ El Peón sólo puede moverse en una dirección: Adelante.
![Page 9: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/9.jpg)
COMO GANAR Se gana mediante el ataque al Rey enemigo, de tal manera que el
adversario sea incapaz de evitar la captura de su Rey.
Cuando un Rey está amenazado de captura, se dice que está en "jaque".
Cuando el jaque es de tal naturaleza que no existe defensa, se dice entonces que se ha dado "jaque mate", y el juego está terminado.
JAQUEJAQUE MATE
(Sin movimiento)
![Page 10: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/10.jpg)
SOFTWARE
Lenguaje:
◦ C++ 6 Builder
Algoritmo:
◦ Minimax
Estructura de Datos:
◦ Árboles, Bitwase y Listas
(añadiendo poda ALFA y BETA)
![Page 11: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/11.jpg)
SOFTWARE
Representación del Tablero:
Cada casilla toma el valor de la pieza que ocupa.
0 = vacío
1 = peón
2 = caballo
3 = alfil
4 = torre
5 = reina
6 = rey
![Page 12: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/12.jpg)
SOFTWARE
La matriz ocupa mucha memoria.
1 movimiento = 1 matriz (64 byte)
16
. . . . . . .
16 matriz x 64 byte = 1024 byte
Este es solamente
el primer nivel del árbol
![Page 13: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/13.jpg)
SOFTWARE
Bitwase
X X X X X X X X
1 12 24 48 8
8 bits = 1 byte
4 bits = 1 casilla 4 bits = 1 casilla
. . . . . . .v
1 Matriz = 32 byte = 64 casillas
2 casillas 2 casillas
![Page 14: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/14.jpg)
SOFTWARE
ALGORITMO
◦ MINIMAX (añadiendo poda ALFA y BETA)
Ventaja
Esta optimiza la búsqueda en el árbol.
No gasta procesamiento (Rápido).
Desventaja
No recorre el árbol completo (No busca el mejor movimiento).
. . .
. . .
180 160 260 280 250 300 160180200
MALA DECISIÓN !!!
![Page 15: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/15.jpg)
SOFTWAREMinMax(GamePosition game) {
return MaxMove(game);
}
MaxMove(GamePosition game) {
if(GameEnded(game) || DepthLimitReached()) {
return EvalGameState(game,MAX);
} else {
best_move = {};
moves = GenerateMoves(game);
ForEach moves {
move = MinMove(ApplyMove(game) , alpha, beta );
if(Value(move) > Value(best_move)) {
best_move = move;
alpha = Value(move);
}
//Ignore remaining moves
if(beta > alpha)
return best_move;
}
return best_move;
}
}
DepthLimitReached() .- Es el limite
del nivel en el que va recorrer la
profundidad.
GenerateMoves(Game g).- Se manda
el ultimo movimiento o tablero
para que me de otro
movimiento.
Value(Move m) .-Le devuelve el
valor de ese movimiento o el
costo del movimiento.
![Page 16: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/16.jpg)
SOFTWARE MinMove(GamePosition game) {
if(GameEnded(game) || DepthLimitReached()) {
return EvalGameState(game,MIN);
} else {
best_move = {};
moves = GenerateMoves(game);
ForEach moves {
move = MaxMove(ApplyMove(game) , alpha, beta );
if(Value(move) > Value(best_move)) {
best_move = move;
beta = Value(move);
}
//Ignore remaining moves
if(beta < alpha)
return best_move;
}
return best_move;
}
}
![Page 17: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/17.jpg)
SOFTWARE
![Page 18: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/18.jpg)
SOFTWARE
Son todos los
movimientos que
se hicieron
en el juego
(todas las jugadas)
Son todas las
piezas comidas
en el partido
El turno del jugador
![Page 19: Diapositivas Juego Ajedrez](https://reader033.vdocumento.com/reader033/viewer/2022042518/5571f97149795991698f942c/html5/thumbnails/19.jpg)
GRACIAS POR SU ATENCION !!!