{"adoption": {"forks": 239, "observed_at": "2026-09-03T02:15:06.323762+00:00", "stars": 1204}, "canonical_url": "https://ross.abutalabs.com/products/optimjl", "card": {"archived": false, "artifact_type": "library", "description": "Optimization functions for Julia", "domain": ["mathematics", "machine-learning"], "enriched": true, "function": ["math"], "health_score": 100, "homepage": "https://julianlsolvers.github.io/Optim.jl/stable/", "language": "Julia", "license": "NOASSERTION", "license_family": "other", "maturity": "stable", "member_repos": ["JuliaNLSolvers/Optim.jl"], "name": "JuliaNLSolvers/Optim.jl", "platform": [], "pushed_at": "2026-09-02T21:49:30+00:00", "repo": "JuliaNLSolvers/Optim.jl", "stars": 1204, "tags": ["optimization", "unconstrained-optimization", "bfgs", "gradient-descent", "local-minimization", "global-optimization", "numerical-optimization", "algorithms", "julia"], "topics": ["optim", "julia", "optimization", "unconstrained-optimization", "unconstrained-optimisation", "optimisation"], "urls": [], "use_cases": ["minimize a multivariate objective function in Julia", "fit model parameters by minimizing a loss function", "find local minima of a differentiable function with BFGS or L-BFGS", "optimize a function without gradients using Nelder-Mead", "run global optimization with simulated annealing or particle swarm", "replace C/Fortran optimizers with a pure Julia MIT-licensed solver"], "what_it_is": "Optim.jl is a pure-Julia library for univariate and multivariate function optimization, focused on unconstrained local minimization with algorithms like BFGS, L-BFGS, Nelder-Mead, and gradient descent. It also offers some box-constrained and Riemannian support plus global methods such as simulated annealing and particle swarm.", "when_to_avoid": ["you need large-scale linear or mixed-integer programming", "you require dedicated global optimization with guarantees (consider BlackBoxOptim)", "you need heavily constrained optimization beyond box constraints"], "when_to_choose": ["you need unconstrained or lightly constrained optimization in Julia with no external binary dependencies", "you want solvers that leverage Julia's multiple dispatch for custom preconditioners and line searches", "you need an MIT-licensed optimizer easily added via Pkg.add"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/optimjl", "repo": "JuliaNLSolvers/Optim.jl", "role": "main", "score": 96}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-03T02:15:06.323762+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:19:41.827997+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4df32975eef593aab141be2b9df19570d6ad38edcf4d415b44eb48a11ec69314", "fetched_at": "2026-09-03T02:15:06.323762+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JuliaNLSolvers/Optim.jl"}, {"content_hash": "94025c89e38f5da2f499366e1f3267d111ce0a10017a6e07db33632765978c27", "fetched_at": "2026-08-29T12:27:20.697514+00:00", "kind": "homepage", "missing": false, "url": "https://julianlsolvers.github.io/Optim.jl/stable/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 100, "rhythm": 88}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5264, "days_push": 0, "days_rel": 0, "gap_med": 43, "n_releases_24m": 14}, "score": 96, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 3, "stale_scrape": false}}