4 votos

Recursividad de la programación dinámica

En un libro de Wayne Winston para la investigación de operaciones encontré esta pregunta.

enter image description here

Así es como lo hice:
Sea $t$ es el número de asignaturas que tiene que aprobar y h es el número de horas que tiene para estudiar.
Entonces $f_t(h)$ es la probabilidad de aprobar las asignaturas t,t+1,..3 cuando se dispone de h horas. Sea $x_t$ es el número de horas dedicadas al tema t.
$0<=x_t<=h; h\in {0,1,2,3,4}$

Entonces $f_3(4)=0.5 \\ f_3(3)=0.44 \\f_3(2)=0.4\\f_3(1)=0.3\\f_3(0)=0.1$
Sea $P_t(x_t) $ es la probabilidad de aprobar la asignatura t cuando $x_t$ horas se dedican a ello.

$f_t(h)=max $ { ${P_t(x_t)}+f_{t+1}(h-x_t)$ }
Según esto obtengo
$f_(4)=$ max $P_1(0)+f_2(4)=0.98\\P_1(1)+f_2(3)=1\\P_1(2)+f_2(2)=1\\P_1(3)+f_2(1)=0.93\\P_1(0)+f_2(4)=0.425$

La respuesta que recibo es que debería estudiar francés durante una hora, alemán durante una hora y Stat durante dos horas. Pero la respuesta que da el libro dice: francés 1 hora, alemán 0 horas, estadística 3 horas.

¿Qué le pasa a mi método? Y cuál es la probabilidad de aprobar al menos una asignatura ?

1voto

callculus Puntos 6878

Yo tengo un enfoque diferente.

índices:

$ij$ : La cantidad de horas i Angie está aprendiendo para el curso j .

$i \in \{0,1,2,3,4\}$

$j \in \{1,2,3\}$

variables:

$$x_{ij}=\begin{cases} 1, \ \texttt{if Angie learns i hours for course j} \\ 0, \ \texttt{else}\end{cases}$$

$$f_{ij}=\texttt{probability, that Angie passes course j, if she is learning i hours}$$

restricción 1: Angie está aprendiendo 4 horas a la semana

$$\sum_{i=0}^4 \sum_{j=1}^3 i \cdot x_{ij}=4$$

Restricción 2: Sólo una combinación de horas/curso para cada curso

$$ \sum_{i=0}^4 x_{ij}=1 \ \ \ \ \forall j \in \{1,2,3\}$$

función objetivo:

Debido a los comentarios de joriki la función objetivo es

$$\texttt{max} \ \ \ 1-\prod_{j=1}^3 \left(1- \sum_{i=0}^4 f_{ij} \cdot x_{ij} \right) $$

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X