Releases: infiniteopt/DisjunctiveProgramming.jl
Releases · infiniteopt/DisjunctiveProgramming.jl
v0.6.0
DisjunctiveProgramming v0.6.0
Breaking Changes
-Minor tweaks to the extension API for hull method
Added Features
- Support GDP formulations with InfiniteOpt
- Add methods for multiple big-M, cutting plane, and P-split
- Added utilities to support extensions
- Support copying GDP models
- Support using a single binary variable for binary disjunctions
- Minor bug fixes and printing improvements
Merged pull requests:
- Support
JuMP.valuefor Logical Variables (#96) (@pulsipher) - Update to use
JuMP.SkipModelConvertScalarSetWrapper(#97) (@pulsipher) - Add JuMP Prefix to all JuMP Methods (#98) (@pulsipher)
- Improve Printing for Disjunct/Logical Constraints and Disjunctions (#100) (@pulsipher)
- Add README for JuMP (#102) (@pulsipher)
- update equations to align* blocks (#104) (@hdavid16)
- Support disjunct constraints with integer variables (#109) (@hdavid16)
- Update Macro and Printing with JuMP 1.18 (#110) (@pulsipher)
- update proposition docs to include splatting (#111) (@hdavid16)
- Fix printing empty disjuncts (#117) (@hdavid16)
- Support Logical Complements (#118) (@pulsipher)
- Support Multiple Big-M reformulation. (#120) (@dnguyen227)
- Add Extension Friendly Variable Creation Methods (#123) (@dnguyen227)
- Support P-Split Reformulation for (affine and quadratic constraints only) (#124) (@dnguyen227)
- Support cutting planes technique. (#125) (@dnguyen227)
- Addition of copy_model and copy_gdp_data to copy GDP models. (#126) (@dnguyen227)
- Fix documentation links (#128) (@MagicMuscleMan)
- Add InfiniteOpt as an Extension (#130) (@dnguyen227)
- Prep for
v0.6(#131) (@pulsipher)
Closed issues:
- support interval arithmetic for quadratic expressions (#65)
- Restore
JuMP.prefixes (#88) - Add printing for references (#89)
- Support
JuMP.valueforLogicalVariableRef(#94) - Update the disjunction macro to use new JuMP extension API (#103)
- Disjunct constraints cannot contain binary or integer variables. (#105)
- Is it possible to save a Logical variable if I have a disjunction of merely two alternatives? (#106)
- Handle printing empty disjuncts (#108)
- Error ... is not a valid logical variable reference. (#112)
- [Documentation Request] What does
@disjunction(model, Y, exactly1=false)actually do? (#113) - Is it possible to use this package to optimize the selection of indices for a vector? (#115)
- Support Function Calls (#119)
- How to express “if y=1 then 0<=x<=u, if y=0 then x=0”? (#121)
- Documentation not reachable (404) (#127)
v0.5.0
DisjunctiveProgramming v0.5.0
Breaking changes
- Rename
DisjunctConstraintasDisjunct: #86 - Add exactly 1 constraints via the
exactly1keyword argument when creating disjunctions: #90 - Refactor logical constraints to use new
:= truesyntax instead ofin IsTrue(): #91 - Disallow logical constraints with only 1 logical variable: #92
- Support general number types: #93
Additional changes
- Various coverage improvements, bug fixes, and doc improvements
Merged pull requests:
- Increase_codecov (#82) (@hdavid16)
- remove JuMP prefix (#84) (@hdavid16)
- breaking: replace DisjunctConstraint with Disjunct (#86) (@hdavid16)
- use @constraint (#87) (@hdavid16)
- Add
exactly1option for disjunctions and fix bugs (#90) (@pulsipher) - Refactor Logical Constraints to use
:=(#91) (@pulsipher) - Disallow logical propositions with only 1 logical variable (#92) (@hdavid16)
- Support
GenericModelandAbstractModel(#93) (@pulsipher)
Closed issues:
- Array disjunctions (#67)
- Create Docs (#69)
- Add Code Coverage (#70)
- Have
@disjunctionautomatically add exactly one constraints with a keyword argument (#72) - Replace DisjunctConstraint with Disjunct (#77)
- Support the new
:=logical constraint syntax used by JuMP (#83) - Generalize to
AbstractModels (#85)
v0.4.1
DisjunctiveProgramming v0.4.1
Merged pull requests:
- add Logical alias for Logical Variable. Closes #73 (#74) (@hdavid16)
- Create CI.yml (#75) (@hdavid16)
- fix documenter task (#76) (@hdavid16)
- fix ci (#78) (@hdavid16)
- Update README.md (#79) (@hdavid16)
- Juliacon_proceedings (#80) (@hdavid16)
- Update README.md (#81) (@hdavid16)
Closed issues:
- Add a short alias for
LogicalVariable(#73)
v0.4.1 for Zenodo
Merge pull request #81 from hdavid16/hdavid16-patch-1-1 Update README.md
v0.4.0
DisjunctiveProgramming v0.4.0
Merged pull requests:
Closed issues:
v0.3.6
v0.3.5
DisjunctiveProgramming v0.3.5
v0.3.4
DisjunctiveProgramming v0.3.4
v0.3.3
DisjunctiveProgramming v0.3.3
v0.3.2
DisjunctiveProgramming v0.3.2
Closed issues:
- Are mixed-integer constraints allowed inside a disjunct? (#25)
- Big-M Tightness (#42)
- checking proposition expressions fails (#45)
- Error when adding disjunctions in a loop with EqualTo constraints (#46)
- Checking variables in a constraint (#53)
infer_bigmwithout parsing expressions or using IntervalArithmetic (#55)