modernart/scoring.mzn

20 lines
603 B
MiniZinc
Raw Normal View History

2020-06-10 19:17:54 +00:00
% Score = ranking_score + award_score if an award was given this round
constraint forall(r in Rounds, a in Artists) (
total_score_per_round_per_artist[r,a] =
ranking_score_per_artist_per_round[r,a] + award_bonus_per_round_per_artist[r,a]
);
% Calculate total score per player
% 1. Per Round
constraint forall(r in Rounds, p in Players) (
RoundScore[r,p] = sum(a in Artists) (
2020-06-10 19:17:54 +00:00
visible_count_per_round_per_artist_per_player[r,p,a] * ranking_score_per_artist_per_round[r,a]
)
);
% 2. For the whole game
constraint forall(p in Players) (
Score[p] = sum(r in Rounds) (RoundScore[r,p])
2020-06-10 19:17:54 +00:00
);