- Direction d = Directional_element_interface::get (me);
- if (d)
- {
- for (int i = ties.size (); i--;)
- {
- Score_element * t = ties[i];
- Directional_element_interface::set (t, d);
- }
- return;
- }
-
- if (ties.size () == 1)
- {
- Score_element * t = ties[0];
- Directional_element_interface::set (t,Tie::get_default_dir (t));
- return;
- }
-
- ties.sort (tie_compare);
- Directional_element_interface::set( ties[0], DOWN);
- ties.del (0);
-
- Directional_element_interface ::set(ties.pop (), UP);
- for (int i=ties.size(); i--; )
+
+ Ties_configuration base = problem.generate_optimal_configuration ();
+
+ for (vsize i = 0; i < base.size (); i++)