BlackOps Solver Development Roadmap #1
Replies: 2 comments 3 replies
-
|
Ciao Vittorio, I'm interested in contributing with testing if /when needed. It would be great to see a rust implementation of timefold that can be used from python. I'm very familiar with python, not so much (yet?) with rust. |
Beta Was this translation helpful? Give feedback.
-
|
do you prefer for me to run and benchmark the quickstarts? or do you prefer if I benchmark the solver with my own set of problems? I don't have that much experience with the quickstarts. But I can prepare a set of known problems (graph coloring, tsp, vrp, assignment, facility location) where I have other solvers implemented and example problems and benchmark. Finally, I have bigger, more "complex"/ real life problems, that I can also benchmark: https://github.com/pchtsp/ihtc2024/tree/master/python/ihtc2024/solver/timefold |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone,
I'm excited to share the official development roadmap for the BlackOps Solver project. This post outlines our strategy to deliver high-performance constraint solving for Python, building upon the solid foundation of Timefold Solver.
Core Objective
To provide the Python and Rust ecosystems with a first-class, high-performance Constraint Programming and Optimization solver, offering a seamless experience and unlocking new possibilities for the ML and data science communities.
Core Challenge: The Python-Java Bridge
The primary performance bottleneck in JVM-based Python software is the interoperability layer. Our strategy is a forward-looking, ground-up rewrite to eliminate this bottleneck entirely by migrating the entire interoperability layer to native Rust via PyO3 and JNI, aiming for near-native performance.
Roadmap Phases
Phase 1: Stabilize the Legacy Bridge (Present - Q4 2025)
blackops-solver-legacy(Released): A debranded, maintained fork of the original solver. Available on PyPI:pip install blackops-legacy. This serves as a reliable, baseline reference.blackops-quickstartsrepository serves as our central hub for benchmarking and validating performance across different versions and implementations.Phase 2: Alpha Release of Native Rust Solver (Q4 2025 - Q1 2026)
blackops-solverRepository: A from-the-ground-up rewrite using Rust (via PyO3) and JNI for direct, efficient communication with the Timefold JVM core.Phase 3: Production-Ready Rust Solver & Ecosystem Expansion (H1 2026 - Q3 2026)
blackopsPyPI package (pip install blackops).How You Can Contribute
This project thrives on community input. Here’s how you can help:
blackops-legacypackage and report issues. Run benchmarks from thequickstartsrepo.We believe this focused strategy provides a clear path to a fundamentally faster and more robust solver for the Python and Rust communities. Thank you for your support.
Best regards,
Vittorio Distefano
Principal Maintainer
Repositories:
Related Links:
Beta Was this translation helpful? Give feedback.
All reactions