jueves, 23 de febrero de 2012

Laboratorio Programación de Sistemas Adaptativos. Practica1

Introducción:
El objetivo de esta práctica de Laboratorio, consiste en programar algoritmos que se adapten a su entorno.
Aplicándolo a un caso práctico,  se planea un Sistema de Semáforos que se adapten a su entorno.
Resolución del problema:
Nuestra principal idea consistió primeramente en definir cada uno de los carriles, posteriormente analizar la lógica de cada uno de los semáforos, es decir si uno estará en verde, cual cambiara en rojo.
Posteriormente trabajar en la parte de adaptación, es decir: se planeo originalmente que el carril detectara hasta que punto debería de cambiar, para permitir el acceso o restringirlo.
Por ejemplo si en un determinado carril se comienza a llenar con objetos que simulan vehículos, dar preferencia a una luz verde a ese carril.
Para ello, se planeo utilizar Treads donde se manejen cada uno de los carriles, de esta forma un hilo podría estar generando instancias, independientemente de los otros hilos.
Problemática:
Los retos a los que nos enfrentamos al tratar de resolver esta práctica fueron los siguientes:
Al trabajar con hilos, nos planteamos la siguiente pregunta: ¿Cuántos hilos implementaremos?
Si trabajábamos con esto, nuestro principal reto seria la sincronización de los mismos.
Pasamos mucho tiempo analizando esta temática, que dejamos a segundo término otras cuestiones igualmente importantes.

¿Que Aprendimos?
Nos involucramos mucho en el manejo de hilos en Java.
Aprendimos a enfocarnos más a la problemática principal a resolver  y no primeramente en  cosas secundarias.
Como coordinarnos mejor  para las futuras practicas.

En conclusión, nuestra practica no fue completamente lo que esperábamos, ya que por varios factores, no se concluyo por completo. En si este "Simulador" se sincroniza para cada cambio de luz.
Seguiremos trabajando en el,  y en los próximos días publicaremos los resultados obtenidos. 

Los dejamos con un breve vídeo de los resultados trabajados hasta el momento:

http://www.youtube.com/watch?v=ypaaiUmn58A&feature=youtu.be&fb_source=message

Continuación práctica 1....

Práctica 1:
Ideas y Soluciones (planteadas)
Las ideas que tuvimos para resolver y obtener el resultado esperado para esta práctica, era más que nada trabajar con hilos, ya que asi podiamos estar ejecutando varias acciones al mismo tiempo, como la sincronización de los semaforos o el movimiento de los "autos".
Nuestro gran obstaculo fue el de la creación de varios vehículos para poder asi trabajar la parte adaptativa de nuestro programa, ya que esto era relativamente más fácil.
La idea que habiamos propuesto era la con hilos generar autos cada cierto tiempo y al mismo tiempo establecer dos botones en cada carril para asi generar o disminuir el tráfico, ya con esto establecido solo eran necesarias unas cuantas variable para contar los vehículos y así poder establecer las proridades de los semaforos, es decir la parte adaptativa.
Pero una vez más nuestra gran barrera fue la de la creación de los "autos" para asi poder continuar con el resto de la "simulación".