Skip to main content

A collection of Discrete Set Fourier Transformation Algorithms

Project description

setFTs

This library provides functionalities for calculating the Fourier transform on set functions, based on the novel mathematical foundation of discrete signal processing on set functions [1]. We provide functionalities for:

  • Initializing a set function object from a full set of function evaluations.
  • Inititalizing a set function object from a queryable python function.
  • Applying the fast Fourier transform algorithm [1]
  • Applying sparse Fourier transform algorithm [2]
  • Set function minimization algorithms [3]
  • Shapley Values Calculation

1 Documentation

Full documentation of the setfunctions and plotting modules can be found at: https://ebners.github.io/setFTs_docs/ or in the Documentation_setFTs.pdf provided in the repositors

2 Requirements

setFTs uses the python library pySCIPOpt for the implementation of the MIP-based minimization algorithm. pySCIPOpt requires a working installation of the SCIP Optimization Suite. The creators of pySCIPOpt recommend using conda as it installs SCIP automatically. And allows the installation of pySCIPOpt in one command:

conda install --channel conda-forge pyscipopt

More information about installing pySCIPOpt can be found at: https://github.com/scipopt/PySCIPOpt/blob/master/INSTALL.md

3 Installation

The installation of our package works over pypi and therefore a working installation of pip is needed. The pip command to install setFTs is the following:

pip install setFTs

References

[1]

@article{Discrete_Signal_Proc, 
     title={Discrete signal processing with set functions},
     volume={69},
     DOI={10.1109/tsp.2020.3046972},
     journal={IEEE Transactions on Signal Processing},
     author={Puschel, Markus and Wendler, Chris},
     year={2021}, 
     pages={1039–1053}
 } 

[2]

 @article{Sparse,
    author    = {Chris Wendler and
               Andisheh Amrollahi and
               Bastian Seifert and
               Andreas Krause and
               Markus P{\"{u}}schel},
    title     = {Learning Set Functions that are Sparse in Non-Orthogonal Fourier Bases},
    journal   = {CoRR},
    volume    = {abs/2010.00439},
    year      = {2020},
    url       = {https://arxiv.org/abs/2010.00439},
}

[3]

@article{MIPS,
    author={Weissteiner,Jakob and Wendler, Chris and Seuken, Sven and Lubin,Ben and Püschel, Markus},
    title={Fourier analysis-based iterative combinatorial auctions},
    DOI={10.24963/ijcai.2022/78},
    journal={Proceedings of the Thirty-First International Joint Conference on Artificial Intelligence},
    year={2022}
    } 

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

setFTs-0.0.1.1.tar.gz (1.9 MB view details)

Uploaded Source

Built Distributions

setFTs-0.0.1.1-cp39-cp39-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.9 Windows x86-64

setFTs-0.0.1.1-cp39-cp39-manylinux1_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.9

File details

Details for the file setFTs-0.0.1.1.tar.gz.

File metadata

  • Download URL: setFTs-0.0.1.1.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for setFTs-0.0.1.1.tar.gz
Algorithm Hash digest
SHA256 07259b78a5b285e44d5bcdf913176512f26ed527dd2c3aed1480cb846aebaa98
MD5 a4717dcb6ff6833a3d4b2bb1b239d704
BLAKE2b-256 739c7882ad31e2ee559e514fcf816054231d06388c98b8fc483888cf98094839

See more details on using hashes here.

File details

Details for the file setFTs-0.0.1.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: setFTs-0.0.1.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for setFTs-0.0.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b71f272b118621da9345e2496a76f3d5dce267c3678f3f15261359054e098c86
MD5 4c334ad74dff1e617fcd4d7adf43bf33
BLAKE2b-256 380eb85d604df8b29a611d9d4dfe92e56c2e328d06b29008d71894e3951c5ae1

See more details on using hashes here.

File details

Details for the file setFTs-0.0.1.1-cp39-cp39-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for setFTs-0.0.1.1-cp39-cp39-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 c0fa592f3020fc3860e30d834b1e8c3df2dc8230709ac0df7c686d34f26cf72a
MD5 41fcddf427bba380379f0e5b08fead8f
BLAKE2b-256 0879810289e394795d42018ede1696852487a5f13966a40f951f738e4f5ce95f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page