Skip to content

Commit

Permalink
Updated copt, mosek and scip to latest versions
Browse files Browse the repository at this point in the history
  • Loading branch information
mapgccv committed May 31, 2024
1 parent 8155e4f commit 7a7b928
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 4 deletions.
3 changes: 3 additions & 0 deletions solvers/copt/CHANGES.copt.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
Summary of recent updates to COPT for AMPL
==========================================

## 20240531
- Updated to Copt 7.1.3, which provides many bugfixes.


## 20240529
- *Multi-objective emulator*
Expand Down
6 changes: 6 additions & 0 deletions solvers/mosek/CHANGES.mosek.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@ Summary of recent updates to MOSEK for AMPL
===========================================


## 20240531
- Updated to MOSEK 10.2, which provides many bugfixes.
- Added options `mip:varselection`, `pre:dualray_analysis` and
`lim:sol`.


## 20240529
- *Multi-objective emulator*
- All flat MP solvers support multi-objective mode (obj:multi=1),
Expand Down
43 changes: 39 additions & 4 deletions solvers/mosek/mosekbackend.cc
Original file line number Diff line number Diff line change
Expand Up @@ -427,6 +427,20 @@ static const mp::OptionValueInfo alg_values_mip_presolve_use[] = {
{ "2", "Automatic (default)", 2}
};


static const mp::OptionValueInfo values_mip_var_selection_types[] = {
{ "0", "Automatic (default)", 0},
{ "1", "Pseudocost variable selection", 1},
{ "2", "Strong branching selection", 2}
};

static const mp::OptionValueInfo values_mip_presolve_dual_ray[] = {
{ "-1", "Automatic (default)", -1},
{ "0", "Disabled", 0},
{ "1", "Low amount of analyis", 1},
{ "2", "Higher amount of analysis", 2}
};

void MosekBackend::InitCustomOptions() {

set_option_header(
Expand Down Expand Up @@ -472,16 +486,35 @@ void MosekBackend::InitCustomOptions() {
"\n"
"Parameter descriptions: docs.mosek.com/latest/cmdtools/param-groups.html.",
storedOptions_.paramRead_);

AddStoredOption("tech:optionnativewrite optionnativewrite tech:param:write param:write",
"Name of Mosek parameter file (surrounded by 'single' or \"double\" quotes if the "
"name contains blanks) to be written.",
storedOptions_.paramWrite_);


AddSolverOption("tech:seed seed",
"Random number seed (default 42), used for randomization in the mixed-integer optimizer, "
"may influence the solution path.",
MSK_IPAR_MIO_SEED, 0, INT_MAX);


AddSolverOption("mip:presolve presolve",
"MIP presolve:\n"
"\n.. value-table::\n",
MSK_IPAR_PRESOLVE_USE, alg_values_mip_presolve_use, 2);

AddSolverOption("pre:dualray_analysis dualrayanalysis",
"Controls the amount of symmetry detection employed by the mixed-integer optimizer "
"in presolve:\n"
"\n.. value-table::\n",
MSK_IPAR_MIO_DUAL_RAY_ANALYSIS_LEVEL, values_mip_presolve_dual_ray, -1);

AddSolverOption("mip:varselection varselection",
"Controls the variable selection strategy employed by the mixed-integer optimizer:\n"
"\n.. value-table::\n",
MSK_IPAR_MIO_VAR_SELECTION, values_mip_var_selection_types, 2);

AddSolverOption("mip:inttol inttol",
"MIP integrality tolerance.",
MSK_DPAR_MIO_TOL_ABS_RELAX_INT, 1e-15, Infinity());
Expand All @@ -502,10 +535,12 @@ void MosekBackend::InitCustomOptions() {
"0*/1: Whether to write mosek log lines to stdout.",
MSK_IPAR_LOG, 0, 1);

/////////////////////// Custom solve results /////////////////////////
// AddSolveResults({
// { sol::NUMERIC, "failure: numeric issue, no feasible solution" }
// });
AddSolverOption("lim:sol sollimit solutionlimit",
"Limit the number of feasible MIP solutions found, causing early "
"termination if exceeded; default -1 (no limit).",
MSK_IPAR_MIO_MAX_NUM_SOLUTIONS, 0, INT_MAX);


}

double MosekBackend::MIPGap() {
Expand Down
3 changes: 3 additions & 0 deletions solvers/scipmp/CHANGES.scipmp.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
Summary of recent updates to SCIP for AMPL
==========================================

## 20240531
- Updated to SCIP 9.0.1


## 20240529
- *Multi-objective emulator*
Expand Down

0 comments on commit 7a7b928

Please sign in to comment.