diff --git a/constraints/conversion_0.mzn b/constraints/conversion_0.mzn index e08827f167c336d9dfcb36f704cecf7138640948..65c4a6ef1d02eec1e2521cf388bf5caa1b2eb003 100644 --- a/constraints/conversion_0.mzn +++ b/constraints/conversion_0.mzn @@ -209,12 +209,12 @@ array [1..n_moving_obj, 0..(n_intervals + 1)] of var bool : is_interval_useful; endif ); -constraint forall (obj in 1..n_moving_obj, t in 0..n_intervals) ( % Само ограничение. - (( m_obj_loc[obj, t] != 0) /\ - (prev_m_obj_loc[obj, t] != 0) /\ - ( m_obj_loc[obj, t + 1] == 0) /\ +constraint forall (obj in 1..n_moving_obj, t in 1..n_intervals) ( % Само ограничение. + (( m_obj_loc[obj, t] != 0) /\ + (prev_m_obj_loc[obj, t] != 0) /\ + (next_m_obj_loc[obj, t + 1] != m_obj_loc[obj, t]) /\ (next_m_obj_loc[obj, t + 1] == prev_m_obj_loc[obj, t]) - ) -> is_interval_useful[obj, t] + ) -> is_interval_useful[obj, t - 1] ); solve minimize sum(is_not_terminated);