我猜光碟版150台,數位板70台。
官方似乎沒有公布總共多少人抽幾台購買資格,
但因為有公布機率和張數,在有資料點的情況下,也許有機會推測出來才對。
官方沒有說公布的機率是怎麼算出來的,
但想了一下之後有兩種可能,其中一種是真實機率,
抽到A之後,把A的總抽數扣掉再抽下一位,
抽到B之後,把B的總抽數扣掉再抽下一位,以此類推,直到抽完為止。
但感覺式子有夠複雜,所以我猜大概不會是這種算法,
另一種算法就簡單多了,就是用假設每一抽都是獨立事件,有點像是轉蛋機率的算法。
假設池子裡總共有 X 張抽獎卷,而你手中擁有360張,總共抽 n 台PS5,
那用獨立事件的機率來算,你360張都抽不到的機率p為:
X - 360 n
p = (---------)
X
因此360張內有可能被抽到的機率就會是 1 - p = 0.1714(官方數據)。
另外附註說明一下,這邊只是在討論官方的「公布機率」算法,不是真正的抽法。
絕對不是實際的機率。
接下來代入網友分享的張數與機率後,
你可以得到N個式子:
X - 360 n
0.1714 = 1 - (----------)
X
X - 160 n
0.0801 = 1 - (----------)
X
以此類推,然後就可以開始解聯立,求出總抽獎卷張數 X 和 n 台PS5 。
不過我數學底子不夠,所以看到次方就掛了,式子移來移去就卡住。
但沒關係,我可以用窮舉法把X 和 n 找出來,而且至少我還會寫點程式,
用 python 2 隨意把想法寫下來讓它跑
------------------------------------------------
error = 100
segment = 10.0
is_disk = True
score = {}
for i in range(1, 30000):
for j in range(1, 100):
total = i * segment
if (is_disk):
a = abs(0.8286 - ((total- 360.0) / total) ** j)
b = abs(0.9199 - ((total - 160.0) / total) ** j)
c = abs(0.9541 - ((total - 90.0) / total) ** j)
d = abs(0.973 - ((total - 40.0) / total) ** j)
e = abs(0.9896 - ((total - 20.0) / total) ** j)
else:
a = abs(0.7442 - ((total- 360.0) / total) ** j)
b = abs(0.8771 - ((total - 160.0) / total) ** j)
c = abs(0.9289 - ((total - 90.0) / total) ** j)
d = abs(0.9678 - ((total - 40.0) / total) ** j)
e = abs(0.9837 - ((total - 20.0) / total) ** j)
avg = (a+b+c+d+e) / 5.0
score[avg] = [i,j,avg,a,b,c,d]
if (avg < error):
error = avg
print(i,j,avg,a,b,c,d)
all_score = score.keys()
all_score.sort()
print('\\\\\\\\\\\\\\\\\\\\\\\\')
for i in range(10):
X = score[all_score[i]][0] * segment
n = score[all_score[i]][1]
p1 = 1 - (((X - 360.0) / X) ** n)
p2 = 1 - (((X - 160.0) / X) ** n)
p3 = 1 - (((X - 90.0) / X) ** n)
p4 = 1 - (((X - 40.0) / X) ** n)
p5 = 1 - (((X - 20.0) / X) ** n)
print('X: %f, n %f, p1 = %.02f%%, p2 = %.02f%%, p3 = %.02f%%, p4 = %.02f%%,
p5 = %.02f%%' %(X, n, p1 * 100, p2* 100, p3* 100, p4* 100, p5* 100))
---------------------------------------------------
區間是假設總抽獎卷數是10張 ~ 300000張,每10張代入一次,
假設PS5有1 ~ 200台,每台代入一次。
總共代入 30000 * 200 = 600萬次。
每次用5種張數算出中獎機率(360張、160、90、40、20),
與公布機率相減取絕對值算平均得到平均誤差,
接著列出誤差前10低的資料點來分析。
-----------------------------------------------------------
光碟版結果:
(誤差由小到大前10名,機率p1 - p5 為360張, 160, 90, 40, 20的機率)
X: 296960.000000, n: 155.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 293130.000000, n: 153.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 289300.000000, n: 151.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 268240.000000, n: 140.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 272070.000000, n: 142.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 275900.000000, n: 144.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 264410.000000, n: 138.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 285470.000000, n: 149.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 279730.000000, n: 146.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 283560.000000, n: 148.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
----------------------------------------------------------------
數位版結果:
(誤差由小到大前10名,機率p1 - p5 為360張, 160, 90, 40, 20的機率)
X: 81820.000000, n: 67.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 73290.000000, n: 60.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 80600.000000, n: 66.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 83040.000000, n: 68.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 74510.000000, n: 61.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 89130.000000, n: 73.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 90350.000000, n: 74.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 72070.000000, n: 59.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 79380.000000, n: 65.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 84260.000000, n: 69.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
----------------------------------------------------
結論是光碟版150台,總抽獎劵數26萬-30萬張
數位板60-70台,總抽獎卷數8萬張。
實際操作完之後,本來想說應該很接近正確的數字,
但實際上計算精度其實存在一些問題,如果想要代入1000台ps5跑跑看有沒有更佳解,
程式會直接報錯,因為次方太高已經難以處理了。
想要真正算必須要想更精確的演算法......
而且網友提供的資料點只要有一點誤差,算出來的答案就會完全不一樣,
所以算出來的答案似乎正確性也存在著疑慮......
不過文章都寫到這裡了,現在才臉紅把文章自刪我可辦不到。
所以本人對於計算結果不負任何責任。
以上。
--
官方似乎沒有公布總共多少人抽幾台購買資格,
但因為有公布機率和張數,在有資料點的情況下,也許有機會推測出來才對。
官方沒有說公布的機率是怎麼算出來的,
但想了一下之後有兩種可能,其中一種是真實機率,
抽到A之後,把A的總抽數扣掉再抽下一位,
抽到B之後,把B的總抽數扣掉再抽下一位,以此類推,直到抽完為止。
但感覺式子有夠複雜,所以我猜大概不會是這種算法,
另一種算法就簡單多了,就是用假設每一抽都是獨立事件,有點像是轉蛋機率的算法。
假設池子裡總共有 X 張抽獎卷,而你手中擁有360張,總共抽 n 台PS5,
那用獨立事件的機率來算,你360張都抽不到的機率p為:
X - 360 n
p = (---------)
X
因此360張內有可能被抽到的機率就會是 1 - p = 0.1714(官方數據)。
另外附註說明一下,這邊只是在討論官方的「公布機率」算法,不是真正的抽法。
絕對不是實際的機率。
接下來代入網友分享的張數與機率後,
你可以得到N個式子:
X - 360 n
0.1714 = 1 - (----------)
X
X - 160 n
0.0801 = 1 - (----------)
X
以此類推,然後就可以開始解聯立,求出總抽獎卷張數 X 和 n 台PS5 。
不過我數學底子不夠,所以看到次方就掛了,式子移來移去就卡住。
但沒關係,我可以用窮舉法把X 和 n 找出來,而且至少我還會寫點程式,
用 python 2 隨意把想法寫下來讓它跑
------------------------------------------------
error = 100
segment = 10.0
is_disk = True
score = {}
for i in range(1, 30000):
for j in range(1, 100):
total = i * segment
if (is_disk):
a = abs(0.8286 - ((total- 360.0) / total) ** j)
b = abs(0.9199 - ((total - 160.0) / total) ** j)
c = abs(0.9541 - ((total - 90.0) / total) ** j)
d = abs(0.973 - ((total - 40.0) / total) ** j)
e = abs(0.9896 - ((total - 20.0) / total) ** j)
else:
a = abs(0.7442 - ((total- 360.0) / total) ** j)
b = abs(0.8771 - ((total - 160.0) / total) ** j)
c = abs(0.9289 - ((total - 90.0) / total) ** j)
d = abs(0.9678 - ((total - 40.0) / total) ** j)
e = abs(0.9837 - ((total - 20.0) / total) ** j)
avg = (a+b+c+d+e) / 5.0
score[avg] = [i,j,avg,a,b,c,d]
if (avg < error):
error = avg
print(i,j,avg,a,b,c,d)
all_score = score.keys()
all_score.sort()
print('\\\\\\\\\\\\\\\\\\\\\\\\')
for i in range(10):
X = score[all_score[i]][0] * segment
n = score[all_score[i]][1]
p1 = 1 - (((X - 360.0) / X) ** n)
p2 = 1 - (((X - 160.0) / X) ** n)
p3 = 1 - (((X - 90.0) / X) ** n)
p4 = 1 - (((X - 40.0) / X) ** n)
p5 = 1 - (((X - 20.0) / X) ** n)
print('X: %f, n %f, p1 = %.02f%%, p2 = %.02f%%, p3 = %.02f%%, p4 = %.02f%%,
p5 = %.02f%%' %(X, n, p1 * 100, p2* 100, p3* 100, p4* 100, p5* 100))
---------------------------------------------------
區間是假設總抽獎卷數是10張 ~ 300000張,每10張代入一次,
假設PS5有1 ~ 200台,每台代入一次。
總共代入 30000 * 200 = 600萬次。
每次用5種張數算出中獎機率(360張、160、90、40、20),
與公布機率相減取絕對值算平均得到平均誤差,
接著列出誤差前10低的資料點來分析。
-----------------------------------------------------------
光碟版結果:
(誤差由小到大前10名,機率p1 - p5 為360張, 160, 90, 40, 20的機率)
X: 296960.000000, n: 155.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 293130.000000, n: 153.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 289300.000000, n: 151.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 268240.000000, n: 140.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 272070.000000, n: 142.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 275900.000000, n: 144.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 264410.000000, n: 138.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 285470.000000, n: 149.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 279730.000000, n: 146.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
X: 283560.000000, n: 148.000000,
p1 = 17.14%, p2 = 8.01%, p3 = 4.59%, p4 = 2.07%, p5 = 1.04%
----------------------------------------------------------------
數位版結果:
(誤差由小到大前10名,機率p1 - p5 為360張, 160, 90, 40, 20的機率)
X: 81820.000000, n: 67.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 73290.000000, n: 60.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 80600.000000, n: 66.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 83040.000000, n: 68.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 74510.000000, n: 61.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 89130.000000, n: 73.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 90350.000000, n: 74.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 72070.000000, n: 59.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 79380.000000, n: 65.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
X: 84260.000000, n: 69.000000,
p1 = 25.58%, p2 = 12.29%, p3 = 7.11%, p4 = 3.22%, p5 = 1.62%
----------------------------------------------------
結論是光碟版150台,總抽獎劵數26萬-30萬張
數位板60-70台,總抽獎卷數8萬張。
實際操作完之後,本來想說應該很接近正確的數字,
但實際上計算精度其實存在一些問題,如果想要代入1000台ps5跑跑看有沒有更佳解,
程式會直接報錯,因為次方太高已經難以處理了。
想要真正算必須要想更精確的演算法......
而且網友提供的資料點只要有一點誤差,算出來的答案就會完全不一樣,
所以算出來的答案似乎正確性也存在著疑慮......
不過文章都寫到這裡了,現在才臉紅把文章自刪我可辦不到。
所以本人對於計算結果不負任何責任。
以上。
--
All Comments