Metadata-Version: 2.4
Name: feloopy
Version: 0.3.7
Summary: FelooPy: Efficient and feature-rich integrated decision environment
Home-page: https://github.com/ktafakkori/feloopy
Download-URL: https://github.com/ktafakkori/feloopy/releases
Author: Keivan Tafakkori
Author-email: k.tafakkori@gmail.com
Maintainer: Keivan Tafakkori
Maintainer-email: k.tafakkori@gmail.com
License: MIT
Keywords: computer science,data science,decision making,decision science,industrial engineering,machine learning,management science,mathematical modeling,operations management,operations research,optimization,simulation,supply chain
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: license.txt
Requires-Dist: gputil
Requires-Dist: infix
Requires-Dist: matplotlib
Requires-Dist: nbformat
Requires-Dist: numpy==1.26.4
Requires-Dist: openpyxl
Requires-Dist: pandas
Requires-Dist: psutil
Requires-Dist: py-cpuinfo
Requires-Dist: tabulate
Requires-Dist: win-unicode-console
Requires-Dist: xlsxwriter
Requires-Dist: tqdm
Requires-Dist: colorama
Provides-Extra: pico
Provides-Extra: nano
Requires-Dist: pymprog==1.1.2; extra == "nano"
Requires-Dist: highspy==1.10.0; extra == "nano"
Provides-Extra: micro
Requires-Dist: pymprog==1.1.2; extra == "micro"
Requires-Dist: highspy==1.10.0; extra == "micro"
Requires-Dist: gekko==1.3.0; extra == "micro"
Requires-Dist: mealpy==3.0.1; extra == "micro"
Provides-Extra: mini
Requires-Dist: pymprog==1.1.2; extra == "mini"
Requires-Dist: highspy==1.10.0; extra == "mini"
Requires-Dist: gekko==1.3.0; extra == "mini"
Requires-Dist: mealpy==3.0.1; extra == "mini"
Requires-Dist: cvxpy==1.6.4; extra == "mini"
Requires-Dist: ortools==9.12.4544; extra == "mini"
Provides-Extra: full
Requires-Dist: pymprog==1.1.2; extra == "full"
Requires-Dist: highspy==1.10.0; extra == "full"
Requires-Dist: gekko==1.3.0; extra == "full"
Requires-Dist: mealpy==3.0.1; extra == "full"
Requires-Dist: cvxpy==1.6.4; extra == "full"
Requires-Dist: ortools==9.12.4544; extra == "full"
Requires-Dist: pydecision==4.7.5; extra == "full"
Requires-Dist: pymoo==0.6.1.3; extra == "full"
Requires-Dist: rsome==1.3.1; extra == "full"
Provides-Extra: stock
Requires-Dist: pymprog==1.1.2; extra == "stock"
Requires-Dist: highspy==1.10.0; extra == "stock"
Requires-Dist: gekko==1.3.0; extra == "stock"
Requires-Dist: mealpy==3.0.1; extra == "stock"
Requires-Dist: cvxpy==1.6.4; extra == "stock"
Requires-Dist: ortools==9.12.4544; extra == "stock"
Requires-Dist: pydecision==4.7.5; extra == "stock"
Requires-Dist: pymoo==0.6.1.3; extra == "stock"
Requires-Dist: rsome==1.3.1; extra == "stock"
Requires-Dist: linopy==0.5.2; extra == "stock"
Requires-Dist: mip==1.15.0; extra == "stock"
Requires-Dist: niapy==2.5.2; extra == "stock"
Requires-Dist: picos==2.6.0; extra == "stock"
Requires-Dist: pulp==3.1.1; extra == "stock"
Requires-Dist: pygad==3.4.0; extra == "stock"
Requires-Dist: pyomo==6.9.1; extra == "stock"
Requires-Dist: highsbox==1.10.0; extra == "stock"
Requires-Dist: pyoptinterface==0.4.1; extra == "stock"
Provides-Extra: hyper
Requires-Dist: pymprog==1.1.2; extra == "hyper"
Requires-Dist: highspy==1.10.0; extra == "hyper"
Requires-Dist: gekko==1.3.0; extra == "hyper"
Requires-Dist: mealpy==3.0.1; extra == "hyper"
Requires-Dist: cvxpy==1.6.4; extra == "hyper"
Requires-Dist: ortools==9.12.4544; extra == "hyper"
Requires-Dist: pydecision==4.7.5; extra == "hyper"
Requires-Dist: pymoo==0.6.1.3; extra == "hyper"
Requires-Dist: rsome==1.3.1; extra == "hyper"
Requires-Dist: linopy==0.5.2; extra == "hyper"
Requires-Dist: mip==1.15.0; extra == "hyper"
Requires-Dist: niapy==2.5.2; extra == "hyper"
Requires-Dist: picos==2.6.0; extra == "hyper"
Requires-Dist: pulp==3.1.1; extra == "hyper"
Requires-Dist: pygad==3.4.0; extra == "hyper"
Requires-Dist: pyomo==6.9.1; extra == "hyper"
Requires-Dist: highsbox==1.10.0; extra == "hyper"
Requires-Dist: pyoptinterface==0.4.1; extra == "hyper"
Requires-Dist: gurobipy==12.0.1; extra == "hyper"
Requires-Dist: cplex==22.1.2.0; extra == "hyper"
Requires-Dist: docplex==2.29.241; extra == "hyper"
Requires-Dist: xpress==9.5.4; extra == "hyper"
Requires-Dist: coptpy==7.2.6; extra == "hyper"
Requires-Dist: gamspy==1.8.0; extra == "hyper"
Provides-Extra: plus-gurobi
Requires-Dist: gurobipy==12.0.1; extra == "plus-gurobi"
Provides-Extra: plus-cplex
Requires-Dist: cplex==22.1.2.0; extra == "plus-cplex"
Requires-Dist: docplex==2.29.241; extra == "plus-cplex"
Provides-Extra: plus-xpress
Requires-Dist: xpress==9.5.4; extra == "plus-xpress"
Provides-Extra: plus-copt
Requires-Dist: coptpy==7.2.6; extra == "plus-copt"
Provides-Extra: plus-insideopt
Requires-Dist: insideopt-seeker==0.1.21; extra == "plus-insideopt"
Provides-Extra: plus-insideoptdemo
Requires-Dist: insideopt-demo==0.3.3; extra == "plus-insideoptdemo"
Provides-Extra: plus-gams
Requires-Dist: gamspy==1.8.0; extra == "plus-gams"
Provides-Extra: plus-jump
Requires-Dist: juliacall==0.9.24; extra == "plus-jump"
Provides-Extra: only-cylp
Requires-Dist: cylp==0.92.2; extra == "only-cylp"
Provides-Extra: only-linux
Requires-Dist: pymultiobjective==1.5.5; extra == "only-linux"
Provides-Extra: mega
Requires-Dist: pymprog==1.1.2; extra == "mega"
Requires-Dist: highspy==1.10.0; extra == "mega"
Requires-Dist: gekko==1.3.0; extra == "mega"
Requires-Dist: mealpy==3.0.1; extra == "mega"
Requires-Dist: cvxpy==1.6.4; extra == "mega"
Requires-Dist: ortools==9.12.4544; extra == "mega"
Requires-Dist: pydecision==4.7.5; extra == "mega"
Requires-Dist: pymoo==0.6.1.3; extra == "mega"
Requires-Dist: rsome==1.3.1; extra == "mega"
Requires-Dist: linopy==0.5.2; extra == "mega"
Requires-Dist: mip==1.15.0; extra == "mega"
Requires-Dist: niapy==2.5.2; extra == "mega"
Requires-Dist: picos==2.6.0; extra == "mega"
Requires-Dist: pulp==3.1.1; extra == "mega"
Requires-Dist: pygad==3.4.0; extra == "mega"
Requires-Dist: pyomo==6.9.1; extra == "mega"
Requires-Dist: highsbox==1.10.0; extra == "mega"
Requires-Dist: pyoptinterface==0.4.1; extra == "mega"
Requires-Dist: gurobipy==12.0.1; extra == "mega"
Requires-Dist: cplex==22.1.2.0; extra == "mega"
Requires-Dist: docplex==2.29.241; extra == "mega"
Requires-Dist: xpress==9.5.4; extra == "mega"
Requires-Dist: coptpy==7.2.6; extra == "mega"
Requires-Dist: gamspy==1.8.0; extra == "mega"
Requires-Dist: cylp==0.92.2; extra == "mega"
Requires-Dist: pymultiobjective==1.5.5; extra == "mega"
Provides-Extra: beta
Requires-Dist: casadi==3.7.0; extra == "beta"
Requires-Dist: scipy==1.15.2; extra == "beta"
Dynamic: author
Dynamic: author-email
Dynamic: description
Dynamic: description-content-type
Dynamic: download-url
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: maintainer
Dynamic: maintainer-email
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

<div align="center">
  <p>
    <a href="https://feloopy.github.io" target="_blank">
      <picture>
        <source media="(prefers-color-scheme: light)" srcset="https://github.com/feloopy/feloopy/raw/main/repo/assets/feloopy-logo-name-light.png">
        <source media="(prefers-color-scheme: dark)" srcset="https://github.com/feloopy/feloopy/raw/main/repo/assets/feloopy-logo-name-dark.png">
        <img alt="FelooPy's logo." src="https://github.com/feloopy/feloopy/raw/main/repo/assets/feloopy-logo-name-light.png" width="300" height="auto">
      </picture>
    </a>
  </p>
</div>

<p align="center">
  <strong>Efficient & Feature-Rich Integrated Decision Environment</strong>
</p>


<div align="center" style="margin-bottom: 2px;">

![Version](https://img.shields.io/static/v1?label=version&message=v0.3.7&color=green&labelColor=grey)
![Release Date](https://img.shields.io/github/release-date/feloopy/feloopy?label=release&color=green&labelColor=grey)
[![Downloads](https://static.pepy.tech/personalized-badge/feloopy?period=total&units=international_system&left_color=grey&right_color=green&left_text=downloads)](https://pepy.tech/project/feloopy)
![License](https://img.shields.io/static/v1?label=license&message=MIT&color=green&labelColor=grey)

</div>

<br>

### Quick Intro

FelooPy (/fɛlupaɪ/) is a user-friendly tool for coding, modeling, and solving decision problems. It helps you focus on analysis and offers and supports a wide range of mathematical and statistical models and algorithms for decision-making.

<br>

### Quick Features

- **Linear & Non-Linear Programming**: Exact algorithms for LP/NLP.
- **Integer & Mixed-Integer Programming**: Exact algorithms for IP/MIP.
- **General Purpose Programming**: Heuristic algorithms for various problems.
- **Constraint Programming**: Techniques for constraint satisfaction.
- **Multi-Objective Decision-Making**: Optimizing multiple objectives (MODM/MCDM).
- **Multi-Attribute Decision-Making**: Evaluating opinions on alternatives using multiple attributes (MADM/MCDM).

<br>

### Quick Installation

You can install `feloopy` inside a Python>=3.1x.x virtual environment:

```bash
pip install -U "feloopy[stock]==0.3.7"
```

For supporting the developer, testing the latest version, and reporting bugs or contributing to the codebase, use:

```bash
pip install "feloopy[stock] @ git+https://github.com/feloopy/feloopy.git"
```

<br>

### Quick Testing

Here is an example to test FelooPy's functionality:

```python
import feloopy as flp

def example(m):
    x = m.bvar(name="x")
    y = m.pvar(name="y", bound=[0, 1])
    m.con(x + y <= 1, name="c1")
    m.con(x - y >= 1, name="c2")
    m.obj(x + y)
    return m

flp.search(example,directions=["max"]).clean_report()
```

<br>


### Quick Citation

To cite or give credit to FelooPy in publications, projects, presentations, web pages, blog posts, etc. please use one of the following entries, based on the used version:

<br>

#### APA 6th/7th Edition

Tafakkori, K. (2024). *Efficient and feature-rich integrated decision environment* [Python Library]. Retrieved from [https://github.com/feloopy/feloopy](https://github.com/feloopy/feloopy) (Original work published April 2024).

#### LaTeX/BiBTeX

```
@software{ktafakkori2024Apr,
author       = {Keivan Tafakkori},
title        = {{FelooPy: Efficient and feature-rich integrated decision environment}},
year         = {2024},
month        = apr,
publisher    = {GitHub},
url          = {https://github.com/feloopy/feloopy/}
}
```

<br>
<br>

<details>
<summary>Previous citations</summary>

#### Versions before 0.3.7

##### APA 6th/7th Edition

Tafakkori, K. (2022). FelooPy: An integrated optimization environment for AutoOR in Python [Python Library]. Retrieved from https://github.com/ktafakkori/feloopy (Original work published September 2022).

##### LaTeX/BiBTeX
```
@software{ktafakkori2022Sep,
author       = {Keivan Tafakkori},
title        = { {FelooPy: An integrated optimization environment for AutoOR in Python} },
year         = {2022},
month        = sep,
publisher    = {GitHub},
url          = {https://github.com/ktafakkori/feloopy/}
}
```


</details>
