Wrong result, i didn't enable the skill hard constraint there, this is the
result, its the opposite of that, everything is feasible:
ID: 104[Skills: ABC 2,] -- Priority: P3 - Andre(8)[Skills: ABC 1,ABC
2,] -- Feasible(0)
ID: 103[Skills: ABC 1,ABC 2,ABC 3,ABC 4,] -- Priority: P1 -
Denny(8
I forgot to mention that, if the hard constraint is broken, it breaks all
the planning to.
ID: 104[Skills: ABC 2,] -- Priority: P3 - Fabio(8)[Skills: ABC 3,ABC
1,] -- Broken(1)
ID: 103[Skills: ABC 1,ABC 2,ABC 3,ABC 4,] -- Priority: P1 -
Andre(8)[Skills: ABC 1,ABC 2,] -- Broken(2)
ID:
in that case, i just want to leave it unassigned or (and) add it to a list
of unassigned workorders, so I can get it and resort to another set of
engineers.
2013/2/21 Geoffrey De Smet
>
> Op 21-02-13 12:54, André Fróes schreef:
>
> Sure. My sorting by worktime and skills is partially working, i
Op 21-02-13 12:54, André Fróes schreef:
Sure. My sorting by worktime and skills is partially working, if I do
my planning with a certain number of engineers/workorders that fits in
each other, it works perfectly, If i overcome that, it breaks the
planning, it keeps showing the data that should
I added another variable to check if it would still show the broken
constraint and break the planner, and it still happens, I added this:
WorkOrder wo33 = new WorkOrder(103l, 8, Priority.P1, Nature.CORRECTIVE);
SkillWorkOrder swo333 = new SkillWorkOrder(20333l, wo33, ABC1);
SkillWorkOrder swo3332
Problem solved (still I think so):
It was simpler (if i'm right):
List tempEngSkillList = new ArrayList();
for (SkillEngineer se : e.getSkillEngineerList()){
tempEngSkillList.add(se.getSkill());
}
if (tempEngSkillList.containsAll(requiredSkillList)){
hardScore += 1;
}
the result
Not fixed, i threw it on excel and make a comparison with expected results
and there are 2 broken there. This is how it would be (feasible solution):
ID 101 - Engineer Richard
ID 102 - Engineer Andre
ID 103 - Engineer Denny
ID 104 - Engineer Andre
ID 105 - Engineer Andre
ID 106 - Engineer Andre
ID
I think I fixed it, but the broken constraint is still showing, i don't
know how to remove it. I did this:
verified if the engineer skill list had the same size or bigger than the
requiredSkillList, iterate to check skills between both counting the
matches and then, if the match was 100% to other,
After some workaround I noticed that the workorders are not being 100%
corretly distributed to, i've changed the scorecalculator to this:
int commonSkillCount = 0;
for (Skill s : requiredSkillList){
for (SkillEngineer se : e.getSkillEngineerList()){
if (se.getSkill().getId() == s.getId()){
commonS
I forgot to post the code:
public HardAndSoftScore calculateScore(Distributor distributor) {
int hardScore = 0;
int softScore = 0;
for (Engineer e : distributor.getEngineerList()){
long skill = e.getSkillEngineerList().get(0).getSkill().getId();
int requiredWorktime = 0;
List requiredSkillList =
I managed solving that problem even when there's more than one skill
involved, but now my hard constraint of worktime breaks if I add more
worktime than the sum of engineers worktime.
(8) is the worktime, my workorders all have a worktime of 4 hours, so, I
got 32 available hours and 32 hours of wo
Just one correction, it is sorting correctly when there's one workorder
with a skill, if there's another workorder with same skill, it doesn't sort
that workorder to that skill.
This is what is happening:
Workorder skill ABC1 Engineer skill ABC1
Workorder skill ABC2 ---
Hello, since i'm not moving a step from where I am at dsl rule, I'm trying
to do it with SimpleScoreCalculator, but the same is happening.
public HardAndSoftScore calculateScore(Distributor distributor) {
int hardScore = 0;
int softScore = 0;
for (Engineer e : distributor.getEngineer
13 matches
Mail list logo