Попробуем найти какое-то начальное решение, при этом надо учесть, что каждый тренируемый должен иметь не более 3-х тренеров, а каждый тренер только 1-ого тренируемого. В качестве начального решения я принял:
|
Юниоры |
Болин |
Капитан |
Грабнер |
Старики |
|
48 |
81 |
76 |
Отен |
62 |
|
|
x |
Мармар |
67 |
0.70 |
|
|
Повел |
68 |
0.70 |
|
|
Салем |
78 |
0.70 |
|
|
Круз |
85 |
|
0.75 |
|
Чжуй |
86 |
|
0.76 |
|
Колпэк |
95 |
|
0.87 |
|
В своем выборе я исходил из краткого анализа последних 3-х строчек, в которых очевидно, что наибольшие числа стоят в колонке Капитана, следовательно, лучше тренировать его, в строчках 2,3,4 наибольшие значения находятся в столбце Болин, на Грабнера осталься Отен, ноон по позиции не может тренить его….
Т.о. мы имеем некое решение нашей задачи, ОФ, равная сумме всех строк и столбцов равна 4.484. Далее возникает вопрос – можно ли это решение как-то улучшить? Можно.
Если поменять решение данным образом:
|
Юниоры |
Болин |
Капитан |
Грабнер |
Старики |
|
48 |
81 |
76 |
Отен |
62 |
0.69 |
|
|
Мармар |
67 |
|
|
0.49 |
Повел |
68 |
0.70 |
|
|
Салем |
78 |
0.70 |
|
|
Круз |
85 |
|
0.75 |
|
Чжуй |
86 |
|
0.76 |
|
Колпэк |
95 |
|
0.87 |
|
В этом варианте тренировки задействованы уже все ветераны. Теперь Отен тренерует Болина, а Мармар Грабнера. После этой перестановки ОФ становиться равной 4.972, а после этой:
|
Юниоры |
Болин |
Капитан |
Грабнер |
Старики |
|
48 |
81 |
76 |
Отен |
62 |
0.69 |
|
|
Мармар |
67 |
0.70 |
|
|
Повел |
68 |
|
|
0.51 |
Салем |
78 |
0.70 |
|
|
Круз |
85 |
|
0.75 |
|
Чжуй |
86 |
|
0.76 |
|
Колпэк |
95 |
|
0.87 |
|
ОФ = 4.983, еще одна похожая перестановка:
|
Юниоры |
Болин |
Капитан |
Грабнер |
Старики |
|
48 |
81 |
76 |
Отен |
62 |
0.69 |
|
|
Мармар |
67 |
0.70 |
|
|
Повел |
68 |
0.70 |
|
|
Салем |
78 |
|
|
0.62 |
Круз |
85 |
|
0.75 |
|
Чжуй |
86 |
|
0.76 |
|
Колпэк |
95 |
|
0.87 |
|
ОФ = 5.095
Все. Никакие другие перестановки не приводят нас к выигрышу ОФ, в этом можно легко убедиться попробовав попереставлять пары тренируемых или просто перенести тренировку с одного юниора на другого (с учетом не более 3-х тренировок на одного юниора).
Конечно, подобные задачи руками не решаются для этого есть специальные средства: Matlab или CPLEX, тем не менее в методических целях вполне можно.Если Вы все же осилили этот текст, поздравляю, если нет – пишите, попробуем разобраться с Вашими проблемами по тренировкам.
|