Augmented Lagrangian and PANOC solvers for nonconvex numerical optimization.
Project description
alpaqa is an efficient implementation of an augmented Lagrangian method for general nonlinear programming problems, which uses the first-order, matrix-free PANOC algorithm as an inner solver. The numerical algorithms themselves are implemented in C++ for optimal performance, and they are exposed as an easy-to-use Python package.
The solvers in this library solve minimization problems of the following form:
\begin{equation*}
\begin{aligned}
& \underset{x}{\textbf{minimize}}
& & f(x) &&&& f : {{\rm I\mathchoice{\hspace{-2pt}}{\hspace{-2pt}}{\hspace{-1.75pt}}{\hspace{-1.7pt}}R}}^n \rightarrow {{\rm I\mathchoice{\hspace{-2pt}}{\hspace{-2pt}}{\hspace{-1.75pt}}{\hspace{-1.7pt}}R}} \\
& \textbf{subject to}
& & \underline{x} \le x \le \overline{x} \\
&&& \underline{z} \le g(x) \le \overline{z} &&&& g : {{\rm I\mathchoice{\hspace{-2pt}}{\hspace{-2pt}}{\hspace{-1.75pt}}{\hspace{-1.7pt}}R}}^n \rightarrow {{\rm I\mathchoice{\hspace{-2pt}}{\hspace{-2pt}}{\hspace{-1.75pt}}{\hspace{-1.7pt}}R}}^m
\end{aligned}
\end{equation*}
Documentation
Installation
The Python interface can be installed directly from PyPI:
python3 -m pip install --upgrade --pre alpaqa
For more information, please see the full installation instructions.
Publications
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
alpaqa-1.0.0a10.tar.gz
(287.3 kB
view hashes)
Built Distributions
Close
Hashes for alpaqa-1.0.0a10-pp310-pypy310_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52b7f2bf3bb94425d38f230718f56c3f271dda5a2f0316797dba2b5306878b76 |
|
MD5 | 182d475056ad1847fe79ded4642dc29c |
|
BLAKE2b-256 | 4ba07e6af441de72631b9df70092bcdfe9a347b2e8535232411783ac4f4bd7fd |
Close
Hashes for alpaqa-1.0.0a10-pp310-pypy310_pp73-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b36feff07e3ef845facc1de98fa16f2be32c36075faa9e2dfa7fa75944b7857 |
|
MD5 | 066f48b4915782be74d2bacfedecd709 |
|
BLAKE2b-256 | 9a3acc21ef595bdb1efe42d92b1f12064cd26542ab505b0c1f95f4e2c531f305 |
Close
Hashes for alpaqa-1.0.0a10-pp310-pypy310_pp73-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4e222ca49abb3daaf84b39221d96c9cb6f789378697ce897a5c742aa43f1888 |
|
MD5 | 3bf3c59cd182ecb8831f476b1d9affba |
|
BLAKE2b-256 | 9b19e2036b8482c00f7280074f5937bfb93392e7acd182269e60ce89be52e38e |
Close
Hashes for alpaqa-1.0.0a10-pp39-pypy39_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d74057e5e7610f203d53d7569ec0155bfba7a514d0992bc4e190be84e84ac13 |
|
MD5 | 8ceaccb72c754615fb57fbb4e762570d |
|
BLAKE2b-256 | bd40f76352d34ea35e3202f9617d3e7c72026dff71cf0d438d144fb2203eff11 |
Close
Hashes for alpaqa-1.0.0a10-pp39-pypy39_pp73-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7284f2457dbe39b8bf8bd0501869a95ecda442a4373c7c276a5d9f4f6c90eb13 |
|
MD5 | 225603c16adf4d1eaa6350fe7e097c77 |
|
BLAKE2b-256 | 6284309f1572bac0c99a16cbc56d1262201d78ff78d6872da9888860bab66605 |
Close
Hashes for alpaqa-1.0.0a10-pp39-pypy39_pp73-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | daac8880f245881f31d4954d117b05e527811c05f51fe512f7200bd064b04b92 |
|
MD5 | 727280e518bf1201ec3ab1f36a914e85 |
|
BLAKE2b-256 | b4bb4ca61528d83f29f8edea587a24e5d5bfeead10edd3b463c7c9627f757cb8 |
Close
Hashes for alpaqa-1.0.0a10-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 924eadad36d5d8e20d76011df218ec67bbd5813bffffa205eaa1066f94a9a07c |
|
MD5 | fc4bf626d9169f907fc4916e575fb6ec |
|
BLAKE2b-256 | e214a168e665898bff07283f83f6f4dad6302d07672c40e09fc5b3d3de7a138d |
Close
Hashes for alpaqa-1.0.0a10-pp38-pypy38_pp73-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7494df3904861b6f160f680b7091a0cfa19f905a3e22ffd99819f17e12123ff7 |
|
MD5 | 97ff9464cf4c77b8750d7a4dd021078c |
|
BLAKE2b-256 | 6d16fe40a7c311317858f535e5143b91a9ebc7272309a7d615c9c1eba49cec67 |
Close
Hashes for alpaqa-1.0.0a10-pp38-pypy38_pp73-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c8a63e6bc58409abfce93b7cd7cc1e9ac711bf76675026da3c1616037d5a3aa |
|
MD5 | 913f9e0c09e311d1dfe26611dcaeba7d |
|
BLAKE2b-256 | 5c28d04ef083d3dce97ea787fc95bf5fdf2b6193b198d185809df61004d31cbf |
Close
Hashes for alpaqa-1.0.0a10-cp312-cp312-manylinux_2_27_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 419ccbca2b6910747883b4311b02a3f6543d6c7dc2b6f2bdd8e1ca92c89cb841 |
|
MD5 | ec366b80534fc465fe928a6835a56ca2 |
|
BLAKE2b-256 | 64b4c06e9fc1573b13ffd1dd042a7cc466ca181d817568797a09723d612257b3 |
Close
Hashes for alpaqa-1.0.0a10-cp312-cp312-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e45730d7f0e555fa2d5719274f0bf7f6ba18c5d9c9924d760027c7eaf0b17db6 |
|
MD5 | 418884a24a16fa78d8cf37c1c0327bf3 |
|
BLAKE2b-256 | 467b9ba050c6fd06d68cd2ca3ca6f43cb1a6f080bd6af011b1c2b4c253d99dd3 |
Close
Hashes for alpaqa-1.0.0a10-cp312-cp312-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a77bb025809c227a8402c56a4d081d41658418cc4a256ac528b6d0cd5bc8a83d |
|
MD5 | 7a9caa7f4dcf6011ffb402a1c08b97e6 |
|
BLAKE2b-256 | 40df5246a8dc3f5bad797e2a59e72cf6718473e7baf6b1fc2b0df99da15d7b40 |
Close
Hashes for alpaqa-1.0.0a10-cp312-cp312-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c78780621e68bd4ce61f8d5aa73c126fc893ae4a8e3c61624763654d25e5c686 |
|
MD5 | 9db83b9b15ec083033caaf04a7856068 |
|
BLAKE2b-256 | 91164acaf6568e85b5ff70265a0e2df9d259aefa20025b40853bc59ab763932d |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13731f073b9c64b6d287bb9470b70e93803065b261999388f82db8ec56e79b7f |
|
MD5 | 691493d1315bbf64728a2dee8574fa98 |
|
BLAKE2b-256 | a9cfd1ff59560adee6f243148c66b944c4de941f71c9716dbb9b290cb763475b |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b88552ae30b2827b3e9486b9921484c32a1ee21417fee60d7bf88d8ff7b65a1f |
|
MD5 | df3c716f0f60062cbe8d271ab74fe7c7 |
|
BLAKE2b-256 | b90a16205fb501061d5628ce461b60b09c2421ca2f05b5eaf29421774bfabc63 |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d6e6a09e2eb3bae9c8b4872dd9d423fcf287c0651f7a510f7b47bc14a5c4263 |
|
MD5 | 08dcf6d485a2e7c3358b5a4227c58aa9 |
|
BLAKE2b-256 | 430905ee248824a692ee8b9348a1842599643731b0d1c47d7404e99eefba58dc |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-manylinux_2_27_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cec6743fcc6009e3e21e7758d4b1ecb916841125235638fb09d5f49dff30294 |
|
MD5 | 25c9f69e7c04d7cdb82d056ca209825e |
|
BLAKE2b-256 | de8e54e252cc788952cbb1689997ef293ccb3de6b31c22f6501646adf6eed1b8 |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 469912fe9f112eff376301bb846ca997a76ccc6f805e3fd8346f1e357bbbd8b9 |
|
MD5 | 9b0581e2dd88277ccde1833340a77aa0 |
|
BLAKE2b-256 | 26b6ebe509f16933efcbcab5744be85b1dbaf0c6c5e9dee7f8cd413a621e9ec2 |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 177d431d99ccae3efcc1ef4848a00d1d5c6ce59f05c4b01ba527d4458062dcca |
|
MD5 | 5bcc2d7b8286f77be04860788130fb74 |
|
BLAKE2b-256 | 10b441773fd55b573c147ded44686565a00a37bab5d7583925149eb69888511f |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cae85fb0fc84b9f8c827b7db06add32e6fb6c8732f75ff4d3baece9643d82e8f |
|
MD5 | a398f1f661c640f151976085026164f9 |
|
BLAKE2b-256 | 2c909650ed13dd3f1a720d1f94a738c79d5f4eeefb5a7bdf27c2ac398efc07ba |
Close
Hashes for alpaqa-1.0.0a10-cp311-cp311-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75a7c7c2114d98e730ab17426007011559adf1be7b2205176e5269668fe67957 |
|
MD5 | f7d9dd2171b3281ed0949dd8badbb88c |
|
BLAKE2b-256 | 4df9de5e348c6b997b566fe9eac80e0372450f488c7f4cf6b7f666166ff4d4dc |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 272d06bf7ff6b79d85f4fa0ed6ff139c729f55bf1c54c70680fecebb2da92044 |
|
MD5 | 8738932f8519a1d90486154e3342fe90 |
|
BLAKE2b-256 | d99e8b44ca04e2c7836639c6ab4733304e1463356237e5bcde734bbad453d8de |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cf52d25be42bd0a66d061d2792d109ada8dcfbb1e783c53deb8ab7e7e79ba28 |
|
MD5 | 61efb08216e1261a01d2aa2c81f58d96 |
|
BLAKE2b-256 | ddb1ebc1c577795470b6447986a90b55d3d4c442d76328c23de6cdec5b09a08e |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e931c68e8d1c2b37599bc363be747cea1a78eba2e2b652daed251e55e6d74005 |
|
MD5 | c51da228c4d8a6af020f063e6f28c5be |
|
BLAKE2b-256 | a20b3db7db3aecc5b6703f8ff4971593639d859577eea96e129af70b17592c4c |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-manylinux_2_27_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 138041864167607fd6d4ac8ce357a4b7e6c986784e0cdc00f44911e3f8289e6b |
|
MD5 | 0ab783626255e1e8a0cfd1deb96d48d9 |
|
BLAKE2b-256 | 1530d931ea50087c16e56a277b9e5686d107018b4569ff41fb1baf7a86191fcf |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c0df092c4641714bf2ae0ace4b44805ea19e67b7b67778266fb595aac20322cd |
|
MD5 | 994a0df7469dc6b379013965d137109c |
|
BLAKE2b-256 | 1b13c29ee01103a50a4f0e6cc19030ddf3e8fd1360df9e8975215fe17cd7a5bb |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 998252c0790c0690bb9f6616bd7f1a4bc4700e6a534a696b3c9670a1a6413a04 |
|
MD5 | fb44963edf364cdf8d35a277b3c01168 |
|
BLAKE2b-256 | 853c798750cce9de9d00ee43b4a6c56f17fb292c2f2ed42c3ff00efacf8abda0 |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bac9eaa74dd8657480d38be88c863b9c5905a48ef3bae9941097760436a71118 |
|
MD5 | 9db4abdfb111c622712447db20206b44 |
|
BLAKE2b-256 | f485a9711fcbc4b3077c66320cb0a9b66f1b5f4e0266ab2ed1f3830e168fc14c |
Close
Hashes for alpaqa-1.0.0a10-cp310-cp310-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bb94e237f790bcd5645a85a3286ed40d08cdaece854272dbc6b0ffe86138a2b |
|
MD5 | 275d137f4de16320bb2e3fc13589ad7e |
|
BLAKE2b-256 | f0d9f4eb624630d1609115b8505bedde34009e1a933db78fb92279d6f3eafe86 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43f701644f20dbf5c221a007a93f56a3f871edf9676720ef3ec5fe8b63270c47 |
|
MD5 | 353357d56a0038045afcded71534f231 |
|
BLAKE2b-256 | 6c0fe11c17d15d68530c774e6ad6c4b58d10ea32d0eb4f213a63c47acc5bf51f |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b484334d41f76df4bd4a340539153c758dbb9ed53a6d8ddc3c6e83c6ad6c196 |
|
MD5 | 507e8e9070ee56f14cd4a34464ab4fef |
|
BLAKE2b-256 | 4797cab61c20ae2aeed2b3a483ba4077d9d8db0cad098a90a0fb101a172ed012 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 800530b91f5cf370b49c8e3c7844e8cce36c6dd169aab133f10a2e46e241c572 |
|
MD5 | 0d6fbd50c4a1fededd72d2c6ca723074 |
|
BLAKE2b-256 | 29911ee10b0d1942e1313023f0790156e5888524252a659558374f00b151c90b |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-manylinux_2_27_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5a4773a8001ecf5464302e04117c6c0151e26a9815d7a7dacd21d1d81886667 |
|
MD5 | f327ae6a0cb6436f302f4ff5613afc2b |
|
BLAKE2b-256 | 7780358374c20cb665445d7b722327392ca57e42b37e03e73340f410cbb30c21 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 329434c6df913830dd0162899321c823e0d53a8f82121c68c2ba33106c5767fa |
|
MD5 | bf00a2521783f29ee6b0f305b0ef2329 |
|
BLAKE2b-256 | 500eb90c459f35628b7a4ece83bc7480a92d3537348c40dcc89d1bd98344bfe4 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a19a5f41ef1bdd767cde3d56e3b7bcbff0b4134f1ad9e3812e03ea9b93e9211 |
|
MD5 | 61d4791d5f32e3c37309bdf53cfae7cc |
|
BLAKE2b-256 | 6a6eacd9e69e498c57d29836e86f598d2c369555d68e5c6d786bd83e60d27dc9 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6adfe7353908199446ff53b417c8d57639d07b10524f15f9c67bcb86d899057 |
|
MD5 | 60624779f4cfbe5f2278a3de09077038 |
|
BLAKE2b-256 | efd056cc210e982942c80968e7f4c833f396332b18ba3c74bc94e603a9c18966 |
Close
Hashes for alpaqa-1.0.0a10-cp39-cp39-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 408e3d2694b57c4bf035b39aea596145d97de3ffcdf441db554d57bffd8c7e85 |
|
MD5 | 9856d7c94711583b22ef556730369b1a |
|
BLAKE2b-256 | 70cf572dccdc8dcc869b268f940ad692607935f7b546683f345f3fade2fe01d7 |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22fa6bf2c33adf2f6b47ed8c29e4850beab401f3a4a7067e7d63cca2d9f29ee4 |
|
MD5 | 77bcccd225a749cfcd48fafc65efaf6e |
|
BLAKE2b-256 | 6c2e90915a523de0091b1b40c01902a8c943ee415c69c1bcaac50dc1f6f0703e |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f217aa37ebf0f35bc370c50385151af175c0a2f444ad8b90b23497f874a3dc4 |
|
MD5 | f3cbbfaba0445d0240efe967defdda11 |
|
BLAKE2b-256 | d7017a8508a916bc181a34245fd9d9d614d3b7b58707682ce3466d646d2b8d63 |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-manylinux_2_27_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d28d3e953fe2d37e0fe3b76102a130b7b4fe3a33ae54023870ba5fbbb12283b |
|
MD5 | 74b890d40d461b18fbe91f8dcfec6b80 |
|
BLAKE2b-256 | 4a5e31965a930d76c327fe75c5702b692cef2b27788aa9fdede90b94c8575068 |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-manylinux_2_27_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd91bdba6beaa65f115a6036451439e9effd870c7438a74c690a533e2b39806a |
|
MD5 | 46d1b521c32ffe28f06bb6f46a2ccf32 |
|
BLAKE2b-256 | 94825d830b348bf978527237ca2f2230b62ccf371db80b2513b1caa5467a0b2a |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-manylinux_2_17_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f490129f90e33dc29101bcd9d9dfc391de72062c7aa9d54f92de32e3af828ef5 |
|
MD5 | c7450d013805aa1f0dab1741f29bcd6c |
|
BLAKE2b-256 | e6085523f886dae56de49b9bf61027e43440f2bb265d5fc5cd84909c20d73764 |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23c9c80dc1903fe9d7fb53cf8307b020b5f6a77c188e49c72914b9a8699d0612 |
|
MD5 | d2bb3e26776a2cc3c9811618e418df87 |
|
BLAKE2b-256 | 94615fba1c6ba22be61de15aa7ebca67ea07e03edcce22cb69211b16df2b8a05 |
Close
Hashes for alpaqa-1.0.0a10-cp38-cp38-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d807cd2fe5299a4dad4e8d21c2c69fb3d6522f6a56487fd3260398e23085438 |
|
MD5 | 0b58c2902baadea5b63dcc34bbb648a6 |
|
BLAKE2b-256 | 71e1bb3394352c7c9c568a829aff251694584d9c84956782ae76cdd73e130953 |