目前,我正试图用最好的方法来完成我正在做的事情。我有以下熊猫df。在Player Pos Salary My Proj
0 James Harden PG/SG 10600 51.94472302
1 Jose Juan Barea PG/SG 4200 22.20823452
2 Stephen Curry PG/SG 8700 42.95809374
3 Eric Gordon SG 5400 27.45218158
4 Nikola Vucevic C 7400 37.00103015
5 Wilson Chandler SF/PF 4900 24.83866589
每天大约有200名玩家参加。我需要运行一个优化来填充多达20个符合以下约束的草稿列表:
50000美元以下
使用1pg、1sg、1sf、1pf、1c、1g、1f和1util
正如你所看到的,大多数球员可以在一个阵容中填补多个位置,在位置栏中用“/”字符表示。G位置可以用PG或SG填充,F位置可以用SF或PF填充,UTIL位置接受所有位置。在
起初,我考虑使用背包暴力的方法,这似乎是最简单的方法,但实际上有数万亿的组合,所以这将花费大量的时间,而没有真正做到我真正想要的。在
相反,我决定尝试使用遗传学的方法,因为我已经看过很多关于这个问题的演讲视频,认为这是解决这个问题的好主意。但是,我不知道如何在一般的1/0背包方法中设置这个问题,因为我需要包括很多东西。在典型的背包方法中,你只需要一个重量和一个值。我的体重和价值观是球员的薪水和他们的预期得分。但是我必须包括球员的位置在这里,这可以是1个或有时2个不同的可能性,一个球员。在
希望这是有意义的,我基本上是想了解如何在python3中开始处理这个任务。提前感谢您所能提供的一切!在