21from감스
가져오기GamsWorkspace, SolveLink
23if__name__ ==
"__main__":
24sys_dir = sys.argv[1]
iflen(sys.argv) > 1
그밖에 없음
25work_dir = sys.argv[2]
iflen(sys.argv) > 2
그밖에 없음
26ws = GamsWorkspace(system_directory=sys_dir,working_directory=work_dir)
30작업 = ws.add_job_from_file(
"입은")
33 와오픈(os.path.join(ws.working_directory,
"cplex.opt"),
"w")
asf:
36f.write(
"iafile cplex.op2\n")
41opt.solvelink = SolveLink.LoadLibrary
46thread = Thread(target=job.run, args=(opt,), kwargs=
"출력": sw)
50단계 = [(5.0,
"epgap 0.1"), (10.0,
"epgap 0.2"), (20.0,
"epagap 1e9")]
55thread.join(s[0] - total_time)
56 if 아님thread.is_alive():
60 함께오픈(os.path.join(ws.working_directory,
"cplex.op2"),
"w")
asf:
64인쇄(
"새 옵션을 계속하기 위해 Cplex가 중단되었습니다: "+ s[1])
71 if 아님 "중단되었습니다..." in로그:
72 올림예외(
"솔버가 적어도 한 번은 중단될 것으로 예상됩니다.")