PuLP优化中的突破

时间:2017-08-25 17:23:27

标签: python optimization pulp

故事

我正在尝试使用PuLP(python)最小化来编写棒球消除问题。基本问题如下:

enter image description here

基本上x_ij是团队i未来胜过团队jg_ij是团队i和{{1}之间留下的整体游戏},j是我们感兴趣的团队,k是团队迄今为止所拥有的分数。变量p_j只是辅助,z_j当团队1领先于j(总胜场)而k领先。{/ p>

问题

根据PuLP和解决优化问题,我没有问题。但是,我想添加一些打破平局的规则,以调整约束,这样,如果,例如,0,它比较,让我们说,t_j == t_kx_jk来决定是否合作x_kj提前j

问题

所以基本上我需要一个只在特定情况下开始的条件。有没有办法在PuLP中轻松完成这项工作?也许通过引入一些其他变量?如果没有,你会建议用什么模块/方法来解决这种打破平局的事情?

1 个答案:

答案 0 :(得分:0)

由于你有许多相互竞争的打破平局规则,你可能需要一个更复杂的目标函数,根据抢七规则奖励或惩罚某些团队。您需要使用目标函数以某种方式“定价”条件。虚拟变量和Big M约束可能对“if / then”条件有用