{"id":28452669,"url":"https://github.com/juliasmoothoptimizers/cannoles.jl","last_synced_at":"2025-10-04T02:06:33.851Z","repository":{"id":42363837,"uuid":"176576796","full_name":"JuliaSmoothOptimizers/CaNNOLeS.jl","owner":"JuliaSmoothOptimizers","description":"Constrained and NoNlinear Optimizer of Least Squares","archived":false,"fork":false,"pushed_at":"2025-06-04T23:28:25.000Z","size":3193,"stargazers_count":23,"open_issues_count":4,"forks_count":6,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-09-05T05:32:38.444Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JuliaSmoothOptimizers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-19T18:39:42.000Z","updated_at":"2025-06-06T19:54:47.000Z","dependencies_parsed_at":"2024-12-13T14:27:07.923Z","dependency_job_id":"dbfaed1a-d1f6-4731-8176-b623a4bd139c","html_url":"https://github.com/JuliaSmoothOptimizers/CaNNOLeS.jl","commit_stats":{"total_commits":125,"total_committers":12,"mean_commits":"10.416666666666666","dds":0.544,"last_synced_commit":"d4849495c089561ccf8c0e31459ff25ac576c372"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/JuliaSmoothOptimizers/CaNNOLeS.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaSmoothOptimizers%2FCaNNOLeS.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaSmoothOptimizers%2FCaNNOLeS.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaSmoothOptimizers%2FCaNNOLeS.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaSmoothOptimizers%2FCaNNOLeS.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JuliaSmoothOptimizers","download_url":"https://codeload.github.com/JuliaSmoothOptimizers/CaNNOLeS.jl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaSmoothOptimizers%2FCaNNOLeS.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278254466,"owners_count":25956604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-06T18:12:19.299Z","updated_at":"2025-10-04T02:06:33.828Z","avatar_url":"https://github.com/JuliaSmoothOptimizers.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CaNNOLeS - Constrained and NoNlinear Optimizer of Least Squares\n\n[![documentation](https://img.shields.io/badge/docs-stable-blue.svg)](https://JuliaSmoothOptimizers.github.io/CaNNOLeS.jl/stable)\n[![documentation](https://img.shields.io/badge/docs-dev-blue.svg)](https://JuliaSmoothOptimizers.github.io/CaNNOLeS.jl/dev)\n![CI](https://github.com/JuliaSmoothOptimizers/CaNNOLeS.jl/workflows/CI/badge.svg?branch=main)\n[![Cirrus CI - Base Branch Build Status](https://img.shields.io/cirrus/github/JuliaSmoothOptimizers/CaNNOLeS.jl?logo=Cirrus%20CI)](https://cirrus-ci.com/github/JuliaSmoothOptimizers/CaNNOLeS.jl)\n[![codecov](https://codecov.io/gh/JuliaSmoothOptimizers/CaNNOLeS.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/JuliaSmoothOptimizers/CaNNOLeS.jl)\n[![GitHub](https://img.shields.io/github/release/JuliaSmoothOptimizers/CaNNOLeS.svg?style=flat-square)](https://github.com/JuliaSmoothOptimizers/CaNNOLeS/releases)\n\nCaNNOLeS is a solver for equality-constrained nonlinear least-squares problems, i.e.,\noptimization problems of the form\n\n    min ¹/₂‖F(x)‖²      s. to     c(x) = 0.\n\nIt uses other JuliaSmoothOptimizers packages for development.\nIn particular, [NLPModels.jl](https://github.com/JuliaSmoothOptimizers/NLPModels.jl) is used for defining the problem, and [SolverCore](https://github.com/JuliaSmoothOptimizers/SolverCore.jl) for the output.\nIt also uses [HSL.jl](https://github.com/JuliaSmoothOptimizers/HSL.jl)'s `MA57` as main solver, but you can pass `linsolve=:ldlfactorizations` to use [LDLFactorizations.jl](https://github.com/JuliaSmoothOptimizers/LDLFactorizations.jl).\n\n## References\n\n\u003e Orban, D., \u0026 Siqueira, A. S.\n\u003e A Regularization Method for Constrained Nonlinear Least Squares.\n\u003e Computational Optimization and Applications 76, 961–989 (2020).\n\u003e [10.1007/s10589-020-00201-2](https://doi.org/10.1007/s10589-020-00201-2)\n\nIf you use CaNNOLeS.jl in your work, please cite using the format given in [CITATION.cff](CITATION.cff).\n\n## Installation\n\n1. Follow [HSL.jl](https://github.com/JuliaSmoothOptimizers/HSL.jl)'s `MA57` installation if possible. Otherwise [LDLFactorizations.jl](https://github.com/JuliaSmoothOptimizers/LDLFactorizations.jl) will be used.\n2. `pkg\u003e add CaNNOLeS`\n\n## Examples\n\n```julia\nusing CaNNOLeS, ADNLPModels\n\n# Rosenbrock\nnls = ADNLSModel(x -\u003e [x[1] - 1; 10 * (x[2] - x[1]^2)], [-1.2; 1.0], 2)\nstats = cannoles(nls)\n\n# Constrained\nnls = ADNLSModel(\n  x -\u003e [x[1] - 1; 10 * (x[2] - x[1]^2)],\n  [-1.2; 1.0],\n  2,\n  x -\u003e [x[1] * x[2] - 1],\n  [0.0],\n  [0.0],\n)\nstats = cannoles(nls)\n```\n\n# Bug reports and discussions\n\nIf you think you found a bug, feel free to open an [issue](https://github.com/JuliaSmoothOptimizers/CaNNOLeS.jl/issues).\nFocused suggestions and requests can also be opened as issues. Before opening a pull request, start an issue or a discussion on the topic, please.\n\nIf you want to ask a question not suited for a bug report, feel free to start a discussion [here](https://github.com/JuliaSmoothOptimizers/Organization/discussions). This forum is for general discussion about this repository and the [JuliaSmoothOptimizers](https://github.com/JuliaSmoothOptimizers), so questions about any of our packages are welcome.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliasmoothoptimizers%2Fcannoles.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuliasmoothoptimizers%2Fcannoles.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliasmoothoptimizers%2Fcannoles.jl/lists"}