Académique Documents
Professionnel Documents
Culture Documents
2007-07
Lnea de Investigacin:
Fuentes Alternas de Energa
Y
Generacin Distribuida
19-Feb-2007
Optimizacin y la programacin lineal: Una introduccin 2
Generalidades
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
El presente reporte de investigacin presenta los fundamentos tericos relacionados con el problema
optimizacin desde un punto de vista prctico, donde se indica la formulacin del problema matemtico y
se muestra en forma general las tcnicas de resolucin: aplicacin de mtodos de programacin lineal,
programacin no lineal, programacin cuadrtica y la programacin entera-mixta se aprecia su solucin.
El inters de este reporte es contribuir en el conocimiento, presentando un compendio bsico terico del
problema de optimizacin, pero adems debido a un inters particular de investigacin, se focalizar la
orientacin hacia la tcnica de optimizacin por programacin lineal, a travs de la maximizacin de una
funcin objetivo, la cual est sujeta a restricciones lineales y aproximadamente lineales por lo que se
ahondara en tal tema en especfico.
Optimizacin
El objetivo de la optimizacin global es encontrar la mejor solucin de modelos de decisiones difciles
frente a las mltiples soluciones locales [7].
Las tcnicas de optimizacin son empleadas para encontrar un juego de parmetros de diseo x = [x1, x2,,
xn], que puede de algn modo ser definido como ptimo. En un caso simple esto podra ser la minimizacin
o la maximizacin de alguna caracterstica de sistema que es dependiente de x. En una formulacin ms
avanzada la funcin objetivo, f(x) es minimizada o maximizada, estando sujeta a restricciones de igualdad
Gi(x) = 0 (i = 1,, me); restricciones de desigualdad Gi(x) 0 (i = me + 1,., me); y/o lmites de parmetro
Xl, Xu [4].
Min[ f (x )] (1)
x
Respecto a:
Gi (x ) = 0, i = 1,..., me
(2)
Gi (x ) 0, i = me + 1,..., m
Donde x es el vector de parmetros de diseo de n longitud, la f(x) es la funcin objetivo, que devuelve un
valor escalar, y la funcin de vector G(x) devuelve un vector de longitud m que contiene los valores de
igualdad y restricciones de desigualdad evaluadas en x.
Una solucin eficiente y exacta con este problema depende no slo del tamao del problema en trminos
del nmero de restricciones y variables de diseo sino tambin de las caractersticas de la funcin objetivo
y sus restricciones. Cuando la funcin objetivo y las restricciones son funciones lineales de la variable de
diseo, el problema se conoce como Programacin Lineal (PL). [4]
Existen diversas tcnicas de optimizacin entre las cuales contiene mencionar las sumariadas en la Tabla 1
[10].
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Tabla 1. Clasificacin General de las Tcnicas de Optimizacin
Tcnicas de
Tcnicas de procesos
Programacin Mtodos Estadsticos
Estocsticos
Matemtica
Mtodos de calculo Teora de decisin Anlisis de regresin
Clculos de variaciones estadstica Cluster anlisis, pattern
Programacin no lineal Procesos de Markov recognition
Programacin geomtrica Queueling theory Experimentos de diseo
Programacin cuadrtica Teora renovable Anlisis Discriminante
Programacin lineal Mtodos de simulacin
Programacin dinmica Teora de fiabilidad
Programacin de variables
enteras.
Programacin estocstica
Programacin Separable
Programacin de
funciones multiobjetivo
Mtodos de redes: PERT
y CPM
Teora de juegos
Simulated annealing
Algoritmos genticos
Redes neuronales
sta en general, aborda el problema de determinar asignaciones ptimas de recursos limitados para cumplir
un objetivo dado. Cuando se trata de resolver un problema de este tipo, la primera etapa consiste en
identificar las posibles decisiones que pueden tomarse; esto lleva a identificar las variables del problema
concreto. Las variables son de carcter cuantitativo y se buscan los valores que optimizan el objetivo. La
segunda etapa supone determinar que decisiones resultan admisibles; esto conduce a un conjunto de
restricciones que se determinan teniendo presente la naturaleza del problema en cuestin ya sea
programacin lineal, lineal entera (binaria o mixta), no lineal o cuadrtica. En la tercera etapa, se calcula el
coste/beneficio asociado a cada decisin admisible; esto supone determinar una funcin objetivo que
asigna, a cada conjunto posible de valores para las variables que determinan una decisin, un valor de
coste/beneficio. El conjunto de todos estos elementos define el problema de Optimizacin [7].
En cuanto a la dificultad en este proceso de optimizacin se encuentra en los casos en que se trata con
Programacin No lineal (PN), donde el problema de stos radica en que tanto la funcin objetivo y
restricciones pueden ser funciones no lineales de las variables de diseo. Una solucin del problema de
programacin no lineal generalmente requiere que un procedimiento iterativo establezca una direccin de
bsqueda en cada iteracin principal. Esto por lo general es alcanzado mediante la solucin de un problema
lineal, cuadrtico, o un subproblema libre [4].
La optimizacin, tambin denominada programacin matemtica, sirve para encontrar la respuesta que
proporciona el mejor resultado, la que logra mayores ganancias, mayor produccin, o la que logra el menor
costo. Con frecuencia, estos problemas implican utilizar de la manera ms eficiente los recursos, tales como
dinero, tiempo, maquinaria, personal, existencias, etc. Los problemas de optimizacin generalmente se
clasifican en lineales y no lineales, segn las relaciones del problema sean lineales con respecto a las
variables. Existe una serie de paquetes de software para resolver problemas de optimizacin. Por ejemplo,
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Programacin Lineal
La programacin lineal resuelve problemas donde todas las relaciones entre las variables son lineales, tanto
en las restricciones como en la funcin objetivo [2], la presencia de una nica funcin no lineal hace que el
problema no pueda clasificarse como problema de programacin lineal [1]; sta evidencia su aplicacin en
diversos campos, como la ingeniera, la economa, la gestin, y muchas otras reas de la ciencia, la tcnica
y la industria [1].
El objeto de la programacin lineal es optimizar (minimizar o maximizar) una funcin lineal de n variables
sujeto a restricciones lineales de igualdad o desigualdad, denominada funcin objetivo.
Un problema de programacin lineal consiste en encontrar el ptimo (mximo o mnimo) de una funcin
lineal en un conjunto que puede expresarse como la interseccin de un nmero finito de hiperplanos y
semiespacios en IRn. Cualquier problema de programacin lineal requiere identificar cuatro componentes
bsicos [1]:
1. El conjunto de datos.
2. El conjunto de variables involucradas en el problema, junto con sus dominios respectivos de
definicin.
3. El conjunto de restricciones lineales del problema que definen el conjunto de soluciones
admisibles.
4. La funcin lineal que debe ser optimizada (minimizada o maximizada).
n
Z = f (x ) = c x
j =1
j j (3)
a x
j =1
ij j = b j , i = 1,2,..., p 1
a
j =1
ij x j b j , i = p,..., q 1
(4)
n
a
j =1
ij x j b j , i = q,..., m
1 p q m
La programacin lineal es un campo importante en la optimizacin, por varias razones, muchos problemas
prcticos en investigacin de operaciones pueden ser expresados como problemas de programacin lineal.
Algunos casos especiales de programacin lineal, tales como problemas de flujos en redes son considerados
lo suficientemente importantes como para haber generado abundante investigacin en algoritmos
especializados para su solucin. Algunos algoritmos para solucin de otros tipos de problemas de
optimizacin, emplean la programacin lineal para solucionar sub-problemas. Histricamente, ideas
provenientes de la programacin lineal han inspirado muchos de los conceptos centrales de la teora de
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Puede observarse que se pueden presentar distintos casos de problemas donde en cuanto a las restricciones
pueden tener exclusivamente restricciones de igualdad, de desigualdad de un tipo, de desigualdad del otro
tipo, desigualdades de ambos tipos, igualdades y desigualdades, entre otros [1].
Se dice que se est en presencia de una solucin factible cuando un punto x=(x1, x2, x3,, xn); que satisface
todas las restricciones (4), se denomina solucin factible. El conjunto de todas esas soluciones es la regin
de factibilidad. De igual forma se dice que se est en presencia de una solucin ptima cuando un punto
factible x tal que f (x) f (x), para cualquier otro punto factible x, se denomina una solucin ptima del
problema [1].
El objetivo de los problemas de optimizacin es encontrar un ptimo global. Sin embargo, las condiciones
de optimalidad slo garantizan, en general, ptimos locales, si estos existen. Los problemas lineales
presentan propiedades que hacen posible garantizar el ptimo global [1]:
Si la regin factible (Subconjunto cerrado de IRn de los valores posibles de las variables de
decisin de un programa lineal. Se expresa de forma analtica por un conjunto de restricciones)
[9], est acotada, el problema siempre tiene una solucin (Esta es una condicin suficiente pero no
necesaria para que exista una solucin).
El ptimo de un problema de programacin lineal es siempre un ptimo global.
Si x y y son soluciones ptimas de un problema de programacin lineal, entonces cualquier
combinacin (lineal) convexa de lo mismos tambin es una solucin ptima.
La solucin ptima se alcanza siempre, al menos, en un punto extremo de la regin factible.
La solucin y el anlisis de un modelo de programacin ideal debern formularse segn una forma
determinada de programa lineal. Se trata de definir ciertas formulaciones prototipo del programa lineal y de
contar con herramientas para poder expresar un programa lineal cualquiera en esa forma prototipo o
estndar [9]. En ocasiones, sta transformacin ha de realizarse antes de resolver el problema de
programacin lineal (PPL) y determinar el ptimo. Para describir un PPL en forma estndar son necesarios
los tres elementos siguientes [1]:
1. Un vector c IRn
2. Un vector no negativo b IRm
3. Una matriz m x n, A.
Con estos elementos, el problema lineal asociado y en forma estndar tiene la siguiente forma.
Minimizar
Z = cT x (5)
Sujeto a
Ax = b
(6)
x 0
programacin lineal se estudian normalmente en esta forma. Tpicamente, n es mucho mayor que m. En
resumen, un problema de programacin lineal se dice que est en forma estndar si y slo si [1]:
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
1. Es de minimizacin.
2. Slo incluye restricciones de igualdad.
3. El vector b es no negativo.
4. Las variables x son no negativas.
Para que se logre observar el efecto de transformacin de PPL en forma estndar se vera como cualquier
problema de programacin lineal de la forma (3) y (4) puede ser transformado:
Cualquier problema de programacin lineal puede expresarse siempre en forma estndar sin ms que llevar
a cabo una serie de manipulaciones algebraicas [1]:
1. Las variables no restringidas en signo se pueden expresar como diferencias de variables que s
estn restringidas en signo, es decir variables no negativas. Si algunas (o todas) de las variables no
estn restringidas en signo, stas se pueden expresar mediante sus partes positiva y negativa. Las
partes positiva y negativa de la variable xi, se definen como xi+ = max [0, xi] y xi = max [0,xi],
respectivamente. Se puede comprobar fcilmente que x = xi+ xi, |x| = xi+ + xi y que ambas xi+
y xi son no negativas. Si el nmero de variables no restringidas en signo es r, el empleo de la
regla anterior supone la necesidad de utilizar r variables adicionales.
4. Una restriccin con trmino independiente b no positivo puede reemplazarse por otra equivalente
cuyo trmino independiente es no negativo.
Soluciones Bsicas
Se tratara un problema de programacin lineal en forma estndar matricial de la forma (5) (6), donde se
supondr que el rango de la matriz A de dimensin mn es m donde m n, y que el sistema lineal Ax = b
tiene solucin. En cualquier otro caso, el problema lineal es equivalente a otro con menos restricciones, o
no tiene solucin factible, respectivamente [1].
las variables asociadas a las columnas de A necesarias para construir B. Las variables xB se denominan
variables bsicas y el resto se denominan variables no bsicas. Asignando el valor cero a las variables no
bsicas [1].
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
x
(B N ) B = b, BxB = b, xB = B 1b (7)
0
Donde N es tal que A = (B N). Por tanto B1b permite obtener la solucin bsica asociada a B. Si B es una
matriz bsica factible, su solucin bsica se dice que es factible. El nmero de soluciones bsicas factibles
de un problema de programacin lineal acotado con un numero finito de restricciones es siempre finito, y
cada una se corresponde con un punto extremo de la regin de factibilidad. En concreto, el teorema
siguiente establece la relacin entre soluciones bsicas factibles (SBFs) y puntos extremos [1].
Caracterizacin de puntos extremos. Sea S = [x: Ax = b, x 0], donde A es una matriz mn de rango m, y
b es un vector de dimensin m. Un punto x es punto extremo de S si y slo si A puede descomponerse en
(B,N) tal que [1]:
x B B 1b
x = =
xN 0
x= v + w + q
i
i i
j
j j
k
k k
Donde:
i IR,j IR+, y 0 k 1; k
k =1
Z = cT x = c w + c q
j
j
T
j
k
k
T
k
cTwj 0,j
Si no es as, el valor de la funcin objetivo puede disminuirse tanto como se quiera sin ms que seleccionar
valores adecuados para j = 0 y/o k. Por tanto, el valor de la funcin objetivo pasa a ser:
Z = cT x = c q
k
k
T
k
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Donde r es el nmero de puntos extremos. Lo anterior implica que el mnimo se alcanza en uno de los
puntos extremos [q1,..,qr] y, empleando el teorema de caracterizacin de puntos extremos explicado
anteriormente, el punto es una solucin bsica factible [1].
X*B = B* ( ) 1b
(8)
z *
=cTB xB
Considrese un cambio marginal (es decir, un cambio que no modifica la base) en el vector de trminos
independientes b:
b* b* + b (9)
x B x B + x B
z* z* + Z
x B = B* ( ) 1
b
z = cTB x B
z = cTB x B = cTB B* ( )
1
b
Definiendo:
( )
*T = cTB B*
1
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
La ecuacin anterior pasa a:
z = *T b
Que indica que j* proporciona el cambio en el valor ptimo de la funcin objetivo como resultado de un
cambio marginal en la componente j del vector de trminos independientes b. Estos parmetros de
sensibilidad juegan un papel fundamental en aplicaciones de ingeniera y cientficas. Como se vera en las
secciones siguientes, los parmetros de sensibilidad son de hecho variables duales [1].
Teorema de Dualidad
Dado un modelo lineal determinado, se puede definir otro modelo lineal que permite obtener propiedades
interesantes del primero y que ser su dual. La solucin del modelo dual permite obtener interesantes
resultados, relativos al anlisis de sensibilidad de los trminos independientes. Ms concretamente, para los
rangos de valores de los trminos independientes para los que se mantiene la base ptima (que podemos
conocer mediante el anlisis de sensibilidad), la solucin del dual permite conocer la variacin de la
funcin objetivo por unidad incrementada del trmino independiente de la restriccin [9]. Tras formular el
problema dual de un problema de programacin lineal, se establece la relacin matemtica entre ambos. Se
emplean diversos ejemplos para ilustrar el importante concepto de la dualidad. Dado un problema de
programacin lineal, denominado problema primal, existe otro problema de programacin lineal,
denominado problema dual, ntimamente relacionado con l. Se dice que ambos problemas son
mutuamente duales bajo ciertas hiptesis, los problemas primal y dual dan lugar al mismo valor ptimo de
la funcin objetivo, y por tanto se puede resolver indirectamente el problema primal resolviendo el
problema dual. Esto puede suponer una ventaja computacional relevante [1].
Minimizar: Z = cT X
Sujeta a:
Ax b
(10)
x0
Z = bT y
Sujeta a:
AT y c
(11)
y0
Se denomina al primer problema primal, y al segundo, su dual. Donde se puede apreciar que los mismos
elementos (la matriz A, y los vectores b y c configuran ambos problemas). El problema primal no se ha
escrito en forma estndar, sino en una forma que permite apreciar la simetra entre ambos problemas, y
mostrar as que el dual del dual es el primal [1]. La dualidad es una relacin simtrica, esto es, si el
problema D es el dual del problema P, entonces P es el dual de D [1].
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Esto puede apreciarse a travs del siguiente ejemplo escribiendo el problema dual anterior como un
problema de minimizacin con restricciones de la forma [1].
Minimizar:
Z = bT y (23)
Sujeta a:
AT y c
(12)
y0
Z = cT x
Sujeta a:
Ax b
(13)
x0
Minimizar: Z = cT x
Sujeta a:
Ax = b
x0
Minimizar
Z = cT x
Sujeta a:
A b
x
A b
x0
El dual de este problema es:
Z = bT y (1) bT y (2 ) = bT y
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
y (1)
(A AT
T
) = AT y c
y (2 )
Esta es la forma del problema dual cuando el problema primal se expresa en forma estndar [1].
Minimizar: Z = x1 + x2 + x3
Sujeta a:
2 x1 + x2 3
x1 x3 = 2 (14)
x3 0
Es maximizar: Z = 3 y1 + 2 y2
Sujeta a:
2 y1 + y2 = 1
y1 = 1
(15)
y2 1
y1 0
Aplicando las mismas reglas, se puede obtener el problema primal del dual, lo que se muestra a
continuacin [1]:
Regla 1. Dado que las restricciones primera y segunda del problema dual son de igualdad, las variables
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
primales primera y segunda x1 y x2 no estn restringidas en signo.
Regla 2. Dado que a la tercera restriccin del problema dual es de desigualdad , la tercera variable
primal x3 es no negativa.
Regla 3. Dado que la primera variable dual y1 est restringida en signo, la primera restriccin primal es
de desigualdad .
Regla 4. Puesto que la segunda variable dual y2 no est restringida en signo, la segunda restriccin
primal es de igualdad.
Teoremas de dualidad
La importancia del problema dual se establece en los siguientes teoremas [1].
Lema de dualidad dbil. Sea P un PPL, y D su dual. Sea x una solucin factible de P e y una solucin
factible de D. Entonces:
bT y cT x
Ax = b, x 0, AT y c
b T y = x T A T y x T c = cT x
y
[ ] x
[ ]
cT x = bT y max bT y | AT y c min cT x | Ax = b, x 0 cT x = bT y
[ ] [
max bT y | AT y c min cT x | Ax = b, x 0
y x
]
Por tanto, todas las desigualdades son de hecho igualdades y x e y deben ser soluciones ptimas de P y
D respectivamente, tal como estableca la hiptesis inicial. El teorema de dualidad fuerte establece que los
problemas P y D tienen, en general, soluciones ptimas simultneamente [1].
Teorema de dualidad. Si x es una solucin ptima de P, existe una solucin ptima y para D, y el
mnimo de P y el mximo de D presentan el mismo valor de la funcin objetivo bT y= cT x.
Recprocamente, si y es una solucin ptima de D, existe una solucin ptima de P, x, y nuevamente los
valores mnimo y mximo de P y D dan lugar a un valor comn de la funcin objetivo bT y = cT x. En otro
caso, o un conjunto factible est vaco o lo estn los dos [1].
1. Ambos problemas tienen solucin ptima y los valores ptimos de las funciones objetivo
respectivos coinciden.
2. Uno de los problemas no est acotado y el otro tiene una regin factible vaca.
Regiones Factibles y Soluciones ptimas
Dos de los conceptos ms fundamentales en la programacin lineal son el de regin factible y de solucin
optima de un problema. Se llamara punto a la especificacin de un valor para cada variable de decisin.
La regin factible para un PPL es el conjunto de puntos que satisfacen todas las restricciones de un
problema de PL.
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
En el caso de un problema de maximizacin, una solucin ptima del PPL es un punto de la regin factible
que esta asociado al mayor valor posible de la funcin objetivo. Similarmente, para un problema de
minimizacin, una solucin ptima es un punto que esta asociado al menor valor posible de la funcin
objetivo.
La mayora de los PPL tienen solo una solucin ptima. Sin embargo, existen muchos PPL que no poseen
solucin ptima o bien poseen varios o infinitos valores ptimos.
Mtodo Grfico
Sistemas de Desigualdades Lineales
Dentro de las caractersticas del problema de PL, se involucra siempre un sistema de restricciones lineales o
desigualdades lineales, las cuales representan la relacin entre las variables en forma de desigualdad.
Es importante, entonces, poder graficar las restricciones de un problema para tener una idea clara de la
regin factible de solucin para el problema. La mayora de los problemas de PL tienen ms de una
restriccin. Toda restriccin lineal expresada como una desigualdad lineal claramente define un semiplano.
y y
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
yx
y=x
y=x yx
x x
Figura 1. Grafica representativa a los semiplanos que define toda restriccin lineal expresada como
una desigualdad lineal.
Se desea graficar el semiplano y< 2x + 3. Esto es el conjunto de puntos que estn por debajo de la lnea
y=2x + 3.
Sea y = 0 = 2x + 3
2x = -3
x = -3/2 Punto (-3/2,0)
y y = 2x + 3
(0,3)
3 x
,0
2
Figura 2. Grafica representativa a la lnea y = 2x + 3
Ahora bien y > 2x + 3 es el semiplano que est por encima de la recta y = 2x + 3, se le llama semiplano
abierto.
Si la recta est incluida, se representa la grfica de la desigualdad y > 2x + 3 como un semiplano y, en ese
caso, se le llama a la regin semiplano cerrado.
En esencia, funciona igual que el mtodo simplex como un algoritmo iterativo (un procedimiento que sigue
ciertos pasos ordenados en forma iterativa o repetitiva).
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Paso Iterativo: Traslado a una mejor solucin factible en un vrtice adyacente.
Prueba de Optimalidad: La solucin factible en un vrtice es ptima cuando ninguna de las
soluciones en vrtices adyacentes a ella sea mejor.
Si una solucin en un vrtice es igual o mejor (segn el valor de Z) que todas las soluciones factibles en los
vrtices adyacentes a ella, entonces es igual o mejor que todas las dems soluciones en los vrtices; es
decir, es ptima.
Por ejemplo, una restriccin x1 0 y x2 0, permite slo valores no negativos para x1 y x2.
Geomtricamente, estas dos restricciones juntas permiten valores factibles para las variables que estn a la
derecha del eje x2 y encima del eje x1 como se ilustra en la figura siguiente.
x2
300
(4)
x1
Cabe destacar, que se buscan aquellos valores de x1 y x2 que satisfacen todas las restricciones, no slo las de
no negatividad.
Para ver grficamente qu valores son factibles para la restriccin, se deben encontrar aquellos valores de x1
y x2 que satisfacen la igualdad.
Sin embargo, los valores factibles para la restriccin consisten en aquellos valores para los cuales la seccin
izquierda de la funcin cumple con la parte derecha. Lo que se descubrir mediante ensayo y error es que
todos los puntos de la lnea de la figura dan origen a valores factibles para x1 y x2, como cualquier punto en
uno de los dos lados de la lnea resultante. La nica pregunta es Qu lado?, la respuesta a ella se
encuentra eligiendo cualquier punto que no est en la lnea y si los valores x1 y x2 correspondientes
satisfacen la restriccin. Si as es, entonces este punto est en el lado factible; de otra manera, el punto no
est en el lado factible.
Maximizacin o Minimizacin
Para un problema de maximizacin, una solucin ptima para PL, es un punto de la regin factible con el
mayor valor de la funcin objetivo. Similarmente, para un problema de minimizacin, una solucin ptima
corresponde a un punto de la regin factible con el menor valor de la funcin objetivo. Esto quiere decir,
que cualquier problema de PL que tiene una solucin ptima tiene un punto extremo o vrtice que es el
ptimo. En este caso el ptimo es nico.
Si existen soluciones ptimas mltiples, entonces al menos dos de ellas deben ser soluciones factibles en
vrtices adyacentes.
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Ventajas y Desventajas del Mtodo Grfico
Despus de leer lo anterior, se observa que el Mtodo Grfico es sencillo y rpido para optimizar funciones
de utilidad o minimizar funciones de costo.
Sin embargo, tiene una gran limitacin. Solamente se puede usar para problemas que utilizan nicamente
dos variables de decisin. La mayora de problemas de optimizacin que se confrontan en Mercadotecnia,
procesos de produccin, Administracin y Planificacin, juegan con una gran cantidad de variables en sus
modelos matemticos de Programacin Lineal.
Es por ello, en caso que sea necesario resolver problemas con ms de 2 variables, que la nica alternativa
de solucin que tenemos es el algoritmo Simplex.
Mtodo Simplex
El mtodo simplex es un procedimiento matricial para resolver problemas lineales expresados en forma
estndar.
Empezando con x0, el mtodo localiza sucesivamente otras soluciones factibles bsicas que tienen mejores
valores del objetivo, hasta obtener la solucin ptima.
Propiedad fundamental
Los puntos extremos factibles de un programa lineal son totalmente determinados por las soluciones
bsicas factibles de las ecuaciones que lo definen.
La propiedad fundamental muestra cmo la definicin geomtrica de un punto extremo del espacio de
soluciones se traduce algebraicamente como las soluciones bsicas de las ecuaciones que representan el
programa lineal.
El mtodo simplex est diseado especficamente para evitar estas ineficiencias. El enfoque consiste en
partir de una solucin bsica factible (esto es, un punto extremo factible) y luego pasar sucesivamente a
travs de una sucesin de soluciones bsicas factibles (no redundantes), de tal manera que cada nueva
solucin tenga la facultad de mejorar el valor de la funcin objetivo.
La base del mtodo simplex que garantiza generar tal sucesin de soluciones bsicas est formada por dos
condiciones fundamentales.
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
La condicin de optimalidad asegura que nunca se encontrar una solucin inferior (relativa al punto de
solucin actual).
La condicin de factibilidad garantiza que partiendo de una solucin bsica factible, nicamente se
encontrarn durante el clculo soluciones bsicas factibles.
Para ayudar a desarrollar las dos condiciones, el programa lineal en forma estndar se presenta en una
forma tabular conveniente. La representacin grfica da una explicacin particularmente lcida de la
condicin de factibilidad.
Es mucho ms fcil operar con igualdades que con desigualdades. Por tanto, se convierten a ecuaciones las
restricciones agregando variables de holgura (S1, S2, S3,, Sn), por ejemplo: 2x1 + 3x2 6, para convertirla a
ecuacin se le agrega una variable de holgura y se obtiene 2x1 + 3x2 + S1 = 6, y ests variables de holgura
son enumeradas por el orden correlativo de las restricciones del problema. Es claro que para que el mtodo
sea vlido, debemos especificar que las variables de holgura sean no negativas.
Las variables de holgura proporcionan una solucin obvia de inicio en este caso porque (1) sus coeficientes
en las restricciones forman una matriz identidad, donde los elementos diagonales son unos y todos los
elementos restantes son ceros y (2) las constantes del lado derecho de las ecuaciones siempre son no
negativas (propiedad de la forma estndar).
Bsicas x0 x1 x2 S1 S2 S3 S4 Solucin
x0 1 -4 -3 0 0 0 0 0 Ecuacin x0
S1 0 2 3 1 0 0 0 6 Ecuacin S1
S2 0 -3 2 0 1 0 0 3 Ecuacin S2
S3 0 0 2 0 0 1 0 5 Ecuacin S3
S4 0 2 1 0 0 0 1 4 Ecuacin S4
La columna titulada Bsicas contiene las variables bsicas (actuales) S1, S2, S3 y S4. La columna Solucin
da los valores actuales de las variables bsicas. Cada ecuacin en la tabla estar identificada por la variable
asociada en la columna marcada Bsica. Las variables no bsicas actuales son aquellas que no aparecen en
la columna Bsica y sus valores son cero.
Las columnas asociadas a las variables bsicas de inicio siempre aparecen inmediatamente a la izquierda de
la columna Solucin y sus coeficientes de restricciones constituyen una matriz identidad.
El paso siguiente es determinar una nueva solucin bsica factible (punto extremo) con un valor mejorado
de la funcin objetivo. El mtodo simplex hace esto eligiendo una variable actual no bsica que se va a
aumentar arriba de cero siempre que su coeficiente en la funcin objetivo tenga la virtud de mejorar el valor
de x0. Ya que un punto extremo debe tener dos variables no bsicas, una de las variables bsicas actuales
debe hacerse no bsica en el nivel cero siempre que la nueva solucin sea factible. La variable no bsica
actual debe hacerse bsica; usualmente se le conoce como la variable que entra y est determinada por la
condicin de optimizar. La variable bsica actual que va a ser no bsica se conoce como la variable que sale
y est determinada por la condicin de factibilidad.
La condicin de optimizar estipula que la variable que entra ser elegida como la variable no bsica que
tenga un coeficiente negativo en la ecuacin x0 de la tabla. Este paso sigue ya que es equivalente a elegir un
coeficiente positivo en la funcin objetivo original (cuando se est maximizando). Despus se desarrolla la
condicin de factibilidad.
Despus de determinar la variable que entra y la que sale, el paso siguiente es modificar la tabla de tal
manera que la columna Solucin directamente dar los nuevos valores de x0 y las (nuevas) variables
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
bsicas. Este resultado se logra aplicando el Mtodo de Gauss-Jordan (o de operaciones de rengln) el cual
elimina (realmente substituye) la variable que entra de todas las ecuaciones de la tabla, excepto aquella que
est asociada a la variable de salida.
El coeficiente bajo la variable de entrada correspondiente a la relacin mnima se conoce como el elemento
pivote. El primer paso en la eliminacin Gauss-Jordan es dividir la ecuacin pivote entre el elemento pivote
y reemplazar la ecuacin pivote como una variable bsica por la variable que entra.
Condicin de Optimalidad:
Dada la ecuacin x0 expresada en funcin de las variables no bsicas solamente, se elige la variable que
entra en maximizacin (minimizacin) como la variable no bsica que tiene el mayor coeficiente negativo
(el ms positivo) en la ecuacin x0. Un empate entre dos variables no bsicas debe descomponerse
arbitrariamente. Cuando todos los coeficientes del lado izquierdo de la ecuacin x0 son no negativos (no
positivos) se ha llegado al ptimo.
Condicin de Factibilidad
La variable que sale es la variable bsica correspondiente al cociente ms pequeo de los valores actuales
de las variables bsicas entre los coeficientes positivos de las restricciones de la variable que entra. Un
empate puede romperse arbitrariamente.
Programacin No Lineal
La programacin lineal es una de las mayores contribuciones al campo de la toma cientfica de decisiones.
Su versatilidad y adaptabilidad ha hecho que este modelo tenga aplicacin en casi todos los campos de la
ingeniera y de la ciencia. No obstante, ciertas clases de problemas requieren tener en cuenta los aspectos
no lineales del mismo. Esta necesidad ha conducido a investigar tanto los aspectos tericos como los
computacionales de los problemas de programacin no lineal [1].
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
Aunque los problemas de programacin lineal son muy comunes y cubren un amplio rango de aplicaciones,
en la vida real se tiene que enfrentar con cierta frecuencia a otro tipo de problemas que no son lineales.
Cuando el conjunto de restricciones, la funcin objetivo, o ambos, son no lineales, se dice que se trata de un
problema de programacin no lineal (PPNL) [1].
Minimice f(x)
Sujeto a:
Es decir hay una funcin f de valor escalar, de varias variables (x es un vector), que se busca reducir al
mnimo sujeta a una o ms funciones que sirven para limitar o definir los valores de stas variables. La
funcin f es la funcin objetivo, mientras que el resto de las funciones son las restricciones. Si se busca la
maximizacin de la funcin, esto se logra multiplicando a f por -1 [8].
Uno de los mayores desafos en la programacin no lineal es que algunos problemas exponen "grados
ptimos locales"; es decir las soluciones falsas que simplemente satisfacen las exigencias sobre las
derivadas de las funciones. Los algoritmos que proponen vencer esta dificultad son llamados "Optimizacin
Global" [8].
En algunos casos, todas o algunas de las variables enteras slo pueden tomar los valores de 0 o 1. A estas
variables se les llama variables binarias. De este modo tenemos tres tipos de variables:
Entre las tcnicas existentes para el desarrollo de estos problemas de programacin lineal entera-mixta se
encuentran las tcnicas de ramificacin y acotacin (RA) y la tcnica de los cortes de Gomory (CG). La
tcnica RA es la que presenta excelentes propiedades computacionales por lo que es la que se emplea con
mayor frecuencia. Sin embargo, recientemente se han desarrollado tcnicas hbridas, denominadas de
ramificacin y cortes, que son ms eficaces [1].
n
Z= cjxj
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
j =1
Sujeto a:
n
a x
j =1
ij j = bi ; i = 1,2,..., m
Referencias bibliogrficas
Solo para ser empleado con objetivo de evaluacin, o acadmicos. Prohibido la reproduccin total o parcial de este documento sin consentimiento de los autores.
[1] Enrique Castillo, Antonio J. Conejo, Pablo Pedregal, Ricardo Garca y Natalia Alguacil
Formulacin y Resolucin de Modelos de Programacin Matemtica en Ingeniera y Ciencia.20
de febrero de 2002.
[2] Pgina Personal de Ramn Medina (Online) Disponible en:
http://www.ramonmedina.name/files/todec_g.pdf.
[3] Marrero, F. (2004). Herramientas para la toma de decisiones: La programacin lineal (online)
disponible en: http://www.ilustrados.com/publicaciones/EpZVVyAEZEviGjBikU.php.
[4] Optimization Toolbox For Use with MATLAB. Optimization Toolbox Users Guide. Version
3.
[5] Hamdy A. Taha. Investigacin de operaciones, una introduccin. Representaciones y servicios
de Ingeniera, S. A., Mxico. Pgs. 42-55.
[6] Richard Bronson. Teora y problemas de investigacin de operaciones. McGraw Hill. Pgs. 32-
33.
[7] Hossein Arsham. Modelos Deterministas: Optimizacin Lineal, 1994 (Online) Disponible en:
http://home.ubalt.edu/ntsbarsh/opre640S/SpanishD.htm.
[8] Nonlinear Programming, Online disponible en : http://www-
unix.mcs.anl.gov/otc/Guide/faq/nonlinear-programming-faq.html.
[9] Jos Mara Salln Leyes, Albert Su Torrents, Joan Baptista y Fonollosa Guardiet. Mtodos
cuantitativos en organizacin industrial I. Edicions de la Universitat Politcnica de Catalunya,
SL. Primera edicin: febrero de 2002.
[10] Singiresu S. Rao. ENGINEERING OPTIMIZATION Theory and Practice .By John Wiley &
Sons, Inc., Wiley Eastern Limited, Publishers, and New Age International Publishers, Ltd. Third
edition. 1996