
- •1 Краткое описание алгоритмов
- •1. Формирование математической модели
- •2. Графический метод решения задач линейного программирования
- •3. Решение математических задач симплексным методом
- •5. Решение двойственной задачи
- •6. Построение опорных планов шестью методами
- •7. Проверка опорного плана на оптимальность методом потенциалов
- •8. Метод дифференциальных рент
- •9. Решение задач о кратчайших расстояниях
- •10. Сетевое планирование и управление
- •12. Решение задач оптимальной загрузки оборудования
- •13. Задача оптимального раскроя
- •14. Решение задач оптимальной очерёдности обработки деталей
- •15. Решение задач выбора венгерским методом
- •2 Подробное изложение алгоритмов
- •2.1 Формирование математической модели
- •2.2 Графический метод решения задач линейного программирования
- •2.3 Решение математических задач симплексным методом
- •2.5 Решение двойственной задачи
- •2.6 Построение опорных планов шестью методами
- •2.7 Проверка опорного плана на оптимальность методом потенциалов
- •2.8 Метод дифференциальных рент
- •2.9 Решение задач о кратчайших расстояниях
- •2.10 Сетевое планирование и управление
- •2.12 Решение задач оптимальной загрузки оборудования
- •2.13 Задача оптимального раскроя
- •2.14 Решение задач оптимальной очерёдности обработки деталей
- •2.15 Решение задач выбора венгерским методом
2.14 Решение задач оптимальной очерёдности обработки деталей
Даны два станка (А и В) и некоторое количество деталей. Сначала каждая деталь обрабатывается на станке А, а затем - на станке В. Известно время обработки каждой детали на каждом станке (см. Таблица 70).
Таблица 70 – Время обработки каждой детали на каждом станке
Если обработка детали на станке А уже завершилась, а обработка предыдущей детали на станке Б ещё продолжается, то возникает простой (см. Рисунок 13).
Рисунок 13 – Обработка деталей с большим общим простоем
Простой: 8
Нужно организовать порядок обработки деталей так, чтобы общий простой был минимальным. Для этого используется алгоритм Джонсона.
Из всех известных данных выбирается наименьшее время обработки некоторой детали. Если выбранное время относится к первому станку, то деталь переносится в начало очереди, ей присваивается первый порядковый номер. Если выбранное время относится ко второму станку, то деталь переносится в конец очереди, ей присваивается последний порядковый номер. Присваиваемый номер в дальнейшем считается занятым, поэтому последующим деталям он уже не присваивается (см. Таблица 71).
Таблица 71 – Присвоение порядковых номеров в очереди
При новом порядке обработки деталей (см. Таблица 72) простой становится минимальным (см. Рисунок 14).
Таблица 72 – Новый порядок деталей
Рисунок 14 - Обработка деталей с минимальным общим простоем
Простой: 6
2.15 Решение задач выбора венгерским методом
Имеется матрица размерностью nxn (см. Рисунок 15).
Рисунок 15 – Исходная матрица
Решение задачи состоит из предварительного этапа и не более чем n-2 итераций. Каждая итерация – преобразование матрицы для получения независимых нулей. Каждая итерация увеличивает число независимых нулей на единицу (см. Рисунок 16, Рисунок 17).
Задача считается решенной, когда количество независимых нулей станет равным n. Оптимальный план указывает позиция независимых нулей в последней матрице.
Предварительный этап.
Каждый элемент заменяется на разность максимального элемента столбца и самого элемента. В результате образуется матрица с неотрицательными элементами, в каждом столбце которой имеется хотя бы один нуль.
В каждой строке последовательно определяется наименьший элемент. Каждый элемент заменяется на разность наименьшего элемента строки и самого элемента. В результате в каждой строке матрицы есть хотя бы один нуль.
В первом столбце первый нуль помечается символом «*» (далее - помеченный нуль). Затем просматриваются следующие столбцы, и если есть нуль, расположенный в строке, где нет помеченного нуля, то этот нуль помечается. Помеченные таким образом нули называются независимыми.
Итерация.
Если в матрице n независимых нулей, то задача решена, в противном случае начинается новая итерация.
Каждая итерация начинается первым этапом и заканчивается вторым, а между ними может быть любое количество третьих этапов.
Перед итерацией столбцы, в которых есть помеченные нули, выделяются.
Первый этап.
Просматриваются невыделенные столбцы. Если среди них нет нулевых элементов, то начинается третий этап. Если же невыделенный нуль есть, то возможны два случая:
Строка с невыделенным нулём не содержит помеченных нулей.
Строка с невыделенным нулём содержит помеченный нуль.
Невыделенный нуль отмечается символом «'» (далее - отмеченный нуль). Строка выделяется. Столбец, на пересечении с которым находится помеченный нуль, становится невыделенным. В этом столбце отыскивается непомеченный нуль, он отмечается, строка выделяется. Так продолжается до тех пор, пока не наступит один из следующих случаев:
Все нули отмечены, они находятся в выделенных строках и столбцах, тогда начинается третий этап.
Имеется неотмеченный нуль в строке, в которой нет помеченного нуля, тогда начинается второй этап.
Второй этап.
Строится цепочка. Она строится от отмеченного нуля к помеченному по столбцу, а от отмеченного к помеченному - по строке. Цепочка всегда начинается и заканчивается отмеченным нулём.
Отмеченные нули заменяются помеченными, а с помеченных нулей пометки убираются. Составляется следующая матрица, начинается первый этап.
Третий этап.
Все нули матрицы выделены, т.е. находятся на выделенных строках или столбцах. Среди невыделенных элементов матрицы выбирается наименьший, он должен быть больше нуля. Этот элемент вычитается из всех элементов в невыделенных строках и прибавляется ко всем элементам в выделенных столбцах. Получается новая матрица, начинается первый этап.
Рисунок 16 – Цепь нулей
Рисунок 17 – Итоговая матрица
Fmax=6+8+8+8+7+8=45
Заключение
Данные методические материалы не являются абсолютно непогрешимыми с практической точки зрения. При необходимости и желании любой учащийся может дополнить их или создать новые, более подробные и верные с точки зрения нового поколения студентов. Основное внимание любого текста всегда уделяется тому, на что его обращает автор, поэтому окончательных произведений не бывает.
При необходимости можно ввести дополнительные разделы, в которых, например, может рассматриваться связь между теми или иными методами. Можно ещё больше обобщить или, наоборот, углубить рассмотрение той или иной задачи. Методические материалы должны быть проверены временем и практикой, именно тогда появляются основания полагать, удачна данная документация или нет. Нужно учитывать, что составляющий данные описания руководствовался своим личным опытом и своими индивидуальными взглядами. Поэтому прогнозировать рост успеваемости учащихся во время составления методических материалов не представляется возможным.
Существует ещё много различных математических методов, моделей, алгоритмов, однако они выходят за рамки настоящей учебной программы. В случае изменения этой программы может возникнуть необходимость в соответствующем изменении методических материалов. Однако на момент написания настоящих материалов дополнить их более нечем.
Список использованной литературы
Грин Д., Кнут Д., «Математические методы анализа алгоритмов»
Зайченко Ю.П., «Исследование операций»
Интрилигатор М, «Математические методы оптимизации и экономическая
теория»
Конюховский П.В., Математические методы исследования операций в экономике
Самарский А.А., Михайлов А.П., «Математическое моделирование: Идеи.
Методы»
Трахтенгерц Э.А., «Компьютерная поддержка решений»