[Coin-lpsolver] CBC performance in Linux vs Windows

Lou Hafer lou at cs.sfu.ca
Wed Oct 25 16:34:13 EDT 2006


Vishnu,

	There are a number of possibilities for the difference that you're 
seeing.
	
	Search tree exploration suffers from the `butterfly effect'.  Given a
choice of nodes to explore, they may all appear equivalent by the measures that
cbc uses to make the choice.  Nonetheless, choosing the right node may discover
the best solution almost immediately, while choosing some other node will result
in full exploration of an unproductive portion of the search tree.  To coin an
oxymoron, there's a sort of deterministic randomness.  The behaviour is
repeatable on a given platform, but will vary (apparently randomly) between 
platorms.

	Certainly, I've seen large differences in search tree exploration when I
switch between clp and dylp as the underlying solver.  It goes both ways, in
runs with no apparent algorithm errors.

	Then again, it could be a bug.
	
	Generally, it's hard to say which is which without looking harder at the
information cbc tells you as it runs.  Try turning up the log level a bit and
see if it's apparent which alternative you're seeing.  And maybe you're seeing
something entirely different from any of the above.

	Stabilising search behaviour in this situation is an overall goal of
algorithm development.

	John may have additional comments.

	To answer an earlier query, I'm not aware of anyone working on a Java
interface. Volunteers welcome.  :-)

							Lou





More information about the Clp mailing list