Skip to main content

Python bindings for SolverForge constraint solver

Project description

SolverForge

Python bindings for the SolverForge constraint solver.

Installation

pip install solverforge

Quick Start

from solverforge import (
    planning_entity,
    planning_solution,
    PlanningId,
    PlanningVariable,
    HardSoftScore,
)

@planning_entity
class Lesson:
    id: str
    subject: str
    timeslot: str | None = None
    room: str | None = None

@planning_solution
class Timetable:
    timeslots: list[str]
    rooms: list[str]
    lessons: list[Lesson]
    score: HardSoftScore | None = None

Features

  • Declarative domain modeling with decorators
  • Constraint streams for defining optimization rules
  • Multiple score types (Simple, HardSoft, HardMediumSoft)
  • Automatic WASM constraint compilation

Requirements

  • Python 3.10+
  • Java 24+ (for solver service)

Documentation

License

Apache-2.0

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

solverforge-0.2.5.tar.gz (165.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

solverforge-0.2.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

solverforge-0.2.5-cp310-abi3-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10+Windows x86-64

solverforge-0.2.5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

solverforge-0.2.5-cp310-abi3-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

Details for the file solverforge-0.2.5.tar.gz.

File metadata

  • Download URL: solverforge-0.2.5.tar.gz
  • Upload date:
  • Size: 165.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for solverforge-0.2.5.tar.gz
Algorithm Hash digest
SHA256 eeb4f132d19ce277eecf1a30b15e89a3366f8c479131f8087f40408eeb6b19c5
MD5 b5bf258e9cc821b9e902e151a5bdf6bc
BLAKE2b-256 00537cd9d1094a4829e90edfc49df420ebf4198a9b4d18c324c7d5a42fc846ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.5.tar.gz:

Publisher: python-publish.yml on SolverForge/solverforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file solverforge-0.2.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90a3009540d407af3f33930b8697723b79ec4b96081503a9b8ef399f715202de
MD5 a49c6a0cb9f064c00785820670d59fab
BLAKE2b-256 9447f81cdde139cb17cddfdb6fa5221e2b9398e6e5d601408b311fd97f95ed32

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: python-publish.yml on SolverForge/solverforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file solverforge-0.2.5-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: solverforge-0.2.5-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for solverforge-0.2.5-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c085a6b77b3e838bc9cbbc21fbde3cb0a1c10f14be133556137814986a7a7709
MD5 1740467cfe9e7457da5527917ed73ef8
BLAKE2b-256 69948554b78cab4b20583ec0441b10f99fed6492c6cba46c30e73715650ad90f

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.5-cp310-abi3-win_amd64.whl:

Publisher: python-publish.yml on SolverForge/solverforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file solverforge-0.2.5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed0a23e94679cd776a2af2a2bf3e6c9bfbc62b3eff7833d6c6b2310b436f4aae
MD5 31da15f1149ce467cf0abc6a6200c4f0
BLAKE2b-256 8ab5d90ef294029b66a3bca46588c94d106ddf27de8ddedeaf723efe90d8a369

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: python-publish.yml on SolverForge/solverforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file solverforge-0.2.5-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.5-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3e799c5984aaba9335fe1b74985cdfbe2dc92a6797e3c6af4030212a24b57e76
MD5 eba1e28a5abf2fe87819e342436b2b77
BLAKE2b-256 269a855ed4cb002656b8ccf742303944721ce2b97cfac06aab8aac6c590fff11

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.5-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: python-publish.yml on SolverForge/solverforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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