Simulacion sistemas tema6pr-2

175
-1

Published on

Published in: Travel
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
175
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Simulacion sistemas tema6pr-2

  1. 1. 1Explotación deSistemas InformáticosLuis de la OssaDepartamento de Sistemas Informáticos - UCLMTema 6: Simulación de sistemasinformáticosEn este tema se hace una breve introducción a lo quees la simulación de sistemas y el modo en que estapuede utilizarse para estudios de evaluación delrendimiento.Los conceptos que se presentarán serán ampliados yutilizados en el desarrollo de la práctica 2.Tema 6: Simulación de sistemasESSII
  2. 2. 2Índice6.1 Introducción6.2 Conceptos en simulación de eventos discretos.6.3 Simulación de sistemas informáticos.6.4 Pasos y errores en la simulación.Tema 6: Simulación de sistemasESSIITema 6:Simulación de sistemas6.1 IntroducciónTema 7: Simulación de sistemasESSII
  3. 3. 36.1: IntroducciónTema 6: Simulación de sistemasESSII¿Qué es la simulación?La simulación reproduce el comportamiento de un sistema mediante el uso deun programa informático y sirve para analizar su comportamiento y rendimiento.Entradas: Un conjunto de parámetros.Algunos fijos y otros generados a partir de distribuciones de probabilidad.Con trazas de la carga de trabajo real.Salidas:Datos numéricos y de otros tipos recogidos.Estos datos pueden ser considerados como muestras del rendimiento delsistema.6.1: IntroducciónTema 6: Simulación de sistemasESSII¿Por qué usar simulación?La simulación resulta útil para estimar el rendimiento de un sistema en distintoscasos:El sistema es demasiado complejo como para modelarlo analíticamente.Es demasiado costoso construir un prototipo para mediciones.Se ha de estudiar un número importante de alternativas.Proporciona un sistema virtual basado en qué aplicaciones pueden serdiseñadas y testeadas.Problema: Las simulaciones pueden fallar.
  4. 4. 46.1: IntroducciónTema 6: Simulación de sistemasESSIISistemas y entornosUn sistema se define como un grupo de objetos que se unen en unainteracción o interdependencia regular para un propósito determinado común.Por ejemplo: En una línea de producción de automóviles las máquinas,partes componentes y obreros operan de manera conjunta a lo largo deluna línea de ensamblaje para producir un vehículo.Entorno: El sistema es afectado por los cambios que ocurren en el exterior.Estos cambios se dicen que ocurren en el entorno del sistema.Hay una separación entre el sistema y el entorno.6.1: IntroducciónTema 6: Simulación de sistemasESSIIComponentes de un sistemaEntidad: Es un objeto de interés en el sistema.Atributo: Es una propiedad de una entidad.Actividad: Es el periodo de tiempo de una longitud específica:Por ejemplo: En un banco, los clientes serían una de las entidades, subalance un atributo, y hacer un depósito es una actividad.Estado: Es una colección de variables que son necesarias para escribir elsistema en cualquier instante y que son relativas a los objetivos del estudio.Evento: Es una ocurrencia instantánea que puede cambiar el estado delsistema.Dependiendo del propósito, el número de componentes (entidades,atributos, actividades, estados y eventos) varía.
  5. 5. 56.1: IntroducciónTema 6: Simulación de sistemasESSIIModelo de un sistemaUn modelo se define como la representación de un sistema con el propósitode estudiar el sistema.Hay modelos matemáticos y físicos.Un modelo matemático usa notación simbólica y ecuaciones matemáticaspara representar un sistema. Un modelo de simulación es un tipo particular demodelado matemático de un sistema.6.1: IntroducciónTema 6: Simulación de sistemasESSIIModelos de simulaciónEstáticos o dinámicos: En los modelos estáticos el sistema se comportaigual durante toda la simulación, mientras que en el dinámico cambia a lo largodel tiempo.Deterministas o estocásticos: En los modelos deterministas siempre seobtiene una misma salida ante las mismas entradas, mientras que losestocásticos cuentan con una componente aleatoria.Simulación de eventos o de sistemas continuos: Simulan sistemasdiscretos o continuos.Sistemas abiertos o cerrados: En los sistemas abiertos, la entrada esexterna e independiente del modelo, mientras que en los cerrados no hayentrada externa.
  6. 6. 66.1: IntroducciónTema 6: Simulación de sistemasESSIISistemas discretos y continuos.En los sistemas discretos las variables de estado cambian solamente en unconjunto discreto de puntos en el tiempo.En los sistemas continuos los cambios de estado ocurren continuamente enel tiempo.123time t time twaterTema 6:Simulación de sistemas6.2 Conceptos en simulación de eventosdiscretosTema 6: Simulación de sistemasESSII
  7. 7. 76.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIIExisten una serie de componentes específicos en los sistemas de simulación basadosen eventos discretos:Lista: Una colección de entidades asociadas o ordenadas con algún criterio lógico.Notificación de un evento: El registro de un evento que ocurre en el instante actual oen el futuro, junto con los datos asociados necesarios para ejecutar el evento. Comomínimo, hay que registrar cuando se ejecutará y de qué tipo es.Lista de eventos: Una lista de notificaciones de futuros eventos ordenados portiempo de ocurrencia. Esto se conoce también como lista futura de eventos (FEL).Actividad: Una duración de tiempo de longitud específica, que es conocida cuandocomienza:Por ejemplo: Tiempo de servicio o tiempo entre llegadas.Retraso: Una duración de tiempo de longitud desconocida y que no se sabe hastaque termina.6.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIIUna actividad representa típicamente un tiempo de servicio, un tiempo entre llegadaso cualquier otro tiempo de proceso cuya duración haya sido caracterizada por el analista.La duración de una actividad puede ser especificada de varios modos:De modo determinista: con un valor.Estadísticamente: Una variable aleatoria que se ajuste a una determinadadistribución.Como una función que depende de variables del sistema y atributos de laentidad.La duración de una actividad es computable a partir de su especificación en elinstante que comienza.Una notificación de evento se crea con un tiempo que es igual al de la completitud dela actividad.Por ejemplo si tenemos el reloj a 100 y la actividad dura 5 segundos, lanotificación de eventos se genera con otro tipo de evento en el instante 105.En contraste con la actividad, la duración de un retardo no es especificada por elanalista, sino determinada por las condiciones del sistema.Actividad
  8. 8. 86.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIIEl mecanismo para avanzar el tiempo de simulación y garantizar que todos loseventos ocurren en el orden cronológico correcto se basa en la lista de eventos futuros(FEL).La lista contiene todas las notificaciones de evento para los eventos que han sidoasignados a un tiempo futuro.Asignar un evento futuro significa que en el instante que la actividad comienza, suduración se computa en base a alguna distribución.En el mundo real, la mayoría de los eventos futuros suceden meramente.En el modelo, esos eventos se representan mediante el fin de alguna actividad.En el instante t, la FEL contiene todos los eventos futuros previamente agenciados ysus instantes asociados.El FEL se ordena por tiempo de evento. Eso significa que los eventos se colocancronológicamente.El algoritmo de asignación de eventos y avance de tiempo6.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIIEl evento asociado con el instante t es llamado el evento inminente; esto significa queserá el siguiente evento en ocurrir.Después de que el estado del sistema en el periodo t haya sido actualizado, el relojavanza hasta el periodo t1, y el evento inminente se borra de la FEL.La ejecución de un evento inminente implica un nuevo estado.Durante el instante ti pueden generarse nuevos eventos futuro. Si son generados, seagendan creando nuevas notificaciones y colocándolas en el sitio adecuado de la fEL.Entonces el reloj avanza hasta el siguiente evento inminente.Este proceso se repite hasta que la simulación termina.El algoritmo de asignación de eventos y avance de tiempo
  9. 9. 96.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIIPaso 1: Borrar la notificación de evento para el inminente.Paso 2: Ejecutar el evento inminente y cambiar el estado del sistema.Cambiar los atributos de las entidades si se necesita.Paso 3: Generar los eventos futuros (si es necesario) y situar susnotificaciones en la FEL ordenados por tiempo.Paso 4: Avanzar el reloj hasta el siguiente evento inminente.Paso 5: Refrescar las estadísticas y contadores.Este proceso se repite hasta que la simulación termina.El algoritmo de avance de tiempo6.2: Conceptos en simulación de eventos discretosTema 6: Simulación de sistemasESSIILa longitud y el contenido de la FEL cambia constantemente mientras lasimulación progresa.Eventos principales:Borrado de un evento inminente.Adición de un evento nuevo a la lista.Borrado ocasional de un evento.La adición o borrado de un evento requiere una operación de búsqueda.El algoritmo de avance de tiempo
  10. 10. 10Tema 6:Simulación de sistemas6.3 Simulación de sistemas informáticosTema 6: Simulación de sistemasESSII6.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIIComo se comentó en el tema anterior, los sistemas informáticos suelenmodelarse como sistemas de colas. En ellos, determinados componentesllamados servidores atienden peticiones de los distintos trabajos.En el análisis operacional, se hacen una serie de asunciones que no tienenpor qué darse en el sistema real, como por ejemplo que todos los trabajos seaniguales, o que la tasa de llegadas sea fija.La simulación permite estudiar sistemas más complejos.A continuación se describirán los componentes utilizados en la simulaciónde sistemas.
  11. 11. 116.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIILa principal entidad en la simulación de un sistema informático es un servidor, ya quecada una de las componentes del sistema que ha de realizar una parte del proceso semodela mediante un objeto de este tipo.Los servidores tienen asociada una cola, en la que se almacenarán trabajos a la esperade ser atendidos, y estarán conectados a otras entidades del sistema.Cuentan con una serie de propiedades de interés:Política de servicio: que es el criterio que utilizan para escoger qué trabajo de lacola atender (FCFS, prioridades, etc.).Tiempo de servicio: Que es el tiempo que utilizan para atender una petición. Estepuede ser fijo o ajustarse a una distribución que, a su vez, dependerá del tipo detrabajo, de la carga que tenga ese recurso, etc.Política de enrutamiento: Los trabajos atendidos se dirigirán a otras partes delsistema en función de este parámetro, que igualmente dependerá de factores como eltipo de trabajo, la carga, etc.Servidores6.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIILa llegada de un trabajo a un servidor constituye un cambio de estado en el sistema.El fin del proceso de una petición, constituye un evento, que da lugar al inicio de otraactividad (el comienzo de otra petición) que, a su vez, producirá un evento futuro (el fin deesa actividad).Un servidor puede representar desde un procesador a un disco o incluso una red.Servidores
  12. 12. 126.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIILos trabajos son las entidades que serán procesadas por los servidores.Se dividen en clases, y cada una de ellas contará con una serie de atributos:En los sistemas abiertos, cada clase llegará al sistema con una frecuencia que irádeterminada por una distribución de probabilidad.En los sistemas cerrados, en los que el número de trabajos permanece constante,existirá un número determinados de trabajos de cada clase.Cada clase tendrá un tratamiento en los servidores, tanto en lo relativo al tiempo deproceso por petición como en lo relativo al encaminamiento del trabajo.En los sistemas abiertos, las clases van relacionadas con un tipo de objeto especial, unafuente, que genera los trabajos con las distribuciones especificadas y los envía a losdistintos recursos según sea la política que se ha establecido.La generación de un trabajo es también un evento.Trabajos6.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIIEs un componente que simula un número infinito de servidores, por tanto no dispone decola y los trabajos son atendidos de manera inmediata.El resto de parámetros (tiempos de servicio y política de encaminamiento) se establecendel mismo modo que en un servidor.Un trabajo desaparece al llegar a esta entidad.Estaciones de retardoSumidero
  13. 13. 136.3: Simulación de sistemas informáticos.Tema 6: Simulación de sistemasESSIITiene como único objetivo el encaminar los trabajos. Se configura igual que la política deenrutamiento de un servidor o de una fuente.El Fork sirve para crear peticiones similares a la que llega, mientras que Join sirve paraavanzar si todas esas peticiones han acabado.Divisor de cargaFork y Join7.1: IntroducciónTema 7: Simulación de sistemasESSIIEjemplo de un sistema
  14. 14. 14Tema 6:Simulación de sistemas6.4 Pasos y errores en la simulaciónTema 7: Simulación de sistemasESSII6.4: Pasos y errores en la simulaciónTema 6: Simulación de sistemasESSIIPasos en un estudio de simulaciónFormulación del problema:Descripción del problemaEste debe ser comprendido con claridad.Fijar los objetivos y el plan general:Los objetivos indican las cuestiones que deben ser respondidas por lasimulación.Se debe determinar donde es apropiada la simulación y donde no.Conceptualización del modelo:Abstraer las características esenciales del problema.Seleccionar y modificar las asunciones básicas que caracterizan elsistema.Enriquecer y elaborar el modelo hasta obtener una aproximación útil.Es mejor empezar por un modelo simple y enriquecerlo.No es necesario plasmar el sistema de manera completa.Solamente se necesita la esencia de un sistema real.
  15. 15. 156.4: Pasos y errores en la simulaciónTema 6: Simulación de sistemasESSIIPasos en un estudio de simulaciónColección de datos:Se deben identificar y recoger diferentes tipos de datos cuando seconstruye el modelo.Plasmación del modelo:El modelo debe ser plasmado en un programa.Verificación:¿Funciona el programa de manera correcta?Es difícil con modelos complejos.ValidaciónComprobación de la fidelidad del modelo.Diseño experimentalLongitud del periodo de inicialización.Duración de las simulaciones.El número de repeticiones que debe hacerse para cada ejecución.6.4: Pasos y errores en la simulaciónTema 6: Simulación de sistemasESSIIPasos en un estudio de simulaciónDocumentaciónDos tipos: programa y proceso.Implementación.
  16. 16. 166.4: Pasos y errores en la simulaciónTema 6: Simulación de sistemasESSIIErrores comunes en simulaciónUsar un nivel de detalle inapropiado:Se puede simular un sistema con distinto nivel de detalle. Un nivel dedetalle bajo puede hacer que se pierda mucha información mientras que unnivel alto supone un aumento de coste y de probabilidad de error.Elección del lenguaje inapropiada:Los lenguajes de propósito general son flexibles, de ejecución rápida,pero requieren implementar un número considerable de funciones desimulación generales.Los lenguajes de simulación son más utilizados. El problema queconllevan, además de la eficiencia, es que hay que aprenderlos.Modelos no verificados:Los programas pueden tener errores.6.4: Pasos y errores en la simulaciónTema 6: Simulación de sistemasESSIIErrores comunes en simulaciónModelos inválidosEl modelo simulado puede no ser representativo del sistema real.Manejo no adecuado de las condiciones iniciales:El sistema puede estar en un estado determinado al principio de lasimulación.Simulaciones demasiado cortas.
  17. 17. 17Tema 6:Simulación de sistemasFINTema 6: Simulación de sistemasESSII

×