我工作幾周以來,一個項目真的很有趣,但不幸的是一個非常複雜的背景。類布爾到布爾可滿足性[多項式時間減少]最後部分
我已經問3個問題:
- Class Scheduling to Boolean satisfiability [Polynomial-time reduction] Final Part在兩人面前(在這裏)
- Class Scheduling to Boolean satisfiability [Polynomial-time reduction] part 2
- Class Scheduling to Boolean satisfiability [Polynomial-time reduction]
,我得到我的回答(再次感謝你@Amit)但現在到了最後的部分,誰將使這個項目可用:)
我現在可以管理:
- N個時間間隔。
- C課程。
- T老師。
- S房間。
我的約束是如下:
- 教師2人不能在同一個房間在同一時間。
- 2道菜不能在同一個房間同一時間。
- 老師只能講授特定的課程。
- 有些課程只能在特定的時間間隔發生。
因此,這是現在,我的結果:
但是這裏來,我要補充的最後一部分:我要管理學生組,有以下限制:
- 一個小組只有一些課程可以做。
- 2+組可以在同一個房間在同一時間只對特定課程(例如像獨斷的課程)
同樣,我成功了約束隔離開來,但我如何不知道將此約束轉換爲「時間間隔不應重疊」約束。
由於提前, 最好的問候,
問題是:在某些課程中(如排澇課程)2+組學生可以同時在同一個房間......這就是難點..:/ – 2015-03-25 15:03:01
哦〜* - *這個表示法確實可以避免任何其他問題。 如果我有課程Java CM,這個課程必須安排在某個地方,並且2+個小組將參加它。 如果我有課程Java Grp1,那麼它是一個不同於Java CM的課程... 這就是你的意思,對嗎? – 2015-03-25 15:26:04
是的。在您的系統中,真正的課程「Java 101」可能需要分成幾個「課程」:所有學生都參加的講座,以及「Java 101 - group1」和「Java 101 - group2'爲小組講課。 – 2015-03-25 15:32:05