Don Cangrejo EI Taller de Proyecto 2011 Semestre Otoño Grupo 5

Slides:



Advertisements
Presentaciones similares
El juego del ajedrez ES BUENO JUGAR PORQUE
Advertisements

FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 13 Ing. Ronald Criollo.
Instituto Tecnológico de Saltillo Inteligencia Artificial
UNIVERSIDAD DE SAN MARTIN DE PORRES
LAS PIEZAS.
Integrantes: Andres Marin Castelblanco Karem Moreno Pacheco Alexandra Ardila.
Estructura de Datos Unidad 4. Recursividad Dra. María Lucía Barrón Estrada Enero-Junio 2007.
Ejemplo de Programa C++
ALGORITMOS DE ORDENAMIENTO
Juego del 3 en raya con brazo robótico y sensores Enrique Fueyo Ramírez Juan Carlos Hernández Munuera.
Arreglos: Vectores en JAVA
L ISTAS E NLAZADAS No son mas que un conjunto o lista de objetos que a diferencia de los vectores, estas poseen la capacidad de crecer o decrecer. Por.
JUEGOS MATEMÁTICOS. MAGIA NUMERICA
ATON Presentación del diseño del juego de mesa Aton.
Elaborado por Fernando Torre - Universidad Simón Bolívar ARREGLOS CI Computación I Universidad Simón Bolívar Dpto. de Computación y Tecnología de.
Algoritmos para Ordenar datos
Estructuras de Datos Arreglos.
Es muy conveniente enrocar en las primera jugadas. No obstante sería muy ingenuo suponer que el enroque siempre proporciona una inmunidad completa. Con.
Proyecto Fin de Carrera
Diseñando mi solución en POO (Galaga)
Presentación Grupo 8 de prácticas de ISG2 Trabajo: 42 Express Highway Nombres: o Álvaro Manuel Brazo García o Moisés Gómez López o Zeneida Rial Muñoz o.
AJEDREZ Carlos A. Alsina.
AQUABALANCE Trabajo Final. Reglas Es grupal Cada participante realiza una ronda y consta de 3 tiros por turno. Cada participante lanza la pelota apuntando.
(1) Uno de los jugadores hace Jaque mate y gana. (2) Uno de los jugadores abandona y pierde. (3) Los jugadores empatan o hacen tablas. El final como etapa.
o ¡¡¡ Como salir de la Carrera de la Rata !!!
Encapsulamiento Miguel Ángel Rojas Aguilar Esthela Carmina Carranza Cabrera.
Resolviendo problemas: Determinantes: todo se reduce a un número. Resolviendo problemas: Determinantes: Todo se reduce a un número.
1 ListaUna Lista se define como una serie de N elementos E 1, E 2,..., E N, ordenados de manera consecutiva, es decir, el elemento E k (que se denomina.
Cambia de lugar 1 de los 12 palillos para que la igualdad sea verdadera. (Porque 4+3 no son 5) 8 DE 8 Colocar 8 fichas en el tablero de ajedrez de forma.
Chinook: el juego de damas invencible
 El futbol es un deporte jugado por dos equipos formado por un máximo de 11 jugadores cada uno de los cuales uno jugara como guardameta el objetivo del.
Articulación entre ciclos: Cálculo Mental y Juegos
ADMINISTRACIÓN EN SALUD OCUPACIONAL JUEGOS DIDACTICOS.
EL AJEDREZ.
Profesora: Jennifer Hernández Santis. Asignatura: Educación Física
JUGANDO POR LA HISTORIA.
TRABAJO E.F Nazanial Mendieta Ramírez 3C3C
MINIGENERALA Primera vuelta Segunda Vuelta
JUEGOS CON CARTAS Y DADOS
¿Cuántos triángulos hay?
LECCIONES DE PROGRAMACION INTERMEDIAS
Uni-Fighters Nombres.
EL DOMINO.
¿Qué son los poliminós? Un poliminó o poliominó es un objeto geométrico obtenido al unir varios cuadrados o celdas del mismo tamaño de forma que cada par.
METODO DE TRANSPORTE APROXIMACION DE VOGEL
Programación Gráfica 5. Introducción a C++..
Sección Lego Mindstorms
Equipo # 1 Norma Pimentel Wendy Hernandez Julisa Javier Mario Tristán.
LOCALIOZACION DE ESPACIOS PRODUCTIVOS
Análisis de Pareto Elección de los cambios más importantes a realizar Ingeniería Simple Copyright 2008 by Leonel Morales Díaz.
Juegos lúdicos tradicionales Carlos Rodriguez Munguía 3ero “A” Educación Física.
Manejo de restricciones especiales Las restricciones aparecen con frecuencia en problemas reales y pueden manejarse utilizando algoritmos de propósito.
Unidad 1. - Morfología del robot 1
Navega seguro en internet con Bee-Bots, Serpientes & Escaleras!
Clase25: Listas Enlazadas
Adivina que hay detras de las cajas
Reglas del juego de mesa
a b c d e f g h Test de evaluación
EL AJEDREZ EN EL CRIET EL AJEDREZ EN TU ESCUELA.
a b c d e f g h Test de evaluación
MÉTODO SIMPLEX. Ejemplo de Simplex: Vamos a resolver el siguiente problema: MaximizarZ = f(x 1,x 2 ) = 3x 1 + 2x 2 Sujeto a:2x 1 + x 2 ≤ 18 2x 1 + 3x.
String, random y stream en java
“Zugzwang o la inconveniencia de tener que jugar”
Clase25: Listas Enlazadas
Scrabble Camila Castillo Orozco María José Yepes.
Implementación de algoritmo para juegos. Algoritmo Minimax  El algoritmo de minimax en simples palabras consiste en la elección del mejor movimiento.
Espacio de estados: un problema se divide en un conjunto de pasos de resolución desde el inicio hasta el objetivo. Los estados y su relación de accesibilidad.
© Copyright Showeet.com Futbol Soccer BENJAMÍN PÉREZ CÁRDENAS GRUPO: 2 “A” YOUR LOGO.
TRIVIAL DE LAS EMOCIONES Andrea donderis Natalia carbonell Esther fontestad Lucia mascarell.
Ecuación lineal Dionisio Rimachi Velasque %A9todos_de_resoluci%C3%B3n_ de_sistemas_de_ecuaciones_linea les.html.
Transcripción de la presentación:

Don Cangrejo EI2001-9 Taller de Proyecto 2011 Semestre Otoño Grupo 5 Natalia Hernández Gustavo Moreno Felipe Quintanilla

Objetivo Robot de lego que juega “Four in a line” contra una persona. Analiza jugadas y posiciona en el casillero más conveniente del tablero su ficha

Descripción Don Cangrejo juega el clásico juego “Connect 4” que consiste en colocar 4 fichas juntas en una columna, fila o diagonal para poder ganar. Utiliza motores para posicionar fichas y sensor de color para detectar las jugadas del oponente. Capaz de posicionar su jugada en un casillero adecuado. Sensor de choque para asignar turnos.

Robot Tablero

Riel

Coche Superior

Brazo

Programa Clases: Casilla: cada una indica su posición y estado Tablero: arreglo de 6x7 con todas las casillas del tablero. Linea: arreglo de 4 casillas Lista: lista enlazada con líneas ganadoras. Jugadas: lista enlazada con las 7 casillas donde puede realizar su jugada.

Métodos: casilla Tablero.leer(): revisa el tablero para detectar la jugada del oponente void Jugadas.actualizar(): actualiza la lista enlazada para tener siempre las casillas disponibles void Tablero.jugar(casilla): mueve al robot para jugar en la casilla señalada void casilla.cambiarEstado(int)

int linea.puntaje(casilla) le asigna un puntaje dependiendo de cómo esta llenada la línea y de si la casilla c está en la línea -1--> la casilla no está en la línea, el main la ignorará -2--> hay fichas de los dos jugadores -3--> 4 fichas del robot, se acabó el juego el robot gana -4--> 4 fichas del oponente, se acabó el juego el robot pierde >0--> puntaje obtenido

Exceptions: RobotGana RobotPierde

Programa try{ while(true){ Casilla r=Tablero.leer() r.cambiarEstado(2); jugadas.actualizar(); for(nodoB aux=jug.primero;aux!=null;aux=aux.sig){aux.p=0;} //resetea los puntajes de las casillas a cero; for(nodoB aux=jug.primero;aux!=null;aux=aux.sig){ for(nodoA bux=lis.primero;bux!=null;bux=bux.sig){ q=bux.valor.puntaje(aux.cas); if(q==-2) {bux.ant.sig=bux.sig;bux.sig.ant=bux.ant;} //elimina la linea de la lista else if(q>=0)aux.p+=q;//suma el puntaje obtenido else if(q==-3)throw new RobotGana(); else if(q==-4)throw new RobotPierde(); }

//una vez que se revisan todas las casillas y se asignan los puntajes se elige la mejor Casilla mejor;int m=0; for(nodoB aux=jug.primero;aux!=null;aux=aux.sig){ if(m<aux.p){mejor=aux.cas;m=aux.p;} Tablero.jugar(mejor); mejor.cambiarEstado(1) jugadas.actualizar(); } }

Cosas que faltan : Fichas Calibrarlo para que pueda moverse correctamente Probar la efectividad del algoritmo

Una Pequeña demostración…