がよさそうなので、これを採用しようと思います。
2020年8月7日金曜日
2020年8月6日木曜日
Algorithm4のRefactoring
以前頓挫した、ペア制約のLP化を再考してみました。
A:f1(x0,x1,x2...)≤b1;
B:f2(x0,x1,x2...)≤b2;
Implication A→Bは、
!A+B
そのソフト化は、Binary Variable Cを追加して
!A+B+C >=1;-----(1)
Minimize: ...+C*Cweight;
とします。ここで、Cは、0になるように作用することに注意します。すると(1)式より
!Aもしくは、Bが1になるように作用することが分かります。なので、
!A: f1(x0,x1,x2...)+M(1-A) ≧b1+1;
B: f2(x0,x1,x2...) -M(1-B) ≤b2;
とすれば、A==1、B==1側に自然に作用します。(Mは、BigMです。)
上のように定式化すれば、ペア制約ImplicationもLP化(Linear Programming)出来そうです。
2020年8月4日火曜日
130Aをリリースしました
メジャーバージョンアップです。
今後(8月)の実装予定としては、
1)Algorithm4の一般化
2)祝日の国際化
3)マニュアル類の英語化
4)Dockerの構築
です。
今後(8月)の実装予定としては、
1)Algorithm4の一般化
2)祝日の国際化
3)マニュアル類の英語化
4)Dockerの構築
です。
2020年8月1日土曜日
python3_constraint_programming_manual
更新しました。
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/shift_tutorial/schedule_nurse3_shift_tutorial.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/task_tutorial/schedule_nurse3_task_tutorial.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/user_manual/schedule_nurse3_user_manual.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/advanced_manual/schedule_nurse3_advanced_user_manual.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/python_manual/python3_constraint_programming_manual.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/shift_tutorial/schedule_nurse3_shift_tutorial.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/task_tutorial/schedule_nurse3_task_tutorial.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/user_manual/schedule_nurse3_user_manual.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/advanced_manual/schedule_nurse3_advanced_user_manual.html
https://www.nurse-scheduling-software.com/tutorial/schedule_nurse3/python_manual/python3_constraint_programming_manual.html
登録:
投稿 (Atom)