Я знаю, что есть некоторые проблемы с планированием, которые NP-hard/NP-complete... однако ни один из них не указан таким образом, чтобы показать эту ситуацию также NP.
Если у вас есть набор задач, связанных с startAfter, startBy и продолжительностью, все из которых пытаются использовать единственный ресурс..., вы можете разрешить расписание или определить, что он не может быть разрешен без исчерпывающий поиск?
Если ответ "извините, но это NP-complete", что будет лучшим эвристическим (s?) для использования и есть способы уменьшить время, затрачиваемое на: a) разрешить расписание и b) на определить неразрешимый график.
Я реализовал (в прологе) базовую цель разрешения конфликтов через рекурсию, которая реализует "наименьшее окно с первой" эвристикой. Это на самом деле находит решения довольно быстро, но исключительно медленно при поиске недопустимых графиков. Есть ли способ преодолеть это?
Для сложных вопросов!