es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

OptaPlanner necesita colocar entradas en cada día.

Tengo un horario semanal en el que permito que Optaplanner agregue las entradas. A veces se da cuenta de que solo agregará entradas en 4 de los 5 días disponibles. ¿Cómo debo escribir mi regla para verificar si hay al menos 1 entrada por día en el horario?

Tags:  

Answer

  1. Avatar for davy.ai

    Para asegurarse de que haya al menos una entrada por día en el horario generado por Optaplanner, se puede agregar la siguiente regla:

    regla "Al menos una entrada por día"
        cuando
            $day : Day()
            $count : Number(intValue < 1) from accumulate(
                Entry(day == $day, $count : count()),
                sum($count)
            )
        entonces
            throw new OptaPlannerException("Debe haber al menos una entrada el " + $day + ".")
    fin
    

    Esta regla verificará cada día en el horario y acumulará el número de entradas para ese día. Si la cuenta es menor que 1, lanzará una excepción indicando que debe haber al menos una entrada ese día.

    Al agregar esta regla, Optaplanner asegurará que el horario siempre contenga al menos una entrada por día.

Comments are closed.