270 likes | 515 Views
GAMS: General Algebraic Modeling System Linear and Nonlinear Programming. The lectures are based on: -- McCarl, Bruce A., and Thomas H. Spreen . Applied Mathematical Programming Using Algebraic Systems. Available at: http://agecon.tamu.edu/faculty/mccarl/regbook.htm
E N D
GAMS:General Algebraic Modeling SystemLinear and Nonlinear Programming
The lectures are based on: --McCarl, Bruce A., andThomas H. Spreen.Applied Mathematical Programming Using Algebraic Systems. Available at: http://agecon.tamu.edu/faculty/mccarl/regbook.htm --Paris, Q.An Economic Interpretation of Linear Programming.Iowa State University Press: Ames, Iowa, 1991.
Outline 1. Types of Programming Problems • the general mathematical programming problem • different types of mathematical programming problems 2. Linear Programming (LP) • assumptions of LP • an example of LP problem • duality in LP (primal & dual) • programming without using algebraic modeling 3. Nonlinear Programming (NLP) • price endogenous model • comparison with LP
Types of Programming Problems ♣ The general mathematical programming problem: Optimize Subject to (s.t.) -- X is a vector of decision variables -- F(X) is called the objective function -- G(X) must belong to S1 -- the variables individually must fall into S2
2. Linear Programming ♣ Assumptions of LP
♣ An Example of LP Problem GAMS program and results: see handout 1!
-- Economic theory indicates: scarce resources have value -- In LP models, scarce resources are allocated, so they should be, valued -- Whenever we solve an LP problem, we solve two problems: the primal resource allocation problem, and the dual resource valuation problem -- If the primal problem has nvariables and m constraints, the dual problem will have mvariables and nconstraints ♣ Duality in LP
Primal and Dual Algebra Primal Dual
Primal Example Dual
GAMS program and results for dual problem: see handout 2!
Important Economic Interpretation -- y1 is associated with the first primal constraint (land), y2 with the second primal constraint (labor) -- dual variables (yi) can be interpreted as the marginal value (or shadow price) of each resource Thus, ☺ variable y1 gives the marginal value of the 1st resource (land) ☺ variable y2 gives the marginal value of the 2nd resource (labor)
☺ the value of the land and labor used in producing a unit of x1 should be greater than or equal to the marginal revenue contribution of x1 (40, price of x1) ☺ the marginal value of land plus twice the marginal value of labor should be greater than or equal to the profit earned by producing x2 (30, price of x2)
♣ Programming without using algebraic modeling -- take the above primal problem as an example: see handout 3! -- only good for small sized problems ♠ for medium or large sized models (more than 30 rows and/or columns) ♠ to concisely state problems in an abstract general fashion → use algebraic modeling!!!
Before we finish LP, remember that the default LP solver is Cplex!!!
3. Nonlinear Programming • turn our attention to continuous, certain, nonlinear optimization problems • relax the LP additivity and proportionality assumptions
focus on nonlinear objective function • It is much more difficult for nonlinear solvers to deal with nonlinear constraints • general NLP solver is Minos!!!
♣price endogenous model -- a quadratic programming problem -- originally motivated by Enke and Samuelson -- fully developed by Takayama and Judge (1973)
-- general form: maximizes the integral of the area underneath the demand curve minus the integral underneath the supply curve s.t. a supply-demand balance -- the resultant objective function value of the general form is commonly called consumers' plus producers' surplus
♣Comparison with LP Two important changes: • the objective function equation contains the nonlinear squared terms • in the SOLVE statement we indicate that the problem is a nonlinear programming problem by saying SOLVE USING NLP