Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Постановка задачи теории расписаний как задачи частично-целочисленного линейного программирования




Задача Джонсона. Графики Ганта

Если порядок обработки деталей на станках одинаков, то такие задачи называются задачами Джонсона (по имени американского математика С.М. Джонсона, изучавшего такие задачи). В этих задачах, не уменьшая общности, предполагается, что порядок обработки каждой детали совпадает с естественной нумерацией станков. Среди задач Джонсона особая роль принадлежит задачам с двумя обслуживающими приборами (двумя станками), для которых Джонсон разработал эффективный алгоритм решения.

Пусть j=1,2,...,n - номера деталей, A(j) и B(j), соответственно, времена обработок детали с номером j на первом и втором станках, j=1,2,...,n.

Обозначим через x(j) - время простоя второго станка непосредственно перед началом обработки детали с номером j, j=1,2,...,n.

Тогда критерием оптимальности задачи Джонсона с двумя станками станет функционал

F(x) = x(j) min.

Нетрудно показать, расписание обработки деталей на станках задается перестановкой r натуральных чисел из множества {1,2,...,n}. Если r =(1,2,...,n), то x(1)=A(1), x(2)= max {A(1)+A(2) - B(1) - x(1), 0},...,

x(j) = max {A(1)+...+A(n) - B(1)-...-B(n-1),...,A(1)+...+A(j) - B(1)-...-B(j-1),...,

A(1)}.

Пусть r и q две перестановки

r =(1,2,...,n), q =(1,2,...,j-1,j+1,j,...,n).

Пусть F(r)<F(q). Тогда

max{A(1)+A(2)+...+A(j) - B(1)-B(2)-...-B(j-1), A(1)+A(2)+...+A(j+1) - B(1)-B(2)-...-B(j)}<max{A(1)+A(2)+...+A(j-1)+A(j+1) - B(1)-B(2)-...-(j-1), A(1)+A(2)+...+A(j+1) - B(1)-B(2)-... B(j-1)-B(j+1)}. (1)

Вычтем из левой и правой частей неравенства (1) величину A(1)+A(2)+...A(j+1) - B(1)-B(2)-...-B(j-1).

Получим, после несложных преобразований,

min{A(j+1), B(j)} > min{A(j), B(j+1)}. (2)

Отсюда работа j выполняется раньше работы j+1, если выполняется условие (2).

Выше доказанное позволяет сформулировать алгоритм Джонсона построения оптимального расписания выполнения работ на двух станках:

Шаг 1. Найти минимальную величину среди A(j) и B(j), j=1,2,...,n.

Шаг 2. Если минимум достигается на A(j), то деталь с номером j ставится на обработку самой первой, если на B(j), то деталь с номером j ставится на обработку последней, деталь с номером j исключается из рассмотрения, и процесс построения расписания продолжается с шага 1.

Построенные расписания наглядно отображаются с помощью так называемых графиков Ганта или Гант-карт.

График Ганта - это графическое отображения расписания, в котором каждому станку соответствует своя ось времени.

 

Как и в разделе 2.19. пусть i=1,2,...,m, - номера станков, j=1,2,...,n - номера деталей, R= r(i,j) - mn матрица технологических маршрутов, элемент которой r(i,j) - есть номер по порядку обработки детали с номером j на станке с номером i (элемент множества {1,2,...,m}), T = t(i,j) - mn матрица трудоемкостей, элемент которой t(i,j) - означает время выполнения работы с номером j на станке с номером i.

В качестве варьируемых параметров математической модели выберем:

X= x(i,j) - mn матрицу неизвестных, элемент которой x(i,j) означает время начала обработки детали с номером j на станке с номером i, i=1,2,...,m, j=1,2,...,n;

y(i,j,k)=1, если на станке с номером i деталь с номером j обрабатывается раньше детали с номером k,

y(i,j,k)=0, если на станке с номером i деталь с номером k обрабатывается раньше детали с номером j;

t - вспомогательная переменная, определяющая время завершения выполнения всех работ.

 

Ограничения математической модели.

x(i,j) - x(i,k) t(i,k) или k (i,k) - x(i,j) t(i,j), i=1,2,...,m, j=1,2,...,n. (1)

Одновременно на станке i не могут выполняться работы с номерами j и k.

 

x(i,j) - x(k,j) t(k,j), если r(k,j) < r(i,j), i,k=1,2,...,m, j=1,2,...,n. (2)

Деталь с номером j переходит на обработку следующий станок лишь после того, как она пройдет полную обработку на предшествующем по технологии станке.

 

x(i,j) + t(i,j) t. (3)

Общее время завершения выполнения всех работ не превышает величины t.

 

x(i,j) 0, i=1,2,...,m, j=1,2,...,n. (4)

Естественные ограничения на введенные переменные.

 

В построенной модели не формализованными являются условия (1).

Для формализации условий (1) введем параметр Q -достаточно большое число.

Тогда рассмотрим ограничения (1’):

(Q + t(i,k))y(i,j,k)+ x(i,j)- x(i,k) t(i,k), i=1,2,...,m, j=1,2,...,n, k=1,2,...,n, j k.

(Q + t(i,j))(1-y(i,j,k))+ x(i,k)- x(i,j) t(i,j), i=1,2,...,m, j=1,2,...,n, k=1,2,...,n, j k.

 

Покажем, что эти условия эквивалентны условиям (1):

- пусть x(i,j) = x(i,k),

тогда если y(i,j,k) = 1, то из (1’) получаем:

Q+t(i,k) + x(i,j) -x(i,k)= Q + t(i,k) t(i,k), что всегда верно,

x(i,k)- x(i,j) = 0 t(i,j), т.е. t(i,j) 0, т.е. t(i,j) = 0, а это означает, что деталь с номером i не проходит обработку на станке j,

если y(i,j,k) = 0, то t(i,k)=0, т.е. деталь с номером j не обрабатывается на станке i;

- пусть x(i,j) > x(i,k), т.е. деталь с номером j выполняется после детали k, т.е. y(i,j,k)= 0, тогда из условий (1’) получим x(i,j) - x(i,k) t(i,k), т.е. условия (1) выполняются;

- пусть x(i,j) < x(i,k), т.е. деталь с номером j выполняется раньше детали k, т.е. y(i,j,k)= 1, тогда из условий (1’) получим:

Q+x(i,j) x(i,k), что всегда верно,

x(i,k) - x(i,j) t(i,j), т.е. условия (1) выполняются.

Таким образом, математическая модель приобретает вид (1’), (2), (3), (4), и к ней добавляются естественные условия на переменные:

y(i,j,k) {0,1}, i=1,2,...,m, j=1,2,...,n, k=1,2,...,n. (5)

 

Постановка оптимизационной задачи.

В качестве критерия оптимальности выбирается функционал

F(t) = t min. (6)

Полученная задача (1’), (2) - (6) является задачей частично-целочисленного линейного программирования с числом ограничений M=mn(n+m-1)+1 и числом переменных N=mn(n+1)/2 +1.

 




Поделиться с друзьями:


Дата добавления: 2017-02-01; Просмотров: 98; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopediasu.com - Студопедия (2013 - 2026) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.