1
0
This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.

18 lines
636 B
MiniZinc

include "radiation.mzn";
include "lex_less.mzn";
%-----------------------------------------------------------------------------%
% Objective
%-----------------------------------------------------------------------------%
predicate lex_minimize(array[int] of var int: o, int: stage) =
forall(i in min(index_set(o))..stage-1) (
o[i] = sol(o[i])
)
/\ o[stage] < sol(o[stage]);
constraint output_this([Beamtime, K]);
predicate lex_obj(int: stage) ::export = lex_minimize([Beamtime, K], stage);
solve :: int_search([Beamtime] ++ N ++ [Q[i,j,b] | i in Rows, j in Columns, b in BTimes ], input_order, indomain_min, complete) satisfy;