Recent Releases of hypatia.jl

hypatia.jl - v0.9.0

Hypatia v0.9.0

Diff since v0.8.2

  • optimize svec and smat functions (@araujoms)
  • remove conjugation from svec (@araujoms)
  • remove abstract types in cone definitions (@araujoms)

Breaking changes

  • add support for SumOfSquares cone, now goes directly to Hypatia WSOS cone (@blegat)

Merged pull requests: - Add support for SumOfSquares cone (#844) (@blegat) - Test copy for HypatiaCones (#851) (@blegat) - optimize svec and smat functions (#852) (@araujoms) - remove complex conjugation from svec (#853) (@araujoms) - Remove abstract types from cone definitions (#854) (@araujoms) - bump version (#855) (@lkapelevich)

- Julia
Published by github-actions[bot] 8 months ago

hypatia.jl - v0.8.2

Hypatia v0.8.2

Diff since v0.8.1

Merged pull requests: - Remove parametric type from constructor (#843) (@projekter) - Fix GitHub actions badge in README (#845) (@odow) - Update GitHub actions workflows (#846) (@odow) - Prep for v0.8.2 (#847) (@odow)

- Julia
Published by github-actions[bot] 11 months ago

hypatia.jl - v0.8.1

Hypatia v0.8.1

Diff since v0.8.0

Merged pull requests: - bit of cleanup of relative entropy cone (#838) (@araujoms) - Change a+im*b to complex(a,b) (#840) (@araujoms) - Eliminate allocations in relative entropy cone (#841) (@araujoms) - Prep for v0.8.1 (#842) (@odow)

Closed issues: - Extending Hypatia (#839)

- Julia
Published by github-actions[bot] almost 2 years ago

hypatia.jl - v0.8.0

Hypatia v0.8.0

Diff since v0.7.4

Merged pull requests: - tests and examples for the complex relative entropy cone (#831) (@araujoms) - Update URLs after package move to jump-dev (#836) (@odow) - Bump version (#837) (@chriscoey)

Closed issues: - Hypatia fails to precompile on 1.10 (#835)

- Julia
Published by github-actions[bot] about 2 years ago

hypatia.jl - v0.7.4

Hypatia v0.7.4

Diff since v0.7.3

Merged pull requests: - fix: replace SuiteSparse_long with the type of Sys.WORD_SIZE (#828) (@ven-k) - fix stale code that is breaking builds (#830) (@lkapelevich) - Prep for v0.7.4 (#832) (@odow) - Fixes for Julia v1.10 (#833) (@odow)

Closed issues: - Dual of log-det cone (#827) - Doesn't compile with julia 1.10 (#834)

- Julia
Published by github-actions[bot] about 2 years ago

hypatia.jl - v0.7.3

Hypatia v0.7.3

Diff since v0.7.2

Closed issues: - using Hypatia fails (#816) - Faster arbitrary precision support for SDPs (#818) - Can't constrain affine function to be Hermitian PSD (#823)

Merged pull requests: - Update README for JuMP docs (#824) (@odow) - Fix types in Pardiso.jl (#825) (@odow) - reorder rescaling and permuting for h (#826) (@lkapelevich)

- Julia
Published by github-actions[bot] almost 3 years ago

hypatia.jl - v0.7.2

Hypatia v0.7.2

Diff since v0.7.1

Closed issues: - Complex MOI (#540) - Add support for MOI.HermitianPositiveSemidefiniteConeTriangle (#821)

Merged pull requests: - Update README.md (#819) (@lkapelevich) - [WIP] add support for MOI Hermitian PSD cone (#822) (@chriscoey)

- Julia
Published by github-actions[bot] almost 3 years ago

hypatia.jl - v0.7.1

Hypatia v0.7.1

Diff since v0.7.0

Merged pull requests: - try JuliaFormatter again (#814) (@chriscoey) - add copyright headers to all files (#815) (@chriscoey) - Bump DocStringExtensions to v0.9 (#817) (@ven-k)

- Julia
Published by github-actions[bot] over 3 years ago

hypatia.jl - v0.7.0

Hypatia v0.7.0

Diff since v0.6.2

Closed issues: - Numerical issues with Positivstellensatz and interpolant-based polynomial optimization (#798)

Merged pull requests: - update parameters to benchmark, save nu in analysis (#800) (@lkapelevich) - add option for tau tolerance in infeasibility check (#803) (@chriscoey) - remove some unused imports (#810) (@chriscoey) - update MOI to 1, fix error in classicalquantum example (#811) (@chriscoey)

- Julia
Published by github-actions[bot] almost 4 years ago

hypatia.jl - v0.6.2

Hypatia v0.6.2

Diff since v0.6.1

Merged pull requests: - add tolerance option for primal or dual inconsistent equalities status (#794) (@chriscoey) - handle ill-posed statuses better in MOI wrapper (#795) (@chriscoey) - rename n, m to d1, d2 in some matrix cone wrappers (#796) (@chriscoey) - check a necessary condition for dual feasibility of (dual) WSOS cones (#797) (@chriscoey)

- Julia
Published by github-actions[bot] about 4 years ago

hypatia.jl - v0.6.1

Hypatia v0.6.1

Diff since v0.6.0

Closed issues: - allow repeated solves with same optimizer, and support changing b, c, h vectors (#95) - permute_affine not working with immutable array (#793)

Merged pull requests: - check if nearly have a certificate when convergence fails (#790) (@chriscoey) - unprocess near-infeasible certificates (#791) (@chriscoey) - clean up preprocessing and add functions for modifying c, b, h (#792) (@chriscoey)

- Julia
Published by github-actions[bot] about 4 years ago

hypatia.jl - v0.6.0

Hypatia v0.6.0

Diff since v0.5.3

Closed issues: - support string parameters for JuMP 0.21 (#486)

Merged pull requests: - MOI to 0.10 (#754) (@matbesancon) - reimplement spectral norm cone using SVD-based oracles (#772) (@chriscoey) - reimplement infinity norm cone and improve spectral norm cone oracles (#774) (@chriscoey) - add some more oracle tests at the initial point (#775) (@chriscoey) - speed up feas checks for spectral norm cone using fast norm bounds (#776) (@chriscoey) - add symmetric/hermitian spectral norm cone (#777) (@chriscoey) - speed up feasibility checks for spectral norm cones (#778) (@chriscoey) - CompatHelper: bump compat for SpecialFunctions to 2, (keep existing compat) (#779) (@github-actions[bot]) - do examples tests in separate CI run with separate Project file (#780) (@chriscoey) - remove some test deps (#782) (@chriscoey) - improve/simplify MOI wrapper (#783) (@chriscoey) - Fix failing tests in MOI wrapper (#784) (@odow) - update examples (#785) (@chriscoey) - clean up wrapper and examples code (#787) (@chriscoey) - test BigFloat thru MOI.Test (#788) (@chriscoey) - fix jump example utils for benchmarks (#789) (@chriscoey)

- Julia
Published by github-actions[bot] about 4 years ago

hypatia.jl - v0.5.3

Hypatia v0.5.3

Diff since v0.5.2

Closed issues: - run some JuMP example instances with non-Float64 reals (#598)

- Julia
Published by github-actions[bot] over 4 years ago

hypatia.jl - v0.5.2

Hypatia v0.5.2

Diff since v0.5.1

Merged pull requests: - fix ambiguity on nightly (#745) (@chriscoey) - prepare experiments using spectral function cones (#746) (@lkapelevich) - add NegPower and NegSqrt separable spectral functions, remove Inv (#747) (@chriscoey) - add ECOS to natvsext benchmarks, improve scripts (#748) (@lkapelevich) - fix analyze formulation aggregation (#749) (@chriscoey) - add explicit inverse Hessian for powermean (#750) (@lkapelevich) - remove warn_attributes option (#751) (@chriscoey) - WIP: inverse Hessian for generalized power cone (#752) (@lkapelevich) - simplify inv hess oracles for sepspectral cone (#755) (@lkapelevich) - cleanup log and logdet cones (#756) (@lkapelevich) - cleanup rootdet/geomean (#757) (@chriscoey) - update benchmarks; adjust geomean/rtdet/log/logdet constants (#758) (@chriscoey) - add some complex model utils (#759) (@chriscoey) - Update natvsext benchmarks README.md (#760) (@lkapelevich) - adjust benchmark list (#761) (@chriscoey) - global var to constant (#762) (@matbesancon) - DNMY: update benchmark script for wsos examples (#763) (@lkapelevich) - rename neggeom to negrtdet; adjust bench sizes (#764) (@chriscoey) - decrease memory overhead in model construction for expdesign (#765) (@chriscoey) - make objective more reasonable in size in polynorm example (#766) (@lkapelevich) - update readmes for benchmarks (#767) (@lkapelevich) - improve speed of separable spectral cone oracles (#768) (@chriscoey) - update stepper benchmarking instructions (#770) (@lkapelevich) - improve spectral cone oracles, especially inv hess (#771) (@chriscoey)

- Julia
Published by github-actions[bot] over 4 years ago

hypatia.jl - v0.5.1

Hypatia v0.5.1

Diff since v0.5.0

Merged pull requests: - fix proximity aggregation (#743) (@chriscoey) - fix bug in predorcent phase selection (#744) (@chriscoey)

- Julia
Published by github-actions[bot] over 4 years ago

hypatia.jl - v0.5.0

Hypatia v0.5.0

Diff since v0.4.0

Closed issues: - try using higher order Runge–Kutta methods for prediction (#51) - replace errors with appropriate statuses (#329) - check that SuiteSparse caches are using the maximum number of threads (#361)

Merged pull requests: - WIP: add more cone examples (#686) (@lkapelevich) - add two more QRE cone examples (#687) (@chriscoey) - add missing examples to stepper benchmarks (#689) (@lkapelevich) - add some separable spectral cone examples (#690) (@chriscoey) - generalize experiment design examples (#691) (@chriscoey) - make minor changes to run benchmarks (#692) (@lkapelevich) - run nightly and fix strange stack overflow error, only use cholmod sparsepsd on recent julia, update portfolio example (#693) (@chriscoey) - fix extender names (#694) (@chriscoey) - don't add redundant constraints in example (#695) (@chriscoey) - clean up some style and infrastructure (#696) (@chriscoey) - WIP: clean up cones and linear algebra (#697) (@chriscoey) - reduce allocations for (inv) hessians, more clean up (#698) (@chriscoey) - clean up polynomial interpolations and polymin (#699) (@chriscoey) - WIP: style fixes and coverage improvements (#700) (@chriscoey) - add comments and fix bug for TOA without curve (#701) (@lkapelevich) - CompatHelper: add new compat entry for "SpecialFunctions" at version "1.4" (#702) (@github-actions[bot]) - rename correction to adjustment/dder3 for clarity (#703) (@chriscoey) - clean up example instances (#704) (@chriscoey) - WIP: do some matrix factorizations/inverses in-place (#705) (@chriscoey) - add various instances to sparseLMI and fix rosenbrock data (#706) (@lkapelevich) - WIP: add docs using Documenter (#707) (@chriscoey) - WIP: rename and refactor math in log cones (#708) (@lkapelevich) - add to docs and edit readme (#709) (@chriscoey) - CompatHelper: add new compat entry for "DocStringExtensions" at version "0.8" (#710) (@github-actions[bot]) - more docs (#711) (@chriscoey) - update docs structure and readme (#712) (@chriscoey) - improve docs and add docstrings (#713) (@chriscoey) - WIP: rename and refactor geomean-like cones (#714) (@lkapelevich) - improve scripts, put examples in a module, check for possible duplicate instances (#715) (@chriscoey) - WIP: speed up some oracles (#716) (@chriscoey) - add more comments in analysis script (#717) (@lkapelevich) - WIP: improve matrix rel entr cone oracles (#718) (@chriscoey) - add example with powermean cone (#719) (@lkapelevich) - clean up geomean, use ordereddict to run examples (#720) (@chriscoey) - make minor edits to example descriptions (#721) (@lkapelevich) - simplify directions for kappa part (#722) (@chriscoey) - WIP: refactor terms in some oracles (#723) (@chriscoey) - describe cones interface and scripts more in docs (#724) (@chriscoey) - fix data not being added into ordereddict (#725) (@lkapelevich) - use ordered dicts for example instances (#726) (@chriscoey) - WIP: allow a more SY-like predorcent stepper (#727) (@chriscoey) - minor cleanup of generalized power cone (#728) (@chriscoey) - cleanup dense linear algebra and fix nondeterministic traces due to hessian factorization switches (#729) (@chriscoey) - add automated extended formulations for separable spectral cone examples (#730) (@chriscoey) - add more spectral cone example formulations, refactor extended formulations (#731) (@chriscoey) - add example tests and some dual formulations for spectral cones (#732) (@chriscoey) - update steppers to run in benchmarks (#733) (@chriscoey) - make sep spec tests more robust and add some instances (#734) (@chriscoey) - fix qr deprecation warning (#735) (@chriscoey) - update scripts to run all extenders (#736) (@chriscoey) - clean up qrchol LHS setup and use a better heuristic for sqrt hess oracles (#737) (@chriscoey) - update instances hitting time limits in benchmarks (#738) (@lkapelevich) - solve larger doptimaldesign benchmark instances (#739) (@chriscoey) - minor natvsext script fixes (#740) (@chriscoey) - loosen tols if possible for instances where no stepper converges and updates to analysis (#741) (@lkapelevich) - change the way caps are calculate in stepper analysis script (#742) (@lkapelevich)

- Julia
Published by github-actions[bot] over 4 years ago

hypatia.jl - v0.4.0

Hypatia v0.4.0

Diff since v0.3.0

Closed issues: - return SlowProgress if some residual norms start increasing too much (#327) - tighten tols for infeasibility detection check (#347) - improve termination criteria for outer 6x6 iterative refinement (#375) - fix argument types of vec to mat functions (#392) - optimize LMI cone barrier evals (#477) - for WSOS cones, special case Pr for which Lr = 1 (just use log of 1x1 Lambda instead of logdet) (#533) - try checking hessian nbhd after heuristic nbhd is satisfied for all cones (#534) - experiment with higher order correctors (again) (#567) - MOI interface: set_silent not respected (#640) - get a more efficient TOA for lmi cone (#654)

Merged pull requests: - add matrix relative entropy cone (#574) (@lkapelevich) - fix type issues with interpolation functions (#629) (@chriscoey) - rename predorcent stepper file (#630) (@chriscoey) - improve predorcent stepper (#631) (@chriscoey) - improve predorcent stepper and use curve search (#633) (@chriscoey) - add more entropy-like cones (#634) (@lkapelevich) - CompatHelper: bump compat for "IterativeSolvers" to "0.9" (#635) (@github-actions[bot]) - cleanup and add barrier oracles numerics checks (#637) (@chriscoey) - cleanup and improve slow progress checks (#638) (@chriscoey) - add third order derivatives for relative entropy (#639) (@lkapelevich) - add and test stepper options and cleanup search (#641) (@chriscoey) - if not spawning in runbenchmarks, run compile instance (#642) (@chriscoey) - simplify steppers and alpha search, add optional initial alpha heuristic (#643) (@chriscoey) - delete a redundant line of code (#646) (@lkapelevich) - improve predorcent stepper (#647) (@chriscoey) - correct MOI.Silent (#648) (@lkapelevich) - add timings for subprocedures (#649) (@chriscoey) - use lower bound on hessian nbhd to speed up search (#650) (@chriscoey) - time factorizations and system solver setup (#652) (@chriscoey) - remove constant multiplier from rootdet barrier (#653) (@lkapelevich) - rename randompolymat to nearestpolymat (#655) (@lkapelevich) - refactor wsos matrix oracles for faster grad (#656) (@lkapelevich) - refactor wsos L1 cone, making grad faster (#657) (@lkapelevich) - refactor wsos L2 cone, making grad faster (#658) (@lkapelevich) - add scripts for benchmarking steppers (#659) (@lkapelevich) - add various example instances to benchmark (#661) (@lkapelevich) - get a better LMI TOA (#662) (@lkapelevich) - faster TOA for wsos nonnegative (#663) (@lkapelevich) - cleanup cone oracle tests, check oracle allocations (#664) (@chriscoey) - add power benchmark instances and tweaks in stepper run script (#665) (@lkapelevich) - speed up matrix wsos TOA (#666) (@lkapelevich) - WIP: fix some slow oracles and failing instances (#667) (@chriscoey) - make stepper analysis script produce more CSVs (#668) (@lkapelevich) - make more tweaks to benchmark analysis scripts (#669) (@lkapelevich) - improve scalar wsos oracles and test complex case (#670) (@lkapelevich) - improve LMI cone oracles (#671) (@chriscoey) - improve wsosmat corrector slightly (#672) (@chriscoey) - reduce time complexity in the TOO of WSOS L2 cone (#673) (@lkapelevich) - WIP: use expensive hess prods, only use iterative refinement when needed (#674) (@chriscoey) - record example type in dataframe (#675) (@chriscoey) - improve wsos oracles speed (#676) (@chriscoey) - improve time complexity for WSOS L1 TOO (#677) (@lkapelevich) - use expensive hessian products only when needed (#678) (@chriscoey) - count number of instances with loosened tolerances (#679) (@lkapelevich) - rename shift to back (#680) (@lkapelevich) - remove unneeded preallocated space in matrix wsos (#681) (@lkapelevich) - refactor hess prod and correction for wsosmat (#682) (@chriscoey) - WIP: add different implementation types for sparse PSD cone, add new example (#683) (@chriscoey) - WIP: add new generic matrix monotone epigraph cone (#684) (@chriscoey) - delete unused import (#685) (@lkapelevich)

- Julia
Published by github-actions[bot] almost 5 years ago

hypatia.jl - v0.3.0

Hypatia v0.3.0

Diff since v0.2.0

Merged pull requests: - add postprocessing scripts, various cone and example improvements (#609) (@lkapelevich) - WIP: add lower complexity oracles for more complicated WSOS cones (#615) (@lkapelevich) - refactor and simplify arrow hessian oracles (#616) (@chriscoey) - add benchmark problems for more complicated WSOS cones (#617) (@lkapelevich) - remove some allocations in wsosl2 corrector (#618) (@lkapelevich) - add corrector for WSOS L1 cone (#619) (@lkapelevich) - improve benchmark processing (#620) (@chriscoey) - set appropriate defaults for sparse vs dense MOI models (#621) (@chriscoey) - CI: try julia release and nightly (#622) (@chriscoey) - allow getting nu in postprocessing (#623) (@chriscoey) - update processbenchmarks for DataFrames changes (#624) (@lkapelevich) - CompatHelper: bump compat for "LinearMaps" to "3.0" (#625) (@github-actions[bot]) - cleanup examples and process script (#627) (@chriscoey)

- Julia
Published by github-actions[bot] about 5 years ago

hypatia.jl - v0.2.0

Hypatia v0.2.0

Diff since v0.1.1

Merged pull requests: - add inbounds annotations in sparse psd (#604) (@lkapelevich) - make benchmark script work on julia 1.5 (#605) (@chriscoey) - improve benchmark sets and script (#606) (@chriscoey) - minor bug fixes and cleanup (#607) (@chriscoey) - change JuMP portfolio example to rebalancing (#608) (@chriscoey) - update definitions of violations in processing of examples (#610) (@lkapelevich) - fix some benchmark script failures (#611) (@chriscoey) - use new convergence conditions (#612) (@chriscoey) - improve benchmark script; use more views etc to improve efficiency (#614) (@chriscoey)

- Julia
Published by github-actions[bot] over 5 years ago

hypatia.jl - v0.1.1

Hypatia v0.1.1

Diff since v0.1.0

Merged pull requests: - relax version bounds for julia and run julia nightly in travis (#594) (@chriscoey) - initialization fixes for wsosl1 cone (#595) (@lkapelevich) - minor tweaks, add missing inbounds (#596) (@lkapelevich) - test more real types thru MOI tests (#597) (@chriscoey) - remove DynamicPolynomials dependency and lagrange polys from ModelUtilities (#599) (@chriscoey) - fix access for some pointers (#600) (@lkapelevich) - cleanup stepper and fix corrector bug (#601) (@chriscoey) - add wsosl1 example and fix bugs in wsos l1 cone (#602) (@lkapelevich) - more stepper cleanup and options (#603) (@chriscoey)

- Julia
Published by github-actions[bot] over 5 years ago

hypatia.jl - v0.1.0

Initial public release of Hypatia solver for generic conic optimization. Code is undocumented. Expect bugs and major interface changes.

- Julia
Published by chriscoey over 5 years ago

hypatia.jl - May 2020 experiments

- Julia
Published by lkapelevich almost 6 years ago