Está en la página 1de 4

Anexo 1

83

ANEXO 1
EJEMPLO DEL ALGORITMO DE DIJKSTRA UTILIZANDO LINGO

La utilizacin del software existe es una herramienta muy til en la solucin de


problemas, por esta razn en este anexo se muestra el ejemplo del algoritmo
de Dijkstra del captulo 3, con la utilizacin de LINGO y con las modificaciones
especficas para obtener la ruta ms corta desde el nodo 1 (nodo fuente) a los
nodos 7 y 8 cuando son considerados como nodos destino.

2
2

4
5

5
3

7
2

Figura A.1.1. Ejemplo del algoritmo de Dijkstra (captulo 3)

Del nodo 1 al nodo 7:


min
=
2*x12+x13+x24+4*x32+3*x35+5*x43+2*x45+3*x46+2*x57+4*x62+4*x67+
5*x68+5*x74+6*x78;
x12+x13=1;
x12+x32+x62-x24=0;
x13+x43-x32-x35=0;
x24+x74-x43-x45-x46=0;

Anexo 1

84

x35+x45-x57=0;
x46-x62-x67-x68=0;
x57+x67-x74-x78=1;
x68+x78=0;
@bin(x12);
@bin(x13);
@bin(x24);
@bin(x32);
@bin(x35);
@bin(x43);
@bin(x45);
@bin(x46);
@bin(x57);
@bin(x62);
@bin(x67);
@bin(x68);
@bin(x74);
@bin(x78);
Global optimal solution found at step:
13
Objective value:
6.000000
Variable
x12
x13
x24
x32
x35
x43
x45
x46
x57
x62
x67
x68
x74
x78

Value
0.0000000
1.000000
0.0000000
0.0000000
1.000000
0.0000000
0.0000000
0.0000000
1.000000
0.0000000
0.0000000
0.0000000
0.0000000
0.0000000

Anexo 1

85

2
1

4
5

1
3

Figura A.1.2. Ejemplo del algoritmo de Dijkstra


(nodo fuente 1, nodo destino 7)

Del nodo 1 al nodo 8:


min
=
2*x12+x13+x24+4*x32+3*x35+5*x43+2*x45+3*x46+2*x57+4*x62+4*x67+
5*x68+5*x74+6*x78;
x12+x13=1;
x12+x32+x62-x24=0;
x13+x43-x32-x35=0;
x24+x74-x43-x45-x46=0;
x35+x45-x57=0;
x46-x62-x67-x68=0;
x57+x67-x74-x78=0;
x68+x78=1;
@bin(x12);
@bin(x13);
@bin(x24);
@bin(x32);
@bin(x35);
@bin(x43);
@bin(x45);
@bin(x46);
@bin(x57);
@bin(x62);
@bin(x67);
@bin(x68);
@bin(x74);
@bin(x78);

Anexo 1

86

Global optimal solution found at step:


10
Objective value:
11.00000
Branch count:
0
Variable
x12
x13
x24
x32
x35
x43
x45
x46
x57
x62
x67
x68
x74
x78

Value
1.000000
0.0000000
1.000000
0.0000000
0.0000000
0.0000000
0.0000000
1.000000
0.0000000
0.0000000
0.0000000
1.000000
0.0000000
0.0000000

1
4

5
4

4
5

3
3

7
2

Figura A.1.3. Ejemplo del algoritmo de Dijkstra (captulo 3)

Como puede observarse la funcin objetivo no cambia, es en las restricciones


donde se debe revisar cules son los nodos fuente y destino para el envo y
colocacin de una unidad de flujo, de igual forma en las dems restricciones la
conservacin de flujo.

También podría gustarte