2011-03-15 11 views
8

Estoy tratando de encontrar el mejor algoritmo para el siguiente problema de clasificación.¿Cuál es el mejor algoritmo de clasificación de asientos reservados?

Hay N = K x M asientos en un auditorio con un pasillo, K filas, y M asientos por pasillo. Se asume que K es más grande que M, pero no creo que eso sea muy importante. Hay N personas que están en biyección con los asientos (asientos asignados). Suponiendo que a la gente no le guste , ¿cuál es la forma más rápida de alinearlos para obtenerlos todos en sus asientos lo más rápido posible?

que corrieron algunos experiements simples (utilizando permutaciones aleatorias) y parecía que dejar que ellos se alinean es al azar más rápido que tener los personas en el tercer frente (más abajo en el pasillo) se alinean en primer lugar, a continuación, el tercio medio , luego el tercio posterior. Eso me parece equivocado.

Estoy escribiendo esto en MatLab si eso importa en absoluto. Alguna idea o respuesta?

+0

Creo que es difícil responder a esto sin saber más sobre el modelo. ¿Cuántas entradas hay y dónde están ubicadas? ¿Qué causa que la gente tenga que esperar y por cuánto tiempo? ¿Toma más tiempo sentarse en su asiento si tiene que pasar a alguien en la misma fila que ya está sentado? ¿La gente siempre va directamente a su asiento correcto o a veces vagabundea de un lado a otro buscando la fila correcta? etc ... –

+0

Solo una entrada, y se necesita una unidad de tiempo para mover una fila hacia abajo o un asiento a lo largo. – Daniel

+0

Tal vez estoy viendo esto de la manera equivocada, pero si tuviera una multitud de personas altamente eficientes que nunca dejaran de moverse en el camino hacia su asiento (incluso sin demorarse para girar y caminar por una isla), no lo haría importa a qué orden van. Alternativamente, ¿no podría tener una persona de cada línea fila (primera fila = frente de línea, última fila = último lugar), todos caminan por la isla, luego todos giran y caminan por sus filas respectivas a la vez (enjuague y repetir). –

Respuesta

13

Hay un artículo muy bueno de Bachmat, Berend, Sapir, Skiena y Stolyarov titulado Analysis of airplane boarding via space-time geometry and random matrix theory que modela este problema exacto para el embarque de aviones. Desde su resumen:

Mostramos que embarque de avión puede ser modelado por asintóticamente geometría de Lorentz 2 dimensiones. El tiempo de abordaje viene dado por el tiempo máximo de entre las curvas del modelo. Las discrepancias entre el modelo y los resultados de la simulación están estrechamente relacionados con la teoría de matrices aleatorias. A continuación, mostramos cómo se pueden utilizar dichos modelos para explicar por qué algunas de las políticas de embarque comúnmente practicadas de la aerolínea son ineficaces y incluso son perjudiciales.

Las conclusiones del documento son:

  • MEJOR: Ventana-Medio-pasillo
  • casi óptimas: Embarque aleatoria
  • muy malo: Volver a la delantera

Para su configuración, creo que esto significa que debe ignorar qué tan lejos en el pasillo hay personas y en su lugar enfocarse en qué tan lejos del pasillo están. Este modelo también representa el tiempo para almacenar el equipaje, por lo que es posible que tenga que ajustarlo un poco para su situación. En cualquier caso, creo que esto confirma lo que está encontrando a través de su modelo.

+0

Gracias! ¡Creo que esto es exactamente lo que busco! – Daniel

+0

recuerde marcar una respuesta como aceptada si le ayudó :) –

+0

Derecha. Gracias. Mi primera pregunta, así que no sé las reglas. – Daniel

Cuestiones relacionadas