如何使用Excel Solver优化幻想运动阵容

如何使用Excel Solver优化幻想运动阵容,excel,mathematical-optimization,solver,Excel,Mathematical Optimization,Solver,我已经建立了一个包含球员姓名、位置、统计数据、排名和薪水的文件。我正在尝试使用Excel Solver(正如@Ioannis在2013年10月的一篇关于足球的帖子中所描述的那样)优化一个梦幻棒球阵容。问题是,Excel正在为他们不打的位置挑选球员。例如,在我的“答案”阵容中,一名投手被选为最佳外野手。如何让Excel识别我在数据表中每个球员姓名上方张贴的职位,以便“答案”与每个球员的实际职位资格相匹配 非常感谢你!我对Solver插件非常陌生,但我对它非常着迷 Drew您描述的是一组附加约束。合

我已经建立了一个包含球员姓名、位置、统计数据、排名和薪水的文件。我正在尝试使用Excel Solver(正如@Ioannis在2013年10月的一篇关于足球的帖子中所描述的那样)优化一个梦幻棒球阵容。问题是,Excel正在为他们不打的位置挑选球员。例如,在我的“答案”阵容中,一名投手被选为最佳外野手。如何让Excel识别我在数据表中每个球员姓名上方张贴的职位,以便“答案”与每个球员的实际职位资格相匹配

非常感谢你!我对Solver插件非常陌生,但我对它非常着迷


Drew

您描述的是一组附加约束。合并此类约束的典型方法是将玩家姓名作为行,位置作为列,形成一个二进制矩阵。任何(玩家、位置)对中的1应表示该特定玩家的位置。然后你应该有一些公式,将二进制玩家变量与每个位置使用的玩家数量联系起来。仔细考虑电子表格的设计,因为它可能会变得凌乱。对于200多个变量,您可能需要检查SolverStudio或OpenSolverIoannis

到目前为止您尝试过什么吗?Solver目前在每个位置(7个位置)运行列表中的每个玩家(28名玩家),总共运行196个可变单元格(最大为200个)。我更希望它能运行200个玩家(每个位置1个),总共有200个可变单元格(也就是最大值)。我的表格是从C4:AD10开始的,玩家的名字在第3行,他们的位置在第2行(数据表格的正上方)。B4:B10还列出了队列中需要的位置(每行一个位置)。对于总共9名玩家,要求为1个SP、1个C、1个1B、1个2B、1个3B、1个SS和3个。玩家只能使用一次。您描述的是一组额外的约束。合并此类约束的典型方法是将玩家姓名作为行,位置作为列,形成一个二进制矩阵。任何
(玩家,位置)
对中的1应表示该特定玩家的位置。然后你应该有一些公式,将二进制玩家变量与每个位置使用的玩家数量联系起来。仔细考虑电子表格的设计,因为它可能会变得凌乱。对于200多个变量,您可能需要检查或。我想您可以从那里获取它?如果你给我们更多的细节,(你的电子表格是如何设计的,你的努力等等),我将在这方面的工作发布一个完整的回应。祝你好运伊奥尼斯,我希望你能看到这个:)谢谢。我还没有增加变量的数量,但也许我会尝试下载OpenSolver。如果你推荐的话,我相信它是安全的。至于位置问题,我的解决方案(目前)是按位置(SP、SP、SP、SP、OF、OF、OF、OF等)列出玩家,然后我只选择他们有资格玩的单元格(您提到的(玩家、位置)1),作为解算器可以操纵的单元格引用,以达到我的目标。目前,它对少量玩家有效。