Ejercicios Resueltos Programacion Dinamica
Short Description
Download Ejercicios Resueltos Programacion Dinamica...
Description
Laboratorio de Investigación Operativa II
FII-UNMSM
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, Decana de América) FACULTAD DE INGENIERIA INDUSTRIAL INVESTIGACIÓN DE OPERACIONES II CURSO:
PRÁCTICA CALIFICADA DE LABORATORIO
TEMA:
PROGRAMACIÓN DINÁMICA
PROFESORA:
Ing. ROSMERY MAYTA
ALUMNOS
CÓDIGOS
DELGADO QUINTANILLA, Manuel A.
05170186
LOPEZ ZORRILLA, Max Cristian
05170111
MEJÍA SANCHEZ, Linye Zulyn
05170153
1
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
Ciudad Universita ria, Julio del 2009.
SOLUCIÓN DE LA PRÁCTICA DE LABORATORIO PROBLEMA 1 1. Un estudiante debe elegir diez cursos optativos de cuatro departamentos diferentes. Debe seleccionar al menos un curso de cada departamento. Su objetivo es “repartir” sus diez cursos en los cuatro departamentos, de tal manera que maximice sus “conocimientos” en los cuatro campos. Comprende que si toma un cierto numero de cursos en un departamento su experiencia sobre la materia no aumentará apreciablemente porque el material será demasiado complicado para lo que comprenda o porque los cursos se repiten. Por consiguiente, mide su capacidad de aprendizaje como una función del número de cursos que toma en cada departamento en cada escala de 100 puntos y produce el diagrama siguiente (se supone que los agrupamientos de cursos satisfacen los pre-requisitos para cada departamento). Formule el problema como un modelo de programación dinámica utilizando las ecuaciones recursivas de avance y de retroceso. NÚMERO DE CURSOS DEPART. I II III
1 25 20 40
2 50 70 60
3 60 70 80
4 80 100 100
5 100 100 100
6 100 100 100
7 100 100 100
8 100 100 100
9 100 100 100
10 100 100 100
IV
10
20
30
40
50
60
70
80
90
100
SOLUCIÓN A) De manera manual:
Datos: 2
Total cursos a seleccionar: 10 Objetivo: maximizar conocimientos PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II -
FII-UNMSM
Restricción: debe seleccionar al menos un curso por departamento.
Definiendo etapas: -
Etapa 1: departamento IV Etapa 2: departamento III Etapa 3: departamento II Etapa 4: departamento I
-
El gráfico mostrado a continuación indica la cantidad de cursos que puede elegir por cada departamento (Xi) y la disponibilidad de cursos (Si), esto es teniendo en cuenta que para cada departamento obligatoriamente se debe de elegir por lo menos un curso siendo la función recursiva: F(Xi,Si)= r(Xi)+F(Xi-1,Si-1), teniendo en cuenta algunas restricciones
Aplicando programación dinámica por etapas, se muestra el resultado a continuación. - Etapa 1: departamento IV En esta primera etapa solo se toma los beneficios alcanzado al elegir, cuantos cursos se quiere llevar en el departamento IV, pues no hay etapa anterior
-
Etapa 2: departamento III
En esta etapa ya se empieza a acumular los beneficios alcanzados tomando en cuanta la elección de los cursos en este departamento y en el anterior
3
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
- Etapa 3: departamento II Se toma en cuanta los beneficios de la primera, segundo y tercera etapa, de manera acumulativa, hasta el momento el beneficio máximo es 210. Estos cuadros se han realizado tomando en cuanta el grafico inicial, en el cual se puede observar que la cantidad máxima de cursos disponibles 7, y la cantidad mínima es 3, pues se necesita como mínimo 1 en el departamento I, 1 en el departamento II, y 1 en departamento 3. Además no se puede cumplir con f(Xi, Si>Xi-1), por la misma razón
- Etapa 4: departamento I Aquí se obtiene el beneficio máximo, teniendo en cuenta todas las restricciones anteriores.
Haciendo un análisis hacia atrás, vemos que existen 5 alternativas distintas que dan el mayor grado de satisfacción. LAS DIFERENTES ALTERNATIVAS SON LAS SIGUIENTES:
4
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
ALT 1
ALT 2
ALT 3
ALT 4
ALT 5
I
2
2
3
4
5
II
2
4
2
2
2
III
4
3
4
3
2
IV
2
1
1
1
1
DEPARTAMENTOS
PUNTAJE TOTAL
240
240
240
240
240
Dando como resultado un puntaje máximo de 240, y para este resultado existen 5 alternativas distintas, mostradas en la tabla anterior.
B) Programación en DIN: -
Ingresando los datos, tenemos que el conjunto decisión esta conformado por las cantidades de cursos que se pueden llevar en los departamentos(sn1=1,2,3,4). En este caso hasta el valor 7 pues es lo máximo permito, visto anteriormente) - En la condición de contorno se coloca los valores de los beneficios que brinda en departamento 4, conforme a la elección de cursos del departamento : F(4,1)=10 f(4,2)=20 f(4,3)=30 f(4,4)=40 f(4,5)=50 F(4,6)=60 f(4,7)=70 f(4,8)=80 f(4,9)=90 f(4,10)=100 -
En las definiciones adicionales colocan todos los beneficios dependiendo del departamento (1,2,3,4) y la cantidad de cursos que se desee llevar SN2 representa la disponibilidad, con la cantidad de cursos con que se cuenta. También esta la función de retorno o recursiva que es la que va a indicar el beneficio máximo.
INGRESANDO DATOS
5
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
Estados calcula estados
Solución calcula solución
6
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
La cual generan 5 soluciones al igual, que las realizadas de manera manual, lo que significa que la resolución esta correcta. PROBLEMA 2 2. Se tiene cuatro equipos de investigación y se cuenta con 3 científicos, se puede asignar de 0 a 3 científicos a cada equipo. El objetivo es maximizar la probabilidad de éxito total de la investigación, es decir de los 4 equipos pueden tener 0 o 3 integrantes y esto genera una probabilidad de éxito, la cual se requiere maximizar. E la siguiente tabla se encuentra las probabilidades de éxito del equipo dependiendo del número de científicos que lo conforman. Nro. De científicos
EQUIPOS
asignados
0 1 2 3 7
1 0.7 0.8 0.89 0.98
2 0.71 0.8 0.93 0.96
3 0.75 0.83 0.9 0.97
4 0.8 0.89 0.94 0.99
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
SOLUCIÓN: A) De manera manual:
Datos: -
Total de científicos disponibles: 3 Objetivo: maximizar probabilidad de éxito Restricción: se puede elegir de 0 a 3 científicos.
Aplicando el método del árbol de decisión obtenemos la figura N°1, siendo los valores del árbol lo siguiente:
F
A,B
-
8
Siendo: - A: número de equipo A,G C, (D) - B: número de cientif. disponibles para el equipo 1 E - C: numero de cientif. elegidos. - D: probabilidad de elegir C cientif. E: probabilidad acumulada (del equipo 4 al equipo 1) F: máxima probabilidad de éxito
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM 0.801
3,3 0, (0.71) 0.56871
0.62078
0.7387
3,2
1, (0.8)
2,3
0.59096
2, (0.93) 0.62078
0.6675
3,1
3,(0.96) 0.576
0.6
0, (0.7)
3,0
0.43455
0.7425 0.75
0
0.7802 1
0.83
0.776
0.801 2
0.9
3
0.97
4,3
4,2
4,1
4,0
0.99
0.94
0.89
0.8
0
0.705 0.75
0.7387 1
0.83
0.72 2 0.9
4,2
4,1
4,0
0.94
0.89
0.8
0.6675
0.664
0 0.75
1 0.83
4,1
4,0
0.89
0.8
0.6 0
0.75
4,0 0.8
0.7387 0.4464
0.558
1,3
1, (0.8)
2,2
0.4464
0, (0.71)
0.52448
1, (0.8) 0.534
2, (0.93) 0.558
2, (0.89)
3,2
0.4272
0.6675
3,1
0.6
3,0
0.7387
0.705 0.75
0
1
0.83
0.72 2
4,2
4,1
4,0
0.94
0.89
0.8
0.6675 0.75
0
0.9
0.664 1 0.83
4,1
4,0
0.89
0.8
0.6 0.75
0
4,0 3,(0.98) 0.41748
0.48
2,1
0, (0.71) 0.4739
1, (0.8) 0.48
0.6675
3,1
0.6
3,0
0.8
0.6675
0.664
0 0.75
1
0.83
4,1
4,0
0.89
0.8
0.6 0
0.75
4,0
0.426
0.8
2,0 0, (0.71) 0.426
0.6
3,0
0.6 0
0.75
4,0 0.8
Figura N° 1
Siendo la ruta que maximiza el éxito, la siguiente. 9
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
La probabilidad máxima de éxito es de 0.4464 y la cantidad de cientificos por equipo: EQUIPOS ALTERNATIVA 1 2 3 4
1 2 0 0
B) Programación en DIN: Ingresando los datos, siendo d la cantidad de científicos que se puede asignar, sn1: el numero de equipos, sn2:la cantidad de científicos para el equiposn1, y r la función de recurrencia. En la función de contorno colocamos las probabilidades de asignar de 0 a 3 cientificos en el equipo 4, y en definiciones adicionales las probabilidades no solo del equipo 4 sino de todos los equipos.
Estados calcula estados 10
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
Resultado 9 estados Solución calcular solución
Lo que comprueba que solo hay una solución factible cuyo retorno máximo es de 0.4464, y la distribución es la siguiente: Primer equipo: 1 científico Segundo equipo: 2 científicos Tercer y cuarto equipo: 0 científicos Coincidiendo con lo realizado manualmente
PROBLEMA 3 3. Un excursionista tiene una mochila de 15 pies cúbicos de capacidad y desea saber cuales son los artículos más valiosos que va a llevar a la excursión. Hay tres artículos de donde escoger. Sus volúmenes son de 2, 3y 4 pies cúbicos. Debe llevar por lo menos 1 de cada artículo. El excursionista estima sus valores correspondientes, en una escala del 0 al 100. en la siguiente tabla se dan los siguientes datos. Determine la solución óptima aplicando programación dinámica. Articulo 11
Volumen (pies cúbicos) Beneficio PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
1
2
30
2
3
50
3
4
70
SOLUCIÓN: Datos: - Total de artículos a seleccionar: 3 - Objetivo: Maximiza el Beneficio. - Restricción: Se debe seleccionar por lo menos uno de cada artículo. Etapa 1: Cantidades del artículo 3. Etapa 2: Cantidades del artículo 2. Etapa 3: Cantidades del artículo 1. W/W3 = 15/4 = 1, 2, 3. (No se toma en cuenta el 0, por la restricción.) W/W2 = 11/3 = 1, 2, 3. W/W1 = 8/2 = 1, 2, 3, 4.
Cantidades de los artículos y el respectivo volumen que ocupan: Articulo 1 2 3 Total
Cantidad 1 3 1
Volumen (pies cúbicos) 1*4=4 3*3=9 1*2=2 15
Cantidad 2 1 2
Volumen (pies cúbicos) 2*4=8 1*3=3 2*2=4 15
Solución en DIN1:
Ingresando datos 12
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
Generando estados
ejecutando
LO QUE DA DOS SOLUCIONES Y EL VALOR OPTIMO ES DE 250 Comprobando que lo realizado manualmente esta correcto. 13
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
PROBLEMA 4 4. Juan Pérez tiene un pequeño jardín en la parte de atrás de mi casa, que mide 20x30 pies. Esta primavera planeo planta tres tipos de vegetales: zanahoria, betarraga y maíz. El jardín está organizado en hileras de 30 pies. Lo que mas me agrada son las zanahorias y lo que menos me agrada son las betarragas y en una escala de l 1 al 10, les asignaría 10 a la zanahoria, 7 al maíz y 3 a la betarraga. Sin considerar mis preferencias, mi esposa insiste en que plante por lo menos dos hileras de betarragas y no más de tres hileras de zanahoria. ¿cuántas hileras de cada vegetal debo plantar?
VEGETAL
PREFERENCIA
MEDIDA(pies)
zanahoria
10
2
betarraga
3
3
maíz
7
2
SOLUCIÓN: Datos: - Total de vegetales a seleccionar: Zanahoria, Betarraga, y Maíz. - Objetivo: Maximiza la preferencia de los vegetales. - Restricción: Plantar por lo menos dos hileras de betarragas, y no más de tres hileras de zanahoria Etapa 1: Cantidades del artículo 3. Etapa 2: Cantidades del artículo 2. Etapa 3: Cantidades del artículo 1. W/W1 = 20/2 = 0,1, 2, 3. (Máximo 3 hileras de zanahoria.) W/W2 = 20/3 = 2, 3, 4, 5, 6. W/W3 = 14/2 = 0, 1, 2, 3, 4, 5, 6, 7.
14
PROGRAMACIÓN DINÁMICA
Laboratorio de Investigación Operativa II
FII-UNMSM
Hileras a plantar: Vegetal Zanahoria Betarraga Maíz
Medida (pies) 3 2 4
• 3 hileras de zanahoria*2 + 2 hileras de betarraga*3 + 4 hileras de maíz*2 = 20 hileras de vegetales. Nota: Recordar que cada hilera tiene 30 pies.
B)Programando en DIN: Se ingresa d: toda la cantidad de artículos que se puedan sembrar de los tres productos. Para cumplir con las restricciones dadas de que solo se puede sembrar como mínimo dos hileras de betarraga que es el producto 2 y como máximo 3 hileras de zanahoria, en la parte de restricciones del programa, se coloca ademas de que: sn1
View more...
Comments