Age | Commit message (Collapse) | Author |
|
In particular:
- fix up the MCF sovler to get rid of all the warnings/errors
- make the build with Wall and Werror and whatnot again
|
|
For the solver utility it'd be good to have MCF problems, so here they
are!
Format is:
MCF<supplies, arcs>(cost*)
Supplies is a [int,int,int,...], where each int represents a new node
Arcs is [int:int, int:int, int:int, ...] where each int:int pair
represents an edge from the first to the second (1 indexed from the
"supplies" array).
Costs is the argument to the function. There must be as many costs as
arcs, and they are set from left to right, in order.
|
|
It runs in two separate passes:
- improve strategy (for all)
- evaluate fixpoint
Unfortunately this loses out on locality at the moment.
I really want a local solver, so I'll have to see what I can do about
that.
|
|
|
|
- Remove exceptions
- Remove dynamic casts
The bug was relating to MaxStrategy not cleaning up the influence sets
after propagating changes. I just added a call to .clear() and it seems
fine.
|
|
|
|
|
|
|
|
(command-line arguments specify which to use)
Also:
- Fix up Complete<T> to work comparing `inf` to 1 (stupid bug)
- Clean up the systems/ folder a bit
- Change the printed output to differentiate variables and constants
(!v/!c, respectively)
- Perform a slight optimisation to the strategy-iteration process
|
|
|
|
|