#yaml #dynamic-programming #solver #modeling #interface #language #dy-pdl

bin+lib didp-yaml

YAML interface for Dynamic Programming Description Language (DyPDL) and DyPDL solvers

16 unstable releases (6 breaking)

0.7.3 Apr 5, 2024
0.7.2 Mar 10, 2024
0.7.1 Jan 24, 2024
0.6.1 Dec 24, 2023
0.3.3 Mar 21, 2023

#150 in Development tools

Download history 4/week @ 2023-12-22 7/week @ 2024-01-19 14/week @ 2024-02-16 24/week @ 2024-02-23 2/week @ 2024-03-01 182/week @ 2024-03-08 23/week @ 2024-03-15 13/week @ 2024-03-29 128/week @ 2024-04-05

189 downloads per month

MIT/Apache

4.5MB
95K SLoC

crates.io minimum rustc 1.65 License License: MIT

didp-yaml

didp-yaml is a YAML interface for DyPDL modeling and solvers.

Documents

For the syntax of the DyPDL-YAML and the solver configuration, see the user guide

Installation

First, install Rust following the instruction on the official webpage: https://www.rust-lang.org/tools/install

Next, install didp-yaml.

cargo install didp-yaml

Run the Solver

didp-yaml domain.yaml problem.yaml config.yaml

Here, domain.yaml is the domain file for the problem, problem.yaml is the problem file for the problem, and config.yaml is the configuration file for a solver.

There are some examples in examples. For example, you can test the CABS solver on TSPTW, CVRP, SALBP-1, bin packing, MOSP, and graph clear.

didp-yaml tsptw/tsptw-domain.yaml tsptw/tsptw-problem.yaml solvers/cabs.yaml
didp-yaml cvrp/cvrp-domain.yaml cvrp/cvrp-problem.yaml solvers/cabs.yaml
didp-yaml salbp-1/salbp-1-domain.yaml salbp-1/salbp-1-problem.yaml solvers/cabs.yaml
didp-yaml bin-packing/bin-packing-domain.yaml bin-packing/bin-packing-problem.yaml solvers/cabs.yaml
didp-yaml mosp/mosp-domain.yaml mosp/mosp-problem.yaml solvers/cabs.yaml
didp-yaml graph-clear/graph-clear-domain.yaml graph-clear/graph-clear-problem.yaml solvers/cabs.yaml

Dependencies

~5–13MB
~140K SLoC