viernes, 30 de septiembre de 2016

Cierre del reto - César

  • ¿Qué aprendizajes personales se llevan del reto?
    R.- Me llevo el volver a programar en Python, algo que ya no había hecho desde el primer semestre. El como programar una mini IA para un video juego y haber aprendido hacerlo.
  • ¿Qué recomendaciones le harían a un amigo que quisiera llevar este reto en un futuro?
    R.- Que tenga mucha paciencia, que sepa programar en Python y divertirse en ello.
  • ¿Qué actividad les gustó más del reto?
     R.- Todas las actividades estuvieron buenas pero la que me gustó fue cuando empezamos a competir todos contra el jugador aleatorio y cuando competimos todos, contra todos.
  • ¿Qué actividad les gustó menos?
    R.- El primer día, en el concurso de programación, estuvo bueno pero mejor nos hubieran metido directo a prácticar con el framework.
  • ¿Qué cambios le harían a este reto para mejorarlo?
    R.- Como mencioné en la penúltima pregunta, deberían de empezar el primer día enseñando y praticando con el framework que usarán en el reto. Y así no tener problemas progrmando y más tiempo de hacerlo.

miércoles, 28 de septiembre de 2016

Programando un jugador Estratégico

El desarrollo de otro jugador "inteligente", se podría de fingir de varias maneras por el simple hecho de que se puede saber a detalle las posibilidades de como se va a desarrollar el juego, de esta manera se podría crear a un ser "invencible",  operando en base a una pila de datos de uno y del oponente, dado que tu oponente también recibe los datos, las cosas interesantes son los diferentes escenarios que se podrían llegar a presentar por que al estar este expuesto en un lugar donde las cosas son tan poco constantes y mas que nada son variables, es poco certero saber o tomar en cuenta cada posible escenario, si pudiéramos poner eso como un reto a vencer se podría poner la cantidad de cosas o variables que pueden determinar a un ganador, si bien puedes tomar un caso máximo, esos pocos casos son los que pueden llegar a delimitar tus posibilidades de triunfo. 
En este punto la eficiencia de cada uno de estos "jugadores falsos" y sus posibilidades de ganar estarían delimitadas por la creatividad del que los desarrollo, dado que entre mas casos se tomen como estrategias, es mas fácil que este reaccione de una manera muy diferente al de como lo haría otro, esto obviamente tiene un impacto bruto sobre el resultado, y inclusive de esta forma no se puede llegar a casaderas cada caso posible, inclusive con toda esta cantidad de información, uno siempre se vera delimitado por la lógica que da a su jugador virtual.
Poniendo dificultades a las que no hemos topado dentro del desarrollo, pues serian bastantes, desde definir una estrategia optima, el dotar la lógica al jugador para que entienda que es lo que tiene que hacer, el tratar de hacerlo lo mas universal posible, para evitar que intente hacer cosas repetitivas o sin sentido durante un encuentro, ademas de considerar todas las posibles reacciones que podría tener un contrincante, ya que los movimientos que se hagan durante el programa afectarán directamente al resultado final.
Las cosas que no han gustado, es que par nuestro equipo el proyecto a resultado desafiante y eso está bien ya que da una pauta para mejorar, y el apollo siempre esta por parte de los profesores. Las cosas que no nos parecen tan bien, es lo mismo del corto tiempo para realizar una conexión entre lo aprendido de manera sola contar la implementación que hay muchas cosas en blanco por falta de experiencia.
Lo que logramos predecir para el torneo, no esperamos terminar en primer lugar visto como se comportan otros algoritmos, así que esperamos terminar dentro de lo 7 primeros por lo menos para poder salir tranquilos de la actividad.

martes, 27 de septiembre de 2016

Teoría de Juegos y el taller: "Framework Dagor para Juegos de Estrategia"

La teoría de juegos es una rama de las matemáticas que se centra en la toma de decisiones las cuales normalmente se contraponen a las decisiones de otras personas o como se les llama jugadores. Esta rama de las matemáticas estudia los juegos que pueden ir desde una partida de ajedrez hasta la decisión de apoyar o no a un compañero en el crimen. Normalmente se estudian juegos en los cuales dos o más jugadores con distintos intereses tienen que tomar una decisión la cual normalmente afecta a otro(s) jugador(es).A las decisiones que se toman durante el juego se les conoce vomo estrategias.
Dentro de esta rama se pueden apreciar distintos tipos de juego como lo son los juegos simétricos, asimétricos, de suma cero, de suma distinta de cero, cooperativos, finitos e infinitos, etc.
El juego con el cual estaremos trabajando es un juego combinacional, es decir un juego finito en el cual dos jugadores se alternan para tirar y todos tienen información perfecta, es decir, que no hay información oculta.
Durante el taller de hoy se vio como los jugadores en Dagor implementan ciertas estrategias para la toma de decisiones efectiva que aseguren en el mayor de los casos una victoria. También pudimos observar el comportamiento de los juegos de estrategia que hay para poder darnos una idea de cómo implementar una buena solución.
Lo que más nos gustó del taller fue el hecho de que pudimos conocer bien el ambiente en el que vamos a trabajar y la forma de correr de las clases, sin embargo, los recursos que se nos dieron no fueron los esperados, ya que esperábamos obtener técnicas de IA con las cuales pudiéramos resolver los problemas, y a pesar de que sabemos bien cómo funciona el framework, sentimos que el adentrarnos un poco más a las técnicas hubiera sido de mucha utilidad.
Creemos que uno de los principales problemas a los que nos enfrentaremos durante el desarrollo del jugador es que hay muchas variables a las que tenemos que prestar atención, tales como el tamaño y forma del tablero, la proximidad de las orugas, la cantidad de movimientos disponibles, etc. Otro problema es que el tiempo de desarrollo es muy corto, por lo cual no podremos explorar todas las formas de abordar el problema y creemos que el trabajo no podrá ser de la calidad que tendría si tuviéramos un poco más de tiempo.

Fuentes:

Rodriguez, J. S., & González-Alcón, C. (n.d.). Teoría de juegos: La matemática del conflicto. In Las matemáticas del siglo XX (pp. 263-266).

lunes, 26 de septiembre de 2016

Leslie Gallegos

Mi nombre es Leslie Marjorie Gallegos Salazar. Tengo 20 años y estoy en cuarto semestre de la carrera de Ingeniería en Sistemas Computacionales. Mi gusto por la carrera comenzó a finales de mi secundaria e inicios de mi preparatoria, cuando mi hermana debido a su carrera llevaba algunas materias con programación y me mostraba cómo hacer las cosas, lamentablemente no le di seguimiento a lo que me enseñaba así que no soy experta en muchos temas. Inscribí este reto porque la inteligencia artificial siempre se me ha hecho un tópico muy interesante, aunque honestamente me da un poco de miedo, pero es por eso que quiero aprender más al respecto, además, este reto era el que más aplicación de los conocimientos de la carrera tenía. Espero que este reto sea entretenido e instructivo al mismo tiempo y que, durante el mismo, los conocimientos de Python que tengo se refresquen ya que este es un lenguaje que no solemos utilizar muy seguido durante las clases. Durante el reto me esforzaré en absorber los conocimientos y técnicas de inteligencia artificial que se nos enseñen para que mi equipo pueda desarrollar un programa capaz de dar una buena competencia en el concurso.
Uno de mis más grandes pasatiempos es leer, me gustan todo tipo de libros, sobre todo aquellos que necesitan de interpretación ya que hacen la lectura más activa, también me gustan mucho las artes escénicas (teatro, canto y baile) y actualmente estoy en el grupo de danza folclórica de la escuela con el cual he bailado en festivales internacionales y en lugares como el teatro de la Ciudad de México. Como la mayoría de las personas, me gusta ver series, mis favoritas son de resolución de crímenes. También disfruto mucho las películas, sobre todo de terror (por tradición con mis mejores amigos) y de thriller psicológico.
Espero muchas cosas de este reto, pero sobre todo espero poder adquirir conocimientos que me ayuden a avanzar en cierto modo dentro de mis estudios. 

Arturo Amador

  • Arturo Amador: Lo que se puede decir que espero para esta semana i es aprender los fundamentos para el desarrollo de una "inteligencia artificial",  o las bases de esta misma, que al igual una semana, no de para mas. De cualquier forma si tuviera que esperar algo muy en concreto de lo que es la semana i, podría decir que esperaría aprender en el reto de manera acelerada, y poder llevar estos conocimientos a un procedimiento practico, es lo que mas podría llegar a decir.
  • Para poder llegar a concluir, es genial estar en la semana i, y espero que en un futuro esto continue evolucionado, y que haya mas actividades, por que en este podría decir de una amena bastante fácil que fueron muy pocas, y lo bueno fue que esta se pudo abrir de nuevo, así que no queda mas que entusiasmare y poner todo el esfuerzo en esta semana increíble.
    • Pasatiempos: leer,  escuchar musica, escribir, navegar.
      • Libros: Me vale madres, la divina comedia, paradojas de la fisica, ingenieria de software.
      • Musica: Rock-Clasico, Rock-Metal, Rock-Alternativo, Rock-pop, J-pop, Pop, Jazz.
      • Películas: Presagio, Hitman agente 47, el especialista, Mascotas, Avengers.
      • Programa de T.V. : Agents of shield, shidonia. 

Naahal

Cosas positivas dentro de la actividad: una de las cosas positivas, es el ambiente que se vive con tantas personas haciendo la misma cosa al mismo tiempo, además del ambiente competitivo de querer crecer cada día para no ir quedando atrás poco a poco, esto exige una constante mejora y crecimiento personal para cada miembro en el equipo. El trabajo en equipo nos ayudó a darnos cuenta de que no hay solo una manera de abordar un problema si no que hay una infinidad de maneras de hacerlo. Esto ayuda a cada individuo a poder descubrir nuevas maneras que pueden ser más fáciles y eficientes de resolver un problema y también a complementar los conocimientos previos que se tenían con conocimientos de los otros miembros del equipo.

Problemas: Uno de los más grandes problemas que se tuvo durante la competencia fue el manejo del tiempo ya que al no tener una división efectiva de los problemas dentro del equipo el tiempo dedicado a estos fue más de lo esperado. Aparte de eso, los problemas no fueron tantos, y los que hubieron fueron bastante insignificante, quizás una de las cosas podría llegar a ser el hecho de solo poder usar dos computadoras, ya que en equipos de tres quizás no era lo mejor, pero se entiende para "nivelar" ciertas cosas con equipos de dos. 

Mejoras: Uno de los principales problemas a mejorar, es que no recordábamos muy bien cómo utilizar clases, funciones, atributos, etc. de Python ya que los conocimientos que teníamos no los habíamos aplicado en mucho tiempo. Así que podría decir que un área de mejora es la de trabajar en conectar de nuevo con Python y las cosas que ofrece, para evitar tener que redescubrir el hilo negro.


Aprendizaje: Algo que pudimos aprender el día de hoy durante esta mecánica es que el trabajo en equipo es algo fundamental, en especial en programación. Estamos muy acostumbrados a trabajar solos, y a pesar que durante esta competencia se tenían que hacer programas simples, cuando se trata de un proyecto más ambicioso el trabajar solo hace que el desarrollo del proyecto sea un proceso muy lento y casi imposible, es por esto que el trabajo en equipo es fundamental.

César Galván

Me llamo César A. GalvánMedrano, mi expectativa para esta Semana i es retomar lo que es la programacion en Python, ya que hace tiempo no he programado en Python, también aprender más sobre él y ver como funciona la IA en un videojuego, ya que gustan jugarlos y programar uno será muy divertido e innovador.  Mis pasatiempos son jugar videojuegos de cualquier tipo pero más los FPS's y RPG's, mi juego favorito es la saga de Assassin's Creed, también me gusta hacer natación y ejercicio. Mi música favorita es el rock en inglés, también me gusta escuchar música italiana y música clásica y mi banda favorita de rock es Avenged Sevenfold. Mi libro favorito es Metro 2033 de Dmitri Glujovski. El tipo de película que me gustan son medievales, Sci-Fi y thrillers psicológicos, y entre ellas se encuentran: The Lord of the Rings, The Hobbit, Back to the Future, Star Wars y la que más me fascina es SAW. Por último, mis series favoritas son: House of Cards, The Walking Dead, Gotham, Dexter y Marco Polo.