[其他] 整數規劃問題
index A B C
1 9.6 0.2 7.7
2 7.4 0.3 5.0
3 7.8 0.25 8.5
4 6.1 0.11 8.2
資料如上,依照有4組樣本,分別有A、B、C三種數值
若依照index 1 2 3 4的順序可以分別畫出A、B、C三種數值各自的折線圖
現在希望任意排序index順序,找出一個最佳組合
可以讓A、B、C三條折線圖的線趨於水平線
目前我的想法是用整數規劃的方式求解
先整理出A、B、C中每兩點的斜率
A、
終點
1 2 3 4
1 X -2.2 -1.8 -3.5
始 2 2.2 X 0.4 -1.3
點 3 1.8 -0.4 X -1.7
4 3.5 1.3 1.7 X
B、
終點
1 2 3 4
1 X 0.1 0.05 -0.09
始 2 -0.1 X -0.05 -0.19
點 3 -0.05 0.05 X -0.14
4 0.09 1.9 0.14 X
C、
終點
1 2 3 4
1 X -2.7 0.8 0.5
始 2 2.7 X 3.5 3.2
點 3 -0.8 -3.5 X -0.3
4 -0.5 -3.2 0.3 X
X表示無斜率(自己跟自己的情況)
可以整理為整數規劃的形式
(將斜率平方,避免正負相加影響結果)
minimize:
A_21 * XA_21 + A_31 * XA_31 + A_41 * XA_41 +
A_12 * XA_12 + A_32 * XA_32 + A_42 * XA_42 +
A_13 * XA_13 + A_23 * XA_23 + A_43 * XA_43 +
A_14 * XA_14 + A_24 * XA_24 + A_34 * XA_34 +
B_21 * XB_21 + B_31 * XB_31 + B_41 * XB_41 +
B_12 * XB_12 + B_32 * XB_32 + B_42 * XB_42 +
B_13 * XB_13 + B_23 * XB_23 + B_43 * XB_43 +
B_14 * XB_14 + B_24 * XB_24 + B_34 * XB_34 +
C_21 * XC_21 + C_31 * XC_31 + C_41 * XC_41 +
C_12 * XC_12 + C_32 * XC_32 + C_42 * XC_42 +
C_13 * XC_13 + C_23 * XC_23 + C_43 * XC_43 +
C_14 * XC_14 + C_24 * XC_24 + C_34 * XC_34
A_21表示上表A始點為2終點為1的斜率,B_13、C_23...等等同樣表示斜率
XA_21為1或0,表示有無選取此項
然後再寫限制式的時候就卡住了...
請問這種有排序關係的限制是該如何表達呢?
還是這種問題其實不該用整數規劃去處理...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.214.67 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Math/M.1601458145.A.36E.html
→
09/30 23:29,
5年前
, 1F
09/30 23:29, 1F
→
09/30 23:29,
5年前
, 2F
09/30 23:29, 2F
→
09/30 23:29,
5年前
, 3F
09/30 23:29, 3F
→
09/30 23:29,
5年前
, 4F
09/30 23:29, 4F
→
09/30 23:29,
5年前
, 5F
09/30 23:29, 5F
→
09/30 23:29,
5年前
, 6F
09/30 23:29, 6F
→
09/30 23:38,
5年前
, 7F
09/30 23:38, 7F
→
09/30 23:38,
5年前
, 8F
09/30 23:38, 8F
→
09/30 23:38,
5年前
, 9F
09/30 23:38, 9F
→
09/30 23:38,
5年前
, 10F
09/30 23:38, 10F
→
10/01 14:43,
5年前
, 11F
10/01 14:43, 11F
→
10/01 14:46,
5年前
, 12F
10/01 14:46, 12F
→
10/01 14:47,
5年前
, 13F
10/01 14:47, 13F
→
10/01 14:49,
5年前
, 14F
10/01 14:49, 14F
→
10/01 14:51,
5年前
, 15F
10/01 14:51, 15F
→
10/01 14:52,
5年前
, 16F
10/01 14:52, 16F
→
10/01 14:55,
5年前
, 17F
10/01 14:55, 17F
→
10/01 14:55,
5年前
, 18F
10/01 14:55, 18F
→
10/01 14:58,
5年前
, 19F
10/01 14:58, 19F
→
10/02 21:27,
5年前
, 20F
10/02 21:27, 20F
→
10/02 21:28,
5年前
, 21F
10/02 21:28, 21F