Anda di halaman 1dari 5

Linear Programming

Overview
Linear Programming (LP) is a mathematical model that enables the decision maker to optimize (either maximize or minimize) an objective function, subject to one or more constraints. The objective function and the constraints must be expressed as linear relationships among two or more variables, which are the elements over which the decision maker has control in choosing among alternate courses of action. The objective function is the measure by which we evaluate the quality of a particular solution. It is typically denoted by Z, but represents profit, or cost or sales, or some other measure of goodness of the solution. The Z coefficients (cj values) represent the unit contributions of each of the variables to the objective function. The values we select for the variables determine whether a particular combination (solution) will be feasible (violates none of the constraints) or infeasible (violates one or more of the constraints), and how good a solution we have selected (based on the value of the objective function for this solution). The constraints can be of three types: 1. resource limitations, less than or equal to () 2. minimum requirements, greater than or equal to () 3. strict equalities (=) The right-hand sides of the constraints (bi values) represent the limiting values of the constraints. QMS uses the simplex algorithm to formulate and solve LP problems. The general form of the LP problem is: Max/Min Z = c1X1 + c2X2 + Subject to: a11X1 + a12X2 + b1 a21X1 + a22X2 + b2 a31X1 + a32X2 + = b3

Assumptions of the Model


Proportionality The contribution of one unit of a variable to the objective function (cj) and the constraints (aij) is the same for any value of the variable, and doubling or halving the variable's value doubles or halves its contribution. Additivity The objective function and the constraints are linear combinations of their individual terms, and there are no interaction or substitution effects. Divisibility

The variables (Xj) are continuous, and fractional values are permitted. Certainty The values of the coefficients in the objective function (cj) and the constraints (aij and bi) are known and do not vary. Nonnegativity The variables (Xj) and right-hand sides (bi) may not assume negative values; coefficients (cj and aij), however, may be negative values.

Creating/Editing a Linear Programming Problem


You must first dimension the problem by specifying the number of variables (Xj) and the number of constraints. Once you have entered the desired number of constraints and variables you must press in order to properly dimension the input matrix.

You may assign a name to your objective function (e.g. Profit, Cost, or Sales) by typing over the default name Z. Next, you may enter the names for the variables (the defaults are X 1, X 2, etc.). Two additional columns are added to the dimension you supplied for the number of variables; the relational operator (, , or =) and right-hand side (bi) columns are added automatically. Next, select Maximize or Minimize (the default is Maximize). Now enter each of the coefficients of the objective function (cj). It is not necessary to input slack, surplus, or artificial variables, as these will be added automatically. You have the option of naming the constraints (the default values are Constraint 1, Constraint 2, etc.). Enter the constraint coefficient values (aij); the relational operators (, , or =); and righthand side values (bi). The defaults are and zero, respectively. Before you press to generate the solution, you should ensure that the desired output option has been selected at the top of the screen; you may select only one of the output options.

Key Concepts
Objective function A function (family of lines) that is to be either maximized or minimized, such as profit or cost, respectively. The objective function is the sum on the independent variables multiplied by their respective cost or profit coefficients.
n

Opt Z =

cX
j j=1

Constraints Constraints are limitations of resources or mandates of content that prohibit objective functions from going to infinity in the case of maximization or to zero in the case of

minimization. Constraints can be of three types: less than or equal to (), greater than or equal to (), and strict equality (=).

j=1

aX (
ij j

bj,

i = 1, 2, , m

Optimize To find the very best solution given the constraints of a system (to maximize or minimize). Feasible region The region within which a solution may occur without violating any of the constraints of the problem. The collection of all allowable solution points. Infeasible region The area outside the feasible region. The collection of points that violate one or more of the constraints. Infeasible solution Any solution point that lies outside the feasible region. Nonnegativity constraint A constraint implied in every LP problem. It means that negative solution values for any variables are not allowed. Binding constraint Any constraint upon which the optimum solution point lies. Nonbinding constraint Any constraint upon which the optimum solution point does not lie. Slack A measure of the "distance" from a solution point to a nonbinding constraint. Slack is zero for all binding constraints. No feasible solution No feasible region exists; the problem is over-constrained. Unbounded feasible region A situation in which the feasible region is not completely surrounded by constraints. Solutions with one or more values having infinite values are feasible. In itself, it is not a problem. Unbounded solution If the optimum solution is at an unbounded portion of the feasible region, the problem is probably under-constrained and needs to be reformulated. Degenerate solution The number of nonzero variables is less than the number of independent constraints. This situation presents no difficulty and requires no correction. Multiple solutions A situation that occurs when the objective function lies parallel to (lies on top of) a binding constraint. The two "corners" of the feasible region and all points along the constraint line between them are equally desirable solutions. Integer solutions One or both of the independent variables is restricted to whole number (integer) values. Sensitivity analysis (post-optimality analysis) Analysis of the effects on the optimal solution of changes in the original problem.

Tightening a constraint Moving a constraint in a direction that reduces the feasible region. Reducing the bi value of a constraint or increasing the bi value of a constraint. Relaxing a constraint Moving a constraint in a direction that increases the feasible region. Increasing the bi value of a constraint or decreasing the bi value of a constraint. Simplex A systematic, iterative procedure for solving linear programming (LP) problems. Augmentation Adding appropriate slack and artificial variables with appropriate signs and magnitudes to convert the constraints into equalities and to assure a feasible optimal solution, if one exists. Slack variable A variable added to the left-hand side of constraints and subtracted from constraints during augmentation. The value of a slack variable is the amount of leeway in its constraint or the amount by which the constraint could be tightened without affecting the optimal solution. Surplus variable An alternative name for slack variables in constraints. Artificial variable A variable added to the left-hand side of = and constraints to permit an initial solution in the simplex procedure. The value of the artificial variable indicates the amount by which the constraint is violated or the amount by which it must be relaxed in order to make the solution feasible. If a feasible solution exists, no artificial variables exist in the optimal solution. Big M method A procedure whereby the artificial variables are added to the objective function with very large coefficients (e.g. M = 1,000,000) to assure that the artificial variables will not appear in the optimal solution. The M values are positive in minimization problems and negative in maximization problems. Basis variables Those variables (real, slack, and artificial) that appear in the solution at a particular point. These variables have nonnegative values, whereas all others have values of zero. Exchange ratios The aij values in the augmented constraint equations. They represent the number of units of the solution variable in row i that will be driven out of the solution if one unit of the variable in column j is brought into the solution. (Also called substitution ratios). Reduced cost The change in the value of the objective function if one unit of a non-basis variable is brought into the solution. Dual value The rate of change in the optimum value of the objective function for a unit change in the bi value. Entering variable

The nonbasis variable that will be introduced into the solution at the next iterationthe one with the largest positive (maximization problem) or most negative (minimization problem) Zj value. Leaving variable The basis variable that will be driven to zero (out of the solution) by the introduction of the entering variablethe variable with the smallest non-negative i (introduction limit) value. Introduction limits The i values that indicate how many units of the entering variable are required to drive out the basis variable in their respective rows. Key column The column containing the entering variable. Key row The row containing the leaving variable. Key cell The element at the intersection of the key row and key column. Alternate optimality When the objective function is parallel to a binding constraint, it passes through more than one corner of the feasible region. If this occurs at the optimum solution then all of the feasible solutions on that objective function are optimal. Dual simplex An alternate method of the simplex procedure which allows negative slack values in the initial solution and precludes the need for artificial variables. Primal problem Original LP problem. (The dual of the dual is the primal). Dual problem An alternate formulation of the primal problem used to reduce the calculation required to find the solution.
http://quantmethods.com/Demo/Help/LinearProgramming.html

Anda mungkin juga menyukai