Uploaded by Liliana Herrera

pdf-problema-del-salto-del-caballo compress

advertisement
PROBLEMA DEL SALTO DEL
CABALLO
En un tablero de ajedrez de n x n casillas, se tiene un caballo
situ
si
tuad
ado
o en la posi
posici
ción
ón in
inic
icia
iall de co
coor
orde
dena
nada
dass (  ,  ). El
pr
probl
oblema
ema
co
consi
nsist
ste
epasa
en r enc
encon
ontr
trar
ar,
, si una
exis
existe
te,
,z por
un cada
circui
circuito
to
qu
e
permita
permit
a al ca
caballo
ballo
pasar
ex
exactam
actamente
ente
ve
vez
unaque
de
las casillas de tablero, teniendo en cuenta los movimientos
(saltos) permitidos a un caballo de ajedrez.
Este es un claro ejemplo de problemas que se resuelven con el
esq
squ
uema alg
lgor
orít
ítmi
micco de vue
vuelt
lta
a atrás (backtracking
ing). El
problema consiste en buscar la secuencia de saltos que tiene
que dar el caballo, partiendo de una casilla cualquiera, para
pasar por cada una de las casillas del tablero realizando un
total de 2 − 1 movimientos. Suponiendo que el tablero se
encuentra vacío,
vacío, exceptuando el caballo.
caballo .
Lo primero que se debe tomar en cuenta es que el caballo, desde una
casilla, puede realizar hasta 8 movimientos.
No si
siem
empr
pre
e será
erá posi
posibl
ble
e reali
ealizzar los
los ocho
ocho movi
movimi
mien
ento
tos,
s, se debe
debe
comprobar que la casilla de destino este dentro del tablero y también
que el caballo na haya pasa previamente por ella. En caso de ser
posi
po
sibl
ble
e el movi
movimi
mien
ento
to,, se anot
anota,
a, guar
guarda
dand
ndo
o el nume
numerro de salt
salto
o
realizado.
Si se agotan los ocho posible movimientos sin llegar a la solución, se
vuelve al movimiento anterior (vuelta atrás), se borra el movimiento
donde ocurrió el fallo y se intenta con el siguiente movimiento, y así
sucesivamente.
Si el caballo termina en una casilla que esta a un movimiento de la
casi
ca
sill
lla
a donde
donde inici
inicio
o el recor
ecorri
rido
do (de
(de modo
modo que
que pu
pudie
dierra re
reco
corr
rrer
er el
table
ta
blero
ro de nuevo
nuevo inmedia
inmediata
tamen
mente
te,, siguie
siguiendo
ndo el mismo
mismo camin
camino),
o), el
recorrido se considera cerrado,
cerrado, de lo contrario se lo considera abierto.
Existen variaciones a este problema que involucran tableros de ajedrez
de diferentes tamaños al usual 8 x 8, así como tableros irregulares, es
decir, tableros no rectangulares.
El número de recorridos abiertos en un tablero n x n para
n= 1,2,3,4,5,6,7,8 son:
1, 0, 0, 0, 1728, 6637920, 165575218320, 19591828170979904
Existen diversas formas
mas de resolver este problem
lema de forma
computacional. Algunos son métodos algorítmicos y heurísticos.
Algoritmos de fuerza bruta: Una búsqueda de fuerza bruta para el
recorrido del caballo es poco práctica en todos, menos los tableros más
pequeñas; por ejemplo, en un tablero de 8x8 hay aproximadamente
5
4 ∗ 10 posibles secuencias de movimientos, y es mucho más allá de la
capacidad de las computadoras modernas (o redes de ordenadores)
para realizar operaciones
operaciones en un conjunto tan grande.
Algoritmos divide y vence
Algoritmos
encerrás:
ás: Al divi
dividi
dirr el table
ablerro en pi
piez
ezas
as más
más
peque
pe
queñas
ñas,, cons
constr
truy
uyend
endo
o recor
ecorri
rido
doss en ca
cada
da piez
pieza,
a, y po
ponie
niend
ndo
o las
las
piez
pi
ezas
as junt
juntas
as,, se puede
puede cons
constr
truir
uir reco
recorr
rrid
idos
os en la ma
may
yor
oría
ía de los
los
tableros rectangulares
rectangulares en tiempo polinómico
Soluci
Solu
cion
ones
es de rede
redess neur
neuron
onal
ales
es:: El prob
proble
lema
ma del
del salt
salto
o del
del cabal
caballo
lo
también
ién se presta a ser resuelto por
por una apli
liccación de redes
neuro
uronales. La red está configura
urado de tal manera que cada
movimiento posible del caballo está representado por una neurona, y
cada neurona se inicializa al azar para ser "activo" o "inactivo" (salida
de 1 o 0), con 1 lo que implica que la neurona es parte de la solución
definitiva.
Download