For OptaPlanner (open source AI constraint solver), we created a quickstart in kotlin.
Video: Artificial Intelligence in Kotlin: code school timetabling from scratch with OptaPlanner and Quarkus - YouTube
Source code: https://github.com/kiegroup/optaplanner-quickstarts/tree/development/kotlin-quarkus-school-timetabling
I wondering if there are suggestions on how to make the code cleaner, like the 3 constructors in the Lesson class:
https://github.com/kiegroup/optaplanner-quickstarts/blob/development/kotlin-quarkus-school-timetabling/src/main/kotlin/org/acme/kotlin/schooltimetabling/domain/Lesson.kt#L29