Programación No Lineal Cuadrática: Guía Completa
Programación No Lineal Cuadrática: Guía Completa
RESUMEN
La programación cuadrática (QP) es el nombre que se le da a un procedimiento que
minimiza una función cuadrática de n variables sujeta a m restricciones lineales de igualdad
o desigualdad. Un programa cuadrático es la forma más simple de problema no lineal con
restricciones de desigualdad.
Cuando los Estados Unidos entran en la guerra, son conscientes de la necesidad de tales
grupos operativos y de la constitución de secciones operacionales para el éxito de los
mismos. De esta manera, constituyen en 1942 un grupo operacional de lucha antisubmarina
(ASWORG - Anti-Submarine Warfare Operations Research Group) que recoge toda la
experiencia inglesa desarrollada por Blackett. De forma similar, la Fuerza Aérea Americana
estructura diversos grupos operacionales para llevar a cabo sus labores logísticas. Al final
de la guerra, la Armada americana disponía de un departamento de Investigación Operativa
compuesto por más de setenta científicos, y la Fuerza Aérea disponía de más de dos
docenas de secciones operacionales.
No puede decirse que las potencias del Eje hicieran uso de las técnicas operacionales
durante la II Guerra Mundial, mientras que el número de científicos e investigadores
involucrados en Investigación Operativa en la contienda por parte de ingleses, americanos y
canadienses superó los setecientos. Las aportaciones que hicieron todos estos
investigadores supusieron un giro copernicano en la manera de concebir la Ciencia de la
Gestión en los años siguientes. De alguna manera, todos estos estudiosos que trabajaban de
manera aislada en los años treinta se aglutinaron holísticamente con ocasión de la guerra, y
produjeron un conjunto de técnicas y teorías que ocasionaron el alumbramiento de la
Investigación de Operaciones como ciencia.
Una vez finalizó la contienda mundial y habida cuenta del éxito cosechado por las técnicas
operativas, éstas continuaron desarrollándose dentro del ámbito militar, puesto que era el
ejército quien poseía la mayor parte de los investigadores y quien estaba interesado en
proseguir dicha línea de trabajo. A mediados de los años cincuenta se desplazó el centro de
gravedad de interés de la Investigación Operativa, y alcanzó el terreno industrial y el
académico.
No obstante, la IO forma cada día más, una parte de las actividades de la empresa moderna,
y por tanto ya no se trata de una función especializada que deba llevarse a cabo en un
departamento separado, eran muy frecuentes las técnicas de análisis estadístico y por eso
nacen alternativas a distintos tipos de problemas emergentes como lo son la teoría de
inventarios, la programación dinámica y otras no tan usadas como lo son la programación
no lineal y la programación entera.
Históricamente, las funciones cuadráticas fueron prominentes porque proveían modelos
locales simples para funciones no lineales generales. Una función cuadrática, es la función
no lineal más simple, y cuando es usada como una aproximación para una función no lineal
general, esta puede capturar la información importante de la curvatura, lo que una
aproximación lineal no puede. El uso de aproximaciones cuadráticas para resolver
problemas con funciones no lineales generales se remonta mucho tiempo atrás. Entre los
métodos más destacados, tenemos al método de Newton y el método de gradiente
conjugado.
[Link] Desarrollo
A continuación se presentan algunos de los sucesos más relevantes que permitieron el
desarrollo de la programación no lineal cuadrática.
[Link] Conceptualización
Existen varios métodos que permiten resolver problemas de programación no lineal
cuadrática, los algoritmos que se presentan en este trabajo son los más relevantes que se
encuentran en general en la programación no lineal y se pueden aplicar según el nivel de
complejidad del problema dado.
z=CX + X T DX
Sujeta a:
AX ≤ b , X ≥ 0
Los pasos son: Agregar una variable básica evidente, minimizar la suma de variables
artificiales y evaluar si satisface las variables de holgura complementarias
El Método de las Dos Fases es una variante del Algoritmo simplex, que es usado como
alternativa al Método de la Gran M, donde se evita el uso de la constante M para las
variables artificiales y se puede resumir así:
Fase Uno: Maximizar la suma de 3 de las variables artificiales del modelo. Si el valor de la
Z óptima es cero, se puede proseguir a la Fase Dos, de lo contrario el problema no tiene
solución.
Fase Dos: Con base en la tabla reclinable de la fase uno, se elimina de las restricciones las
variables artificiales, y se reemplaza la función objetivo, por la función objetivo original y
se resuelve a partir de la resultante, con el método Simplex tradicional.
Resumen:
Encontrar el máximo conjunto independiente (o conjunto estable) de cualquier
gráfico es un problema importante en la teoría de grafos que tiene muchas
aplicaciones como la visión por computadora / reconocimiento de patrones, la teoría
de la información / codificación, la biología molecular y la programación. En este
artículo proponemos una formulación de programación en cuadratura para encontrar
el máximo conjunto independiente de cualquier gráfico de las cliques máximas de la
gráfica. Está demostrado en la literatura de ciencia computacional, existen cerca de
algoritmos óptimos para enumerar las camarillas máximas de gráficos escasos.
Usando nuestra formulación, hemos sido capaces de encontrar el desconocido
independiente máximo set y número de independencia de algunos grafos conocidos
como gráfico Gardner, Balaban 11 gráfico de la jaula y grafo de Hoffman-
Singleton.
Resumen:
SSA se ha convertido en una herramienta estándar en meteorología y climatología;
También es una técnica bien conocida en física no lineal y procesamiento de
señales. SSA es esencialmente una técnica libre de modelo; Es más una herramienta
exploratoria y de construcción de modelos que un procedimiento de confirmación.
Su objetivo es la descomposición de la serie original en una suma de un pequeño
número de componentes interpretables, como una tendencia de variación lenta,
componentes oscilatorios y un ruido "sin estructura". Las posibles áreas de
aplicación de la SSA son diversas: desde las matemáticas y la física hasta las
matemáticas económicas y financieras, desde la meteorología y la oceanología hasta
las ciencias sociales y las investigaciones de mercado. Cualquier serie
aparentemente compleja con una estructura potencial podría proporcionar otro
ejemplo de una aplicación exitosa de SSA
Resumen:
[Link] Mentefacto
Existen tres programas que ayudan bastante con este tipo de problemas, son KNITRO, que
resuelve problemas de optimización matemática a gran escala, CPLEX, el cual es un
soporte de tomas de decisiones mediante el análisis para mejorar la eficacia, reducir los
costes y aumentar la rentabilidad, GAMS Utiliza un lenguaje de modelización buscando
formular y resolver un modelo, este sistema general de modelado algebraico está diseñado
para problemas lineales y no lineales, especializado en problemas grandes y complejos;
permite al usuario concentrarse en el problema a modelar haciendo que el planteamiento
sea simple, y el clásico Solver de Excel el cual busca el valor óptimo para una fórmula de
celda denominada celda objetivo, todos las aplicaciones anteriormente mostradas, resuelven
problemas de optimización lineales, la programación cuadrática, y unos que otros
problemas no lineales
Enunciado:
Paso 2 ∂L ∂L ∂ L
= = =0
∂ x1 ∂ x2 ∂ λ
Se establece que.
∂L
=4−4 x 1−2 x 2−3 λ=0
∂ x1
Paso 3
∂L
Se hallan las derivadas parciales con respecto =6−2 x 1−4 x 2−2 λ=0
∂ x2
a cada variable.
∂L
=2−3 x1 −2 x 2=0
∂λ
Paso 4 4 4 1 73
x 2= − λ x 1 = − λ
3 27 3 108
Se despejan x 1 y x 2.
Paso 5 ∂L
=2−3 x1 −2 x 2=0
∂λ
∂L
Sustituimos los valores de x 1 y de x 2 en y
∂λ 1 73 4 4
hallamos el valor de λ .
2−3 ( −
3 108) ( )
λ −2 − λ =0
3 27
180
λ=
251
Paso 6 73
∗180
1 108 32
x 1= − =
3 251 753
Se sustituye el valor de λ en x 1 y en x 2
4
∗180
4 27 308
x 2= − =
3 251 251
Paso 7
El punto óptimo es: 32 308
f( , )
753 251
[Link] Problema 2
Enunciado:
MIN f(x) = – 8x1 – 16x2 + x12 + 4x22
S.A.: x1 + x2 ≤ 5
x1 ≤ 3
x1, x2 ≥ 0
PASOS PROCEDIMIENTO
[Link] Problema 3
Enunciado:
Max Z=25 X 1 +35 X 2−10 X 12−15 X 22
S . A X 1+ 2 X 2 ≤ 30
2 X 1 + X 2 ≤ 40
X 1 , X 2 ≥0
PASOS PROCEDIMIENTO
1. Construir la función de
Lagrange. F ( X , λ , μ )=25 X 1+ 35 X 2−10 X 12−15 X 22− λ1 ( X 1+ 2 X 2 )−λ 2 ( 2 X 1 + X 2) + μ 1 (− X 1 )
∂F
=35−30 X 2−2 λ1−λ 2−μ2=0
∂ X2
Iteracion 1
Tablero final
Cj 0 0 0 0 0 0 1 1 0 0
R R S
V.B X1 X2 λ1 λ2 μ1 μ2 S2 Bj
1 2 1
1 1 1 1
5
X / / / /
0 1 0 0 0 0 0 /
1 2 1 2 2
4
0 0 0 0
1 1 1 1
7
X / / / /
0 0 1 0 0 0 0 /
2 1 3 3 3
6
5 0 0 0
- 3
- - - -
1 - 1
1 1 1 1
S 1 1 7
0 0 0 / / / / 1 0
1 / / /
2 1 1 2
6 6 1
0 5 5 0
0 2
- - - - - 1
-
7 1 1 1 1 0
S 1
0 0 0 / / / / / 0 1 9
2 /
3 1 3 3 1 /
6
0 0 0 0 0 3
Z
0 0 0 0 0 0 1 1 0 0 0
Se obtienen las siguientes soluciones:
5 7 317 109
X 1= ; X 2= ; S 1= ; S 2=
4 6 12 3
5 7 5 2 7 2
Z=25( )+35( )−10( ) −15( )
5. Reemplazar en la función 4 6 4 6
original los valores de X1 y X2
Z=36.042
5
X 1=
4
7
X 2=
6
[Link] Problema 4
Enunciado:
Sujeto a : X 1 +2 X 2=2
X 1 , X 2 ≥0
Solución:
Paso 1
Paso 2
∂Z ∂W
=2 x1 + x 2−2 =λ
∂Z ∂W ∂ x1 ∂ x1
=λ
∂ x1 ∂ x1
∂Z ∂W
=2 x 2+ x 1−3 =2 λ
∂Z ∂W ∂ x2 ∂ x2
=λ
∂ x2 ∂ x2
−3 x 1+1=0
1. 2 x1 + x 2−2=λ
2. 2 x2 + x 1−3=2 λ
1
x 1=
3
( 13 )+2 x −2=0
2
5
x 2=
6
Paso 4
1 2 5 2
Reemplazamos los valores de x 1 y x 2
en la función objetivo y hallamos el
Z ( ) ( ) ( ) ( ) ( ) ( )( 56 )
1 5
, =
3 6 3
+
6
−2
1
3
−3
5
6
+
1
3
Enunciado:
Minimizar la función:
Sujeto a :
x 1+ 2 x 2 ≤ 3
8 x 1+ 5 x 2 ≤10
xi ≥ 0
Solución:
Pasos Procedimiento
8 x 1+ 5 x 2 ≥10
2. De las restricciones:
3. Gráficamente se observa de la
siguiente forma:
4. De la Perpendicular:
x 2=m x 1 +c , con m=2
5. En el punto (2,2)
x 2−2=2( x1−2)
7 4
x 1= , x 2 =
5 5
9
Z min=
5
[Link] Problema 6
Fórmulas utilizadas:
Calculo de varianza
Calculo de covarianza
Enunciado:
Entre tres empresas invierten en acciones por medio de capital: 10´000.000, esto es
cotizado en la bolsa de valores, se tienen dividendos por acción. Rentabilidad esperada: 8%.
Empresa B 1 2 3 4 2
Empresa C 2 2 3 2 2
SOLUCIÓN:
Pasos Procedimiento
1. Hallamos las 1 1
A2= ( 22+12 +22 +32 +22 ) − (2+1+2+3+2)2
varianzas 5 25
correspondiente 1 1
B2= ( 12 +22 +32 +4 2 +22 )− (1+ 2+ 3+4 +2)2
s 5 25
1 1
C 2= ( 22 +22+ 32 +22+ 22) − (2+ 2+ 3+2+2)2
5 25
A2=0.4
B2=1.04
C 2=0.16
2. Usar la fórmula 1 1
A 12= ( 2∗1+ 1∗2+2∗3+3∗4+ 2∗2 )− ¿
para las 5 25
covarianzas 1 1
A 13= (2∗2+1∗2+2∗3+3∗2+2∗2 ) − ¿
5 25
1 1
A 23= (1∗2+2∗2+3∗3+ 4∗2+2∗2 )− ¿
5 25
A12=0.4
A13=0
A23=0.12
A21=0.4
A31=0
A32=0.12
3. Hacemos una
matriz con los
valores que no 0.4 0.4 0
M=0.4 1.04 0.12
dieron las dos 0 0.12 0.16
anteriores
formulas
4. Establecemos el (2+1+2+3+2)
R 1= =2
rendimiento 5
(2+ 2+ 3+2+2)
R 3= =2.2
5
L ( x , y , λ )=¿−2 x 2− y2 + xy +8 x +3 y + λ ( 10−3 x− y )
∂l
=−4 x + y +8−3 λ=0 y =4 x−8+3 λ
∂x
∂l
=−2 y + x +3−λ=0 x =2 y −3+ λ
∂y
∂l
=10−3 x− y=0
∂λ
La enorme cantidad de datos que está siendo La sociedad tiene el potencial de promover el
conocimiento científico e impulsar las innovaciones. Sin embargo, a menudo la gente
carece de suficiente recursos computacionales para analizar sus datos a gran escala de
manera rentable y oportuna. Ofertas de cloud computing acceso a vastos recursos de
computación en una base de pago por uso, que es una forma práctica para analizar sus
enormes conjuntos de datos. Sin embargo, dado que sus datos información confidencial que
debe mantenerse en secreto para fines éticos, seguridad, o razones legales, muchas personas
son renuentes a adoptar el cloud computing. Por primera vez en la literatura, proponemos
un algoritmo de outsourcing seguro para grandes programas cuadráticos (QPs), que es uno
de los más fundamentales problemas en el análisis de datos. Específicamente, basado en
operaciones de álgebra lineal simple.
Enunciado:
Cálculo de la varianza:
Cálculo de la covarianza
Solución:
1
Paso 1 2
σ 11 =
3
[ (0.81)2 +(0.60)2( 0.18)2 ] − 19 [ 0.81+0.60+0.18 ]2
1 1 2
σ 222= [ (0.42)2+(0.29)2 (0.27)2 ]− [ 0.42+0.29+ 0.27 ]
3 9
σ 222=¿0.00442
1
2
σ 33 =
3
[(0.11)2 +(0.10)2 ( 0.12)2 ]− 19 [ 0.11 +0.10+0.12 ] 2
2
σ 33 =0.000066
Paso 2
1 1
σ 12= [ ( 0.81∗0.42 ) + ( 0.60∗0.29 ) +(0.18∗0.27) ]− [ 0.81+0.60+0.18 ][ 0.42+ 0.
3 9
Se calculan las covarianzas.
σ 12=¿0.014466
1 1
σ 13 = [ ( 0.81∗0.11 )+ ( 0.60∗0.10 )+(0.18∗0.12) ]− [ 0.81+0.60+0.18 ][ 0.11+0.1
3 9
σ 13 =−0.0014
1 1
σ 23= [ ( 0.42∗0.11 )+ ( 0.29∗0.10 )+(0.27∗0.12) ]− [ 0.42+0.29+0.27 ] [ 0.11+ 0.1
3 9
σ 23=−000066
Paso 3
σ 211 σ 12 σ 13
Realizar la matriz de varianzas
y covarianzas
(
M 3= σ 21 σ 222 σ 23
σ 31 σ 32 σ 233 )
0.0686 0.014466 −0.0014
(
M 3= 0.014466 0.00442 −000066
−0.0014 −000066 0.000066 )
Paso 4 Lloreda Camacho & Co
0.81+0.60+0.18
=0.53
3
Se realizan los cálculos de la
rentabilidad de los
dividendos. Brigard & Urrutia
0.42+0.29+0.27
=0.3266
3
Cavelier Abogados
0.11+0.10+ 0.12
=0.11
3
Paso 5
Min:
Determinar el sistema de
ecuaciones. z=(0.0686∗Lloreda)2 +(0.00442∗Brigard)2 +( 0.000066∗Cavelier )2+ ( 0.01446
SA:
Paso 6
La mayor varianza es 0.0686, corresponde a Lloreda Camacho & Co, es decir los
dividendos por sus acciones que pagaron los últimos años son dispersos y generan mayor
riesgo.
La menor varianza es 0.000066, corresponde a Cavelier Abogados, es decir los dividendos
por sus acciones que pagaron los últimos años poseen una menor dispersión y generan
menor riesgo.
Si los dividendos de Lloreda Camacho & Co suben o bajan, los dividendos de Brigard &
Urrutia también suben o bajan.
Si los dividendos de Lloreda Camacho & Co suben, los dividendos de Cavelier Abogados
bajan o si los dividendos de Lloreda Camacho & Co bajan, los dividendos de Cavelier
Abogados suben.
Si los dividendos de Brigard & Urrutia suben, los dividendos de Cavelier Abogados bajan o
si los dividendos de Brigard & Urrutia bajan, los dividendos de Cavelier Abogados suben.
En este portafolio donde participan las tres firmas de abogados con respecto al valor
contable, la empresa que ofreció el mejor dividendo fue Lloreda Camacho & Co con 0.53,
lo siguen Brigard & Urrutia con 0.3266 y por ultimo Cavelier Abogados con 0.11.
Una compañía produce artículos de vidrio de alta calidad que incluyen ventanas x1 y
puertas x2, debido a costos de producción, factores externos y otros, las utilidades se dan de
una forma no lineal, asi que la función a maximizar es:
Sujeto a:
Utilizando los multiplicadores de Lagrange
Se busca realizar un análisis de cartera de inversión para la empresa textil Ónix Industry
para realizar inversiones de manera estable, en base a las empresas de distribución que sean
más rentables para realizar inversiones, teniendo como capital base 30’000.000 de pesos, y
una rentabilidad esperada del 14%.
En la siguiente tabla se tiene los dividendos por acción (DPA) de cada una de las empresas
en los últimos cuatro años:
p p p
1 1
2
σ = ∑ X i X j− 2
ij
p k =1 p (∑ )(∑ )
k=1
Xi
k=1
Xj
[Link] de Varianzas:
p p 2
1
σ ii2= ∑ X 2− 1
p k=1 i p 2 ( )
∑ Xi
k =1
2 1 1
σ 11 = ( 1.62 +1.4 2+1.8 2+ 2.22) − ( 1.6+1.4 +1.8+2.2 )2=0.0875
4 16
1 1
σ 222= ( 2.32+1.5 2+2.0 2+1.8 2 )− ( 2.3+1.5+2.0+ 1.8 )2=0.0850
4 16
2 1 1
σ 33 = ( 1.32+ 2.12+1.6 2+2.3 2 )− ( 1.3+2.1+1.6+2.3 )2=0.1569
4 16
1 1
σ 244= ( 2.02 +1.82 +2.4 2+ 2.22) − ( 2.0+1.8+2.4 +2.2 )2=0.05
4 16
2. Calculo de Covarianzas:
1 1
σ❑
12 = ( 1.6∗2.3+1.4∗1.5+1.8∗2.0+2.2∗1.8 ) − ( 1.6+1.4 +1.8+2.2 ) ( 2.3+1.5+2.0+1.8 ) =0.010
4 16
σ❑
12 =0.010 σ ❑21=0.0100 σ❑
31 =0.0463
σ ❑41=0.0450
σ❑
13 =0.0463 σ ❑23=−0.0975 σ❑
32 =−0.0975
σ ❑42=0.0250
σ❑
14 =0.0450 σ ❑24=0.0250 σ❑
34 =−0.0125
σ ❑43=−0.0125
Z=
2
σ 11 X 211 +σ 12 X 1 X 2+ σ 13 X 1 X 3+ σ 14 X 1 X 4 +σ 21 X 2 X 1 +σ 222 X 222+ σ 23 X 2 X 3+ σ 24 X 2 X 4 +σ 31 X 3 X 1 +σ 32 X 3 X 2 +σ 233 X 233+
Z=
[Link]:
- Ŕ1 X 1 + Ŕ2 X 2+ Ŕ 3 X 3+ Ŕ 4 X 4 ≥ R p
( 1.6+1.4+ 1.8+2.2 )
Ŕ1= =1.75
4
( 2.3+1.5+2.0+1.8 )
Ŕ2= =1.9
4
( 1.3+2.1+1.6+2.3 )
Ŕ3= =1.825
4
( 2.0+1.8+2.4+ 2.2 )
Ŕ4 = =2.1
4
6. Problema Final:
min Z=
X 1 + X 2+ X 3 + X 4 =30 ´ 000.000
Xi ≥ 0
1ra: 0 = 0 pesos = 0%
2da: 1.74685 = 17’468.500 pesos = 58.228%
3ra: 1.25315=12’531.500 pesos= 41.772%
4ta: 0 = 0 pesos = 0%
Con un riesgo de 7.89 %
Cada algoritmo fue estudiado y profundizado con ejemplos y ejercicios, tanto clásicos
encontrados en la literatura, como ejercicios propuestos enfocados en una aplicación
específica, utilizando los conocimientos obtenidos en clase y lo investigado para su
solución, junto a diferentes softwares disponibles para la solución de problemas de
investigación de operaciones, como los ya vistos anteriormente, los cuales facilitan en gran
medida el desarrollo de cada problema cuando la complejidad de este es relativamente alta.
4.4 CONCLUSIONES
Existen diversos algoritmos de solución para una gran cantidad de modelos que pueden
presentarse en la PNLC que varían según su complejidad y pueden generar una solución
rápidamente o algunos requiere una sucesión de pasos más compleja o tediosa pero
permiten llegar a la solución óptima que requiere el problema.