POAP: Plumbing for Optimization with Asynchronous Parallelism
POAP provides an event-driven framework for building and combining asynchronous optimization strategies. A typical optimization code written with POAP might look like:
from poap.strategy import FixedSampleStrategy
from poap.strategy import CheckWorkStrategy
from poap.controller import ThreadController
from poap.controller import BasicWorkerThread
# samples = list of sample points ...
controller = ThreadController()
sampler = FixedSampleStrategy(samples)
controller.strategy = CheckWorkerStrategy(controller, sampler)
for i in range(NUM_WORKERS):
t = BasicWorkerThread(controller, objective)
controller.launch_worker(t)
result = controller.run()
print 'Best result: {0} at {1}'.format(result.value, result.params)
The basic ingredients are a controller capable of asking workers to run function evaluations and a strategy for choosing where to sample. The strategies send the controller proposed actions, which the controller then accepts or rejects; the controller, in turn, informs the strategies of relevant events through callback functions.
Most users will probably want to provide their own strategies, controllers, or both.
Developers
Build Status:
Metadata
Release files for POAP 0.1.25
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| POAP-0.1.25.tar.gz | 28.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| POAP-0.1.25-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 64.6 kB
Release files / POAP-0.1.25.tar.gz
| Download URL | POAP-0.1.25.tar.gz |
|---|---|
| Size | 28.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a542b66abeb974f1a97101c5f4ae829607ac2a7eccd28fc5cd1b338ca6932596
|
|
BLAKE2b-256 checksum How to use checksums |
894b8a34346c044dc48740db2ac4e2b9b9a69e89154063fbabf8e05b2a4b095d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / POAP-0.1.25-py2.py3-none-any.whl
| Download URL | POAP-0.1.25-py2.py3-none-any.whl |
|---|---|
| Size | 36.3 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
d28bc97c1fea689fd05463929ebc946d8e9c8d884f13ac185bdcd69c92545b3e
|
|
BLAKE2b-256 checksum How to use checksums |
274faa6b5c24eea2bddcaa54fa45d0355485f7868f53670af77600b3122c1655
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |