jueves, 2 de diciembre de 2010

Programación Dinamica :: Probabilistico

| 2 Comments

Aquí posteando  :D, el bebe ? pos , Eisten , dios no juega a los dados  , probabilistico ....pos eso ....

Ahora .un ejercicio de programación dinámica, ha pedido de un amigo

Bien este es el problema (esta entre los problemas de programación dinámica en la zona de descargas)








6.- Considere una cadena de supermercados con 3 locales. La cadena debe comprar 6 litros de leche diariamente a un proveedor y distribuirlos en sus tres locales. Si un local vende un litro de leche recibe una utilidad de $2, y por cada litro sobrante diario se obtiene una utilidad de $0.50 al devolverlo al proveedor, por ejemplo, si en un día existen 3 litros en un local y se venden 2 litros, se obtiene una utilidad de $4 por los dos litros vendidos, más $0.50 por el litro devuelto al proveedor. Sin embargo la demanda de leche en cada local no es conocido con anterioridad y la siguiente tabla muestra los valores posibles de ella.




Determine cuantos Determine la distribución de los litros de leche.
Examinando tenemos …::

Si no sabes que significan los símbolos léete primero los conceptos en este artículo
Precio de utilidad PU =2
Precio de devolución PD= 0.5

>>como son tres tiendas debo decidir cuanta leche dejar en cada una , de aquí saco que vas aser 3 etapas y que la variable de decisión ( x ) indicara cuanta leche dejar en cada tienda

Xi : cuantos litros de leche dejar en cada tienda

>>Además , mi estado será cuanta leche me quede ( y )

Yi :la cantidad de litros de leche que me queda

>> Mi variable de estado cambiara deacuerdo a cuanta leche deje , entonce se formularia así

FT : Yi+1 =Yi - Xi



::Lo que se busca ::

Max U(x) =2 sum(Di) + 0.5 sum(Xi-Di) donde i={1,2,3}

Fr: Fi(Yi)=Max{ Ui(Xi) + Fi+1(Ui+1) }



::Condiciones de borde :: 

 Y1=6 , F4(Y4)=0


>> ahora , si leyeron el post pasado dije que si no te dan una tabla de utilidad tenias que armarla pues aquí se hace o lo puedes calcular al paso , pero mas fácil es tener la tabla y armada

Bien solo indicare como hacer para la tienda 3 , la 2 y 1 la hace ustedes :P

U(0)=0
<<100% de que no tenga ninguna utilidad>>
U(1)=2
<< Si tengo solo un litro y mis demandas son de 1 ,2 o 3 es 100% de que la venda y recibo 2 dólares por ello>>



U(2)=3.4
<<
Si tengo 2 litros , y mi demanda es de 1  vendo 1 y me sobra 1 , entonces recibo 2+0.5  , y esto puede ocurrir con una probabilidad de 0.4  ,
Entonces lo que recibo es   (2+0.5)x0.4 , ahora si mi demanda es de 2  o 3 , pues vendo todo 2x2 ( 0.3  ) y
2x2 ( 0.3  ) respectivamente ...

quedando en todo ::  (2+0.5)x0.4  + 2x2 ( 0.3 ) + + 2x2 ( 0.3 )
Se puede poner como =
x //esto en cada caso , para cada probabilidad
**la 'x' esel simbolo de multiplicacion , no la variable de decision **

 >>
 

U(3)= ( 2 + 1) 0.4 + ( 4 + 0.5 ) 0.3 + (6)0.3 = 4.35

Igual para la tienda 1 y 2

Quedaria  asi
U2(0)= 0
U2(1)=2
U2(2)=3.25
U2(3)=4.35


U1(0)=0
U1(1)=2
U1(2)=3.1
U1(3)=4.2

::: Ahora si las iteraciones :::

Para la tienda 3



 










OBS : solo se le puede asignar asta 3 pues es lo máximo de mi demanda


 

Para la tienda 2 :

  
OBS : no siempre la decisión 0 va tomar como valor 0 , ojo.


Para la tienda 1 :

 
:: Solución ::
Se tienen dos soluciones

X1=1, X2=3,X3=2
X1=1, X2=2,X3=2


Cualquier duda , escriban en los comentarios , suerte en la practica (00)/

Tags :

2 comentarios:

  1. Hola,

    Sería conveniente mejor tu función de rendimento, e indicar claramente quien el variable de estado y la variable de decisión.

    ResponderEliminar
  2. hola
    que xuxa teni vo en la cabeza ?

    ResponderEliminar