基于两个变量优化选择

时间:2018-12-06 19:20:33

标签: python dataframe mathematical-optimization

我有一个由正整数组成的熊猫df,如下所示:

id    val1   val2
1     10     1
2     1      10
3     5      5

我试图找到最好的方法来选择使val1和val2中的值最大化的行。有人可以推荐一种特定的算法吗?我目前仅基于两个值的最大乘积进行选择。但是有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

因此,如果不能同时在两个条件下都将其改进,则该行是帕累托最优的。在您的示例中,所有三行都是帕累托最优的。以下行将占主导:

1  1 (by all of the above rows)
1  7 (by 1, 10)
7  1 (by 10, 1)
3  3 (by 5, 5)

过滤帕累托最优行的方式是:

  1. 创建空的pareto最佳行列表
  2. 将每一行与您当前的pareto最佳行列表进行比较。它主导的任何行都应删除。如果它不是当前列表中的任何行所占主导地位,请将其添加到pareto最佳行的列表中。