我们使用Chu-Liu/Edmonds算法的思想,见论文[1,2],在这里实现了四个功能。
1.最大有向最大生成树
由DirectedMaximumSpanningTree.m
2.最小有向最大生成树
由DirectedMinimalSpanningTree.m
3.最大有向最大生成林
由MaximalDirectedMSF.m
4.最小有向最大生成林
由MinimalDirectedMSF.m
你可以从“控制中心”开始。M”,这里有一个简单的例子和解释如何使用的代码。
对于高级用户,我也通过mex编程改进了代码,它能够处理数据集中超过1000个变量,检查命名为:AdvanceUser的折叠
如果有任何问题,请让我知道,我会尽快帮助你。
注意:mex编译器应准备在您的matlab。
[1]朱永杰、刘铁华,“有向图的最短树形”,中国科学,第14期,1965,第1396-1400页。
[2] J. Edmonds,“最优分支”,J.国家标准局研究,71B, 1967,第233-240页。
如果您使用此代码,请引用我们的论文:
贝尔扎,C.,李,G. & Larrañaga, P.(2011)。基于贝叶斯网络的多维分类。国际近似推理杂志,52,705-727
引用作为
李光地(2023)。最大(最小)权生成树(有向)(//www.tianjin-qmedu.com/matlabcentral/fileexchange/24327-maximum-minimum-weight-spanning-tree-directed), MATLAB中央文件交换。检索.