timefold

About Python version support


In the Java version, I can specify @planning variable(strengthWeightFactoryClass = ExecutionModeStrengthWeightFactory.class) as a variable filter. Is this function supported in Python?

Java demo: ProjectJobScheduling Problem

@PlanningVariable(strengthWeightFactoryClass = ExecutionModeStrengthWeightFactory.class)
public ExecutionMode getExecutionMode() {
    return executionMode;
}

I would like to know if this feature is supported in Python. If so, please give me an example.


Solution

  • This feature is not currently supported in the Python solver. We are working towards making the Python and Java solvers functionally equivalent, and we are nearly there. But considering that this is a niche feature, it is not high on the current list of priorities.