Skip to content

Tags: scipopt/PySCIPOpt

Tags

v6.0.0

Toggle v6.0.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
SCIP 10 (#1009)

* Add printStatisticsJson

* Implied integer stuff

* Add extra event types

* minor fixes in relax.pxi

* start of iisfinder plugin

* udpate inlcudeReader with the new definition, add printStatisticsJson

* Add assert to statistics json test

* compilation, left iis for later

* fix issues with exact scip. still no support

* fixed some tests

* fix minor typos

* changelog so I don't forget

* variable type tests

* fix test_pricer bug

* typo

* IISfinder progress

* Start of support for exact scip

* Fix reader write (#1015)

* Fix most compilation issues and warnings

* Update IIS method and remove redeclaration

* Fix build error

* little IIS progress

* iis compilation

* some iis methods

* remove semicolons

* Change IIS methods imported

* remove cons_and methods that were removed in SCIP

- scipopt/scip@602bc1c810

* Update callback signatures of IISFinderExec and ReaderWrite to match SCIP 10

* Export IISfinder class

* Add simple iis tests

* Fix write json statistics test

* Use deprecated implied integer type

* Raise error when relaxator doesn't implement the exec callback

* Fix event tests and add another one for catching variable events

* Fix relaxator tests

* add forgotten events. tests pass

* custom iis finder test

* try to fix jenkins pipeline

* some stuff for the release

* more complete and passing event tests

* typo

* correct version name

* changelog and exact keyword

* update scip version

* trying out new links

* binaries will remain on github

* update with new file names

* one more attempt

* ignoring scip deprecation warning, for now

* try removing cached scip

* revert last commit

* some work on iis

* fix breaking tests with new preset

* remove usage of deprecated implied integrality

* pyscipopt style

* clean up the class

* some iis improvements

* more robust time testing

* I think this is it

* cleaner iis

* iis tutorial

---------

Co-authored-by: Mohammed Ghannam <[email protected]>
Co-authored-by: Mohammed Ghannam <[email protected]>
Co-authored-by: DominikKamp <[email protected]>
Co-authored-by: Stefan Vigerske <[email protected]>
Co-authored-by: Mohammed Ghannam <[email protected]>

v5.7.1

Toggle v5.7.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 571 (#1113)

* some cleanup

* update scip version

* explicitely install pytest

* removing stage checks due to new default interface preset

* test stage checking

* fix tests

* missing version updates

* update from scipoptsuitedeploy

* Revert "removing stage checks due to new default interface preset"

This reverts commit 550e1d2.

* try to update macosx_deployment_target

* typo and date

Updated version number and added new features.

* v571

v5.7.0

Toggle v5.7.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Manage benders subproblems memory in the master scip instance (#1111)

* Manage benders subproblems memory in the master scip instance

* Update src/pyscipopt/scip.pxi

Co-authored-by: João Dionísio <[email protected]>

* Fix changelog

---------

Co-authored-by: João Dionísio <[email protected]>

v5.6.0

Toggle v5.6.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
BUG: `_VarArray` can't handle `MatrixVar` (#1044)

* Refactor _VarArray initialization and type checks

Simplifies and clarifies the logic for initializing _VarArray by restructuring type checks and error handling. Now uses f-strings for error messages and ensures consistent handling of empty lists and invalid types.

* Refactor _VarArray to support MatrixVariable input

Updated the _VarArray class constructor to handle MatrixVariable inputs in addition to Variable, list, and tuple. Refactored pointer allocation logic into a helper function for improved code clarity and maintainability.

* Add test for indicator constraint with matrix binary var

Introduces a new test to verify that addConsIndicator works correctly when the binary variable is a matrix variable, addressing issue #1043.

* Update CHANGELOG.md

* Declare ptr variable in create_ptr function

To fix "Storing unsafe C derivative of temporary Python reference"

* Refactor create_ptr to remove redundant size argument

The create_ptr function in _VarArray.__cinit__ no longer takes a separate size argument and instead uses len(vars) directly. This simplifies the function signature and reduces redundancy.

* Refactor _VarArray initialization logic

Inlined the pointer creation logic in _VarArray's __cinit__ method, removing the inner create_ptr function. This simplifies the code and improves readability while maintaining the same functionality.

* Update CHANGELOG

* Update test for addConsIndicator with activeone flag

The test now checks addConsIndicator with both activeone=True and activeone=False, and updates the objective to use binvar.sum().

* ENH: flatten list

* BUG: use `np.ravel` avoid to run out of vars range

* test binvar with (1, 1, 1) matrix

* test binvar with (2, 3) matrix

* test binvar with (2, 1) list of lists

* correct index

* Add TypeError test for addConsIndicator with binvar

* Only requiring a 1D array

* TST: raise an error while get not 1D array

* MAINT: Update error message

* TST: update error type

* Update CHANGELOG.md

* Fix _VarArray initialization for empty input

Ensures _VarArray initializes ptr and size to NULL and 0, respectively, before processing input. Prevents allocation and assignment errors when an empty or invalid input is provided.

* Remove _VarArray changing from changelog

* TST: update the comparing  method

Co-authored-by: DominikKamp <[email protected]>

---------

Co-authored-by: João Dionísio <[email protected]>
Co-authored-by: DominikKamp <[email protected]>

v5.5.0

Toggle v5.5.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix master compatibility (#988)

* Remove redundant delimiter

* Add homebrew include

* Allow master version

---------

Co-authored-by: João Dionísio <[email protected]>

v5.4.1

Toggle v5.4.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Expose Matrix types (#959)

* Create branch

* start of tests

* Added extra dimension

* Update tests

* First working test

* First working test

* Expr from matrix variables test

* Working version of ExprCons with le

* Can now add linear matrix constraints

* More robust Matrix classes

* add todo

* Clean up addMatrixCons function

* Add MatrixVar methods

* Update TODOs

* Add getter functions to matrixConstraint class@
git push

* Add checks for missing numpy

* Add matrix API to readthedocs

* Add minor grammar stuff. Add GCG to similar software

* Remove universal build. Add type asserts

* Update pipelines to include numpy

* Add numpy as a dependency

* Remove cimports for now

* Support adding MatrixExprCons in addConss

* Changed tests a bit

* Support querying solution values using MatrixExpr

* Add a test

* Remove SCIP bug from tests. Already reported

* Update CHANGELOG

* Add info for 5.4.0 release

* Make numpy a dependency (not just at build time)

* Most comments addressed

* Add test for documentation

* Fix documentation

* Add solution value accessing to docs

* Format test file

* Update docs/tutorials/matrix.rst

Co-authored-by: Mohammed Ghannam <[email protected]>

* Update docs/tutorials/matrix.rst

Co-authored-by: Mohammed Ghannam <[email protected]>

* Expose Matrix types

---------

Co-authored-by: Mark Turner <[email protected]>
Co-authored-by: Joao-Dionisio <[email protected]>
Co-authored-by: Mark Turner <[email protected]>
Co-authored-by: João Dionísio <[email protected]>

v5.4.0

Toggle v5.4.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
New matrix variable functionality (#957)

* Create branch

* start of tests

* Added extra dimension

* Update tests

* First working test

* First working test

* Expr from matrix variables test

* Working version of ExprCons with le

* Can now add linear matrix constraints

* More robust Matrix classes

* add todo

* Clean up addMatrixCons function

* Add MatrixVar methods

* Update TODOs

* Add getter functions to matrixConstraint class@
git push

* Add checks for missing numpy

* Add matrix API to readthedocs

* Add minor grammar stuff. Add GCG to similar software

* Remove universal build. Add type asserts

* Update pipelines to include numpy

* Add numpy as a dependency

* Remove cimports for now

* Support adding MatrixExprCons in addConss

* Changed tests a bit

* Support querying solution values using MatrixExpr

* Add a test

* Remove SCIP bug from tests. Already reported

* Update CHANGELOG

* Add info for 5.4.0 release

* Make numpy a dependency (not just at build time)

* Most comments addressed

* Add test for documentation

* Fix documentation

* Add solution value accessing to docs

* Format test file

* Update docs/tutorials/matrix.rst

Co-authored-by: Mohammed Ghannam <[email protected]>

* Update docs/tutorials/matrix.rst

Co-authored-by: Mohammed Ghannam <[email protected]>

---------

Co-authored-by: Mark Turner <[email protected]>
Co-authored-by: Mohammed Ghannam <[email protected]>
Co-authored-by: Mark Turner <[email protected]>
Co-authored-by: Mohammed Ghannam <[email protected]>

v5.3.0

Toggle v5.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #950 from scipopt/mt/release_5_3_0

Mt/release 5 3 0

v5.2.1

Toggle v5.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #920 from scipopt/mt/release_520

Update to 5.2.0

v5.1.1

Toggle v5.1.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update changelog & version (#870)