Anar al contingut

Algoritme símplex

De L'Enciclopèdia, la wikipedia en valencià
Algoritme símplex
Un sistema de desigualtats llineals definix un poliedre com una regió factible. L'algoritme símplex comença en un vèrtiç i es mou a lo llarc de les arestes del poliedre fins que alcança el vèrtiç de la solució òptima.

En optimisació matemàtica, el terme algoritme símplex habitualment es referix a un conjunt de métodos molt usats per a resoldre problemes de programació llineal, en els quals es busca el màxim d'una funció llineal sobre un conjunt de variables que satisfaça un conjunt d'equacions o inecuaciones llineals. El algoritme símplex primal va ser desenrollat pel matemàtic nortamericà George Dantzig en 1947, i procedix examinant vèrtiços adjacents del poliedre de solucions. Un algoritme símplex és d'alguna manera un algoritme de pivot.

Un método cridat de manera similar, pero no relacionat a l'anterior, és el método de Nelder-Pixeu (1965) o método de descens (o ascens) símplex; un método numèric que busca un mínim (o màxim) local d'una funció qualsevol examinant en cada pas els vèrtiços d'un símplex.

L'algoritme del método símplex va ser elegit com un dels 10 algoritmes més importants de el XX.[1]

Entrada del problema

[editar | editar còdic]

Considerem un problema de programació llineal,

{Maximizarz=𝐜T𝐱Sujeto a:𝐀𝐱𝐛𝐱0

L'algoritme símplex requerix que la matriu del problema estiga en la seua forma aumentada. El problema pot ser descrit com seguix:

Maximizar z en:
[1𝐜T00𝐀𝐈][z𝐱𝐱s]=[0𝐛]
𝐱,𝐱s0

a on x són les variables des de la forma estàndar, xs són les variables de chala introduïdes en el procés de aumentación, c conté els coeficients d'optimisació, descriu el sistema d'equacions contretes, i z és la variable a ser maximizar.

El sistema està típicament no determinat, ya que el número de variables excedix el número d'equacions. La diferència entre el número de variables i el número d'equacions nos dona els graus de llibertat associats al problema. Qualsevol solució, òptima o no, inclourà un número de variables de valor arbitrari. L'algoritme símplex usa zero com a valor arbitrari, i el número de variables en valor zero és igual als graus de llibertat.

Les variables en valors diferents de zero seran cridades "variables bàsiques", les demés "variables no bàsiques".

Esta forma simplifica el trobar la solució factible bàsica inicial, ya que totes les variables de la forma estàndar poden ser elegides per a ser no bàsiques (zero), mentres que totes les noves variables introduïdes en la forma aumentada, seran bàsiques (diferents de zero), ya que el seu valor pot ser calculat trivialment (𝐱si=𝐛j per a elles, ya que la matriu problema aumentada en diagonal és el seu costat dret)

En cada una de les desigualtats que es plantegen en el model matemàtic de programació llineal, es plantegen desigualtats de <, >, ≤, ≥ o =; estes desigualtats es convertixen en igualtats completant en variables de chala si es tracta de menor o igual que, o menor que; en el cas de que siga major o igual que o major que, es completa en variables d'excedent, estes en signe negatiu ya que com el seu nom ho indica, és una cantitat que està d'excedent i cal llevar per a convertir-la en igualtat; en cas es manege el =, es manegen les variables artificials.

Conceptes bàsics

[editar | editar còdic]

Forma estàndar

És l'igualació de les restriccions del model plantejat, aixina com l'aument de variables de chala, o be la resta de variables d'excés.

Erro al crear miniatura:

Forma canònica

En el método símplex és de prou utilitat la forma canònica, especialment per a explorar la relació de dualitat, a on un problema de programació llineal es troba en la forma canònica si es complixen les següents condicions:
Per al cas de la forma canònica d'maximización:
  • La funció objectiu deu ser d'maximización
  • Les variables de decisió no negatives.
  • Les restriccions són del tipo .
Per al cas de la forma canònica de la dieta:
  • La funció objectiu és minimisada.
  • Les restriccions són de tipo .
  • Les variables de decisió són no negatives.
Eixemple:
Forma Canònica d'Maximización
{Maximizarz=2x1+3x2+5x3Sujeto a:2x1+3x2+8x385x1+2x2+4x39x1,x2,x30
Forma Canònica de la dieta
{Minimizarz=x13x2Sujeto a:x1x26x1+2x28x1,x20

Model ampliat

[editar | editar còdic]

Quan s'introduïx en cada restricció una variable artificial que no continga una variable de chala.

Erro al crear miniatura:
Eixemple d'un Model d'Maximisació en la seua Forma Ampliada

Variables d'entrada

Estes solen trobar-se en un criteri que es coneix com a “Condició de optimalidad”, en un model, ya siga d'maximisació o minimisació, i es referix a la variable no bàsica en el rengló “z” en el coeficient més negatiu, si es tracta d'una maximización, o el coeficient més positiu, si es tracta d'una minimisació, la qual, en la taula de solució anterior, a excepció de la primera taula, esta variable era una variable bàsica.

Variables d'eixida

Esta variable és un punt extrem que es troba en un criteri conegut com a “condició de factibilidad”, en un model, ya siga d'optimisació o minimisació, i es referix a la variable bàsica associada en la mínima raó no negativa en el coeficient més negatiu, si es tracta d'una maximización, o el coeficient més positiu, si es tracta d'una minimisació, la qual, en la taula de solució següent, passarà a ser variable no bàsica.

Variables bàsiques Variables no bàsiques Variable d'entrada Variable d'eixida
A X3, X4, X5, X6 X1, X2 X1 X2
B X3, X4, X5, X1 X6, X2 X2 X3
C X2, X4, X5, X1 X6, X3 X6 X4
D X2, X6, X5, X1 X4, X3 X3 X1
I X2, X6, X5, X3 X4, X1 X4 X2

Variable degenerada

Una variable degenerada és una variable bàsica que val zero. Gràficament açò pot ocórrer quan més de dos rectes toquen una sola intersecció en el mateix punt.

Base

Conjunt de variables bàsiques. En l'eixemple anterior, la base és {X3, X4, X5, X6}

Variable no restringida

Variable artificial

S'usa una variable artificial quan les restriccions són = i i succeïx quan l'orige no es troba dins de la regió factible, tractant de dur el model a una atra dimensió en la qual l'orige si existixca en la regió.

És aquella que pot prendre tota classe de valors positius, zero i negatius pot escriure's com la diferència de dos variables no-negatives.

Funció objectiu:

Definix l'efectivitat del model com a funció de les variables de decisió.

Solució òptima

[editar | editar còdic]
Erro al crear miniatura:
Eixemple gràfic de la solució òptima

Sempre està associada a un punt extrem de la regió factible i satisfà totes les restriccions si s'evalua en elles aixina com és el punt que en el cas d'maximisació fa que el valor de z siga el màxim (més gran) i el cas de minimisació siga el mínim (més menut).

Solució òptima múltiple

[editar | editar còdic]

Existixen problemes llineals que no tenen una solució òptima única, sino que al contrari, tenen un número infinit de solucions.Per a detectar una solució múltiple en la taula òptima, es deurà tindre a lo manco una variable en la seua Zj-Cj=0 no bàsica.

Vore també

[editar | editar còdic]
  1. «The Best of the 20th Century: Editors Name Top 10 Algorithms».SIAM News.33(4)Consultat el 31 de giner de 2018.


Referències

[editar | editar còdic]