Research Article

Novel Degree Constrained Minimum Spanning Tree Algorithm Based on an Improved Multicolony Ant Algorithm

Algorithm 1

Input:
: a complete graph with weight;
: function to calculate weight;
: degree constraint of vertex, ;
MA: the amount of ant colonies
Output:
 A degree constrained minimum spanning tree
Begin
 //Initialization
 Create the Multiple set of ants of size with the number of colonies
InitAntsEdges(, , )
  ConstructSpanningTree()
while   and   do
  for     to   MA   do
   AntsMove //Exploration
    Calculation Entropy
      ConstructSpanningTree()
   If     then
    
    
   //local optimization
      2-EdgeReplacement()
      1-EdgeReplacement()
  If     then
   
   
  foreach     do //enhance
   ephm
  if   () >   then
   
   Restart(
  if   mod gap(s) = 0  then
   ExchangePheromone()
  
  ResetAnts()
  Update parameters and
return