我在 MathProg 中有一个域问题公式,其中成本函数使用几何距离。数据集仅包含 X、Y 坐标,而不包含实际距离。现在,我的公式直接计算距离:
minimize total: sum{(f, c) in S} x[f, c] * sqrt(((facilityXs[f] - customerXs[c])**2) + ((facilityYs[f] - customerYs[c])**2));
而且我想知道,MathProg 编译器是否足够聪明,可以看到 sqrt 内部的表达式是常量,因此可以预先计算整个事情,或者它是否每次都重新计算表达式,我怎样才能把它写得更优雅方式。