jueves, 7 de abril de 2011

Entrega 4

Para esta segunda entrega, continuamos trabajando con la negociación de los agentes. En primer lugar nos enfocamos en mejorar la interface gráfica añadiendo algunas funcionalidades. Agregamos un botón llamado “Despliega Tabla” que le permitirá al controlador tener acceso a la información de los vuelos que están en la pista. Además podrá modificar el orden en el que hacen su respectivo aterrizaje o despegue, así como la descripción del porqué modifica este orden. Esta implementación fue posible utilizando la clase JTable.

Además de modificar la interface gráfica, le agregamos algunas características a los aviones como su descripción por algún cambio en la prioridad, así como la reducción de la gasolina conforme aumentan sus horas de vuelo. Tomamos como mínimo de gasolina para llegar a la terminal 1000 litros. Si la cantidad de gasolina es menor o se acerca a 1000, su prioridad aumenta y por lo tanto debe aterrizar.

Tomando ya en cuenta todas las características de los aviones, se calcula la prioridad de cada uno de ellos y se actualiza dinámicamente.

Además modificamos el comportamiento de los agentes, ya que previamente los aviones de despegue únicamente estaban en la Pista Uno y los de Aterrizaje estaban en la Pista Dos. Ahora con las respectivas modificaciones hay en la Pista Dos tanto aviones que despegan como aviones que aterrizan, por lo tanto hicimos que pudieran interactuar de manera correcta para que no hubiera ninguna colisión entre ellos. Esto lo hicimos tomando en cuenta la respectiva prioridad de los aviones, ya que si se da el caso de un agente que va a despegar pero tiene un gran número de conexiones, entonces tiene mayor prioridad que un avión que desea aterrizar y su prioridad es normal. La sincronización de los agentes la hicimos tomando en cuenta la distancia en “x” y en “y”, así como la cantidad de gasolina, el número de conexiones, las fallas mecánicas, las horas de vuelo y las emergencias médicas.

jueves, 24 de marzo de 2011

Equilibrio del Juego y Valor Esperado de las Interacciones

Dado que dos aviones no pueden aterrizar o despegar al mismo de tiempo en una pista se simplifica la matriz quedándo sólo estrategias dominantes y una opción de Aterrizaje/Despegue o Esperar su turno. Al no tener la posibilidad de moverse de cuadrante, siempre existirá un equilibro estable en donde siempre un avión gana y otro pierde.

Valor Esperado de las Interacciones

Basándonos en el ejemplo de la matriz de pago y considerando que el avión con mayor prioridad incial escoge primero la decisión a tomar, el Avión 1 escogerá el camino donde el costo es menor (36 unidades) es decir la acción de despegar/aterrizar. Al Avión 2 sólo le quedará una opción: esperar (14 unidades).

Con esto aseguramos que el avión con una mayor prioridad tenga un menor costo en su decisón y sea el primero en ser atendido.

Matriz de Pago

*El avión con mayor prioridad inicial, será el que elija primero un camino a seguir.



Avión 2


Despegue / Aterrizaje

Esperar

Avión 1

Despegue / Aterrizaje

14

36

Esperar

4

46

Cálculo valores de matriz de pago:

Cálculo de prioridad

**Constante

de falla

Avión 1:

Número Conexiones

4

*

4

16

Horas de Vuelo

10

*

2

20

36







Cálculo de prioridad

**Constante

de falla

Avión 2:

Número Conexiones

2

*

2

4

Fórmula : si (esperar) prioridad = prioridad + 10;

Avión1 (esperar) = 36 + 10 = 46;

Avión2 (esperar) = 4 +10 = 14;

**Constante de Falla

La constante de falla es el valor por el cuál se multiplica cada parámetro de falla para obtener el total de la prioridad.

Tipo de Falla

Valor

Fallas Mecánicas

1000

Emergencia Médica

200

Gasolina

5

Número de conexiones

4

Horas de Vuelo

2

Hora de Llegada/salida

2

· Falla Mecánica – si hay una falla mecánica su prioridad aumenta en 1000, dado es la prioridad más alta y ninguna debe sobrepasarla (con excepción de la gasolina).

· Emergencia Médica – es una prioridad de 200 por cada persona que tenga una emergencia médica (infarto, labor de parto, entre otros).

· Gasolina - (Número mínimo de gasolina – gasolina restante) *constante de falla. El número mínimo son los litros necesarios para que un avión se mantenga en vuelo (litros de reserva). La fórmula funciona para que entren menos litros tenga su prioridad vaya aumentando, ya que al llegar al límite la falta de gasolina equivaldría a una falla mecánica.

· Número de conexiones – número de pasajeros que cuentan con conexión a otros vuelos. La constante aumenta su prioridad pero sin llegar a sobrepasar las prioridades más altas.

· Horas de Vuelo y Hora de Llegada/Salida – número de horas que lleva un avión en vuelo