Sunteți pe pagina 1din 151

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)

EL Problema del Vendedor Viajero (TSP) y


Programacin Entera (IP)
Daniel Espinoza
Universidad de Chile
Facultad de Ciencias Fsicas y Matemticas
Departamento de Ingeniera Industrial

24 de julio de 2006

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Contenidos

Contenidos
1

Introduccin

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Contenidos

Contenidos
1

Introduccin

Resolviendo TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Contenidos

Contenidos
1

Introduccin

Resolviendo TSP

Programacin Entera y el TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin

Contenidos
1

Introduccin
Descripcin del Problema
Historia
Record TSP en el tiempo
Algunas Aplicaciones del TSP

Resolviendo TSP

Programacin Entera y el TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Descripcin del Problema

Definicin:
Dado un conjunto finito de
ciudades, y costos de viaje
entre todos los pares de
ciudades, encontrar la forma
mas barata de visitar todas las
ciudades exactamente una vez,
y volver al punto de partida.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Descripcin del Problema

Definicin:
Dado un conjunto finito de
ciudades, y costos de viaje
entre todos los pares de
ciudades, encontrar la forma
mas barata de visitar todas las
ciudades exactamente una vez,
y volver al punto de partida.
Mas precisamente:
Los costos son simtricos en el sentido de que viajar desde la
ciudad X a la ciudad Y tiene el mismo costo que viajar desde la
ciudad Y a la ciudad X. La condicin de visitar todas las
ciudades implica que el problema se reduce a decidir en que
orden las ciudades van a ser visitadas.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Historia

Primeras referencias datan del 1832, para vendedores


viajeros.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Historia

Primeras referencias datan del 1832, para vendedores


viajeros.
Karl Menger, 1930, (Shortest Hamiltonian Path).

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Historia

Primeras referencias datan del 1832, para vendedores


viajeros.
Karl Menger, 1930, (Shortest Hamiltonian Path).
J.B. Robinson, On the Hamiltonian game (a
traveling-salesman problem), 1949. Esta es la primera
referencia del problema como es conocido hoy en dia.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Historia

Primeras referencias datan del 1832, para vendedores


viajeros.
Karl Menger, 1930, (Shortest Hamiltonian Path).
J.B. Robinson, On the Hamiltonian game (a
traveling-salesman problem), 1949. Esta es la primera
referencia del problema como es conocido hoy en dia.
G. Dantzig, R. Fulkerson, and S. Johnson, "Solution of a
large-scale traveling-salesman problem", 1954. Solucin de
una instancia de 49 ciudades (capitales de los estados de USA),
introduccin de cortes y branching.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Historia

Primeras referencias datan del 1832, para vendedores


viajeros.
Karl Menger, 1930, (Shortest Hamiltonian Path).
J.B. Robinson, On the Hamiltonian game (a
traveling-salesman problem), 1949. Esta es la primera
referencia del problema como es conocido hoy en dia.
G. Dantzig, R. Fulkerson, and S. Johnson, "Solution of a
large-scale traveling-salesman problem", 1954. Solucin de
una instancia de 49 ciudades (capitales de los estados de USA),
introduccin de cortes y branching.

M. Held and R.M. Karp, .A dynamic programming approach


to sequencing problems", 1962. introduccin de heuristicas
basadas en programmacin dinmica.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Record TSP en el tiempo

Ao
1954
1971
1975
1977
1980
1987
1987
1987
1994
1998
2001
2004
2005

Autores

Nmero
ciudades
Dantzig, Fulkerson, and Johnson
49
Held and Karp
64
Camerini, Fratta, and Maffioli
67
Grtschel
120
Crowder and Padberg
318
Padberg and Rinaldi
532
Grtschel and Holland
666
Padberg and Rinaldi
2,392
Applegate, Bixby, Chvtal, and Cook
7,397
Applegate, Bixby, Chvtal, and Cook
13,509
Applegate, Bixby, Chvtal, and Cook
15,112
Applegate, Bixby, Chvtal, Cook, and Helsgaun 24,978
Cook, Espinoza and Goycoolea
33,810

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Record TSP en el tiempo

10000

b
b

1000

100

b
b
b

1953

1961

1969

1977

1985

1993

2001

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.
Ordenamiento de
observaciones en
telescopios (NASA).

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.
Ordenamiento de
observaciones en
telescopios (NASA).
Diseo de chips.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.
Ordenamiento de
observaciones en
telescopios (NASA).
Diseo de chips.
Tour Mundial.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.
Ordenamiento de
observaciones en
telescopios (NASA).
Diseo de chips.
Tour Mundial.
El problema del Viejo
Pascuero.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Introduccin
Algunas Aplicaciones del TSP

Vehicle Routing.
Bus Escolar.
Atencin de Llamadas
de Emergencia.
Servicio de Correo
Expreso.

Secuenciamento de
genes.
Ordenamiento de
observaciones en
telescopios (NASA).
Diseo de chips.
Tour Mundial.
El problema del Viejo
Pascuero

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP

Contenidos
1

Introduccin

Resolviendo TSP
Enumeracin y Heuristicas
Obteniendo Cotas
Formulacin del TSP como IP
Relajacin continua
Algoritmo de hiperplanos cortantes
Cortes para el TSP
Resultados Numricos

Programacin Entera y el TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .
Enumeracin solo es posible para problemas muy
pequeos.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .
Enumeracin solo es posible para problemas muy
pequeos.

La heuristica de Held-Karp tiene una garantia de n2 2n para


el caso general.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .
Enumeracin solo es posible para problemas muy
pequeos.

La heuristica de Held-Karp tiene una garantia de n2 2n para


el caso general.
Si asumimos que las distancias son euclidianas hay
heursticas con garantia de 12 .

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .
Enumeracin solo es posible para problemas muy
pequeos.

La heuristica de Held-Karp tiene una garantia de n2 2n para


el caso general.
Si asumimos que las distancias son euclidianas hay
heursticas con garantia de 12 .
Cuando las distancias son euclidianas buenas soluciones
heursticas estan dentro del 1-5 % del ptimo.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Podemos enumerar las soluciones y escoger la mejor?.


10 ciudades : 105,5 posibilidades.
100 ciudades : 10156 posibilidades.
1,000 ciudades : 102,565 posibilidades.
33,810 ciudades : 10138,441 posibilidades.
Edad del universo : 1018 segundos.
Nmero de tomos en el universo: < 10100 .
Enumeracin solo es posible para problemas muy
pequeos.

La heuristica de Held-Karp tiene una garantia de n2 2n para


el caso general.
Si asumimos que las distancias son euclidianas hay
heursticas con garantia de 12 .
Cuando las distancias son euclidianas buenas soluciones
heursticas estan dentro del 1-5 % del ptimo.
Como obtenemos mejores garantias para algun problema
particular?.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.

10
6

9
7

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.

Reemplazar 2 arcos.
K =2

5
6

10
9

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.

Reemplazar 2 arcos.
Reemplazar 3 arcos.

K =3

5
6

10
9

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.

Reemplazar 2 arcos.
Reemplazar 3 arcos.

K =3

10

Multiples posibilidades.
6

9
7

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.

Reemplazar 2 arcos.
Reemplazar 3 arcos.

K =4

10

Multiples posibilidades.
Reemplazar K arcos.

9
7

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.
Reemplazar 2 arcos.
Reemplazar 3 arcos.
Multiples posibilidades.
Reemplazar K arcos.
Lin-Kernighan usa
reemplazos de pares.

K
2
3
4
5
6
7
8
9
10

Casos
1
4
20
148
1368
15104
198144
2998656
51290496

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.
Reemplazar 2 arcos.
Reemplazar 3 arcos.
Multiples posibilidades.
Reemplazar K arcos.
Lin-Kernighan usa
reemplazos de pares.
Lin-Kernigham-Helsgun usa
reemplazos de 5 arcos.

K
2
3
4
5
6
7
8
9
10

Casos
1
4
20
148
1368
15104
198144
2998656
51290496

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Enumeracin y Heuristicas

Heuristicas K-Opt
Heuristicas basadas en
mejoras locales.
Reemplazar 2 arcos.
Reemplazar 3 arcos.
Multiples posibilidades.
Reemplazar K arcos.
Lin-Kernighan usa
reemplazos de pares.
Lin-Kernigham-Helsgun usa
reemplazos de 5 arcos.
Heuristicas no proveen cotas
para el problema.

K
2
3
4
5
6
7
8
9
10

Casos
1
4
20
148
1368
15104
198144
2998656
51290496

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Obteniendo Cotas

Como obtener cotas o


garantias?.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Obteniendo Cotas

Como obtener cotas o


garantias?.
Asignar circulos disjuntos
a ciudades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Obteniendo Cotas

Como obtener cotas o


garantias?.
Asignar circulos disjuntos
a ciudades.
Asignar bandas sin
interseccin a
subconjuntos propios de
ciudades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Obteniendo Cotas

Como obtener cotas o


garantias?.
Asignar circulos disjuntos
a ciudades.
Asignar bandas sin
interseccin a
subconjuntos propios de
ciudades.
Dos veces la suma de los
radios y anchos de las
bandas da cota inferior.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Obteniendo Cotas

Como obtener cotas o


garantias?.
Asignar circulos disjuntos
a ciudades.
Asignar bandas sin
interseccin a
subconjuntos propios de
ciudades.
Dos veces la suma de los
radios y anchos de las
bandas da cota inferior.
Como encontramos radios
y bandas?.

15,112 ciudades en Alemania, cota a


0.74 % de la solucin ptima

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:
V Conjunto de ciudades a considerar.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:
V Conjunto de ciudades a considerar.
E Conecciones entre ciudades, i.e.
E = {(a, b) : a, b V , a 6= b}.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:
V Conjunto de ciudades a considerar.
E Conecciones entre ciudades, i.e.
E = {(a, b) : a, b V , a 6= b}.
c Costo de las connecciones entre ciudades.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:
V Conjunto de ciudades a considerar.
E Conecciones entre ciudades, i.e.
E = {(a, b) : a, b V , a 6= b}.
c Costo de las connecciones entre ciudades.
(S) Arcos cruzando la frontera de un conjunto, i.e.
(S) = {(a, b) E : a S, b V \ S}.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Formulacin del TSP como IP

Definiciones previas:
V Conjunto de ciudades a considerar.
E Conecciones entre ciudades, i.e.
E = {(a, b) : a, b V , a 6= b}.
c Costo de las connecciones entre ciudades.
(S) Arcos cruzando la frontera de un conjunto, i.e.
(S) = {(a, b) E : a S, b V \ S}.
Formulacion como IP:
X
mn
(ce xe : e E)
X
(xe : e ({v })) = 2 v V
X
s.t.
(xe : e (S)) 2 ( S ( V
xe {0, 1} e E

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.
No existen algoritmos eficientes para resolver.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.
No existen algoritmos eficientes para resolver.
Relajacin
P continua (SEP):
mn P (ce xe : e E)
s.t.
(xe : e ({v })) = 2
P
(xe : e (S)) 2
xe [0, 1]

v V
( S ( V
e E

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.
No existen algoritmos eficientes para resolver.
Relajacin
P continua (SEP):
mn P (ce xe : e E)
s.t.
(xe : e ({v })) = 2
P
(xe : e (S)) 2
xe [0, 1]

v V
( S ( V
e E

(rv )

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.
No existen algoritmos eficientes para resolver.
Relajacin
P continua (SEP):
mn P (ce xe : e E)
s.t.
(xe : e ({v })) = 2
P
(xe : e (S)) 2
xe [0, 1]

v V
( S ( V
e E

(rv )
(WS )

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Problemas de la formulacin discreta


Tanto o mas dificil que contar permutaciones.
Nmero de variables es |V |(|V | 1)/2.
No existen algoritmos eficientes para resolver.
Relajacin
P continua (SEP):
mn P (ce xe : e E)
s.t.
(xe : e ({v })) = 2
P
(xe : e (S)) 2
xe [0, 1]
Puede Resolverse eficientemente.

v V
( S ( V
e E

(rv )
(WS )

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Cotas obtenidas del SEP


0.69 % gap para chile5445

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Relajacin continua

Cotas obtenidas del SEP


0.69 % gap para chile5445

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.
2

Obtener solucin ptima x .

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.
2

Obtener solucin ptima x .

x entera?, terminar.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.
2

Obtener solucin ptima x .

x entera?, terminar.

Buscar restriccin vlida para


puntos enteros.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.
2

Obtener solucin ptima x .

x entera?, terminar.

Buscar restriccin vlida para


puntos enteros.

Agregar a la formulacin
continua.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Algoritmo de hiperplanos cortantes

IP atravez de LP
Propuesto por Dantzig, Fulkerson y
Johnson (1954) para al TSP.
1 Considerar relajacin continua.
2

Obtener solucin ptima x .

x entera?, terminar.

Buscar restriccin vlida para


puntos enteros.

Agregar a la formulacin
continua.

Volvar a 2.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)
Binested (Nadeff 1992)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)
Binested (Nadeff 1992)
Double Deckers (Applegate et. all 1994)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)
Binested (Nadeff 1992)
Double Deckers (Applegate et. all 1994)
Domino Parity (Letchford 2000)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour
Blossom (Edmonds 1965)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)
Binested (Nadeff 1992)
Double Deckers (Applegate et. all 1994)
Domino Parity (Letchford 2000)
K-Parity (Espinoza y Goycoolea 2004)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

(Algunos) Cortes Estructurales


Subtour (separable)
Blossom (Edmonds 1965)(separable)
Combs (Chvtal 1973, Grtschel y Padberg 1979)
Clique-Tree (Grtschel y Pulleyblank 1986)
Star, Path (Fleischmann 1988, Cornujols et al. 1985)
Bipartition (Boyd y Cunningham 1991)
Binested (Nadeff 1992)
Double Deckers (Applegate et. all 1994)
Domino Parity (Letchford 2000)(planar)
K-Parity (Espinoza y Goycoolea 2004)(planar)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes estructurados y relaciones


Super K-Parity?
K-Parity

Double Deckers

Domino Parity

Blossom
Binested

Sub-Tour
Combs

Clique Tree

Stars Path

Bipartition

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.
Cortes de Gomory (1958) dentro de esta clase.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.
Cortes de Gomory (1958) dentro de esta clase.
Considerar solo una restriccin (basica) con variable entera
fraccionaria.

4
3
2
1
0

x2 Z, x1 R+
P = {(x1 , x2 ) : x1 + x2 4,5}.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.
Cortes de Gomory (1958) dentro de esta clase.
Considerar solo una restriccin (basica) con variable entera
fraccionaria.

4
3
2
1
0

x2 Z, x1 R+
P = {(x1 , x2 ) : x1 + x2 4,5}.
x1 + x2 4,5, x1 0 x2 4,5

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.
Cortes de Gomory (1958) dentro de esta clase.
Considerar solo una restriccin (basica) con variable entera
fraccionaria.
Redondeo de la restriccin entrega corte automticamente.

4
3
2
1
0

x2 Z, x1 R+
P = {(x1 , x2 ) : x1 + x2 4,5}.
x1 + x2 4,5, x1 0 x2 4,5
x2 4.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP

Idea: generar cortes automticamente.


Base: usar una versin simplificada del problema.
Cortes de Gomory (1958) dentro de esta clase.
Considerar solo una restriccin (basica) con variable entera
fraccionaria.
Redondeo de la restriccin entrega corte automticamente.
En teoria resuelve cualquier IP.

4
3
2
1
0

x2 Z, x1 R+
P = {(x1 , x2 ) : x1 + x2 4,5}.
x1 + x2 4,5, x1 0 x2 4,5
x2 4.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un TSP
pequeo (16-48 nodos).

xe = 0,5

2
1

xe = 1,0

3
7
4
6
5

xe = 1,5

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un TSP
pequeo (16-48 nodos).

xe = 0,5

2
1

xe = 1,0

3
7
4
6
5

xe = 1,5

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
1

Local Cuts en el TSP:


Reducir a un GTSP
pequeo (16-48 nodos).

xe = 0,5

xe = 1,0

xe = 1,5

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

Dado x solucin fraccionaria, y P


polihedro:

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

Dado x solucin fraccionaria, y P


polihedro:
x P ?

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

Dado x solucin fraccionaria, y P


polihedro:
Sea {vk : k = 1, . . . , K } puntos extremos de P.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

Dado x solucin fraccionaria, y P


polihedro:
Sea {vk : k = 1, . . . , K } puntos extremos de P.
min
s.t.

0 P

k =1,...,K
P

k vk

[0, 1]

k =1,...,K

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.

Dado x solucin fraccionaria, y P


polihedro:
Sea {vk : k = 1, . . . , K } puntos extremos de P.
min
s.t.

0 P

k =1,...,K
P

k vk

[0, 1]

k =1,...,K

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.
Extensin a MIP.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.
Extensin a MIP.

Formulacin de MIP:
min
s.t.

cx
Ax
Rx

b
Zk

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.
Extensin a MIP.

Formulacin de MIP:
min
s.t.

cx
Ax
Rx

b
Zk

Relajacin:
min
s.t.

cx
Ax
QRx

b
Z3

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.
Si punto es separable,
agregar corte
expandido.
Problemas numricos.
Extensin a MIP.

Formulacin de MIP:
min
s.t.

cx
Ax
Rx

b
Zk

Relajacin:
min
s.t.

cx
Ax
QRx

b
Z3

Usar separacin como antes

Cortes no estructurados
Local Cuts en el TSP:
Reducir a un GTSP
pequeo (16-48 nodos).
Separar punto
fraccionario.

Si punto es separable,
agregar corte
expandido.

Problemas numricos.

Extensin a MIP.

Cuando todo falla, que


podemos hacer?.

C
C
al
u
al
C
u
to
a
C an
u
to
C an
a la..
d
u
a la..
C a
f lla
u
C an do tod
fa lla.. . C
C an do tod o fa lla. . C ua ndo to do f alla ...
u
ua d
.
d
o
C an do tod o fa lla. . C ua
o tod
fa lla.. . C ua ndo tod o f alla ...
u
.
o
t
d
l
.
ua nd
o
o
l
to
u n
a
l
a
..
.
C a
o
f
u n
C an do
nd o t do fal la...
C an do tod o fa lla. . C ua ndo to do f alla ...
u
la
u
.
o od
f
C an do
C an do tod o fa lla. . C ua ndo to do f alla ...
to o alla ...
ua d
ua d
..
do a
to o
n
l
.
f
C
o
d
l
u
.
a
a
.
t
n
C
d
o
l
f
.
d
to o
C an o od
fa la.. . C ua do to
f lla . C ua ndo tod o f alla ...
u
to do alla ...
a
..
C a do to o f lla . C ua ndo to do
u n
do fa
..
C a do tod o f lla . C ua ndo to do f alla ...
ua nd
to do
do a
nd
.
fa lla.. . C ua ndo tod o f alla ...
C
o
u
.
d
t
a
l
..
.
C a
o o
f lla . C ua ndo tod o f
u n
al la...
C an do tod o fa lla. . C ua ndo to do f alla ...
a
u n
u
.
C an do tod o fa lla.
al la...
C an do tod o fa lla. . C ua ndo to do f alla ...
u
.
la
u
.
C an do tod o fa lla. .
...
C an do tod o fa lla. . C ua ndo to do f alla ...
u
.
ua d
.
d
o
t
n
a
l
.
.
C a do to o f lla .
o
l
u
.
C
o
do fa a..
C an do tod o fa lla. . C ua ndo to do f alla ...
ua nd
t
l
.
o
l
ua d
do a
to o
C
o
lla ..
...
C
do fa a..
ua nd
t
C
o
l
f
ua nd
o
d
l
t
u
n
a
l
a
.
.
C
o
o
f
u
.
C
o
fa la..
C an
d
C a do to o f lla . C ua ndo to do f alla ...
u n
u
d
C an do tod o fa lla. . C ua ndo to do f alla ...
a
..
C a do
u n
ua d
..
d
to o
a
l
..
C a do to o f lla . C ua ndo
u n
nd o t do fal la...
C an do tod o fa lla. . C ua ndo to do f alla ...
u n
la
u
.
o od
f
C an do
C an do tod o fa lla. . C ua ndo to do f alla ...
to o alla ...
u
u
.
f
C an do
C an do tod o fa lla. . C ua ndo to do f alla ...
to do alla ...
u
u
.
C an do tod
do fa
..
C a do tod o f lla . C ua ndo to do f alla ...
u
d
a
..
fa lla.. . C ua ndo tod o f alla ...
C a do to o
u n
C an do tod o fa lla. . C ua ndo to do f
fa lla.. . C ua ndo tod o f alla ...
u
.
o
t
n
d
l
.
o
ua d
l
.
to do
C an o
ua nd
do fa la..
to o alla ...
C
o
fa
u
al la...
d
t
n
C
d
o
l
.
f
d
la
u
a
..
C a
o o
la
f
u n
C an do tod o fa lla.
...
C an do tod o fa lla. . C ua ndo to do alla ...
ua d
o
lla ..
ua d
do
o
nd
lla ..
...
o tod
u
n
o
...
an o
nd
o
...
do
do
o

Cortes para el TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)
Crear sub-problemas mas
fciles.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)
Crear sub-problemas mas
fciles.
Fijar cotas para una variable.

P2

P1

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)
Crear sub-problemas mas
fciles.
Fijar cotas para una variable.
Resolver cada sub-problema.

P2

P1

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)
Crear sub-problemas mas
fciles.
Fijar cotas para una variable.
Resolver cada sub-problema.
Escoger mayor impacto.

P2

P1

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Cortes para el TSP

Entre enumeracin y Programacin Lineal


Strong Branching (Dividir para reinar)
Crear sub-problemas mas
fciles.
Fijar cotas para una variable.
Resolver cada sub-problema.
Escoger mayor impacto.
Usar junto con planos cortantes.

P2

P1

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour

Valor
39755.198

Tiempo
134

GAP ( %)
0.639

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos

Valor
39755.198
39846.738

Tiempo
134
25518

GAP ( %)
0.639
0.470

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)

Valor
39755.198
39846.738
39994.941

Tiempo
134
25518
14509

GAP ( %)
0.639
0.470
0.040

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity

Valor
39755.198
39846.738
39994.941
40001.294

Tiempo
134
25518
14509
10863

GAP ( %)
0.639
0.470
0.040
0.024

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24

Valor
39755.198
39846.738
39994.941
40001.294
40002.578

Tiempo
134
25518
14509
10863
14160

GAP ( %)
0.639
0.470
0.040
0.024
0.021

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24
DP + LC 32

Valor
39755.198
39846.738
39994.941
40001.294
40002.578
40003.294

Tiempo
134
25518
14509
10863
14160
21159

GAP ( %)
0.639
0.470
0.040
0.024
0.021
0.019

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24
DP + LC 32
DP + LC 40

Valor
39755.198
39846.738
39994.941
40001.294
40002.578
40003.294
40004.291

Tiempo
134
25518
14509
10863
14160
21159
60269

GAP ( %)
0.639
0.470
0.040
0.024
0.021
0.019
0.017

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24
DP + LC 32
DP + LC 40
DP + LC + Branching

Valor
39755.198
39846.738
39994.941
40001.294
40002.578
40003.294
40004.291
40008.475

Tiempo
134
25518
14509
10863
14160
21159
60269
+3 dias

GAP ( %)
0.639
0.470
0.040
0.024
0.021
0.019
0.017
0.007

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24
DP + LC 32
DP + LC 40
DP + LC + Branching
LKH

Valor
39755.198
39846.738
39994.941
40001.294
40002.578
40003.294
40004.291
40008.475
40031.459

Tiempo
134
25518
14509
10863
14160
21159
60269
+3 dias
46

GAP ( %)
0.639
0.470
0.040
0.024
0.021
0.019
0.017
0.007
-0.051

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (chile5445)


Mejor solucin: 40011.091Km
Conf.
Subtour
Cortes Heuristicos
Local Cuts (24)
Domino Parity
DP + LC 24
DP + LC 32
DP + LC 40
DP + LC + Branching
LKH
Primera Solucin

Valor
39755.198
39846.738
39994.941
40001.294
40002.578
40003.294
40004.291
40008.475
40031.459
44594.459

Tiempo
134
25518
14509
10863
14160
21159
60269
+3 dias
46
3

GAP ( %)
0.639
0.470
0.040
0.024
0.021
0.019
0.017
0.007
-0.051
-11.455

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

%
100
90
80
70
60
50
40
30
20
10
0

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

%
100
90
80
70
60
50
40
30
20
10
0

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

%
100
90
80
70
60
50
40
30
20
10
0

LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

%
100
90
80
70
60
50
40
30
20
10
0

DP
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

DP + LC 24

96.673

%
100
90
80
70
60
50
40
30
20
10
0

DP+LC24
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

DP + LC 24

96.673

DP + LC 32

96.953

%
100
90
80
70
60
50
40
30
20
10
0

DP+LC32
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

DP + LC 24

96.673

DP + LC 32

96.953

DP + LC 40

97.343

%
100
90
80
70
60
50
40
30
20
10
0

DP+LC40
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

DP + LC 24

96.673

DP + LC 32

96.953

DP + LC 40

97.343

DP + LC + Branching

98.978

%
100
90
80
70
60
50
40
30
20
10
0

BR
DP+LC40
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Resolviendo TSP
Resultados Numricos

Resultados Numricos (Sobre Sub-Tour)


Configuracin

GAP
( %)
Relativo

Cortes Heursticos

35.773

Local Cuts (24)

93.689

Domino Parity

96.171

DP + LC 24

96.673

DP + LC 32

96.953

DP + LC 40

97.343

DP + LC + Branching

98.978

LKH

107.960

%
100
90
80
70
60
50
40
30
20
10
0

LKH
BR
DP+LC40
LC24

CH

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP

Contenidos
1

Introduccin

Resolviendo TSP

Programacin Entera y el TSP


Algunos Comentarios Finales

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.
Optimalidad.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.
Optimalidad.

Muchas tcnicas generales han nacido del TSP.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.
Optimalidad.

Muchas tcnicas generales han nacido del TSP.


Importancia de generacin de cortes.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.
Optimalidad.

Muchas tcnicas generales han nacido del TSP.


Importancia de generacin de cortes.
Problemas numricos.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Conclusiones
TSP ofrece un punto de referencia dentro de IP.
Estrategia depende del objetivo:
Solucin factible.
Buena solucin.
Optimalidad.

Muchas tcnicas generales han nacido del TSP.


Importancia de generacin de cortes.
Problemas numricos.
Posibilidad de extender Local Cuts para MIP.

EL Problema del Vendedor Viajero (TSP) y Programacin Entera (IP)


Programacin Entera y el TSP
Algunos Comentarios Finales

Gracias
Preguntas?

S-ar putea să vă placă și