Demostración de planificación eficiente impulsada por la tecnología de optimización de Timefold.
El demo ilustra el uso de SolverManager para resolver problemas de planificación de manera sincronica.
-
Optimización sincronía y asincronia:
SolverManagerresuelve múltiples problemas de planificación del mismo dominio de manera asíncrona sin bloquear el hilo de llamada.
-
Fácil Implementación:
- Crea un
SolverManager<Solution_, ProblemId_>utilizandocreate(SolverFactory, SolverManagerConfig).
- Crea un
-
Resolución de Problemas de Planificación:
- Llama a
solve(Object, Object, Consumer)osolveAndListen(Object, Object, Consumer)para resolver un problema de planificación.
- Llama a
Un SolverManager resuelve múltiples problemas de planificación del mismo dominio de manera asíncrona sin bloquear el hilo de llamada. Para crear un SolverManager, utiliza create(SolverFactory, SolverManagerConfig). Para resolver un problema de planificación, llama a solve(Object, Object, Consumer) o solveAndListen(Object, Object, Consumer).
- Kit de Desarrollo de Java (JDK) 17 o posterior
- Maven 3.6.0 o posterior
-
Clona el repositorio:
git clone https://github.com/ArlandMv/SmartSchedulerDemo-Sb3-TimefoldAI
-
Navega al directorio del proyecto:
cd SmartSchedulerDemo-Sb3-TimefoldAI
cat src/main/java/com/mvprojects/ai/schedulingapp/schedule/ScheduleController.java
nano src/main/java/com/mvprojects/ai/schedulingapp/schedule/ScheduleController.java-
Construye el proyecto:
mvn clean install
-
Ejecuta la aplicación:
java -jar target/schedulingdemo-0.0.1-SNAPSHOT.jar
-
Accede a la aplicación en http://localhost:8080 en tu navegador web.
Un SolverManager resuelve múltiples problemas de planificación del mismo dominio de manera asíncrona
sin bloquear el hilo de llamada. Para obtener más detalles y ejemplos de uso,
consulta la documentación de SolverManager.
Este proyecto está bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
- A Timefold por proporcionar capacidades poderosas de optimización.
