Metadata-Version: 2.4
Name: feloopy
Version: 0.3.8
Summary: FelooPy: Efficient and feature-rich integrated decision environment
Home-page: https://feloopy.github.io/
Download-URL: https://github.com/feloopy/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
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
Requires-Dist: rich
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.8&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.8"
```

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 version you used:

---

### APA 7th Edition  
**Tafakkori, K.** (2022–2025). *FelooPy: Efficient and feature-rich integrated decision environment* (Version 0.3.8) [Computer software]. GitHub. [https://github.com/feloopy/feloopy](https://github.com/feloopy/feloopy)

*For APA 6th Edition*, use:  
**Tafakkori, K.** (2025). *FelooPy: Efficient and feature-rich integrated decision environment* (Version 0.3.8) [Computer software]. Retrieved from [https://github.com/feloopy/feloopy](https://github.com/feloopy/feloopy)  

---

### LaTeX/BibTeX

```bibtex
@software{tafakkori_feloopy_2025,
  author      = {Keivan Tafakkori},
  title       = {{FelooPy: Efficient and Feature-Rich Integrated Decision Environment}},
  year        = {2025},
  version     = {0.3.8},
  publisher   = {GitHub},
  url         = {https://github.com/feloopy/feloopy},
  note        = {Original release: September 2022},
}
```
<br>
<br>

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

#### Versions before 0.3.6

##### 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>
