48382 (Проектирование модели для определения времени простоя станков на машиностроительном предприятии), страница 2
Описание файла
Документ из архива "Проектирование модели для определения времени простоя станков на машиностроительном предприятии", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "48382"
Текст 2 страницы из документа "48382"
составлено расписание окончания обработки
Из анализа матрицы С видно, что для каждой отдельной детали расписание се обработки является наилучшим, так как обработка планируется таким образом, чтобы детали не пролеживали. В то же время это расписание недопустимо, так как имеются отрезки времени, когда на одном станке должны обрабатываться обе детали одновременно — детали «конфликтуют». Действительно, на первом станке предусмотрена обработка одной детали в интервале (0—3), а другой — в интервале (0—6), на втором станке первая деталь обрабатывается в интервале (3—8). а вторая — в интервале (С—10).
Следовательно, возникает конфликт, который можно ликвидировать, сделав расписание допустимым за счет предпочтения какой-либо детали. Если отдать предпочтение первой детали, расписание примет вид
а если второй, то время окончания операций будет
В первом случае совокупная длительность никла 13 часов. во втором— 15. Следовательно, главный вопрос при разрешении конфликта состоит в выборе детали, которой следует отдать предпочтение для обработки на данном станке. В общем случае любая деталь на некотором станке может конфликтовать с несколькими другими. Ниже на числовом примере рассматривается процесс последовательного устранения конфликтов, приводящий в соответствии со схемой метода ветвей и границ к допустимому оптимальному расписанию работы оборудования.
Пусть дана матрица продолжительностей обработки четырех партий деталей на трех станках
,
Требуется определить порядок обработки партий деталей на каждом станке, обеспечивающий наименьшую длительность совокупного цикла.
Первый шаг. Составляем для каждой отдельно взятой детали наилучшее расписание времени окончания ее обработки на каждом из станков в виде матрицы С, элементы которой
определяются исходя из возможности обработки каждой детали без пролеживания.
Получаем матрицу
.
Второй шаг. Проверяем наличие конфликта на первом станке. Поскольку каждая деталь рассматривалась независимо от остальных, то их обработка на первом станке начинается одновременно и протекает в промежутки времени (0—2). (0—4), (0—9). (0—2). Следовательно, все детали конфликтуют друг с другом.
Третий шаг. Разрешая поочередно конфликт в пользу каждой из деталей, находим ту деталь, которую целесообразно на первом станке обрабатывать первой. Для этого выполняем т раз следующие два действия.
1. Строим календарное расписание окончания обработки деталей на каждой операции при условии, что на первом станке деталь l запускается первой.
Элементы этой матрицы определяются из соотношения
Предположим, что деталь 1 запускается на первом станке первой. Тогда
.
В результате деталь 1 не конфликтует ни с какими другими деталями на нервом станке.
2. Каждому календарному расписанию приписываем его оценку в виде минимально возможного времени окончания Обработки деталей на последнем станке n в предположении, что на первых п — 1 станках конфликты отсутствуют.
Из матрицы известно возможное время начала обработки любой детали i на последнем станке. Оно совпадает с временем окончания ее обработки на предпоследнем станке.
Чтобы не увеличивать длительность обработки деталей, целесообразно на последнем станке обрабатывать детали в очередности их поступления на этот станок
,
где
Оценка определяется следующим образом.
Первоначально сравниваем с .
Если , то время завершения обработки двух деталей i1 и на последней операции будет равно времени окончания обработки детали i2, т. е.
.
Если , то .
Далее сравниваем время завершения обработки на последнем станке двух первых деталей i1 и i2 с временам завершения обработки на предпоследнем стачке детали i3.Здесь возможны два случая:
1) если ., то ;
2) если , то , и т.д.
В результате такого цепного расчета получим минимально возможное время обработки всех деталей для варианта расписания предположении, что все конфликты в нем на первых п — 1 станках устранены. Эту величину и принимаем за нижнюю границу времени окончания обработки деталей по расписанию
.
Как видно из матрицы , моменты завершения обработки деталей на предпоследнем, втором станке упорядочены следующим образом:
,
т. е. детали на последний станок поступают в очередности 1, 3, 2, 4. Выбираем первые две детали 1 и 3 и определяем момент завершения их обработки на последнем станке.
Так как , то .
Включаем в рассмотрение третью по порядку деталь 2. Поскольку, то минимально возможное время обработки первых трех деталей (1, 3, 2) будет
.
Рассматривая последнюю деталь, видим, что .
Следовательно, .
Отсюда получаем
.
Повторим действия I и 2 для остальных вариантов, когда первой на первом станке обрабатывается деталь 2, 3 или 4.
Разрешая конфликт в пользу детали 2, получаем
, .
Отдавая предпочтение па первом станке детали 3, получаем расписание и его опенку в виде
, .
Разрешаем конфликт в пользу детали 4:
, .
3. Сопоставляем расписания , и их оценки с вершинами дерева, изображающего процесс ветвления всего множества вариантов расписания на подмножества (рисунок 1).
Рисунок 1
Из всех рассмотренных календарных расписаний выбираем такое , для которого
.
Поскольку наименьшей оценкой является , предпочтение к запуску на первом станке отдается детали l=1. Остальные m-1=3 детали продолжают конфликтовать па первом станке.
Четвертый шаг. В качестве исходного календарного расписания для дальнейших расчетов берем матрицу , на основе которой будем определять деталь, подлежащую запуску на нервом станке второй. Для этого построим календарные расписания в виде матриц , элементы которых находятся по правилу
Разрешая конфликты для каждой из т—1 оставшейся детали на первом станке, получим нижнюю границу для каждого расписания и выберем из всех расписаний то, для которого
.
Деталь k2 планируется к обработке второй. Выполним эти расчеты для нашего примера.
Разрешая конфликт для детали 2, построим для нее календарное расписание с учетом того, что деталь 1 уже назначена к обработке первой, и найдем его нижнюю границу. Получим
, .
Разрешаем конфликт в пользу детали 3:
, .
Разрешаем конфликт в пользу детали 4:
, .
Сопоставим полученные расписания и их оценки с вершинами дерева, разливаемыми из вершины (рисунок 1).
Так как оценки для всех вариантов одинаковы, безразлично, какой из деталей отдать предпочтение. Пусть деталь 2 планируется к запуску на первом станке второй.
Пятый шаг. Аналогичным образом определим деталь, запускаемую на первом станке третьей.
Разрешаем конфликт относительно детали 3:
, .
Разрешаем конфликт относительно детали 4:
, .
Сопоставляем полученные расписания и их оценки с вершинами дерева, развиваемыми из вершины (рисунок 1). Так как оценки, связанные с запуском на первом станке трех первых детален в очередности 1, 2, 3 или 1, 2, 4, одинаковы, безразлично, какой из них отдать предпочтение. Пусть выбрана первая из них, k3=3, тогда последовательность обработки деталей на первом станке будет 1, 2, 3, 4, с нижней границей, равной 38.
Шестой шаг. В результате предыдущих шагов получено календарное расписание и последовательность запуска партий деталей на первом станке .
Далее провернем и последовательно разрешаем конфликты на втором станке.
Детали 1, 2, 3, 4 планируются к обработке в интервалах времени соответственно (2—5), (6—15), (15—18),(17—36).
Следовательно, на втором станке деталь 2 запускается после детали I, а детали 3 и 4 конфликтуют.
Разрешим конфликт относительно детали 3.
Для этого на базе составим расписание, в котором элементы для данной детали и деталей, не участвующих в конфликте, остаются без изменения, а элементы и возрастают на величину задержки в поступлении детали 4 на второй станок, которая равна в данном случае разности — == 1. Получим расписание и оценку нижней границы:
, .
Разрешая конфликт в пользу детали 4, задерживаем подачу детали 3 ко второму станку на 36—15=21, в результате чего расписание и его оценка принимают вид
, .
Сопоставляя эти расписания и оценки с вершинами графа, развиваемыми из вершины , выбираем расписание , предусматривающее обработку на втором станке третьей по порядку детали 3.
Таким образом, на этом шаге упорядочена очередность запусков партий на втором станке в виде последовательности деталей 1. 2, 3, 4 с оценкой времени совокупного цикла .
Седьмой шаг. Отправляясь от расписания , проверяем наличие конфликтующих детален на третьем станке.
Детали 1, 2, 3, 4 планируются к обработке в интервалах времени соответственно (5—18), (15—26), (18—26),(37—38).
Конфликтуют три первые детали. Разрешаем конфликт в пользу детали 1:
, .
Разрешаем конфликт в пользу детали 2:
, .
Разрешаем конфликт в пользу детали 3:
, .