You are on page 1of 4

MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS DE DECISIN ON-LINE

6241 - SIMULACIN Y METAHEURSTICAS - GRUPO NICO - 2S

Foro dudas Caso prctico III: Anlisis de resultados


Duda caso prctico 3
Suscribir

datos para cada alumno



Ordenardesdeelmsantiguo

Duda caso prctico 3


de ATANAS PLAMENOV KARAGUIOZOV - jueves, 4 de mayo de 2017, 06:58

Buenos das,

Me ha surgido una duda acerca de cmo simular la cadena de Markov en el caso prctico 3. Segn lo que encontr por internet, se
puede inicializar un vector inicial, en este caso [1,0,0] ya que partimos del estado 1, e ir multiplicando dicho vector por la matriz de
transiciones el nmero de veces que especi que el enunciado, 1000 en nuestro caso. Al nal del bucle tendremos el resultado que
ser el comportamiento estacionario del sistema.

Sin embargo, el resultado siempre ser el mismo ya que no hay ningn elemento aleatorio. No consigo averiguar dnde hay que
introducir dicho elemento. Si alguien ha tenido la misma duda, agradecera alguna sugerencia.

Gracias, y suerte a tod@s!

Enlace permanente | Responder

Re: Duda caso prctico 3


de FERNANDO TURON MANZANARES - jueves, 4 de mayo de 2017, 07:17

Hola Atanas,

Yo lo he planteado de una manera diferente. El resultado ha de ser un vector, de dimension 1, en el que cada posicion indica el estado
en el que se encuentra el sistema, de este modo en la posicion 1 tendra el valor 1 (o "estado1" si lo dejas mas "bonito"), segun nos
dice el enunciado. Has de generar una v.a. que, partiendo del estado actual, determinara cual va ser el siguiente estado, a partir de la
matriz transiciones, aadir este nuevo estado en el vector de resultados y comenzar la siguiente iteracion en el estado que acabas de
calcular... y asi repites el proceso las n veces.

La cadena de Markov te dice que estas en un estado, ocurre algo (la v.a. que has de generar) y te lleva a otro estado desde el que se
repite el proceso.

No tengo la certeza absoluta pero la gra ca, al menos, me sale coherentemente.

Un saludo,

Fernando


Enlace permanente | Mostrar mensaje anterior | Responder

Re: Duda caso prctico 3


de VANESSA URDANETA GUERRERO - jueves, 4 de mayo de 2017, 08:09

Hola a todos,

Yo abord el problema mas o menos as:


Tenemos un sistema con 3 estados posibles: X1=1, X2=2, X3=3

Tenemos la matriz de transicin que escribir as: P= ( la 1= c(p11, p12, p13), la 2= c(p21,p22,p23), la 3=c(p31,p32,p33))

Transiciones MCMC: 1000, es decir tiempo va de 1:1000, repetir esto 100 veces.

Primer estado X1.

Ahora quiero saber el estado en el tiempo siguiente.

Del material al respecto he entendido: siendo el estado de inicio el estado i, el estado en el tiempo siguiente, estado j (j va de 1 a 3
aqu) , es escogido segn la isima la de la matriz de transicin P.

Mi Pregunta sera si ese razonamiento est bien?, en R, la cosa ira as?:

#primer estado es X1, por tanto para saber el estado que ocurrir en tiempo t siguiente hara:

rmultinom(1,1, prob=P[1, ]) #usando la la 1 de P, la matriz de transicion correspondiente a X1

el resultado da esto, por ejemplo:

[1]

[1] 0

[2] 1

[3] 0

Yo he puesto dentro de la funcinrmultinom(1,1, prob=P[1, ] ), n=1 y size=1, pensando: donde caiga el 1, en este caso en la
posicin 2, entonces para esta corrida ha ganado X2.

Suponiendo que lo he entendido bien, durante mi primera ejecucin he obtenido que: empezando con X1, obtuve en el siguiente t :
X2, por tanto, en el proximo t sera:

rmultinom(1,1, prob=P[2, ]) #usando la la 2 de P, la matriz de transicion

Y as sucesivamente hasta que lo halla hecho 1000 veces, al nal tendra un vector:

ESTADOS <- c( X1, X2, X2, X1, X3...........................) de mil entradas que van de X1 a X3, asignara por ejemplo si es X1 el numero 1 y
si es X2 2, X3 3.

As lo he entendido yo! Me parece lgico pero tengo mis dudas.

Saludos a todos

Enlace permanente | Mostrar mensaje anterior | Responder

Re: Duda caso prctico 3


de FERNANDO TURON MANZANARES - jueves, 4 de mayo de 2017, 08:23

Hola Vanessa,

Yo lo he hecho con una Uniforme y considerando la matriz con probabilidades acumuladas ... de esta manera, al generar un valor
entre 0 y 1, lo "busco" entre cualquiera de las 3 columnas del estado correspondiente para obtener el siguiente estado...

Por lo demas, es parecido a lo que has hecho tu

Un saludo,

Fernando

Enlace permanente | Mostrar mensaje anterior | Responder


Re: Duda caso prctico 3


de ATANAS PLAMENOV KARAGUIOZOV - viernes, 5 de mayo de 2017, 05:00

Muchas gracias, Fernando y Vanessa, por vuestras respuestas, me habis ayudado mucho a aclarar esta duda.
Por cierto Fernando, yo tena la misma idea que t en utilizar la matriz de probabilidades acumuladas. De esta manera el cdigo es
ms e ciente ya que, por lo menos en mi diseo, se evita un bucle interno que si utilizara la matriz de probabilidades a secas, se
ejecutara 1e5 veces en total...

Gracias de nuevo y saludos,

Atanas

Enlace permanente | Mostrar mensaje anterior | Responder

Re: Duda caso prctico 3


de Javier Fernando Cano Cancela - sbado, 6 de mayo de 2017, 04:23

Hola a todos

Muchas gracias por vuestras intervenciones, que van bastante bien encaminadas. Tan slo un par de comentarios:

A la hora de generar de un CMTD, recordad que es mucho ms e ciente generar primero el tiempo hasta la siguiente transicin
(con una v.a. geometrica), y, luego, una vez que ya sabemos cundo se va a producir el siguiente salto, generamos el siguiente
destino (que ya no puede ser el propio estado inicial, as que tendris que eliminar--podis usar la funcin setdiff--esa entrada
de la la correspondiente de la matriz de transicin, posiblemente normalizando de nuevo las probabilidades restantes, aunque
eso ya se suele encargar de hacerlo R internamente, mirad la ayuda de las funciones que utilicis).
Aunque ambas aproximaciones que habis comentado son correctas, yo pre ero que hagis la implementacin lo ms bsica
posible, usando las funciones ms sencillas posibles (idealmente, slo rgeom y con la funcin sample es su ciente para hacer un
cdigo razonablemente e ciente).

Al margen de esto, voy a ampliar unos das las entregas de los ltimos casos, por si an queris darles alguna vuelta ms.

Un saludo y nimo

Javier

Enlace permanente | Mostrar mensaje anterior | Responder

datos para cada alumno

You might also like