Skip to content

SolverForge/solverforge-quickstarts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SolverForge Quickstarts

This repository contains quickstarts for SolverForge, an AI constraint solver and framework for Rust and Python. It shows different use cases and basic implementations of constraint solving.

Overview

Use Case Rust Python (Legacy) Notable Solver Concepts
👋 Hello World 🚧 Basic Planning Problem
🧑‍💼 Employee Scheduling Load Balancing
🚚 Vehicle Routing 🚧 Chained Through Time, Shadow Variables
🛠️ Maintenance Scheduling 🚧 TimeGrain, Shadow Variable, Variable Listener
🛒 Order Picking 🚧 Chained Planning Variable, Shadow Variables
👥 Meeting Scheduling 🚧 TimeGrain
📈 Portfolio Optimization 🚧 Financial Constraints
🖥️ VM Placement 🚧 Bin Packing, Resource Allocation

Note

The implementations in this repository serve as a starting point and/or inspiration when creating your own application. SolverForge is a library and does not include a UI. To illustrate these use cases a rudimentary UI is included in these quickstarts.

Rust implementations are native SolverForge applications showcasing zero-erasure architecture. Python (Legacy) implementations use the Timefold-based legacy solver and are located in the legacy/ directory.

Use cases

👋 Hello World

A minimal example demonstrating the basics of constraint solving with SolverForge.


🧑‍💼 Employee Scheduling

Schedule shifts to employees, accounting for employee availability and shift skill requirements.


🚚 Vehicle Routing

Find the most efficient routes for vehicles to reach visits, considering vehicle capacity and time windows when visits are available. Sometimes also called "CVRPTW".


🛠️ Maintenance Scheduling

Schedule maintenance jobs to crews over time to reduce both premature and overdue maintenance.


🛒 Order Picking

Generate an optimal picking plan for completing a set of orders.


👥 Meeting Scheduling

Assign timeslots and rooms for meetings to produce a better schedule.


📈 Portfolio Optimization

Optimize investment portfolios to balance risk and return while satisfying various financial constraints.


🖥️ VM Placement

Optimize the placement of virtual machines across physical servers to maximize resource utilization and minimize costs.


Legal notice

This version of SolverForge is inspired on a repo that was forked on 03 August 2025 from the original Timefold Quickstarts, which was entirely Apache-2.0 licensed (a permissive license). Derivative work is limited to the legacy/ folder and the original fork is available as an archive.

The original Timefold Quickstarts was forked on 20 April 2023 from OptaPlanner Quickstarts.

This version of SolverForge Quickstarts is inspired on the original Timefold Quickstarts and OptaPlanner Quickstarts, which includes copyrights of the original creators, Timefold AI, Red Hat Inc., affiliates, and contributors, that were all entirely licensed under the Apache-2.0 license, for the legacy/ folder exclusively. Every source file has been modified.

About

Quickstarts for SolverForge

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors 2

  •  
  •