title: Issue using cpp boost maximum_weighted_matching algorithm with floating point edge weights
body: <p>I am trying to modify the example code available at <a href="https://www.boost.org/doc/libs/1_74_0/libs/graph/example/weighted_matching_example.cpp" rel="nofollow noreferrer">https://www.boost.org/doc/libs/1_74_0/libs/graph/example/weighted_matching_example.cpp</a> to include floating point edge weights with <strong>maximum_weighted_matching</strong> algorithm in boost graph library. However, the code seems to be running forever for certain floating point edge weights.</p>
  <p>The relevant code modifications are mentioned below.</p>
  <pre><code>const int n_vertices = 4;
  add_edge(0, 2, EdgeProperty(0.5), g);
  add_edge(0, 3, EdgeProperty(0.1), g);
  add_edge(1, 2, EdgeProperty(0.4), g);
  add_edge(1, 3, EdgeProperty(0.1), g);
  </code></pre>
  <p>I am new to cpp boost library. Can someone please help me understand why the above modifications doesn't work whereas the algorithm works fine for interger edge weights (and for some floating point edge weights as well).</p>