Re: [蔚藍] 線性規劃找活動最佳解
※ 引述《nahsnib (悟)》之銘言:
: 前言:如果您有數學過敏症,看到推論、計算等相關文字會反胃、血壓升高/降低、
: 譫妄、心悸、暴怒、憂鬱、嗜睡、等任何不是症狀,請立即左轉並且找高中數學老師抗議
: 另外早就有人設計過懶人包以及計算機,這邊只是探討過程與理論。
: 研究動機:蔚藍檔案的活動關卡,大多有個固定的形式,在此將其簡化為:
: a貨幣、b貨幣、c貨幣,a貨幣與b貨幣大致相等,可以在對應的商店購買物資;
: c貨幣有其他消耗方式,有時會伴隨小遊戲;
: 通常機制內abc三種貨幣都有一個應該刷取的數量,就能夠圓滿達成最大效益。
: 刷取貨幣的方式當然是從關卡中取得,但是每個關卡取得的資源不同,
: 那麼,要怎麼樣才能夠在最節省的狀況下完成任務呢?
: 計算:
: 以我為例子,本次活動刷取的量分別為
: 九 : 8a 8b 52c
: 十 :61a 8c
: 十一: 61b 8c
: 十二: 67c
: 需求量則是12945、15650、越多越好。
: 顯然我們不可能放棄刷取十、十一關,否則ab素材的量會完全不足,
: 但是,我們應該在第九關還是第十二關刷取素材c呢?
我感覺後面的"a,b,c全部限制 10000"的線性規劃好像變成不同問題了?
讓我們試著回到原本的問題
假設 x,y,z,v 分別代表的是 九, 十, 十一, 十二 要打幾次
原本的問題限制應該是
1. a 要有 12945 個
2. b 要有 15650 個
想要優化的對象是 c資源 (越多越好)
然後這邊我覺得還少了一個限制是:最多可以打幾場?
因為如果你能打的場次夠多的話,在a,b足夠的情況下,
九 跟 十二 會越打越多。
所以這邊引入一個變數 n 來代表 最多可以打幾場
線性規劃問題如下:
max 52x + 8y + 8z + 67v (c資源越多越好)
subject to 8x + 61y > 12945 (a資源限制)
8x + 61z > 15650 (b資源限制)
x + y + z + v < n (最多打幾場)
0 < x,y,z,v (場次不能是負的)
然後就也不用比較利益原理了,現在大家的電腦都夠強
寫出方程式之後,讓程式幫你算就好了
Python Code
from scipy.optimize import linprog
def func(n):
# n = 最多打幾場
Au = [[-8, -61, 0, 0],
[-8, 0, -61, 0],
[1, 1, 1 , 1]]
bu = [-12945, -15650, n]
bounds = [(0, None), (0, None), (0, None), (0, None)]
c = [-52,-8,-8,-67]
return linprog(c, A_ub=Au, b_ub=bu, bounds=bounds)
# 最多打500場的話,怎麼打比較好
print(func(500))
好像最少要能打 469 場才能滿足需求的樣子
我印象中,花凜對數學感到很苦手?
https://x.com/Arch_A4/status/1897929903690912069/photo/1
https://pbs.twimg.com/media/GlbNI5rbwAIIZh-.jpg


預購時間:至2025/07/07 18:00 (JST) 為止
官網連結:https://bit.ly/4kPdGLk
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 98.45.195.96 (美國)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1750756270.A.66C.html
推
06/24 17:12,
4小時前
, 1F
06/24 17:12, 1F
所以 c素材 也不全然是 越多越好?
→
06/24 17:12,
4小時前
, 2F
06/24 17:12, 2F
→
06/24 17:12,
4小時前
, 3F
06/24 17:12, 3F
→
06/24 17:12,
4小時前
, 4F
06/24 17:12, 4F
不過我很同意你前一篇的說法,其實會列式子才是重要的部分
→
06/24 17:13,
4小時前
, 5F
06/24 17:13, 5F
因為我既喜歡數學 也喜歡美少女 :D
推
06/24 17:15,
4小時前
, 6F
06/24 17:15, 6F
→
06/24 17:16,
4小時前
, 7F
06/24 17:16, 7F
※ 編輯: arrenwu (98.45.195.96 美國), 06/24/2025 17:20:55
推
06/24 17:23,
4小時前
, 8F
06/24 17:23, 8F
推
06/24 19:13,
2小時前
, 9F
06/24 19:13, 9F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
34
80
C_Chat 近期熱門文章
PTT動漫區 即時熱門文章
20
42
15
42