Successive linear programming
- Successive linear programming
SLP - Successive Linear Programming
Linear programming is a powerful technique for optimisation but the requirement that all constraints be linear can make it difficult to write models that represent the real world closely enough to produce useful answers. Successive Linear Programming (SLP) is an extension of this technique which allows the optimisation of problems with non-linear characteristics as a series of linear approximations.
It is relatively easy to make a linear approximation to a nonlinear objective function and any nonlinear constraints, starting at some estimate of the optimal solution. This produces a linear program, which is solved to get an optimum and corresponding values of the variables.
A new linear approximation can now be made, and solved, and then the process repeated. The approach is thus similar conceptually to equation solving procedures which use linear approximations.
Unfortunately, because a linear program always finds its optimum on a constraint, if the optimum for the NLP is not in fact constrained, this method will not find it! Although it has some disadvantages, SLP may be an effective method if the optimum is known to lie on a constraint. There are even ways of making it work when the optimum is unconstrained, but this uses a concept known as a `trust region' and is not a commonly available technique.
SLP is not much used for process engineering problems, SQP, described below, is more usual.
External links
* [http://www.see.ed.ac.uk/~jwp/MSO/section5/overview.html Modelling, Simulation and Optimisation ]
Wikimedia Foundation.
2010.
Look at other dictionaries:
Linear programming — (LP, or linear optimization) is a mathematical method for determining a way to achieve the best outcome (such as maximum profit or lowest cost) in a given mathematical model for some list of requirements represented as linear relationships.… … Wikipedia
Dynamic programming — For the programming paradigm, see Dynamic programming language. In mathematics and computer science, dynamic programming is a method for solving complex problems by breaking them down into simpler subproblems. It is applicable to problems… … Wikipedia
Nonlinear programming — In mathematics, nonlinear programming (NLP) is the process of solving a system of equalities and inequalities, collectively termed constraints, over a set of unknown real variables, along with an objective function to be maximized or minimized,… … Wikipedia
Successive over-relaxation — (SOR) is a numerical method used to speed up convergence of the Gauss–Seidel method for solving a linear system of equations. A similar method can be used for any slowly converging iterative process. It was devised simultaneously by David M.… … Wikipedia
Linear probing — is a scheme in computer programming for resolving hash collisions of values of hash functions by sequentially searching the hash table for a free location. [cite book |last=Dale |first=Nell |title=C++ Plus Data Structures |year=2003… … Wikipedia
Linear congruential generator — A linear congruential generator (LCG) represent one of the oldest and best known pseudorandom number generator algorithms. [ [http://demonstrations.wolfram.com/LinearCongruentialGenerators/ Linear Congruential Generators] by Joe Bolte, The… … Wikipedia
Non-linear least squares — is the form of least squares analysis which is used to fit a set of m observations with a model that is non linear in n unknown parameters (m > n). It is used in some forms of non linear regression. The basis of the method is to… … Wikipedia
List of numerical analysis topics — This is a list of numerical analysis topics, by Wikipedia page. Contents 1 General 2 Error 3 Elementary and special functions 4 Numerical linear algebra … Wikipedia
Criss-cross algorithm — This article is about an algorithm for mathematical optimization. For the naming of chemicals, see crisscross method. The criss cross algorithm visits all 8 corners of the Klee–Minty cube in the worst case. It visits 3 additional… … Wikipedia
Iterative method — In computational mathematics, an iterative method is a mathematical procedure that generates a sequence of improving approximate solutions for a class of problems. A specific implementation of an iterative method, including the termination… … Wikipedia