Vous êtes sur la page 1sur 21

Reporte de Investigacin

2007-07

Optimizacin y la Programacin Lineal:


Una Introduccin

Responsables: Marchena Williams


Ornelas Carlos

Supervisor: Francisco M. Gonzlez-Longatt

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].

El problema general de optimizacin es el siguiente:

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]

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 3

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

Como ya se mencion anteriormente, se es inters fundamental de investigacin tratar especficamente la


programacin matemtica.

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,

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 4

LINDO (http://www.lindo.com/) o WinQSB resuelven modelos de programas lineales y LINGO,


What'sBest! y MATLABTM resuelven problemas lineales y no lineales [7].

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).

La forma ms general de un problema de programacin lineal cosiste en minimizar o maximizar una


funcin objetivo [1]:

n
Z = f (x ) = c x
j =1
j j (3)

Sujeto a las siguientes restricciones:

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

Donde p, q, y m son enteros positivo tales que:

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 5

optimizacin, tales como la dualidad, descomposicin y la importancia de la convexidad y sus


generalizaciones [2].

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.

Problema de Programacin Lineal en Forma Estndar


Se ha observado que un modelo lineal puede adoptar varias formas: la funcin objetivo puede ser de
mximo o mnimo, y las restricciones pueden ser de mayor o igual, menor o igual o de signo igual, incluso
tener restricciones de varios tipos.

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

Donde cT x indica el producto escalar de los vectores c y x, Ax es el producto de la matriz A y el vector x, y


x 0 hace que todas las componentes de los vectores factibles sean no negativas. Los problemas de

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 6

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.

2. Las restricciones de desigualdad pueden convertirse en restricciones equivalentes de igualdad


introduciendo nuevas variables que se denominan variables de holgura:

Si ai1x1 + ai2x2 +. + ainxn bi

Entonces, existe una variable xn+1 0 tal que:

ai1x1 + ai2x2 +. + ainxn + xn+1 = bi

Si ai1x1 + ai2x2 + + ainxn bi

Entonces, existe una variable xn+1 0 tal que:

ai1x1 + ai2x2 +. + ainxn xn+1 = bi

3. Un problema de maximizacin es equivalente a uno de minimizacin sin ms que cambiar el signo


de la funcin objetivo. En particular, maximizar Zmax = cT x es equivalente a minimizar Zmin = cT
x si ambos problemas han de cumplir las mismas restricciones. Obsrvese que ambos problemas
alcanzan el ptimo en los mismos puntos, pero Zmax = Zmin.

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].

Una submatriz no singular B de dimensin mm de A se denomina matriz bsica o base. B tambin se


denomina matriz bsica factible si y solo si B1b 0. Cada matriz bsica tiene un vector asociado que se
denomina solucin bsica. El procedimiento para calcular esta solucin es el siguiente. Sea xB el vector de

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 7

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

Donde B es una matriz de dimensin mm invertible que satisface B1b 0.

Propiedad fundamental de la programacin lineal. Si un problema de programacin lineal tiene una


solucin ptima, es adems una solucin bsica factible. Esto puede verse a travs de una demostracin
bsica donde [1]:

Una regin polidrica siempre puede escribirse como:

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

La regin factible de un problema de programacin lineal en forma estndar no contiene un espacio


vectorial debido a las restricciones x 0. En este caso especial, el conjunto polidrico puede escribirse
como suma de un politopo y un cono; siendo el conjunto mnimo de generadores del politopo el conjunto
de puntos extremos, y el mnimo conjunto de generadores del cono el conjunto de direcciones extremas.
Por tanto, el valor de la funcin objetivo a minimizar Z = cT x se puede expresar como [1]:

Z = cT x = c w + c q
j
j
T
j
k
k
T
k

Para que este problema tenga solucin acotada, ha de cumplirse que:

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 8

Que alcanza el mnimo para:

s = 1 para algn s tal que cT qs = min (cT q1,., cT qr)

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].

Sensibilidades del Problema con Respecto a los Valores de los


Trminos Independientes de las Restricciones.
El anlisis de sensibilidad es una herramienta especialmente til cuando no tenemos una certeza absoluta
sobre los valores que se han dado a los trminos independientes de las restricciones (en muchas ocasiones
asociados a la limitacin de los recursos) o los coeficientes de la funcin objetivo [9]. El anlisis de
sensibilidad propiamente dicho estudia los intervalos para los cuales la modificacin de un valor
(coeficiente de la funcin objetivo o trmino independiente) en el programa lineal, de forma
individualizada, no cambia las variables que componen la base de nuestra solucin. Hallando, para el rango
de valores definido en el intervalo, la evolucin de la funcin objetivo [9]. Por otro lado, el anlisis
paramtrico, que no es ms que un anlisis de sensibilidad en profundidad de los trminos independientes
de las restricciones, estudia las variaciones de la solucin ptima ms all de la solucin obtenida con los
valores iniciales de los parmetros. Se consideran todos los valores posibles del trmino independiente,
desde - a +, analizando las variables que entran y salen de la base (cambios de base: Cuando alguno de
los parmetros vare fuera de los intervalos obtenidos por anlisis de sensibilidad, tendremos un cambio de
base) [9]. A partir de la solucin de un PPL se puede extraer informacin muy relevante sobre
sensibilidades. Esto se pone de manifiesto en lo que sigue. Sea B* la base ptima; entonces:

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)

Este cambio en el vector de trminos independientes da lugar a cambios en el minimizador y en el valor


ptimo de la funcin objetivo:

x B x B + x B
z* z* + Z

Puesto que las ecuaciones (8) son lineales, se puede escribir:

x B = B* ( ) 1
b
z = cTB x B

Combinando las ecuaciones anteriores, se obtiene:

z = cTB x B = cTB B* ( )
1
b

Definiendo:

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 9

( )
*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

Para una coordenada arbitraria j la expresin anterior tiene la forma:


z
j =
bj

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].

Dado el problema de programacin lineal

Minimizar: Z = cT X

Sujeta a:

Ax b
(10)
x0

Su problema dual es maximizar:

Z = bT y
Sujeta a:

AT y c
(11)
y0

Donde y = (y1,, ym)T se denominan variables duales.

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 10

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

Entonces su dual es maximizar:

Z = cT x

Sujeta a:

Ax b
(13)
x0

Que es equivalente al problema primal original.

Obtencin del dual a partir del primal en forma estndar


Se obtiene el problema dual a partir del problema primal en forma estndar. Para hacer esto basta con
aplicar la relacin primal-dual como se explic en tema anterior de dualidad. Considrese el PPL [1]:

Minimizar: Z = cT x

Sujeta a:

Ax = b
x0

La igualdad Ax = b puede reemplazarse por las desigualdades Ax b y Ax b. Entonces, puede


escribirse el problema como:

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 11

Donde y = y (1) y (2) no est restringida en signo, sujeta a:

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].

Obtencin del problema dual


Un problema de programacin lineal de la forma (10) tiene asociado un problema dual que puede
formularse segn las reglas siguientes [1]:
Regla 1. Una restriccin de igualdad en el primal (dual) hace que la correspondiente variable dual
(primal) no est restringida en signo.
Regla 2. Una restriccin de desigualdad () en el primal (dual) da lugar a una variable dual (primal)
no negativa.
Regla 3. Una restriccin de desigualdad () en el primal (dual) da lugar a una variable dual (primal)
no positiva.
Regla 4. Una variable no negativa primal (dual) da lugar a una restriccin de desigualdad () en el
problema dual (primal).
Regla 5. Una variable primal (dual) no positiva da lugar a una restriccin de desigualdad () en el
problema dual (primal).
Regla 6. Una variable no restringida en signo del problema primal (dual) da lugar a una restriccin de
igualdad en el dual (primal).

Ejemplo de Problema Dual del problema de programacin lineal [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

Para obtenerlo se aplican las reglas anteriores de la forma siguiente [1]:


Regla 1. Puesto que la segunda restriccin del problema primal es de igualdad, la segunda variable
dual y2 no est restringida en signo.
Regla 2. Puesto que la primera restriccin del problema primal es de desigualdad , la primera variable
dual y1 es no negativa.
Regla 3. Puesto que la tercera variable primal x3 est restringida en signo, la tercera restriccin dual es
de desigualdad .
Regla 4. Puesto que las variables primales primera y segunda x1 y x2 no estn restringidas en signo, las
restricciones duales primera y segunda son de igualdad.

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 12

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

Si x e y son factibles respectivamente para P y D, entonces:

Ax = b, x 0, AT y c

Obsrvese que debido a la no negatividad de x,

b T y = x T A T y x T c = cT x

Si bT y= cT x para dos vectores x e y, factibles en P y D, respectivamente, entonces:

y
[ ] x
[ ]
cT x = bT y max bT y | AT y c min cT x | Ax = b, x 0 cT x = bT y

La demostracin es simple si se comprueba que:

[ ] [
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].

En resumen, si P es un PPL y D es su dual, una de las siguientes afirmaciones es cierta [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.

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 13

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.

Mtodos de Solucin de Programas Lineales


Una vez que se ha conseguido representar una situacin mediante un modelo lineal, es preciso encontrar y
explotar la solucin de ese modelo. Existen varias formas de encontrar esta solucin [9]:
a) En el caso (poco frecuente) en el que se haya representado el modelo con dos variables de
decisin, puede resolverse ste grficamente. La solucin grfica de un modelo lineal tiene
fundamentalmente un inters pedaggico, dado que permite introducir diversos conceptos
asociados a los modelos lineales de forma grfica e intuitiva.
b) Para modelos pequeos o medianos (hasta decenas de miles de variables y restricciones) resulta
adecuado el algoritmo smplex, que consiste en explorar de forma inteligente el conjunto de
soluciones posibles, de manera que se alcance el ptimo explorando un subconjunto pequeo de
stas. Existen en el mercado programas informticos que utilizan el mtodo smplex para resolver
modelos lineales. En la mayora de las ocasiones, suele ser accesible una versin gratuita
(freeware) de dichos programas. La nica diferencia con los programas de pago es que tienen
limitado el nmero de variables y restricciones, de manera que su utilidad es didctica: la
explotacin comercial obliga a usar versiones de pago de esos programas, con mayor capacidad de
tratamiento de variables y restricciones.
c) Para modelos de gran tamao, el procedimiento del punto interior, tcnica exportada de la
programacin no lineal, permite en ocasiones obtener una excelente aproximacin a la solucin de
forma ms rpida que el algoritmo smplex.

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.

Por ejemplo el semiplano y x es el semiplano superior a la lnea y = x mientras, el semiplano y x es el


semiplano inferior a la lnea y = x. La interseccin de un nmero finito de semiplanos determina una regin
geomtrica llamada Poliedro Convexo (polgono convexo).

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 14

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.

Para graficarlo, se grafica la lnea y = 2x +3 con el mtodo rpido.


Sea x = 0 = y = 2(0) + 3 Punto (0,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.

Mtodo Grfico de Solucin a Problemas de PL


El Mtodo Grfico, es un mtodo de prueba y error hasta llegar a determinar el ptimo de la funcin
objetivo, probando todos y cada uno de los extremos o vrtices del polgono de la regin factible.

En esencia, funciona igual que el mtodo simplex como un algoritmo iterativo (un procedimiento que sigue
ciertos pasos ordenados en forma iterativa o repetitiva).

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 15

El Mtodo Grfico consiste en:


Paso Inicial: Inicio en una solucin factible en un vrtice.

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.

Graficacin de las Restricciones de un Programa Lineal


El mtodo grfico para resolver un programa lineal con dos variables se comprende mejor concentrndose
primero en las restricciones y posteriormente en la funcin objetivo. Para determinar que valores de x1 y x2
satisfacen todas las restricciones, se considera una restriccin a la vez. Cada restriccin permite ciertos
valores de x1 y x2 que satisfacen la restriccin. Estos valores se denominan valores factibles. Aquellos
valores que no satisfacen la restriccin se llaman valores no factibles.

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.

Se definen tres alternativas de solucin a problemas de PL que son:

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 16

1. Un nmero infinito de soluciones ptimas (soluciones Mltiples).


2. No tienen solucin factible.
3. Problemas no-acotados.

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.

Desarrollo del mtodo simplex


Es necesario considerar nicamente los puntos extremos (o esquina) del espacio de soluciones.

Representacin del espacio de soluciones con la forma estndar


El desarrollo del mtodo simplex esta basado en el uso de la forma estndar (en la cual todas las
restricciones se convierten en ecuaciones) a fin de hacer la transicin de las representaciones grficas a las
algebraicas.

Un punto extremo factible, se define como una solucin bsica factible.

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.

Condiciones de optimizacin y factibilidad del mtodo simplex


La solucin ptima para un programa lineal general con m ecuaciones y n incgnitas puede obtenerse
resolviendo Cmn = n!/ [m! (n-m)!] conjunto de ecuaciones simultneas. Este procedimiento es ineficiente.
Primero, el nmero de soluciones bsicas posibles puede ser demasiado grande. Segundo, muchas de estas
soluciones pueden ser no factibles o no existentes. Tercero, la funcin objetivo juega un papel pasivo en el
clculo, ya que es utilizada nicamente despus de todas las soluciones bsicas factibles han sido
determinadas [5].

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.

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 17

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.

La conclusin general entonces, es que si el coeficiente de restriccin bajo la variable de entrada es


negativo, o bien, 0, la restriccin correspondiente no intercepta la direccin no negativa del eje que defina
la variable de entrada y entonces no tendr efecto sobre la factibilidad.

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 18

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.

La nica diferencia entre maximizacin y minimizacin ocurre en la condicin de optimizar: En


minimizacin la variable que entra es aquella con el mayor coeficiente positivo en la funcin objetivo. La
condicin de factibilidad permanece igual ya que depende de las restricciones y no de la funcin objetivo.

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.

Pasos Del Mtodo Simplex


Paso 1: Se localiza el nmero ms negativo en el rengln inferior del tablero simplex, incluyendo la
ltima columna. A la columna en la cual aparece este nmero, se le denominar columna de trabajo. Si
existe ms de una posibilidad en la seleccin del nmero ms negativo, se selecciona slo uno.
Paso 2: Se obtienen razones dividiendo cada nmero positivo de la columna de trabajo, excluyendo el
ltimo rengln, entre el elemento en el mismo rengln y en la ltima columna. Al elemento de la
columna de trabajo que d la razn ms pequea, se le denomina elemento pivote. Si ms de un
elemento da la misma razn ms pequea, se selecciona uno de ellos. Si ningn elemento en la
columna de trabajo es positivo, el problema no tiene solucin.
Paso 3: Utilice operaciones elementales de renglones para convertir el elemento pivote a 1 y reducir
despus a todos los dems elementos en la columna de trabajo a 0 [2].
Paso 4: Se reemplaza la variable x en el rengln pivote y en la primera columna por la variable x en el
primer rengln y en la columna pivote. Esta nueva primera columna es ahora el conjunto de variables
bsicas.
Paso 5: Se repiten los pasos 1 al 4 hasta que no queden nmeros negativos en el ltimo rengln,
excluyendo a la ltima columna.
Paso 6: La solucin ptima se obtiene asignando a cada variable de la primera columna aquel valor en
el rengln correspondiente y en la ltima columna. A todas las otras variables se les asigna el valor
cero. El valor asociado z*, ltimo valor ptimo de la funcin objetivo, es el nmero en el ltimo
rengln y ltima columna para un problema de maximizacin, pero es el negativo de este nmero para
un problema de minimizacin.

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 19

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].

Un problema de programacin no lineal (PPNL) puede ser expresado de la forma:

Minimice f(x)

Sujeto a:

gi(x) = 0 de i = 1, ..., m1 donde m1 0


hj(x) 0 de j = m1+1, ..., m donde m m1

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].

Programacin Lineal Entera-Mixta


En algunas situaciones que pueden representarse con modelos lineales, se encontrara con que slo tienen
sentido aquellas soluciones de la regin factible en la que toda o algunas de las variables de decisin sean
nmeros enteros. Estas situaciones pueden representarse mediante modelos matemticos ligeramente
diferentes de la programacin lineal. Si todas las variables de decisin deben ser enteras, tenemos un
problema de programacin lineal entera. Si slo algunas variables de decisin deben ser enteras, pudiendo
ser reales las dems, se trata de un problema de programacin lineal mixta.

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:

a) Variables no enteras o reales


b) Variables enteras
c) Variables binarias

Un problema de programacin lineal entera-mixta (PPLEM) es un problema de programacin lineal (PPL)


en el que algunas de las variables son enteras. Si todas las variables enteras son binarias (0/1), el problema
se denomina problema de programacin lineal entera-mixta 0/1 (PPLEM 0/1). Si, por otra parte, todas las
variables son enteras, el problema se denomina problema de programacin lineal entera estricta (PPLEE)
[1].

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].

Un PPLEM general se formula en forma estndar minimizando:

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 20

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

x j 0; j = 1,2,..., n x j ; Para todo o algunos j = 1,2,..., n

Donde se emplea para referirse al conjunto (0,1, 2,).

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07


Optimizacin y la programacin lineal: Una introduccin 21

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

W. Marchena, C. Ornelas, F Gonzalez Longatt, Febrero 2007 REPORTE 2007-07