首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于用户约束的锦标赛时刻表生成算法

基于用户约束的锦标赛时刻表生成算法
EN

Stack Overflow用户
提问于 2020-06-26 13:17:19
回答 1查看 62关注 0票数 1

我代表我的一位朋友经营网球网站,因为她对技术和电脑没有那么热情。

当我们创建一个锦标赛订阅页面时,用户和业余网球选手填写一个表单来订阅该锦标赛。

在表单中有一个字段,用户可以根据他们的需要描述他们的可用性。

基本上,当用户可以玩比赛时,他们会写东西,而且大多数情况下,他们都是时间限制,例如:

“晚上9点以后我可以玩所有的晚上”,“只有在平日”,“因为工作,我只能在周末玩”,“总是,除了晚上10点以后,因为我得早起”。

我称他们为时间限制。

昨天我发现了一个新的紧身符,它是这样的:

“我(UserA)和我的朋友(userB)将共用这辆车,以便在比赛中分到一半,因为我们住在离你们很远的地方,我们必须走很远的路,为了节省燃料,我们想走到一起。只要我的朋友在锦标赛中没有被淘汰,我宁愿和我的朋友(userB)玩类似的时间。如果我的朋友被淘汰,我每次都可以玩。”

我现在的问题是,是否有一个算法来满足所有这些约束,或一个预先煮好的解决方案,我的朋友可以使用,即使她不是一个技术人员或极客。

我明白这个算法应该在每天之后运行,因为当然比赛的胜利者是事先不知道的,因此用户的时间限制是不同的。我也知道这是一个运筹学的问题,但我没有经验,我不是一个专业的程序员。

请留下任何关于特定文献或软件的指针。谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-07-30 10:04:24

这类问题没有预先解决的办法。必须有人为此建立一个模型和一个应用程序。

正如所建议的那样,约束编程是解决这类问题并提出满足所有给定约束的解决方案的一种技术。乔科是一个非常方便的开源工具。

但是,您可能希望将其表述为一个优化问题。您希望算法在调度下一轮时,将每对UserA/UserB放置在同一天/时间段。这样的一对有多少对?如果不可能把所有这样的对放在一起呢?选择最大数量的配对将可以使用MILP。也许把历史考虑在内,平均出每对配对的次数?这样的模型肯定更复杂..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62595587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档