@Olex : I tried it now, with Julia v1.10.4, and it looked like it worked alright.
At first I thought you were using the PROTO model database for the bigger model, which I used for my Julia experiment in 2018, but now I realize this must be the database for the smaller test model, the Utopia model (in GAMS it was only 614 rows, 632 columns and 2000 non-zeros), correct?
Here is my console log output from the run:
Define sets: 0.078074 seconds (90.67 k allocations: 6.188 MiB, 32.06% gc time, 91.65% compilation time)
Load demo data (sets and parameters): 5.537421 seconds (14.83 M allocations: 1.004 GiB, 8.09% gc time, 86.74% compilation time)
Compute additional parameters: 0.175782 seconds (370.70 k allocations: 25.610 MiB, 95.83% compilation time)
Compute additional sets: 1.650677 seconds (3.08 M allocations: 212.797 MiB, 2.42% gc time, 98.64% compilation time)
Create Variables: 92.028063 seconds (235.78 M allocations: 21.695 GiB, 71.83% gc time, 0.95% compilation time)
Objective Function: 0.186049 seconds (190.58 k allocations: 13.096 MiB, 95.06% compilation time)
Specify constraints: 31.989180 seconds (477.64 M allocations: 22.244 GiB, 29.73% gc time, 30.81% compilation time)
Running HiGHS 1.7.2 (git hash: 5ce7a2753): Copyright © 2024 HiGHS under MIT licence terms
Coefficient ranges:
Matrix [1e-02, 1e+04]
Cost [1e+00, 1e+00]
Bound [1e-01, 1e+01]
RHS [9e-02, 8e+03]
Presolving model
265 rows, 288 cols, 966 nonzeros 3s
228 rows, 245 cols, 826 nonzeros 3s
Presolve : Reductions: rows 228(-376); columns 245(-46644766); elements 826(-1094)
Solving the presolved LP
Using EKK dual simplex solver - serial
Iteration Objective Infeasibilities num(sum)
0 1.2861637975e+04 Pr: 30(74.9799) 4s
161 3.8706151237e+04 Pr: 0(0); Du: 0(8.52651e-14) 4s
Solving the original LP from the solution after postsolve
Model status : Optimal
Simplex iterations: 161
Objective value : 3.8706151237e+04
HiGHS run time : 14.87
Solve model: 297.598005 seconds (279.92 M allocations: 29.121 GiB, 54.82% gc time, 0.04% compilation time: 61% of which was recompilation)
I think the model stats reported by HiGHS confirm it being the small Utopia model (but with 46.6 million variables?!). Some initial comments:
• Most of the time appears spent into creating unnecessary variables (92 secs!); I am sure this could be easily reduced close to zero;
• Constraints generation seems to take 32 secs; this may be affected by the inefficient handling of variables;
• Solving with HiGHS appears to take 300 secs (including I/O overheads); again probably inefficient due to the variables;
• At this point, it would indeed not make much sense to test with the bigger PROTO model. The times for Utopia should first be reduced close to zero, which should not be too dfficult.
At first I thought you were using the PROTO model database for the bigger model, which I used for my Julia experiment in 2018, but now I realize this must be the database for the smaller test model, the Utopia model (in GAMS it was only 614 rows, 632 columns and 2000 non-zeros), correct?
Here is my console log output from the run:
Define sets: 0.078074 seconds (90.67 k allocations: 6.188 MiB, 32.06% gc time, 91.65% compilation time)
Load demo data (sets and parameters): 5.537421 seconds (14.83 M allocations: 1.004 GiB, 8.09% gc time, 86.74% compilation time)
Compute additional parameters: 0.175782 seconds (370.70 k allocations: 25.610 MiB, 95.83% compilation time)
Compute additional sets: 1.650677 seconds (3.08 M allocations: 212.797 MiB, 2.42% gc time, 98.64% compilation time)
Create Variables: 92.028063 seconds (235.78 M allocations: 21.695 GiB, 71.83% gc time, 0.95% compilation time)
Objective Function: 0.186049 seconds (190.58 k allocations: 13.096 MiB, 95.06% compilation time)
Specify constraints: 31.989180 seconds (477.64 M allocations: 22.244 GiB, 29.73% gc time, 30.81% compilation time)
Running HiGHS 1.7.2 (git hash: 5ce7a2753): Copyright © 2024 HiGHS under MIT licence terms
Coefficient ranges:
Matrix [1e-02, 1e+04]
Cost [1e+00, 1e+00]
Bound [1e-01, 1e+01]
RHS [9e-02, 8e+03]
Presolving model
265 rows, 288 cols, 966 nonzeros 3s
228 rows, 245 cols, 826 nonzeros 3s
Presolve : Reductions: rows 228(-376); columns 245(-46644766); elements 826(-1094)
Solving the presolved LP
Using EKK dual simplex solver - serial
Iteration Objective Infeasibilities num(sum)
0 1.2861637975e+04 Pr: 30(74.9799) 4s
161 3.8706151237e+04 Pr: 0(0); Du: 0(8.52651e-14) 4s
Solving the original LP from the solution after postsolve
Model status : Optimal
Simplex iterations: 161
Objective value : 3.8706151237e+04
HiGHS run time : 14.87
Solve model: 297.598005 seconds (279.92 M allocations: 29.121 GiB, 54.82% gc time, 0.04% compilation time: 61% of which was recompilation)
I think the model stats reported by HiGHS confirm it being the small Utopia model (but with 46.6 million variables?!). Some initial comments:
• Most of the time appears spent into creating unnecessary variables (92 secs!); I am sure this could be easily reduced close to zero;
• Constraints generation seems to take 32 secs; this may be affected by the inefficient handling of variables;
• Solving with HiGHS appears to take 300 secs (including I/O overheads); again probably inefficient due to the variables;
• At this point, it would indeed not make much sense to test with the bigger PROTO model. The times for Utopia should first be reduced close to zero, which should not be too dfficult.
