- •Часть 2
- •Содержание
- •1. Рабочая программа курса "математические основы информатики"
- •Часть 2.
- •Предисловие
- •Практические занятия
- •Литература (основная)
- •Литература (дополнительная)
- •2. Краткий конспект лекций
- •2.1.Задачи целочисленного булева программирования
- •2.2. Каноническая и многомерная задачи о ранце и их интерпретации
- •2.3. Задача коммивояжера и ее интерпретации
- •2.4. Задачи о назначениях и их интерпретации
- •2.5. Задача целочисленного линейного программирования в общей постановке
- •2.6. Метод ветвей и границ
- •2.7. Общая схема метода ветвей и границ Джеффриона-Марстена
- •2.8. Решение канонической задачи о ранце методом ветвей и границ
- •2.9. Решение многомерной задачи о ранце методом ветвей и границ
- •2.10. Решение задачи коммивояжера методом ветвей и границ
- •2.11. Решение задачи целочисленного линейного программирования методом ветвей и границ
- •2.12. Решение задачи о ранце с использованием табличной схемы
- •2.13. Решение задачи о ранце с использованием рекуррентных соотношений динамического программирования
- •2.14. Решение задачи коммивояжера с использованием рекуррентных соотношений динамического программирования
- •2.15. Задачи теории расписаний
- •2.16. Задачи теории расписаний с одним обслуживающим прибором
- •2.17. Перестановочный прием в задачах теории расписаний
- •2.18. Теорема Лившица-Кладова
- •2.19. Задачи теории расписаний в общей постановке
- •2.20. Задача Джонсона. Графики Ганта
- •2.21.Постановка задачи теории расписаний как задачи частично-целочисленного линейного программирования
- •2.22. Сетевые модели. Расчет временных характеристик сетевых моделей
- •2.23. Потоки в сетях. Теорема Форда-Фалкерсона о максимальном потоке
- •2.24. Алгоритм Форда-Фалкерсона нахождения максимального потока в транспортной сети
- •2.25. Решение задачи о назначениях алгоритмом Куна
- •2.26. Минимаксные задачи о назначениях
- •2.27. Задачи о назначениях с индивидуальными предпочтениями
- •3. Задачник с решением типовых задач
- •3.1. Решение задачи о ранце
- •3.1.1. Решение задачи о ранце методом ветвей и границ
- •3.1.2. Решение задачи о ранце методом динамического программирования (табличная форма)
- •3.1.3. Решение задачи о ранце методом динамического программирования (рекуррентная схема)
- •3.1.4. Решить следующие задачи о ранце :
- •3.2. Решение задачи коммивояжера
- •3.2.1. Решение задачи коммивояжера методом ветвей и границ
- •3.2.2. Решение задачи коммивояжера с использованием рекуррентных соотношений динамического программирования
- •3.2.3. Решить задачи коммивояжера:
- •3.3. Решить задачу Джонсона для двух станков, построить график Ганта для оптимального расписания
- •3.4. Решение задачи о назначениях алгоритмом Куна
- •3.5. Решение минимаксных (максиминных) задач о назначениях
- •3.6. Решить задачи о назначениях с индивидуальными предпочтениями
- •3.7. Нахождение максимального потока в транспортной сети алгоритмом Форда-Фалкерсона
- •3.8. Расчет временных характеристик сетевых моделей
- •Рассчитать временные характеристики сетевой модели
- •4. Контрольные задания
- •5. Вопросы к экзамену
- •3.Задачи целочисленного булева программирования.
- •6.Задача коммивояжера и ее интерпретации.
- •8.Задача целочисленного линейного программирования в общей постановке.
3.8. Расчет временных характеристик сетевых моделей
Пусть i - номер работы, t(i) - длительность выполнения работы i, i=1,2,3,4,5,6,7. Обозначим через K(i) - множество работ, непосредственно предшествующих работе с номером i (условие, определяемое технологическими требованиями на порядок выполнения работ). Требуется определить минимально возможное время, за которое можно выполнить все работы.
i |
t(i) |
K(i) |
1 |
3 |
O |
2 |
5 |
O |
3 |
2 |
{1,2} |
4 |
4 |
{3} |
5 |
3 |
{3} |
6 |
6 |
{4} |
7 |
2 |
{5,6} |
Для решения этой задачи воспользуемся специальной схемой расчета временных характеристик, позволяющей не только дать ответ на поставленный вопрос, но и найти дополнительные характеристики, позволяющие более эффективно управлять процессом изготовления нового изделия.
К таким характеристикам относятся:
t(rn,i) - время самого раннего начала выполнения работы с номером i,
t(rk,i) - время самого раннего окончания выполнения работы с номером i,
t(pn,i) - время самого позднего начала выполнения работы с номером i,
t(pk,i) - время самого позднего окончания выполнения работы с номером i,
r(i) - резерв времени работы с номером i, т.е. . время, на которое не в ущерб времени общего окончания выполнения всех работ, можно задерживать выполнение работы с номером (i),
T(k) - время выполнения всех работ изделия.
Величина T(k) называется длиной критического пути, а критическим путём называют путь, соединяющий некоторую начальную работу - не имеющую предшествующих работ, и некоторую конечную работу - не имеющую последующих, т.е. от неё зависящих работ, суммарное время выполнения всех работ которого максимально.
Для расчета временных характеристик воспользуемся следующими рекуррентными соотношениями:
t(rn,i) = 0, если K(i) - пустое множество.
t(rk,i) = t(rn,i) + t(i),
t(rn,i)= max t(rk,j), где максимум берется по всем работам j из множества K(i).
t(pk,i) = t(rk,i) , если работа i не имеет последующих,
t(pn,i) = t(pk,i) - t(i),
t(pk,i) = min t(pn,j), где минимум берется по тем работам j, которые принадлежат множеству K(i), т.е. по тем работам, от которых зависит работа с номером i.
r(i) = t(pn,i) - t(rn,i) = t(pk,i) - t(rk,i).
Работы критического пути это те работы, резервы времени которых нулевые.
Найденные временные характеристики приведем в таблице:
i |
t(i) |
K(i) |
t(rn,i) |
t(rk,i) |
t(pn,i) |
t(pk,i) |
r(i) |
1 |
3 |
O |
0 |
3 |
2 |
5 |
2 |
2 |
5 |
O |
0 |
5 |
0 |
5 |
0’ |
3 |
2 |
{1,2} |
5 |
7 |
5 |
7 |
0’ |
4 |
4 |
{3} |
7 |
11 |
7 |
11 |
0’ |
5 |
3 |
{3} |
7 |
10 |
14 |
17 |
7 |
6 |
6 |
{4} |
11 |
17 |
11 |
17 |
0’ |
7 |
2 |
{5,6} |
17 |
19 |
17 |
19 |
0’ |
Работы критического пути (2,3,4,6,7).
Длина критического пути T(k)=19.
Работа1,t(1)=3 |
|
Работа5,t(5)=3 |
|
|
|
Работа3’ t(3)=2 |
|
|
Работа7’,t(7)=2 |
Работа2’, t(2)=5 |
|
Работа4’,t(4)=4 |
Работа6’,t(6)=6 |
|