{"id":16723023,"url":"https://github.com/bstellato/mlopt","last_synced_at":"2025-03-17T01:31:28.051Z","repository":{"id":37652925,"uuid":"145744594","full_name":"bstellato/mlopt","owner":"bstellato","description":"The Machine Learning Optimizer","archived":false,"fork":false,"pushed_at":"2023-02-10T22:47:58.000Z","size":11145,"stargazers_count":102,"open_issues_count":15,"forks_count":24,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-02-27T16:18:48.239Z","etag":null,"topics":["cvxpy","machine-learning","optimization"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bstellato.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-22T18:00:55.000Z","updated_at":"2025-01-16T10:05:55.000Z","dependencies_parsed_at":"2024-10-27T11:51:35.949Z","dependency_job_id":"a363cdc5-e2a5-427a-b02f-758b3f6d2772","html_url":"https://github.com/bstellato/mlopt","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bstellato%2Fmlopt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bstellato%2Fmlopt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bstellato%2Fmlopt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bstellato%2Fmlopt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bstellato","download_url":"https://codeload.github.com/bstellato/mlopt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243836015,"owners_count":20355615,"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","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":["cvxpy","machine-learning","optimization"],"created_at":"2024-10-12T22:36:32.653Z","updated_at":"2025-03-17T01:31:27.536Z","avatar_url":"https://github.com/bstellato.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Machine Learning Optimizer\n\n`mlopt` is a package to learn how to solve numerical optimization problems from data. It relies on [cvxpy](https://cvxpy.org) for modeling and [gurobi](https://www.gurobi.com/) for solving the problem offline.\n\n`mlopt` learns how to solve programs using [pytorch](https://pytorch.org/) ([pytorch-lightning](https://github.com/PyTorchLightning/pytorch-lightning)), [xgboost](https://xgboost.readthedocs.io/en/latest/) or [optimaltrees](https://docs.interpretable.ai/stable). The machine learning hyperparameter optimization is performed using [optuna](https://optuna.org/).\n\nOnline, `mlopt` only requires to predict the strategy and solve a linear system using [scikit-umfpack](https://github.com/scikit-umfpack/scikit-umfpack).\n\n## Examples\n\nTo see `mlopt` in action, have a look at the notebooks in the [examples/](./examples/) folder.\n\n## Documentation\n\nComing soon at [mlopt.org](https://mlopt.org)!\n\n## Citing\n\nIf you use `mlopt` for research, please cite the following papers:\n\n* [The Voice of Optimization](https://arxiv.org/pdf/1812.09991.pdf):\n\n  ```\n  @Article{bertsimas2021,\n  author        = {{Bertsimas}, D. and {Stellato}, B.},\n  title         = {The Voice of Optimization},\n  journal       = {Machine Learning},\n  year          = {2021},\n  month         = {2},\n  volume        = {110},\n  issue         = {2},\n  pages         = {249--277},\n  }\n  ```\n\n* [Online Mixed-Integer Optimization in Milliseconds](https://arxiv.org/pdf/1907.02206.pdf)\n\n  ```\n  @article{stellato2019a,\n    author = {{Bertsimas}, D. and {Stellato}, B.},\n    title = {Online Mixed-Integer Optimization in Milliseconds},\n    journal = {arXiv e-prints},\n    year = {2019},\n    month = jul,\n    adsnote = {Provided by the SAO/NASA Astrophysics Data System},\n    adsurl = {https://ui.adsabs.harvard.edu/abs/2019arXiv190702206B},\n    archiveprefix = {arXiv},\n    eprint = {1907.02206},\n    keywords = {Mathematics - Optimization and Control},\n    pdf = {https://arxiv.org/pdf/1907.02206.pdf},\n    primaryclass = {math.OC},\n  }\n\n  ```\n\n\nThe code to **reproduce the results in the papers** is available at [bstellato/mlopt_benchmarks](https://github.com/bstellato/mlopt_benchmarks).\n\n\n## Projects using mlopt framework\n\n\n* [Learning Mixed-Integer Convex Optimization Strategies for Robot Planning and Control](https://arxiv.org/pdf/2004.03736.pdf)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbstellato%2Fmlopt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbstellato%2Fmlopt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbstellato%2Fmlopt/lists"}