MATLAB_practica3_0910

16
INGENIERIA de TELECOMUNICACION ESTADISTICA 2009-2010 PRACTICA 3. MODELOS DE PROBABILIDAD OBJETIVOS: Introducci´ on a modelos de probabilidad discretos y cont´ ınuos m´ as comunes. Caracterizaci´ on, representaci´ on gr´ afica. Resoluci´ on mediante simulaci´ on con MATLAB/Octave de ejercicios propuestos. 1. Introducci´ on En general, para generar variables aleatorias cont´ ınuas utilizaremos el m´ etodo de la trans- formaci´ on inversa de la funci´ on de distribuci´ on (siempre que exista inversa). Para el caso de v.a.’s discretas utilizaremos una condici´ on booleana (Ya visto en la pr´ actica anterior). No obstante, MATLAB/Octave, dispone de funciones propias para generar variables aleatorias de modelos de probabilidad conocidos. La Tabla siguiente resume algunas de las funciones m´ as importantes para la generaci´ on de umeros aleatorios de modelos de probabilidad para variables cont´ ınuas y discretas en MAT- LAB/Octave: Funci´ on Descripci´ on Sintaxis normrnd n o aleatorios N (μ, σ) normrnd(MU,SIGMA,m,n) randn n o aleatorios N (0, 1) randn(m,n) exprnd n o aleatorios Exp(λ) exprnd(1/lambda,m,n) binornd n o aleatorios Bin(n, p) binornd(N,P,m,n) poissrnd n o aleatorios Poiss(λ) poissrnd(lambda,m,n) Tabla 1: Algunas funciones importantes para la generaci´ on de n´ umeros aleatorios donde m y n, son respectivamente en n o de filas y columnas a generar. 2. Caso cont´ ınuo Distribuci´onnormal Recordemos que la distribuci´ on Normal tiene como funci´ on de densidad: X ∼N (μ, σ): f (x)= 1 σ 2π exp - 1 2σ 2 (x-μ) 2 , donde x R, σ> 0 y μ R. 1. Representa en MATLAB/Octave la funci´ on de densidad de una Normal N (μ, σ), para los valores μ =0y σ = 1, para los 100 valores comprendidos entre -3 y 3. Ingenier´ ıa de Telecomunicaci´ on - Estad´ ıstica (2009-2010), PR ´ ACTICA 3. MODELOS DE PROBABILIDAD 1

description

Matlab practica

Transcript of MATLAB_practica3_0910

Page 1: MATLAB_practica3_0910

INGENIERIA de TELECOMUNICACION

ESTADISTICA

2009-2010

PRACTICA 3. MODELOS DE PROBABILIDAD

OBJETIVOS: Introduccion a modelos de probabilidad discretos y contınuos mas comunes.Caracterizacion, representacion grafica. Resolucion mediante simulacion con MATLAB/Octave deejercicios propuestos.

1. Introduccion

En general, para generar variables aleatorias contınuas utilizaremos el metodo de la trans-formacion inversa de la funcion de distribucion (siempre que exista inversa). Para el caso de v.a.’sdiscretas utilizaremos una condicion booleana (Ya visto en la practica anterior). No obstante,MATLAB/Octave, dispone de funciones propias para generar variables aleatorias de modelos deprobabilidad conocidos.

La Tabla siguiente resume algunas de las funciones mas importantes para la generacion denumeros aleatorios de modelos de probabilidad para variables contınuas y discretas en MAT-LAB/Octave:

Funcion Descripcion Sintaxis

normrnd no aleatorios N(µ, σ) normrnd(MU,SIGMA,m,n)randn no aleatorios N(0, 1) randn(m,n)exprnd no aleatorios Exp(λ) exprnd(1/lambda,m,n)binornd no aleatorios Bin(n, p) binornd(N,P,m,n)poissrnd no aleatorios Poiss(λ) poissrnd(lambda,m,n)

Tabla 1: Algunas funciones importantes para la generacion de numeros aleatorios

donde m y n, son respectivamente en no de filas y columnas a generar.

2. Caso contınuo

Distribucion normal

Recordemos que la distribucion Normal tiene como funcion de densidad:

X ∼ N (µ, σ) : f(x) =1

σ√

2πexp−

12σ2 (x−µ)2 , donde x ∈ R, σ > 0 y µ ∈ R.

1. Representa en MATLAB/Octave la funcion de densidad de una Normal N (µ, σ), para losvalores µ = 0 y σ = 1, para los 100 valores comprendidos entre −3 y 3.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 1

Page 2: MATLAB_practica3_0910

La funcion normdf(x,MU,SIGMA), proporciona la la funcion de densidad de unaNormal(µ,σ), evaluado en los valores de x. En MATLAB/Octave:

% generamos una secuencia% de 100 no entre -3 y 3

>> x=linspace(-3,3,100);>> mu=0;>> sigma=1;>> y=normpdf(x,mu,sigma);>> plot(x,y)

-3 -2 -1 0 1 2 30

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

2. Representa graficamente la funcion de densidad de la v.a. normal para distintos valores delos parametros de la distribucion:

a) Manteniendo σ y variando µ⇒ Considera 3 distribuciones Normales con desviaciontıpica constante (σ = 1) y con diferentes medias (µ =-1,0 y 1). ¿Como afectan losparametros a la forma de la distribucion? ¿y a su posicion en los ejes?

b) Mantiendo µ y variando σ ⇒ Considera 3 distribuciones Normales con media con-stante (µ = 0) y variando la desviacion tıpica (σ =0.3,0.5 y 1.2). Analizar como afectaa la forma de la distribucion y como afecta a su posicion en los ejes.

>> x = linspace(-3,3,100);% a)

>> y1 = normpdf(x,0,1); % y1 es Normal con media 0 y desv. 1>> y2 = normpdf(x,-1,1); % y1 es Normal con media -1 y desv. 1>> y3 = normpdf(x,1,1); % y1 es Normal con media 1 y desv. 1

% b)>> y4 = normpdf(x, 0, 0.3); % y4 es Normal con media 0 y desv. 0.3>> y5 = normpdf(x, 0, 0.5); % y5 es Normal con media 0 y desv. 0.5>> y6 = normpdf(x, 0, 1.2); % y6 es Normal con media 0 y desv. 1.2

Una vez generadas las 6 variables aleatorias normales, vamos a compararlas graficamenteusando la funciones subplot1; plot y hold on, hold off.

1mediante la funcion subplot podemos crear varios graficos a la vez. En el ejemplo, subplot(1,2,i), significa quedibujamos en 1 fila y en 2 columnas el grafico i = 1 y 2

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 2

Page 3: MATLAB_practica3_0910

% GRAFICO CASO a)>> subplot(1,2,1) % 1 fila, 2 columnas, grafico no 1>> hold on % esta opcion permite superponer graficos>> plot(x,y1, ‘b’) % grafico x/y1 en color azul (‘blue’)>> plot(x,y2, ‘g’) % grafico x/y2 en color verde (‘green’)>> plot(x,y3, ‘r’) % grafico x/y2 en color rojo (‘red’)>> hold off % deshabilitamos la opcion para superponer graficos

% GRAFICO CASO b)>> subplot(1,2,2) % 1 fila, 2 columnas, grafico no 2>> hold on>> plot(x,y4, ‘b’)>> plot(x,y5, ‘g’)>> plot(x,y6, ‘r’)>> hold off

% Otro modo de hacerlo es:

>> subplot(1,2,1)>> plot(x,y1,‘b’,x,y2,‘g’,x,y3,‘r’)>> subplot(1,2,2)>> plot(x,y4,‘b’,x,y5,‘g’,x,y6,‘r’)

-5 0 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

-3 -2 -1 0 1 2 30

0.2

0.4

0.6

0.8

1

1.2

1.4

mu = -1 , sigma = 1mu = 0 , sigma = 1mu = 1 , sigma = 1

mu = 0 ,sigma = 0.3mu = 0 , sigma = 0.5mu = 0 ,sigma = 1.2

NOTA: Otra manera de representar un grafico de una distribucion normal (µ = 0 y σ = 2,5)para x ∈ (−10, 10) serıa:

>> fplot(‘normpdf(x, 0, 2.5)’, [-10 10], ‘g’)

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 3

Page 4: MATLAB_practica3_0910

Con la sentencia disttool de MATLAB sobre el Command Window, podemos ver graficamentela densidad de diferentes distribuciones, seleccionando en Function Type/PDF.

3. Genera en MATLAB/Octave numeros aleatorios de la distribucion normal.

En MATLAB/Octave es posible generar numeros aleatorios de una distribucion normal(µ, σ), a traves de funciones propias de la librerıa estadıstica stats. Ası, podemos creardatos normales (n filas y m columnas) de la siguiente manera:

>> x= normrnd(MU,SIGMA,m,n);

El comando randn, permite generar numeros aleatorios de una distribucion normal estandar(es decir, de media µ = 0 y σ = 1). A partir de randn, es posible generar numeros aleatorios∼ N (µ, σ). Del siguiente modo: sea Z ∼ N (0, 1), podemos obtener X ∼ N (µ, σ), dada lasiguiente relacion:

X = Z · σ + µ

>> z= randn(m,n);>> x= z*sigma + mu;

Podemos comprobar, que los numeros generados son N (µ, σ) representando el histograma:

>> m=1000; n=1;>> sigma=0.75; mu=1;>> z=randn(m,n); x=z*sigma + mu;>> hist(x)

-1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 3 3.50

50

100

150

200

250

300

4. Funcion de distribucion acumulada. En MATLAB/Octave, el comando normcdf(x,mu,sigma)devuelve la probabilidad p = P (X ≤ x) de una distribucion normal de parametros µ y σ.Representa la funcion de distribucion acumulada, para los valores de x ∈ [−3, 3], siendo Xuna normal estandar.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 4

Page 5: MATLAB_practica3_0910

>> x = [-3:0.01:3];>> mu=0; sigma=1;>> p = normcdf(x,mu,sigma); % p = normcdf(x) proporciona

% la f. distr. acum. de% una N(0,1)% Su inversa es x = norminv(p,mu,sigma)

>> plot(x,p)>> grid on

-3 -2 -1 0 1 2 30

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

3. Caso discreto

Distribucion binomial

La funcion de probabilidad p(x) de la distribucion binomial Bin(n, p) es:

X ∼ Bin(n, p) : p(x) =(n

x

)px(1− p)n−x donde x = 0, 1, ..., n y 0 ≤ p < 1.

Siendo n el numero de intentos o de ensayos y el parametro p la probabilidad de que el sucesoexito ocurra.

1. Crea una funcion en MATLAB/Octave que permita representar funciones de probabilidad deuna distribucion binomial.

%% creamos la funcion fp_binomial.m

function y=fp_binomial(x,n,p)for i=1:length(x)

y(i)=(nchoosek(n,x(i)))*(p^x(i))*((1-p)^(n-x(i))) ;end%%

NOTA: la funcion nchoosek(n,x) permite calcular(nx

), sin embargo, para un tamano de

n grande, el resultado puede no ser exacto. Por ello, para un tamano n grande, emplearemos

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 5

Page 6: MATLAB_practica3_0910

la funcion Gamma Γ:

Γ(p) =∫ +∞

0e−xxp−1dx, donde p > 0

Propiedades de la funcion Gamma (Γ):

a) Γ(1) = 0! = 1b) Γ(p) = (p− 1)Γ(p− 1), ∀p > 0 y entonces Γ(p) = (p− 1)!, ∀p ∈ N.

c)(nx

)= Γ(n+1)

Γ(x+1)·Γ(n−x+1)

d) Γ(12) =

√π.

2. Crea en MATLAB/Octave que permita representar funciones de probabilidad de una dis-tribucion binomial para tamanos de n grandes.

%% creamos la funcion fp_binomialN.m%% utilizando la propiedad 3) de la funcion Gamma

function y = fp_binomialN(x,n,p)for i=1:length(x)y(i)=(gamma(n+1)*(p^x(i))*((1-p)^(n-x(i))))/

(gamma(x(i)+1)*gamma(n-x(i)+1));end%%

3. Utilizando la funcion creada anteriormente, representa graficamente la funcion de probabilidadde una variable aleatoria binomial, para los siguientes casos:

a) Dejando constante p y variando n ⇒ creamos 3 distribuciones binomiales:Bin(5,0.2), Bin(10,0.2), Bin(20,0.2)

b) Dejar n constante y variar p ⇒ creamos otras 3 distribuciones binomiales:Bin(100,0.1), Bin(100,0.5), Bin(100,0.8)

% Caso a):

>> x5=0:5 % creamos una secuencia de 0 a 5>> y5=fp_binomial(x5,5,0.2) % llamamos a la funcion fp_binomial.m

>> sum(y5) % comprobamos que la suma de las probabilidades es 1

>> x10=0:10;>> y10=fp_binomial(x10,10,0.2);

>> x20=0:20;>> y20=fp_binomial(x20,20,0.2);

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 6

Page 7: MATLAB_practica3_0910

% Caso b):

>> x100 = 0:100;

>> y1 = fp_binomialN(x100, 100, 0.1); % llamamos a la funcion>> y2 = fp_binomialN(x100, 100, 0.5); % fp_binomialN.m>> y3 = fp_binomialN(x100, 100, 0.8);

Podemos comparar ambos graficos, como vimos en el caso de la distribucion Normal.

>> subplot(1,2,1)>> plot(x5,y5,‘.’, x10,y10, ‘+’, x20, y20, ‘*’);>> legend(‘n=5, p=0.2’, ‘n=10, p=0.2’, ‘n=20, p=0.2’)>> subplot(1,2,2)>> plot(x100, y1, ‘.’, x100, y2, ‘+’, x100, y3, ‘*’);>> legend(‘n = 100, p = 0.1’, ‘n = 100, p = 0.5’, ‘n = 100, p = 0.8’);

0 5 10 15 200

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

n=5, p=0.2n=10, p=0.2n=20, p=0.2

0 20 40 60 80 1000

0.02

0.04

0.06

0.08

0.1

0.12

0.14

n = 100 , p = 0.1n = 100 , p = 0.5n = 100 , p = 0.8

NOTA: Tambien es posible utilizar el comando binopdf(x,N,P) para representar la fun-cion de probabilidad de una binomial (n, p)

4. Sabiendo que la distribucion Bin(n, p) es la suma de n variables aleatorias Bernouilli inde-pendientes:

Binom(n, p) = Bern(p) + ...+ Bern(p)︸ ︷︷ ︸n veces

Crea una funcion en MATLAB/Octave para generar numeros aleatorios de la distribucionbinomial.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 7

Page 8: MATLAB_practica3_0910

%% creamos la funcion na_binomial.m

function y= na_binomial(n_dat, n, p) % ‘n_dat’ es el% no de datos binomiales % que se van a generar

prob = rand(n,n_dat); % realizamos ‘n’ experimentos

exitos = prob < p; % si se cumple, entonces se ha producido un exito

y =sum(exitos); % sumamos todos los exitos producidos

%%

En el Command Window:

% Obtenemos 10 numeros binomiales obtenidos de sumar el no

% de exitos de n intentos con una probabilidad de exito p

>> y = na_binomial(10,n,p)

Numericamente, podemos verificar las propiedades de la media y la varianza de la distribu-cion binomial:

E[X] = n× pVar[X] = n× p× q

>> n=100; p=0.1;>> y = na_binomial(10,n,p)

>> mean(y) % aprox. 10>> var(y) % aprox. 9

3.1. Generacion de variables aleatorias

Como se indico en la practica anterior, el metodo de la inversa nos permite generar variablesaleatorias contınuas a partir de la funcion de distribucion siempre que esta admita inversa.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 8

Page 9: MATLAB_practica3_0910

Caso Weibull: Sea X una variable aleatoria Weibull2, X ∼ Weibull(α, β), con funcion dedistribucion:

FX(x) ={

0 x > 01− e−(x/β)α 0 ≤ x

donde α y β son parametros dados. Indica como generarıas en MATLAB/Octave variablesaleatorias Weibull.

X Mediante el metodo de la inversa, tenemos que considerando u = FX(x),

1− e(x/β)α = u

e(x/β)α = 1− u(x/β)α = − ln(1− u)

x/β = [− ln(1− u)]1α

x = β[− ln(1− u)]1α

Por tanto:

>> u = rand(n,1);>> x = beta*(-log(1-u))^(1/alpha);

4. Funcion Q

La funcion Q se define como la complementaria a la funcion de distribucion de la N (0, 1), esdecir como

Q(x) = P (X > x) siendo X ∼ N (0, 1)

Supongamos una funcion Q tiene por cotas superiores (cs1) y (cs2) y cota inferior (ci) dadas por

Q(x) ≤ 12e−

x2

2 para todo x ≥ 0 (cs1)

Q(x) <1√2πx

e−x2

2 para todo x > 0 (cs2)

Q(x) >1√2πx

(1− 1

x2

)e−

x2

2 para todo x > 1 (ci)

2NOTA: Esta distribucion se aplica en los analisis de fiabilidad de sistemas, para establecer, por ejemplo el tiempode vida de un componente hasta que se produce un fallo.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 9

Page 10: MATLAB_practica3_0910

a) La funcion de MATLAB normcdf(x,MU,SIGMA) devuelve la funcion de distribucion acumu-lada de una N (µ, σ). ¿Como representarıas en MATLAB la funcion Q?

>> Q = 1 - normcdf(x,0,1)

b) Escribe el codigo en MATLAB para representar graficamente la funcion Q en el intervalo(0, 5] junto con las cotas superiores cs1 y cs2 y la cota inferior ci. El resultado que se ha deobtener sera similar al de la figura 1.

NOTA:

Representa x ∈ (0, 5] como x=[0.01:0.01:5].

Para la cota inferior ci, observa que existe una asıntota vertical en x = 1, por tanto,define xi=[1.01:0.01:5] tan solo para esta cota.

Utiliza una escala logarıtmica para representar graficamente las cotas.

>>x1= [1.01:0.01:5];

>>for i=1:length(x1)ci(i) = (1/x1(i)*sqrt(2*pi))*(1- (1/x1(i)^2))*exp(-0.5*x1(i)^2);

end

>>x = [0.01:0.01:5];

>>for i=1:length(x)cs1(i)=0.5*exp(-0.5*x(i)^2);cs2(i)=(1/(x(i)*sqrt(2*pi))) * exp(-0.5*x(i)^2);end

>>q = 1- normcdf(x,0,1);

>> plot(x, log(q), ‘black’)>> hold on>> plot(x, log(cs1), ‘r’)>> plot(x, log(cs2), ‘g’)>> plot(x1, log(ci), ‘m’)>> hold off

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 10

Page 11: MATLAB_practica3_0910

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-20

-15

-10

-5

0

5

10log(q)log(cs1)log(cs2)log(ci)

Figura 1: Representacion grafica de la funcion Q con las cotas en escala logarıtmica log(cs1),log(cs2) y log(ci). La lınea vertical representa la asıntota en x = 1.

5. Ejercicios de interes

1. Sea X la v.a. “horas que se dedica a realizar una actividad”, cuya funcion de densidad es

f (x) ={

14 (x+ 1) 0 < x < 2

0 resto

Se pide:

a) Calcular, de forma analıtica y con MATLAB/Octave, la probabilidad de que el tiempoempleado sea superior a una hora y media.

b) Si se realizan 10 actividades segun la v.a. X, calcular, de forma analıtica y con MAT-LAB/Octave, la probabilidad de que exactamente en tres de ellas, el tiempo que seemplee en realizar cada una sea superior a una hora y media.

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 11

Page 12: MATLAB_practica3_0910

a) De forma analıtica, se tiene que:

P (X > 1,5) =∫ +∞

x=1,5f (x) dx =

∫ 2

x=1,5

14

(x+ 1) dx =14

12[x2]21,5

+14

[x]21,5

=18

(4− 9

4

)+

14

(2− 3

2

)=

732

+18

=1132

= 0,3438

Para resolverlo con MATLAB/Octave, hay que utilizar el metodo de la inversa, con loque hay que calcular previamente la funcion de distribucion, que es

F (x) =

0 x < 0∫ x

014 (y + 1) dy = 1

8x2 + 1

4x 0 ≤ x < 21 2 ≤ x

Y ahora hay que invertir la funcion de distribucion:

18x2 +

14x = u

x2 + 2x− 8u = 0

x =−2±

√4 + 32u2

Dada la definicion de la v.a. X la solucion negativa no es valida, con lo que el proced-imiento para generarla es:

u ∼ U (0, 1)

x =−2 +

√4 + 32u2

El codigo MATLAB/Octave para resolver este apartado es:

>> u=rand(1000,1);>> x=(-2+sqrt(4+32*u))/2;>> prob=sum(x>1.5)/1000

0.33800

b) De forma analıtica, si se define Y como la v.a. “numero de actividades entre las 10realizadas en las que el tiempo que se emplea es superior a una hora y media”, se tieneque Y ∼ Bin

(n = 10, p = 11

32

)hay que calcular

P (Y = 3) =(

103

)(1132

)3(2132

)7

= 0, 2555

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 12

Page 13: MATLAB_practica3_0910

El codigo MATLAB/Octave para resolver este apartado es:

>> u=rand(1000,10);>> x=(-2+sqrt(4+32*u))/2;>> conta=(x>1.5);>> suma=sum(conta,2);>> prob=sum(suma==3)/1000

0.24500

2. Ex. FEB 2004 Ing. Tel. (C1a) (link). El objetivo de este problema es analizar un canal decomunicaciones. Cuando el canal transmite un 1, el receptor recibe una variable aleatoria quesigue una distribucion Normal de media 1 y varianza 0, 5. Si el canal binario transmite un2, el receptor recibe una variable aleatoria Normal con media 2 y varianza 0, 5. Sea P (1) laprobabilidad de transmitir un 1.

a) Si P (1) = 0, 75. ¿Cual es la probabilidad de que un 1 haya sido transmitido cuando elreceptor ha recibido una senal superior a 2?

T1 = “transmitir un 1”, P (T1) = 0,75 , R|T1 ∼ N(1, 0,5)T2 = “transmitir un 2”, P (T2) = 0,25 , R|T2 ∼ N(2, 0,5)

P (T1|R > 2) =P (R > 2|T1)P (T1)

P (R > 2)=

=P (R > 2|T1)P (T1)

P (R > 2|T1)P (T1) + P (R > 2|T2)P (T2)

Sean Z1 = R|T1−1√0,5

y Z2 = R|T2−2√0,5

,

P (T1|R > 2) =P (Z1 > 1,41)× 0,75

P (Z1 > 1,41)× 0,75 + P (Z2 > 0)× 0,25

=0,0793× 0,75

0,0793× 0,75 + 0,5× 0,25= 0,3224

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 13

Page 14: MATLAB_practica3_0910

En MATLAB/Octave, podemos aproximar la probabilidad mediante:

>> n=10000;>> u=rand(n,1); % simulamos n experimientos aleatorios>> p=0.75; % es la probabilidad de transmitir un 1

% transmision del mensaje por el canal>> t=1*(u<=p)+2*(u>p);

% Simulamos z1 y z2 con la funcion normrnd(MU,SIGMA,n,1)

>> z1 = normrnd(1,sqrt(0.5),n,1);>> z2 = normrnd(2,sqrt(0.5),n,1)

% recepcion del mensaje>> r=(t==1).*z1+(t==2).*z2;>> r=2*(r>2)+1*(r<=2);

% creamos una tabla de doble entrada transmitidos/recibidos% (SOLO EN MATLAB)>> a=crosstab(t,r)>> a =

6894 599 % a(1,1) a(1,2)1258 1249 % a(2,1) a(2,2)

% nos piden la probabilidad P(t==1|r>2), en la simulacion>> a(1,2)/(a(1,2)+a(2,2))

0.3241

Otra manera de hacerlo, sin utilizar crosstab, serıa

% en la matriz A, ponemos en columnas transmitidos y recibidos>> A = [t r]

% cuantas veces se cumple la condicion>> a12 = sum(A(:,1)==1 & A(:,2)==2)

610

% cuantas veces se cumple la condicion>> a22 = sum(A(:,2)==1 & A(:,2)==2)

1276

>> a12/(a12+a22)0.3234 % que es aprox. 0.3224

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 14

Page 15: MATLAB_practica3_0910

3. Ex. SEP 2007 Ing. Tec. Tel. (P2b). (link). La duracion en dıas de un tipo de sensores sigue unmodelo Weibull con

F (t) = 1− exp

(−(t

α

)1/2)

f (t) =1/2α1/2

t−1/2 exp

(−(t

α

)1/2)

con α > 0.

a) Se supone que se tiene una caja de 60 sensores sin usar cuya duracion siguen el modeloWeibull con α = 1

4 dıas que verifica que E [T ] = 12 dıas y V [T ] = 5

4 dıas2. Si secomienza con un sensor de dicha caja y se va reemplazando instantaneamente segun sevaya fundiendo con un sensor de la misma caja, ¿cual es la probabilidad de que cuandohaya fallado el ultimo sensor de la caja hayan pasado menos de 47 dıas?Utilizar alguno de los siguientes valores de la funcion

x 1,64 −1,64 1,96 −1,96 47 −47Q (x) 0,05 0,95 0,025 0,975 ' 0 ' 1

b) Comentar lınea a lınea el siguiente codigo de MATLAB y decir el valor aproximado quetomara prob.

>> u=rand(60,1000);>> w=0.25*(-log(1-u)).^(1/0.5);>> s=sum(w);>> prob=sum(s<47)/1000

a) Si se define la v.a. Ti como el tiempo hasta que falla el sensor i, se tiene que se pide

P

(60∑i=1

Ti ≤ 47

)

Como las Ti verifican las condiciones del teorema central del lımite, se tiene que

60∑i=1

Ti ∼ N

(60

12,

√60

54

)

Si se estandariza

P

(60∑i=1

Ti ≤ 47

)= P

∑60i=1 Ti − 601

2√605

4

<47− 601

2√605

4

P

(Z <

47− 308, 66

)= P (Z < 1, 96) = 1−Q (1, 96) = 1− 0, 025 = 0, 9750

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 15

Page 16: MATLAB_practica3_0910

b) En primer lugar hay que saber generar un modelo Weibull. Para ello se aplica elmetodo de la inversa de la funcion de distribucion. Por lo que

F (t) = 1− exp

(−(t

α

)β)= u

ln (1− u) = −(t

α

)βt = α [−Ln (1− u)]1/β

La primera lınea genera una matriz de dimensiones 60× 1000 con numeros U (0, 1).La segunda lınea genera una matriz de dimensiones 60× 1000 con numeros Weibull conα = 1

4 dıas, (se esta generando los tiempos en los que van fallando los sensores). La terceralınea suma la duracion total de los 60 sensores. La cuarta lınea mira cuantas veces de las1000, la duracion total de los sensores es menor que 47. Eso lo hace con la ayuda de lavariable booleana (s < 47).

Por tanto, este codigo esta contestando a la misma pregunta que el apartado a). Elresultado de prob deberıa ser proximo al valor teorico calculado de 0, 9750.

6. Ejercicios Propuestos

1. Indica el codigo de MATLAB/Octave para resolver el problema: Ex. SEP 2005 Ing. Tec. Tel.C3 apartados a) y b) (link).

2. Indica el codigo de MATLAB/Octave para resolver el problema: Ex. JUN 2002 Ing. Inf. (P1b)(link).

3. Indica el codigo de MATLAB/Octave para resolver el problema: Ex. SEP 2007 Ing. Tec. Tel.(C4a y C4b). (link).

Ingenierıa de Telecomunicacion - Estadıstica (2009-2010), PRACTICA 3. MODELOS DE PROBABILIDAD 16