PySATS
This is a bridge to use some features of SATS in a Python project.
Requirements
- Python: 3.8+ (required for guaranteeing insertion order in dicts)
- Pyjnius 1.3.0
Set up
- Create a Python environment that satisfied above requirements. To install Pyjnius, follow the steps in https://pyjnius.readthedocs.io/en/stable/installation.html#.
- Download the latest SATS JAR from https://github.com/spectrumauctions/sats/releases/
- Place the SATS JAR together with the cplex.jar (which can be found in the CPLEX installation's
binfolder) together in some directory on your machine, and set the PYJNIUS_CLASSPATH environment variable to the absolute path of this directory.
Usage
After having set up the environment according the the previous section, install the package
$ pip install pysats
...
Use it in your project as follows. Have a look at the test/ directory for more examples.
from pysats import PySats
gsvm = PySats.getInstance().create_gsvm()
for bidder_id in gsvm.get_bidder_ids():
goods_of_interest = gsvm.get_goods_of_interest(bidder_id)
print(f'Bidder_{bidder_id}: {goods_of_interest}')
Verify installation
The best way to verify installation, and check if everything is wired up correctly, is to check out the project and to run the tests:
$ python -m unittest
...
Alternative to set up locally: Poetry
You can use Poetry to set up and test pysats locally. Install it as described in https://python-poetry.org/docs/#installation, and then run:
$ poetry install
...
This will install all dependencies automatically. To test the setup, run:
$ poetry run python -m unittest
...
Metadata
Release files for pysats 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pysats-0.2.2.tar.gz | 19.7 kB | Without provenance | Details for pysats-0.2.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pysats-0.2.2-py3-none-any.whl | Python 3 | none | any | Details for pysats-0.2.2-py3-none-any.whl |
Total release size: 41.9 kB
Release files / pysats-0.2.2.tar.gz
| Download URL | pysats-0.2.2.tar.gz |
|---|---|
| Size | 19.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7a52724b0f17198dac96ac91a159c0a5d4c4e94f4716e825c86c336c8acfc7db
|
|
BLAKE2b-256 checksum How to use checksums |
2c93f77a3a38d11fce84382a7baaf762babc154d3de5ddfcb8f28c1f660cf97c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.11.1 Linux/5.15.90.1-microsoft-standard-WSL2
|
Release files / pysats-0.2.2-py3-none-any.whl
| Download URL | pysats-0.2.2-py3-none-any.whl |
|---|---|
| Size | 22.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ca8c24fb1212b69c55ab24564a4075da34134f7ff5bff892166ab57acab05950
|
|
BLAKE2b-256 checksum How to use checksums |
caff0fb0ba04b65e20015dfaa5ec3c3c323b30ee151a7a16379b4298128c56cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.11.1 Linux/5.15.90.1-microsoft-standard-WSL2
|
Security for pysats 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.