You are on page 1of 40

PROGRAMACIN LINEAL

PROGRAMACIN LINEAL
Dr. Jos Emilio Martnez Varilla
jemvarilla@gmail.com

PROGRAMACIN LINEAL

TEMA 2.0
2.5. ALGORITMO DEL TRANSPORTE:
MTODO DE LA ESQUINA NOROESTE;
MATRIZ DEGENERADA;
MTODO DE VOGEL;
MTODOS DE OPTIMIZACIN.

Tema 2.5 - 2 de 40

PROGRAMACIN LINEAL

MODELOS EN REDES
Una red consiste en una serie de nodos conectados por arcos que tambin
se denominan conexiones o lneas.
Existen redes fsicas (carreteras, comunicaciones, oleoductos, etc.) y
sistemas que pueden representarse como redes:
Los nodos representan estados de un sistema, finalizacin de una
operacin, un perodo de tiempo,
Los arcos representan rdenes de precedencia entre operaciones,
Grficamente, las redes se representan:
Nodos mediante crculos.
Arcos mediante lneas.
Direccin del arco mediante puntas de flecha.

Tema 2.5 - 3 de 40

PROGRAMACIN LINEAL

EJEMPLO DE RED

Tema 2.5 - 4 de 40

PROGRAMACIN LINEAL

RED GENERALIZADA
Existe una red generalizada cuando:
En cada columna existen nicamente dos coeficientes mas el
correspondiente a la funcin objetivo.
A estos coeficientes se les suele llamar ganancia o perdida, ya que
representan la ganancia o perdida que experimenta el flujo al pasar por
el correspondiente arco.
Todas las restricciones son de tipo igualdad, representando la condicin
de equilibrio del flujo en cada nodo: el flujo que llega al nodo final es igual
al que sale mas las ganancias menos las perdidas.
Las variables del problema pueden tener limitaciones de flujo mnimo y
mximo.
Tema 2.5 - 5 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSPORTE
Consiste en enviar una cierta cantidad de mercancas desde unos almacenes
(orgenes), en los que se dispone de cantidades limitadas, a unos puntos
finales (destinos) en donde es preciso servir una cierta demanda.
La formulacin terica del problema es:

Min (z) c ij x ij
i 1 j1

sujeto a :
n

i x ij O i
j1
m

j x ij D j
i 1

x ij 0
Tema 2.5 - 6 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSPORTE: EJEMPLO 1.


Costes y disponibilidades
Orgenes

Demanda

Destinos

Oferta

132

---

97

103

135

85

91

---

---

56

106

89

100

98

93

62

83

39

91

---

Tema 2.5 - 7 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSPORTE: EJEMPLO 1.


Grafo del problema
Orgenes (i)
Destinos (j)
4 62
135

1
5 83

56

2
6 39

93

3
7 91

Orgenes
1
2
3
Demanda

4
132
85
106
62

Costes y disponibilidades
Destinos
5
6
x
97
91
x
89
100
83
39

7
103
x
98
91

Oferta
135
56
93
Tema 2.5 - 8 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSPORTE: EJEMPLO 1.


El planteamiento quedara:
Definicin de variables: xij - Cantidad de producto que se transporta desde el
origen i, (i = 1,2,3), hasta el destino j, ( j = 4,5,6,7)
Funcin Objetivo:

Min (z) = 132 x14 + 97 x16 + 103 x17 + 85 x 24 + 91 x 25 +


+106 x 34 + 89 x 35 + 100 x 36 + 98 x 37

Tema 2.5 - 9 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSPORTE: EJEMPLO 1.


Sujeto a:
Restricciones de oferta:

x14 + x16 + x17 135


x 24 + x25 56
x34 + x35 + x36 + x37 93

Restricciones de demanda: x14 + x 24 + x 34 = 62

x 25 + x 35 = 83
x16 + x 36 = 39
x17 + x 37 = 91
No negatividad: xij 0
Tema 2.5 - 10 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACIN
Consiste en asignar un conjunto de recursos (personas o mquinas) a una
serie de trabajos, de forma que se minimice el tiempo o coste empleado en
llevar a cabo las tareas.
El planteamiento general es el siguiente:
m

Min (z) c ij x ij
i1 j 1

Sujeto a: Cada trabajo slo puede efectuarse una vez:

j xij 1
i1

Cada persona o mquina puede efectuar un solo trabajo: i x ij 1


j1

Las variables slo pueden tomar valores cero o uno.

Tema 2.5 - 11 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACIN: EJEMPLO 2


Puntuaciones de cada vendedor a cada rea
rea
Vendedor

A
B
C
D

3
2
3
1

7
6
5
4

4
5
5
6

1
2
2
4

Puntos totales
15
15
15
15

El planteamiento quedara:
Definicin de variables: xij Variable binaria que tomar el valor 1 cuando se
asigne el vendedor i, (i =A,B,C,D), al rea de venta j, (j = 1,2,3,4); o el valor 0
en caso contrario.
Tema 2.5 - 12 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACIN: EJEMPLO 2


Funcin objetivo:

Max (z) = 3x A1 + 7x A2 + 4x A3 + 1x A4 + 2xB1 + 6x B2


+ 5xB3 + 2xB4 + 3xC1 + 5xC2 + 5xC3 + 2xC4
+ 1xD1 + 4xD2 + 6xD3 + 4xD4

Tema 2.5 - 13 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACIN: EJEMPLO 2


Sujeto a:
Cada vendedor slo puede estar asignado a un rea:

x A1 + x A2 + x A3 + x A4 =1
xB1 + xB2 + xB3 + xB4 =1
x C1 + x C2 + x C3 + x C4 =1
xD1 + xD2 + xD3 + xD4 =1
Tema 2.5 - 14 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACIN: EJEMPLO 2


Cada rea solo puede tener asignado un vendedor:

x A1 + xB1 + x C1 + x D1 =1
x A2 + xB2 + x C2 + xD2 =1
x A3 + xB3 + x C3 + xD3 = 1
x A4 + xB4 + x C4 + xD4 =1
No negatividad: xij 0
En este problema en concreto, aunque las variables, en teora, podran tomar valores
diferentes de uno, en el ptimo siempre sern cero o uno.

Tema 2.5 - 15 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSBORDO
Se reconoce mediante el uso de nodos intermedios o transitorios para el envo
de recursos entre las distintas fuentes (oferta) y destinos (demanda)
Se construye una malla con orientacin desde las fuentes (nodos de inicio)
hacia los destinos (nodos de llegada), utilizando amortiguadores (nodos
transitorios) que permiten recibir y transferir recursos. Las flechas que unen
los nodos de la malla representan los eventuales flujos de recursos en la
secuencia de distribucin

Tema 2.5 - 16 de 40

PROGRAMACIN LINEAL

MODELO DE TRANSBORDO
Luego, la malla permite convertir un modelo de transbordo en un modelo de
transporte regular y resolverse como tal, utilizando los amortiguadores
As, la malla reconoce tres tipos de nodos:
Nodos puros de Oferta: solo transfieren recursos
Nodos de Transbordo: entregan y reciben recursos
Nodos puros de Demanda: solo reciben recursos
El amortiguador debe ser suficientemente grande para permitir que los
recursos se transfieran desde las fuentes hacia los destinos

Tema 2.5 - 17 de 40

PROGRAMACIN LINEAL

ESQUEMA DE TRANSBORDO
Un esquema simple del modelo de transbordo se expresa como una red
de modelo de asignacin:
F1
A1

D1

A2

D2

F2

F3

Nodos puros de
Oferta

Nodos de
Transbordo

Nodos puros de
Demanda
Tema 2.5 - 18 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
Dos fbricas de automviles, P1 y P2, estn conectadas a tres distribuidores,
D1, D2 y D3, por medio de dos centros de trnsito, T1 y T2, de acuerdo con la
red que se muestra en la siguiente diapositiva
Las cantidades de la oferta en las fbricas P1 y P2, son de 1000 y 1200
automviles, y las cantidades de la demanda en las distribuidoras D1, D2 y D3,
son de 800, 900 y 500 automviles. El costo de envo por automvil (en
cientos de pesos) entre los pares de nodos, se muestra en los eslabones
(arcos) de conexin de la red

Tema 2.5 - 19 de 40

PROGRAMACIN LINEAL

RED - MODELO DE ASIGNACION


8
1000

3
P1
4

T1

D1

800

5
6

D2

900

5
1200

P2

T2

3
9

D3

500

Tema 2.5 - 20 de 40

PROGRAMACIN LINEAL

PROBLEMA PROGRAMACION LINEAL


Cada vez que se plantea un problema de programacin lineal, se procede
cumpliendo las siguientes etapas:

1.- Comprensin del problema (lectura en detalle)


2.- Definicin de las variables de decisin
3.- Descripcin de la funcin objetivo
4.- Identificacin de las restricciones del problema

Tema 2.5 - 21 de 40

PROGRAMACIN LINEAL

PROBLEMA PROGRAMACION LINEAL


Se plantea identificando como variables de decisin a todas las posibilidades
de flujos de asignacin, a transferir entre los nodos de la red de transbordo
Se define como funcin objetivo la minimizacin de los costos de
asociados al transbordo

transporte

Las restricciones corresponden a un balance de transferencia de unidades


para cada nodo de la red de asignacin, sin olvidar la condicin de no
negatividad

Tema 2.5 - 22 de 40

PROGRAMACIN LINEAL

PROBLEMA PROGRAMACION LINEAL


Red para plantear el PPL:
D1

P1

XP1T1

T1

XD1D2

1000

D2

P2

XP2T2
T2

900

XD2D3

1200

800

D3

500
Tema 2.5 - 23 de 40

PROGRAMACIN LINEAL

PROBLEMA PROGRAMACION LINEAL


F.O. Mn Z = 3XP1T1 + 4XP1T2 + 2XP2T1 + 5XP2T2 + 8XT1D1 + 6XT1D2 +

4XT2D2 + 9XT2D3 + 5XD1D2 + 3XD2D3

1000 = XP1T1 + XP1T2


1200 = XP2T1 + XP2T2
XP1T1 + XP2T1 = XT1D1 + XT1D2
XP1T2 + XP2T2 = XT2D2 + XT2D3
XT1D1 = XD1D2 + 800
XT1D2 + XT2D2 + XD1D2 = XD2D3 + 900
XT2D3 + XD2D3 = 500
Xij 0

s.a. :

Tema 2.5 - 24 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
El transbordo ocurre ya que la cantidad de la oferta de 2200 (1000 + 1200)
automviles en los nodos P1 y P2, requiere pasar a travs de los nodos de
transbordo de la red (T1 y T2) ,antes de llegar a sus puntos de destino en los
nodos D1, D2 y D3
Nodos puros de Oferta
Nodos de Transbordo
Nodos puros de Demanda

P1, P2
T1, T2, D1, D2
D3

El modelo de transbordo se convierte a un modelo de transporte con seis


puntos de origen (P1, P2, T1, T2, D1 y D2) y cinco de destino (T1, T2, D1, D2 y
D3)
Tema 2.5 - 25 de 40

PROGRAMACIN LINEAL

NODOS PUROS DE OFERTA


Y NODOS PUROS DE DEMANDA
Las cantidades de la oferta y la demanda en los nodos puros de oferta y puros
de demanda, queda:
Oferta en un Nodo puro de
Oferta

Oferta Original

Un nodo puro de oferta no posee amortiguador


Demanda en un Nodo puro de
Demanda

Demanda Original

Un nodo puro de demanda no posee amortiguador


Tema 2.5 - 26 de 40

PROGRAMACIN LINEAL

NODOS DE TRANSBORDO
Las cantidades de la oferta y la demanda en los nodos de transbordo, se
establece de acuerdo a:
Oferta en un Nodo de
Transbordo

Oferta
Original + Amortiguador

La oferta necesariamente posee un amortiguador, mientras que a veces se


encuentra oferta original

Demanda en un Nodo de
Transbordo

Demanda
Amortiguador
Original +

La demanda necesariamente posee amortiguador, mientras que en


ocasiones hay demanda original
Tema 2.5 - 27 de 40

PROGRAMACIN LINEAL

NODOS DE TRANSBORDO
La oferta del nodo de transbordo T1 s posee oferta original, mientras que la
oferta del nodo de transbordo T2 no posee oferta original
200
D1
500

P1

400

T1
D2

400

D3

200

300
P2

T2

Tema 2.5 - 28 de 40

PROGRAMACIN LINEAL

NODOS DE TRANSBORDO
La demanda del nodo de transbordo T1 no posee demanda original, mientras
que la demanda del nodo de transbordo T2 s posee demanda original
D1
400

P1

300

T1
D2

200

D3

300

600

P2

T2

200
Tema 2.5 - 29 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO: Se obtiene la 1 solucin mediante mtodo de Vogel


T1
3

P1
P2
T1
T2
D1
D2

Demanda

T2

D1

D2

D3

Oferta

M
1000

M
1200

M
B1

9
B2

M
B3

3
B4

B1

B2

800+B3 900+B4

500
Tema 2.5 - 30 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACION PROBLEMA DE TRANSBORDO


D1

P1

XP1T1

T1

XD1D2

1000

D2
P2

XP2T2
T2

900

XD2D3

1200

800

D3

500
Tema 2.5 - 31 de 40

PROGRAMACIN LINEAL

MODELO DE ASIGNACION PROBLEMA DE TRANSPORTE


1000

1200

P1

T1

P2
T2
T1
D1
T2
D2
D1
D3
D2

800
900

500

Tema 2.5 - 32 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
Obtener la primera solucin factible mediante Vogel, implica asignar el
mximo nmero de unidades posible en las celdas de menor costo marginal,
segn los sucesivos gradientes
No obstante, en ocasiones, la celda de menor costo marginal puede asociarse
con un mximo nmero de unidades determinado por los amortiguadores.
Luego, se requiere definir los rangos posibles para cada amortiguador
800 < B1 < 2200
0 < B2 < 1400

0 < B3 < 1400


0 < B4 < 500

Tema 2.5 - 33 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
T1
P1
P2

T1
T2
D1
D2
Demanda

3
2

T2
4
1000

D2
M

D3

9
1400

B1

B2

800+B3 900+B4
M

1000

1200

33

800
M

Oferta

400

800
M

D1

500
500

M
M

B1

B2

5 MM

B3

B4

MM

*
*

6
Tema 2.5 - 34 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
Al calcular los gradientes del mtodo de Vogel, se van obteniendo los valores
de los amortiguadores
B1 = 800
B2 = 1400
Valores de los amortiguadores:
B3 =
0
B4 = 500

Si es que hay 2 o ms gradientes de igual valor (como sucede con los


gradientes + M ), entonces se asigna el mximo nmero de unidades posibles
en aquella celda de menor costo unitario de transporte
Tema 2.5 - 35 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
1 asignacin: XD2D3 = 500, gradiente fila D2 = M
2 asignacin: XT1D2 = 1400, gradiente fila T2 = M
3 asignacin: XT1D1 = 800, gradiente fila T1 = M
4 asignacin: XP2T1 = 800, gradiente fila P2 = 3
5 asignacin: XP1T2 = 1000
6 asignacin: XP2T2 = 400

Asignacin
manual

As, Vogel determina la 1 solucin bsica factible, sin embargo falta verificar
la condicin de optimalidad e iterar va simplex si es que se requiere

Tema 2.5 - 36 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
m + n - 1 = 10

Sin embargo, la asignacin inicial mediante mtodo de


Vogel tiene solamente 6 variables bsicas

Deben ingresarse cuatro valores 0 a la base


XT1T2 = 0, XT2T2 = 0, XD1T2 = 0, XD2T2 = 0
Luego, se deben calcular los precios sombra
para verificar si la solucin bsica factible es o
no es ptima
Tema 2.5 - 37 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO: Se deben calcular todos los precios sombra


T1
P1

P2
T1

T2
D1
D2
Demanda

3
2

T2
4
1000

800
M

D1

M
1200

B1

800
M

B2

1400
M

B3

0
M

M
B1

0
B2

Oferta

400

D3

1000

D2

500

800+B3 900+B4

B4

500
Tema 2.5 - 38 de 40

PROGRAMACIN LINEAL

M
M

E
B1

ij > 0

B2

6
800

+M

XJ

Oferta

+M

1000

+M

1200

1400

800+B3 900+B4
i,j

+M

Ya que

400

+M

Demanda

+M

D3

3
500

B1
B2

D2

5
800

D1

T2

4
1000

D2

T1

P2

+2

D1

P1

T2

T1

B3

B4

500

Solucin ptima
Tema 2.5 - 39 de 40

PROGRAMACIN LINEAL

EJEMPLO DE TRANSBORDO
Solucin ptima del ejemplo de transbordo:
XJ = ( XP1T2, XP2T1, XP2T2, XT1T2, XT1D1,
XT2T2, XT2D2, XD1T2, XD2T2, XD2D3 )
XP1T2

= 1000

XT2T2

XP2T1

= 800

XT2D2

= 1400

XP2T2

= 400

XD1T2

XT1T2

XD2T2

XT1D1

= 800

XD2D3

= 500

La solucin no es
nica, pues es una
solucin
degenerada

Z = (1000*4) + (800*2) + (400*5) + (800*8) +


(1400*4) + (500*3) = 21.100 ($100)
Tema 2.5 - 40 de 40