95
Tema 5: Teoría de colas Ezequiel López Rubio Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga

Diapositivas Teoria de Colas

Embed Size (px)

DESCRIPTION

INV II

Citation preview

Tema 5: Teora de colasEzequiel Lpez RubioDepartamento de Lenguajes y Ciencias de la ComputacinUniversidad de MlagaSumarioConceptos bsicosCola MM!Cola MMcCola MM!"Redes de colasRedes de #ac"son abiertasRedes de #ac"son cerradasConceptos bsicosConcepto de colaUna cola es una l$nea de espera para determinado servicioEste servicio lo proporciona uno o varios dependientesLa teor$a de colas analiza la causa de la %ormacin de la cola& que es la e'istencia de momentos en los que (ay una mayor demanda de servicio que la capacidad de servicio Clasificacin de sistemas de colasLlamaremos clientes& trabajos o tareas a los que demandan servicio& y dependientes& empleados o servidores a los que o%recen servicioUn sistema de colas viene dado por varias caracter$sticas)!* Modelo de llegada de clientes& El $ndice de llegadas ser el n+mero medio de llegadas por unidad de tiempo& ,lternativamente podemos usar el tiempo entre llegadas& que es el tiempo medio entre llegadas sucesivasClasificacin de sistemas de colas-* Modelo de servicio& .uede venir dado por el tiempo de servicio o por el n+mero de clientes atendidos por unidad de tiempo& /endremos una variable aleatoria o bien un servicio determinista& ,qu$ supondremos que el modelo de servicio es independiente del de llegada0* Disciplina de la cola& Establece el orden en que se va atendiendo a los clientes).or orden de llegada 123245.or orden inverso al de llegada 1L32456eleccin aleatoria 1R,7D4M56eg+n prioridades 1.R34R3/8& .R5& Dos subtipos)Con interrupcin& 6i llega un cliente de ms prioridad& el trabajo que se estaba sirviendo se interrumpe para atenderlo6in interrupcin& 7o se pueden interrumpir los trabajosDentro de cada clase de prioridad se podrn aplicar disciplinas L324& 2324 o R,7D4M&Clasificacin de sistemas de colas9* Capacidad del sistema& Es el n+mero m'imo de clientes que puede (aber en el sistema 1%inito o in%inito5& 6i llega un cliente y el sistema est lleno& se marc(a&:* 7+mero de canales de servicio& Es el n+mero de dependientes& .uede (aber una cola para cada dependiente o bien una sola cola global;* 7+mero de estados de servicio& .uede (aber varias partes en las que se subdivide el trabajo 1estados5& cada una con su cola y su dependiente& que deben ser completadas sucesivamente& .& ej&& tres estados)Notacin de KendallLa notacin de 8?@& donde), es el modelo de llegadas& @alores posibles)MAtiempos entre llegadas e'ponencialesDAtiempos entre llegadas deterministasBAtiempos entre llegadas generales 1cualquier distribucin5= es el modelo de servicio& .uede tomar los mismos valores que ,Notacin de Kendall> es el n+mero de dependientes 1servidores58 es la capacidad del sistema 1n+mero m'imo de clientes en el sistema5& 6e puede omitir si es in%inita? es la disciplina& 6e puede omitir si es 2324@ es el n+mero de estados de servicio& 6e puede omitir si es !.or ejemplo& MM!2324! se escribe abreviadamente MM! Medidas de rendimientoUna vez descrito el sistema& nuestro objetivo es evaluar su rendimiento& .ara ello tenemos varias medidas de rendimiento)7+mero medio de clientes en el sistema& notado L/iempo medio de espera de los clientes& C7+mero medio de clientes en la cola& Lq/iempo medio de espera en cola de los clientes& CqCola M | M | 1Descripcin del modeloDay una sola cola& cuya capacidad es in%inita& y un solo servidor& La disciplina ser 2324Las llegadas se producen seg+n un proceso de .oisson de razn & donde es el n+mero medio de llegadas por unidad de tiempo y !E es el tiempo medio entre llegadas& Los tiempos entre llegadas se distribuirn e'ponencialmente& E'p15Los tiempos entre servicios tambiFn se distribuirn e'ponencialmente& E'p15& de tal manera que es el n+mero medio de clientes que el servidor es capaz de atender por unidad de tiempo y !E es el tiempo medio de servicioCondicin de no saturacin6e demuestra que si & el sistema se satura& es decir& el n+mero de clientes en la cola crece inde%inidamente con el tiempo& .or consiguiente& la condicin de no saturacin ser) < donde , 17osotros slo estudiaremos las colas que no se saturan& Cuando una cola no se satura& tambiFn se dice que alcanza el estado estacionario&robabilidadesEl parmetro se llama carga& %lujo o intensidad de tr%ico del sistema& puesto que mide la relacin entre la cantidad de trabajos que llegan y la capacidad de procesarlos6uponiendo que el sistema no se satura& se deduce la siguiente %rmula para las probabilidades pn de que (aya n clientes en el sistema& donde nN)( ) 1nnpMedidas de rendimientoEl n+mero medio de clientes en el sistema& L& se calcula as$)( ) ( ) 0 0 01 1jjjjjjj j p j L 6umamos la serie aritmFticoGgeomFtrica)... 4 3 24 3 2+ + + + S... 3 24 3 2+ S( ) + + + + 1... 14 3 2S( )( ) 1112LMedidas de rendimientoLa utilizacin del dependiente& notada U& es la %raccin de tiempo 1en tanto por uno5 que el dependiente permanece ocupado& .ara (allarla& nos valemos de que cuando no (ay saturacin& el n+mero medio de clientes que entran en el sistema debe ser igual al n+mero medio de clientes que salen de Fl) U UComo para deducir la anterior %rmula no (emos usado ninguna caracter$stica especial del modelo de entrada ni del de salida& dic(a %rmula es vlida para colas BB!Medidas de rendimientoEl tiempo medio de respuesta C es el tiempo medio que un trabajo permanece en el sistema& 6i suponemos que un trabajo& al llegar al sistema& se encuentra con que (ay por delante de Fl otros j trabajos& el tiempo medio que tardar en salir del sistema ser jH! veces el tiempo medio de servicio& .or lo tanto)( ) 1 1 1 110 0 0+ + + Lp p j p j Wjjjjjj/iempo que se pasaen el sistema si(ay j por delanteal llegar.robabilidad de que(aya j por delanteal llegarMedidas de rendimiento.odemos simpli%icar algo ms) + 1 1 LWEl tiempo medio de espera en la cola Cq se (allar restando a C el tiempo que tarda en ser servido el trabajo 1esto es vlido para cualquier tipo de cola5)1 W WqEn el caso particular de una cola MM!& obtenemos) qW!"emploUnos mecnicos llegan a una media de !I por (ora a recoger piezas de repuesto& Estas piezas se las da un dependiente pagado con : JE(ora y que tarda como media : min en servir& Cada (ora que tiene que esperar un mecnico 1en el sistema5 le cuesta al taller !I J& Kueremos saber si merece la pena contratar a un ayudante de dependiente& pagado con 9JE(ora& de %orma que el tiempo medio de servicio se reduzca a 9 minNota: ,l resolver un problema de colas& tener siempre muy presente la co(erencia de unidades!"emplo/enemos dos opciones)6in ayudante) !E! A : min A !E!- (Con ayudante) !E- A 9 min A !E!: (En ambos casos& A !I clientesE(4pcin ! 1sin ayudante5)mecnicos 51210112101;1210111 1 L.or tanto& perdemos :L1!IJE(5 A :IJE(!"emplo4pcin - 1con ayudante5)mecnicos 21510115101;1510111 2 L.or tanto& perdemos -L1!IJE(5 A -IJE( debido a la espera de los mecnicos& .ero tambiFn perdemos 9JE( debido al sueldo del ayudante& .or tanto& las pFrdidas totales son -9JE(En la opcin ! perdemos :IJE( y en la opcin - perdemos -9JE(& con lo cual la ms ventajosa es la opcin -&Ms medidas de rendimientoEl n+mero medio de trabajos en la cola Lq& se calcula restndole a L el n+mero medio de trabajos que estn siendo servidos)( ) 1 1120L p L Lq.robabilidad de que un cliente que llega pase ms de t unidades de tiempo en el sistema)( )W te t W/ ( )W tqe t W/ .robabilidad de que un cliente que llega pase ms de t unidades de tiempo en la cola)!"emplos!"emplo: Un canal de comunicacin se usa para enviar datos desde unos ordenadores %uente a uno central& Cada %uente env$a paquetes de datos seg+n un proceso de .oisson de razn - paquetesEseg& ,dems cada %uente env$a independientemente de las otras& /odos los paquetes son idFnticos& esperan en una cola com+n y despuFs se transmiten de uno en uno& Los tiempos de transmisin se distribuyen e'ponencialmente& con media -: mseg& Determinar el n+mero m'imo de %uentes que se pueden conectar al canal de tal manera que)!"emplos!* El canal no se sature6i tenemos " %uentes& llegarn a la cola -" paquetesEseg& .or otro lado& !E A I&I-: seg A 9I paquetesEsegEl canal no se satura cuando M!)fuentes 20 120 402< < kk k!"emplos-* En media los paquetes no pasen en el sistema ms de !II mseg/al como ocurr$a en el apartado anterior& llegarn a la cola -" paquetesEseg& y tendremos A 9I paquetesEseg7os e'igen CI&! seg)fuentes 15 1 , 02 401 1 kkW !"emplos0* En el estado estacionario se garantice queal menos el N:O de los paquetes tenga un tiempo de respuesta que no e'ceda de !II mseg/al como ocurr$a en el apartado anterior& llegarn a la cola -" paquetesEseg& y tendremos A 9I paquetesEseg7os e'igen que la probabilidad de que un paquete pase ms de !II mseg en el sistema sea in%erior al :O& es decir& C1!II mseg5I&I:)( )( ) 05 , 0 ln 4 2 , 0 05 , 0 05 , 0 1 , 02 40 1 , 0k e Wk) k que (ya fuentes 5 021 , 52 , 005 , 0 ln 4N + k k k!"emplos!"emplo: 6upongamos que una cola MM! con parmetros y se sustituye por n colas MM! independientes de parmetros En y En& Es decir& dividimos la carga de trabajo y la capacidad de proceso en n partes iguales& Evaluar el e%ecto del cambio usando como medidas de rendimiento el tiempo medio de respuesta y el n+mero medio de trabajos en el sistemaEnEnEnEnP!"emplos,lternativa ! 1una sola cola5& !A& !A ) 1111L 1 11 11W,lternativa - 1n colas independientes5& -AEn& -AEn )1221222111 1nL n n n n Lnnnnni !"emplos12 221 1 1nW n Wn n Como la alternativa ! tiene menores valores para ambas medidas de rendimiento& concluimos que la dic(a alternativa es mejorEsto nos indica que lo mejor es no dividir la capacidad de procesamiento& es decir& tener un +nico servidor que atienda a todos los clientesTeorema de #ittle6ea un sistema de colas con cualquier distribucin de llegadas y servicios y cualquier estructura& 6ean L el n+mero de trabajos presentes en el sistema en el estado estacionario& C es tiempo medio de respuesta en el estado estacionario y la razn de llegadas al sistema& Entonces)W L Teorema de #ittleE'plicacin intuitiva) 6upongamos que cobramos !J a cada trabajo por cada unidad de tiempo que pasa en el sistema& Dabr$a dos maneras equivalentes de medir las ganancias)Colocando un recaudador a la entrada del sistema& le cobrar como media C a cada uno de los trabajos que vea pasar por unidad de tiempoCada vez que transcurre una unidad de tiempo& cobro ! J a cada uno de los L trabajos que como media (ay en ese instante en el sistemaTeorema de #ittle6i aplico el teorema a la cola& dejando %uera del sistema al servidor& obtengo el siguiente resultado& tambiFn muy +til)q qW L Las dos %rmulas obtenidas nos sirven para ayudarnos a obtener los valores de las medidas de rendimiento& aunque necesitaremos otras ecuaciones para poder conseguir resultados e'pl$citosCola M | M | cDescripcin del modeloDay una sola cola& cuya capacidad es in%inita& y cservidores& La disciplina ser 2324Las llegadas se producen seg+n un proceso de .oisson de razn & donde es el n+mero medio de llegadas por unidad de tiempo y !E es el tiempo medio entre llegadas& Los tiempos entre llegadas se distribuirn e'ponencialmente& E'p15Los tiempos de servicio tambiFn se distribuirn e'ponencialmente& E'p15& de tal manera que es el n+mero medio de clientes que cada servidor es capaz de atender por unidad de tiempo y !E es el tiempo medio de servicioCondicin de no saturacin6e demuestra que si c& el sistema se satura& es decir& el n+mero de clientes en la cola crece inde%inidamente con el tiempo& .or consiguiente& la condicin de no saturacin ser) cdonde +< 1 21 01 1 121.ara que la alternativa ! sea mejor& (a de cumplirse que L!ML-)1 2 1 < < + Como M! siempre se cumple& tendremos que la alternativa ! siempre es mejor& Es decir& no conviene dividir la capacidad de procesamiento en dos servidores!"emplos!"emplo: Usando el n+mero medio de clientes en el sistema como medida de rendimiento& comparar estas dos alternativas)E-E-E-E-,lternativa -) ,lternativa !)E-E-!"emplos,lternativa ! 1ntese que (ay - colas5) one ,1212111L,lternativa - 1es la alternativa - del ejemplo anterior5) 222( ) ( ) + 1 122L!"emplos( ) ( ) +> )'> +> 1 11 0121 1212.ara que la alternativa - sea mejor& (a de cumplirse que L!QL-)0 1 1 > > + Como QI siempre se cumple& tendremos que la alternativa - siempre es mejor& Es decir& no conviene poner dos colas& sino tener una +nica cola global!"emplos!"emplo: En una copister$a se dispone de 0 mquinas %otocopiadoras a disposicin del p+blico& Cada mquina es capaz de servir& por tFrmino medio& R trabajos cada (ora& , la copister$a llegan como promedio : clientes a la (ora&.armetros del sistema) A : clientesE(& A R clientesE(& c A 0 servidores& El sistema no se satura porque M!&245! " 35 c!"emplosSCul es la probabilidad de que las tres mquinas estFn libres a la vezT( )( )( )( )

,_

+

,_

+ 1203 31100!31 ! 33! 1 !nncnn c cn ncccp ( )( ) ( ) ( )0,5342#0$5$%30412!25!512432125! 23! 13! 031 ! 33112 1 0 3 3

,_

+ + +

,_

+ + + ( ) ( )clientes 0,00#22$4341#%13021 ! 331 !25$%3044 3201 +cp cLc cqSCul es el n+mero medio de clientes en la colaT!"emplosSCul es el tiempo medio de espera en la colaT& 0014452% , 035%#%5241#%1 " 5 302 qqLWSCul es el tiempo medio de espera en el sistemaT& 12$445 , 040$5514!135%#%52 1 + + qW WSCul es el n+mero medio de clientes en el sistemaTclientes 0.$3222$!1351440$5514" 5 W L Cola M | M | 1 | %Descripcin del modeloDay una sola cola& cuya disciplina ser 2324& La capacidad del sistema es limitada& de tal modo que slo puede (aber " clientes como m'imo en el sistema& .or lo tanto& el n+mero m'imo de clientes en la cola es "U!& 6i un cliente llega y el sistema est lleno& es rec(azado y nunca ms regresaLas llegadas se producen seg+n un proceso de .oisson de razn & Los tiempos entre llegadas se distribuirn e'ponencialmente& E'p15Los tiempos entre servicios tambiFn se distribuirn e'ponencialmente& E'p15& de tal manera que es el n+mero medio de clientes que el servidor es capaz de atender por unidad de tiemporobabilidadesEl sistema nunca se satura& ya que la capacidad es limitada6e deduce la siguiente %rmula para las probabilidades pn de que (aya n clientes en el sistema& donde nVI& !& -& P& "W)( )'++1 si ,1 k11 si ,111 knnprobabilidadesEl valor de determina cmo var$an los pn)6i M!& los estados ms probables son los de menor n+mero de clientes& porque la o%erta de servicio supera a la demanda6i Q!& los estados ms probables son los de mayor n+mero de clientes& porque la demanda de servicio supera a la o%erta6i A!& todos los estados son equiprobables& .odemos llegar a la %rmula del caso A! aplicando la regla de LXDYpital al l$mite para ! de la %rmula del caso ! 6i (acemos "& llegamos al modelo MM!Medidas de rendimiento/asa e%ectiva de llegadas& e%& Es el n+mero medio de clientes admitidos al sistema por unidad de tiempo de entre los que intentan entrar 1e%M5)( )k efp 1 ( )'+++1 si ,21 si ,11111kkLkk7+mero medio de clientes en el sistema 1este valor siempre debe ser in%erior a "5)Medidas de rendimiento.odemos obtener las dems medidas de rendimiento mediante razonamientos ya vistos& teniendo en cuenta que la tasa e%ectiva de llegadas al sistema es e%)1+ qW WW Lef q ef qW L !"emplo, un taller mecnico llegan ve($culos para el cambio de pastillas de %reno& Los coc(es llegan a un promedio de !R a la (ora seg+n un proceso de .oisson& El espacio %$sico del taller slo permite que (aya 9 ve($culos& y las ordenanzas municipales pro($ben esperar %uera& El taller puede servir a un promedio de ; coc(es por (ora de acuerdo a una distribucin e'ponencial&.armetros del sistema) A !R ve($culosE(& A ; ve($culosE(& " A 9 ve($culos3$1! !"emploSCul es la probabilidad de que no (aya ning+n ve($culo en el tallerT( )0,00!2$44$121124223 13 1111 4 1 400 + + pSCul es el promedio de ve($culos que (ay en el tallerT( ) ( )++++++1 41 4113 13 1 43 13111kkkL 'e&(culos 3,520$$1112142$242121523 !"emploSCunto tiempo pasa por tFrmino medio un coc(e en el tallerT( )( )

,_

+1111 1kkk efp ( )clientes/& 5,%50413121#203 12 31 1!54

,_

&oras 0,5%1$$$$120#1#2042$121#2012142$ efLW!"emploSCunto tiempo esperan por tFrmino medio en la cola los coc(esT&oras 425 , 0401#$1120#1 1 W WqSCul es la longitud media de la colaT 'e&(culos 2,52!%312130$401#"121#20 q ef qW L &edes de colas&edes de colasUna red de colas es un sistema donde e'isten varias colas y los trabajos van %luyendo de una cola a otraEjemplos)2abricacin 1trabajosAart$culos54%icinas 1trabajosAdocumentos5Redes de comunicaciones 1trabajosApaquetes56istemas operativos multitarea 1trabajosAtareas5!nrutado de traba"osCriterios para decidir a quF cola se dirige un trabajo que acaba de salir de otra).robabil$stico) se elige una ruta u otra en %uncin de una probabilidad 1puede (aber distintos tipos de trabajos& cada uno con sus probabilidades5Determinista) cada clase de trabajo se dirige a una cola %ijaTipos de redes de colas6e distinguen dos tipos de redes de colas),biertas) Cada trabajo entra al sistema en un momento dado& y tras pasar por una o ms colas& sale del sistema& Dos subtipos),c$clicas) Un trabajo nunca puede volver a la misma cola 1no e'isten ciclos5C$clicas) Day bucles en la redCerradas) Los trabajos ni entran ni salen del sistema& .or lo tanto permanecen circulando por el interior del sistema inde%inidamente& Usualmente e'iste un n+mero %ijo de trabajos&&ed abierta acclica&ed abierta cclica&ed cerrada&edes de 'ac%son abiertasDefinicinUna red de colas abierta se dice que es de #ac"son sii)6lo (ay una clase de trabajosLos enrutados son probabil$sticos& donde rij I es la probabilidad de ir al nodo j despuFs de (aber salido del nodo i& .or otro lado& riI es la probabilidad de abandonar del sistema despuFs de (aber salido del nodo i& donde riI A !U Zjrij Cada nodo i es una cola [MciLa tasa de llegadas e'ternas al nodo i se notar iEl n+mero total de nodos de la red se notar