Concepts
Understand the fundamental concepts of planning optimization and constraint solving.
Every organization faces planning problems: providing products or services with a limited set of constrained resources (employees, assets, time, and money). SolverForge’s Planning AI optimizes these problems to do more business with fewer resources using Constraint Satisfaction Programming.
SolverForge is a lightweight, embeddable constraint satisfaction engine which optimizes planning problems. Example use cases include:

SolverForge provides a Pythonic API using:
@planning_entity, @planning_solution)Annotated for constraint and property markingfrom dataclasses import dataclass, field
from typing import Annotated
from solverforge_legacy.solver.domain import (
planning_entity, planning_solution,
PlanningId, PlanningVariable, PlanningEntityCollectionProperty,
ProblemFactCollectionProperty, ValueRangeProvider, PlanningScore
)
from solverforge_legacy.solver.score import HardSoftScore
@planning_entity
@dataclass
class Lesson:
id: Annotated[str, PlanningId]
subject: str
teacher: str
timeslot: Annotated[Timeslot | None, PlanningVariable] = field(default=None)
room: Annotated[Room | None, PlanningVariable] = field(default=None)
@planning_solution
@dataclass
class Timetable:
timeslots: Annotated[list[Timeslot], ProblemFactCollectionProperty, ValueRangeProvider]
rooms: Annotated[list[Room], ProblemFactCollectionProperty, ValueRangeProvider]
lessons: Annotated[list[Lesson], PlanningEntityCollectionProperty]
score: Annotated[HardSoftScore, PlanningScore] = field(default=None)
Understand the fundamental concepts of planning optimization and constraint solving.
Install SolverForge and solve your first planning problem.
Model your planning problem with entities, variables, and solutions.
Define constraints using the fluent Constraint Streams API.
Configure and run the solver to find optimal solutions.
Understand the algorithms that power SolverForge’s optimization.
Common patterns for handling real-world planning scenarios.
Integrate SolverForge with web frameworks and other systems.
API reference and frequently asked questions.
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.