PySCIPOpt 5.7.1__cp39-cp39-win_amd64.whl → 6.1.0__cp39-cp39-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.
pyscipopt/scip.pxd CHANGED
@@ -28,6 +28,7 @@ cdef extern from "scip/scip.h":
28
28
  SCIP_VARTYPE SCIP_VARTYPE_BINARY
29
29
  SCIP_VARTYPE SCIP_VARTYPE_INTEGER
30
30
  SCIP_VARTYPE SCIP_VARTYPE_IMPLINT
31
+ SCIP_VARTYPE SCIP_DEPRECATED_VARTYPE_IMPLINT
31
32
  SCIP_VARTYPE SCIP_VARTYPE_CONTINUOUS
32
33
 
33
34
  ctypedef int SCIP_VARSTATUS
@@ -267,12 +268,15 @@ cdef extern from "scip/scip.h":
267
268
  SCIP_EVENTTYPE SCIP_EVENTTYPE_LHOLEADDED
268
269
  SCIP_EVENTTYPE SCIP_EVENTTYPE_LHOLEREMOVED
269
270
  SCIP_EVENTTYPE SCIP_EVENTTYPE_IMPLADDED
271
+ SCIP_EVENTTYPE SCIP_EVENTTYPE_TYPECHANGED
272
+ SCIP_EVENTTYPE SCIP_EVENTTYPE_IMPLTYPECHANGED
270
273
  SCIP_EVENTTYPE SCIP_EVENTTYPE_PRESOLVEROUND
271
274
  SCIP_EVENTTYPE SCIP_EVENTTYPE_NODEFOCUSED
272
275
  SCIP_EVENTTYPE SCIP_EVENTTYPE_NODEFEASIBLE
273
276
  SCIP_EVENTTYPE SCIP_EVENTTYPE_NODEINFEASIBLE
274
277
  SCIP_EVENTTYPE SCIP_EVENTTYPE_NODEBRANCHED
275
278
  SCIP_EVENTTYPE SCIP_EVENTTYPE_NODEDELETE
279
+ SCIP_EVENTTYPE SCIP_EVENTTYPE_DUALBOUNDIMPROVED
276
280
  SCIP_EVENTTYPE SCIP_EVENTTYPE_FIRSTLPSOLVED
277
281
  SCIP_EVENTTYPE SCIP_EVENTTYPE_LPSOLVED
278
282
  SCIP_EVENTTYPE SCIP_EVENTTYPE_POORSOLFOUND
@@ -302,6 +306,7 @@ cdef extern from "scip/scip.h":
302
306
  SCIP_EVENTTYPE SCIP_EVENTTYPE_LPEVENT
303
307
  SCIP_EVENTTYPE SCIP_EVENTTYPE_SOLFOUND
304
308
  SCIP_EVENTTYPE SCIP_EVENTTYPE_SOLEVENT
309
+ SCIP_EVENTTYPE SCIP_EVENTTYPE_GAPUPDATED
305
310
  SCIP_EVENTTYPE SCIP_EVENTTYPE_ROWCHANGED
306
311
  SCIP_EVENTTYPE SCIP_EVENTTYPE_ROWEVENT
307
312
 
@@ -314,6 +319,12 @@ cdef extern from "scip/scip.h":
314
319
  cdef extern from "scip/type_var.h":
315
320
  SCIP_LOCKTYPE SCIP_LOCKTYPE_MODEL
316
321
  SCIP_LOCKTYPE SCIP_LOCKTYPE_CONFLICT
322
+
323
+ ctypedef int SCIP_IMPLINTTYPE
324
+ cdef extern from "scip/type_var.h":
325
+ SCIP_IMPLINTTYPE SCIP_IMPLINTTYPE_NONE
326
+ SCIP_IMPLINTTYPE SCIP_IMPLINTTYPE_WEAK
327
+ SCIP_IMPLINTTYPE SCIP_IMPLINTTYPE_STRONG
317
328
 
318
329
  ctypedef int SCIP_BENDERSENFOTYPE
319
330
  cdef extern from "scip/type_benders.h":
@@ -370,6 +381,9 @@ cdef extern from "scip/scip.h":
370
381
 
371
382
  ctypedef double SCIP_Real
372
383
 
384
+ ctypedef struct SCIP_RATIONAL:
385
+ pass
386
+
373
387
  ctypedef struct SCIP:
374
388
  pass
375
389
 
@@ -381,12 +395,18 @@ cdef extern from "scip/scip.h":
381
395
 
382
396
  ctypedef struct SCIP_ROW:
383
397
  pass
398
+
399
+ ctypedef struct SCIP_ROWEXACT:
400
+ pass
384
401
 
385
402
  ctypedef struct SCIP_NLROW:
386
403
  pass
387
404
 
388
405
  ctypedef struct SCIP_COL:
389
406
  pass
407
+
408
+ ctypedef struct SCIP_COLEXACT:
409
+ pass
390
410
 
391
411
  ctypedef struct SCIP_SOL:
392
412
  pass
@@ -430,6 +450,15 @@ cdef extern from "scip/scip.h":
430
450
  ctypedef struct SCIP_HEURDATA:
431
451
  pass
432
452
 
453
+ ctypedef struct SCIP_IISFINDER:
454
+ pass
455
+
456
+ ctypedef struct SCIP_IISFINDERDATA:
457
+ pass
458
+
459
+ ctypedef struct SCIP_IIS:
460
+ pass
461
+
433
462
  ctypedef struct SCIP_RELAX:
434
463
  pass
435
464
 
@@ -508,6 +537,9 @@ cdef extern from "scip/scip.h":
508
537
  ctypedef struct SCIP_LPI:
509
538
  pass
510
539
 
540
+ ctypedef struct SCIP_LPEXACT:
541
+ pass
542
+
511
543
  ctypedef struct BMS_BLKMEM:
512
544
  pass
513
545
 
@@ -538,6 +570,9 @@ cdef extern from "scip/scip.h":
538
570
  ctypedef union SCIP_DOMCHG:
539
571
  pass
540
572
 
573
+ ctypedef struct SCIP_RATIONAL:
574
+ pass
575
+
541
576
  ctypedef void (*messagecallback) (SCIP_MESSAGEHDLR* messagehdlr, FILE* file, const char* msg) noexcept
542
577
  ctypedef void (*errormessagecallback) (void* data, FILE* file, const char* msg)
543
578
  ctypedef SCIP_RETCODE (*messagehdlrfree) (SCIP_MESSAGEHDLR* messagehdlr)
@@ -702,6 +737,7 @@ cdef extern from "scip/scip.h":
702
737
  SCIP_Real SCIPepsilon(SCIP* scip)
703
738
  SCIP_Real SCIPfeastol(SCIP* scip)
704
739
  SCIP_RETCODE SCIPsetObjIntegral(SCIP* scip)
740
+ SCIP_Bool SCIPisObjIntegral(SCIP* scip)
705
741
  SCIP_Real SCIPgetLocalOrigEstimate(SCIP* scip)
706
742
  SCIP_Real SCIPgetLocalTransEstimate(SCIP* scip)
707
743
 
@@ -802,6 +838,11 @@ cdef extern from "scip/scip.h":
802
838
  int SCIPgetNImplVars(SCIP* scip)
803
839
  int SCIPgetNContVars(SCIP* scip)
804
840
  SCIP_VARTYPE SCIPvarGetType(SCIP_VAR* var)
841
+ SCIP_Bool SCIPvarIsBinary(SCIP_VAR* var)
842
+ SCIP_Bool SCIPvarIsIntegral(SCIP_VAR* var)
843
+ SCIP_Bool SCIPvarIsImpliedIntegral(SCIP_VAR* var)
844
+ SCIP_Bool SCIPvarIsNonimpliedIntegral(SCIP_VAR* var)
845
+ SCIP_IMPLINTTYPE SCIPvarGetImplType(SCIP_VAR* var)
805
846
  SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR* var)
806
847
  SCIP_Bool SCIPvarIsOriginal(SCIP_VAR* var)
807
848
  SCIP_Bool SCIPvarIsTransformed(SCIP_VAR* var)
@@ -830,6 +871,18 @@ cdef extern from "scip/scip.h":
830
871
  SCIP_Longint SCIPvarGetNBranchingsCurrentRun(SCIP_VAR* var, SCIP_BRANCHDIR dir)
831
872
  SCIP_Bool SCIPvarMayRoundUp(SCIP_VAR* var)
832
873
  SCIP_Bool SCIPvarMayRoundDown(SCIP_VAR* var)
874
+ SCIP_Bool SCIPvarIsActive(SCIP_VAR* var)
875
+ SCIP_Real SCIPadjustedVarLb(SCIP* scip, SCIP_VAR* var, SCIP_Real lb)
876
+ SCIP_Real SCIPadjustedVarUb(SCIP* scip, SCIP_VAR* var, SCIP_Real ub)
877
+ SCIP_RETCODE SCIPaggregateVars(SCIP* scip,
878
+ SCIP_VAR* varx,
879
+ SCIP_VAR* vary,
880
+ SCIP_Real scalarx,
881
+ SCIP_Real scalary,
882
+ SCIP_Real rhs,
883
+ SCIP_Bool* infeasible,
884
+ SCIP_Bool* redundant,
885
+ SCIP_Bool* aggregated)
833
886
 
834
887
  # LP Methods
835
888
  SCIP_RETCODE SCIPgetLPColsData(SCIP* scip, SCIP_COL*** cols, int* ncols)
@@ -970,11 +1023,12 @@ cdef extern from "scip/scip.h":
970
1023
  SCIP_RETCODE (*readercopy) (SCIP* scip, SCIP_READER* reader),
971
1024
  SCIP_RETCODE (*readerfree) (SCIP* scip, SCIP_READER* reader),
972
1025
  SCIP_RETCODE (*readerread) (SCIP* scip, SCIP_READER* reader, const char* filename, SCIP_RESULT* result),
973
- SCIP_RETCODE (*readerwrite) (SCIP* scip, SCIP_READER* reader, FILE* file,
1026
+ SCIP_RETCODE (*readerwrite) (SCIP* scip, SCIP_READER* reader, FILE* file, const char* filename,
974
1027
  const char* name, SCIP_PROBDATA* probdata, SCIP_Bool transformed,
975
- SCIP_OBJSENSE objsense, SCIP_Real objscale, SCIP_Real objoffset,
976
- SCIP_VAR** vars, int nvars, int nbinvars, int nintvars, int nimplvars, int ncontvars,
977
- SCIP_VAR** fixedvars, int nfixedvars, int startnvars,
1028
+ SCIP_OBJSENSE objsense, SCIP_Real objoffset, SCIP_Real objscale,
1029
+ SCIP_RATIONAL* objoffsetexact, SCIP_RATIONAL* objscaleexact,
1030
+ SCIP_VAR** vars, int nvars, int nbinvars, int nintvars, int nimplvars,
1031
+ int ncontvars, SCIP_VAR** fixedvars, int nfixedvars, int startnvars,
978
1032
  SCIP_CONS** conss, int nconss, int maxnconss, int startnconss,
979
1033
  SCIP_Bool genericnames, SCIP_RESULT* result),
980
1034
  SCIP_READERDATA* readerdata)
@@ -1167,6 +1221,31 @@ cdef extern from "scip/scip.h":
1167
1221
  SCIP_HEURTIMING SCIPheurGetTimingmask(SCIP_HEUR* heur)
1168
1222
  void SCIPheurSetTimingmask(SCIP_HEUR* heur, SCIP_HEURTIMING timingmask)
1169
1223
 
1224
+ #IIS finder plugin
1225
+ SCIP_RETCODE SCIPincludeIISfinder(SCIP* scip,
1226
+ const char* name,
1227
+ const char* desc,
1228
+ int priority,
1229
+ SCIP_RETCODE (*iisfindercopy) (SCIP* scip, SCIP_IISFINDER* iisfinder),
1230
+ SCIP_RETCODE (*iisfinderfree) (SCIP* scip, SCIP_IISFINDER* iisfinder),
1231
+ SCIP_RETCODE (*iisfinderexec) (SCIP_IIS* iis, SCIP_IISFINDER* iisfinder, SCIP_RESULT* result),
1232
+ SCIP_IISFINDERDATA* iisfinderdata)
1233
+
1234
+ SCIP_IISFINDERDATA* SCIPiisfinderGetData(SCIP_IISFINDER* iisfinder)
1235
+ SCIP_RETCODE SCIPgenerateIIS(SCIP* scip)
1236
+ SCIP_RETCODE SCIPiisGreedyMakeIrreducible(SCIP_IIS* iis)
1237
+ SCIP_Bool SCIPiisIsSubscipInfeasible(SCIP_IIS* iis)
1238
+ SCIP_Bool SCIPiisIsSubscipIrreducible(SCIP_IIS* iis)
1239
+ SCIP_RETCODE SCIPiisSetSubscipIrreducible(SCIP_IIS* iis, SCIP_Bool irreducible)
1240
+ SCIP_RETCODE SCIPiisSetSubscipInfeasible(SCIP_IIS* iis, SCIP_Bool infeasible)
1241
+ SCIP_IIS* SCIPgetIIS(SCIP* scip)
1242
+ SCIP_IISFINDER* SCIPfindIISfinder(SCIP* scip, const char* name)
1243
+ SCIP_Real SCIPiisGetTime(SCIP_IIS* scip)
1244
+ SCIP_Bool SCIPiisIsSubscipIrreducible(SCIP_IIS* scip)
1245
+ SCIP_Bool SCIPiisIsSubscipInfeasible(SCIP_IIS* scip)
1246
+ SCIP_Longint SCIPiisGetNNodes(SCIP_IIS* scip)
1247
+ SCIP* SCIPiisGetSubscip(SCIP_IIS* iis)
1248
+
1170
1249
  #Relaxation plugin
1171
1250
  SCIP_RETCODE SCIPincludeRelax(SCIP* scip,
1172
1251
  const char* name,
@@ -1366,8 +1445,33 @@ cdef extern from "scip/scip.h":
1366
1445
  SCIP_Bool SCIPisIntegral(SCIP* scip, SCIP_Real val)
1367
1446
  SCIP_Real SCIPgetTreesizeEstimation(SCIP* scip)
1368
1447
 
1448
+ # Exact SCIP methods
1449
+ SCIP_RETCODE SCIPenableExactSolving(SCIP* scip, SCIP_Bool enable);
1450
+ SCIP_Bool SCIPisExact(SCIP* scip);
1451
+ SCIP_Bool SCIPallowNegSlack(SCIP* scip);
1452
+ SCIP_RETCODE SCIPbranchLPExact(SCIP* scip, SCIP_RESULT* result);
1453
+ SCIP_RETCODE SCIPaddRowExact(SCIP* scip, SCIP_ROWEXACT* rowexact);
1454
+
1455
+ # Exact LP SCIP methods
1456
+ SCIP_VAR* SCIPcolExactGetVar(SCIP_COLEXACT* col);
1457
+ SCIP_RATIONAL* SCIProwExactGetLhs(SCIP_ROWEXACT* row);
1458
+ SCIP_RATIONAL* SCIProwExactGetRhs(SCIP_ROWEXACT* row);
1459
+ SCIP_RATIONAL* SCIProwExactGetConstant(SCIP_ROWEXACT* row);
1460
+ int SCIProwExactGetNNonz(SCIP_ROWEXACT* row);
1461
+ SCIP_RATIONAL** SCIProwExactGetVals(SCIP_ROWEXACT* row);
1462
+ SCIP_Bool SCIProwExactIsInLP(SCIP_ROWEXACT* row);
1463
+ void SCIProwExactSort(SCIP_ROWEXACT* row);
1464
+ SCIP_COLEXACT** SCIProwExactGetCols(SCIP_ROWEXACT* row);
1465
+ void SCIProwExactLock(SCIP_ROWEXACT* row);
1466
+ void SCIProwExactUnlock(SCIP_ROWEXACT* row);
1467
+ SCIP_ROW* SCIProwExactGetRow(SCIP_ROWEXACT* row);
1468
+ SCIP_ROW* SCIProwExactGetRowRhs(SCIP_ROWEXACT* row);
1469
+ SCIP_Bool SCIProwExactHasFpRelax(SCIP_ROWEXACT* row);
1470
+ SCIP_Bool SCIPlpExactDiving(SCIP_LPEXACT* lpexact);
1471
+
1369
1472
  # Statistic Methods
1370
1473
  SCIP_RETCODE SCIPprintStatistics(SCIP* scip, FILE* outfile)
1474
+ SCIP_RETCODE SCIPprintStatisticsJson(SCIP* scip, FILE* file)
1371
1475
  SCIP_Longint SCIPgetNNodes(SCIP* scip)
1372
1476
  SCIP_Longint SCIPgetNTotalNodes(SCIP* scip)
1373
1477
  SCIP_Longint SCIPgetNFeasibleLeaves(SCIP* scip)
@@ -1381,6 +1485,7 @@ cdef extern from "scip/scip.h":
1381
1485
  int SCIPgetPlungeDepth(SCIP* scip)
1382
1486
  SCIP_Longint SCIPgetNNodeLPIterations(SCIP* scip)
1383
1487
  SCIP_Longint SCIPgetNStrongbranchLPIterations(SCIP* scip)
1488
+ SCIP_Real SCIPgetPrimalDualIntegral(SCIP* scip)
1384
1489
 
1385
1490
  # Parameter Functions
1386
1491
  SCIP_RETCODE SCIPsetBoolParam(SCIP* scip, char* name, SCIP_Bool value)
@@ -1446,11 +1551,6 @@ cdef extern from "scip/scip.h":
1446
1551
 
1447
1552
  BMS_BLKMEM* SCIPblkmem(SCIP* scip)
1448
1553
 
1449
- # pub_misc.h
1450
- SCIP_RETCODE SCIPhashmapCreate(SCIP_HASHMAP** hashmap, BMS_BLKMEM* blkmem, int mapsize)
1451
- void SCIPhashmapFree(SCIP_HASHMAP** hashmap)
1452
-
1453
-
1454
1554
  cdef extern from "scip/tree.h":
1455
1555
  int SCIPnodeGetNAddedConss(SCIP_NODE* node)
1456
1556
 
@@ -1610,7 +1710,6 @@ cdef extern from "scip/cons_sos1.h":
1610
1710
  SCIP_CONS* cons,
1611
1711
  SCIP_VAR* var)
1612
1712
 
1613
-
1614
1713
  cdef extern from "scip/cons_sos2.h":
1615
1714
  SCIP_RETCODE SCIPcreateConsSOS2(SCIP* scip,
1616
1715
  SCIP_CONS** cons,
@@ -1677,8 +1776,6 @@ cdef extern from "scip/cons_and.h":
1677
1776
  SCIP_VAR* SCIPgetResultantAnd(SCIP* scip, SCIP_CONS* cons)
1678
1777
  SCIP_Bool SCIPisAndConsSorted(SCIP* scip, SCIP_CONS* cons)
1679
1778
  SCIP_RETCODE SCIPsortAndCons(SCIP* scip, SCIP_CONS* cons)
1680
- SCIP_RETCODE SCIPchgAndConsCheckFlagWhenUpgr(SCIP* scip, SCIP_CONS* cons, SCIP_Bool flag)
1681
- SCIP_RETCODE SCIPchgAndConsRemovableFlagWhenUpgr(SCIP* scip, SCIP_CONS* cons, SCIP_Bool flag)
1682
1779
 
1683
1780
  cdef extern from "scip/cons_or.h":
1684
1781
  SCIP_RETCODE SCIPcreateConsOr(SCIP* scip,
@@ -1715,6 +1812,7 @@ cdef extern from "scip/cons_xor.h":
1715
1812
  SCIP_Bool dynamic,
1716
1813
  SCIP_Bool removable,
1717
1814
  SCIP_Bool stickingatnode)
1815
+
1718
1816
  cdef extern from "scip/scip_cons.h":
1719
1817
  SCIP_RETCODE SCIPprintCons(SCIP* scip,
1720
1818
  SCIP_CONS* cons,
@@ -1869,7 +1967,6 @@ cdef extern from "scip/scip_nlp.h":
1869
1967
  SCIP_RETCODE SCIPgetNlRowActivityBounds(SCIP* scip, SCIP_NLROW* nlrow, SCIP_Real* minactivity, SCIP_Real* maxactivity)
1870
1968
  SCIP_RETCODE SCIPprintNlRow(SCIP* scip, SCIP_NLROW* nlrow, FILE* file)
1871
1969
 
1872
-
1873
1970
  cdef extern from "scip/cons_cardinality.h":
1874
1971
  SCIP_RETCODE SCIPcreateConsCardinality(SCIP* scip,
1875
1972
  SCIP_CONS** cons,
@@ -2027,6 +2124,8 @@ cdef extern from "tpi/tpi.h":
2027
2124
  cdef class Expr:
2028
2125
  cdef public terms
2029
2126
 
2127
+ cpdef double _evaluate(self, Solution sol)
2128
+
2030
2129
  cdef class Event:
2031
2130
  cdef SCIP_EVENT* event
2032
2131
  # can be used to store problem data
@@ -2042,6 +2141,14 @@ cdef class Column:
2042
2141
  @staticmethod
2043
2142
  cdef create(SCIP_COL* scipcol)
2044
2143
 
2144
+ cdef class ColumnExact:
2145
+ cdef SCIP_COLEXACT* scip_col_exact
2146
+ # can be used to store problem data
2147
+ cdef public object data
2148
+
2149
+ @staticmethod
2150
+ cdef create(SCIP_COLEXACT* scip_col_exact)
2151
+
2045
2152
  cdef class Row:
2046
2153
  cdef SCIP_ROW* scip_row
2047
2154
  # can be used to store problem data
@@ -2050,6 +2157,14 @@ cdef class Row:
2050
2157
  @staticmethod
2051
2158
  cdef create(SCIP_ROW* sciprow)
2052
2159
 
2160
+ cdef class RowExact:
2161
+ cdef SCIP_ROWEXACT* scip_row_exact
2162
+ # can be used to store problem data
2163
+ cdef public object data
2164
+
2165
+ @staticmethod
2166
+ cdef create(SCIP_ROWEXACT* scip_row_exact)
2167
+
2053
2168
  cdef class NLRow:
2054
2169
  cdef SCIP_NLROW* scip_nlrow
2055
2170
  # can be used to store problem data
@@ -2103,6 +2218,12 @@ cdef class Constraint:
2103
2218
  @staticmethod
2104
2219
  cdef create(SCIP_CONS* scipcons)
2105
2220
 
2221
+ cdef class IIS:
2222
+ cdef SCIP_IIS* _iis
2223
+
2224
+ @staticmethod
2225
+ cdef create(SCIP_IIS* iis)
2226
+
2106
2227
  cdef class Model:
2107
2228
  cdef SCIP* _scip
2108
2229
  cdef SCIP_Bool* _valid
@@ -2117,10 +2238,17 @@ cdef class Model:
2117
2238
  cdef SCIP_Bool _freescip
2118
2239
  # map to store python variables
2119
2240
  cdef _modelvars
2241
+ # map to store python constraints
2242
+ cdef _modelconss
2120
2243
  # used to keep track of the number of event handlers generated
2121
2244
  cdef int _generated_event_handlers_count
2122
2245
  # store references to Benders subproblem Models for proper cleanup
2123
2246
  cdef _benders_subproblems
2247
+ # store iis, if found
2248
+ cdef SCIP_IIS* _iis
2249
+ # helper methods for later var and cons cleanup
2250
+ cdef _getOrCreateCons(self, SCIP_CONS* scip_cons)
2251
+ cdef _getOrCreateVar(self, SCIP_VAR* scip_var)
2124
2252
 
2125
2253
  @staticmethod
2126
2254
  cdef create(SCIP* scip)