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.4.tar.gz (124.2 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.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

solverforge-0.2.4-cp310-abi3-win_amd64.whl (2.1 MB view details)

Uploaded CPython 3.10+Windows x86-64

solverforge-0.2.4-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

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

solverforge-0.2.4-cp310-abi3-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: solverforge-0.2.4.tar.gz
  • Upload date:
  • Size: 124.2 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.4.tar.gz
Algorithm Hash digest
SHA256 6c837930e89bb2905b379ce15b760d31acad6c30a24c88dc8ff350b60aaeba41
MD5 54d62e9344f25920f2f0c4d41a426d07
BLAKE2b-256 766a1bc96abc4934990ed48101391c79a6e27c6f12d5da57996046d22b2ec25d

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.4.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.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f1108bade9be78ae55087bbf75c10125c04d654ea8bc8b6abef39e8fbe63912
MD5 187a4de73eb101f7fc228e6861f4ca1a
BLAKE2b-256 fa733795918623504ba4acdc9456cf1a07b64ba1bbb4edb5a82f13e9446a316f

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.4-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.4-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: solverforge-0.2.4-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.1 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.4-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 bd1dd98582fbada9c1bf44bb7a646d07e8db65219262b86a6b190ac49ecdb0d3
MD5 5adb7b9aaea04b7be7a84bb13d8a3ae3
BLAKE2b-256 65bd8dbf7508688c0f5cca38eada538f5f2f746c0e10042a27b5548ef0a5f97d

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.4-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.4-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.4-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 27b02a23b1e9061d13e3c61435eda56eef711ab0b6b6a91b5737a2ac11e6277b
MD5 b2c3ad7d26da0794557a88ce984520f3
BLAKE2b-256 651ffab2dab8bbfdd07ff87fbce7e9722ecee3f1f35a7320494e9efc7a33c53f

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.4-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.4-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for solverforge-0.2.4-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 95ab53fae9bc9053a7af39185a324856643cf898bf9b9b8bae42744295973228
MD5 77a6f345e2e655839cc172063e9a0b34
BLAKE2b-256 fcd0010440f180d9d8a754ebc00f366168d440fb065939b483328d4e7e54793a

See more details on using hashes here.

Provenance

The following attestation bundles were made for solverforge-0.2.4-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