Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 优化事件到日期的分布_Algorithm_Optimization - Fatal编程技术网

Algorithm 优化事件到日期的分布

Algorithm 优化事件到日期的分布,algorithm,optimization,Algorithm,Optimization,我的问题是找到3个晚上k个事件的最佳分布。例如,k=8个活动应在这3个晚上平均分配: 第1晚:活动A、B、C 第二晚:活动D、E、F 晚上3:活动G、H 另一方面,我有一群人必须参加不同的活动,比如: 第1人:事件A、E、F 第2人:事件B、E、H 第三人:事件A 问题是:我如何才能找到晚上活动的最佳分布,从而使人们的乘车次数最小化 就上面的例子而言,我知道有560种不同的可能性在3个晚上分发8项活动。 我可以强迫他们并比较所需的骑乘次数,但希望找到更好的选择。这相当于使用连通性目标(

我的问题是找到3个晚上k个事件的最佳分布。例如,k=8个活动应在这3个晚上平均分配:

  • 第1晚:活动A、B、C
  • 第二晚:活动D、E、F
  • 晚上3:活动G、H
另一方面,我有一群人必须参加不同的活动,比如:

  • 第1人:事件A、E、F
  • 第2人:事件B、E、H
  • 第三人:事件A
问题是:我如何才能找到晚上活动的最佳分布,从而使人们的乘车次数最小化

就上面的例子而言,我知道有560种不同的可能性在3个晚上分发8项活动。
我可以强迫他们并比较所需的骑乘次数,但希望找到更好的选择。

这相当于使用连通性目标(λ-1)进行超图分区。hypergraph的节点是事件。hyperedge对应于人员,每个hyperedge连接相应人员必须参加的活动


有大量关于超图分区的文献和大量的实现。我先说。

什么是“搭便车”?一次活动之旅?如果你在一个晚上有两个活动,那是指2次、3次还是4次?有些事件是同时发生的吗?你想如何减少乘坐次数?一个人玩三次游戏比两个人玩两次游戏好还是坏?约束条件如何?从你的例子来看,似乎你不必分发所有事件,也可以使用事件两次。啊,现在我明白了(我想)。每个人的活动都是给定的,您可以搜索晚上活动的最佳分布,这样人们就可以共享活动的车程。嗨,tobias_k,感谢您的评论,并对误解表示抱歉。骑行是指往返于活动现场的旅程。没有计划人们可以共享乘车。这只是一个晚上有多少人开车去的地方。就像第1个人的例子一样,如果所有事件A、E和F都在同一个晚上(1次旅行),那就太好了。最糟糕的情况是,如果他们都在不同的晚上(3次旅行)。