Está en la página 1de 25

Teora de Colas

De Rolando Titiosky
Basados en Extracto de: Ing Lus Zuloaga Rotta. Investigacin de Operaciones, 2005. UNI FIIS, Peru. Guido J. Pace (UNNE FCENA). Modelos y simulacin,1993.

Modelizacion Con Colas


MODELO de COLAS
Aspecto o fenmeno de la vida moderna que encontramos en nuestras actividades diarias.
En la caja de un supermercado, Accediendo a Internet, En una planta de produccin, etc.

Emerge el Modelo: cuando unos recursos compartidos necesitan ser accedidos para dar servicio a un elevado nmero de trabajos o clientes.

Instalaciones de Servicio

Objetivos de la Modelizacion de Colas

Predecir la performance del sistema.


Evaluar estrategias alternativas para elegir la mejor. Determinar cmo
Dimensionar el sistema Controlar la entrada

para obtener la performance requerida, en trminos de:


Grado de servicio (GOS) Retardo
Instalaciones de Servicio

Aplicaciones
Redes de comunicaciones: Dimensionamiento de vnculos entre centrales de conmutacin. Dimensionamiento de recursos compartidos en centrales de conmutacin y en procesadores. Mtodos de acceso en redes (FDMA, TDMA, CDMA, Aloha y sus variantes, CSMA y sus variantes, etc.). Plantas de produccin. Redes viales. Supermercados, bancos, fast-food,..
Instalaciones de Servicio

Caractersticas Comunes
Flujo de clientes a travs del sistema:
Comunicaciones telefnicas. Paquetes de datos, celdas ATM, etc. Automviles. Clientes.

Servidores o recursos compartidos:


Lneas troncales. Canales de comunicacin (frecuencias, intervalos de tiempo, cdigos, etc.) Buffers, memorias. Caminos, cajeros, vendedores, etc.

Polticas de Trabajo:
Primero entrar Primero en Salir El Trabajo Mas Corto Primero RoundRobin Etc

Instalaciones de Servicio

Tipos de Colas
Los sistemas de colas se distingue por atributos: Nmero de fases, canales y Servidores. Poltica: como se tratan las llegadas para dar servicio (FIFO, LIFO, Prioridades, etc.)

Fase
Mltiple

Simple

Simple

Canal

Mltiple

Conceptos
Polticas de Colas: el modo en que los clientes llegan y interactan con las instalaciones de servicio.
FIFO, LIFO, Round Robin, etc

Clientes: entidades cuya llegada ejerce demandas sobre alguna instalacin. Patrn de llegadas: funcin de:
Tamao del universo de clientes posibles Nivel de sus actividades del cliente.

Sistema de Cola Simple


Es un sistema Monofsico de canal simple Un servidor con una cola de clientes esperando ser atendidos
Cualquier sistema de colas puede descomponerse en una red de estos sistemas.
Canal Simple: La instalacin de servicio podr acomodar slo a un cliente a la vez Poltica: FIFO: Las llegadas se atienden de acuerdo con el orden de llegada. Incremento del Tiempo: Dt tan pequeo que
Es posible una llegada o una salida durante el intervalo Dt Es imposible ms de una llegada o una salida durante ese intervalo.

Se supone:

Colas Simples: Algoritmo


Variables: TLL: Tiempo de llegada de un elemento al sistema. TS: Tiempo de servicio del sistema. IA: Intervalo entre arribos de elementos (aleatorio). T: Reloj del sistema (tiempo actual). NC: Nmero de elementos en el sistema (longitud de la cola ms elemento que se est atendiendo). TAT: Tiempo de atencin a un elemento (aleatorio). TF: Tiempo de finalizacin de la ejecucin. Condiciones Iniciales: TLL= Dar un valor Inicial TAT=NC=TS=IA=T=0 TF =Dar valor Inicial.

Colas Simples: Algoritmo/2


Proceso: 1. C/elemento que solicita el servicio debe esperar en cola hasta que el servidor se desocupe y pueda atenderlo. Si es el 1ero en llegar no necesita esperar a que lo atiendan.

Variables: TLL: Tiempo de llegada de un elemento al sistema. TS: Tiempo de servicio del sistema. IA: Intervalo entre arribos de elementos (aleatorio). T: Reloj del sistema (tiempo actual). NC: Nmero de elementos en el sistema (longitud de la cola ms elemento que se est atendiendo). TAT: Tiempo de atencin a un elemento (aleatorio). TF: Tiempo de finalizacin de la ejecucin.

Colas Simples: Algoritmo/3


Proceso: 2. (TLL TS): el elemento lleg antes de que el sistema termine de atender a los que estaban en cola.
2.1. El Elemento debe esperar a que todos los que estuvieran delante sean atendidos. Esto se expresa con la operacin
2.1.1. (T = TLL) Adelantar el Reloj hasta su llegada, 2.1.2. (GENERAR IA) Generacin del IA para el prximo elemento: 2.1.3. (TLL=T+IA) Clculo de su tiempo de llegada 2.1.4. (NC=NC+1) El incremento de la longitud de cola.

2.2. (NC = 1) Se verifica si es el primer elemento de la cola.


2.2.1. Si lo es, se lo atiende inmediatamente para lo cual:
2.2.1.1. (GENERAR TAT) se genera el tiempo de atencin para ese Elemento 2.2.1.2. (TS=T+TAT) Se actualiza el tiempo de servicio (cuando terminara de atenderlo).

2.2.2. Si no es el primer elemento deber esperar para ser atendido

Colas Simples: Algoritmo/4


Proceso: 3. (TLL > TS) El tiempo de llegada es mayor que el tiempo de servicio: transcurrir un perodo antes del prximo arribo al sistema, por lo tanto hay tiempo para atender un elemento de los que estn esperando en la cola.
3.1. (T = TS) La atencin se inicia avanzando el reloj al tiempo de servicio, 3.2. (NC=NC1) se decrementa la longitud de la cola 3.3. Si (NC>0) an quedan elementos por atender.
3.3.1. (GENERAR TAT) Se toma uno de la cola y se genera un tiempo de Atencin para hacer efectivo la Atencin. 3.3.2. (TS = T + TAT) se lo atiende actualizando el tiempo de servicio del sistema,

3.4. Si (NC=0) la cola qued vaca con el ltimo elemento q se extrajo para Atender.
3.4.1. (TS = TLL) Por lo tanto solo ser necesario avanzar el tiempo de servicio al instante en que llegue el prximo elemento.

Colas Simples: Algoritmo/5


Proceso: 4. Finalizacin del Proceso
4.1. (T<TF) El algoritmo sigue con la verificacin de la condicin de fin sin realizar otra operacin. Consiste en comparar el reloj con un tiempo final que indica el momento en que la simulacin finalizar 4.2. (NC>0) control sobre el tamao de la cola que debe ser cero. Aqu se atienden a todos los Usuarios en Cola
4.2.1. Cuando llegamos a este Punto, se asigna un valor grande al TLL para evitar que nuevos elementos deseosos de ser atendidos se ubiquen en cola.

Colas Simples: Ejemplo


La institucin cuenta con un solo cajero que atiende una sola cola. Si hay en promedio ms de una hora extra por da se justifica la incorporacin del segundo cajero, tanto para reducir las horas extras como para mejorar la atencin a sus clientes. Para verificar la necesidad se deber simular el funcionamiento de dicha oficina durante un ao, emitiendo diariamente los siguientes datos: a- Tiempo ocioso. b- Tamao mximo de la cola. c- Mximo tiempo de atencin. d- Cantidad de personas atendidas. e- Cantidad de horas extras. Por final se deber emitir: f- Promedio de horas extras. g- Nmero promedio personas atendidas. h- Nmero mximo de personas atendidas en un da.

Colas Simples: Ejemplo

ACANT : Acumulador de cantidad de personas atendidas en un da. ACEXT : Acumulador de tiempo extra. CANT : Cantidad de personas atendidas en un da. DIAS : Contador de das de la simulacin (0 < DIAS < 261). EXT : Tiempo extra. IA : Intervalo entre arribos de personas al sistema. MCANT : Mayor cantidad de personas atendidas en un da del ao. MNC : Mayor longitud de la cola alcanzada en un da. MTA : Mayor tiempo de atencin a una persona. NC : Nmero de personas en la cola actualmente. PROCAN: Promedio personas atendidas diariamente durante todo el ao. PROEX : Promedio de horas extras. T : Reloj. Tiempo actual. TA : Tiempo de atencin a una persona. TLL : Tiempo de llegada de una persona al sistema. TOC : Tiempo ocioso en el sistema. TS : Tiempo de servicio del sistema.

Colas Simples: Ejemplo

ACANT : Acumulador de cantidad de personas atendidas en un da. ACEXT : Acumulador de tiempo extra. CANT : Cantidad de personas atendidas en un da. DIAS : Contador de das de la simulacin (0 < DIAS < 261). EXT : Tiempo extra. IA : Intervalo entre arribos de personas al sistema. MCANT : Mayor cantidad de personas atendidas en un da del ao. MNC : Mayor longitud de la cola alcanzada en un da. MTA : Mayor tiempo de atencin a una persona. NC : Nmero de personas en la cola actualmente. PROCAN: Promedio personas atendidas diariamente durante todo el ao. PROEX : Promedio de horas extras. T : Reloj. Tiempo actual. TA : Tiempo de atencin a una persona. TLL : Tiempo de llegada de una persona al sistema. TOC : Tiempo ocioso en el sistema. TS : Tiempo de servicio del sistema.

Cola Simple. Ejemplo. Salida


DA N ...: 254
Tiempo ocioso........................................: 7 min. Tamao mximo de la cola................: 7 Mximo tiempo de atencin.............: 9 Cantidad de personas atendidas..: 51 Cantidad de horas extras................: 5 min. Tiempo ocioso........................................: 6 min. Tamao mximo de la cola................: 14 Mximo tiempo de atencin.............: 8 Cantidad de personas atendidas..: 55 Cantidad de horas extras................: 4 min. Tiempo ocioso........................................: 0 min. Tamao mximo de la cola................: 18 Mximo tiempo de atencin.............: 10 Cantidad de personas atendidas..: 66 Cantidad de horas extras................: 8 min.

DA N ...: 258
Tiempo ocioso........................................: 3 min. Tamao mximo de la cola................: 9 Mximo tiempo de atencin.............: 9 Cantidad de personas atendidas..: 57 Cantidad de horas extras................: 6 min. Tiempo ocioso........................................: 15 min. Tamao mximo de la cola................: 10 Mximo tiempo de atencin.............: 9 Cantidad de personas atendidas..: 49 Cantidad de horas extras................: 9 min. Tiempo ocioso........................................: 0 min. Tamao mximo de la cola................: 9 Mximo tiempo de atencin.............: 8 Cantidad de personas atendidas..: 48 Cantidad de horas extras................: 1 min. Promedio de horas extras.................: 5.68 min. Promedio de personas atendidas...........: 53.66 N Mximo de personas atendidas en un da.: 67

DA N ...: 255

DA N ...: 259

DA N ...: 256

DA N ...: 260

DA N ...: 257
Tiempo ocioso........................................: 4 min. Tamao mximo de la cola................: 9 Mximo tiempo de atencin.............: 7 Cantidad de personas atendidas..: 44 Cantidad de horas extras................: 5 min.

PROMEDIOS

(solo se listan los ltimos das de simulacin por cuestin de espacio)

Unidad 5 Planificacin de Trabajos en las Colas


Rolando Titiosky
Extracto de: Guido J. Pace (UNNE FCENA). Modelos y simulacin,1993. Introduccin a la Simulacin de Eventos Discretos. Gabriel A. Wainer. Departamento de Computacin FCEN, UBA. Ing Luis Zuloaga Rotta. Investigacin de Operaciones, 2005. UNI FIIS, Peru.

Planificacin
Repartir el tiempo disponible de atencin de un Recurso Servidor entre los Elementos que estn en cola y esperan su Servicio.
Solo uno de ellos puede serlo (en c/Servidor).

Existen 2 tipos de algoritmos de planificacin,


Expropiativos: atienden el Elemento hasta terminar. No expropiativos: Asignan un tiempo de Atencin a c/Elemento despus del cual se lo saca y se atiende a otro Elemento y hasta que c/Elemento acabe su trabajo.

A menudo, se realiza Simulacin de un Sistema de Colas bajo diferentes polticas a fin de encontrar la que mejor se ajusta a la distribucin de Servicio del Sistema.

CRITERIOS DE PERFORMANCE
Utilizacin del Servidor: es cuanto tiempo ha pasado utilizado el Servidor: T.Utilizado/TiempoTotal Rendimiento: Cantidad de Elementos Atendido Tiempo de retorno: Intervalo desde el momento de inicio de un trabajo hasta su final. Tiempo de espera: Intervalo desde el momento de encolamiento hasta ser atendido. Tiempo de respuesta: Es el tiempo que el proceso tarda en comenzar a responder, pero no el tiempo que tarda en emitir esa respuesta.

Maximizar utilizacin y rendimiento del servidor Minimizar tiempo de retorno, de espera y de respuesta.
La Planificacin de la Cola Afecta Sensiblemente la Performance

PLANIFICACIN DE COLAS
First-Come-First-Served: (FCFS) Primero en Llegar, Primero en ser Servido. Cola FIFO. Elemento Tiempo de Ejecucin 1 24 La performance del FCFS es a menudo muy pobre.
Elemento 1 0 24 Elem. 2 27 Elem. 3 30
2 3 3 3

El tiempo de retorno para elemento 1 es 24; para el 2 es 27 y para el 3 es 30. El tiempo de retorno promedio es (24+27+30)/3 = 27.
Si el orden de llegada es 2,3,1, tenemos: Aqu el tiempo de retorno promedio es ahora muy inferior: (3+6+30)/3 = 13.

Elem. 2 0 3

Elem. 3 6

Elemento 1 30

As vemos que el tiempo de retorno promedio para FCFS, generalmente, no es mnimo y puede variar mucho.

PLANIFICACIN DE COLAS. Cont


Shortest Job First: (SJF) Trabajo ms corto Primero. Si existen 2 elementos con el mismo tiempo de tratamiento se usa FCFS.
Elemento 1 2 3 4 Tiempo de Ejecucin 11 8 6 3

Veamos el Gantt de FCFS Elemento 1 Elemento 2 Elemento 3 Elemento 4 0.. 11 19 25 28 Tr(FCFS)= (11+19+25+28)/4=20,75 Veamos el Gantt de SJF Elemento 4 Elemento 3 Elemento 2 Elemento 1 0.. 3 9 17 24 Tr(SJF)= (6+9+17+24)/4=14

SJF
Tiene el mnimo tiempo de espera promedio para un conjunto de elementos. Qued demostrado que tratando a un elemento corto antes que uno largo, se disminuye el tiempo de espera del corto que el incremento de espera del largo.
Por lo tanto el promedio de tiempo de espera se achica.

La Gran dificultad del SJF es conocer el tiempo de tratamiento de los elementos.

PLANIFICACIN DE COLAS. Cont


Prioridad: SJF es un caso especial del algoritmo de planificacin por prioridades. Se asocia una prioridad a cada elemento y se otorga el servidor al trabajo con mayor prioridad. Aquellos trabajos con igual prioridad, son planificados de acuerdo a FCFS. SJF: la prioridad (p) es tratamiento(TT) , p=1/TT la inversa del tiempo de

Bloqueo indefinido o inanicin. Solucin: aejamiento: en forma gradual se aumenta la prioridad de un elemento luego de pasado cierto tiempo en espera.

PLANIFICACIN DE COLAS. Cont


Round-Robin Se define un quantum de tiempo. La cola es una cola circular. Se recorre la cola asignando el servidor a cada proceso por intervalos mximos de un quantum.
Veamos el mismo ejemplo usado en FCFS:

Elemento 1 2 3

Tiempo de Ejecucin 24 3 3

Uso un quantum = 4 unidades de tiempo Elemento 1 0 4 Elem. 2 7 Elem. 3 10 Elemento 1 14 Elemento 1 18 Elemento 1 22 Elemento 1 26 Elemento 1 30

El tiempo de retorno promedio es: (30 + 7 + 10)/3 = 47/3 = 16 aproximadamente.

La performance depende fuertemente del quantum. Si es muy grande: FCFS. Si es muy sistema. pequeo, la conmutacin de contexto entorpece el

También podría gustarte