Paid Community Support
by dollanitri
1. Is there any paid community support available for the Drools, to support
production systems for the troubleshooting in case of sever failures ?
2. If yes, then could anybody give me link or details to find out cost
details and other stuff related to support ?
3. It would be great if anybody can give or have an idea about how much
charge it will cost to take paid community support for the production
systems ?
--
View this message in context: http://drools.46999.n3.nabble.com/Paid-Community-Support-tp3968081.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
Updating a user defined error object using drools
by Ini
Hi All,
I am new to Drools and few thing what i am asking might not be
logically correct ( m sorry for that).
I have requirement as per that i have a bean with all the values
being populated and want to validate it and in case of any error update my
error (user defined) object with my own set of message and other details.
I searched the net for similar example but am not able to find some of the
below mentioned details. Please help me with following:
1. How to populate a user defined object in drl file and get the same object
in my java class.
2. What all different operation and methods are available in drools
(Couldn'dt find any concrete set: just tell me some urls)
3. I ma not able to find API for drools 5.3.0, please provide me the URL of
the same.
Thanks a lot in advance:
Ini
--
View this message in context: http://drools.46999.n3.nabble.com/Updating-a-user-defined-error-object-us...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
getting list of broken constraints for some solution(NOT BEST SOLUTION) in drools-planner
by Nurlan
Hi guys!
I'm using drools-planner-*5.4.0.CR1*...
Let's say I have some solution(NOT FINAL BEST SOLUTION) which done by human
manually and I want get list of broken contraints for that solution, I've
tried
this.scoreDirector.setWorkingSolution(someSolution);
this.scoreDirector.calculateScore();
it returns *null* since it isn't connected with Solver
then I've tried using Solver with
<termination><maximumStepCount>0</maximumStepCount></termination>:
this.scoreDirector.setWorkingSolution(someSolution);
this.solver.setPlanningProblem(this.scoreDirector.getWorkingSolution());
this.solver.solve();
this.scoreDirector.setWorkingSolution(this.solver.getBestSolution());
this.scoreDirector.calculateScore();
then it shows *java.lang.UnsupportedOperationException* because there is no
best solution in Solver
java.lang.UnsupportedOperationException: StepCountTermination can only be
used for phase termination.
at
org.drools.planner.core.termination.StepCountTermination.isSolverTerminated(StepCountTermination.java:40)
at
org.drools.planner.core.termination.OrCompositeTermination.isSolverTerminated(OrCompositeTermination.java:42)
at
org.drools.planner.core.solver.DefaultSolver.runSolverPhases(DefaultSolver.java:181)
at
org.drools.planner.core.solver.DefaultSolver.solve(DefaultSolver.java:151)
how can implement this task? or I have to implement setBestSolution in
Solver, i think this is bad idea...
--
View this message in context: http://drools.46999.n3.nabble.com/getting-list-of-broken-constraints-for-...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
any idea on Paid Community Support
by dollanitri
1. Is there any paid community support available for the Drools, to support
production systems for the troubleshooting in case of sever failures ?
2. If yes, then could anybody give me link or details to find out cost
details and other stuff related to support ?
3. It would be great if anybody can give or have an idea about how much
charge it will cost to take paid community support for the production
systems ?
--
View this message in context: http://drools.46999.n3.nabble.com/any-idea-on-Paid-Community-Support-tp39...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
Autoreply: Travis Smith is out of the office
by Travis_Smith@bnz.co.nz
I will be out of the office starting 07/05/2012 and will return on
08/05/2012.
I am on Volunteer Leave with BNZ Closed for Good today - see
www.closedforgood.org if you want more details.
For any URGENT issues in Lending Manager, HotDocs or Transact, please
contact BNZ Systems Support.
Regards,
-Trav
_______________________________________________
Travis Smith
Analyst Programmer
BTS Development Centre
Tel: +64 4 474 6356 Email: Travis_Smith(a)bnz.co.nz
CAUTION - This message may contain privileged and confidential information
intended only for the use of the addressee named above. If you are not the
intended recipient of this message you are hereby notified that any use,
dissemination, distribution or reproduction of this message is prohibited.
This email was sent by the Bank of New Zealand. You can contact us on
0800 ASK BNZ (0800 275 269). Any views expressed in this message are those
of the individual sender and may not necessarily reflect the views of Bank
of New Zealand.
13 years, 10 months
Guvnor data enumeration issue
by GPatel@tsys.com
I am trying to use data enumerations and running into a problem. Following
the Vehicle engineType/fuelType data enumeration example in the Guvnor
manual, I created the following enumeration list and it works:
'Vehicle.engineType' : (new test.VehicleHelper()).getEngineTypes()
'Vehicle.fuelType[engineType]' : '(new
test.VehicleHelper()).getFuelTypes("@{engineType}")'
VehicleHelper:
------------
public class VehicleHelper {
public List<String> getEngineTypes(){
List<String> engineTypes = new ArrayList<String>();
engineTypes.add("Petrol");
engineTypes.add("Diesel");
return engineTypes;
}
public List<String> getFuelTypes(String engineType){
List<String> fuelTypes = new ArrayList<String>();
if("Petrol".equalsIgnoreCase(engineType)){
fuelTypes.add("ULP");
fuelTypes.add("PULP");
}
else if("Diesel".equalsIgnoreCase(engineType)){
fuelTypes.add("BIO");
fuelTypes.add("NORMAL");
}
else{
fuelTypes.add("Default Fuel 1");
fuelTypes.add("Default Fuel 2");
}
return fuelTypes;
}
}
Above works as expected.
Problem:
I want to only have an enumeration on Vehicle.fuelType that depends on the
value of engineType, without specifying an enumeration on engineType. So,
I took out the first line in my enumeration list so that it is now:
'Vehicle.fuelType[engineType]' : '(new
test.VehicleHelper()).getFuelTypes("@{engineType}")'
But that does not work. When I create a rule, VehicleHelper.getFuelTypes
does not get called and the dropdown for fuelType is not a list.
How do I get this working?
Thanks
G. Patel
-----------------------------------------
The information contained in this communication (including any
attachments hereto) is confidential and is intended solely for the
personal and confidential use of the individual or entity to whom
it is addressed. If the reader of this message is not the intended
recipient or an agent responsible for delivering it to the intended
recipient, you are hereby notified that you have received this
communication in error and that any review, dissemination, copying,
or unauthorized use of this information, or the taking of any
action in reliance on the contents of this information is strictly
prohibited. If you have received this communication in error,
please notify us immediately by e-mail, and delete the original
message. Thank you
13 years, 10 months
Re: [rules-users] Drools Planner: entity was never added to this ScoreDirector?
by Cedric Hurst
yeah, i have a solutionEquals() and solutionHashCode() as well. I tried dumping my hashCode() and equals() methods on the PlanningEntity but that didn't seem to have much effect. My hashCode() and solutionHashCode() values now both change when I assign a different supplier, but planner still can't seem to find the entity in working memory.
--
Build Smarter Software.
Spantree Technology Group, LLC
813 W Randolph St, Suite 301
email: cedric(a)spantree.net (mailto:cedric@spantree.net) | phone: 773.359.3865 (tel:773.359.3865)
http://www.spantree.net (http://www.spantree.net/)
On Friday, May 4, 2012 at 8:51 PM, Christopher Dolan [via Drools] wrote:
> Try just commenting out your .equals() and .hashCode() methods. My experience was that Planner is unexpectedly sensitive to hashcode algorithms, and identity equality just worked best. I ended up implementing a solutionEquals like some of the example code.
> Chris
>
> From: [hidden email] (/user/SendEmail.jtp?type=node&node=3963850&i=0) [[hidden email] (/user/SendEmail.jtp?type=node&node=3963850&i=1)] on behalf of Cedric Hurst [[hidden email] (/user/SendEmail.jtp?type=node&node=3963850&i=2)]
> Sent: Friday, May 04, 2012 5:09 PM
> To: [hidden email] (/user/SendEmail.jtp?type=node&node=3963850&i=3)
> Subject: [rules-users] Drools Planner: entity was never added to this ScoreDirector?
>
> Hi all,
> I'm working on a Drools Planner 5.4.0.CR1 implementation for a scheduling app.
> First, some background:
> The solution class is 'Schedule' and the PlanningEntity is 'Meeting'. Meetings consist of timeslots (or 'slots'), and two participants in complimentary roles 'planners' and 'suppliers'. Since there are more planners than suppliers, I've structured the Schedule model so that its meeting collection is basically the cross-product of slots and planners. Suppliers are configured as the @PlanningVariable in a meeting. The meeting list in the schedule is also annotated as a @PlanningEntityCollectionProperty. I've structured three MoveFactories that add, subtract or swap suppliers from meeting to meeting.
> That part works fairly well, however, when I try to try to run my solution through a Solver, I am inevitably plagued with a dreaded message like this:
> java.lang.IllegalArgumentException: The entity (Meeting[slot: 26, planner: 29C2E0FF-00EE-409F-B05B-B175B30A6B45, supplier: BB25B297-54FA-45BD-923A-C209848E74B4, hashCode: 1219749520, solutionHashCode: -1086095971, slotHashCode: 436282962, plannerHashCode: -2037841459]) was never added to this ScoreDirector. at org.drools.planner.core.score.director.drools.DroolsScoreDirector.afterAllVariablesChanged(DroolsScoreDirector.java:110) at org.drools.planner.core.score.director.drools.DroolsScoreDirector.afterVariableChanged(DroolsScoreDirector.java:120) at com.somecompany.scheduler.moves.AddSupplierToMeetingMove.doMove(AddSupplierToMeetingMove.groovy:36) at org.drools.planner.core.localsearch.decider.DefaultDecider.doMove(DefaultDecider.java:128) at org.drools.planner.core.localsearch.decider.DefaultDecider.decideNextStep(DefaultDecider.java:103) at org.drools.planner.core.localsearch.DefaultLocalSearchSolverPhase.solve(DefaultLocalSearchSolverPhase.java:57) at org.drools.planner.core.sol
ver.DefaultSolver.runSolverPhases(DefaultSolver.java:183) at org.drools.planner.core.solver.DefaultSolver.solve(DefaultSolver.java:151) at org.spockframework.util.GroovyRuntimeUtil.invokeMethod(GroovyRuntimeUtil.java:100) at com.somecompany.scheduler.solver.SolverSpec.should solve schedule(SolverSpec.groovy:59)
> It seems to happen randomly, with different entities each time, but I've not yet had a successful run of a full solve cycle without hitting it a least once. Unfortunately, it kills my whole process.
> I've step debugged through the planner internals and verified that all the meetings are getting added to the working memory, including the offending one:
> 2012-05-04 16:30:17,379 INFO com.somecompany.scheduler.solver.SolverSpec - Meeting[slot: 26, planner: 29C2E0FF-00EE-409F-B05B-B175B30A6B45, supplier: FEA76C13-C9E2-42EC-977C-BCBB0BD1FFA0, hashCode: 1219749520, solutionHashCode: -574491332, slotHashCode: 436282962, plannerHashCode: -2037841459]
> I was pretty certain my issue has to do with the meeting's hashCode value, but as you'll see they're exactly the same in working memory as they are when . I'm using commons HashCodeBuilder and EqualsBuilder to check only the fixed slot and planner values. The solutionHashCode changes based on the slot, planner and supplier-- supplier being the @PlanningVariable. I've pasted the full log, with trace enabled, here for review:
> https://gist.github.com/raw/93752853a0996ae1c016/d0ca35f5c531a2fa25e6a106...
> The error is listed at 2012-05-04 16:30:37,168.
> The original meeting in working memory is listed at 2012-05-04 16:30:17,379 (toward the middle of entries with that timestamp).
>
> I couldn't find an easy way to add a knowledge session logger in planner, but that might also be useful.
>
> View this message in context: Drools Planner: entity was never added to this ScoreDirector? (http://drools.46999.n3.nabble.com/Drools-Planner-entity-was-never-added-t...)
> Sent from the Drools: User forum mailing list archive (http://drools.46999.n3.nabble.com/Drools-User-forum-f47000.html) at Nabble.com (http://Nabble.com).
>
> _______________________________________________
> rules-users mailing list
> [hidden email] (/user/SendEmail.jtp?type=node&node=3963850&i=4)
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> If you reply to this email, your message will be added to the discussion below: http://drools.46999.n3.nabble.com/Drools-Planner-entity-was-never-added-t...
> To unsubscribe from Drools Planner: entity was never added to this ScoreDirector?, click here (http://drools.46999.n3.nabble.com/template/NamlServlet.jtp?macro=unsubscr...).
> NAML (http://drools.46999.n3.nabble.com/template/NamlServlet.jtp?macro=macro_vi...)
--
View this message in context: http://drools.46999.n3.nabble.com/Re-rules-users-Drools-Planner-entity-wa...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
DSL statements not showing up...
by TonyN
Hi,
I am not seeing DSL statements when using any of the followings in the
guided editor:
1) 'Any of the following are true..'
2) 'The following does not exist..'
3) 'The following exists..'
Steps: a) select any choice above
b) Select 'Click to add patterns...'
c) select Choose fact Type drop down.
d) Expected to see DSL statements in the drop down but do not.
I am using Guvnor 5.2.0 Final.
Thx,
Tony
--
View this message in context: http://drools.46999.n3.nabble.com/DSL-statements-not-showing-up-tp3964727...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
Reusing a Solution in Drools Planner
by pkaf
Hi there,
I am trying to use Drools Planner for a problem where I permanently have to
recalculate a solution
in reaction to external events which change the fact model.
A first trial run shows that Drools Planner needs to much time to find a
solution, even when using
FIRST_FIT algorithm.
My question is this: Can I reuse a solution which I found in a previous run
of drools planner supposing
the only difference is a small change in the fact model data? The goal here
is of course to speed up the
search for next solution.
I have read the chapter 12 about repeated planning, but gained not much
insight how to do it actually.
Regards,
Frank
--
View this message in context: http://drools.46999.n3.nabble.com/Reusing-a-Solution-in-Drools-Planner-tp...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months
Drools Planner: entity was never added to this ScoreDirector?
by Cedric Hurst
Hi all,
I'm working on a Drools Planner 5.4.0.CR1 implementation for a scheduling
app.
First, some background:
The solution class is 'Schedule' and the PlanningEntity is 'Meeting'.
Meetings consist of timeslots (or 'slots'), and two participants in
complimentary roles 'planners' and 'suppliers'. Since there are more
planners than suppliers, I've structured the Schedule model so that its
meeting collection is basically the cross-product of slots and planners.
Suppliers are configured as the @PlanningVariable in a meeting. The meeting
list in the schedule is also annotated as a
@PlanningEntityCollectionProperty. I've structured three MoveFactories that
add, subtract or swap suppliers from meeting to meeting.
That part works fairly well, however, when I try to try to run my solution
through a Solver, I am inevitably plagued with a dreaded message like this:
java.lang.IllegalArgumentException: The entity (Meeting[slot: 26, planner:
29C2E0FF-00EE-409F-B05B-B175B30A6B45, supplier:
BB25B297-54FA-45BD-923A-C209848E74B4,
hashCode: 1219749520, solutionHashCode: -1086095971, slotHashCode:
436282962, plannerHashCode: -2037841459]) was never added to this
ScoreDirector.
at
org.drools.planner.core.score.director.drools.DroolsScoreDirector.afterAllVariablesChanged(DroolsScoreDirector.java:110)
at
org.drools.planner.core.score.director.drools.DroolsScoreDirector.afterVariableChanged(DroolsScoreDirector.java:120)
at
com.somecompany.scheduler.moves.AddSupplierToMeetingMove.doMove(AddSupplierToMeetingMove.groovy:36)
at
org.drools.planner.core.localsearch.decider.DefaultDecider.doMove(DefaultDecider.java:128)
at
org.drools.planner.core.localsearch.decider.DefaultDecider.decideNextStep(DefaultDecider.java:103)
at
org.drools.planner.core.localsearch.DefaultLocalSearchSolverPhase.solve(DefaultLocalSearchSolverPhase.java:57)
at
org.drools.planner.core.solver.DefaultSolver.runSolverPhases(DefaultSolver.java:183)
at
org.drools.planner.core.solver.DefaultSolver.solve(DefaultSolver.java:151)
at
org.spockframework.util.GroovyRuntimeUtil.invokeMethod(GroovyRuntimeUtil.java:100)
at com.somecompany.scheduler.solver.SolverSpec.should solve
schedule(SolverSpec.groovy:59)
It seems to happen randomly, with different entities each time, but I've not
yet had a successful run of a full solve cycle without hitting it a least
once. Unfortunately, it kills my whole process.
I've step debugged through the planner internals and verified that all the
meetings are getting added to the working memory, including the offending
one:
2012-05-04 16:30:17,379 INFO com.somecompany.scheduler.solver.SolverSpec
- Meeting[slot: 26, planner: 29C2E0FF-00EE-409F-B05B-B175B30A6B45, supplier:
FEA76C13-C9E2-42EC-977C-BCBB0BD1FFA0, hashCode: 1219749520,
solutionHashCode: -574491332, slotHashCode: 436282962, plannerHashCode:
-2037841459]
I was pretty certain my issue has to do with the meeting's hashCode value,
but as you'll see they're exactly the same in working memory as they are
when . I'm using commons HashCodeBuilder and EqualsBuilder to check only
the fixed slot and planner values. The solutionHashCode changes based on
the slot, planner and supplier-- supplier being the @PlanningVariable. I've
pasted the full log, with trace enabled, here for review:
https://gist.github.com/raw/93752853a0996ae1c016/d0ca35f5c531a2fa25e6a106...
The error is listed at 2012-05-04 16:30:37,168.
The original meeting in working memory is listed at 2012-05-04 16:30:17,379
(toward the middle of entries with that timestamp).
I couldn't find an easy way to add a knowledge session logger in planner,
but that might also be useful.
--
View this message in context: http://drools.46999.n3.nabble.com/Drools-Planner-entity-was-never-added-t...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 10 months