Jugadores
- Ambulancia
- Patrulla
- Carro Veloz
- Carro
- Semáforo
Estrategias
- Las ambulancias tienen alta prioridad sobre los carros normales, si aparece una, debe de avanzar más rápido y tener prioridad en los semáforos.
- Cuando los carros estén en fila y haya un carril disponible, se debe de ocupar ese carril.
- El carro veloz tiene mayor velocidad que un carro normal, pero menor que una ambulancia, esto hace más ágil el flujo vial en el carril en donde se encuentre.
- El semáforo, dependiendo del vehiculo que está en el carril actua inteligentemente sendiendo o haciendo esperar al agente que está en el carril.
Utilidades
La utilidad de la ambulancia es llegar siempre a su destino en el menor tiempo posible gracias a la alta prioridad que tiene con los semáforos.
La utilidad del carro veloz es llegar rápido a su destino y permitir un mejor flujo vehicular.
|
| Carriles Normales | |||||
| Carril Avenida |
| Carro Veloz | Carro | Ambulancia | Patrulla | |
| Carro Veloz | + - | + - | - + | + - | ||
| Carro | + - | + - | - + | + - | ||
| Ambulancia | + - | + - | + + | + - | ||
| Patrulla | + - | + - | - + | + - | ||
+ Prioridad al pasar
- Menos prioridad al pasar
En el carril de avenida, poniendo ambulancias, patrullas o incluso carros, siempre la avenida va a tener mayor prioridad.
Estrategia Dominante
El jugador que tiene este tipo de estrategia es la ambulancia, ya que aun teniendo carros, carros veloces y patrullas en otros carriles, siempre se le va a dar prioridad a esta.
No importa que haya en los otros carriles la prioridad de la ambulancia es la mayor.
Caso Ambulancia en el Carril Avenida
|
| Carriles Normales | |||||
| Carril Avenida |
| Carro Veloz | Carro | Ambulancia | Patrulla | |
| Carro Veloz | + | + | - | + | ||
| Carro | + | + | - | + | ||
| Ambulancia | + | + | + | + | ||
| Patrulla | + | + | - | + | ||
Estrategia Maximin
Si en el Carril Avenida salen muchas ambulancias, podemos predecir que los Carriles Normales van a tener que enviar una ambulancia para que sea más fluido el tráfico.
Estrategia Mixta
Si queremos llegar a un punto en específico, podemos mandar ambulancias en diferentes carriles y así poder evitar que la avenida sea siempre la que va avanzar.
Arquitectura de los Agentes
Conocimiento
Cada agente tiene una ruta que seguir, así como también si el agente tiene varios vehículos que estén ocupando el carril, se va a un carril disponible con un flujo menor de vehículos.
Son agentes reactivos, es decir, realizan diferentes funciones conforme al ambiente en donde están, verificar que el semáforo este en verde antes de pasar.
Su control es por medio de semáforos, cada uno de estos contará con cierto tiempo de dejar pasar y hacer que se esperen, según las prioridades del agente el semáforo tenderá a cambiar de color.
Coordinación
Los agentes se coordinan mediante semáforos que cambian según el agente que esté en el carril, por ejemplo, cada cierto tiempo cambia el color del semáforo, pero si llegara a haber una ambulancia el semáforo tiene alta prioridad de cambiarse a verde.
INTERACCIONES EN CONFLICTO
Al implementar en los agentes las vueltas, ya que teníamos una lógica para los agentes (arreglo de carros) y su sincronización con los semáforos.
The Geek Minions
ResponderEliminarNos gustó mucho su idea ya que está bastante simplificada y clara. Nos parece que está bastante bien implementado. Quisieramos saber que tan factible es que agreguen una variable para conocer el tipo de conductor y llegara a influir en la toma de decisiones.
Hola, pues resumiendo un poco las preguntas y comentarios que todos los equipos nos hicieron, realemente hemos dejado al final la parte de "semáforos" ya que necesitabamos primero que cada agente reaccionara de forma independiente y tomara su propias decisiones de acuerdo a lo que se le presente en su entorno, por ejemplo si es que un agente detecta una ambulancia, esa debe de reaccionar y estar "sensando" su ambiente si es que se puede cambiar de carril para dejar pasar la ambulancia y si no es posible pues aumentar la velocidad para revasar a los demás coche y así poder cambiarse de carril cuando este detecte un espacio en algún otro carril.
ResponderEliminarRealmente no utilizaremos una base de datos como tal pero si podemos y hemos pensado en utilizar un archivo que se genere al final con los resultados de cuánto tiempo le tomo a cierta cantidad de coche en atravesar una avenida completa con diferentes ambientes (semáforos sincronizados, semáforos asíncronos, sin semáforos, etc) ya que esto nos dirá qué casos son los que mejor se adaptan al tráfico.
La funcionalidad de los semáforos será la más compleja ya que coordinará a los demás agentes de acuerdo al tráfico que se presente y la situación que se presente (si hay un vehículo de emergencia o no) y asi poder "controlar" de una forma más eficiente el tráfico que se presenta en los cruces.
Otra parte que nos falta definir es cómo darán vuelta los agentes, esto se nos complica ya que estamos utilizando dos arreglos; un arreglo para los vehículos verticales y otro para los horizontales, al utilizar este tipo de arreglo se nos comiplca pasar un elemento a otro arreglo ya que se debe de considerar que en algunos cruces son de 3 puntos (cruce de coches hacia 3 direcciones diferentes) entonces si esto es así se dentendría un coche ocasionando más tráfico o podría cruzarse y ocasionar un accidente.
Les agradezco sus comentarios!
Saludos!!!