onderdeel van de mathematische programmering (het vinden van het maximum of minimum van een functie van een aantal variabelen x1 ..., xn waarbij de variabelen tevens moeten voldoen aan een stel nevenvoorwaarden). De te maximaliseren (minimaliseren) functie (de doelfunctie) is niet-lineair, wat ook voor de nevenvoorwaarden (die de vorm f1 (x1; ..., xn) = b1 hebben) het geval kan zijn.
Problemen op het gebied van de niet-lineaire programmering die men met redelijk succes kan oplossen zijn die waarbij de doelfunctie continu en differentieerbaar is, de f1 continue functies zijn van de vector x = (x1 ..., xn en het gebied R in de n-dimensionale euclidische ruimte, waarvan de begrenzing door de nevenvoorwaarden bepaald wordt, samenhangend is. Men onderscheidt twee gevallen:1.Alle nevenvoorwaarden zijn lineair. De meeste voor dit geval beschikbare methoden behoren tot de klasse van de methoden van toelaatbare richtingen, waarbij, uitgaande van een punt x dat aan alle nevenvoorwaarden voldoet (dus tot R behoort) eerst een bruikbare richting gevonden wordt (d.w.z. een zodanige richting dat vanuit x het gebied R niet onmiddellijk verlaten wordt en de waarde van de doelfunctie althans aanvankelijk stijgt); vervolgens wordt vanuit x een stap s in de gekozen richting gedaan, waarbij de staplengte bepaald wordt door de eis dat de doelfunctie in de gekozen richting gemaximaliseerd wordt, echter onder de voorwaarde dat R niet verlaten wordt. Dit is een ééndimensionaal maximaliseringsprobleem. Op deze wijze is een beter punt x verkregen en kan het proces herhaald worden. De methoden van toelaatbare richtingen combineren in hun praktische uitwerking veelal ideeën ontleend aan de simplexmethode voor lineaire programmering.
2.Sommige van de nevenvoorwaarden zijn niet-lineair. Men kan de niet-lineaire ongelijkheden nu ‘in de doelfunctie stoppen’, b.v. door als nieuwe doelfunctie te nemen:
g(x,r) = f(x) -rΣ l/(b1 f1(x)) en deze functie voor een reeks waarden van r (rk>rk+1>0, lim r<k = 0) te maximaliseren als functie van x onder de voorwaarde dat aan de lineaire beperkingen voldaan wordt. We krijgen dus een reeks maximaliseringsproblemen met lineaire bijvoorwaarden, waarvoor de onder
1. genoemde methoden toepasbaar zijn. De eindoplossing xk van het ke deelprobleem zal als startoplossing van het (k + l)e dienen. Het is dan niet moeilijk in te zien dat, als voor het startpunt x van het eerste deelprobleem geldt dat f1 (xo) < b1, voor alle niet-lineaire voorwaarden hetzelfde zal blijven gelden voor alle volgende starten eindoplossingen: het gebied R wordt dus nimmer verlaten. Voor de rij waarden f(xk) blijkt te gelden dat lim f(xk) = max {f(x) | xЄR}.
Toepassingen van niet-lineaire programmering zijn te vinden bij economische planning-problemen, in de theorie van de economische groei, bij het ontwerpen van fabrieksinstallaties, bij aanpassingsen schattingsproblemen, en bij besturingsproblemen van allerlei aard.
LITT. Béla Martos, Non linear programming theory and methods (1975).