Práctica 1 Control de semáforos

Introducción

La práctica realizada simula el funcionamiento que tienen los semáforos en el cruce entre  dos avenidas, dichos movimientos están basados entre diversos factores tomados en cuenta para que entre los automóviles no surjan accidentes. La congestión en las calles puede ocurrir en cualquier momento y gracias a este auto ajuste de parámetros se logrará regular el tiempo de espera que debe de tener cada semáforo para que los autos puedan avanzar de manera optima. 

Desarrollo


En la práctica como se dijo en la Introducción, se está ejecutando una simulación de semáforos real, con la problemática de que se quiere optimizar el proceso en el que los carros pasen con mayor fluidez, esto en base a lo congestionado que estén los carriles.

Un ejemplo real sería un cruce de semáforos en el cual obviamente cada calle debe esperar su turno, pero el problema viene cuando los semáforos tienen muy poco tiempo para pasar, y se empiezan a congestionar las calles. Eso es lo que arregla este simulador.

Diseño del cruce 





Matriz de conflictos





Diseño de la solución


En nuestro simulador se aprovecha cambiar la variable del tiempo del color verde para que más autos puedan pasar si es que hay demasiados carros en esa calle. Todos tendrá la misma oportunidad de pasar a su destino cuando les toque su turno, en este tipo de simulación estaría muy bien implementarla en la vida diaria ya que en ocasiones hay mucho congestionamiento vial.

Hablando de la programación, está hecho en Java en el cual se utilizaron los llamados Threads o Hilos que funcionan para ejecutarse al mismo tiempo o casi al mismo tiempo.
¿Para qué se realizó esto? Los semáforos de una calle funcionan todos al mismo tiempo por ejemplo 2 en rojo y 1 verde para pasar, entonces esta es la función del Hilo, son procesos que se utilizan al mismo tiempo, esto para aprovechar la simulación de los semáforos. 

Entonces son 4 Hilos 1 para cada Semáforo en los cuales deberá hacer que 1 esté en verde los demás en rojo, y así sucesivamente en cada carril, con el auto ajuste que se supone es el objetivo de la práctica que hará durar más el verde, si los carros son iguales o mayores a 12 en el carril.

Durante la  simulación en 7 segundos pasaran 5 carros y arriba de 12 carros pasaran 15 segundos en verde.

Código




Conclusión

Esta práctica enseñó el concepto de hilos, que como anteriormente se mencionó son procesos que se ejecutan y se pueden interrumpir o detener, por ejemplo en esta práctica estaban todos activados con un ciclo infinito en el cual debían de iterar un numero de 8 veces en los cuales se denominaron que en el semáforo 1 estaría en verde en la iteración 1, el semáforo 2 en la iteración 3, el semáforo 3 en la iteración 5, y finalmente el semáforo 4 en la iteración 7, todo esto usando la lógica en la que los semáforos funcionan normalmente. Se entendió completamente la función de los hilos, además de cómo funcionan las clases y los métodos, el paso de parámetros y sobre todo la codificación en Java ya que no se había programado algo tan “complejo” para los conocimientos que se tenían anteriormente, aún falta mucho por aprender, yo creo que no vamos ni al principio de los conceptos básicos de programación ya que es un tema muy amplio, pero el equipo está con toda la disposición de querer aprender todo lo posible de esta materia y todas las relacionadas con programación.


No hay comentarios.:

Publicar un comentario