User Tools


This is an old revision of the document!


Inteligencia Artificial

Asignatura

Ensayo con el tema “Impacto actual de la IA en la vida cotidiana”, fecha de entrega 20 de agosto.

Extensión mínima 3 cuartillas, incluir al menos Introducción, Desarrollo y Conclusiones. Citas y referencias a pie de página. Incluir en la primera página nombre del curso, del profesor, del estudiante y fecha.

Entregar el ensayo en formato PDF a través de este enlace.

Proyecto individual 1

Implementar un programa capaz de resolver el problema del “comesolo” o peg solitaire, en su modalidad triangular de 15 posiciones, llamada también “Triangle(5)” http://recmath.org/pegsolitaire/tindex.html El objetivo es obtener un tablero con todas sus posiciones vacías con excepción de una. Si no conoce el juego puede utilizar la siguiente página interactiva para familiarizarse con el: https://www.mathsisfun.com/games/triangle-peg-solitaire/index.html

El programa deberá leer una posición inicial de tablero desde la linea de comandos, indicando cuál poste comenzará vacío, y también deberá leer una posición final, que es donde se desea que quede el último poste. Si no importa la posición final, se indicará con un * (caracter de asterisco). Favor de utilizar la notación de la figura.

Después de la ejecución, el programa debe determinar si existe una solución para las posiciones inicial y final indicadas. Si existe, debe imprimir los pasos para obtener la solución. Si no existe, debe reportar este hecho.

La implementación deberá ser, de preferencia, en Python. Su entrega debe incluir todos los archivos necesarios para ejecutar el programa, incluyendo un archivo llamado README.txt con instrucciones para la ejecución del programa. Favor de enviar un solo archivo comprimido Zip o Tar/GZ (RAR no, de preferencia).

Enlace para enviar su proyecto: https://www.dropbox.com/request/1J1XAwV4Vz2Tu0DUl43u

Fecha de entrega: 3 de septiembre de 2019

Proyecto individual 2

Implementar el algoritmo de poda alfa-beta para crear un jugador de “gato”. Este juego es muy popular pero si no lo conoce puede consultar en este enlace

Deberá envolver la lógica del jugador de gato en una función con el siguiente prototipo:

def tttplayer(board, cross):
   ...
   return move

Donde board es una lista con el estado actual del tablero, fila por fila. Ejemplo

board=['X','O','X', ' ', 'O', ' ', 'X', ' ', ' ']

cross es una variable booleana que indica si su jugador debe usar X (cross=True) o el símbolo O (cross=False). y move es qué movimiento se realizará, usando coordenadas en un tuple. Si para el tablero del ejemplo su jugador recomienda colocar 'O' en la esquina inferior derecha, entonces move = (2,2).

El programa completo deberá pedirle a un jugador humano que escoja X o O, en general X comienza. Posteriormente debe, para cada jugada, imprimir el tablero en pantalla. Si es turno del humano, debe pedirle que introduzca la posición de su siguiente jugada en forma de tuple. El programa debe detectar cuándo alguien ha ganado y mencionarlo, o anunciar la existencia de un empate.

La implementación deberá ser, de preferencia, en Python. Su entrega debe incluir todos los archivos necesarios para ejecutar el programa, incluyendo un archivo llamado README.txt con instrucciones para la ejecución del programa. Favor de enviar un solo archivo comprimido Zip o Tar/GZ (RAR no, de preferencia).

Enlace para enviar su proyecto: https://www.dropbox.com/request/gPQC2BQ9KArDqYKmFxjR

Fecha de entrega: 24 de septiembre de 2019