是否有任何简化计算方程的库或技术?
举以下两个例子:
F = B * { [ a * b * sumOf (A / B ''' for all i ''' ) ] / [ sumOf(c * d * j) ] }
在哪里:
F = 从 i 到 j 的成本
B, a, b, c, d, j 都是格式为 [ [zone_i, zone_j, cost_of_i_to_j], [..]] 的向量
这应该产生一个向量 F [ [1,2, F_1_2], ..., [i,j, F_i_j] ]
T_ij = [ P_i * A_i * F_i_j] / [ SumOf [ Aj * F_i_j ] // j = 1 到 j = n ]
在哪里:
n 是区域的数量
T = 向量 [ [1, 2, A_1_2, P_1_2], ..., [i, j, A_i_j, P_i_j] ]
F = 向量 [1, 2, F_1_2], ..., [i, j, F_i_j]
所以 P_i 将是所有 P_i_j 对于所有 j 的总和,Aj 将是所有 P_j 对于所有 i 的总和
我不确定我在寻找什么,但也许是这些方程或方法的解析器来处理向量之间的多重乘法和乘积?
要计算一些因素,例如 A_j,这就是我使用的
from collections import defaultdict
A_j_dict = defaultdict(float)
for A_item in TG: A_j_dict[A_item[1]] += A_item[3]
虽然这很好用,但我真的觉得这是一种蛮力/黑客方法,在我们想要添加更多变量或参数的情况下无法维护。你有什么推荐的数学方程解析器吗?
旁注:这些方程用于模拟旅行。目前我用excel解决了很多这样的方程;我发现这个过程令人生畏。我宁愿转向python,它直接从我们的数据库(postgres)中提取数据并将结果输出到数据库中。这一切都想通了。我只是在努力评估方程本身。
谢谢 :)