Un programa lineal compara decisiones sujetas a capacidades o balances lineales. En dos variables podemos ver la región posible; el dual nos permitirá demostrar que ningún otro plan mejora al elegido. Construiremos esa cota sumando desigualdades válidas, para entender sus signos antes de usar una fórmula matricial.
Si necesitas repasar:
1. Un programa lineal tiene coeficientes fijos y decisiones continuas
Cada fila de A representa una condición, b sus límites y c los valores de las decisiones. Las desigualdades vectoriales se leen componente a componente. En nuestros ejemplos de dos decisiones las llamaremos u, v; reservaremos α, β para multiplicadores del dual.
Objetivo y restricciones deben ser afines en las decisiones; una constante del objetivo puede separarse sin cambiar el plan óptimo. Exigir integridad produce programación entera, otra tarea. Primero comprobamos factibilidad: el primer punto que cumple las condiciones no es necesariamente óptimo.
Traducir dos recursos a la forma matricial
Maximizar 3u+2v con u+v≤6, 2u+v≤8 y u, v≥0.
Decisiones
x=(u; v) y c=(3;2).Matriz
A=[[1,1],[2,1]] y b=(6;8), una fila por recurso.Probar
x=(2;4) da Ax=(6;8) y cᵀx=14.Es factible; luego certificaremos si puede mejorarse.
La matriz organiza el mismo problema escrito en palabras.
No se intercambia el orden de las columnas al pasar de una fila a otra.
Detectar qué expresión deja de ser lineal
Comparamos beneficios 3u+2v y uv, con ambas cantidades variables.
Primer objetivo
Los coeficientes tres y dos están fijados; es lineal en u, v.
Producto
En uv, la contribución de u depende de v: no es un coeficiente fijo.
Consecuencia
Aunque las capacidades fueran lineales, maximizar uv sería un problema no lineal.
La forma del objetivo importa tanto como la de las restricciones.
Multiplicar una variable por un parámetro fijo sí conserva linealidad.
2. La geometría permite comparar vértices y reconocer una cara completa de óptimos
Los niveles cᵀx=K son rectas paralelas en dos dimensiones e hiperplanos en general. Maximizar los desplaza hacia valores mayores hasta el último contacto posible. En un politopo no vacío, todo punto es combinación convexa de vértices; su objetivo lineal es la misma combinación de sus valores.
Así algún vértice alcanza el máximo.
Puede haber más de un óptimo: si dos vértices tienen el mismo valor máximo, todo el segmento entre ellos también lo tiene. En regiones generales no acotadas revisamos existencia y estructura antes de prometer un vértice óptimo. Símplex recorre bases; punto interior usa otra estrategia. La geometría no exime de comprobar las restricciones.
Enumerar los vértices de un polígono pequeño
Región u+v≤6, 2u+v≤8, u, v≥0; objetivo 3u+2v.
Vértices
Los ejes dan (0;0),(4;0),(0;6).
Intersectar las dos rectas da u=2, v=4.Valores
Los objetivos respectivos son cero, doce, doce y catorce en (2;4).
Justificar
La región es un politopo no vacío y todos sus puntos son combinaciones convexas de esos vértices; ninguno supera catorce.
El máximo es catorce en (2;4).
Se han comprobado vértices de la intersección, no intersecciones que queden fuera de alguna capacidad.
Cambiar el objetivo puede producir toda una arista óptima
Misma región, ahora maximizar u+v.
Cota directa
La primera restricción da u+v≤6.Alcanzar en dos puntos
(0;6) y (2;4) son factibles y dan seis.
Segmento
Los puntos (s;6−s) con 0≤s≤2 cumplen ambas condiciones y tienen el mismo valor seis.
Hay infinitos óptimos a lo largo de esa arista.
El punto (1;5) sirve; que un algoritmo devuelva un extremo no lo convierte en el único óptimo.
3. El dual busca la mejor cota formada con multiplicadores válidos
Si y≥0 y Ax≤b, sumar filas multiplicadas por sus componentes conserva el sentido: yᵀAx≤yᵀb.
La cadena completa cᵀx≤yᵀAx≤bᵀy es válida para cualquier par factible de este tipo.
Tiene un multiplicador por restricción primal. Puede interpretarse como precios de recursos en algunos modelos, pero su función matemática es construir cotas. El signo no negativo evita invertir una desigualdad; la condición sobre columnas permite cubrir el objetivo con esa combinación.
Construir el dual una columna cada vez
Primal: max 3u+2v con u+v≤6, 2u+v≤8, u, v≥0.
Multiplicadores
α≥0 para la primera capacidad y β≥0 para la segunda.Coeficiente de u
La combinación tiene α+2β; pedimos α+2β≥3.Coeficiente de v
Tiene α+β; pedimos α+β≥2.Objetivo dual
Minimizar 6α+8β con esas condiciones y no negatividad.
El dual busca la cota superior más pequeña de esta familia.
Hay dos multiplicadores porque hay dos capacidades, no por casualidad porque también haya dos decisiones.
Una cota válida no tiene por qué ser exacta
Usamos α=2, β=1/2 en el dual anterior.
Factibilidad dual
α+2β=3 y α+β=2,5≥2; los signos son no negativos.Sumar capacidades
La combinación da 3u+2,5v≤16.Como v≥0, también 3u+2v≤16.Comparar con un plan
El plan (2;4) da catorce, así hay una brecha de dos entre ese plan y esta cota.
Dieciséis es una cota, pero todavía no un valor óptimo certificado.
No se usa un multiplicador negativo para abaratar artificialmente el lado derecho.
4. Cuando una decisión y una cota factibles coinciden, ya hay un certificado
La dualidad débil asegura objetivo primal ≤objetivo dual para todo par factible. Si un plan alcanza una cota dual, ningún primal puede superarlo y ningún dual puede rebajar la cota. Quedan demostrados ambos óptimos sin enumerar todas las decisiones.
Hay que verificar factibilidad de los dos lados y calcular ambos valores con el mismo problema y sus escalas. Una coincidencia de cifras obtenidas con signos o restricciones equivocados no certifica nada. El certificado es la cadena de desigualdades y el punto donde se alcanza.
Cerrar la brecha del ejemplo principal
Plan (u; v)=(2;4), multiplicadores (α; β)=(1;1).
Lado primal
Las capacidades valen seis y ocho; el beneficio es 3·2+2·4=14.
Lado dual
α+2β=3 y α+β=2.La cota dual es 6+8=14.Concluir
Todo plan vale como máximo catorce y este lo alcanza; ambos lados son óptimos.
Catorce queda certificado globalmente.
No depende de creer que el dibujo parece haber llegado al último punto.
Un multiplicador basta en una dimensión
Maximizar 4w con 0≤w≤3.
Plan
w=3 es factible y da doce.Dual
Un α≥0 multiplica w≤3; para cubrir 4w necesitamos α≥4.Certificado
Elegir α=4 da cota 3·4=12, igual al plan.
El máximo es doce.
Un α=3 daría una cota nueve falsa para el objetivo: no cumple α≥4.
5. La dualidad fuerte garantiza una cota alcanzada en el caso lineal finito
El teorema de dualidad fuerte lineal afirma que si el primal de la forma fijada es factible y tiene valor óptimo finito, el dual tiene óptimo alcanzado y el mismo valor. Es un teorema de programación lineal; no se deduce solo de dibujar un caso. No exige estricta factibilidad como condición general del resultado lineal.
Por dualidad débil, si el primal es no acotado por arriba, el dual no puede ser factible: cualquier punto dual daría una cota finita contradictoria. La inversa no se usa automáticamente. Si un lado es infactible, el otro puede ser infactible o no acotado; hay que estudiar las condiciones concretas.
La ausencia de interior no impide una igualdad primal-dual
Maximizar u con u≤0 y u≥0.
Primal
El único punto factible es u=0; vale cero.No existe un u positivo que cumpla estrictamente esos límites.
Dual
Minimizar 0·α con α≥1, α≥0.Alcanzar
α=1 es dual factible y da cero: ambos óptimos existen y coinciden.
La estricta factibilidad no era necesaria para este programa lineal.
No trasladamos sin revisar condiciones adicionales de otros teoremas de dualidad no lineal.
Infactible no determina por sí solo el estado del otro lado
Comparamos dos primales de máximo con u≥0 y objetivo u.
Primer caso vacío
u≤0 y −u≤−1 son incompatibles.Su dual minimiza −β con α−β≥1, α, β≥0.Dual no acotado
α=t+1, β=t para t≥0 es factible y da −t, sin cota inferior.Segundo caso vacío
La condición 0u≤−1 también es imposible.Su dual exigiría 0α≥1 con α≥0, igualmente imposible.Distinguir
En el primer ejemplo el dual es no acotado; en el segundo también es infactible.
No se invierte una implicación de dualidad sin comprobar sus hipótesis.
Las dos construcciones siguen la misma forma primal-dual declarada.
6. La holgura complementaria explica en qué términos desaparece la brecha
Si ambos lados son factibles, todos los sumandos son no negativos. La brecha es cero exactamente cuando cada yᵢ(bᵢ−(Ax)ᵢ)=0 y cada xⱼ((Aᵀy)ⱼ−cⱼ)=0.
Una capacidad con holgura positiva obliga a precio dual cero en un par óptimo. Una decisión primal positiva obliga a igualdad en su condición dual. La inversa de estas frases no siempre vale: una capacidad activa puede tener precio cero. Las igualdades complementarias ayudan a construir candidatos, pero no sustituyen comprobar factibilidad.
Reconstruir los multiplicadores desde una solución positiva
En el ejemplo principal u=2, v=4 y ambas variables son positivas.
Igualdades duales
La complementariedad exige α+2β=3 y α+β=2.Resolver
Restar da β=1 y entonces α=1.Control completo
Son no negativos, las dos capacidades están activas y los valores primal y dual son catorce.
Las ecuaciones complementarias permiten encontrar el certificado.
Si la solución calculada hubiera tenido un multiplicador negativo, no bastaría cumplir estas igualdades.
Un recurso sobrante puede tener precio dual cero
Max 3u+2v con u+v≤6, u≤10, u, v≥0.
Plan
(6;0) es factible; la segunda capacidad deja holgura cuatro.
Precios
α=3 para la primera y β=0 para la segunda dan α+β=3≥3 y α=3≥2.Valor y productos
La cota es 6·3+10·0=18, igual al plan.Holgura cuatro por precio cero y v=0 por holgura dual uno dan productos cero.
La capacidad no utilizada no recibe precio positivo en este certificado.
La desigualdad dual de v puede tener holgura porque la decisión v está en cero.
Una capacidad activa también puede llevar precio cero
Maximizar u con dos restricciones idénticas u≤1 y u≤1, además u≥0.
Óptimo primal
u=1 activa las dos restricciones.Dual
α, β≥0 y α+β≥1; minimizar α+β.Elección
α=1, β=0 da uno y certifica el óptimo.La segunda capacidad está activa y tiene multiplicador cero.
Activa no significa necesariamente precio estrictamente positivo.
Duplicar una restricción puede hacer no únicos los multiplicadores óptimos.
7. Los signos del dual se justifican desde las cotas, no por una trasposición automática
Una desigualdad de tipo ≤ necesita multiplicador no negativo para conservar ese sentido en una cota superior. Una igualdad puede multiplicarse por cualquier número real sin perder la igualdad. Si cambiamos de forma el primal, cambian las reglas duales correspondientes; fijamos primero la convención.
Una variable primal libre puede tener cualquier signo. Para eliminar su contribución al construir la cota lineal, sus coeficientes deben coincidir, en vez de usar solo una desigualdad válida para variables no negativas. También puede representarse como diferencia de dos variables no negativas y deducir ambas condiciones.
Explicar la comparación evita memorizar signos fuera de contexto.
Un multiplicador de igualdad puede ser negativo
Maximizar −u sujeto a u=2 y u≥0.
Valor primal
La única decisión es u=2 y vale −2.Cota de igualdad
Multiplicar u=2 por λ libre da λu=2λ.Para −u≤λu con u≥0 basta λ≥−1.Dual
Minimizar 2λ con λ≥−1, λ libre de signo. λ=−1 da −2 y alcanza la cota exacta.
Imponer λ≥0 sin motivo cambiaría el dual y perdería esta igualdad de valores.
La posibilidad de signo negativo viene de multiplicar una igualdad, no de invertir una capacidad arbitrariamente.
Una variable libre fuerza igualdad de coeficientes en el dual
Maximizar u con u≤2 y u∈R.
Multiplicador
α≥0 conserva αu≤2α.Eliminar la variable libre
Para identificar el coeficiente del objetivo sin depender del signo de u imponemos α=1. Una comparación por α≥1 sola no funciona para todos los u negativos.
Certificado
Con α=1 la cota es dos y el punto u=2 la alcanza.
La condición dual para esa columna libre es una igualdad.
La construcción estándar elimina toda dependencia de la variable libre; no cambia su dominio a u≥0 sin justificar una equivalencia.
8. Una relajación continua aporta una cota que todavía hay que comparar con decisiones enteras
Al quitar integridad, el conjunto factible crece. En un máximo, el óptimo continuo da una cota superior del entero; en un mínimo da una cota inferior. Una respuesta fraccionaria no es por sí sola una decisión entera. Las cotas válidas permiten medir la brecha con la mejor decisión encontrada.
Si el valor objetivo entero debe ser un número entero, podemos redondear una cota en la dirección que conserva su validez. Esto no equivale a redondear las variables. La igualdad entre una cota válida y el valor de un plan entero factible certifica optimalidad; si queda brecha no se anuncia una garantía que aún no tenemos.
Redondear una cota puede certificar sin redondear un plan fraccionario
Maximizar u+v con 2u+2v≤5 y u, v enteros no negativos.
Relajación
En continuo, u+v≤2,5 y ese valor se alcanza, por ejemplo en (2,5;0).
Usar integridad del objetivo
Como u+v debe ser entero, todo plan entero tiene valor ≤2.
Alcanzar
(2;0) cumple la capacidad y da dos, por tanto es óptimo entero.
La cota continua se convierte en una cota entera exacta.
Redondear u=2,5 hacia tres habría violado 2u≤5.
Redondear variables hacia abajo puede destruir una cota inferior de producción
Minimizar u+v con u+v≥1,5, 0≤u, v≤1 y ambas variables enteras.
Continuo
La relajación tiene valor 1,5; (0,75;0,75) es una solución fraccionaria.
Fallo del redondeo
Redondear ambas hacia abajo da (0;0), que no cumple la cantidad mínima.
Decisiones enteras
Entre las cuatro parejas binarias, solo (1;1) alcanza al menos 1,5. Su valor es dos, que coincide con la cota inferior entera obtenida de 1,5.
La dirección de una cota y la factibilidad de una decisión son comprobaciones distintas.
No se ofrece una regla universal de redondear cada variable para resolver programación entera.
Ahora lo resolvemos de principio a fin.
EJEMPLO RESUELTO 1
Certificar un óptimo
Maximiza 3x+2y con x+y≤4 y x,y≥0.
Problema
Maximizar 3x+2y con x+y≤4 y x, y≥0.Proponer
El punto (4;0) es factible y su objetivo es doce.
Construir una cota
Como y≥0, 3x+2y≤3x+3y=3(x+y).Usar la capacidad
3(x+y)≤3·4=12.Certificar
Todo plan factible vale como máximo doce y (4;0) lo alcanza. El multiplicador dual de la capacidad es tres.
Control
3x+2y=3(x+y)−y; para alcanzar doce se necesita y=0 y x+y=4, de donde x=4.
El máximo es 12 en (4,0).
3x+2y≤3(x+y)≤12 para todo punto factible.
EJEMPLO RESUELTO 2
Un límite por precios
Con x≤2,y≤3 y x,y≥0, maximiza 4x+y.
Datos
x≤2, y≤3 y x, y≥0; objetivo 4x+y.Primera cota
Multiplicar x≤2 por cuatro, positivo, da 4x≤8.Segunda cota
Multiplicar y≤3 por uno da y≤3.Sumar
4x+y≤8+3=11 para todos los planes factibles.Alcanzar
x=2, y=3 es factible y da once.Certificado
Los precios no negativos cuatro y uno producen una cota igual al valor alcanzado; el máximo es once.
El máximo es 11.
Multiplica x≤2 por 4 y y≤3 por 1: 4x+y≤11.
Los símbolos que hemos usado
- Primal
- Problema inicial de optimización con una convención explícita.
- Factible
- Punto que satisface todas las restricciones, incluidos signos de variables.
- Poliedro
- Intersección de un número finito de semiespacios y posibles hiperplanos.
- Dual
- Problema que construye cotas al combinar restricciones.
- Holgura
- Diferencia no negativa entre ambos lados de una desigualdad satisfecha, según su forma.
- Brecha primal-dual
- Diferencia entre objetivos dual y primal factibles en las convenciones elegidas.
- Certificado
- Datos verificables que prueban una propiedad, como optimalidad.
Ahora te toca a ti.
Tienes cinco ejercicios. Inténtalos; las pistas te ayudan si te atascas.
Practicar este tema →