SlideShare a Scribd company logo
Cairo University,                                                         Software Packages,
Faculty of Computers and Information,                                     Lab # 1
Decision Support Department,


Solve the below problems using GAMS IDE:


Max z = 5x1 + 4x2
Subject to
        c1      6x1 + 4x2 ≤ 24 ,
        c2      x1 + 2x2 ≤ 6 ,
        c3      -x1 ≤ 1 ,
        c4      x2 ≤ 2 ,
                x1 , x2 ≥ 0


Display the optimal solution .


If- elseif
Check if coefficient of x2 in c3 less than 1, then make it 1
else if coefficient of x2 in c2 more than 1 and coefficient of x1 in c1 more than 2 ; then put
coefficient of x1 in c3 equal -1
else let coefficient of x1 in c4 equal 0


Sensitivity analysis
Change the value of r.h.s of c2 from 6 to 10.
See the impact on the solution.


Writing to file
Write the results on a text file before and after sensitivity analysis.
$eolcom ->
 Sets
    i        / i1,i2 /
    j        / j1 * j4 / ;
 parameters objcoeff(i) / i1 5, i2 4/
           rhs(j)/j1 24, j2 6, j3 1, j4 2 /;
 Table d(j,i)
              i1             i2
    j1         6             4
    j2         1             2
    j3         -1            0
    j4         0             1        ;
 if (d("j3","i2")<1,              d("j3","i2")=1 ;
 elseif (d("j2","i2")>1) and (d("j1","i1")>2),d("j3","i1")=-1;
 else d("j4","i1")=0;);
 Variables
    x(i)
    z          ;
 Positive Variable x ;
 Equations
    profit
    constraint(j)            ;
 profit ..          z =e= sum(i, objcoeff(i)*x(i)) ;
 constraint(j) .. sum(i,d(j,i)* x(i)) =l= rhs(j) ;
 Model examp /all/ ;
 Solve examp using lp max z;
 display x.l,z.l;
 file results /exampresults.txt/             -> write to afile
 put results;
 put 'First example results'// ;
loop (i,put i.tl, x.l(i)/);
put 'objective value' z.l//;
rhs("j2") = 10;           -> senstivity analysis
Solve examp using lp max z;
display x.l,z.l;
put results;                   -> write to afile
put 'Senstivity Example results'// ; -> write text to a file
loop (i,put i.tl, x.l(i)/);       -> t1 means value of i
put 'objective value' z.l//;        -> / is endl

More Related Content

Similar to Lab 5

Csci101 lect04 advanced_selection
Csci101 lect04 advanced_selectionCsci101 lect04 advanced_selection
Csci101 lect04 advanced_selection
Elsayed Hemayed
 
Tensor Train data format for uncertainty quantification
Tensor Train data format for uncertainty quantificationTensor Train data format for uncertainty quantification
Tensor Train data format for uncertainty quantification
Alexander Litvinenko
 
Regret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function MaximizationRegret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function Maximization
Tasuku Soma
 
Precalculus 1 chapter 2
Precalculus 1 chapter 2Precalculus 1 chapter 2
Precalculus 1 chapter 2
oreves
 
Yoyak ScalaDays 2015
Yoyak ScalaDays 2015Yoyak ScalaDays 2015
Yoyak ScalaDays 2015
ihji
 
Integration techniques
Integration techniquesIntegration techniques
Integration techniquesKrishna Gali
 
MLHEP Lectures - day 3, basic track
MLHEP Lectures - day 3, basic trackMLHEP Lectures - day 3, basic track
MLHEP Lectures - day 3, basic track
arogozhnikov
 
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
dnbtraniemyu
 
Practical and Worst-Case Efficient Apportionment
Practical and Worst-Case Efficient ApportionmentPractical and Worst-Case Efficient Apportionment
Practical and Worst-Case Efficient Apportionment
Raphael Reitzig
 
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docxDivide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
jacksnathalie
 
Solving by factoring remediation notes
Solving by factoring remediation notesSolving by factoring remediation notes
Solving by factoring remediation notes
Michelle Barnhill
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Per Kristian Lehre
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
PK Lehre
 
Polynomials with common monomial factors.pptx
Polynomials with common monomial factors.pptxPolynomials with common monomial factors.pptx
Polynomials with common monomial factors.pptx
GeraldineArig2
 
Anniversary2012
Anniversary2012Anniversary2012
Anniversary2012
J_H_Davenport
 
Las absolute inequalities
Las absolute inequalitiesLas absolute inequalities
Las absolute inequalities
Effendi Naza
 
Kernels and Support Vector Machines
Kernels and Support Vector  MachinesKernels and Support Vector  Machines
Kernels and Support Vector Machines
Edgar Marca
 
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
Numerical Methods for Engineers 6th Edition Chapra Solutions ManualNumerical Methods for Engineers 6th Edition Chapra Solutions Manual
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
webavaq
 

Similar to Lab 5 (20)

Csci101 lect04 advanced_selection
Csci101 lect04 advanced_selectionCsci101 lect04 advanced_selection
Csci101 lect04 advanced_selection
 
Tensor Train data format for uncertainty quantification
Tensor Train data format for uncertainty quantificationTensor Train data format for uncertainty quantification
Tensor Train data format for uncertainty quantification
 
Regret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function MaximizationRegret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function Maximization
 
Precalculus 1 chapter 2
Precalculus 1 chapter 2Precalculus 1 chapter 2
Precalculus 1 chapter 2
 
Yoyak ScalaDays 2015
Yoyak ScalaDays 2015Yoyak ScalaDays 2015
Yoyak ScalaDays 2015
 
Integration techniques
Integration techniquesIntegration techniques
Integration techniques
 
presentacion
presentacionpresentacion
presentacion
 
MLHEP Lectures - day 3, basic track
MLHEP Lectures - day 3, basic trackMLHEP Lectures - day 3, basic track
MLHEP Lectures - day 3, basic track
 
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
9 Multi criteria Operation Decision Making - Nov 16 2020. pptx (ver2).pptx
 
Practical and Worst-Case Efficient Apportionment
Practical and Worst-Case Efficient ApportionmentPractical and Worst-Case Efficient Apportionment
Practical and Worst-Case Efficient Apportionment
 
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docxDivide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
Divide-and-Conquer & Dynamic ProgrammingDivide-and-Conqu.docx
 
Solving by factoring remediation notes
Solving by factoring remediation notesSolving by factoring remediation notes
Solving by factoring remediation notes
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
 
Polynomials with common monomial factors.pptx
Polynomials with common monomial factors.pptxPolynomials with common monomial factors.pptx
Polynomials with common monomial factors.pptx
 
Anniversary2012
Anniversary2012Anniversary2012
Anniversary2012
 
Las absolute inequalities
Las absolute inequalitiesLas absolute inequalities
Las absolute inequalities
 
Kernels and Support Vector Machines
Kernels and Support Vector  MachinesKernels and Support Vector  Machines
Kernels and Support Vector Machines
 
random test
random testrandom test
random test
 
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
Numerical Methods for Engineers 6th Edition Chapra Solutions ManualNumerical Methods for Engineers 6th Edition Chapra Solutions Manual
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
 

Lab 5

  • 1. Cairo University, Software Packages, Faculty of Computers and Information, Lab # 1 Decision Support Department, Solve the below problems using GAMS IDE: Max z = 5x1 + 4x2 Subject to c1 6x1 + 4x2 ≤ 24 , c2 x1 + 2x2 ≤ 6 , c3 -x1 ≤ 1 , c4 x2 ≤ 2 , x1 , x2 ≥ 0 Display the optimal solution . If- elseif Check if coefficient of x2 in c3 less than 1, then make it 1 else if coefficient of x2 in c2 more than 1 and coefficient of x1 in c1 more than 2 ; then put coefficient of x1 in c3 equal -1 else let coefficient of x1 in c4 equal 0 Sensitivity analysis Change the value of r.h.s of c2 from 6 to 10. See the impact on the solution. Writing to file Write the results on a text file before and after sensitivity analysis.
  • 2. $eolcom -> Sets i / i1,i2 / j / j1 * j4 / ; parameters objcoeff(i) / i1 5, i2 4/ rhs(j)/j1 24, j2 6, j3 1, j4 2 /; Table d(j,i) i1 i2 j1 6 4 j2 1 2 j3 -1 0 j4 0 1 ; if (d("j3","i2")<1, d("j3","i2")=1 ; elseif (d("j2","i2")>1) and (d("j1","i1")>2),d("j3","i1")=-1; else d("j4","i1")=0;); Variables x(i) z ; Positive Variable x ; Equations profit constraint(j) ; profit .. z =e= sum(i, objcoeff(i)*x(i)) ; constraint(j) .. sum(i,d(j,i)* x(i)) =l= rhs(j) ; Model examp /all/ ; Solve examp using lp max z; display x.l,z.l; file results /exampresults.txt/ -> write to afile put results; put 'First example results'// ;
  • 3. loop (i,put i.tl, x.l(i)/); put 'objective value' z.l//; rhs("j2") = 10; -> senstivity analysis Solve examp using lp max z; display x.l,z.l; put results; -> write to afile put 'Senstivity Example results'// ; -> write text to a file loop (i,put i.tl, x.l(i)/); -> t1 means value of i put 'objective value' z.l//; -> / is endl