给定一个具有N个节点(数千个)的图,我需要找到K个节点,使得每对K之间的平均路径长度(K1,K2)最大化。因此,基本上,我希望尽可能将它们彼此分开。
我应该使用哪种算法来解决这个问题/如何编程而不必尝试几个单独的K组合?
另外作为扩展:如果现在我有N个节点,并且我需要在图中放置两组节点K和L,使得每对(L,K)之间的平均路径长度最大化,我该怎么做?
我的当前尝试只是进行一些随机放置,然后计算K和L的每对之间的平均路径长度,但是这个计算正在开始花费很多时间,因此我宁愿不要花费太多时间仅评估随机选择的组合。我宁愿花时间一次获得真正最广泛的组合。
是否有任何算法可以解决这个问题?