Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,18 @@

All notable changes to KAYROS are recorded here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the project aims to follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Certificate semantics and benchmark provenance are documented in `README.md` and `cpp/lera/NOTICE.md`.

## [1.1.2] — 2026-07-18

Documentation-only release. No code, no build, and no solver behavior changes: the wheels are functionally identical to 1.1.0.

### Added

- `uv` install commands alongside pip in `README.md`.
- An `Acknowledgements` section in `README.md`: the PhD supervisors (Romain Billot, Christine Solnon, Lina Fahed); Romain Fontaine for his help with Grid'5000 and for the TDTSPTW lineage this PhD follows up on ([tdtsptw-ejor23](https://github.com/romainfontaine/tdtsptw-ejor23)); Gonzalo Lera-Romero for open-sourcing the branch-price-and-cut solver the exact component builds on.
- A `Funding` section in `README.md`: ANR MAMUT project, ANR-22-CE22-0016.
- The Lera-Romero et al. 2020 reference now links the companion repository ([gleraromero/networks2020](https://github.com/gleraromero/networks2020)) and the author's GitHub profile.
- `date-released` in `CITATION.cff` and a `Changelog` project URL in the PyPI metadata.

## [1.1.1] — 2026-07-18

Documentation-only release. No code, no build, and no solver behavior changes: the wheels are functionally identical to 1.1.0.
Expand Down Expand Up @@ -85,6 +97,7 @@ The theme of this release is **sound, audited optimality certificates** for the

- Initial public release: the NDCPWLF composition engine, a bit-identical C++ port of the reference checker's arithmetic, gated by an equivalence suite over the full benchmark set.

[1.1.2]: https://github.com/0nyr/kayros/releases/tag/v1.1.2
[1.1.1]: https://github.com/0nyr/kayros/releases/tag/v1.1.1
[1.1.0]: https://github.com/0nyr/kayros/releases/tag/v1.1.0
[1.0.0]: https://github.com/0nyr/kayros/releases/tag/v1.0.0
Expand Down
3 changes: 2 additions & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,5 @@ keywords:
- routing
- research software
license: MIT
version: "1.1.1"
version: "1.1.2"
date-released: "2026-07-18"
14 changes: 12 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The name is a nod to [*Kairos*](https://en.wikipedia.org/wiki/Kairos), the ancie
## Install

```sh
pip install kayros
pip install kayros # or: uv add kayros / uv pip install kayros
```

This pulls everything, including the benchmark loaders and the reference checker ([`mamut-routing-lib`](https://pypi.org/project/mamut-routing-lib/)). For development:
Expand Down Expand Up @@ -95,6 +95,16 @@ KAYROS is developed by [Florian Rascoussier (Onyr)](https://github.com/0nyr) as

### References

- Gonzalo Lera-Romero, Juan J. Miranda Bront, Francisco J. Soulignac. *Linear edge costs and labeling algorithms: The case of the time-dependent vehicle routing problem with time windows.* **Networks** 76(1):24–53, 2020. [doi:10.1002/net.21937](https://doi.org/10.1002/net.21937)
- Gonzalo Lera-Romero, Juan J. Miranda Bront, Francisco J. Soulignac. *Linear edge costs and labeling algorithms: The case of the time-dependent vehicle routing problem with time windows.* **Networks** 76(1):24–53, 2020. [doi:10.1002/net.21937](https://doi.org/10.1002/net.21937). Companion code: [gleraromero/networks2020](https://github.com/gleraromero/networks2020) by [Gonzalo Lera-Romero](https://github.com/gleraromero), the solver vendored under `cpp/lera/`. As of 2026-07-18 its only GitHub star is [ours](https://github.com/0nyr): sadly little recognition for such an important project in the time-dependent routing world. Go give it a second one.
- Thomas R. Visser, Remy Spliet. *Efficient move evaluations for time-dependent vehicle routing problems.* **Transportation Science** 54(4):1091–1112, 2020. [doi:10.1287/trsc.2019.0938](https://doi.org/10.1287/trsc.2019.0938)
- Jannis Blauth, Stephan Held, Dirk Müller, Niklas Schlomberg, Vera Traub, Thorben Tröbst, Jens Vygen. *Vehicle routing with time-dependent travel times: Theory, practice, and benchmarks.* **Discrete Optimization** 53:100848, 2024. [doi:10.1016/j.disopt.2024.100848](https://doi.org/10.1016/j.disopt.2024.100848)

## Acknowledgements

- **Romain Billot, Christine Solnon and Lina Fahed**, who supervise the PhD this solver is built for.
- **[Romain Fontaine](https://github.com/romainfontaine)**, for his help with Grid'5000, where every KAYROS validation and certification campaign runs. This PhD is a multi-vehicle follow-up to his TDTSPTW thesis and its dynamic-programming solver, [tdtsptw-ejor23](https://github.com/romainfontaine/tdtsptw-ejor23).
- **[Gonzalo Lera-Romero](https://github.com/gleraromero)**, who made his branch-price-and-cut solver [open source](https://github.com/gleraromero/networks2020): a major milestone on the road to this thesis and the direct inspiration for KAYROS's exact component.

## Funding

This work is funded by the French National Research Agency (ANR) as part of the [MAMUT project](https://anr.fr/Projet-ANR-22-CE22-0016), ANR-22-CE22-0016 "Machine learning et matheuristiques pour le transport urbain" (Machine learning And Matheuristics algorithms for Urban Transportation).
3 changes: 2 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ name = "kayros"
# Bump BY HAND alongside this key: CITATION.cff `version:`, the README status
# line, and create the matching GitHub release tag vX.Y.Z (publish.yml ships
# the wheels to PyPI on release).
version = "1.1.1"
version = "1.1.2"
description = "KAYROS — exact & anytime solver for duration-minimization time-dependent vehicle routing (TDVRPTW / TDVRP)"
readme = "README.md"
authors = [
Expand Down Expand Up @@ -45,6 +45,7 @@ dev = ["pytest>=8"]
Homepage = "https://github.com/0nyr/kayros"
Issues = "https://github.com/0nyr/kayros/issues"
Benchmarks = "https://github.com/ANR-MAMUT/MAMUT-routing"
Changelog = "https://github.com/0nyr/kayros/blob/main/CHANGELOG.md"

[tool.scikit-build]
minimum-version = "build-system.requires"
Expand Down
Loading