Pdf Bivariada Ejercicio

Referencia: León García Ejercicio 5.16 pag 252

Ejemplo

Encuentre la constante c de normalización y las pdf marginales de la siguiente función:

f_{X,Y}(x,y)= \begin{cases} c e^{-x} e^{-y} &, 0\leq y \leq x < \infty \\ 0 & ,\text{otro caso} \end{cases}

Solución

la función es válida en la región mostrada:

La constante c se encuentra cumpliendo la condición de normalización:

1 = \int_{0}^{\infty} \int_{0}^{x} c e^{-x} e^{-y} dy dx = = \int_{0}^{\infty} c e^{-x} (1-e^{-x}) dx = \frac{c}{2} 1 = \frac{c}{2} c = 2

Determinar las marginales, conociendo que c=2:

f_X (x) = \int_{0}^{\infty} f_{X,Y}(x,y) dy = = \int_{0}^{x} 2 e^{-x} e^{-y} dy = 2 e^{-x} \int_{0}^{x} e^{-y} dy = = 2 e^{-x} \left. \left[ - e^{-y} \right]\right|_{0}^{x} = 2 e^{-x} \left[ -e^{-x}-(-e^{0}) \right] = f_X (x) = 2 e^{-x} (1- e^{-x}) 0\leq x < \infty
f_Y (y) = \int_{0}^{\infty} f_{X,Y}(x,y) dx = = \int_{y}^{\infty} 2 e^{-x} e^{-y} dx = 2 e^{-y} \int_{y}^{\infty} e^{-x} dx = = 2 e^{-y} \left. \left[ - e^{-x} \right]\right|_{y}^{\infty} = 2 e^{-y} \left[-e^{-\infty}-(-e^{-y})\right] = = 2 e^{-y} 2 e^{-y} f_Y (y) = 2 e^{-2y} 0\leq y < \infty

Tarea: Verificar que las funciones marginales cumplen que el integral es 1

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# Función evaluada
def fxydensidad(X,Y):
    n,m =np.shape(X)
    Z=np.zeros(shape=(n,m),dtype=float)
    
    c=2
    for i in range(0,n,1):
        for j in range(0,m,1):
            x=X[i,j]
            y=Y[i,j]
            
            if (y>=0 and y<=x):
                z=c*np.exp(-x)*np.exp(y)
                Z[i,j]=z
    return(Z)

# PROGRAMA ---------

# INGRESO
# Rango de evaluación
xa = 0
xb = 4
ya = 0
yb = 4
# muestras por eje
nx = 500
ny = 500

# PROCEDIMIENTO

# Matriz de evaluación
y = np.linspace(ya,yb,ny)
x = np.linspace(xa,xb,nx)
X,Y = np.meshgrid(x,y)

# Evalúa la función
Z = fxydensidad(X,Y)

# SALIDA
figura  = plt.figure(1)
grafica = figura.add_subplot(1, 1, 1, projection='3d')
grafica.plot_wireframe(X, Y, Z, rstride=10, cstride=10)
plt.show()

# Zona de integración
def arealimite(X):
    n = len(X)
    yinferior = np.zeros(n,dtype=int)
    ysuperior = X
    return(yinferior, ysuperior)

# PROCEDIMIENTO
yinferior, ysuperior = arealimite(x)

# SALIDA
plt.plot(x, yinferior)
plt.plot(x, ysuperior)
plt.fill_between(x, yinferior, ysuperior, where=(ysuperior>=yinferior))
plt.show()

# Forma de las marginales
def marginalx(x):
    fx = 2*np.exp(-x)*(1-np.exp(-x))
    return(fx)

# PROCEDIMIENTO
deltax = (xb-xa)/nx
fx = marginalx(x)
Fx = np.cumsum(fx*deltax)
integrax = np.sum(fx*deltax)

# SALIDA
plt.plot(x,fx, label='f(x)')
plt.plot(x,Fx, label='F(x)')
plt.xlabel('x')
plt.legend()
plt.show()

# Forma de las marginales
def marginaly(y):
    fy = 2*np.exp(-2*y)
    return(fy)

# PROCEDIMIENTO
deltay = (yb-ya)/ny
fy = marginaly(y)
Fy = np.cumsum(fy*deltay)
integray = np.sum(fy*deltay)

# SALIDA
print(' El integral sobre el area es: ', integray)

plt.plot(y,fy, label='f(y)')
plt.plot(y,Fy, label='F(y)')
plt.xlabel('y')
plt.legend()
plt.show()

pdf – univariada Ejercicio

Referencia: Ross 2.33 p89

Ejercicio

Sea X una variable aleatoria con densidad de probabilidad:

f(x)= \begin{cases} c(1-x^2)&, -1<x<1 \\ 0 &, \text{en otro caso} \end{cases}

a) ¿Cuál es el valor de c? que permite hacer la función una pdf.

b) ¿Cuál es la función de distribución acumulada de X?

Solución

a)Solo es válido en el rango [-1,1], por lo que el integral es:

1 = \int_{-1}^{1} c(1-x^2) dx = c \int_{-1}^{1} (1-x^2) dx = c \int_{-1}^{1}dx - c \int_{-1}^{1}x^2 dx = c \left. x \right|_{-1}^{1} - c \left. \frac{x^3}{3} \right|_{-1}^{1} = c[1-(-1)] - c\frac{1^3-(-1^3)}{3} = 2c -\frac{2c}{3} 1 = \frac{4c}{3} c=\frac{3}{4}

Solución

b)La función es la integral hasta x:

F(y) = \frac{3}{4} \int_{-1}^{y} (1-x^2) dx = \frac{3}{4} \left. \left[ x - \frac{x^3}{3} \right] \right|_{-1}^{y} = = \frac{3}{4}\left[(y+1) - \left( \frac{y^3}{3} + \frac{1}{3} \right) \right] = F(y) = \frac{3}{4} \left[ y+\frac{2}{3} - \frac{y^3}{3} \right], 1<y<1

Instrucciones en Python

usando el resultado anterior:

import matplotlib.pyplot as plt
import numpy as np

def fxdensidad(X):
    n = len(X)
    Y = np.zeros(n,dtype=float)
    
    c = 3/4
    for i in range(0,n,1):
        x = X[i]
        if (x>=-1 and x<=1):
            y = c*(1-x**2)
            Y[i] = y
    return(Y)

# INGRESO
# rango [a,b] y muestras
a = -1
b = 1
m = 100

# PROCEDIMIENTO
deltax = (b-a)/m
x  = np.linspace(a,b,m)
fx = fxdensidad(x)

# Función de distribución acumulada
Fy = np.cumsum(fx)*deltax

# SALIDA Gráfico
plt.plot(x,fx,label='pdf')
plt.plot(x,Fy,label='cdf')
plt.xlabel('x')
plt.legend()
plt.show()

# Verificando resultado del integral vs la suma acumulada
def Fxacumulada(X):
    n = len(X)
    Y = np.zeros(n,dtype=float)
    c = 3/4
    for i in range(0,n,1):
        x=X[i]
        if (x>=-1 and x<=1):
            y=c*(x+ 2/3 -(x**3)/3)
            Y[i]=y
    return(Y)

# PROCEDIMIENTO
Fycalc = Fxacumulada(x)

# SALIDA Gráfico
plt.plot(x,fx,label='pdf')
plt.plot(x,Fy,label='cdf')
plt.plot(x,Fycalc,label='calculada')
plt.xlabel('x')
plt.legend()
plt.show()

cdf – Señal coseno(x)

Referencia: Ejemplo León-García 4.36 p180

Sea Y=cos(X), y supondremos que X es uniformemente distribuida en el intervalo de (0, 2π]. Y puede ser vista como una muestra de una señal sinusoidal a un instante aleatorio de tiempo que esta uniformemente distribuida en el periodo de la sinusoide.

Para encontrar la pdf, se tiene que la variable -1< y < 1

f_Y(y)=\left.\sum_{k} \frac{f_X(x)}{|dy/dx|} \right|_{x=x_k}

La función fX(x) es uniforme, por lo que el área del integral en el intervalo debe ser 1, es decir:

\int_{0}^{2\pi}c dx=1 =(2\pi-0)*c= 2\pi c = 1 c=\frac{1}{2\pi} f_X(x) = \frac{1}{2\pi}

De la figura se encuentra que la ecuación tiene dos puntos de intersección o dos soluciones:

x_0 = \cos ^{-1}(y) x_1 = 2\pi- x_0

por lo que se evalúa la derivada en cada punto de intersección:

\left.\frac{dy}{dx} \right|_{x_0}= -sin(x_0) = - sin(cos^{-1}(y)) \alpha = \cos^{-1}(x) \sin(\alpha) = y x^2 + y^2 =1 x = \sqrt{1-y^2} \left.\frac{dy}{dx} \right|_{x_0}= -\sqrt{1-y^2} \left.\frac{dy}{dx} \right|_{x_1}= -\sqrt{1-y^2}

dado que y0 = y1 = y

Aplicando la ecuación primera:

f_Y(y) = \frac{1}{2\pi \sqrt{1-y^2}} + \frac{1}{2\pi \sqrt{1-y^2}} = \frac{1}{\pi \sqrt{1-y^2}} -1 < y < 1

Gráfica del resultado

# pdf de una señal senoidal
import matplotlib.pyplot as plt
import numpy as np

# INGRESO
# n=int(input('numero de muestras: '))
n = 200

# PROCEDIMIENTO
t  = np.linspace(-1,1,n)
fy = np.zeros(n,dtype=float)
# Evaluar denominador no cero
for i in range(0,n,1):
    denominador = 1-t[i]**2
    if (denominador!=0):
        fy[i] = 1/(np.pi*np.sqrt(1-t[i]**2))
dt = t[1]-t[0]
Fy = np.cumsum(fy)*dt

# SALIDA
plt.plot(t,fy,label='pdf')
plt.plot(t,Fy,label='cdf')
plt.xlabel('x')
plt.legend()
plt.show()


Cálculo con un método numérico

Señal Coseno(x), pmf, cdf

Se obtiene barriendo una ventana horizontal estrecha de Δx voltios de ancho, verticalmente a lo largo de las formas de onda y después midiendo la frecuencia relativa de la ocurrencia de voltajes en la ventana Δx.

El eje de tiempo se divide en n intervalos y la forma de onda aparece nΔx veces dentro de estos intervalos en la ventana Δx.

Para observar lo indicado usando python, se presenta el siguiente grupo de instrucciones:

Genera la señal

En un intervalo [a,b] de tiempo, con n muestras en el intervalo y una señal coseno(x) con frecuencia fs Hz.

# Pmf de una senal periódica conocida
# definir la señal en la sección senal_t
import numpy as np
import scipy.signal as signal
import scipy.stats as stats
import matplotlib.pyplot as plt

def senal_t(t, fs):
    m = len(t)
    y = np.zeros(m, dtype=float)
    for i in range(0,m,1):
        y[i] = np.cos(2 * np.pi * fs * t[i])
    return(y)

# INGRESO
# Frecuencia de la señal en Hz
fs = 5
# Rango en tiempo de la señal y muestras
a = 0
b = 1
tramos = 2000

# PROCEDIMIENTO
muestreo = tramos+1
t = np.linspace(a, b, muestreo)
senal = senal_t(t, fs)

# SALIDA
plt.plot(t,senal)
plt.title(' Señal sen(x)')
plt.xlabel('t')
plt.ylabel('señal')
plt.show()

Determinar la función de probabilidad de masa PMF

Se divide el rango de valores posibles de la señal en m intervalos.

Para simplificar el conteo de valores por rango se usa la función scypy.stats.relfreq, que cuenta en m intervalos entre el rango de la señal, dando como resultado las frecuencias relativas a intervalos Δx.
\sum_{i=0}^{N} p_i(x)=1

Si se considera aproximar la función a contínua para observación, será necesario compensar el vector de relativas al dividir por Δx pues el conteo relativo depende del número de divisiones m.

# Pmf de una senal periódica conocida
# definir la señal en la sección senal_t
import numpy as np
import scipy.signal as signal
import scipy.stats as stats
import matplotlib.pyplot as plt

def senal_t(t, fs):
    m = len(t)
    y = np.zeros(m, dtype=float)
    for i in range(0,m,1):
        y[i] = np.cos(2 * np.pi * fs * t[i])
    return(y)

# INGRESO
# Frecuencia de la señal en Hz
fs = 5
# Rango en tiempo de la señal y muestras
a = 0
b = 1
tramos = 2000

# PROCEDIMIENTO
muestreo = tramos+1
t = np.linspace(a, b, muestreo)
senal = senal_t(t, fs)

# SALIDA
plt.plot(t,senal)
plt.title(' Señal sen(x)')
plt.xlabel('t')
plt.ylabel('señal')
plt.show()

# Función de Probabilidad de Masa, PMF
m = 50  # intervalos en análisis

#PROCEDIMIENTO
relativa = stats.relfreq(senal, numbins = m )
deltax = relativa.binsize
# considerando el deltax, para valor de PMF
relcontinua=relativa.frequency/deltax

# Eje de frecuencias, por cada deltax
senalmin = np.min(senal)
senalmax = np.max(senal)
senalrango = np.linspace(senalmin,senalmax,m)

# SALIDA
print('frecuencia relativa:')
print(relativa.frequency)
print('Rango de Señal')
print(senalrango)
print('Aproximación a contínua')
print(relcontinua)

# SALIDA Grafico de PMF
plt.subplot(211)
plt.bar(senalrango,relativa.frequency, width=deltax*0.8)
plt.xlabel('Amplitud de señal')
plt.ylabel('PMF')

plt.subplot(212)
plt.plot(senalrango,relcontinua)
plt.ylim(ymin=0,ymax=np.max(relcontinua))
plt.xlabel('Amplitud de señal')
plt.ylabel('Aproximación a PDF')
plt.show()

frecuencia relativa:
[ 0.045  0.034  0.023  0.018  0.017  0.014  0.014  0.012  0.012  0.011   0.011  0.01   0.01   0.01   0.009  0.009  0.009  0.008  0.008  0.009  0.008  0.007  0.008  0.008  0.007  0.008  0.007  0.007  0.007  0.007 
 ... 
0.008  0.007  0.008  0.008  0.008  0.008  0.008  0.009  0.009  0.009  0.009  0.009  0.01   0.01   0.011  0.011  0.012  0.013  0.013  0.015  0.016  0.019  0.023  0.033  0.046]
Rango de Señal
[-0.99999877 -0.97979676 -0.95959475 -0.93939274 -0.91919073 -0.89898873 -0.87878672 -0.85858471 -0.8383827  -0.8181807  -0.79797869 -0.77777668 -0.75757467 -0.73737266 -0.71717066 -0.69696865 -0.67676664 -0.65656463 
...
0.63636386  0.65656587  0.67676788  0.69696988  0.71717189  0.7373739   0.75757591  0.77777791  0.79797992  0.81818193  0.83838394  0.85858595  0.87878795  0.89898996  0.91919197  0.93939398  0.95959598  0.97979799  1.        ]
Aproximación a contínua
[ 2.22750138  1.68300104  1.1385007   0.89100055  0.84150052  0.69300043  0.69300043  0.59400037  0.59400037  0.54450034  0.54450034  0.49500031  0.49500031  0.49500031  0.44550028  0.44550028  0.44550028  0.39600024  
...
0.39600024  0.44550028  0.44550028  0.44550028  0.44550028  0.44550028  0.49500031  0.49500031  0.54450034  0.54450034  0.59400037  0.6435004   0.6435004   0.74250046  0.79200049  0.94050058  1.1385007   1.63350101  2.27700141]

Determinar la Función de distribucíón acumulada

Considere el caso discreto, solo es necesario ir acumulando los valores de «relativa».

Al usar la aproximación a contínua, la sumatoria debe considerar el área bajo la curva, por lo que los valores se multiplican por Δx antes de acumular los valores de las frecuencias.

# Función distribución acumulada
acumulada=np.cumsum(relcontinua*deltax)

# Salida CDF
# plt.step(senalrango,relcontinua,label='pdf', where='post')
plt.step(senalrango,acumulada,label='cdf', where='post')
plt.xlabel('Amplitud de señal')
plt.title(' Función de distribuión acumulada , CDF')
plt.legend()
plt.show()


Tarea: realice el ejercicio con otras señales periódicas.
Referencia: Leon W Couch apéndice B p675

cdf -Señal triangular

Referencia: Leon W Couch apéndice B p675

Señal Triangular, pmf, cdf

Se obtiene barriendo una ventana estrecha de Δx voltios de ancho, verticalmente a lo largo de las formas de onda y después midiendo la frecuencia relativa de la ocurrencia de voltajes en la ventana Δx.

El eje de tiempo se divide en n intervalos y la forma de onda aparece nΔx veces dentro de estos intervalos en la ventana Δx.

Para observar lo indicado usando python, se presenta el siguiente grupo de instrucciones:

Generar la señal

En un intervalo [a,b] de tiempo, con n muestras en el intervalo y una señal triangular con frecuencia fs Hz.

Las librerías de señales de scipy tiene la señal diente de sierra, con parámetro de simetría que permite variar la forma del triángulo para ajustarlo a una señal simétrica como la del ejemplo.

import matplotlib.pyplot as plt
import numpy as np
import scipy.signal as signal
import scipy.stats as stats

# INGRESO
# Rango en tiempo de la señal y muestras
a = 0
b = 1
n = 2000
# Frecuencia de la señal en Hz
fs = 5

# PROCEDIMIENTO
# simetria de la señal triangular diente de sierra
simetria = 0.5
t = np.linspace(a, b, n)
senal = signal.sawtooth(2 * np.pi * fs * t, simetria)

# SALIDA
plt.plot(t,senal)
plt.title('Señal Triangular')
plt.xlabel('t')
plt.ylabel('señal')
plt.show()

Determinar la función de probabilidad de masa PMF

Se divide el rango de valores posibles de la señal en m intervalos.

Para simplificar el conteo de valores por rango se usa la función scipy.stats.relfreq, que cuenta en m intervalos entre el rango de la señal, dando como resultado las frecuencias relativas a intervalos Δx

\sum_{i=0}^{N}p_i(x)=1

Si se considera aproximar la función a contínua para observación, será necesario compensar el vector de relativas al dividir por Δx pues el conteo relativo depende del número de divisiones m.

# Función de Probabilidad de Masa, PMF
m = 20  # intervalos en análisis

#PROCEDIMIENTO
relativa = stats.relfreq(senal, numbins = m )
deltax   = relativa.binsize

# considerando el deltax, para valor de PMF
relcontinua = relativa.frequency/deltax

# Eje de frecuencias, por cada deltax
senalmin = np.min(senal)
senalmax = np.max(senal)
senalrango = np.linspace(senalmin,senalmax,m)

# SALIDA
print('frecuencia relativa:')
print(relativa.frequency)
print('Rango de Señal')
print(senalrango)
print('Aproximación a contínua')
print(relcontinua)

# SALIDA Grafico de PMF
pa = 0-0.1 # rango eje frecuencias
pb = 1+0.1

plt.subplot(211)
plt.axis([senalmin-deltax,senalmax+deltax,pa,pb])
plt.bar(senalrango,relativa.frequency, width=deltax*0.8)
plt.xlabel('Amplitud de señal')
plt.ylabel('PMF')

plt.subplot(212)
plt.axis([senalmin-deltax,senalmax+deltax,pa,pb])
plt.plot(senalrango,relcontinua)
plt.xlabel('Amplitud de señal')
plt.ylabel('Aproximación a PDF')
plt.show()
frecuencia relativa:
[ 0.027  0.052  0.053  0.053  0.052  0.053  0.052  0.053  0.052  0.053  0.053  0.052  0.053  0.052  0.053  0.052  0.053  0.053  0.052  0.027]
Rango de Señal
[-1.        -0.8947895 -0.789579  -0.6843685 -0.579158  -0.4739475 -0.368737  -0.2635265 -0.158316  -0.0531055  0.052105   0.1573155  0.262526   0.3677365  0.472947   0.5781575  0.683368   0.7885785  0.893789   0.9989995]
Aproximación a contínua
[ 0.25662838  0.49424725  0.503752    0.503752    0.49424725  0.503752   0.49424725  0.503752    0.49424725  0.503752    0.503752    0.49424725  0.503752    0.49424725  0.503752    0.49424725  0.503752    0.503752  0.49424725  0.25662838]

Determinar la Función de distribucíón acumulada

Considere el caso discreto, solo es necesario ir acumulando los valores de «relativa».

Al usar la aproximación a contínua, la sumatoria debe considerar el área bajo la curva, por lo que los valores se multiplican por Δx antes de acumular los valores de las frecuencias.

# Función distribución acumulada
acumulada = np.cumsum(relcontinua*deltax)

# Salida CDF
plt.step(senalrango,relcontinua,label='pdf', where='post')
plt.step(senalrango,acumulada,label='cdf', where='post')
plt.xlabel('Amplitud de señal')
plt.title(' Función de distribuión acumulada , CDF')
plt.legend()
plt.show()


Tarea: realice el ejercicio con otras señales periódicas.

Pares de variables aleatorias contínuas

Referencia: León-García 5.2.1 p241, Gubner 7.2 p295, Ross 2.5.1 p.44

Pares de variables aleatorias

Muchos experimentos involucran varias variables aleatorias, pues miden diferentes valores del experimento, por ejemplo:

  • Medir el voltaje de un circuito en varios puntos para un tiempo dado
  • Medir repetidamente el voltaje de un circuito en un punto para varios tiempos.

Para más de una variable se usa:

  • la función de densidad conjunta, función de distribución acumulada conjunta, y función de densidad de los eventos que tienen un comportamiento conjunto en dos variables aleatorias.
  • El valor esperado
  • para determinar cuando dos variables son independientes y cuantificar su grado de correlación cuando no son independientes
  • para obtener probabilidades condicionales que involucran un par de variables aleatorias.

Se define para dos variables aleatorias X y Y la función conjunta de distribución de probabilidades acumuladas por:

F(a,b) = P(X \leq a, Y \leq b ) -\infty<a, b<\infty

la distribución:

F_X(a) = P(X \leq a) = P(X \leq a, Y<\infty ) = = F(a,\infty)

y de forma similar:

F_Y(b) = P(Y \leq b) = P(X<\infty, Y \leq b) = = F(\infty, b)

En el caso que X y Y sean variables aleatorias discretas, se define las funcion conjunta de probabilidad de masa como:

p(x,y) = P(X=x,Y=y) p_X (x)= \sum_{y:p(x,y)>0} p(x,y) p_Y (y)= \sum_{x:p(x,y)>0} p(x,y)

En el caso que X y Y sean variables aleatorias contínuas:

P(X \in A, Y \in B) = \int_B \int_A f(x,y) \delta x \delta y

donde la función densidad de probabilidad para X se puede obtener conociendo que f(x,y) tienen que:

P(X \in A) = P(X \in A, Y \in (-\infty,\infty)) = \int_{-\infty}^{\infty} \int_{A} f(x,y) \delta x \delta y = \int_{A} f_X(x) \delta x

donde

f_X (x) = \int_{-\infty}^{\infty} f(x,y) \delta y

de forma similar para el caso de Y:

f_Y (y) = \int_{-\infty}^{\infty} f(x,y) \delta x

se debe cumplir que:

\int_{-\infty}^{\infty} \int_{-\infty}^{\infty} f_{XY} (x,y) \delta x \delta y =1

Ejemplo Gubner 7.9 p296.

Muestre que:

f_{XY}(x,y) = \frac{1}{2 \pi} e^{-(2x^2-2xy+y^2)/2}

es una función densidad conjunta de probabilidad válida

solución:

dado que fXY es positiva, se debe mostrar que el integral es 1.

f_{XY}(x,y) = \frac{e^{-(y-x)^2 /2}}{\sqrt{2\pi}} \frac{e^{-x^2 /2}}{\sqrt{2\pi}}

haciendo el doble integral:

\int_{-\infty}^{\infty} \int_{-\infty}^{\infty} f_{XY} (x,y) \delta x \delta y = = \int_{-\infty}^{\infty} \int_{-\infty}^{\infty} \frac{1}{2 \pi} e^{-(2x^2-2xy+y^2)/2} \delta x \delta y \int_{-\infty}^{\infty} \frac{e^{-x^2 /2}}{\sqrt{2\pi}}\big( \int_{-\infty}^{\infty} \frac{e^{-(y-x)^2 /2}}{\sqrt{2\pi}} \delta y\big) \delta x

el integral interior está en función de y, y es una densidad normal con media y varianza uno. Por lo que el integral interior es uno.
El integral exterior es una Normal con media cero y varianza 1, lo que también integra a 1.

Por lo que el integral resulta en 1 y cumple con que sea positivo y resulte 1 para ser una función densidad conjunta de probabilidad.

Probabilidades conjuntas y marginales discretas

Referencia: Gubner 7.1 p 287, León García 5.2 p234, Ross 2.5 p44

Probabilidades conjuntas y marginales

  • Un canal telefónico con una señal X presenta un ruido aditivo Y: X+Y
  • En un canal inalámbrico la señal X es afectada por un desvanecimiento o ruido multiplicativo: XY
  • Si X y Y son las tasas de tráfico de dos routers en un proveedor de Internet, se busca mantener la tasas en valores menores a la capacidad del router : max(X,Y)≤μ
  • Sean X y Y los voltajes de un sensor, y se quiere activar una alarma si al menos uno de los voltajes cae por debajo del umbral v: min(X,Y)≤v

Pares de variables aleatorias discretas

Ejemplo:

León-García 5.5. Un switch de datos, tiene dos puertos de entrada y dos puertos de salida. En cualquier instante de tiempo, un paquete llega a cada puerto con probabilidad de 1/2, lo que es equitativamente probable que sea enviado por el puerto 1 o 2.

Sea X y Y los números de paquetes destinados para salir por los puertos 1 y 2, respectivamente. Encuentre la pmf de X y Y, mostrando la pmf de forma gráfica.

Solución: La salida Ij para una un puerto de entrada j, puede tomar los siguientes valores:

    • «n», que no llegue un paquete al puerto de entrada. probabilidad de 1/2
    • «a1», llega un paquete con destino de salida puerto 1. con probabilidad de 1/4
    • «a2». llega un paquete con destino de salida puerto 2. con probabilidad de 1/4

El espacio muestral S relacionado, consiste de los resultados en pareja de entrada ζ =(I1, I2), El mapeo para cada (X,Y) se muestra en la tabla siguiente:

ζ X,Y
(n,n) (0,0)
(n,a1) (1,0)
(n,a2) (0,1)
(a1,n) (1,0)
(a1,a1) (2,0)
(a2,a2) (1,1)
(a2,n) (0,1)
(a2,a1) (1,1)
(a2,a2) (0,2)

la pmf de (X,Y) es entonces:
pX,Y (0,0) = P[ζ = (n,n)] = 1/2*1/2 = 1/4
pX,Y (0,1) = P[ζ ∈ {(n,a2), (a2,n)}] = 2*1/8 = 1/4

las gráficas de las cdf son:

Varianza v.a. Continuas

Referencia: Ross 2.4.3 p43, Gubner 2.4 p84,p150, León-García 4.3.2 p 160

Varianza de variables aleatorias contínuas

el n-ésimo momento, n≥1 de una varial aleatoria X se define como E[Xn].

en el caso continuo.

E[X^n] = \int_{-\infty}^{\infty} x^n f(x) \delta x

El primer momento es la media, E[X].

La varianza σ2 de X se define como:

\text{VAR}[X] = E[(X-E[X])^2]

La varianza de X mide el promedio al cuadrado de la desviación de X del valor esperado.

Algunas propiedade de la varianza, siendo c una constante:

\text{VAR}[c]=0 \text{VAR}[X + c] = \text{VAR}[X] \text{VAR}[cX] = c^2 \text{VAR}[X]

Ejemplo

Encuentre la media y varianza de una variable aleatoria con función de densidad de probabilidad pdf tipo exponencial eλ:

Solucion: dado que VAR[X]= E[x2] – (E[X])2, se calculan los dos momentos de X:

E[X^n] = \int_{0}^{\infty} x^{n} \lambda e^{-\lambda x} \delta x

con cambio de variable y=λx, dy = λdx se tiene que:

E[X^n] = \int_{0}^{\infty} \big( \frac{y}{\lambda} \big) ^{n} e^{-y} \delta y = \frac{1}{\lambda ^n }\int_{0}^{\infty} y^{n} e^{-y} \delta y

si u=yn y dv=e-y dx, entonces du=nyn-1 dx, v = -e-y,
para n=1 el resultado es 1, para n=2 el resultado es 2×1, y para n=3 el resultado es 3x2x1, por lo que el resultado general es n!

E[X^n] = \frac{n!}{\lambda ^n }

la varianza será:

\text{VAR}[X] = E[X^2] - (E[X])^2 = \frac{2}{\lambda ^2} - \big(\frac{1}{\lambda}\big)^2 = \frac{1}{\lambda ^2}

Varianza v.a. discretas

Referencia: Ross 2.4.3 p41, Gubner 2.4 p84, León-García 4.3.2 p 160

Varianza de variables aleatorias discretas

el n-ésimo momento, n≥1 de una variable aleatoria X se define como E[Xn].

en el caso discreto:

E[X^n] = \sum_{x:p(x)>0} x^n p(x)

en el caso continuo.

E[X^n] = \int_{-\infty}^{\infty} x^n f(x) \delta x

El primer momento es la media, E[X].

La varianza σ2 de X se define como:

var(X) = E[(X-E[X])^2]

La varianza de X mide el promedio al cuadrado de la desviación de X del valor esperado.


Ejemplo Gubner 2.27.

Sea X y Y variables aleatorias con sus respectivas funciones de probabilidad de masa, pmf, mostradas en la figura. Calcule var(X) y var(Y)

solución: por simetría, ambas variables tienen media cero, la varianza será:

var(X)= E[(x-E[x])^2] = E[(x-0)^2] = E[x^2] E[X^2] = (-2)^2 \frac{1}{6} + (-1)^2 \frac{1}{3} +(1)^2 \frac{1}{3} +(2)^2 \frac{1}{6} =2 var(Y)= E[(Y-E[Y])^2] = E[(Y-0)^2] = E[Y^2] E[Y^2] = (-2)^2 \frac{1}{3} + (-1)^2 \frac{1}{6} +(1)^2 \frac{1}{6} +(2)^2 \frac{1}{3} =3

X y Y tienen media cero, pero Y tomará valores mas lejanos de su media, dado que var(Y)>var(X).


cuando una variable aleatoria tiene media diferente de cero, puede ser conveniente usar también la fórmula:

var(X) = E[X^2]-(E[x])^2

que indica que la varianza es igual al segundo momento menos el cuadrado del primer momento. Como tarea encuentre la fórmula al reemplazar m=E[X] y desarrollando el cuadrado.

La desviación estándar de X se define como el valor positivo de la raiz cuadrada de la varianza, y se usa el símbolo σ


Ejemplo Ross 2.29

Un sistema de comunicación óptico usa un fotodetector cuya salida es modelada como una variable aleatorioa X tipo Poisson(λ). Encuentre la varianza de X

Solución:

P(X)= \frac{\lambda ^x e^{-\lambda}}{x!} E[x] = \sum_{n=0}^{\infty} n P(X=n) = \sum_{n=0}^{\infty} n \frac{\lambda ^n e^{-\lambda}}{n!}

dado que el término n=0 se puede descartar:

= \sum_{n=1}^{\infty} n \frac{\lambda ^n e^{-\lambda}}{n!} = \sum_{n=1}^{\infty} n\frac{\lambda ^n e^{-\lambda}}{n(n-1)!} = \lambda e^{-\lambda} \sum_{n=1}^{\infty} \frac{\lambda ^{n-1} }{(n-1)!}

cambiando el indice de la suma de n a k=n-1, se tiene que:

\sum_{k=0}^{\infty} \frac{\lambda ^{k} }{k!} = e^{\lambda} E[X]=\lambda e^{-\lambda} \sum_{k=0}^{\infty} \frac{\lambda ^{k} }{k!} = \lambda e^{-\lambda} e^{\lambda} = \lambda

Observe que: E[x2] = E[X(X-1)]+E[X].

Dado que E[X]=λ se calcula que:

E[X(X-1)] = \sum_{n=0}^{\infty} n(n-1) P(X=n) = \sum_{n=2}^{\infty} \frac{\lambda ^n e^{-\lambda}}{(n-2)!} = \lambda ^2 e^{-\lambda} \sum_{n=2}^{\infty} \frac{\lambda ^{n-2}}{(n-2)!}

se tiene nuevamente que, k=n-2:

E[X(X-1)] = \lambda ^2 e^{-\lambda} \sum_{k=0}^{\infty} \frac{\lambda ^{k}}{k!} = \lambda ^2

con lo que E[X2] = λ2 + λ

var(X) = E[X^2] - (E[x])^2 = (\lambda ^2 + \lambda) - \lambda ^2 = \lambda

La variable aleatoria Poisson tiene los valores de media y varianza iguales.

Variables Aleatorias Contínuas

Referencia: Ross 2.4 p32, Gubner 4.1 p139, León-García 4.1.1 p 146

Una variable aleatoria X se define como una función no negativa f(x) para todos los reales x ∈ (-∞,∞) que tiene la propiedad que para cualquier rango B:
P(X \in B) = \int_B f(x) \delta x

f(x) se conoce como la función densidad de probabilidades o pdf de la variable X, que además satisface:

1 = P(X \in (-\infty,\infty) = \int_{\infty}^{\infty}f(x) \delta x

Si B = [a,b] muestra la función en un intervalo,

p(a \leq X \leq b) = \int_{a}^{b} f(x) \delta x

cuando a=b, se tienen que el integral es cero, lo que muestra que la probabilidad de una variable contínua pueda tomar un valor particular es cero.

Con variables aleatorias contínuas para mejor interpretación se utiliza el valor de la función de distribución acumulada o cdf que se expresa como:

F(a) = P(X \in (-\infty,a]) = \int_{-\infty}^{a} f(x) \delta x

al derivar ambos lados se tiene que:

\frac{\delta}{\delta a} F(a) = f(a)
muestra que la densidad es la derivada de la acumulada.

f_x(x) = \frac{\delta F_x (x)}{\delta x}

PMF – Teclado Qwerty

Referencia: Teclado Qwerty Wikipedia

Uso del teclado QWERTY

El nombre del teclado QWERTY proviene de las primeras seis letras de su fila superior, fue diseñado y patentado por Christopher Sholes en 1868 y vendido a Remington en 1873.

La distribución QWERTY se diseñó con objetivo de separar las letras más usadas de la zona central del teclado, para evitar que se atascaran las máquinas de escribir de primera generación. Actualmente, ésta propiedad no es más requerida, sin embargo se ha heredado la distribución en los teclados de computadora.

A partir de la frecuencia de uso de las letras del alfabeto, se requiere conocer la frecuencia de uso de cada fila del teclado. Los valores de frecuencia para cada letra se encuentran en el archivo: usoletras.txt que por cada línea registra la letra y frecuencia relativa separadas por una coma ‘,’.

archivo: usoletras.txt:
a, 0.11422682511 
b, 0.0118959769969 
c, 0.0464006717728 
d, 0.0543525280541 
...

Algoritmo en Python

# Analiza teclado QWERTY
# Datos desde Archivo 'usoletras.txt'
import numpy as np

# Ingreso
narchivo = input('Nombre del archivo:')
veces    = []
archivo  = open(narchivo,'r')
linea    = archivo.readline()
while not(linea == ''):
    partes = linea.split(',')
    letra  = partes[0]
    frecuencia = float(partes[1])
    veces.append([letra,frecuencia])
    linea = archivo.readline()
archivo.close()

# PROCEDIMIENTO
superior = 'qwertyuiop'
media    = 'asdfghjklñ'
inferior = 'zxcvbnm'
k = len(veces)
usofila = np.zeros(3,dtype=float)
for i in range(0,len(veces),1):
    if (veces[i][0] in superior):
        usofila[0] = usofila[0]+veces[i][1]
    if (veces[i][0] in media):
        usofila[1] = usofila[1]+veces[i][1]
    if (veces[i][0] in inferior):
        usofila[2] = usofila[2]+veces[i][1]

# SALIDA
print(usofila)

resultado:

[ 0.48999975  0.32815084  0.18184941]

La gráfica para pmf se obtiene al añadir las instrucciones:

# GRAFICA
% matplotlib inline
import matplotlib.pyplot as plt
plt.stem([0,1,2],usofila)
plt.title('PMF filas teclado QWERTY')
plt.xlabel('fila superior, media e inferior')
plt.show()

Tarea: En cada caso, realice la gráfica de funciones de probabilidad de masa (pmf) y la función de probabilidades acumulada (cdf)

  • Encuentre la frecuencia de uso de cada mano, presente la división propuesta de el teclado en dos partes: izquierda y derecha.
  • Realice el ejercicio para determinar la frecuencia de uso de cada dedo de cada mano. Presente un modelo gráfico de cada tecla, para mostrar de mejor forma la medida a obtener
  • con los resultados de éste ejercicio, considere llenar la siguiente tabla:
    mano izquierda mano derecha total fila
    superior
    media
    inferior
    total mano