Graph 高密度大图中的最大加权团

Graph 高密度大图中的最大加权团,graph,clique,clique-problem,Graph,Clique,Clique Problem,是否有任何软件或算法描述可以在一个具有约17000个加权顶点和约75%密度的图中找到顶点数已知的最大团(近似)?我尝试使用Cliquer,但速度太慢(我用了几天时间才得到结果) 关于我的问题,以防万一——这是一个权杖问题,我有18个时间段,每个时间段可以有不同数量的替代品。每个变量代表一个插槽的一个备选方案。因此,一个插槽的所有备选方案都是互斥的,而不同插槽的某些备选方案是不兼容的。如果两个备选方案兼容,则它们之间存在优势。权重表示备选方案的价值。实际上似乎有一个集团搜索算法的实现,尽管我还没有

是否有任何软件或算法描述可以在一个具有约17000个加权顶点和约75%密度的图中找到顶点数已知的最大团(近似)?我尝试使用Cliquer,但速度太慢(我用了几天时间才得到结果)

关于我的问题,以防万一——这是一个权杖问题,我有18个时间段,每个时间段可以有不同数量的替代品。每个变量代表一个插槽的一个备选方案。因此,一个插槽的所有备选方案都是互斥的,而不同插槽的某些备选方案是不兼容的。如果两个备选方案兼容,则它们之间存在优势。权重表示备选方案的价值。

实际上似乎有一个集团搜索算法的实现,尽管我还没有找到它的文档。但是,您可以查看和查看以了解如何使用它。出于您的目的,您可以这样做(此代码使用flag
-std=c++11编译Boost 1.55.0和g++4.8.2并与之配合使用):

#包括
#包括
#包括
#包括
//这是将处理算法找到的每个团体的访问者
模板
结构最大加权集团{
typedef typename boost::property_traits::key_type顶点;
typedef typename boost::property_traits::value_type Weight;
最大权重团(常量顶点权重和权重图,标准::集合和最大权重团,权重和最大权重)
:重量地图(重量地图)、最大重量(最大重量)、最大集团(最大集团){
//最大重量=-inf
最大重量=标准::数值限制::最低();
}
//每次发现一个集团时,都会调用此函数
模板
无效集团(常数集团和c、常数图和g){
//检查当前集团值
std::设置当前集团;
重量当前重量=重量(0);
对于(自动it=c.begin();it!=c.end();+it){
当前集团。插入(*it);
当前权重+=权重映射[*it];
}
//如果是更大的集团,更换
如果(当前重量>最大重量){
最大重量=当前重量;
马克斯集团=当前集团;
}
}
常量顶点权重和权重图;
std::set&max_集团;
重量&最大重量;
};
//可替换为长、双。。。
输入重量;
//此结构定义每个顶点的属性
结构顶点属性{
重量;
std::字符串名;
};
int main(int argc,char*argv[]){
//图形类型
typedef boost::无向图;
//顶点描述符类型
typedef boost::graph_traits::vertex_描述符顶点;
//创建图形
图g;
//添加顶点
顶点v1=boost::添加顶点(g);
g[v1]。重量=5;g[v1]。名称=“v1”;
顶点v2=boost::添加顶点(g);
g[v2]。重量=2;g[v2]。名称=“v2”;
顶点v3=boost::添加_顶点(g);
g[v3]。重量=6;g[v3]。名称=“v3”;
//添加边
boost::添加_边(v1、v2、g);
boost::添加_边(v1、v3、g);
boost::添加_边(v2、v3、g);
//实例化访问者
自动顶点权重=boost::get(&VertexProperty::权重,g);
std::set max_集团;
最大重量;
最大权重群组访客(顶点权重、最大群组、最大权重);
//使用Bron-Kerbosch算法查找所有派系
boost::布隆·科博什·阿勒集团(g,访客);
//现在max_团拥有一个带有max团顶点的集合,max_权重拥有它的权重
自动顶点_name=boost::get(&VertexProperty::name,g);

std::我知道这很古老,但我也一直在寻找一种有效的最大加权派系算法。我尝试了cliquer、QUALEX-MS和open pls。值得注意的是,QUALEX-MS和open pls实际上并没有给你最大加权派系,他们试图接近它,并会给你一个权重最高的派系他们可以找到。在我的应用程序中,这些算法远远达不到我需要的精度。事实上,我发现从图中删除数百个低权重节点并使用cliquer@MatthewLueder哇,是的,这确实很古老。我不确定你的问题是什么,似乎你比我更了解最大集团搜索。@jdeh毫无疑问,我只是回应了叶甫盖尼·尼基廷的评论