A MINLP GAMS implementation of the example model mentioned in "An overview of genetic algorithms for the solution of optimisation problems"

An overview of genetic algorithms for the solution of optimisation problems

Simon Mardle and Sean Pascoe
University of Portsmouth

Set i boat class /i1*i3/
    j fish species /j1*j3/

    P(j) Price of fish species j / j1 2.5, j2 2, j3 1.5 /
    F(i) Fixed Costs of boat class i / i1 1, i2 0.8, i3 0.8 /
    V(i) Variable Costs of boat class i / i1 0.01, i2 0.008, i3 0.008 /
    K(j) Carrying capacity of fish species j / j1 2000, j2 2500, j3 4000 /
    R(j) Growth rate of fish species j / j1 0.1, j2 0.5, j3 0.3 /
    ue(i) upper bound on effort / i1 275, i2 160, i3 200 /;

Table Q(i,j) Catchability coefficient of fish species j by boat class i
   j1       j2      j3
i1 0.0002   0.0001
i2          0.0002  0.00005
i3                  0.0002

    z     profit
    xb(i) boats
    xe(i) effort
    xf(j) fishing mortality
    xc(j) catch
    xl(j) landings;
Positive Variables xe,xf,xc,xl;
Integer Variables xb;

    obj   revenue from landings minus the fixed and variable costs of the fishing
    e1(j) fishing mortality
    e2(j) evaluates catch from this fishing mortality rate
    e3(j) constrains landings to be no greater than catch;

obj..       z =e= sum(j, P(j)*xl(j)) - sum(i, F(i)*xb(i) + V(i)*xe(i)*xb(i));
e1(j).. xf(j) =e= sum(i, Q(i,j)*xe(i)*xb(i));
e2(j).. xc(j) =e= K(j)*xf(j) - K(j)/R(j)*sqr(xf(j));
e3(j).. xl(j) =l= xc(j);

model fish /all/;
option optcr=0;
xe.up(i) = ue(i);
xl.up(j) = 500;


solve fish max z using rminlp;
solve fish max z using minlp;
gams/a_gams_implementation_of_the_example_model_mentioned_in_an_overview_of_genetic_algorithms_for_the_solution_of_optimisation_problems.txt · Last modified: 2007/09/27 03:08 (external edit)