Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Investigación de Operaciones
Primera parte...............................................................................................................................3
Programación dinámica............................................................................................................3
Cuales son las Características de las Aplicaciones de Programación Dinámica........................3
Cuales son las Etapas definirlas para la Resolución de un problema de programación
dinámica...................................................................................................................................4
Cuales son las Tipos de programación dinámica......................................................................4
Definir la Programación Dinámica Determinísticas..................................................................5
Definir la Programación Dinámica Probabilística y sus desventajas.........................................5
Segunda parte..............................................................................................................................7
Realice Cálculo utilizando los números de Fibonacci................................................................7
Realice un ejercicio mediante Cálculo de los coeficientes binomiales.....................................7
Describir La subsecuencia común máxima, indique un ejemplo..............................................8
Describa El problema del camino de mínimo costo, indique tres ejemplo y grafique..............9
Señale la formula de Principio de optimalizad:......................................................................11
Realizar un ejercicio de Asignación de recursos.....................................................................12
Definir Función de Valor Óptimo, realizar un ejercicio...........................................................13
Definir Multiplicación de una secuencia de matrices y sus formulas , realice un ejercicio.....13
Señale un ejemplo de Aplicación del principio de optimalidad.............................................16
Definir Planificación de trabajos, de un ejemplo....................................................................17
Conclusión..................................................................................................................................18
Introducción
Programación dinámica
fue introducida por primera vez por Richard E. Bellman en la década de 1950. El
término «dinámica» significa que el problema tiene componentes secuenciales o
temporales, y «programación» se refiere a una política de optimización. En resumen, la
programación dinámica proporciona un marco general para problemas dinámicos
complejos dividiéndolos en subproblemas.
Esto lo toma en cuenta la programación dinámica, por lo que resuelve cada subproblema
solo una vez. Esto se puede lograr de dos maneras:
Una variable describe cuántas decisiones, hasta cierto punto, han sido tomadas y, en ese
caso, si el número total de decisiones es fijo, entonces el número de etapas será igual al
número de decisiones.Las variables de estado, que son las posibles condiciones variadas
en las cuales el procedimiento se encuentra en esa etapa del problema y el número de
estados, pueden ser finitas o infinitas.
La decisión en cada etapa es qué tanto asignar. Las variables de estado sucesivas Xn,
Xn+1 están unidas a través de la ecuación recursiva que calcula los valores de Xn+1
usando el valor de Xn y la decisión en el estado dn.
Bottom-up: Todos los problemas que puedan ser necesarios se resuelven de antemano y
después se usan para resolver las soluciones a problemas mayores. Este enfoque es
ligeramente mejor en consumo de espacio y llamadas a funciones, pero a veces resulta
poco intuitivo encontrar todos los subproblemas necesarios para resolver un problema
dado.
Definir la Programación Dinámica Determinísticas
Desventajas
2.- estados: son las diversas condiciones posibles en la que el sistema podría estar en esa
etapa del problema. Se representan por círculos.
3.- política: es cualquiera de los caminos que llevan de la primera a la última etapa.
INICIO
SI n = 0 ENTONCES
DEVOLVER 0
SI NO, SI n = 1 ENTONCES
DEVOLVER 1
SI NO
FIN SI
FIN
Variables
i, j: NATURAL
Inicio
tabla[i][0] := 1
FIN PARA
FIN PARA
tabla[i][i] := 1
FIN PARA
SI j <= k ENTONCES
FIN SI
FIN PARA
FIN PARA
devolver tabla[n][k]
Fin
El problema de subsecuencia común más larga (en inglés, longest common subsequence
problem, abreviado LCS problem), se trata de encontrar una subsecuencia más larga que
es común en un conjunto de secuencias (Aunque en la mayor parte solamente se toman
dos secuencias). Es diferente del problema de substring común más largo; a diferencia
de los substrings, las subsecuencias no necesitan tener posiciones consecutivas en la
secuencia original. El problema de LCS es uno de los problemas clásicos de las ciencias
computacionales y es la base de programas que comparan datos como la utilidad diff, y
ha tenido usos en bioinformática. También es usado ampliamente para los sistemas de
control de revisión como Git para reconciliar múltiples cambios sobre archivos
controlados de revisión.
0, 2, 6, 9, 11, 15.
0, 4, 6, 9, 11, 15 o 0, 4, 6, 9, 13, 15
Describa El problema del camino de mínimo costo, indique tres ejemplo y grafique
este problema trata de descubrir los caminos mínimos de todas las parejas de nodos
de un un grafo con n nodos.
el camino mínimo entre el nodo 1 y el 3. Entre los tres caminos posibles tenemos
1→3 con valor 20, 1→4→3 con valor 13+2=15 y, finalmente, 1→2→4→3 con
valor 3+8+2=13, siendo este último el de menor valor.
Se denota por c(u,v) el costo del arco (u,v). Se debe hallar un camino de costo mínimo que
vaya del nódulo 0 al nódulo d. Cada Vi define una etapa del grafo por lo que todo recorrido
del nódulo 0 al nódulo d tiene exactamente un vértice en cada Vi.
Si el grupo de recursos analysts es el único grupo activo, puede utilizar hasta el 100%
de los recursos del sistema para su trabajo (el máximo de recursos).
Si el grupo de recursos rptquery es el único grupo activo, puede utilizar hasta el 60% de
los recursos netos del sistema (el máximo de recursos). El 40% restante de los recursos
del sistema netos disponibles permanecerá sin asignar.
Si los grupos de recursos analysts y public son los únicos grupos activos, el total del
mínimo de recursos será el 70%. El sistema determina sus porcentajes de recursos en
base a los mínimos de recursos relativos. El resultado para cada grupo de recursos no
supera el máximo de recursos.
Si los grupos de recursos rptquery y public son los únicos grupos activos, el total del
mínimo de recursos será el 50%. El sistema determina sus porcentajes de recursos
permitidos en base a los mínimos de recursos relativos. Dado que el resultado para el
grupo de recurso rptquery supera el máximo de recursos, el exceso se asigna al grupo de
recursos public.
eniendo una sucesión de matrices que van a ser multiplicadas, queremos escoger el
modo óptimo de realizar las operaciones para minimizar la cantidad de
multiplicaciones escalares. Por ejemplo, teniendo las matrices A1, A2 y A3, la
multiplicación viene dada por A1A2A3, que podemos obtener como (A1A2)A3 o
A1(A2A3).
Una opción es realizar todas las posibles formas para poner paréntesis en la
multiplicación, pero esto requeriría un tiempo exponencial (O(2n)). Para resolverlo
en tiempo polinomial, vamos a aprovechar la subestructura óptima de este problema.
Problema
(X × Y) × Z
X × (Y × Z)
Entrada
Por cada arreglo en las series de arreglos a multiplicar se te dará únicamente las
dimensiones del arreglo. Cada serie consiste en un entero n el cual indica la cantidad
de arreglos a multiplicar, seguido por n pares de enteros, cada par indicando la
cantidad de filas y columnas en el arreglo; el orden en el que se dan las dimensiones
es el mismo en el que van a ser multiplicados. Un valor de cero para n indica el fin
de la entrada. Los valores de n no serán mayores a 10.
Salida
Puedes asumir que el nombre de los arreglos es A1, A2, …, An. Tu salida para cada
caso de entrada deberá ser una línea que contenga la expresión con paréntesis que
indiquen el orden correcto en el que se tienen que multiplicar los arreglos. El
número del caso debe anteceder a la respuesta (los casos están numerados
secuencialmente, empezando por el 1). Tu salida debe ser muy similar a la que se
muestra en las salidas del ejemplo. Si, por casualidad, existen varias respuestas
correctas, cualquiera de ellas será tomada como válida.