help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Fwd: What is this format?]


From: Domingo Alvarez Duarte
Subject: Re: [Fwd: What is this format?]
Date: Tue, 26 Jan 2021 13:33:39 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0

It seems to be a cplex OPL format.

After manually convert it to GMPL (see bellow) I'm getting a segfault with ubuntu 18.04 glpk distribution:

====

glpsol -m cplex2mpl.mod
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 -m cplex2mpl.mod
Reading model section from cplex2mpl.mod...
Reading data section from cplex2mpl.mod...
73 lines were read
Generating result...
Generating cstTemps...
Generating cstPlanches...
Model has been successfully generated
GLPK Integer Optimizer, v4.65
3 rows, 5 columns, 15 non-zeros
5 integer variables, none of which are binary
Preprocessing...
1 row, 0 columns, 0 non-zeros
0 integer variables, none of which are binary
Scaling...
 A: min|aij| =  1.000e+00  max|aij| =  1.000e+00  ratio =  1.000e+00
Problem data seem to be well scaled
Solving LP relaxation...
GLPK Simplex Optimizer, v4.65
1 row, 0 columns, 0 non-zeros
~     0: obj =   1.491000000e+02  infeas =  0.000e+00
OPTIMAL SOLUTION FOUND
Integer optimization begins...
glp_add_cols: ncs = 0; invalid number of columns
Error detected in file api/prob1.c at line 362
Aborted (core dumped)

====

But with my fork at https://github.com/mingodad/GLPK it seems to work:

====

glpsol5 -m cplex2mpl.mod
GLPSOL: GLPK LP/MIP Solver, v4.65, glp_double size 8
Parameter(s) specified in the command line:
 -m cplex2mpl.mod
Reading model section from cplex2mpl.mod...
73 lines were read
73 lines were read
Generating result...
Generating cstTemps...
Generating cstPlanches...
Model has been successfully generated
GLPK Integer Optimizer, v4.65
3 rows, 5 columns, 15 non-zeros
5 integer variables, none of which are binary
Preprocessing...
1 row, 0 columns, 0 non-zeros
0 integer variables, none of which are binary
Scaling...
 A: min|aij| =  1.000e+00  max|aij| =  1.000e+00  ratio =  1.000e+00
Problem data seem to be well scaled
Solving LP relaxation...
GLPK Simplex Optimizer, v4.65
1 row, 0 columns, 0 non-zeros
~     0: obj =   1.491000000e+02  infeas =  0.000e+00
OPTIMAL SOLUTION FOUND
Integer optimization begins...
Long-step dual simplex will be used
+     0: mip =     not found yet <=              +inf        (1; 0)
+     0: >>>>>   1.491000000e+02 <=   1.491000000e+02   0.0% (1; 0)
+     0: mip =   1.491000000e+02 <=     tree is empty   0.0% (0; 1)
INTEGER OPTIMAL SOLUTION FOUND
Time used:   0.0 secs
Memory used: 0.1 Mb (118279 bytes)
Il faut fabriquer :
1.000000 objet(s) 1
1.000000 objet(s) 2
1.000000 objet(s) 3
1.000000 objet(s) 4
1.000000 objet(s) 5
Il faut fabriquer :149.100000
Model has been successfully processed

====

Manually converting to GMPL could be something like this:

====

param N integer;
param D;
param dureeJournee integer;
param planchesJournee integer;
set objets := {1..N};
param planches{objets} integer;
param duree{i in objets} := planches[i] / D;
param profit{objets};

var aFabriquer{objets} , >= 1, integer;

maximize result: sum{o in objets} profit[o]*aFabriquer[o];

s.t. cstTemps: sum{o in objets} duree[o]*aFabriquer[o] <= dureeJournee;
cstPlanches: sum{o in objets} planches[o]*aFabriquer[o] <= planchesJournee;
# une contrainte en plus: chaque objet est au moins fabriqu´e en 1 exemplaire
#auMoins1: forall(o in objets) aFabriquer[o] >= 1;

solve;

#display duree, planches, profit;
printf "Il faut fabriquer :\n";
printf{i in objets} "%f objet(s) %d\n", aFabriquer[i], i;
printf "Il faut fabriquer :%f\n", result;

data;

param N := 5;
param D := 3.4;
param dureeJournee := 8;
param planchesJournee := 40;
param planches := 1 4, 2 5, 3 8, 4 3, 5 7;
param profit := 1 12.6, 2 45.0, 3 8.0, 4 76.0, 5 7.5;

end;

====

On 26/1/21 12:00, Andrew Makhorin wrote:
-------- Forwarded Message --------
From: Alexandre Garreau <galex-713@galex-713.eu>
To: help-glpk@gnu.org
Subject: What is this format?
Date: Tue, 26 Jan 2021 11:46:03 +0100

Hello,

In my university, they use cplex for teaching linear programming, and
I’d 
like not to install anything proprietary on my computer, but I have to 
figure out how to deal with the files given while only doc for cplex,
which 
I don’t have and never used…  Do you know what format this is? it uses 
“.mod” as an extension, apparently that’s what glpk uses for its own 
format… but in this case, it’s not isn’t it? I thought maybe free mps,
but 
reading it with --freemps doesn’t work either.  Here I attach a sample 
file, with the various errors I get:

$ glpsol --freemps charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --freemps charpentier1.mod
Reading problem data from 'charpentier1.mod'...
charpentier1.mod:1: invalid indicator record
MPS file processing error
$ glpsol --glp charpentier1.mod        
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --glp charpentier1.mod
Reading problem data from 'charpentier1.mod'...
charpentier1.mod:1: error: line designator missing or invalid
GLPK LP/MIP file processing error
$ glpsol --math charpentier1.mod    
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --math charpentier1.mod
Reading model section from charpentier1.mod...
charpentier1.mod:1: syntax error in model section
Context:                                                            /
MathProg model processing error
$ glpsol --lp charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --lp charpentier1.mod
Reading problem data from 'charpentier1.mod'...
charpentier1.mod:1: 'minimize' or 'maximize' keyword missing
CPLEX LP file processing error
$ glpsol --freemps -m charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --freemps -m charpentier1.mod
Reading model section from charpentier1.mod...
charpentier1.mod:1: syntax error in model section
Context:                                                            /
MathProg model processing error
$ glpsol --glp -m charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --glp -m charpentier1.mod
Reading model section from charpentier1.mod...
charpentier1.mod:1: syntax error in model section
Context:                                                            /
MathProg model processing error
$ glpsol --math -m charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --math -m charpentier1.mod
Reading model section from charpentier1.mod...
charpentier1.mod:1: syntax error in model section
Context:                                                            /
MathProg model processing error
$ glpsol --lp -m charpentier1.mod 
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
 --lp -m charpentier1.mod
Reading model section from charpentier1.mod...
charpentier1.mod:1: syntax error in model section
Context:                                                            /
MathProg model processing error

reply via email to

[Prev in Thread] Current Thread [Next in Thread]