casadi 3.6.5__cp39-none-win_amd64.whl → 3.6.6__cp39-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- casadi/_casadi.pyd +0 -0
- casadi/bin/libtinyxml2.dll +0 -0
- casadi/blasfeo.lib +0 -0
- casadi/casadi-cli.exe +0 -0
- casadi/casadi.lib +0 -0
- casadi/casadi.py +663 -257
- casadi/cbc.exe +0 -0
- casadi/clp.exe +0 -0
- casadi/cmake/casadi-config-version.cmake +1 -1
- casadi/cmake/highs/highs-config.cmake +7 -14
- casadi/cmake/highs/highs-targets-release.cmake +13 -13
- casadi/cmake/highs/highs-targets.cmake +11 -9
- casadi/daqp.lib +0 -0
- casadi/fatrop.lib +0 -0
- casadi/highs.exe +0 -0
- casadi/highs.lib +0 -0
- casadi/hpipm.lib +0 -0
- casadi/include/casadi/casadi.i +3 -0
- casadi/include/casadi/casadi_c.h +2 -0
- casadi/include/casadi/config.h +8 -8
- casadi/include/casadi/core/casadi_common.hpp +1 -0
- casadi/include/casadi/core/casadi_misc.hpp +13 -0
- casadi/include/casadi/core/casadi_types.hpp +3 -2
- casadi/include/casadi/core/code_generator.hpp +30 -1
- casadi/include/casadi/core/global_options.hpp +2 -0
- casadi/include/casadi/core/mx.hpp +13 -3
- casadi/include/casadi/core/optistack.hpp +23 -0
- casadi/include/casadi/core/runtime/casadi_nlp.hpp +2 -0
- casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
- casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
- casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
- casadi/include/casadi/core/runtime/casadi_runtime.hpp +4 -1
- casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
- casadi/include/casadi/core/serializing_stream.hpp +2 -2
- casadi/include/casadi/core/sparsity.hpp +7 -0
- casadi/include/casadi/doc.i +1397 -955
- casadi/include/casadi/doc_merged.i +867 -675
- casadi/include/casadi/mem.h +1 -0
- casadi/include/daqp/api.h +46 -0
- casadi/include/daqp/auxiliary.h +29 -0
- casadi/include/daqp/bnb.h +32 -0
- casadi/include/daqp/codegen.h +18 -0
- casadi/include/daqp/constants.h +92 -0
- casadi/include/daqp/daqp.h +22 -0
- casadi/include/daqp/daqp_prox.h +18 -0
- casadi/include/daqp/factorization.h +18 -0
- casadi/include/daqp/types.h +161 -0
- casadi/include/daqp/utils.h +44 -0
- casadi/include/dlfcn.h +94 -0
- casadi/include/fatrop/auxiliary/Common.hpp +33 -0
- casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
- casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
- casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
- casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
- casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
- casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +492 -0
- casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
- casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
- casadi/include/fatrop/json/json.h +946 -0
- casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
- casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
- casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
- casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
- casadi/include/fatrop/ocp/OCP.hpp +82 -0
- casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
- casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
- casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
- casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
- casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
- casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
- casadi/include/fatrop/ocp/OCPLSRiccati.hpp +191 -0
- casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
- casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
- casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
- casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
- casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
- casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
- casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
- casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
- casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
- casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
- casadi/include/fatrop/solver/AlgBuilder.hpp +66 -0
- casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
- casadi/include/fatrop/solver/FatropAlg.hpp +108 -0
- casadi/include/fatrop/solver/FatropData.hpp +188 -0
- casadi/include/fatrop/solver/FatropOptions.hpp +94 -0
- casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
- casadi/include/fatrop/solver/FatropStats.hpp +63 -0
- casadi/include/fatrop/solver/Filter.hpp +54 -0
- casadi/include/fatrop/solver/IterationData.hpp +55 -0
- casadi/include/fatrop/solver/LineSearch.hpp +86 -0
- casadi/include/fatrop/solver/NLPL1.hpp +263 -0
- casadi/include/fatrop/templates/NLPAlg.hpp +102 -0
- casadi/include/highs/HConfig.h +6 -5
- casadi/include/highs/Highs.h +93 -23
- casadi/include/highs/filereaderlp/def.hpp +19 -0
- casadi/include/highs/interfaces/highs_c_api.h +200 -24
- casadi/include/highs/io/Filereader.h +1 -1
- casadi/include/highs/io/FilereaderEms.h +1 -1
- casadi/include/highs/io/FilereaderLp.h +1 -1
- casadi/include/highs/io/FilereaderMps.h +1 -1
- casadi/include/highs/io/HMPSIO.h +1 -1
- casadi/include/highs/io/HMpsFF.h +5 -3
- casadi/include/highs/io/HighsIO.h +18 -8
- casadi/include/highs/io/LoadOptions.h +1 -1
- casadi/include/highs/ipm/IpxSolution.h +35 -0
- casadi/include/highs/ipm/IpxWrapper.h +1 -1
- casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
- casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
- casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
- casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
- casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
- casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
- casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
- casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
- casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
- casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
- casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
- casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
- casadi/include/highs/ipm/ipx/basis.h +351 -0
- casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
- casadi/include/highs/ipm/ipx/control.h +163 -0
- casadi/include/highs/ipm/ipx/crossover.h +157 -0
- casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
- casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
- casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
- casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
- casadi/include/highs/ipm/ipx/info.h +27 -0
- casadi/include/highs/ipm/ipx/ipm.h +94 -0
- casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
- casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
- casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
- casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
- casadi/include/highs/ipm/ipx/ipx_parameters.h +75 -0
- casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
- casadi/include/highs/ipm/ipx/iterate.h +328 -0
- casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
- casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
- casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
- casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
- casadi/include/highs/ipm/ipx/lp_solver.h +201 -0
- casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
- casadi/include/highs/ipm/ipx/lu_update.h +129 -0
- casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
- casadi/include/highs/ipm/ipx/model.h +409 -0
- casadi/include/highs/ipm/ipx/multistream.h +52 -0
- casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
- casadi/include/highs/ipm/ipx/power_method.h +44 -0
- casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
- casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
- casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
- casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
- casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
- casadi/include/highs/ipm/ipx/timer.h +24 -0
- casadi/include/highs/ipm/ipx/utils.h +39 -0
- casadi/include/highs/lp_data/HConst.h +20 -10
- casadi/include/highs/lp_data/HStruct.h +23 -1
- casadi/include/highs/lp_data/HighsAnalysis.h +1 -1
- casadi/include/highs/lp_data/HighsCallback.h +10 -3
- casadi/include/highs/lp_data/HighsCallbackStruct.h +31 -5
- casadi/include/highs/lp_data/HighsDebug.h +1 -1
- casadi/include/highs/lp_data/HighsInfo.h +20 -2
- casadi/include/highs/lp_data/HighsInfoDebug.h +1 -1
- casadi/include/highs/lp_data/HighsLp.h +17 -1
- casadi/include/highs/lp_data/HighsLpSolverObject.h +1 -1
- casadi/include/highs/lp_data/HighsLpUtils.h +19 -19
- casadi/include/highs/lp_data/HighsModelUtils.h +1 -1
- casadi/include/highs/lp_data/HighsOptions.h +237 -10
- casadi/include/highs/lp_data/HighsRanging.h +1 -1
- casadi/include/highs/lp_data/HighsRuntimeOptions.h +2 -2
- casadi/include/highs/lp_data/HighsSolution.h +2 -2
- casadi/include/highs/lp_data/HighsSolutionDebug.h +1 -1
- casadi/include/highs/lp_data/HighsSolve.h +3 -1
- casadi/include/highs/lp_data/HighsStatus.h +1 -1
- casadi/include/highs/mip/HighsCliqueTable.h +4 -4
- casadi/include/highs/mip/HighsConflictPool.h +1 -1
- casadi/include/highs/mip/HighsCutGeneration.h +1 -1
- casadi/include/highs/mip/HighsCutPool.h +2 -2
- casadi/include/highs/mip/HighsDebugSol.h +22 -29
- casadi/include/highs/mip/HighsDomain.h +10 -2
- casadi/include/highs/mip/HighsDomainChange.h +1 -1
- casadi/include/highs/mip/HighsDynamicRowMatrix.h +5 -3
- casadi/include/highs/mip/HighsGFkSolve.h +3 -3
- casadi/include/highs/mip/HighsImplications.h +3 -3
- casadi/include/highs/mip/HighsLpAggregator.h +1 -1
- casadi/include/highs/mip/HighsLpRelaxation.h +6 -1
- casadi/include/highs/mip/HighsMipSolver.h +4 -2
- casadi/include/highs/mip/HighsMipSolverData.h +47 -4
- casadi/include/highs/mip/HighsModkSeparator.h +2 -2
- casadi/include/highs/mip/HighsNodeQueue.h +5 -3
- casadi/include/highs/mip/HighsObjectiveFunction.h +1 -1
- casadi/include/highs/mip/HighsPathSeparator.h +2 -2
- casadi/include/highs/mip/HighsPrimalHeuristics.h +1 -1
- casadi/include/highs/mip/HighsPseudocost.h +35 -23
- casadi/include/highs/mip/HighsRedcostFixing.h +1 -1
- casadi/include/highs/mip/HighsSearch.h +2 -1
- casadi/include/highs/mip/HighsSeparation.h +1 -1
- casadi/include/highs/mip/HighsSeparator.h +1 -1
- casadi/include/highs/mip/HighsTableauSeparator.h +1 -1
- casadi/include/highs/mip/HighsTransformedLp.h +1 -1
- casadi/include/highs/model/HighsHessian.h +5 -0
- casadi/include/highs/model/HighsHessianUtils.h +2 -0
- casadi/include/highs/model/HighsModel.h +10 -1
- casadi/include/highs/parallel/HighsMutex.h +2 -1
- casadi/include/highs/parallel/HighsParallel.h +7 -2
- casadi/include/highs/parallel/HighsTask.h +1 -2
- casadi/include/highs/pdlp/CupdlpWrapper.h +93 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +41 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +423 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +183 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_scaling_cuda.h +28 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +33 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1726 -0
- casadi/include/highs/pdqsort/pdqsort.h +532 -0
- casadi/include/highs/presolve/HPresolve.h +27 -14
- casadi/include/highs/presolve/HPresolveAnalysis.h +1 -1
- casadi/include/highs/presolve/HighsPostsolveStack.h +92 -68
- casadi/include/highs/presolve/HighsSymmetry.h +6 -5
- casadi/include/highs/presolve/ICrash.h +8 -2
- casadi/include/highs/presolve/ICrashUtil.h +1 -1
- casadi/include/highs/presolve/ICrashX.h +1 -1
- casadi/include/highs/presolve/PresolveComponent.h +1 -1
- casadi/include/highs/qpsolver/a_asm.hpp +23 -12
- casadi/include/highs/qpsolver/a_quass.hpp +8 -1
- casadi/include/highs/qpsolver/basis.hpp +150 -0
- casadi/include/highs/qpsolver/crashsolution.hpp +12 -0
- casadi/include/highs/qpsolver/dantzigpricing.hpp +72 -0
- casadi/include/highs/qpsolver/devexpricing.hpp +99 -0
- casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
- casadi/include/highs/qpsolver/factor.hpp +400 -0
- casadi/include/highs/qpsolver/feasibility_bounded.hpp +105 -0
- casadi/include/highs/qpsolver/feasibility_highs.hpp +270 -0
- casadi/include/highs/qpsolver/gradient.hpp +39 -0
- casadi/include/highs/qpsolver/instance.hpp +63 -0
- casadi/include/highs/qpsolver/matrix.hpp +335 -0
- casadi/include/highs/qpsolver/pricing.hpp +15 -0
- casadi/include/highs/qpsolver/qpconst.hpp +27 -0
- casadi/include/highs/qpsolver/{vector.hpp → qpvector.hpp} +25 -25
- casadi/include/highs/qpsolver/quass.hpp +1 -1
- casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
- casadi/include/highs/qpsolver/runtime.hpp +38 -0
- casadi/include/highs/qpsolver/settings.hpp +57 -0
- casadi/include/highs/qpsolver/snippets.hpp +29 -0
- casadi/include/highs/qpsolver/statistics.hpp +23 -0
- casadi/include/highs/qpsolver/steepestedgepricing.hpp +167 -0
- casadi/include/highs/simplex/HApp.h +1 -1
- casadi/include/highs/simplex/HEkk.h +52 -18
- casadi/include/highs/simplex/HEkkDual.h +1 -1
- casadi/include/highs/simplex/HEkkDualRHS.h +6 -7
- casadi/include/highs/simplex/HEkkDualRow.h +2 -2
- casadi/include/highs/simplex/HEkkPrimal.h +6 -1
- casadi/include/highs/simplex/HSimplex.h +1 -3
- casadi/include/highs/simplex/HSimplexDebug.h +1 -1
- casadi/include/highs/simplex/HSimplexNla.h +1 -1
- casadi/include/highs/simplex/HSimplexReport.h +1 -1
- casadi/include/highs/simplex/HighsSimplexAnalysis.h +228 -100
- casadi/include/highs/simplex/SimplexConst.h +1 -1
- casadi/include/highs/simplex/SimplexStruct.h +2 -2
- casadi/include/highs/simplex/SimplexTimer.h +1 -1
- casadi/include/highs/test/DevKkt.h +1 -1
- casadi/include/highs/test/KktCh2.h +1 -1
- casadi/include/highs/util/FactorTimer.h +1 -1
- casadi/include/highs/util/HFactor.h +35 -6
- casadi/include/highs/util/HFactorConst.h +1 -1
- casadi/include/highs/util/HFactorDebug.h +1 -1
- casadi/include/highs/util/HSet.h +1 -1
- casadi/include/highs/util/HVector.h +1 -1
- casadi/include/highs/util/HVectorBase.h +1 -1
- casadi/include/highs/util/HighsCDouble.h +3 -3
- casadi/include/highs/util/HighsComponent.h +1 -1
- casadi/include/highs/util/HighsDataStack.h +4 -4
- casadi/include/highs/util/HighsDisjointSets.h +1 -1
- casadi/include/highs/util/HighsHash.h +28 -21
- casadi/include/highs/util/HighsHashTree.h +63 -63
- casadi/include/highs/util/HighsInt.h +1 -1
- casadi/include/highs/util/HighsIntegers.h +8 -9
- casadi/include/highs/util/HighsLinearSumBounds.h +1 -1
- casadi/include/highs/util/HighsMatrixPic.h +1 -1
- casadi/include/highs/util/HighsMatrixSlice.h +9 -6
- casadi/include/highs/util/HighsMatrixUtils.h +1 -1
- casadi/include/highs/util/HighsMemoryAllocation.h +55 -0
- casadi/include/highs/util/HighsRandom.h +27 -15
- casadi/include/highs/util/HighsRbTree.h +2 -2
- casadi/include/highs/util/HighsSort.h +7 -7
- casadi/include/highs/util/HighsSparseMatrix.h +5 -2
- casadi/include/highs/util/HighsSparseVectorSum.h +2 -2
- casadi/include/highs/util/HighsSplay.h +1 -1
- casadi/include/highs/util/HighsTimer.h +18 -9
- casadi/include/highs/util/HighsUtils.h +15 -8
- casadi/include/highs/util/stringutil.h +9 -4
- casadi/include/highs/zstr/strict_fstream.hpp +237 -0
- casadi/include/highs/zstr/zstr.hpp +472 -0
- casadi/include/highs_export.h +42 -0
- casadi/include/licenses/daqp-external/LICENSE +21 -0
- casadi/include/licenses/fatrop-external/LICENSE.txt +165 -0
- casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
- casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
- casadi/include/licenses/highs-external/{LICENSE → LICENSE.txt} +1 -1
- casadi/include/osqp/constants.h +2 -3
- casadi/include/osqp/version.h +9 -0
- casadi/include/sleqp/defs.h +2 -2
- casadi/ipopt.lib +0 -0
- casadi/lapack.lib +0 -0
- casadi/lib/libtinyxml2.dll.a +0 -0
- casadi/libCbc-3.dll +0 -0
- casadi/libCbc.dll.a +0 -0
- casadi/libCbcSolver-3.dll +0 -0
- casadi/libCbcSolver.dll.a +0 -0
- casadi/libCgl-1.dll +0 -0
- casadi/libCgl.dll.a +0 -0
- casadi/libClp-1.dll +0 -0
- casadi/libClp.dll.a +0 -0
- casadi/libClpSolver-1.dll +0 -0
- casadi/libClpSolver.dll.a +0 -0
- casadi/libCoinUtils-3.dll +0 -0
- casadi/libCoinUtils.dll.a +0 -0
- casadi/libOsi-1.dll +0 -0
- casadi/libOsi.dll.a +0 -0
- casadi/libOsiCbc-3.dll +0 -0
- casadi/libOsiCbc.dll.a +0 -0
- casadi/libOsiClp-1.dll +0 -0
- casadi/libOsiClp.dll.a +0 -0
- casadi/libOsiCommonTests-1.dll +0 -0
- casadi/libOsiCommonTests.dll.a +0 -0
- casadi/libalpaqa.dll +0 -0
- casadi/libalpaqa.dll.a +0 -0
- casadi/libblasfeo.dll +0 -0
- casadi/libblasfeo.dll.a +0 -0
- casadi/libbonmin-4.dll +0 -0
- casadi/libbonmin.dll.a +0 -0
- casadi/libcasadi-tp-openblas.dll +0 -0
- casadi/libcasadi-tp-openblas.dll.a +0 -0
- casadi/libcasadi.dll +0 -0
- casadi/libcasadi.dll.a +0 -0
- casadi/libcasadi_conic_cbc.dll +0 -0
- casadi/libcasadi_conic_cbc.dll.a +0 -0
- casadi/libcasadi_conic_clp.dll +0 -0
- casadi/libcasadi_conic_clp.dll.a +0 -0
- casadi/libcasadi_conic_cplex.dll +0 -0
- casadi/libcasadi_conic_cplex.dll.a +0 -0
- casadi/libcasadi_conic_daqp.dll +0 -0
- casadi/libcasadi_conic_daqp.dll.a +0 -0
- casadi/libcasadi_conic_fatrop.dll +0 -0
- casadi/libcasadi_conic_fatrop.dll.a +0 -0
- casadi/libcasadi_conic_gurobi.dll +0 -0
- casadi/libcasadi_conic_gurobi.dll.a +0 -0
- casadi/libcasadi_conic_highs.dll +0 -0
- casadi/libcasadi_conic_highs.dll.a +0 -0
- casadi/libcasadi_conic_hpipm.dll +0 -0
- casadi/libcasadi_conic_hpipm.dll.a +0 -0
- casadi/libcasadi_conic_ipqp.dll +0 -0
- casadi/libcasadi_conic_ipqp.dll.a +0 -0
- casadi/libcasadi_conic_nlpsol.dll +0 -0
- casadi/libcasadi_conic_nlpsol.dll.a +0 -0
- casadi/libcasadi_conic_osqp.dll +0 -0
- casadi/libcasadi_conic_osqp.dll.a +0 -0
- casadi/libcasadi_conic_proxqp.dll +0 -0
- casadi/libcasadi_conic_proxqp.dll.a +0 -0
- casadi/libcasadi_conic_qpoases.dll +0 -0
- casadi/libcasadi_conic_qpoases.dll.a +0 -0
- casadi/libcasadi_conic_qrqp.dll +0 -0
- casadi/libcasadi_conic_qrqp.dll.a +0 -0
- casadi/libcasadi_conic_superscs.dll +0 -0
- casadi/libcasadi_conic_superscs.dll.a +0 -0
- casadi/libcasadi_importer_shell.dll +0 -0
- casadi/libcasadi_importer_shell.dll.a +0 -0
- casadi/libcasadi_integrator_collocation.dll +0 -0
- casadi/libcasadi_integrator_collocation.dll.a +0 -0
- casadi/libcasadi_integrator_cvodes.dll +0 -0
- casadi/libcasadi_integrator_cvodes.dll.a +0 -0
- casadi/libcasadi_integrator_idas.dll +0 -0
- casadi/libcasadi_integrator_idas.dll.a +0 -0
- casadi/libcasadi_integrator_rk.dll +0 -0
- casadi/libcasadi_integrator_rk.dll.a +0 -0
- casadi/libcasadi_interpolant_bspline.dll +0 -0
- casadi/libcasadi_interpolant_bspline.dll.a +0 -0
- casadi/libcasadi_interpolant_linear.dll +0 -0
- casadi/libcasadi_interpolant_linear.dll.a +0 -0
- casadi/libcasadi_linsol_csparse.dll +0 -0
- casadi/libcasadi_linsol_csparse.dll.a +0 -0
- casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
- casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
- casadi/libcasadi_linsol_lapacklu.dll +0 -0
- casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
- casadi/libcasadi_linsol_lapackqr.dll +0 -0
- casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
- casadi/libcasadi_linsol_ldl.dll +0 -0
- casadi/libcasadi_linsol_ldl.dll.a +0 -0
- casadi/libcasadi_linsol_lsqr.dll +0 -0
- casadi/libcasadi_linsol_lsqr.dll.a +0 -0
- casadi/libcasadi_linsol_ma27.dll +0 -0
- casadi/libcasadi_linsol_ma27.dll.a +0 -0
- casadi/libcasadi_linsol_mumps.dll +0 -0
- casadi/libcasadi_linsol_mumps.dll.a +0 -0
- casadi/libcasadi_linsol_qr.dll +0 -0
- casadi/libcasadi_linsol_qr.dll.a +0 -0
- casadi/libcasadi_linsol_symbolicqr.dll +0 -0
- casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
- casadi/libcasadi_linsol_tridiag.dll +0 -0
- casadi/libcasadi_linsol_tridiag.dll.a +0 -0
- casadi/libcasadi_nlpsol_alpaqa.dll +0 -0
- casadi/libcasadi_nlpsol_alpaqa.dll.a +0 -0
- casadi/libcasadi_nlpsol_ampl.dll +0 -0
- casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
- casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
- casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_bonmin.dll +0 -0
- casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
- casadi/libcasadi_nlpsol_fatrop.dll +0 -0
- casadi/libcasadi_nlpsol_fatrop.dll.a +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
- casadi/libcasadi_nlpsol_ipopt.dll +0 -0
- casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
- casadi/libcasadi_nlpsol_knitro.dll +0 -0
- casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
- casadi/libcasadi_nlpsol_madnlp.dll +0 -0
- casadi/libcasadi_nlpsol_madnlp.dll.a +0 -0
- casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
- casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_scpgen.dll +0 -0
- casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
- casadi/libcasadi_nlpsol_sleqp.dll +0 -0
- casadi/libcasadi_nlpsol_sleqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_snopt.dll +0 -0
- casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
- casadi/libcasadi_nlpsol_worhp.dll +0 -0
- casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
- casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
- casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
- casadi/libcasadi_rootfinder_kinsol.dll +0 -0
- casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
- casadi/libcasadi_rootfinder_newton.dll +0 -0
- casadi/libcasadi_rootfinder_newton.dll.a +0 -0
- casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
- casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
- casadi/libcasadi_sundials_common.dll +0 -0
- casadi/libcasadi_sundials_common.dll.a +0 -0
- casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
- casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
- casadi/libcoinmetis-2.dll +0 -0
- casadi/libcoinmetis.dll.a +0 -0
- casadi/libcoinmumps-3.dll +0 -0
- casadi/libcoinmumps.dll.a +0 -0
- casadi/libcplex_adaptor.dll +0 -0
- casadi/libdaqp.dll +0 -0
- casadi/libdaqp.dll.a +0 -0
- casadi/libdaqpstat.a +0 -0
- casadi/{libFortranHighs.dll → libdl.dll} +0 -0
- casadi/libdl.dll.a +0 -0
- casadi/libfatrop.dll +0 -0
- casadi/libfatrop.dll.a +0 -0
- casadi/libgurobi_adaptor.dll +0 -0
- casadi/libhighs.dll +0 -0
- casadi/libhighs.dll.a +0 -0
- casadi/libhpipm.dll +0 -0
- casadi/libhpipm.dll.a +0 -0
- casadi/libipopt-3.dll +0 -0
- casadi/libipopt.dll.a +0 -0
- casadi/libmatlab_ipc.dll +0 -0
- casadi/libmatlab_ipc.dll.a +0 -0
- casadi/libosqp.a +0 -0
- casadi/libosqp.dll +0 -0
- casadi/libosqp.dll.a +0 -0
- casadi/libqdldl.dll +0 -0
- casadi/libqdldl.dll.a +0 -0
- casadi/libsipopt-3.dll +0 -0
- casadi/libsipopt.dll.a +0 -0
- casadi/libsleqp.dll +0 -0
- casadi/libsleqp.dll.a +0 -0
- casadi/libtinyxml2.dll +0 -0
- casadi/libtrlib.dll +0 -0
- casadi/libtrlib.dll.a +0 -0
- casadi/matlab_ipc.lib +0 -0
- casadi/osqp.lib +0 -0
- casadi/pkgconfig/casadi.pc +1 -1
- casadi/pkgconfig/highs.pc +1 -1
- casadi/sleqp.lib +0 -0
- casadi/spral_ssids.exe +0 -0
- casadi/tools/__init__.py +4 -0
- casadi/tools/bounds.py +3 -3
- {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/METADATA +2 -2
- {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/RECORD +500 -324
- casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
- casadi/libFortranHighs.dll.a +0 -0
- {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/WHEEL +0 -0
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -119,7 +119,7 @@ bool loadOptions(const HighsLogOptions& report_log_options, int argc,
|
|
119
119
|
auto& v = result[kReadSolutionFileString].as<std::vector<std::string>>();
|
120
120
|
if (v.size() > 1) {
|
121
121
|
HighsInt nonEmpty = 0;
|
122
|
-
for (
|
122
|
+
for (size_t i = 0; i < v.size(); i++) {
|
123
123
|
std::string arg = v[i];
|
124
124
|
if (trim(arg).size() > 0) {
|
125
125
|
nonEmpty++;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -85,7 +85,7 @@ void getKktFailures(const HighsOptions& options, const HighsLp& lp,
|
|
85
85
|
HighsPrimalDualErrors& primal_dual_errors,
|
86
86
|
const bool get_residuals = false);
|
87
87
|
|
88
|
-
|
88
|
+
bool getVariableKktFailures(const double primal_feasibility_tolerance,
|
89
89
|
const double dual_feasibility_tolerance,
|
90
90
|
const double lower, const double upper,
|
91
91
|
const double value, const double dual,
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -21,4 +21,6 @@ HighsStatus solveUnconstrainedLp(const HighsOptions& options, const HighsLp& lp,
|
|
21
21
|
HighsModelStatus& model_status,
|
22
22
|
HighsInfo& highs_info, HighsSolution& solution,
|
23
23
|
HighsBasis& basis);
|
24
|
+
void assessExcessiveBoundCost(const HighsLogOptions log_options,
|
25
|
+
const HighsModel& model);
|
24
26
|
#endif // LP_DATA_HIGHSSOLVE_H_
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -158,9 +158,9 @@ class HighsCliqueTable {
|
|
158
158
|
int64_t numNeighbourhoodQueries;
|
159
159
|
|
160
160
|
HighsCliqueTable(HighsInt ncols) {
|
161
|
-
invertedHashList.resize(2 * ncols);
|
162
|
-
invertedHashListSizeTwo.resize(2 * ncols);
|
163
|
-
numcliquesvar.resize(2 * ncols, 0);
|
161
|
+
invertedHashList.resize(2 * static_cast<size_t>(ncols));
|
162
|
+
invertedHashListSizeTwo.resize(2 * static_cast<size_t>(ncols));
|
163
|
+
numcliquesvar.resize(2 * static_cast<size_t>(ncols), 0);
|
164
164
|
colsubstituted.resize(ncols);
|
165
165
|
colDeleted.resize(ncols, false);
|
166
166
|
nfixings = 0;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -136,7 +136,7 @@ class HighsCutPool {
|
|
136
136
|
|
137
137
|
void separateLpCutsAfterRestart(HighsCutSet& cutset);
|
138
138
|
|
139
|
-
bool cutIsIntegral(HighsInt cut) const { return rowintegral[cut]; }
|
139
|
+
bool cutIsIntegral(HighsInt cut) const { return (rowintegral[cut] != 0); }
|
140
140
|
|
141
141
|
HighsInt getNumCuts() const {
|
142
142
|
return matrix_.getNumRows() - matrix_.getNumDelRows();
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -88,54 +88,47 @@ struct HighsDebugSol {
|
|
88
88
|
|
89
89
|
#else
|
90
90
|
struct HighsDebugSol {
|
91
|
-
HighsDebugSol(HighsMipSolver&
|
91
|
+
HighsDebugSol(HighsMipSolver&) {}
|
92
92
|
|
93
93
|
void newIncumbentFound() const {}
|
94
94
|
|
95
95
|
void activate() const {}
|
96
96
|
|
97
|
-
void shrink(const std::vector<HighsInt>&
|
97
|
+
void shrink(const std::vector<HighsInt>&) const {}
|
98
98
|
|
99
|
-
void registerDomain(const HighsDomain&
|
99
|
+
void registerDomain(const HighsDomain&) const {}
|
100
100
|
|
101
|
-
void boundChangeAdded(const HighsDomain
|
102
|
-
const
|
103
|
-
bool branching = false) const {}
|
101
|
+
void boundChangeAdded(const HighsDomain&, const HighsDomainChange&,
|
102
|
+
bool = false) const {}
|
104
103
|
|
105
|
-
void boundChangeRemoved(const HighsDomain&
|
106
|
-
const HighsDomainChange& domchg) const {}
|
104
|
+
void boundChangeRemoved(const HighsDomain&, const HighsDomainChange&) const {}
|
107
105
|
|
108
|
-
void resetDomain(const HighsDomain&
|
106
|
+
void resetDomain(const HighsDomain&) const {}
|
109
107
|
|
110
|
-
void nodePruned(const HighsDomain&
|
108
|
+
void nodePruned(const HighsDomain&) const {}
|
111
109
|
|
112
|
-
void checkCut(const HighsInt
|
113
|
-
double rhs) const {}
|
110
|
+
void checkCut(const HighsInt*, const double*, HighsInt, double) const {}
|
114
111
|
|
115
|
-
void checkRow(const HighsInt
|
116
|
-
double
|
112
|
+
void checkRow(const HighsInt*, const double*, HighsInt, double,
|
113
|
+
double) const {}
|
117
114
|
|
118
|
-
void checkRowAggregation(const HighsLp
|
119
|
-
|
115
|
+
void checkRowAggregation(const HighsLp&, const HighsInt*, const double*,
|
116
|
+
HighsInt) const {}
|
120
117
|
|
121
|
-
void checkClique(const HighsCliqueTable::CliqueVar
|
122
|
-
HighsInt clqlen) const {}
|
118
|
+
void checkClique(const HighsCliqueTable::CliqueVar*, HighsInt) const {}
|
123
119
|
|
124
|
-
void checkVub(HighsInt
|
125
|
-
double vubconstant) const {}
|
120
|
+
void checkVub(HighsInt, HighsInt, double, double) const {}
|
126
121
|
|
127
|
-
void checkVlb(HighsInt
|
128
|
-
double vlbconstant) const {}
|
122
|
+
void checkVlb(HighsInt, HighsInt, double, double) const {}
|
129
123
|
|
130
124
|
void checkConflictReasonFrontier(
|
131
|
-
const std::set<HighsDomain::ConflictSet::LocalDomChg
|
132
|
-
const std::vector<HighsDomainChange>&
|
125
|
+
const std::set<HighsDomain::ConflictSet::LocalDomChg>&,
|
126
|
+
const std::vector<HighsDomainChange>&) const {}
|
133
127
|
|
134
128
|
void checkConflictReconvergenceFrontier(
|
135
|
-
const std::set<HighsDomain::ConflictSet::LocalDomChg
|
136
|
-
|
137
|
-
const
|
138
|
-
const std::vector<HighsDomainChange>& domchgstack) const {}
|
129
|
+
const std::set<HighsDomain::ConflictSet::LocalDomChg>&,
|
130
|
+
const HighsDomain::ConflictSet::LocalDomChg&,
|
131
|
+
const std::vector<HighsDomainChange>&) const {}
|
139
132
|
};
|
140
133
|
#endif
|
141
134
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -255,7 +255,14 @@ class HighsDomain {
|
|
255
255
|
|
256
256
|
std::vector<PartitionCliqueData> partitionCliqueData;
|
257
257
|
|
258
|
-
ObjectivePropagation()
|
258
|
+
ObjectivePropagation() {
|
259
|
+
objFunc = nullptr;
|
260
|
+
cost = nullptr;
|
261
|
+
objectiveLower = 0.0;
|
262
|
+
numInfObjLower = 0;
|
263
|
+
capacityThreshold = 0.0;
|
264
|
+
isPropagated = false;
|
265
|
+
}
|
259
266
|
ObjectivePropagation(HighsDomain* domain);
|
260
267
|
|
261
268
|
bool isActive() const { return domain != nullptr; }
|
@@ -351,6 +358,7 @@ class HighsDomain {
|
|
351
358
|
conflictPoolPropagation(other.conflictPoolPropagation),
|
352
359
|
infeasible_(other.infeasible_),
|
353
360
|
infeasible_reason(other.infeasible_reason),
|
361
|
+
infeasible_pos(other.infeasible_pos),
|
354
362
|
colLowerPos_(other.colLowerPos_),
|
355
363
|
colUpperPos_(other.colUpperPos_),
|
356
364
|
branchPos_(other.branchPos_),
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -42,7 +42,7 @@ class HighsDynamicRowMatrix {
|
|
42
42
|
|
43
43
|
/// vector of column sizes
|
44
44
|
|
45
|
-
/// keep an ordered set
|
45
|
+
/// keep an ordered set of free spaces in the row arrays so that they can be
|
46
46
|
/// reused efficiently
|
47
47
|
std::set<std::pair<HighsInt, HighsInt>> freespaces_;
|
48
48
|
|
@@ -52,7 +52,9 @@ class HighsDynamicRowMatrix {
|
|
52
52
|
public:
|
53
53
|
HighsDynamicRowMatrix(HighsInt ncols);
|
54
54
|
|
55
|
-
bool columnsLinked(HighsInt rowindex) const {
|
55
|
+
bool columnsLinked(HighsInt rowindex) const {
|
56
|
+
return (colsLinked[rowindex] != 0);
|
57
|
+
}
|
56
58
|
|
57
59
|
void unlinkColumns(HighsInt rowindex);
|
58
60
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -23,7 +23,7 @@
|
|
23
23
|
|
24
24
|
#include "lp_data/HConst.h"
|
25
25
|
|
26
|
-
// helper struct to compute the
|
26
|
+
// helper struct to compute the multiplicative inverse by using fermats
|
27
27
|
// theorem and recursive repeated squaring.
|
28
28
|
// Under the assumption that k is a small prime and an 32bit HighsInt is enough
|
29
29
|
// to hold the number (k-1)^(k-2) good compilers should be able to optimize this
|
@@ -39,7 +39,7 @@ struct HighsGFk;
|
|
39
39
|
template <>
|
40
40
|
struct HighsGFk<2> {
|
41
41
|
static constexpr unsigned int powk(unsigned int a) { return a * a; }
|
42
|
-
static constexpr unsigned int inverse(unsigned int
|
42
|
+
static constexpr unsigned int inverse(unsigned int) { return 1; }
|
43
43
|
};
|
44
44
|
|
45
45
|
template <>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -54,7 +54,7 @@ class HighsImplications {
|
|
54
54
|
std::vector<uint8_t> colsubstituted;
|
55
55
|
HighsImplications(const HighsMipSolver& mipsolver) : mipsolver(mipsolver) {
|
56
56
|
HighsInt numcol = mipsolver.numCol();
|
57
|
-
implications.resize(2 * numcol);
|
57
|
+
implications.resize(2 * static_cast<size_t>(numcol));
|
58
58
|
colsubstituted.resize(numcol);
|
59
59
|
vubs.resize(numcol);
|
60
60
|
vlbs.resize(numcol);
|
@@ -69,7 +69,7 @@ class HighsImplications {
|
|
69
69
|
implications.shrink_to_fit();
|
70
70
|
|
71
71
|
HighsInt numcol = mipsolver.numCol();
|
72
|
-
implications.resize(2 * numcol);
|
72
|
+
implications.resize(2 * static_cast<size_t>(numcol));
|
73
73
|
colsubstituted.resize(numcol);
|
74
74
|
numImplications = 0;
|
75
75
|
vubs.clear();
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -96,6 +96,11 @@ class HighsLpRelaxation {
|
|
96
96
|
|
97
97
|
HighsLpRelaxation(const HighsLpRelaxation& other);
|
98
98
|
|
99
|
+
void getCutPool(HighsInt& num_col, HighsInt& num_cut,
|
100
|
+
std::vector<double>& cut_lower,
|
101
|
+
std::vector<double>& cut_upper,
|
102
|
+
HighsSparseMatrix& cut_matrix) const;
|
103
|
+
|
99
104
|
class Playground {
|
100
105
|
friend class HighsLpRelaxation;
|
101
106
|
HighsLpRelaxation* lp;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -94,10 +94,12 @@ class HighsMipSolver {
|
|
94
94
|
mutable HighsTimer timer_;
|
95
95
|
void cleanupSolve();
|
96
96
|
|
97
|
-
void runPresolve();
|
97
|
+
void runPresolve(const HighsInt presolve_reduction_limit);
|
98
98
|
const HighsLp& getPresolvedModel() const;
|
99
99
|
HighsPresolveStatus getPresolveStatus() const;
|
100
100
|
presolve::HighsPostsolveStack getPostsolveStack() const;
|
101
|
+
|
102
|
+
void callbackGetCutPool() const;
|
101
103
|
};
|
102
104
|
|
103
105
|
#endif
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -128,6 +128,46 @@ struct HighsMipSolverData {
|
|
128
128
|
implications(mipsolver),
|
129
129
|
heuristics(mipsolver),
|
130
130
|
objectiveFunction(mipsolver),
|
131
|
+
presolve_status(HighsPresolveStatus::kNotSet),
|
132
|
+
cliquesExtracted(false),
|
133
|
+
rowMatrixSet(false),
|
134
|
+
analyticCenterComputed(false),
|
135
|
+
analyticCenterStatus(HighsModelStatus::kNotset),
|
136
|
+
detectSymmetries(false),
|
137
|
+
numRestarts(0),
|
138
|
+
numRestartsRoot(0),
|
139
|
+
numCliqueEntriesAfterPresolve(0),
|
140
|
+
numCliqueEntriesAfterFirstPresolve(0),
|
141
|
+
feastol(0.0),
|
142
|
+
epsilon(0.0),
|
143
|
+
heuristic_effort(0.0),
|
144
|
+
dispfreq(0),
|
145
|
+
firstlpsolobj(-kHighsInf),
|
146
|
+
rootlpsolobj(-kHighsInf),
|
147
|
+
numintegercols(0),
|
148
|
+
maxTreeSizeLog2(0),
|
149
|
+
pruned_treeweight(0),
|
150
|
+
avgrootlpiters(0.0),
|
151
|
+
last_disptime(0.0),
|
152
|
+
firstrootlpiters(0),
|
153
|
+
num_nodes(0),
|
154
|
+
num_leaves(0),
|
155
|
+
num_leaves_before_run(0),
|
156
|
+
num_nodes_before_run(0),
|
157
|
+
total_lp_iterations(0),
|
158
|
+
heuristic_lp_iterations(0),
|
159
|
+
sepa_lp_iterations(0),
|
160
|
+
sb_lp_iterations(0),
|
161
|
+
total_lp_iterations_before_run(0),
|
162
|
+
heuristic_lp_iterations_before_run(0),
|
163
|
+
sepa_lp_iterations_before_run(0),
|
164
|
+
sb_lp_iterations_before_run(0),
|
165
|
+
num_disp_lines(0),
|
166
|
+
numImprovingSols(0),
|
167
|
+
lower_bound(-kHighsInf),
|
168
|
+
upper_bound(kHighsInf),
|
169
|
+
upper_limit(kHighsInf),
|
170
|
+
optimality_limit(kHighsInf),
|
131
171
|
debugSolution(mipsolver) {
|
132
172
|
domain.addCutpool(cutpool);
|
133
173
|
domain.addConflictPool(conflictPool);
|
@@ -156,11 +196,13 @@ struct HighsMipSolverData {
|
|
156
196
|
void init();
|
157
197
|
void basisTransfer();
|
158
198
|
void checkObjIntegrality();
|
159
|
-
void runPresolve();
|
199
|
+
void runPresolve(const HighsInt presolve_reduction_limit);
|
160
200
|
void setupDomainPropagation();
|
161
|
-
void saveReportMipSolution(const double new_upper_limit);
|
201
|
+
void saveReportMipSolution(const double new_upper_limit = -kHighsInf);
|
162
202
|
void runSetup();
|
163
|
-
double
|
203
|
+
double transformNewIntegerFeasibleSolution(
|
204
|
+
const std::vector<double>& sol,
|
205
|
+
const bool possibly_store_as_new_incumbent = true);
|
164
206
|
double percentageInactiveIntegers() const;
|
165
207
|
void performRestart();
|
166
208
|
bool checkSolution(const std::vector<double>& solution) const;
|
@@ -187,6 +229,7 @@ struct HighsMipSolverData {
|
|
187
229
|
void limitsToBounds(double& dual_bound, double& primal_bound,
|
188
230
|
double& mip_rel_gap) const;
|
189
231
|
bool interruptFromCallbackWithData(const int callback_type,
|
232
|
+
const double mipsolver_objective_value,
|
190
233
|
const std::string message = "") const;
|
191
234
|
};
|
192
235
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -20,7 +20,7 @@
|
|
20
20
|
* cut.
|
21
21
|
*
|
22
22
|
* If a row contains continuous variables that sit at zero after bound
|
23
|
-
* substitution, then those rows are included in the
|
23
|
+
* substitution, then those rows are included in the congruence system, as the
|
24
24
|
* presence of such variables does not reduce the cuts violation when applying
|
25
25
|
* the MIR procedure. In order to handle their presence the row must simply be
|
26
26
|
* scaled, such that all integer variables that have a non-zero solution value
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -106,8 +106,8 @@ class HighsNodeQueue {
|
|
106
106
|
reinterpret_cast<FreelistNode*>(state->freeListHead)->next;
|
107
107
|
} else {
|
108
108
|
ptr = reinterpret_cast<T*>(state->currChunkStart);
|
109
|
-
state->currChunkStart
|
110
|
-
|
109
|
+
if (!ptr || state->currChunkStart + sizeof(FreelistNode) >
|
110
|
+
state->currChunkEnd) {
|
111
111
|
auto newChunk = new Chunk;
|
112
112
|
newChunk->next = state->chunkListHead;
|
113
113
|
state->chunkListHead = newChunk;
|
@@ -116,6 +116,8 @@ class HighsNodeQueue {
|
|
116
116
|
state->currChunkStart + sizeof(newChunk->storage);
|
117
117
|
ptr = reinterpret_cast<T*>(state->currChunkStart);
|
118
118
|
state->currChunkStart += sizeof(FreelistNode);
|
119
|
+
} else {
|
120
|
+
state->currChunkStart += sizeof(FreelistNode);
|
119
121
|
}
|
120
122
|
}
|
121
123
|
return ptr;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|
@@ -10,7 +10,7 @@
|
|
10
10
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
11
11
|
/**@file mip/HighsPathSeparator.h
|
12
12
|
* @brief Class for separating cuts from heuristically aggregating rows from the
|
13
|
-
* LP to
|
13
|
+
* LP to identify path's in a network
|
14
14
|
*
|
15
15
|
*/
|
16
16
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
/* */
|
3
3
|
/* This file is part of the HiGHS linear optimization suite */
|
4
4
|
/* */
|
5
|
-
/* Written and engineered 2008-
|
5
|
+
/* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
|
6
6
|
/* Leona Gottwald and Michael Feldmeier */
|
7
7
|
/* */
|
8
8
|
/* Available as open-source under the MIT License */
|