miércoles, 22 de febrero de 2012

4º CLASE DE AUTOMATISMOS



PROCESO ESTOCASTICO

       En estadística, y específicamente en la teoría de la probabilidad, un proceso estocástico es un concepto matemático que sirve para caracterizar una sucesión de variables aleatorias (estocásticas) que evolucionan en función de otra variable, generalmente el tiempo. Cada una de las variables aleatorias del proceso tiene su propia función de distribución de probabilidad y, entre ellas, pueden estar correlacionadas o no.

          Cada variable o conjunto de variables sometidas a influencias o impactos aleatorios constituye un proceso estocástico.


METODO DE MONTECARLO


          El método de Montecarlo es un método no determinístico o estadístico numérico, usado para aproximar expresiones matemáticas complejas y costosas de evaluar con exactitud.


          Proporciona soluciones aproximadas a una gran variedad de problemas matemáticos posibilitando la realización de experimentos con muestreos de números pseudoaleatorios en una computadora. El método es aplicable a cualquier tipo de problema, ya sea estocástico o determinista.


         A diferencia de los métodos numéricos que se basan en evaluaciones en N puntos en un espacio M-dimensional para producir una solución aproximada, el método de Montecarlo tiene un error absoluto de la estimación que decrece como (1/ Raiz cuadrada  de N) en virtud del teorema del límite central.





           
         Espacio de probabilidad

Es un concepto matemático que sirve para modelizar un cierto experimento aleatorio.
En general un espacio probabilístico está integrado por tres componentes.

  • Primero, el conjunto Ω (llamado espacio muestral) de los posibles resultados del experimento, llamados sucesos elementales.
  

  • Tercero una medida de probabilidad o función de probabilidad que asigna una probabilidad a todo suceso y que verifica los llamados axiomas de Kolgomorov.

Variable aleatoria
Una variable es aleatoria si su valor está determinado por el azar. En gran número de experimentos aleatorios es necesario, para su tratamiento matemático, cuantificar los resultados de modo que se asigne un número real a cada uno de los resultados posibles del experimento. De este modo se establece una relación funcional entre elementos del espacio muestral asociado al experimento y números reales.


 
Teoría de colas

La teoría de colas es el estudio matemático de las líneas de espera o colas dentro de una red de comunicaciones. Su objetivo principal es el análisis de varios procesos, tales como la llegada de los datos al final de la cola, la espera en la cola, entre otros.


La teoría de colas generalmente es considerada una rama de investigación operativa porque sus resultados a menudo son aplicables en una amplia variedad de situaciones como negocios, comercio, industria, ingenierías, transporte y telecomunicaciones.



Ejemplo visual de Statecharts






ALGUNAS DEFINICIONES ESTADISTICAS


Fenómeno aleatorio


En estadística, un experimento aleatorio es aquel que bajo el mismo conjunto aparente de condiciones iniciales, puede presentar resultados diferentes, es decir, no se puede predecir el resultado exacto de cada experiencia particular. (Ej: Lanzamiento de un dado).


Este tipo de fenómeno es opuesto al fenómeno determinista, en el que conocer todos los factores de un experimento nos hace predecir exactamente el resultado del mismo. Por ejemplo, conociendo la altura desde la que se arroja un móvil es posible saber exactamente el tiempo que tardará en llegar al suelo en condiciones de vacío.



σ-álgebra


En matemáticas, una σ-álgebra sobre un conjunto X es una familia Σ no vacía de subconjuntos de X, cerrada bajo complementos, uniones e intersecciones contables. Las σ-álgebras se usan principalmente para definir medidas en X. El concepto es muy importante en análisis matemático y en teoría de la probabilidad.



Frecuencia relativa


Es el cociente entre la frecuencia absoluta y el tamaño de la muestra (N). Se presenta en una tabla o nube de puntos en una distribución de frecuencias.

Si multiplicamos la frecuencia relativa por 100 obtendremos el porcentaje o tanto por ciento (pi) que presentan esta característica respecto al total de N, es decir el 100% del conjunto.


 Ejemplo de frecuencias relativas





Función de probabilidad


Una función de probabilidad (también denominada función de masa de probabilidad) es una función que asocia a cada punto de su espacio muestral X la probabilidad de que ésta lo asuma.


En concreto, si el espacio muestral, E de la variable aleatoria X consta de los puntos x1, x2, ..., xk, la función de probabilidad P asociada a X es:

P(xi)=Pi


donde pi es la probabilidad del suceso X = xi.
El sumatorio de todas estas probabilidades suma la unidad.


Función de densidad


Función de densidad, o, simplemente, densidad de una variable aleatoria continua es una función, usualmente denominada f(x) que describe la densidad de la probabilidad en cada punto del espacio de tal manera que la probabilidad de que la variable aleatoria tome un valor dentro de un determinado conjunto sea la integral de la función de densidad sobre dicho conjunto.



        Esperanza matemática


En estadística la esperanza matemática (también llamada esperanza, valor esperado, media poblacional o media) de una variable aleatoria X, es el número E(X) que formaliza la idea de valor medio de un fenómeno aleatorio.


Cuando la variable aleatoria es discreta, la esperanza es igual a la suma de la probabilidad de cada posible suceso aleatorio multiplicado por el valor de dicho suceso. Por lo tanto, representa la cantidad media que se "espera" como resultado de un experimento aleatorio cuando la probabilidad de cada suceso se mantiene constante y el experimento se repite un elevado número de veces.


      Varianza


En teoría de probabilidad, la varianza (σ2) de una variable aleatoria es una medida de dispersión definida como la esperanza del cuadrado de la desviación de dicha variable respecto a su media.


Está medida en unidades distintas de las de la variable. La desviación estándar, es la raíz cuadrada de la varianza, es una medida de dispersión alternativa expresada en las mismas unidades de los datos de la variable objeto de estudio. La varianza tiene como valor mínimo 0.



GENERAR NÚMEROS ALEATORIOS CON MÉTODOS CONGRUENCIALES


En los experimentos de simulación es necesario generar números aleatorios que representen alguna  distribución de probabilidad. Para tal propósito tenemos que generar  números rectangulares. Ahora bien, si esos números son generados a través de reglas deterministas¿acaso no sería más preciso llamarles números pseudoaleatorios? De hecho, pero bien podríamos mirar desde el otro lado de la calle y decir que “una sucesión cumple la facultad de aleatoria si satisface las pruebas estadísticas de aleatoriedad”


         Métodos Congruenciales

Los generadores de números aleatorios que más se usan son los generadores congruenciales lineales (LCG) ideados por un tal Lehmer. El chiste de un LCG es generar un valor aleatorio a partir de otro anterior. En este post estudiaremos los dos métodos congruenciales lineales más populares:

         Congruencial Mixto

         La fórmula (o relación de recurrencia) es sencilla:

X n+1 = (aXn + c) mod m

Donde:

  • X0 es la semilla
  • a el multiplicador
  • c la constante aditiva y
  • m el módulo

        A tener en cuenta: Los valores a, X0 y c tienen que ser mayores que cero. Y la variable m tiene que ser mayor que las tres anteriores. Para entrar en acción vamos a darle valores arbitrarios a cada uno de estos parámetros y estudiar que reacción tienen en la relación de recurrencia.

      Congruencial Multiplicativo



El generador congruencial lineal multiplicativo es básicamente el mismo rollo. La relación de recurrencia es similar a la del método anterior:

X n+1 = (aXn)  mod m


MODELOS DE SIMULACIÓN DE EVENTOSDISCRETOS


      El sistema cambia de estado en una cantidad numerable de instantes de tiempo (EVENTOS)


      Los eventos pueden servir para:

·        Planificar el final de una simulación
·        Planificar una operación en un instante concreto


Ejemplo: Cola

·        Servidor (libre/ocupado)
·        Cola (vacía/ocupada)
·        Cliente (tiempo llegada/tiempo servicio)
·        Eventos (llegada/servicio cliente)




       Mecanismos de Avance de Tiempo


      Es necesario disponer de un mecanismo de avance del tiempo.


      Se denomina RELOJ DE SIMULACIÓN a la variable del modelo que proporciona el valor actualizado del tiempo simulado.

      No son necesarias unidades de medida (GPLs)

      Dos formas de avance del tiempo.

·        Por eventos
·        Por incrementos fijos




jueves, 16 de febrero de 2012

3º CLASE DE AUTOMATIZACIÓN


MODELIZACIÓN


          Modelos de procesos continuos

      La dinámica de sistemas es un enfoque para entender el comportamiento de sistemas complejos a través del tiempo. Lidia con ciclos de realimentacion interna y retrasos en los tiempos que afecta el comportamiento del sistema total.


     Lo que hace diferente al enfoque de dinámica de sistemas de otros enfoques para estudiar sistemas complejos, es el uso de ciclos de realimentacion y existencias y flujos. Estos elementos, que se describen como sistemas aparentemente simples, despliegan una desconcertante no linealidad.



                 Procesos de tiempos continuos


           Tiempo continuo signica que la variable independiente de las ecuaciones del modelo matematico es el tiempo t del proceso y que  este varia de forma continua en un intervalo de “R”. Las ecuaciones diferenciales del modelo son, en general, ecuaciones en derivadas parciales (EDP) pero muchas veces se pueden reducir a ecuaciones diferenciales ordinarias (EDO) e incluso a veces a ecuaciones diferenciales ordinarias lineales y con coeficientes constantes. Esto da lugar a la siguiente clasificacion de los sistemas de tiempo continuo:


·         Sistemas de parametros distribuidos (EDP)
·         Sistemas de parametros concentrados (EDO)
·         Sistemas lineales (EDO lineales)
·         Sistemas lineales de parametros constantes (EDO lineales con coeficientes constantes)


         
         La simulación por eventos discretos

         Es una técnica informática de modelado dinámico de sistemas. Frente a su homóloga, la simulación de tiempo continuo, esta se caracteriza por un control en la variable del tiempo que permite avanzar a éste a intervalos variables, en función de la planificación de ocurrencia de tales eventos a un tiempo futuro. Un requisito para aplicar esta técnica es que las variables que definen el sistema no cambien su comportamiento durante el intervalo simulado.



PROGRAMAS DE SIMULACIÓN


       ¿Qué es una simulación?


       Simulación es la experimentación con un modelo de una hipótesis o un conjunto de hipótesis de trabajo.


      Thomas T. Goldsmith Jr. y Estle Ray Mann la define así: "Simulación es una técnica numérica para conducir experimentos en una computadora digital. Estos experimentos comprenden ciertos tipos de relaciones matemáticas y lógicas, las cuales son necesarias para describir el comportamiento y la estructura de sistemas complejos del mundo real a través de largos períodos".


       Una definición más formal formulada por R.E. Shannon es: "La simulación es el proceso de diseñar un modelo de un sistema real y llevar a término experiencias con él, con la finalidad de comprender el comportamiento del sistema o evaluar nuevas estrategias -dentro de los límites impuestos por un cierto criterio o un conjunto de ellos - para el funcionamiento del sistema".





      
        PARAGIGMAS DE SIMULACIÓN

         Dynamic Systems: Es un tipo de sistema continuo. Es el mas antiguo (Epoca de Newton). Sirve para solucionar ecuaciones diferenciales. Las gente que lo utiliza vienen siendo matemáticos, ingenieros o científicos.


         System Dynamics: Es un tipo de sistema continuo. Es mas moderno que el anterior ( a partir de la 2º guerra mundial). La gente que lo utiliza vienen siendo fisicos, ingenieros, matematicos, biologos, en la banca o economistas.



      PROGRAMAS DE SIMULACION


          Easy Java Simulations (simulaciones sencillas en Java), también conocido como EJS o Ejs, es una herramienta de autor creada en Java que ayuda a no programadores a crear simulaciones interactivas en Java, habitualmente con fines de enseñanza o aprendizaje


          GPSS-General Purpose Simulation System: Es un lenguaje de simulación por eventos, los elementos que se inyectan al modelo (transacciones) mediante el bloque GENERATE son puestos en la cadena de eventos futuros (Future Event Chain) con el instante de su futuro nacimiento, las tareas que estos elementos realizan mediante el bloque ADVANCE generan eventos futuros con el instante de terminación de la tarea.


         El GPSS ejecuta todos los eventos corrientes hasta que no haya ningún evento y así se repite el proceso hasta que un TERMINATE con operando distinto de cero alcance la cantidad pedida en el START.

          AnyLogic es una herramienta desarollada por XJ Tecnologías que incluye todos los métodos de simulación mas comunes en practica hoy.


 
        

           MATLAB es un lenguaje de alto nivel y un entorno interactivo que le permite realizar tareas de cálculo complejas de forma más rápida que con los lenguajes de programación tradicionales, como C, C++ y Fortran.








DIAGRAMAS DE FORRESTER


         El diagrama de Forrester es una representación simbólica de las variables de nivel, flujo y auxiliares de un diagrama causal una vez identificadas y constituye un paso intermedio entre el diagrama causal y el sistema de ecuaciones diferenciales de primer orden que le corresponde.


         Los símbolos que aparecen en el diagrama vienen dados en la figura:






A continuación se muestra un ejemplo del diagrama de Forrester:







        

        

PROGRAMACIÓN ORIENTADA A OBJETOS 

       
         La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento.

         Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.

Ejemplo grafico:



Conceptos fundamentales

 

  • Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ellas.

  • Herencia: (por ejemplo, herencia de la clase C a la clase D) Es la facilidad mediante la cual la clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables publicas declaradas en C. Los componentes registrados como "privados" (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para mantener hegemónico el ideal de OOP.

  • Objeto: entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.

  • Método: Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.

  • Evento: Es un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento, a la reacción que puede desencadenar un objeto, es decir la acción que genera.

  • Mensaje: una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó.

  • Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método.

  • Estado interno: es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos). No es visible al programador que maneja una instancia de la clase.

  • Componentes de un objeto: atributos, identidad, relaciones y métodos.

  • Identificación de un objeto: un objeto se representa por medio de una tabla o entidad que esté compuesta por sus atributos y funciones correspondientes.