{property_prefix}timefold.solver-manager.parallel-solver-count

The number of solvers that run in parallel. This directly influences CPU consumption. Defaults to AUTO.

{property_prefix}timefold.solver.{solver_name_prefix}solver-config-xml

A classpath resource to read the solver configuration XML. Defaults to solverConfig.xml. If a resource is specified, it must be located in the classpath, or the configuration will fail. If the property is not specified, the file solverConfig.xml is used when found on the classpath. Otherwise, the configuration continues without using any configuration file. The specified resources take precedence over the default file solverConfig.xml, even if both files' resources are located in the classpath.

{property_prefix}timefold.solver.{solver_name_prefix}environment-mode

Enable runtime assertions to detect common bugs in your implementation during development.

{property_prefix}timefold.solver.{solver_name_prefix}daemon

Enable daemon mode. In daemon mode, non-early termination pauses the solver instead of stopping it, until the next problem fact change arrives. This is often useful for real-time planning. Defaults to false.

{property_prefix}timefold.solver.{solver_name_prefix}move-thread-count

Enable multi-threaded solving for a single problem, which increases CPU consumption. Defaults to NONE. Note that this is a feature of the Enterprise edition, which is Timefold’s commercial offering. See multithreaded incremental solving.

{property_prefix}timefold.solver.{solver_name_prefix}domain-access-type

How Timefold Solver should access the domain model. See the domain access section for more details. Defaults to REFLECTION. The other possible value is GIZMO.

{property_prefix}timefold.solver.{solver_name_prefix}nearby-distance-meter-class

Enable the Nearby Selection quick configuration. If the Nearby Selection distance meter class is specified, the solver evaluates the available move selectors and automatically enables Nearby Selection for the compatible move selectors.

{property_prefix}timefold.solver.{solver_name_prefix}termination.spent-limit

How long the solver can run. For example: 30s is 30 seconds. 5m is 5 minutes. 2h is 2 hours. 1d is 1 day. The ISO8601 format is also supported, e.g., PT30S is 30 seconds. PT5M is 5 minutes. PT2H is 2 hours. P1D is 1 day.

{property_prefix}timefold.solver.{solver_name_prefix}termination.unimproved-spent-limit

How long the solver can run without finding a new best solution after finding a new best solution. For example: 30s is 30 seconds. 5m is 5 minutes. 2h is 2 hours. 1d is 1 day. The ISO8601 format is also supported, e.g., PT30S is 30 seconds. PT5M is 5 minutes. PT2H is 2 hours. P1D is 1 day.

{property_prefix}timefold.solver.{solver_name_prefix}termination.best-score-limit

Terminates the solver when a specific score (or better) has been reached. For example: 0hard/-1000soft terminates when the best score changes from 0hard/-1200soft to 0hard/-900soft. Wildcards are supported to replace numbers. For example: 0hard/*soft to terminate when any feasible score is reached.

{property_prefix}timefold.benchmark.solver-benchmark-config-xml

A classpath resource to read the benchmark configuration XML. Defaults to solverBenchmarkConfig.xml. If this property isn’t specified, that solverBenchmarkConfig.xml is optional.

{property_prefix}timefold.benchmark.result-directory

Where the benchmark results are written to. Defaults to target/benchmarks.

{property_prefix}timefold.benchmark.solver.termination.spent-limit

How long solver should be run in a benchmark run. For example: 30s is 30 seconds. 5m is 5 minutes. 2h is 2 hours. 1d is 1 day. Also supports ISO-8601 format, see Duration.