工作的截止日期和持续时间和相应的机器组(=机器类型)
同时每台机器的工作(无重叠) -start + setup_time +持续时间 + =end_date
示例数据:
jobs = [
{"MG":"MG1","Job_ID":"Job1", "Articlecode": "A", "due_date":20, "duration":10},
{"MG":"MG1","Job_ID":"Job2", "Articlecode": "B", "due_date":20, "duration":10},
{"MG":"MG2","Job_ID":"Job3", "Articlecode": "C", "due_date":20, "duration":10},
{"MG":"MG1","Job_ID":"Job4", "Articlecode": "A", "due_date":30, "duration":10},
{"MG":"MG1","Job_ID":"Job5", "Articlecode": "B", "due_date":30, "duration":10},
{"MG":"MG2","Job_ID":"Job6", "Articlecode": "C", "due_date":30, "duration":10},
{"MG":"MG1","Job_ID":"Job7", "Articlecode": "A", "due_date":40, "duration":10},
{"MG":"MG1","Job_ID":"Job8", "Articlecode": "B", "due_date":40, "duration":10},
{"MG":"MG2","Job_ID":"Job9", "Articlecode": "C", "due_date":40, "duration":10},
]
machine_groups = {"MG1": ["M1", "M2", "M3"],
"MG2": ["M4"]}
setup_matrix = {
"A": {"A": 0, "B": 3, "C": 5, "D": 7},
"B": {"A": 3, "B": 0, "C": 6, "D": 8},
"C": {"A": 5, "B": 6, "C": 0, "D": 2},
"D": {"A": 1, "B": 1, "C": 1, "D": 0},
}
M3: Job1: (s:0 d:10 e:10) > Job7: (s:10 d:10 e:20)
M1: Job5: (s:0 d:10 e:10) > Job4: (s:10 d:10 e:20) > Job8: (s:20 d:10 e:30)
M2: Job2: (s:0 d:10 e:10)
M4: Job3: (s:0 d:10 e:10) > Job6: (s:10 d:10 e:20) > Job9: (s:20 d:10 e:30)
您知道任何示例代码,还是可以向我推动正确的方向?我已经看到了电路限制link
,但是实现对我来说太难了。 thanks已经提前了。
circiele是要走的方式:
请参阅此DOC部分.
和这个带有Transitions的JOBSHOP示例。