A barebones mathematical programming package
Project description
Gana is an Algebraic Modeling Language (AML) for Multiscale Modeling and Optimization.
Generated programs (Prg) can be subclasses of Multiparametric Mixed Integer Linear Programming (mpMILP).
Features
Gana supports:
- mutable elements, allowing constraints/functions to be updated dynamically
- multiparametric as well as mixed integer programming
- formulation in both matrix form and set-based mathematical program
Moreover, Gana uses a simple format to write constraints/functions.
Elements
Programs in Gana are written using element sets, namely:
I- indexV- variableP- parameterT- parametric variable
Solvers
The list of natively supported solvers are:
- PPOPT for multiparametric programming (mp)
- Gurobi for Mixed Integer Programming (MIP) Programs can, however, be exported as a .mps or .lp file and passed to most solvers.
Illustration
Gana is best run in Jupyter as notebook (.ipynb) files, where programs can be visualized as canonical mathematical programs using set-notation.
Additionally, matrices can be exported.
Purpose
Gana was developed to enable certain functionalities in energia (py). Both were developed as PhD projects and have ample room for improvement. So please reach out to me on cacodcar@gmail.com with suggestions and such.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gana-1.0.2.tar.gz.
File metadata
- Download URL: gana-1.0.2.tar.gz
- Upload date:
- Size: 59.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d8b5abb82cf9b12ee74b709246dee3480135279af61c5fe192123f7ddbf26d0
|
|
| MD5 |
4653cf9f00c312f334cb97044f14cfb2
|
|
| BLAKE2b-256 |
8cd5acf28c0bb15bdfae57a7c5135ac575ce219d449b7ac30e8d0db579070078
|
File details
Details for the file gana-1.0.2-py3-none-any.whl.
File metadata
- Download URL: gana-1.0.2-py3-none-any.whl
- Upload date:
- Size: 65.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
addf771419f384245affa0acef7a96757d1129aad2b70ac2a40d655d8763b873
|
|
| MD5 |
b50c3d447cb4adeb3988044d40edcda1
|
|
| BLAKE2b-256 |
b45a99172de0481861b63db43333292c92571073f5676f20847de37602d27257
|