《戴森球计划》中增产剂能够提高产线的产能,但是在不同的产线中提升效率不一样,想要深入了解各个产线中增产剂该如何使用的玩家请看下面一起游戏带来的《戴森球计划》增产剂各产线用法推荐。希望能够帮助大家。
简化计算
工作台或炉子效率为1(晚点将工作台和炉子效率加入计算)
不考虑传送带效率和堆叠
只考虑单一产物的情况
不考虑喷涂材料的消耗
M为某产物,Mn为原料
上游:原料的生产线
中游:当前配方的生产线
下游:需要当前产物作为原料的生产线
基本思路
一个产物的最优方案是固定的,而且只跟上游原料有关
增加产物可以整体缩减上游和中游制造台数量
增加速度可以缩减中游制造台数量
分析配方
x1*M1 + x2*M2 + x3*M3 + ... + xn*Mn → (经过t秒)→ yM
将这个过程变为1/y,则有
(x1/y)*M1 + (x2/y)*M2 + ... + (xn/y)*Mn →(经过t/y)秒→1M
总共使用t/y台制造台,缩短时间使得1秒完成
1台:(x1/y)*M1 + (x2/y)*M2 + ... + (xn/y)*Mn →(经过t/y)秒→1M
t/y台:(x1/y)*M1 + (x2/y)*M2 + ... + (xn/y)*Mn →1秒→1M
定义
α=提升产量的效率,这里取α=0.25
β=提升速度的效率,这里取β=1.00
定义f(M),为1秒1个产物M所需要的上游+中游的所有工作台数量
定义g(M),为1秒1个产物M所需要的上游工作台数量
定义h(M),为1秒1个产物M所需要的中游配方工作台数量
推导
对于当前配方
假如选择提升产量,则产物会从1变为1+α,换个角度思考,只需要1/(1+α)个制造台即可实现1个制造台的效果,即节省α/(1+α)的数量,定义A=α/(1+α)
加入选择提升速度,则产物会从1变为1+β,换个角度思考,只需要1/(1+β)个制造台即可实现1个制造台的效果,即节省β/(1+β)的数量,定义B=β/(1+β)
方程
f(M) = g(M) + h(M) //1秒1个产物M所需要的所有制造台数量=原材料所有制造台数量+自身配方中游所用的制造台数量
g(M) = (x1/y)*f(M1) + (x2/y)*f(M2) + ... + (xn/y)*f(Mn) = SUM{ (xi/y)*f(Mi) }
h(M) = t/y
假设选择提升产量,节省的数量为A*(g(M) + h(M))
假设选择提升速度,节省的数量为B*(h(M))
即比较A*(g(M) + h(M))和B*(h(M))确定方案
两边消除
比较A*g(M)和(B-A)*h(M)
除
比较choice=g(M)-(B/A-1)*h(M)
设u=(B/A-1),代入A=α/(1+α)和B=β/(1+β),得到u=(β-α)/(α+αβ)=1.5
即比较choice=g(M)-u*h(M)是否>0,如果>0则增加产量划算,如果<0则增加速度划算
将choice展开,
choice=SUM{ (xi/y)*f(Mi) } - u*(t/y)=f(M)-(u+1)*(t/y)
choice=f(M)-(u+1)*(t/y)
那么我们只需要原材料的f函数就能知道当前配方用哪个划算了,这里给出初始值
f(所有矿物)=0,假设我们已经知道了所有原材料的f(Mi),我们需要更新我们的f(M)以供下游参考
假如choice>=0,即选择增加产物,则
f‘(M) = f(M) / (1+α)
假如choice<0,即可选择增加速度,则
f‘(M) = f(M)- B*h(M) = f(M) - β/(1+β) * (t/y)
此时我们已经更新得到了优化后的f(M)=f'(M)
结论
1.[几何倍率] 工序越靠中下游,配方原料数量越多,增产越强(和原料的xi和f(Mi)有关)
2.[线性倍率] 配方时间越长,增速越强(和t相关)
增产强无敌
随着f函数的不断变大,choice>=0的可能性大大增加,
如果使用最高级的工厂和增产剂
建议处理工序3步内使用增速
建议处理工序第3步以上的使用增产
实际上要硬扣的话,就按照我上面的计算方式,计算哪种方案更好,后续会发一个excel出来统计所有材料的最佳方案
目前还没时间计算完,简单列了个处理器的方案
可以基本认为,前期处理工序大多增加速度,后期处理工序大多增加产物,当然和配方也有关系,比如电路板的choice=0,也就是两种方案的理论炉子+制造台数量是一样的,但是增加产物还可以额外节约原矿
例如:图中方案认为1秒产出1个处理器,至少需要炉子+制造台=9.6个
这里的磁铁配方写错了
计算顺序
1.定义边界值原矿f(原矿)=0
2.计算f(M)
2.1 如果原材料的f(Mi)还未知,则进行计算f’(Mi),即上游默认采用了最佳喷涂方案
2.2 如果原材料的f(Mi)已知,则f(M) = SUM{ (xi/y)*f(Mi) } + t/y
3.已知喷涂前的f(M) 计算choice=f(M)-(u+1)*(t/y),根据choise的大小决定建议增产(>0)or增速(<0)
4.更新f'(M)
4.1 如果choice>=0 是增产
f‘(M) = f(M) / (1+α)
4.2 如果choice<0 是增速
f‘(M) = f(M)- B*h(M) = f(M) - β/(1+β) * (t/y)
如果炉子和工作台的倍率不是1
那就缩短t即可,假设倍率为d
t'=t/d,使用t’进行计算,其他全部不变(也就是说增速的优势会进一步下降)
其他的增产剂对应的u值
1级 α=1/8;β=1/4;u=0.8
2级 α=1/5;β=1/2;u=1.0
3级 α=1/4;β=1/1;u=1.5
2级炉子3级制造台无珍奇忽略各种氢气等计算结果