针对给定输入优化多个输出参数

计算科学 优化 算法
2021-12-01 18:47:17

问题陈述:

我正在尝试使用 C# 作为编程语言来解决问题陈述。在输入(双精度/十进制)的问题系统中,例如,生成的输出是一种包含多个参数()的数据集形式。我必须以某种方式仅过滤掉数据集中满足以下条件的条目:HiFiPiTi

  • Fi>Fmin,其中Fmin是某个常数;
  • Pi>Pmin,其中Pmin是某个常数;
  • Ti<Tmax,其中Tmax是某个常数。

是否有一种有效的算法可以在这种情况下使用,在这种情况下,我可以将Hi的一组最佳值归零,其输出参数值完全在约束范围内。我也认为在这种情况下使用遗传算法是有道理的,但不知何故我无法根据我的要求制定和推导出适应度函数

任何关于如何解决此类问题的建议都非常感谢。

请不要因为含糊不清而否决这个问题。

1个回答

实际上,您要做的是解决非线性优化问题。据我了解,您有一个数据集并根据应用的特定输入,然后您会得到答案。

解决此问题的一种方法是考虑Hi的点网格, 以评估来自数据集的参数。

然后你可以制定你的适应度函数,这样如果结果参数不遵守约束,那么你的目标成本将达到 10^53。

评估完所有网格点后,您可以选择最佳解决方案并细化网格以获得更好的结果。

考虑到在这种情况下,您无法保证所获得解决方案的最优性。

或者,您可以研究使用模拟退火方法来解决您的问题 ( https://en.wikipedia.org/wiki/Simulated_annealing )