我知道那裏有些NP-hard/NP-complete的調度問題......但是,他們中沒有一個用這種方式表示這種情況也是NP。是否所有調度問題NP-Hard?
如果你有一組約束爲startAfter,startBy任務,並時間都試圖用一個單個資源 ...你可以解決的時間表或者確定它不能得到解決沒有詳盡的搜索?
如果答案是「sorry pal,但這是NP-complete」什麼是最好的啓發式(s?)使用,並且有辦法減少花費的時間a)解決計劃和b)確定一個無法解決的時間表。
我已經通過實現「最小窗口優先」啓發式的遞歸實現(在序言中)基本的衝突解決目標。這實際上很快找到解決方案,但發現無效的時間表非常緩慢。有沒有辦法解決這個問題?
Yay for compound questions!
你認爲你會爲這個問題添加更多約束嗎?如果是這樣,它看起來像一個時間表問題,這是'通常'通過約束編程解決 http://en.wikipedia.org/wiki/Constraint_programming 甚至線性編程 http://en.wikipedia.org/ wiki/Linear_programming 看一看名爲unitime.org(約束編程)和ilog的約束求解器(非常昂貴,但非常快)的開源項目。 – Karussell 2010-01-29 22:13:32