使用差异演化法解决预算问题,找到正确的适应度函数进行优化

时间:2018-12-06 08:09:57

标签: function optimization mathematical-optimization fitness differential-evolution

我正在建立一个使用差异进化的推荐系统网站。 该网站将询问用户的预算和一些标准,并将返回最佳套餐。 数据字段看起来像这样,我有8个维度(表格)。

Id | Name | Price
1  | A    | $100
2  | B    | $300

到目前为止,我已经提出了以下等式:

f = 1/abs(budget-x1-x2-x3-x4-x5-x6-x7-x8)+1
abs=(absolute)
x1 = 1st Dimension $ price
x2 = 2nd Dimension $ price
and so on

最后的+1不能被零除,因此f = 1是最佳的成本/得分。

我尝试过这个公式,如果找不到f = 1,那么成本会带来不好的结果。

有人有更好的解决方案,或者有其他文献可以解决这种问题吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

因此,DE是一种出色的进化算法。一方面,DE非常简单,但同时也相当强大。

但是,这个问题是经典的整数线性规划问题-目标在变量中是线性的,并且没有约束。整数线性规划的执行速度将比任何进化算法都快。我将使用pyomoglpk作为开放源代码ILP求解器。