On 03-06-13 12:31, Barry Dresdner wrote:
Thanks for the comprehensive response.

Just for the sake of comparison, can you tell me which products would be similar to OptaPlanner?  I did some digging and only came across some Constraint Programming products, but they didn't look like they could handle the planning like OptaPlanner.
IBM CPLEX, LocalSolver, ...
There are a lot of solvers out there (most written as part of a PHD grant), but most are academic (not production ready, not scalable).

Compare the results of a realistic optimization competition, such as ROADEF 2012 [1],
and you'll definitely like OptaPlanner :)

[1] http://blog.athico.com/2012/06/roadef-2012-first-results-for-dataset-b.html


Best regards - Barry
 
 
 
--
Be at war with your vices, at peace with your neighbors, and let every new year find you a better man.
Benjamin Franklin
 
On 06/03/13, Geoffrey De Smet<ge0ffrey.spam@gmail.com> wrote:
 

On 02-06-13 17:38, Barry Dresdner wrote:
Hi - Forgive me if this not the correct mailing list for my questions.
For OptaPlanner (=Drools Planner) this is the correct mailing list :)
We 'll be moving to our own mailing list / webforum soon.

I'm looking for information about OptaPlanner, but first some background.  I am using Activiti for BPMN workflows.  Activiti uses RESTful services to retrieve tasks.  I also use Alfresco to check a calendar against resources to prevent double tasking, etc. 

So I am wondering if OptaPlanner can be used to create a schedule
Yes, task assignment (~ workforce scheduling) is a common problem talked by OptaPlanner.
That calendar resource(s) is probably part of the planning problem, because it sounds like your constraints need it.
See the quick start (docs) and the curriculum course example for inspiration.
and push it into Activiti.
That glue code you'll need to write yourself. Since it's all POJO based, that shouldn't be hard.

OptaPlanner doesn't care where those POJO's come from and where they go to: XML (XStream, JAXB, ...), JPA (Hibernate, ...), ... it's all good.

If you want a lot of features in that integration glue code, camel might be a good idea. One day we might create optaplanner-camel to expose OptaPlanner as a REST/SOAP service (but that's pull based, not push IIRC).
  I don't necessarily want complete automation as I'd like to be able to use a user interface to view what the scheduler came up with and allow users to change as needed 9even if there are scheduling errors).
Yes, that's a typical use case: Generate the planning with OptaPlanner but allow user's to change the result afterwards.
In OptaPlanner you can even go further: You can make specific assignments "immovable" (see docs), so OptaPlanner doesn't move them if the user has locked an assignment.
Or even semi-immovable: OptaPlanner can move it, but at the expensive of a Score penalty (so only if there's enough gain in moving it).

Also look for "guiScoreDirector" in the docs.

Thanks for any assistance.  - Barry


_______________________________________________rules-users mailing listrules-users@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users




_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users