メインコンテンツへスキップ

Cycles in solutions from Network Simplex

進行中

コメント

2件のコメント

  • Matthias Miltenberger
    • Gurobi Staff

    Hi Julian,

    Did you enable the Network Simplex explicitly when running your tests? You can do this by setting the parameter NetworkAlg to 1. Can you share more details about your test, please?

    Cheers,
    Matthias

    0
  • Julian Maus
    • First Comment
    • First Question

    Hello Matthias,

    As part of my bachelor thesis I compared different algorithms for computing maximum acyclic flows. I also considered algorithms that may produce cyclic maximum flows and in these cases applied a naive cycle elimination procedure.

    For testing, I used the instances published by Dr. Kovács (https://lemon.cs.elte.hu/trac/lemon/wiki/MinCostFlowData), which I adapted so that only maximum flows were computed. In this context I explicitly enabled the Network Simplex Algorithm in order to evaluate its performance.

    In the evaluation I observed that the Network Simplex Algorithm produced cycles very frequently and was therefore significantly slower than the other approaches, which was quite surprising to me. Further experiments suggested that this behavior is related to presolving. With presolving disabled, cycles still occurred but in much smaller numbers. Under these conditions, the Network Simplex Algorithm turned out to be among the most efficient algorithms, comparable to the Link Cut Trees.

    If of interest, I would be happy to share my code and the CSV outputs of my experiments.

    Best regards,
    Julian

    0

サインインしてコメントを残してください。