Metadata-Version: 2.4
Name: pyepo
Version: 1.1.0
Summary: PyTorch-based End-to-End Predict-then-Optimize Tool
Home-page: https://github.com/khalil-research/PyEPO
Author: Bo Tang
Author-email: bolucas.tang@mail.utoronto.ca
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: pathos
Requires-Dist: tqdm
Requires-Dist: configspace
Requires-Dist: scikit_learn
Requires-Dist: torch>=1.13.1
Provides-Extra: pyomo
Requires-Dist: pyomo>=6.1.2; extra == "pyomo"
Provides-Extra: gurobi
Requires-Dist: gurobipy>=9.1.2; extra == "gurobi"
Provides-Extra: ortools
Requires-Dist: ortools>=9.6; extra == "ortools"
Provides-Extra: mpax
Requires-Dist: mpax; extra == "mpax"
Requires-Dist: jax>=0.4.1; extra == "mpax"
Requires-Dist: jaxlib>=0.4.1; extra == "mpax"
Provides-Extra: all
Requires-Dist: pyomo>=6.1.2; extra == "all"
Requires-Dist: gurobipy>=9.1.2; extra == "all"
Requires-Dist: ortools>=9.6; extra == "all"
Requires-Dist: mpax; extra == "all"
Requires-Dist: jax>=0.4.1; extra == "all"
Requires-Dist: jaxlib>=0.4.1; extra == "all"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

``PyEPO`` (PyTorch-based End-to-End Predict-then-Optimize Tool) is a Python-based, open-source software that supports modeling and solving predict-then-optimize problems with the linear objective function. The core capability of ``PyEPO`` is to build optimization models with [GurobiPy](https://www.gurobi.com/), [COPT](https://shanshu.ai/copt), [Pyomo](http://www.pyomo.org/), [Google OR-Tools](https://developers.google.com/optimization), [MPAX](https://github.com/MIT-Lu-Lab/MPAX), or any other solvers and algorithms, then embed the optimization model into an artificial neural network for the end-to-end training. For this purpose, ``PyEPO`` implements various methods as [PyTorch](https://pytorch.org/) autograd modules.
