Métodos generales

12
Métodos generales Métodos arborescentes: método guiado de exploración del espacio de soluciones factibles, donde la estrategia de recorrido depende del problema particular a tratar. Métodos de programación dinámica: para procesos de decisión secuenciales, fundamentada en una resolución recursiva del problema.

description

Métodos generales. Métodos arborescentes: método guiado de exploración del espacio de soluciones factibles, donde la estrategia de recorrido depende del problema particular a tratar. - PowerPoint PPT Presentation

Transcript of Métodos generales

Page 1: Métodos generales

Métodos generales• Métodos arborescentes: método guiado de

exploración del espacio de soluciones factibles, donde la estrategia de recorrido depende del problema particular a tratar.

• Métodos de programación dinámica: para procesos de decisión secuenciales, fundamentada en una resolución recursiva del problema.

Page 2: Métodos generales

Métodos arborescentes (B&B)

• Sea un problema (IP): Min f(x) / xS

• Los procedimientos de “Branch and Bound” (B&B) permiten determinar por enumeración implícita las soluciones realizables de S y encontrar la solución óptima en S.

• La exploración de soluciones realizables sigue dos principios: “branching” y “bounding”

Page 3: Métodos generales

• Branching: permite reducir el estudio de S al de subconjuntos de S cada vez más reducidos, de forma de terminar resolviendo problemas muy sencillos (por ejemplo de un sólo elemento). Normalmente esta subdivisión de S es una partición.

• Bounding: Para cada subconjunto de S obtenido por branching se calcula una cota por defecto de f(x) en ese subconjunto o función de evaluación (para un problema de mínimo, de lo contrario es una cota superior)

Page 4: Métodos generales

• Proceso de exploración: representado por una arborescencia/ la raíz es todo el conjunto S

• El modo de construcción de la arborescencia depende de la elección del nodo del árbol que se elige para “ramificar” (branching)

• Procedimientos de B&B: en profundidad, el de mejor evaluación

• Un nodo Si de la arborescencia no se divide más si:

– Si no factible, o sea Si = – Se encontró la solución óptima

– Toda solución en Si es un valor dominado: f(x)f(y) x Si para algún y Sj / j i

Page 5: Métodos generales

• Programación entera: una forma de encontrar una cota inferior es relajar las restricciones enteras

• Sea el problema

(IP)i : zi= max cx / xSi, Si Z+n y / S= Si y sea

(IP) : zip= max cx / xS, S Z+n => zip=max zi, i=1..k

(DP)i el dual de (IP)i

sea (RP)i y (RP) relajaciones correspondientes a los problemas IP:

Si SiR (dominio de (RP)i ) y los valores de la función

objetivo cumplen:

zi R(x) zi(x) x Si

Page 6: Métodos generales

TEO: El árbol de enumeración puede dejar Si sin dividir si se da una de las siguientes condiciones:

a) (RP)i es no factible

b) xiR Si

R, xiR es óptimo para (RP)i y satisface xi

RSi, (=>es óptimo también para (IP)i )

c) zi R z-infi , donde z-infi es el valor del objetivo para

alguna solución factible de (IP)

TEO: El árbol de enumeración puede dejar Si sin dividir si se da una de las siguientes condiciones:

a) El valor de la función objetivo de (DP)i es no acotado inferiormente

b) (DP)i tiene una solución factible de valor igual o menor que zi’

Page 7: Métodos generales

Ejemplos

Page 8: Métodos generales

Algoritmo general de B&B

1- Inicialización: ={ IP}, S0=S, z-sup0=, z-inf=-,

2- Test fin: Si = fin

3- Selección y relajación: seleccionar y eliminar un problema (IP)i de . Resolver su relajación Rpi. Sea xi

R la solución óptima si

4- Poda:

a) Si zi R z-inf ir a 2

b) Si xiR Si, ir a 5

c) Si xiRSi, y cxi

R >z-inf => z-inf= cxiR Eliminar de todos los problemas con : z-

supi z-infi. Ir a 2.

5- División: Sea (Sij)j, j=1..k una división de Si, => adicionar los problemas (IP)ij j=1..k a

z-supij= zi R para j=1..k. Ir a 2

Page 9: Métodos generales

Programación dinámica

• técnica para descomponer el problema original en una serie de problemas “embebidos”

• aproximación recursiva para resolver el problema original

• desarrollada originalmente para resolver problemas de decisión secuenciales

• Proceso de decisión secuencial en tiempo discreto: t=1..T, al comienzo del período t el proceso está en estado st-1 que depende de: el estado inicial s0 y de las variables de decisión x1..xt-1 para t=1..T

Page 10: Métodos generales

• Estado: la contribución a la función objetivo en el período t depende solamente de st-1 y de xt y el estado en t+1 solamente de st-1 y de xt

• Formulación de un problema por programación dinámica: z=max gt(st-1,xt) /

st=t(st-1,xt) t=1..T-1 (st son las variables de estado y las xt las de decisión)

s0 dato

El dominio de las variables de estado y de decisión depende de la aplicación

• Política: es un conjunto de decisiones secuenciales que hacen evolucionar el estado del sistema.

Page 11: Métodos generales

T

zk(sk-1)=max gt(st-1,xt)

t=k

/ st=t(st-1,xt) t=k..T-1

s0 dato

TEO: Formula recursiva

zk(sk-1)=max gk(sk-1,xk) + zk+1(sk)

/ sk=t(sk-1,xk)

Page 12: Métodos generales

• La fórmula recursiva anterior permite transformar el problema original con T variables de decisión, T-1 variables de estado y T-1 restricciones de estado en una secuencia de T subproblemas, dado por la fórmula anterior.

• Inicialmente zT+1(sT)=0

• La fórmula recursiva expresa un principio intuitivo de optimalidad para un proceso de decisión secuencial: una vez alcanzado un estado particular, una condición necesaria de optimalidad es que las decicsiones remanentes deben ser elegidas optimamente con respecto al estado (principio de optimalidad de Bellman)