Allow easy access to a pseudo boolean optimizer
When a newcomer to Sat4j wants to solve a pseudo boolean optimization problems, it usually takes the PB solver available in SolverFactory.newDefault(), which looks ok from a user point of view.
However, by default, a PB solver does not perform any optimization. The optimization is performed by a generic procedure on IOptimizationProblem. The PseudoOptDecorator provides the IOptimizationProblem capability to IPBSolver.
The optimization can then be performed using an OptToPBSATAdapter object.
That process allows the power user to build custom PB optimizers but makes difficult the usage of the library for most users that really just pick the default settings.
The idea is to add a new method in the SolverFactory, newDefaultOptimizer, to provide a ready to use optimizer.