Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/spookylukey/seating-planner
https://github.com/spookylukey/seating-planner
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/spookylukey/seating-planner
- Owner: spookylukey
- Created: 2020-06-29T07:12:32.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-02-02T06:19:36.000Z (almost 2 years ago)
- Last Synced: 2023-03-11T08:33:34.441Z (almost 2 years ago)
- Language: Python
- Size: 43.9 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
README
Seating planner
===============This app attempts to solve the problem of seating a group of guests at a wedding
(or other occasion) so that everyone knows people on their table.The approach taken involves:
* Using a connection matrix that defines the strength of connections between all
the guests, and using that to score a given arrangement. Credit for this goes to
Meghan L. Bellows and J. D. Luc Peterson2http://www.improbable.com/news/2012/Optimal-seating-chart.pdf
* Using simmulated annealing to attempt to find a good solution.
The code for this comes from https://github.com/perrygeo/python-simulated-annealing
seating_planner/solver.py contains the main entry point for the algorithm
seating_planner/web_app.py contains a Flask web app as a UI, including a
relatively nice interface for entering the connection matrix.Installation and running
------------------------Preferably in a virtualenv:
* Add the current directory to the Python path
* $ pip install -r requirements.txt
* ./seating_planner/web_app.py
Access on localhost:5000
It can be run under PyPy for significant speedups (about 5-10x)
It can de deployed using any WSGI container e.g. gunicorn:
$ gunicorn -b 127.0.0.1:12345 -D -w 4 seating_planner.web_app:app
License
-------seating_planner/anneal.py has its own copyright licence.
Other code is put into the public domain.