COIN-OR::LEMON - Graph Library

Ticket #436: 436-6422da4647f2.patch

File 436-6422da4647f2.patch, 1.4 KB (added by Peter Kovacs, 9 years ago)
  • lemon/cycle_canceling.h

    # HG changeset patch
    # User Peter Kovacs <kpeter@inf.elte.hu>
    # Date 1327956534 -3600
    # Node ID 6422da4647f2e4c74358640093c6e28183936aac
    # Parent  d3ea191c341258fddc1366953daefc8b1903073c
    Use HartmannOrlinMmc instead of HowardMmc in CycleCanceling (#436)
    to ensure strongly polynomial running time
    
    diff --git a/lemon/cycle_canceling.h b/lemon/cycle_canceling.h
    a b  
    3434#include <lemon/adaptors.h>
    3535#include <lemon/circulation.h>
    3636#include <lemon/bellman_ford.h>
    37 #include <lemon/howard_mmc.h>
     37#include <lemon/hartmann_orlin_mmc.h>
    3838
    3939namespace lemon {
    4040
     
    922922
    923923    // Execute the "Minimum Mean Cycle Canceling" method
    924924    void startMinMeanCycleCanceling() {
    925       typedef SimplePath<StaticDigraph> SPath;
     925      typedef Path<StaticDigraph> SPath;
    926926      typedef typename SPath::ArcIt SPathArcIt;
    927       typedef typename HowardMmc<StaticDigraph, CostArcMap>
     927      typedef typename HartmannOrlinMmc<StaticDigraph, CostArcMap>
    928928        ::template SetPath<SPath>::Create MMC;
    929929     
    930930      SPath cycle;
     
    11321132            }
    11331133          }
    11341134        } else {
    1135           typedef HowardMmc<StaticDigraph, CostArcMap> MMC;
     1135          typedef HartmannOrlinMmc<StaticDigraph, CostArcMap> MMC;
    11361136          typedef typename BellmanFord<StaticDigraph, CostArcMap>
    11371137            ::template SetDistMap<CostNodeMap>::Create BF;
    11381138