Текст
                    INDUSTRIAL SCHEDULING
edited by John F. Muth and Gerald L. Thompson
with the collaboration of Peter R. Winters
GRADUATE SCHOOL OF INDUSTRIAL ADMINISTRATION,
CARNEGIE INSTITUTE OF TECHNOLOGY
PRENTICE-HALL, INC., ENGLEWOOD CLIFFS
NEW JERSEY
1963


алендарное планирование составители Дж. Ф. МУТ и Дж. Л. ТОМПСОН в сотрудничестве с П. Р. ВИНТЕРСОМ Перевод с английского А. И. ГОМАНА, В. И. ПАВЛЮЧЕНКО, Л. М. ХИНЧИНА Общая редакция и предисловие В. В. ГОЛОВИНСКОГО ИЗДАТЕЛЬСТВО «ПРОГРЕСС» МОСКВА 1966
Книга представляет собою сборник отчетов о результатах исследовательских работ, выполненных в научных центрах и в промышленных корпорациях США с целью разработки и проверки методов оптимизации календарных планов (графиков) в цехах промышленных предприятий. Кроме того, сборник содержит несколько вводных статей, посвященных методу критического пути (сетевой метод) и общим вопросам оптимальной загрузки предприятий. Актуальность рассматриваемых проблем, их большое научное и практическое значение определяют интерес, который эта книга должна вызвать у инженерно-технических работников, экономистов-производственников, сотрудников научно-исследовательских институтов и других специалистов, изучающих применение математических методов в производстве. Редакция литературы по экономике
Вступительная статья Сборник принадлежит перу математиков и инженеров, работающих в высших учебных заведениях и в крупных промышленных корпорациях США. По своему содержанию главы сборника представляют преимущественно отчеты о результатах исследований, выполненных с целью оптимизации внутрицеховых оперативно-календарных планов и оптимизации правил текущего распределения работ. Нет надобности доказывать важность и своевременность темы сборника, в частности для работников советской промышленности, в то же время необходимо подчеркнуть большую сложность поднятых вопросов при попытке решить их на научном уровне. А именно на таком уровне они рассматриваются в сборнике. О сложности проблемы свидетельствует история ее разработки. Достаточно сказать, что первые неудачные и теперь забытые попытки оптимизации календарных планов математическими средствами имели место еще в 1911 г. (расчеты Бабкока). Но лишь в 1925 г. была опубликована ставшая знаменитой формула Ф. Г. Гарриса, определяющая оптимальную периодичность запуска изделий в производство («оптимальную партию»). Затем на протяжении почти тридцати лет прогресс в рассматриваемой области был ничтожен и движение шло по замкнутой кривой в том смысле, что формула Гарриса обрастала усложнениями, которые впоследствии отпали. Лишь к началу 50-х годов, когда к разработке методов «исследования операций» в промышленности уже были привлечены многочисленные математики, а широкое распространение электронной техники фантастически расширило вычислительные возможности, исследовательская работа по оптимизации календарных планов была развернута широким фронтом. Помимо обогащения старой модели «оптимальной партии», появились новые направления, в частности исследования, относящиеся к планированию последовательности работ (оптимальный график) и к очередности работ при текущем регулировании хода производства («оптимальное правило приоритетов») и пр. В ход был пущен арсенал новейших средств прикладной математики. Наряду с оригинальными решениями и классическими приемами анализа привлечены были такие заведомо эффективные в других областях математические средства, как линейное программирование, моделирование с применением процедуры Монте- 5
Карло, теория массового обслуживания. Тем не менее после первых обнадеживающих результатов (работа Джонсона) оказалось, что оптимизация календарных планов не относится к числу проблем, решаемых с помощью нескольких удачных находок, а требует длительных систематических усилий и очень большого объема экспериментальной работы. И такая работа вот уже десять лет ведется и в СССР и в QUA, причем, как это всегда бывает в трудных вопросах, эксперименты с негативными результатами и отвлеченные исследования преобладают над работами, завершенными практическим применением. Сказанное непосредственно относится к главам сборника, представляющим собою в значительной части отчеты об экспериментах, не давших эффективных результатов, и отвлеченные математические выкладки, не завершенные практически выполнимым алгоритмом. Это, однако, не исключает полезности сборника для советских математиков и инженеров, работающих над методами оптимизации оперативно-календарных планов. Прежде всего для них устраняется риск излишних экспериментов, уже выполненных в США с негативными результатами. Но не в этом главное; те из опубликованных в сборнике исследований, которые не были завершены практическими рекомендациями, тем не менее освещают вопрос с новых сторон и нередко открывают новые пути к его решению. Наряду со сказанным в пользу опубликования этой книги на русском языке говорит обилие и разнообразие описанных в ней методических приемов. Даже в тех случаях, когда в той или иной главе сборника модель производственных условий и избранный критерий оптимальности сомнительны для практических условий советской промышленности, методические подходы, описанные в такой главе, нередко сохраняют определенную ценность для реальной модели и действительного критерия эффективности. Глав с практическими рекомендациями в сборнике сравнительно немного, но они затрагивают существенные стороны организации производства, а предлагаемые в них методы достаточно универсальны. В целом можно надеяться, что перевод сборника будет содействовать совершенствованию и внедрению научно обоснованных методов построения оптимальных календарных планов на наших предприятиях. Переходя от общей характеристики сборника к его содержанию по существу, мы дополним введение редакторов американского издания Мута Д. и Томпсона Д. Л. несколькими замечаниями, полезными для советского читателя. В соответствии с замыслом составителей сборник действительно дает достаточно полное представление о важнейших результатах разработки проблемы оптимизации оперативно-календарного планирования в США, в то же время в нем намечены наиболее перспективные направления дальнейших исследований. 6
Больше всего места в книге предоставлено «оптимизации оперативного календарного плана в единичном и мелкосерийном производстве», а если говорить точнее,— разновидностям «задачи Джонсона», которая состоит в оптимизации (по календарному времени) последовательности запуска в производство п изделий, обрабатываемых на т операциях (станках) при условии, что исключается возможность одновременной обработки на одной и той же операции нескольких изделий. Такое внимание к этой теме в сборнике не случайно. По количеству статей в специальной периодической печати США, по размаху и разнообразию исследований она была и остается поныне на первом месте среди тем, возникающих в связи с оптимизацией календарных планов. Но объясняется это не общепризнанной экономической и производственной эффективностью постановки вопроса в «задаче Джонсона». Сборник даже и открывается статьей Паундса У. Ф. (см. гл. 1), из которой видна, что практические работники плановых отделов не находят смысла в критерии оптимальности Джонсона, и автор статьи полемизирует с ними путем отвлеченных рассуждений. Как правильно отмечалось в зарубежной периодике, популярность «задачи Джонсона» объясняется в действительности своеобразной историей ее разработки и непосредственным впечатлением о ее производственной применимости. Дело здесь в следующем: задача об оптимальной последовательности запуска п изделий на т станках была известна до Джонсона, но именно ему удалось в результате «изящных» (по общему признанию) и простых выкладок прийти к эффективному алгоритму расчета оптимального плана, но лишь для случая двух станков (см. статью Джонсона в сборнике — стр. 33, опубликованную впервые в 1956 г.). В результате создалось впечатление об очень высокой отдаче математических методов в связи с задачей Джонсона и возникло предположение, что дополнительные сложности при переходе к задаче с большим числом станков будут преодолены развитием существующего алгоритма и вводом в дело новых математических средств. Естественно, что такая, казалось бы, благодарная почва привлекла многих математиков. Однако быстро обнаружилось, что сложность задачи растет гораздо быстрее числа станков в ее условии и наличных математических средств недостаточно для ее точного решения при реальном числе станков на производстве. В результате были сделаны даже попытки предложить новые алгебры, облегчающие выбор оптимального плана (см. статью Гиффлера Б. на стр. 62 сборника). Много внимания уделено приспособлению для оптимизации календарного планирования аппарата линейного программирования, особенно в связи с тем, что с его помощью можно ввести дополнительные ограничения и обогатить условия «задачи Джонсона». Речь идет, в частности, о целочисленном программировании, разрабатываемом Гомори. Соответствующему способу решения задачи о последовательности обработки п изделий на т станках посвящены три из четырех статей третьего раздела сборника, 7
а именно: а) вступительная статья Мэна А. С. (стр. 222), б) статья Гомори Р. с изложением алгоритма целочисленного программирования (стр. 227) и в) статья Стори А. Е. и Вагнера X. М., содержащая результаты численного эксперимента с алгоритмом Гомори (стр. 241). Это направление пока не привело к практически приемлемым результатам из-за огромного объема вычислительной работы. По мере того как обнаруживались трудности точного математического решения задачи, возникал интерес, во-первых, к возможности точного решения за счет быстродействия вычислительной техники (полный перебор вариантов плана на электронно-вычислительной машине, иногда в сочетании с эвристическими правилами) и, во-вторых, к приблизительным решениям на базе выборочного метода с применением процедуры Монте-Карло. Сопоставления экспериментальных результатов в этих направлениях мы находим в статье Гиффлера Б., Томпсона Д. и Ван-Несса В. (стр. 42 сборника). Тут же можно упомянуть статью Фишера Г. и Томпсона Г. (стр. 260), интересную, как пишут сами авторы, только новыми идеями, выдвинутыми в ней (применение кибернетической схемы самообучающейся машины при направленном выборочном отборе вариантов плана). Задаче определения оптимальной по календарному времени последовательности обработки п изделий на т станках в сборнике посвящено 8 названных статей (из 22), причем только в статье Гиффлера Б., Томпсона Д. и Ван-Несса В. содержатся выводы и рекомендации, имеющие практическое значение. Остальные статьи представляют значительный методический интерес с точки зрения дальнейших исследований. На втором месте по числу статей в сборнике стоит тема, интерпретирующая некоторые существенные стороны текущего распределения работ в единичном и мелкосерийном производстве с помощью понятий и моделей теории массового обслуживания. Предполагается, что на каждом рабочем месте возникает система массового обслуживания с единственным каналом обслуживания в виде станка, с очередью, состоящей из ожидающих обработки изделий, и с дисциплиной очереди, сформулированной с помощью так называемого «правила приоритетов». Это правило определяет с помощью особого числа —«индекса приоритетов» — очередность обработки на станке ожидающих в очереди изделий. Задача возникает не на отдельном рабочем месте, а в цехе в целом, рассматриваемом как сеть очередей, или, точнее, как сеть систем массового обслуживания. И состоит задача в том, чтобы выбрать из многочисленных возможных правил приоритетов такое единое для всего цеха правило, которое обеспечивало бы желательное значение избранного критерия оптимальности (например, средней продолжительности производственного цикла, средней стоимости незавершенного производства и т. д.). 8
Известные модели теории массового обслуживания оказались непригодны для сети очередей, возникающих в цехе, а попытки развития их за счет, например, некоторых математических приемов из термодинамики, приводя к точному результату, оказались неприемлемыми по объему вычислительных работ. Это показано в статье Рейница (стр. 84 сборника). Так же как и задача оптимизации календарных планов, оптимизация правил приоритетов разрешается на основе выборочного метода (с использованием процедуры Монте-Карло), но на этот раз путем математического моделирования движения производства в цехе. Статья с отчетом о такого рода экспериментах принадлежит Конвею Р. У. и Максвеллу У. Л. (стр. 321 сборника). В этой статье авторы приходят к выводу, что оптимальным (с точки зрения введенных критериев) является правило приоритетов, обеспечивающее преимущество для изделий с наименьшей длительностью ожидаемой обработки на станке. В этой связи возник вопрос — в какой степени полученный вывод ослабляется неточностью данных о длительности при оптимизации планов. Этому вопросу посвящена статья Мута Д. (стр. 348 сборника). В отличие от Конвея Р. У. и Максвелла У. Л., опиравшихся при формулировке правил приоритетов на конкретные свойства отдельных изделий, Джексон, пользуясь теми же методами математического моделирования, исследует правила приоритетов, отражающие заданные нормативные сроки готовности (стр. 357 сборника), а Хоулт Ч. С. пытается увязать «локальную» оптимизацию очередности работ у станков с общими («глобальными») для цеха и завода критериями эффективности (стр. 109). Особое место занимает статья Аллена, который опять-таки, пользуясь математическим моделированием, рассматривает правила приоритетов не для системы в установившемся состоянии (как это сделано в остальных статьях), а в условиях свертывания производства и в условиях перегрузки цеха. Кроме того, подход Аллена М. имеет и другие особенности. В частности, он ставит вопрос не только о наиболее выгодном правиле приоритетов, но и о возможностях маневра технологическим маршрутом и специализацией рабочей силы, меняющего условия распределения работ в цехе (стр. 291 сборника). Всего, таким образом, правилам приоритетов для сети очередей в цехе с единичным и мелкосерийным производством в сборнике посвящено шесть статей. Все они, не считая статьи Рейница и, быть может, Мута, имеют то или иное прикладное значение. Две статьи сборника посвящены вопросу оптимальной периодичности запуска изделий в обработку в условиях массового производства и равномерного их расходования. В обеих статьях эта задача отличается от задачи Гарриса (см. стр. 5 предисловия) тем, что оптимальная периодичность или (что здесь то же самое) оптимальный размер партии запуска изделий в производство определяются не изолированно для отдельных позиций номенклатуры, а с учетом тех ограничений, которые накладываются общими для завода и цеха 9
условиями. В первой из этих статей — в статье Винтерса П. Р.— введены ограничения, исходя из оптимального объема производства для каждого из последовательных периодов (стр. 142 сборника), а в статье Дзелинского Б. П., Бейкера К. Т. и Мэна А. С. ограничения связаны с производственными возможностями оборудования и численностью рабочей силы (стр. 184). Итак, 16 названных статей трактуют вопрос оптимизации календарных планов и распределения работ, группируясь вокруг трех тем: а) «задачи Джонсона», б) оптимизации правил приоритетов и в) оптимальной периодичности запуска изделий в производство. Остальные статьи стоят несколько особняком. В трех из них (последняя часть сборника) отдана дань времени в виде общего изложения способа сетевого планирования («метод критического пути»). И еще три статьи имеют между собой и остальными статьями сборника только то общее, что затрагивают вопросы оптимальных решений. В одной из них, написанной Бауменом Е. Г. (стр. 125), изложен метод оптимизации решений об объеме производства с использованием усредненных (линией регрессии) параметров прошлых решений. В статье Баховцева К. и Корригана Д. описан так называемый метод средних затрат при определении оптимальной загрузки генераторов электростанции (стр. 205) и в статье Ишлера К. Г., Шарпа Р. М. ц Стейли В. рассматривается метод выбора оптимального пути продукта для комплекса предприятий добывающей и обрабатывающей промышленности с заданным районированием сбыта <стр. 193). Таковы в общих чертах содержание статей сборника, тематическая их взаимосвязь и классификация. Так как сборник вышел в свет еще в 1962 г., естественно, возникает вопрос об актуальности его содержания в настоящее время. По этому поводу надо прежде всего сказать, что разработка основных направлений, связанных с проблемой оптимизации календарных планов и освещенных в сборнике, интенсивно продолжается, о чем свидетельствует ряд публикаций в 1963—1965 гг. В частности, по вопросам оптимизации календарных планов в единичном и мелкосерийном производстве («задача Джонсона») пишут1 Sisson R. L. (обзорная статья) в 1963 г. [23], Dudek R. А., Teuton О. F. в 1964 г. [15], Estman W. L. и Even S., Jsaacs J. M. в 1964 г. [16], Giglio В. J. и Wagner Н. М. в 1964 г. [19] и др. По вопросу оптимизации правил приоритетов появились статьи Avi Itzhak В., Maxwell L. W., Miller L. W. в 1965 г. [14], Foster F. Q. в 1964 г. [171 и др. На тему, связанную с «оптимальной партией», находим статью Gapp W., Maneker P. S., Mitton L. Q. в 1965 г. [18]. Все эти статьи непосредственно продолжают те линии исследований, которые нашли отражение в сборнике. Таким образом, материалы сборника можно рассматривать не только как итог 1 См. библиографию на стр. 456. ю
исследований, но и как своего рода введение в обильную литературу сегодняшнего дня. Надо добавить, что со времени появления сборника не опубликовано работ, коренным образом меняющих положение в области оптимизации календарного планирования. Поэтому основные выводы большинства статей сборника сохраняют силу. На кого же рассчитан сборник в СССР? В основном сборник предназначен для специалистов по организации производства и работников вычислительных центров на крупных заводах и в фирмах, для аспирантов и частично для студентов тех вузов, которые готовят экономистов нового профиля, для математиков, экономистов и инженеров, занятых исследовательской работой в смежных областях и желающих получить общее представление об успехах и перспективах в решении проблемы оптимизации внутрицеховых календарных планов. Для облегчения понимания текста сборника в конце данного издания помещено приложение, в котором приведена общая концепция оптимизации календарных планов математическими методами, разъяснены связанные с ней основные понятия и их конкретизация к каждой из тем сборника. В необходимых случаях сделаны критические замечания с точки зрения применимости введенных в сборник понятий и принципов для реальных условий советской промышленности. Кроме того, в-том же приложении указаны общие руководства по математическим дисциплинам, рекомендуемые по каждой теме сборника, и даны разъяснения об особенностях перевода специальных терминов. Читателям, не изучавшим ранее вопросы, затронутые в сборнике, рекомендуем прочесть приложение до того, как перейти к тексту сборника. В, Головинский
Предисловие За последние годы значительно возрос интерес к проблемам календарного производственного планирования как с практической, так и с исследовательской точек зрения. Подобные проблемы, разумеется, существуют с момента организации первого предприятия, на котором было больше одного рабочего или одного станка. В связи с тем, что решение таких проблем вручную оказалось невозможным, в последнее время делаются попытки использовать в этих целях электронно-вычислительные машины. 10—12 мая 1961 г. в Высшей школе подготовки администраторов для промышленности при Технологическом институте Карнеги состоялась конференция по внутризаводскому календарному планированию. Конференция была организована Высшей школой подготовки администраторов для промышленности, Управлением научно-исследовательских работ военно-морского флота США и Управлением судоходства. В конференции участвовали почти 50 представителей различных промышленных и научных центров, которые заслушали 14 докладов. Большинство из представленных на конференции докладов вошло в настоящую книгу; дополнительно включен ряд работ на ту же тему, которые привлекли наше внимание позднее. Таким образом, мы считаем, что эта книга включает статьи, типичные для большинства современных методов решения рассматриваемой задачи. Вместе с тем книга является введением к теме и одновременно отчетом о состоянии проблемы в настоящее время. Библиография, приведенная в конце книги, может служить указателем литературы для лиц, проявляющих особый интерес к данному предмету. 13
Редакторам хотелось бы выразить свою благодарность всем авторам отдельных работ, разрешившим включить их в настоящую книгу. Нам также хотелось бы поблагодарить указанные выше организации за помощь в работе конференции и в последующей подготовке книги. Мы во многом обязаны проф. П. Р. Винтерсу, который помог в организации работы конференции и в предварительном планировании содержания книги. Выражаем также благодарность Б. Контини, Г. К. Гроффу, Ф. К. Леви и Д. Д. Уисту за их помощь в рецензировании докладов. Нам хотелось бы также поблагодарить миссис Д. Гудхарт за помощь в составлении плана конференции и мисс Б. Роупер за содействие в подготовке рукописи. Д. Ф. Мут Д. Л. Томпсон
Введение Управление раздробленными операциями в крупных промышленных фирмах в последнее время стало предметом фундаментальных исследований. Важным аспектом управления в промышленности является четкое решение вопроса об использовании производственного оборудования в каждый момент времени. При выработке такого решения необходимо учитывать ряд факторов, как-то: наличие ресурсов, издержки, связанные с реализацией решений, установленные сроки и т. д. Именно такого рода принятие решений мы называем «календарным планированием». Проблематика календарного планирования резко различается от фирмы к фирме. В некоторых случаях производственный процесс состоит из серии операций, выполняемых на одном рабочем месте над изделием, состоящим из единственного предмета. Но случается, что технологический процесс обработки каждой из многих тысяч составных частей изделия требует применения рабочих самых различных квалификаций и оборудования многих типов. Бывает, что для удовлетворения потребительского спроса необходимо содержать товарные запасы, а иногда такие запасы невозможны при любых обстоятельствах. Структура той или иной фирмы имеет свои неповторимые черты (в отношении условий сбыта, производственных возможностей и т. д.). Вследствие разнообразия и сложности проблемы календарного планирования было бы нерационально при всяком отдельном исследовании учитывать каждый фактор. Поэтому было взято несколько упрощенных схем исследования. В докладах, составивших настоящую книгу, рассматриваются сочетания следующих трех таких схем: Календарное планирование в единичном и мелкосерийном производстве. Предполагается, что завод состоит из некоторого числа обрабатывающих центров, различных по своим производственным возможностям. В некоторых случаях допускается дублирование оборудования. Имеется перечень изделий, подлежащих изготовлению. Технологический маршрут каждого изделия соответствует следующей элементарной последовательности: первая операция должна заканчиваться до начала второй и т. д. в порядке перечня. Для выполнения каждой из этих операций назначен определенный станок по возможности с указанием даты окончания обработки 15
каждого изделия. Как надо запланировать обработку на станках таким образом, чтобы: а) по возможности выдержать назначенные сроки, или б) сократить до минимума календарное время изготовления всех изделий, или в) оптимизировать некоторую другую функцию, избранную в качестве критерия? Управление товарными запасами. Предполагается, что изделия хранятся на складе, прежде чем они будут проданы потребителю. Спрос на продукцию, издержки по ее изготовлению и цены, по которым она будет сбываться, могут быть известны или неизвестны. При каких условиях необходимо изготовить новую партию изделий и какой должна быть ее величина? Снова возникает вопрос оптимизации некоторой функции, принятой в качестве критерия. Календарное планирование выполнения сложных проектов. Необходимо выполнить проект, охватывающий большое число отдельных работ. Каждая из работ имеет ряд непосредственно ей предшествующих, которые должны быть завершены до ее начала. Таким образом, некоторые пары работ могут выполняться одновременно, в то время как другие — последовательно. Как можно организовать работу по выполнению проекта, чтобы выдержать заданные сроки, если это возможно? Часть V настоящей книги посвящена проблеме планирования выполнения сложных проектов. Основным средством планирования здесь является «анализ критического пути» в сетевом графике проекта. В большинстве остальных статей книги обсуждается проблема календарного планирования единичного и мелкосерийного производства, хотя в докладах, включенных в часть II, подчеркнуты определенные стороны проблемы регулирования запасов готовых изделий. Поскольку главное внимание в этой книге уделяется проблеме календарного планирования в единичном и мелкосерийном производстве, здесь необходимо рассмотреть ее более подробно. ПРОБЛЕМА КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ В ЕДИНИЧНОМ И МЕЛКОСЕРИЙНОМ ПРОИЗВОДСТВЕ К современным методам, используемым для решения задачи календарного планирования в единичном и мелкосерийном производстве, относятся следующие: правила распределения работ, эвристические правила, целочисленное линейное программирование, полный перебор, кибернетическая схема самообучающейся машины. Кратко рассмотрим каждый из них г. Правила распределения работ. Как это обычно понимается при обсуждении вопроса, правила распределения работ рассчитаны 1 О более полном обзоре исследования (вплоть до I960 г.) см. [9]. 16
на ту осведомленность, которой располагает рабочий, выбирая первоочередное изделие из числа изделий, ожидающих обработки перед его станком. Оператор может выбрать для обработки изделие, поступившее первым, или то, которое он мог бы обработать быстрее других, или требующее для своего завершения максимального числа операций. Он может даже просто применить случайный отбор изделия из числа ожидающих обработки. Некоторые из этих способов выбора «на глазок» как, например, последнее правило, могут быть совершенно неудовлетворительными; другие же, например выбор изделия, требующего минимального времени обработки, могут иметь вполне удовлетворительные характеристики в большинстве случаев. Многие из этих правил были сопоставлены при помощи математического моделирования на электронно-вычислительных машинах. В материалах, включенных в часть IV настоящей книги, в основном рассматриваются такие сравнения. Эвристические правила. Другим подходом к решению проблемы является разработка методик, которые воспроизводят или превосходят применяемые «квалифицированными» плановиками. В связи с эвристическими правилами понятие квалификации или опыта имеет тот же смысл, что и класс шахматиста или мастера по какому- либо другому виду спорта. Правила распределения работ можно рассматривать как эвристические, в которых проявлено не очень много квалификации. Полагаем, что работа в этом направлении открывает хорошие перспективы для будущих исследований; однако практических применений этих исследований в планировании пока нет. Впрочем, в гл. 16 изложены результаты, прокладывающие дорогу для исследований в этом направлении, а в [ 11] Ф. Тонге рассматривает другое исследование по тому же вопросу. У. Гере в своей диссертации разработал эвристический подход к программе календарного планирования единичного и мелкосерийного производства. Целочисленное линейное программирование. Опубликованы три формулировки проблемы календарного планирования в единичном и мелкосерийном производстве как задачи целочисленного линейного программирования, принадлежащие Е. Г. Баумену[1], X. М. Вагнеру [12] и А. С. Мэну [8] (см. также гл. 12). Не вдаваясь в подробное описание этих формулировок, упомянем лишь оценки масштабов результирующих вычислений в каждом из этих случаев. Баумен считает, что формулирование элементарной проблемы для трех изделий и четырех станков приводит к задаче целочисленного программирования, содержащей от 300 до 600 переменных и значительно большее число ограничений. Задача, сформулированная Вагнером, характеризуется такими же масштабами. Формулировка Мэна — наиболее компактная из всех трех,— очевидно, потребует 31 переменную и 94 ограничений. Последняя формулировка, по всей вероятности, может привести к решению в течение приемлемого 17
времени при помощи существующих вычислительных машин. Тем не менее следует подчеркнуть, что при решении задачи целочисленного линейного программирования дополнительные ограничения вводятся в процессе ее решения и в результате окончательное число ограничений будет значительно больше. Ни один из указанных авторов не утверждает, что его формулировка имеет практическое значение (в гл. 14 сообщается об опыте вычислений по формулировке Вагнера). Но все эти формулировки представляют теоретический интерес с точки зрения дальнейших исследований. Особенности применений целочисленного линейного программирования являются предметом изложения части III настоящей книги. Полный перебор. Другим подходом к задаче, дающим с гарантией оптимальный ответ, является полный перебор, исследованный Б. Гиффлером и Г. Л. Томпсоном [5]. Разработка алгоритма для полного перебора всех «действительных» календарных планов — их первая работа (под действительным календарным планом они понимают допустимый (возможный) план со следующими свойствами: а) нет свободных станков за период времени, достаточный для обработки изделия, ожидающего этой работы в течение того же периода, и б) как только изделие назначено к обработке, последняя начинается в самый ранний срок (как только освобождаются станок и изделие). В упомянутом простом примере Баумена показано, что имеется возможность в течение нескольких минут перечислить все пять допустимых действительных планов с девятью линиями вычислений. Более сложные задачи создают много больше допустимых действительных планов и требуют пропорционально больше времени для обсчета. Дальнейшее обсуждение задачи перебора дано в гл. 3. Другой подход к полному перебору допустимых планов рассмотрен Д. Геллером [7]. Он исследовал задачу на построение планов с иной точки зрения, чем это сделал Гантт. Выборочные методы. Был также проверен вариант-Монте-Карло программы Гиффлера — Томпсона, связанный с выборкой из совокупности допустимых действительных планов. Этот вариант не гарантирует нахождения оптимального плана, но все же позволяет провести быстрое вычисление довольно большого числа случайно отобранных допустимых планов, кратчайший из которых может быть использован. Продолжая этот процесс в течение длительного времени, можно добиться, в зависимости от желания, минимальной вероятности того, что оптимальный график не изучен; следует, конечно, принимать во внимание стоимость вычислительных операций. Программа Монте-Карло при просмотре только нескольких вариантов допустимых графиков дает результаты, всего лишь соответствующие результатам работы квалифицированного плановика. Эта программа выгодно отличается от многих обычно используемых правил распределения работ, причем она лучше их для решения одних задач и хуже для других (см. гл. 3). 18
Д. Геллер и Г. Логеман [6] описывают вариант Монте-Карло в применении к их методу полного перебора. Они также рассматривают его применение вместе с правилами загрузки. Обучающие методы. Правила распределения работ и эвристические правила приводят только к умеренным результатам в случаях их раздельного применения, причем успех меняется от одного вида задач к другому. В связи с этим, по-видимому, желательно испытать для каждой из заданных задач эти правила как отдельно, так и совместно и посмотреть, какая комбинация дает лучшие результаты. В гл. 15 X. Фишер и Г. Л. Томпсон рассматривают вероятностную обучающую схему построения комбинаций правил распределения работ. Результаты моделирования показывают, что такая вероятностная комбинация значительно лучше, чем любое правило, взятое в отдельности. Эти результаты также показывают, что такое обучение возможно, однако с большой затратой времени, и оно пока что не очень превосходит случайную комбинацию правил без обучения. ЗАКЛЮЧЕНИЕ Ясно, что полный перебор практически невыполним и еще не разработана модель целочисленного линейного программирования, выполнимая в части практических вычислений. При возможном усовершенствовании вычислительных методов для целочисленных программ можно надеяться, что в этом направлении будет достигнут существенный прогресс. Работы по созданию приближенных или экспертных вычислительных методов решения задач календарного планирования с помощью эвристических правил, процедуры Монте-Карло, «обучающих» схем или их сочетаний являются в настоящее время весьма перспективными. Первое практическое применение методик календарного планирования, по всей вероятности, будет связано с использованием этих методов. 2*
ЧАСТЬ I Структура задач календарного планирования Главы этой части книги относятся в основном к изучению некоторых путей определения календарных планов, являющихся в известном смысле оптимальными, и, кроме того, в них заложены основы для дальнейших разработок. Хотя эти главы совершенно различны по своим подходам, все они отличаются общим направлением в характеристике задачи внутризаводского календарного планирования. В гл. 1 «Организационно-производственные условия календарного планирования» У. Ф. Паундс ставит два вида вопросов: 1) В каком смысле календарное планирование продвижения изделий через центры обработки является задачей руководителя предприятия? 2) Какие шаги должны быть предприняты при внедрении фирмой новой системы планирования с тем, чтобы были реализованы ее потенциальные выгоды? Паундс доказывает, что задача календарного планирования исчезает из поля зрения во многих фирмах по той причине, что те отделы, которые не занимаются планированием, принимают на себя многие из отрицательных результатов плохого выполнения этой функции. Они выговаривают у потребителей чрезмерно длительные сроки поставок готовой продукции или допускают слишком большие капиталовложения в оборудование. В итоге большая часть улучшений в результате различных усовершенствований планирования видна не в отделе планирования фирмы, а в других ее подразделениях. Наряду с другими конкретными рекомендациями Паундс делает вывод, что такая взаимозависимость должна приниматься во внимание, если делаются попытки внедрения промышленной фирмой новой системы планирования. 21
Гл. 2 «Оптимальные двух- и трехоперационные календарные планы производства», автором которой является С. М. Джонсон, носит совсем другой характер. Она является одной из первых математических работ по календарному планированию в единичном и мелкосерийном производстве, и ее результаты просты и эффективны. Проблема, рассматриваемая Джонсоном, заключается в следующем: п изделий должны пройти через одну операцию, потом они проходят через вторую. Для каждой операции имеется только один станок; в установленное время на станке можно обрабатывать не более одной детали. В какой последовательности должны обрабатываться изделия на станках, чтобы сократилось до минимума время обработки всех п изделий? Приведя целый ряд теорем относительно структуры оптимального решения, Джонсон представляет «рабочие правила» для вычисления оптимального календарного плана обработки произвольно выбранных изделий. Результаты работы были в некоторой степени обобщены (см. [1], [3] и [2]). Более общая задача связана с планированием обработки п изделий на т станках, причем изделия передаются на станки не обязательно в вышеуказанном порядке. Даже для 6 изделий и 6 станков количество возможных допустимых действительных планов является невероятно большим. Тем не менее некоторые из полных совокупностей планов были перебраны Б. Гиффлером, Д. Томпсоном и В. Ван-Нессе, а результаты были обобщены в их работе «Опыт вычислений с применением линейного алгоритма и алгоритма Монте-Карло для решения задач календарного'планирования на производстве» (см. гл. 3). Полный перебор сравнивается также с выборкой из генеральной совокупности. Выборочный метод не позволяет отбирать каждый план с равной вероятностью, но при равных трудоемкостях работ дает возможность чаще выбирать «короткие» планы. Этот полезный результат при разных трудоемкостях работ, к сожалению, не всегда имеет место. Имея в виду содействие будущим исследованиям в области анализа календарных планов, Б. Г. Гиффлер в статье «Алгебры календарного планирования и их применение при формулировке моделей общих систем» (гл. 4) построил две алгебры, в понятиях которых можно выразить определенные задачи календарного планирования. Соотношения последовательности операций для изделий вместе с длительностями операций приводят к определению переменных на множествах, на которых определены абстрактные «сложение» и «умножение». Множества этих переменных могут быть взяты как элементы матриц, имеющих свойства, аналогичные обычным матрицам. Эти алгебраические методы затем были исследованы применительно к двум основным видам задач: 1) таких; решения которых заложены в исходные данные (например, требуется найти время начала работ, для которых заданы очередность и длительность), и 2) таких, в которых порядок выполнения различных работ не задается полностью заранее, но должен быть определен правилами планирования. В гл. 5 и 6 используются результаты теории массового обслуживания как основы для календарного планирования запуска работы, выполняемой вслед за тем, как на станке будет окончена предыдущая работа. (Для полного ознакомления с теорией массового обслуживания следует обратиться к работам Морзе [4] и Саати [5].) 22
В гл. 5 «Задача календарного планирования в цехе единичного и мелкосерийного производства» цех рассматривается как совокупность отдельных центров машинной обработки, каждый из которых пропускает поток изделий. Операции отдельного центра и очередь незавершенных работ перед ним описываются марковским процессом. Две задачи рассматриваются в пределах отдельного центра машинной обработки: 1) расчет среднего времени ожидания изделий при заданном порядке очередности и 2) использование метода динамического программирования для определения порядка очередности, оптимального в том отношении, что он обеспечивает минимальное математическое ожидание запасов, подготовительно-заключительного времени и издержек, связанных с невыполнением сроков поставки продукции потребителям. После этого был рассмотрен вопрос определения времени завершения работ и сроков поставки продукции для цеха в целом. Аналогичный раздел задачи планирования рассматривается Ч. С. Хоул- том в гл. 6 «Правила приоритетов, минимизирующие затраты из-за задержек изделий в очередях при календарном планировании станочных работ». Целью первой части анализа является определение времени начала работы и ожидаемых длительностей задержки в очередях по каждому изделию для минимизации издержек на хранение запасов и пени за опоздания поставок. Предположено, что между средним временем ожидания изделий в очередях перед станком и его средней загрузкой существует определенная зависимость и затем формулируются три правила приоритетов, регулирующие последовательность обработки изделий на станке. Первое правило составлено в соответствии с анализом для завода в целом, в то время как в двух других приняты в расчет также издержки, связанные с простоем станка.
ГЛАВА 1 Организационно-производственные условия календарного планирования У. Ф. ПАУНДС* В условиях промышленного предприятия календарное планирование производства является комплексной задачей, связывающей такие отличные друг от друга элементы организации, как сбыт, регулирование цен, закупки, управление финансами предприятия и многие другие. В связи с этим представляется, что при любом обсуждении задачи внутризаводского календарного планирования заслуживают рассмотрения не только трудности, свойственные самой этой задаче, но и смежные организационно-производственные условия, в которых она решается. Когда речь идет о разработке новых систем внутризаводского календарного планирования, особенно важно принять в расчет те смежные организационно-производственные условия, к которым они будут приспособлены, а также изменения в самих этих условиях, которые могут произойти и потребоваться в связи с введением новых систем планирования. 1. СУЩЕСТВО ЗАДАЧИ Большинство технологических процессов состоит из нескольких операций, превращающих относительно сырой материал в сравнительно готовую продукцию. Определение существа превращений сырья на каждой из этих операций относится к области технологии, однако задачу определения последовательности операций можно лишь частично рассматривать как технологическую. Речь идет о том, что не исключены случаи, когда можно определить множество операций, выполнение которых после данной операции с технологической точки зрения одинаково допустимо. В таких случаях можно определить подмножество технологически осуществимых последовательностей, предпочтительных в соответствии с некото- 1 Работает в Массачусетском технологическом институте. 24
рым (возможно, экономическим) критерием. Задача по выявлению этих предпочтительных последовательностей именуется в дальнейшем «задачей построения последовательностей». В некоторых производственных условиях задача построения последовательностей может быть решена раз и навсегда. Например, специальный станок может быть сконструирован для выполнения серии операций в порядке предпочтительной последовательности для производства какого-либо изделия. Если это изделие окажется удовлетворительным, то такое же решение задачи последовательностей можно неоднократно применять при производстве любого количества идентичных изделий. В этом случае предпочтительная последовательность обработки по каждому изделию не будет зависеть от всех других изделий. Но во многих других производственных условиях такое решение невозможно, так как предпочтительная последовательность операций по одному изделию может быть функцией последовательности операций, выбранной для другого или, возможно, многих других изделий. В подобном случае для того, чтобы определить предпочтительную последовательность для каждого отдельного изделия, обычно бывает необходимо определить ее одновременно для всех изделий. В результате задача построения последовательностей может стать значительной по объему и сложности. Например, рассмотрим следующую относительно простую задачу построения последовательностей. Необходимо изготовить пять изделий, причем каждое требует выполнения одной операции на каждом из пяти различных станков. Затраты времени на выполнение каждой станочной операции по каждому изделию точно известны и не зависят от последовательности станок — изделие. Критерий для любой из возможных последовательностей определяется так, что предпочтительной считается такая последовательность, при которой общая продолжительность изготовления всех пяти изделий минимальна. В этой простой задаче насчитывается около 25 млрд. последовательностей работ, и все эти последовательности надо оценить прежде, чем будет найдена одна предпочтительная. Если бы каждую последовательность можно было составить и оценить в течение одной секунды (ощутимый объем работы даже для быстродействующей вычислительной машины), то при круглосуточной работе потребовалось бы почти восемь столетий для того, чтобы решить эту задачу с помощью прямых методов. Сравнительно с приведенным простым примером масштаб и сложность задачи еще более возрастают при ее постановке применительно к условиям типичного завода, и именно эта фантастически трудная задача по определению оптимальных последовательностей привлекает значительное внимание в теоретическом отношении. Более того, проблема управления предприятием не исчерпывается определением предпочтительных последовательностей работ, 25
выполняемых на данном оборудовании. К ней относится, кроме того, и совместное решение таких вопросов, как установление ассортимента выпускаемых изделий, выбор^ закупаемых и монтируемых станков, определение численности рабочей силы и т. д. На любое из таких решений влияет оптимальная последовательность операций (и наоборот). Таким образом, задача внутризаводского планирования намного сложнее, чем даже фантастически трудная задача определения последовательности. Точно так же, как и задачи определения оптимальной последовательности, задачи календарного планирования варьируют от относительно простых до очень сложных. Как и следовало ожидать, задачи календарного планирования сравнительно просты при условии устойчивого спроса, идентичности выпускаемых изделий, постоянного времени обработки и при независимости последовательности выполнения работ. С другой стороны, эти задачи усложняются при неустойчивом спросе, большом разнообразии спецификаций на изделия, случайных колебаниях времени обработки и жесткой взаимосвязи предпочтительной последовательности обработки изделий. Термин «задача календарного планирования единичного и мелкосерийного производства» применяется для обозначения сложного поиска предельного варианта плана в бесконечном множестве этих вариантов. Большинство современных работ по совершенствованию систем календарного планирования направлено на решение задач такого типа. 2. СУЩЕСТВУЮЩИЕ МЕТОДЫ РЕШЕНИЯ Здесь наша цель заключается не в том, чтобы комментировать детали этих систем календарного планирования, а в том, чтобы рассмотреть определенные характерные особенности смежных организационно-производственных функций, к которым эти системы должны быть приспособлены. Мое обучение календарному планированию с этой точки зрения началось несколько лет назад выездами на различные заводы обрабатывающей промышленности. Я надеялся, что, окунувшись в заводскую обстановку, тут же представлю себе реальную сущность задач единичного и мелкосерийного производства и что с таким пониманием вопроса мне удастся затем приступить к решению задачи календарного планирования. Сказать, что мои усилия оказались безуспешными,— было бы, пожалуй, преуменьшением. Если я чего-нибудь достиг в результате этих экскурсий, то убеждения, что в задаче календарного планирования для меня не все ясно. Так как я теперь полагаю, что это обстоятельство имеет большое значение, попытаюсь описать причину моего замешательства. 26
При всех посещениях заводов я делал так, чтобы проводить почти все свое время с человеком, ответственным на предприятии за детальную разработку очередности выполнения производственных заказов. Это казалось мне разумным, поскольку речь шла о человеке, который ежедневно так или иначе имеет дело с безграничной сложностью организационных вопросов индивидуального и мелкосерийного производства,— о человеке, который мог бы сообщить все, что мне надо было узнать. Поэтому, не очень отклоняясь от истины, можно сказать, что при встрече с этим человеком я заявлял о своем желании обсудить с ним его очень сложную задачу планирования единичного и мелкосерийного производства. Всякий раз меня спрашивали с некоторым недоумением: «Что это такое — задача планирования единичного и мелкосерийного производства?» Несмотря на мои объяснения, варьировавшие от задачи такого календарного планирования п изделий на т станках, при котором суммарное время обработки было бы наименьшим, включая «количество запаздывающих поставок» до «задачи своевременной выдачи заказов или обеспечения занятости персонала», он никогда не мог признать в моем определении решаемой им задачи. Он показывал мне записи, из которых было видно во всех деталях, что он фактически обеспечивает выполнение всех обещанных поставок; он показывал мне и другие записи, свидетельствовавшие о точном контроле издержек, но не было случая, чтобы на каком-либо из заводов такой человек допустил существование задачи календарного планирования в том или ином ее виде. И вот, как уже сказано, то обстоятельство, что мне не удалось добиться какого-либо признания существования задачи календарного планирования со стороны лиц, занимающихся их решением, обескуражило меня. Но теперь я могу заявить, что объяснение найдено. Задачу календарного планирования единичного и мелкосерийного производства не признает большая часть заводских плановиков, так как именно для них в большинстве случаев календарное планирование не составляет никакого вопроса. Объясняется это тем, что окружающие плановиков организационно-производственные условия предохраняют их от необходимости решать задачи оптимальной последовательности обработки в условиях тесной взаимозависимости решений для различных изделий. Рассмотрим завод, выпускающий красители по спецификациям заказчиков, причем последние в основном в свою очередь поставляют продукцию на рынок. Это предприятие обеспечивает выполнение отделочных работ на самых различных заводах — от производства игрушек и резиновых мячей до автомобилей. На языке бизнесменов в производстве красителей это предприятие выпускает отделочные материалы. С точки зрения планирования оно является заводом единичного и мелкосерийного производства. 27
Заказы поступают в его систему планирования через многие каналы — по телефону, телеграфу, по почте или путем личного контакта с теми или иными из многочисленных клиентов. Были разработаны нормы времени отставания поставок от заказов, применяемые для расчета сроков и при определении обязательств по поставкам. Если заказчик согласен получать свою продукцию в более поздние сроки, чем это предусматривается нормативами отставания поставок, то такая просьба безоговорочно удовлетворяется. Если заказчик изредка просит выполнить заказ раньше установленной нормы, такая просьба тоже обычно удовлетворяется. Если же такие требования со стороны заказчика становятся обычными, завод начинает сопротивляться им, а в некоторых случаях может даже отказаться от заказа. Завод не имеет точной оценки затрат на быстрое обслуживание. Фактически эта цифра, конечно, не постоянна, и зависит она от других выполняемых в данное время работ. Тем не менее быстрота обслуживания чего-то стоит и одним из ее следствий при этом является задача планирования, возникающая вследствие наличия заказов с высоким приоритетом. Поэтому, сопротивляясь требованиям быстрого обслуживания, отдел сбыта оберегает функцию календарного планирования от задачи календарного планирования. Существуют и другие способы защиты функции планирования. Ежедневно составляется рапорт о всех особо срочных заказах (то -есть выполняемых как можно быстрее) или опаздывающих заказах (то есть с просроченными поставками). Такой рапорт проходит через отдел сбыта и производственный отдел. В силу того, что этот список служит напоминанием о приоритете заказов, он становится основанием для принятия ряда таких решений в отделе сбыта и производственном отделе, которые стабилизируют и упрощают задачу календарного планирования. При слишком большом списке, например если в нем больше десяти наименований, отдел сбыта начинает сопротивляться сделкам со срочной поставкой. Это ведет к облегчению процесса календарного планирования; кроме того, если складывается впечатление, что список растет, производственный отдел может начать разрешать сверхурочную работу или даже заняться вопросом увеличения численности рабочей силы. Эти меры также облегчают календарное планирование и обеспечивают сроки поставки продукции. В крайнем случае, когда прирост рабочей силы сказывается на повышении определенных переменных издержек, руководство предприятия, предполагая, что не хватает наличного оборудования, может либо установить дополнительное оборудование, либо запланировать многосменную работу. Хотя упомянутая система планирования не предлагается как образец оптимального управления заводом, последний может, исполь- 28
зуя эту систему, добиться хороших показателей в обслуживании заказчиков и по своим издержкам производства остаться на конкурентоспособном уровне. Рассматривая основные элементы этой системы, необходимо учесть следующее. Среднее время отставания поставки от заказа определяется в соответствии с рыночными условиями по усмотрению службы сбыта. При наличии отклонения от этого норматива, корректирующие действия осуществляют оба отдела — сбыта и производственный. Предполагается, что это не затрагивает календарного планирования, лишь бы оно было настолько согласованным, чтобы можно было предвидеть влияние на поставки действий, осуществляемых другими службами. При этом не возникает задач календарного планирования, сложных с точки зрения вычислений, поскольку те ограничения, которые могли бы привести к их возникновению, устраняются как только они начинают действовать. После того, как я до некоторой степени уяснил такую систему, я пришел к выводу, что, по-видимому, все плановики, с кем я ранее беседовал, были правы. По крайней мере для них не существует задачи планирования единичного и мелкосерийного производства. Такое же явление наблюдалось и на заводе тяжелого машиностроения. Было обнаружено, что запущенные в обработку детали пролеживали в очередях до 30 рабочих дней и тем не менее все работы выполнялись в соответствии с календарным планом и даже опережали его. В приведенном примере также нет задачи планирования. При переговорах с заказчиками, очевидно, руководство этой фирмы было в состоянии установить такие сроки поставок, чтобы в дальнейшем иметь возможность значительно выравнивать ход производства за счет длинных очередей, увеличивающих остатки незавершенного производства. В данном случае уделяется больше внимания снижению издержек на рабочую силу и капитальным затратам, чем срочному исполнению заказов. Современное состояние календарного планирования, по-видимому, можно кратко охарактеризовать следующим образом. До тех пор пока система календарного планирования в отношении затрат и поставок удовлетворяет установленным независимо от нее нормативам по рабочей силе и (или) производственному оборудованию, осуществляемые вне этой системы «избирательные» функции могут в результате «обучения»г приспособиться к выполнению требований, обусловливающих прибыль. Значение системы календарного планирования следует в общем рассматривать в связи с этим механизмом обратной связи. 1 «Избирательные» функции и «обучение»— в данном смысле кибернетические термины — см. приложение.— Прим. ред. 29
3. ПЕРСПЕКТИВЫ По этому пункту в ходе дискуссии делались попытки доказать, что подчиненных жестким ограничениям задач календарного планирования единичного и мелкосерийного производства не существует на современном заводе, так как они не разрешимы с помощью наличных методов планирования. В действительности их возникновение с очевидностью предотвращается в результате решений по стабилизации хода производства, принимаемых в различных подразделениях заводской организации. Но допустим на минуту, что усилия, прилагаемые в настоящее время к решению задачи, увенчались успехом и оптимальное решение этой задачи опубликовано. Допустим далее, что мы принимаем это решение и передаем его в заводской отдел планирования. Какова будет эффективность этого решения? Если то, что я сказал, верно, то вообще не будет никакой эффективности. Ввиду того что задачи внутризаводского календарного планирования в настоящее время в сущности тривиальны, их очевидные решения уже соответствуют оптимуму или очень близки к нему. Следовательно, новые и более эффективные аналитические методы, если и принесут, то лишь небольшую пользу той фирме, которая попытается их использовать. Это отнюдь не означает, что подобные методы решения не имеют практической ценности. Если подразделения фирмы, которые в настоящее время регулируют лимитирующие факторы с целью устранения трудностей календарного планирования, могли бы усвоить, что следует исходить не из существующих ограничений в возможностях календарного планирования, а из тех новых возможностей, которые заложены в более эффективных методах, тогда и только тогда можно достигнуть положительных результатов. Я полагаю, что именно это обстоятельство имеет решающее значение и его легко можно упустить из виду при абстрактном подходе к проблемам календарного планирования. Выгоды, которые фирма может получить от применения лучших алгоритмов в планировании, не будут результатом изменений в одной лишь области планирования. Если не будет изменен общий характер решений в таких областях, как финансирование, регулирование затрат на рабочую силу, регулирование численности персонала, сбыта, обслуживания заказчиков, то не исключено, что новая методика календарного планирования нигде не даст экономии и, сверх того, возможно, принесет больше вреда, чем пользы, несмотря на ее очень реальную потенциальную эффективность. Вред, который может быть нанесен вследствие неполного внедрения какой-либо системы планирования, стал для меня совершенно ясен несколько лет назад, когда я имел возможность наблюдать эффективность внедрения системы календарного планирования, 30
когда мало или ничего не было сделано для того, чтобы отрегулировать или приспособить смежные организационно-производственные функции применительно к новой системе. Не вдаваясь в подробности, связанные с внедрением этой системы, кратко расскажем о некоторых замеченных недостатках и их результатах. 1. Не была разработана система текущего управления, гарантирующая применение правила, положенного в основу календарного планирования. В результате спустя три года после внедрения правила, несмотря на радужные доклады о результатах внедрения системы, на заводе нельзя было обнаружить ни одного решения, принятого на основании этого правила. 2. Не было попыток включить в заводскую смету затраты, на которых базируются решения в соответствии с правилом планирования. В результате это правило и смета противоречили друг другу при решении одних и тех же вопросов. Частично в этом была причина игнорирования правила. 3. Не было попыток создать систему пересмотра и переоценки исходных данных системы планирования. В результате именно этим объясняли невыполнение правила планирования, когда в действительности исходные данные не были неудовлетворительными. 4. Не была создана система оценки степени эффективности правила планирования. В результате спустя три года после его внедрения руководство фирмы все еще не могло решить, улучшило ли или ухудшило новое правило работу завода. Если позволить себе биологическую аналогию, можно сказать, что новая система напоминает процесс мутации в среде, где развились существующие системы. Маловероятно, что эти новые виды смогут уцелеть, если не изменится среда их развития. Новый «вид» может погибнуть сам или быть убитым по ряду причин. 1. Новую систему планирования могут игнорировать. В связи с этим вместе с ее внедрением следует установить постоянный порядок наблюдения и получения информации о ней. 2. Другие решения могут ограничивать ее эффективность. В связи с этим должны быть разработаны те или иные ориентировочные указания и нормативы в отношении функций, внешних для планирования и подверженных изменению (таких, как политика сбыта, регулирование финансов и рабочей силы), с тем чтобы использовать выгоды новой системы. Эти нормативы не легко разработать. 3. Следует установить те или иные способы оценки эффектив-' ности новых систем, чтобы обосновать продолжение их использования в дальнейшем. 4. Следует разработать меры по уточнению, изменению и поддержанию системы, чтобы сохранить ее действенность. Указанные четыре пункта соответствуют минимальным требо- ваниям^ обеспечивающим выживание новой системы планирования в любых организационных условиях. Я опасаюсь, что любая попыт- 31
ка внедрить новую систему без этих предосторожностей почти несомненно потерпит неудачу. В дополнение к указанным внутренним опасностям наш «мутант»— новая система должна также успешно конкурировать с системами планирования других фирм, так как именно здесь новая система даст фирме реальные выгоды. С моей точки зрения, ответственность за выживание новых систем календарного планирования должны делить между собой те, кто разрабатывает, и те, кто предполагает их применить. Проектировщики должны не только информировать тех, кому предстоит использовать эти системы, о необходимых вспомогательных нормативах, но и настойчиво требовать их разработки, так как без них внедрение любой новой системы календарного планирования почти неизбежно потерпит неудачу. Подобным образом те, кто предполагает использовать новую систему, должны признать необходимость и действительно внедрять связанные с ней существенные изменения в организации завода за пределами функции планирования. В противном случае их новая система не только откажет в работе, но может быть хуже уже действующей системы календарного планирования.
ГЛАВА 2 Оптимальные двух- и трехоперационные календарные планы производства с учетом подготовительно-заключительного времени С. М. ДЖОНСОН* 1. ДВУХОПЕРАЦИОННЫЙ КАЛЕНДАРНЫЙ ПЛАН Рассмотрим типичную многооперационную задачу, сформулированную Р. Беллманом следующим образом: «Имеется п изделий, которые должны пройти обработку сначала на одной операции (на одном станке), а затем — на второй. Каждую операцию можно выполнить только на одном станке. Одновременно на станке может обрабатываться только одно изделие. Возьмем 2 п констант At и Bt, i — 1, 2, ..., п. Все они положительны, а в других отношениях произвольны. Пусть At — сумма подготовительно-заключительного и оперативного времени для /-го изделия на первом станке, a Bt — на втором. Ищем оптимальный вариант плана запуска изделий в производство, имея в виду минимизировать суммарную календарную длительность их обработки». Существует простое правило выбора решения, позволяющее составить в данном случае оптимальный календарный план с минимальной календарной длительностью выполнения всей совокупности намечаемых работ. Например, с помощью этого правила можно визуально установить оптимальный порядок обработки двадцати изделий примерно за пять минут. Во втором разделе эта задача рассматривается также применительно к трехоперационному процессу обработки и дается решение для некоторых частных случаев. Лемма 1. Последовательность запуска изделий в производство на любом станке может быть изменена так, что она совпадет с последовательностью на другом станке, без увеличения времени выполнения плана. Доказательство. По шкале времени разместим трудоемкости операций А и В таким образом, чтобы график удовлетворял исход- 1 Сотрудник «Рэнд корпорейшн». 3 Заказ № 195
ным условиям, то есть чтобы начало любого Bj было справа от конца соответствующего ему Aj. Если последовательности запуска изделий на обоих станках различны, неупорядоченные элементы расположатся примерно следующим образом *: Aj Ак Aj Bj Вк В[ Рис. 1. В таком случае, не увеличивая общую календарную длительность обработки, можно установить на первой операции ту же последовательность обрабатываемых изделий, как и на второй операции, путем последовательной взаимозамены, начиная слева, расположенных друг за другом неупорядоченных изделий. Соответственно устанавливается на второй операции тот же порядок запуска, что и на первой. Далее, так как последовательности запуска теперь одинаковы, мы можем начать обработку каждого изделия сразу после окончания обработки предыдущего, с тем чтобы минимизировать общее время обработки. Таким образом, на первой операции задержки не возникают. Обозначения. Пусть Хг — время простоя второго станка непосредственно перед тем, как i-oe изделие поступает на этот станок. Если, например, мы рассматриваем последовательность S = 1, 2, 3, . . . , я, то для каждого станка получим такие графики. Aj А^ A3 А4 х. Bf Хг &2 Xf Bj Х^ 84 Рис. 2. Имеем: Х\ = А\, X2 = max(Ai + A2-Bi-Xu 0), Xi + X2 = max(Ai + A2 — Ви A{), 3 2 2 1 1 i 1 Под элементами подразумеваются длительности отдельных операций; неупорядоченными (out of order) названы изделия, чередование которых на первом станке не соответствует чередованию на втором.— Прим. ред. 34
3 3 2 2 2 Xt = max (S At - 2 fl„2 *;) = l lit 3 2*2 = max B 4-2^2^-^, A,). t l l Вообще n 2 *j = max Km 1 i^u^n где u u—1 Ku=S4-2 в,. Пусть F(S)= max /Ctt. Найдем последовательность «S* такую, что F (S*)^F (So) для любого S0. Решение задачи. Рассмотрим последовательность S', образованную взаимозаменой / и / + 1-х изделий в последовательности 5; тогда F(S')= max*:;, где w u—1 /с; =2 л;- 2 « г=1 г=1 И А\ = Аи В'г = Ви для i=?/\ / + 1, Л; = Лу + 1, Bj = Sj + 1, Л;+1 = Л/, В;+1 = Д/. Откуда Ки = Ки, если и=^=/, /41. Таким образом F (S') = F (S), исключая возможный случай, когда max (/С/, Kj+i) Ф max (K'j, /Сж). Теорема 1. Оптимальная последовательность достигается применением следующего правила. Изделие / предшествует изделию / + 1, если max (/С/, Kj+iX max (/CJ, /CJ+i)- @ Если имеет место равенство, любая последовательность является оптимальной при условии, что она совместима с точно определенной последовательностью других изделий (см. случай 4, лемма 2). 3* 35
ж ж При вычитании 2 At — 2 В* из обеих частей неравенства A) последнее принимает вид max ( — By, — Л,+1)<тах( — Bj+i, — Л,) или тт(Л7-, Вж)<тт(Л;-+1, В7). B) Такое упорядочение транзитивно (доказательство следует) и поэтому приводит к единственной последовательности 5*, не считая некоторых индифферентных элементов. Отсюда следует, что F (S*) < F E0) для любой последовательности S0, поскольку 5* может быть получена из S0 путем ряда взаимозамен следующих друг за другом изделий в соответствии с неравенством B). В результате каждой взаимозамены получается значение Ft меньше или равное предыдущему. Лемма 2. Отношение B) транзитивно. Предположим, что min (А ь В2Хтт(Л2, ВО и min (А2, В3)<т1п(Л3, В2). Тогда тт(Ль B3)<min (Л3, В4), за исключением случая, когда изделие 2 индифферентно по отношению к изделиям 1 и 3. Доказательство. Случай 1. Л!<В2, Л2, В4 и Л2<В3, Л3, В2. Тогда Л!<Л2<Л3 и Ai^CBi, и поэтому Л1<тш(Л3, В4). Случай 2. B2<i4i, A2, В{ и В3<Л2, Л3, В2. Тогда Вз*СВ2<В1 и В3<Л3? и поэтому В3<гшп(Л3, В^. Случай 3. Л!<В2, Л2, Bi и В3<Л2, Л3, В2. Тогда ^^Bj и В3<Л3, и поэтому min(i4b В3)<тт(Л3, В^. Случай 4. В2<ЛЬ Л2, В4 и Л2<В3, Л3, В2. В случае 4 Л2 = В2 и изделие 2 индифферентно по отношению к изделиям 1 и 3. В этом случае изделие 1 может предшествовать изделию 3 или идти после него, но это не противоречит транзитивности, если сначала запланировать запуск изделий 1 и 3, а затем —где угодно —ввести в график изделие 2. Соотношение B) дает в высшей степени простой практический способ упорядочения последовательности изделий за п шагов. Практическое правило. 1. Записать Л и В в две колонки i 1 2 п \ А А2 An Bi Bt Вг Вп 36
2. Просмотреть все продолжительности обработки и найти среди них наименьшую. 3. Если она относится к первому станку (то есть это Л*), расположить соответствующее изделие первым. 4. Если она относится ко второму станку (то есть это 5f), расположить соответствующее изделие последним. 5. Вычеркнуть строку, относящуюся к этому изделию. 6. Повторить эти шаги в отношении оставшейся группы из Bп — 2) величин и т. д. Таким образом, мы двигаемся с обоих концов к середине. 7. Если попадаются равные числа, то для определенности изделие с меньшим нижним индексом располагается первым. В случае равенства At и Bt порядок изделий устанавливается в соответствии с А. Для иллюстрации метода приводится следующий, несколько утрированный пример. 1 2 3 4 5 Аг 4 4 30 6 2 Bi 5 1 4 30 3 Правило дает оптимальную последовательность E, 1, 4, 3, 2). Общее время задержек для этой последовательности составляет четыре единицы времени, суммарная затрата календарного времени равна 47 единицам. Если изменить порядок изделий на обратный, общий промежуток календарного времени составит 78 единиц, что является наихудшим вариантом. 2. ТРЕХОПЕРАЦИОННЫЙ КАЛЕНДАРНЫЙ ПЛАН Для трех различных станков или операций (на каждом из станков одновременно обрабатывается не более одного изделия) задача уже не столь проста, как для двухоперационного случая. Задача, однако, формулируется и для определенных случаев, когда min Ai>max Bj или minCi>max Bj находится общее решение, аналогично двухоперационной задаче. Лемма 3. Оптимальная последовательность может быть достигнута, если принять одинаковый порядок обработки заданных п изделий на каждом станке. 37
Доказательство. В соответствии с леммой 1 на первом и третьем станках может быть установлена такая же последовательность, как и на втором станке; таким образом, последовательность одинакова для первых двух и для последних двух станков. Тем самым лемма доказана. Для четырех и более операций оптимальное планирование может потребовать изменения в последовательности изделий. Рассмотрим два изделия, проходящие четыре операции с периодами времени, указанными ниже: i 1 2 Ai 3 3 *i 3 1 ci 3 1 Di со со Можно убедиться, что оптимальный план в данном случае требует изменения в последовательности передачи со второй операции на третью. Таким образом, общее решение становится очень сложным. Обозначения. Пусть Ai9 Biy Xt будут определены, как в двухоперационной задаче. Пусть Ct равно сумме подготовительно-заключительного и оперативного времени i-ro изделия на третьем станке. Пусть Yi равно времени простоя третьего станка, непосредственно перед запуском /-го изделия на третьем станке. Рассмотрим графики для каждого станка: Имеем Y^X. + B^Ai + Bu yn = max(SB; + SXf-n2 С*-^ К,, 0). 38
Таким образом, Пусть Тогда п п п— 1 п п— 1 1 1111 = тахBВ*--?2 С, + 2Хь 1 1 1 ' п— 1 п—2 п—1 2 ?*-2 G+2X». ....fii+Xi). 1 1 1 V V—l Я^З^-SCf, 0=1, 2, ..., л 1 1 u u— 1 /Cu = S^i— 2 5ь и = 1, 2, ..., л, как и прежде. 2^i= max (#0 + max/Cu) = max (Hv + Ku). 1 l^u^u^n l^u^w^n Как и раньше, поменяем местами изделия / и / + 1. Тогда значения Н и К останутся неизменными, за исключением, возможно, тех, которые имеют индексы / и / + 1. Теперь сравним max(//,+1+ /СИ, 1<и</+1; Hj + Кш 1<и</) с max(#;•+! +/Си, 1<и</ + 1; Hj + K'u, 1<м</). Заметим, что в этих выражениях встречаются уже не только индексы / и / + 1, и поэтому для решения не безразлично, что предшествует элементам, заменяющим друг друга. 3. ЧАСТНЫЙ СЛУЧАЙ, КОГДА MIN4*>MAXtf/ Здесь max Ки = Kv, и поэтому число членов в сравниваемых и ^ v выражениях меньше. Теперь правило заключается в том, что изделие / предшествует изделию / + 1, если max(#j+1+/0+1, Hj + Kj)<max(H-+i + Kj+u Щ + Kj). C) В случае равенства место индифферентных изделий в последовательности приводится в соответствие с последовательностью, установленной на основании неравенств. 39
Вычитая 5+i i-l i+i i-i 2 4-2 ft+2ft-2-Ci i i i i из обеих частей неравенства C), получим max( — Bj — Cj, —Bj+i — Aj+i)<max( — BM — Cj+u — Bj — Aj) или min(Aj + Bj, Cj+i + BHi)<min(Aj+i + Bj+u Cj + Bj). D) Лемма 4. Отношение D) транзитивно. Доказательство. Доказательство такое же, как и для леммы 2. Опираясь на ранее изложенную аргументацию и применив наше правило, можно добиться оптимальной последовательности путем взаимной перестановки смежных элементов любой последовательности. Итак, получим теорему 2. Теорема 2. Если min At>max Ви 1</<л, то оптимальный трехоперационный календарный план получается по следующему правилу: Изделие i предшествует изделию /, если min(Ai+Biy Cj + Bj)<mm(Aj + Bj, С, + Д,). Если имеет место равенство, оба изделия индифферентны и допустимо любое их размещение, совместимое с последовательностью, установленной на основании неравенств. Как и в случае с двумя операциями, имеется простое практическое правило, обеспечивающее быстрое получение оптимального календарного плана. Здесь Аг заменено Af^-Bt, a Bj заменено Bj + С j. Следует заметить, что такие же результаты получаются, когда min Ct>max Bjt Есть еще один частный случай, когда правило построения двух- операционного плана при выборе последовательности обработки на первых двух операциях трехоперационного процесса дает ту же последовательность, что и на последних двух операциях. Тогда такая последовательность для трехоперационного процесса будет оптимальной. Задачу трехоперационного процесса можно сформулировать и таким образом: заметим, что п max (Ku + Hv+ S Ct) есть максимальная сумма пройденных элементов на всех тех «путях» через матрицу трудоемкостей, которые соединяют верхний левый угол с нижним правым, если каждый шаг направлен вправо или 40
вниз. Задача состоит в том, чтобы найти календарный план обработки изделий, минимизирующий «максимальный путь». Такая интерпретация полезна при вычислениях в задаче с трех- операционным процессом, но она не может быть перенесена на случай четырех и более операций. Как указывалось выше, в задаче с более чем тремя операциями оптимальная последовательность не всегда одинакова на всех операциях. Однако как практическое правило можно принять для всех операций одинаковую последовательность, воспользовавшись затем схемой «максимального пути» для того, чтобы сократить количество планов, из числа которых должен быть выбран оптимальный. Примечание автора. С тех пор как была написана эта работа A953 г.), данная проблема получила дальнейшее развитие и обобщение в работах ряда авторов 1. 1 См. например, S. M. Johnson, Discussion. Sequencing in Jobs on Two Machines with Arbitrary Time Lags, Management Science, 5, 3 (April 1959).
ГЛАВА 3 Опыт вычислений с применением линейного алгоритма и алгоритма Монте-Карло для решения задач календарного планирования на производстве Б. ГИФФЛЕР, Д. ТОМПСОН, В. ВАН-НЕССЕ i В ранее опубликованной статье первыми двумя авторами [ 1] были разработаны алгоритмы для перебора допустимых действительных планов. Эти алгоритмы были запрограммированы для вычислительной машины (ИБМ-704), и был накоплен значительный опыт их применения,- которым мы хотим поделиться здесь. Основная цель наших вычислений заключалась не в решении отдельных вопросов, а скорее в том, чтобы экспериментально выяснить, насколько трудна комбинаторная задача. J. НЕЧИСЛЕННАЯ ПРОГРАММА ПОЛНОГО ПЕРЕБОРА Первая программа была составлена для нечисленного линейного алгоритма (в котором время на выполнение любой операции равно единице) и разрешала любые возникающие конфликты. Это достигалось путем построения всех возможных перестановок во всех очередях перед станками и фактической проверки этих перестановок. Другими словами, программа предусматривала исследование всего «дерева» действительных 2 планов. У нас не было сомнений в том, что трудность комбинаторной задачи, представленной алгоритмом полного перебора, будет очень >быстро возрастать, и опыт применения этого алгоритма полностью подтвердил наши предположения. Размеры комбинаторной задачи особенно поразительны, если иметь в виду тот факт, что мы ограничили наши исследования множеством действительных допустимых планов, значительно меньшим, чем множество всех допустимых планов. Необъятность задачи календарного планирования в вычислительном отношении хорошо иллюстрируется приведенными ниже зада- Работают в «Интернешнл бизнес мэшинз корпорейшн». Определение см. на стр. 17. 42
чами 6x6, которые были в числе первых, охваченных экспериментом. Эти задачи календарного планирования обозначены как «задачи 6x6», поскольку в каждой из них шесть изделий обрабатываются на одной и более из шести единиц оборудования. На табл. 1 показана матрица очередности оборудования при обработке изделий для случая, когда каждое изделие обрабатывается на каждой единице оборудования. Таблица 1 Матрица очередности оборудования 1 2 3 4 5 6 /3 1 2 4 6 5"> 2 3 5 6 14 3 4 6 12 5 2 13 4 5 6 3 2 5 6 14 \2 4 6 1 5 3J Матрица очередности оборудования (см. табл. 1) использована для формулировки ряда задач, обозначенных как 6x6*1, 6x6* 2, . . ., 6x6* 6. Первая из этих задач была получена в предположении, что каждое изделие изготовляется путем выполнения одной операции на единице оборудования, указанной в столбце 1 табл. 1. Аналогично вторая задача была получена при допущении, что каждое изделие изготовляется путем выполнения двух операций на единицах оборудования, указанных в столбцах 1 и 2 и т. д. Как и следовало ожидать, число действительных планов в каждой из этих задач возрастало очень быстро. Фактическое число действительных планов для этих задач дано в табл. 2. По понятным причинам мы не пытались полностью перебрать планы для задачи 6x6*6. Таблица 2 Задача 6X6*1 6X6*2 6x6*3 6x6*4 6x6*5 Количество действительных планов 36 290 914 7 546 84 802 Время, мин. 0,00 0,09 0,48 4,82 70,18 43
Заметим, что для случая 6x6* 5 комбинаторная задача определяется исходными данными, включающими 30 целых чисел, каждое между 1 и 6, а возникающая отсюда задача заняла вычислительную машину в течение 70 мин.; в результате было получено 84 802 допустимых действительных плана. При . рассмотрении некоторых из разработанных планов приблизительно установлено, что на каждый допустимый действительный план приходится 100 допустимых недействительных, эквивалентных в смысле [1]. Следовательно, общее количество допустимых планов для задачи 6x6*5 приблизительно равно 8 млн. Еще один пример того, как при вычислениях мы «уперлись в стену», получен для задачи 10x10*4, которую мы запустили с исходными данными, содержащими 40 целых чисел, каждое от 1 до 10. По этой задаче вычислительная машина выдала 112 783 допустимых действительных плана в течение 75,1 минуты, не закончив перебора. Мы считаем, что полный перебор занял бы еще 2 часа. Поскольку было найдено чрезмерно большое количество допустимых действительных планов даже для таких тривиально малых задач, как вышеупомянутые, мы быстро пришли к выводу, что необходимо воспользоваться методом Монте-Карло, то есть сделать выборку из совокупности допустимых действительных планов. Для выполнения этого решения была составлена программа; полученные результаты рассматриваются в следующем разделе. 2. АЛГОРИТМ МОНТЕ-КАРЛО ДЛЯ НЕЧИСЛЕННОГО СЛУЧАЯ В то время как алгоритмом полного перебора конфликты разрешаются всеми возможными способами, в алгоритме Монте-Карло для этого применяется случайный отбор возможных решений. Таким образом, при построении плана имеется большое число случайных решений, вырабатываемых для каждой конфликтной позиции. Как увидим, это не то же самое, что случайная выборка с равной вероятностью из совокупности всех допустимых действительных планов. Поскольку мы хотели выявить идею, заложенную в расчеты комбинаторной задачи, с помощью вычислительной машины производились выборки, состоящие из 200, 500 или 1000 допустимых действительных планов; при этом фиксировалась продолжительность выполнения каждого плана. Затем печаталось выборочное распределение длительностей выполнения планов вместе с немногими наиболее короткими из числа найденных планов. Сравнивая выборочные распределения с действительным, полученным при помощи линейного алгоритма полного перебора в тех случаях, когда сравнение было возможно, мы немедленно заметили, что короткие планы имели большую вероятность в распределении 44
Монте-Карло, чем в действительном. Мы назвали этот результат «коэффициентом усиления». Коэффициент усиления возник потому, что короткие планы имеют в среднем меньше конфликтов, нуждающихся в разрешении, чем длительные. В алгоритме Монте-Карло конфликт разрешался яа случайной основе, поэтому вероятность получения конкретного плана приблизительно обратно пропорциональна количеству разрешенных конфликтов, имевшихся в нем. Следовательно, длительные планы, имеющие большее число конфликтов, требующих разрешения, менее вероятны, чем короткие. К сожалению, коэффициент усиления не обязательно сохраняется в численном случае, поскольку длительность плана здесь не всегда зависит от числа конфликтов, нуждающихся в разрешении для получения этого плана. Другое указание о размерах комбинаторной задачи содержится в данных табл. 3. Мы выбрали три задачи, для которых наблюденная вероятность получения кратчайших планов была очень мала, и для каждой задачи мы нашли большое количество допустимых действительных планов, зафиксировав в каждом случае кратчайшие планы. Несмотря на то, что использованный выборочный процесс соответствует возвратной выборке, следует отметить, что наибольшее количество пар совпадающих планов наблюдается в случае 6x6, несколько меньше в случае 7x7 и совершенно отсутствует в случае 10 Х 10* 8. Из этого и других фактов мы делаем заключение, что совокупность действительных оптимальных планов, даже если она составляет очень малую часть совокупности всех допустимых действительных планов, с увеличением размера задачи должна возрастать очень быстро. Таблица 3 Эксперимент бхб 7X7 10x10*8 Число полученных действительных планов 5000 5000 3000 Наблюденная вероятность наиболее короткого плана 0,008 0,007 0,009 Число полученных наиболее коротких планов 40 34 28 Число пар 3 тройки, 7 двоек 5 двоек Нет пар Для демонстрации эффективности метода Монте-Карло как вычислительного средства рассмотрим этот способ как процесс биномиальных испытаний \ в котором либо получаем оптимальный план с постоянной, но неизвестной вероятностью, либо не получаем его. Если р есть вероятность благоприятного исхода, то 1 — р — 1 Речь идет о схеме Бернулли с биномиальным распределением часто- етей благоприятного исхода испытания.-— Прим. ред. 45
вероятность неблагоприятного исхода, а 1 — A — р)п — вероятность получения оптимального плана при п испытаниях. Табл. 4 показывает, каким образом изменяются эти вероятности в зависимости от величины р и п. Как видно из табл.*4, если вероятность получения оптимального плана в отдельном испытании равна 0,1, то при 50 испытаниях вероятность того, что появится по меньшей мере один такой план, составляет 0,995, а при 1000 испытаниях эта вероятность достигнет практической достоверности. Однако при вероятности оптимального плана, равной 0,02, для получения его с надежностью 0,95 надо отобрать от 100 до 200 планов. С уменьшением вероятности оптимального плана для того, чтобы обеспечить разумную уверенность в том, что он встретится в выборке, необходимо все больше увеличивать объем последней. Отсюда мы видим, что процедура Монте-Карло действительно является приближенным вычислительным методом. Если затраты на вычисления определены, то вероятность получения ответов при различных допущениях можно подсчитать на основании табл.4. Обнадеживает то, что при вероятности возникновения события, равной 0,2 и более, метод Монте-Карло обеспечивает с надежностью 0,98 появление не менее одного события в выборке, полученной в результате всего только 200 испытаний. Исходя из нашего опыта, время, необходимое для обсчета 200 планов, составляет всего лишь несколько минут для задач, включающих до 2000 операций. Таблица 4 N. П 0,100 0,050 0,020 0,010 0,005 0,002 0,001 10 0,651322 0,401263 0,182927 0,095618 0,048890 0,019821 0,009955 25 0,928210 0,722610 0,396535 0,222179 0,117780 0,048818 0,024702 50 0,994846 0,923055 0,635830 0,394994 0,221687 0,095253 0,048794 75 0,999630 0,978656 0,780236 0,529413 0,313357 0,139421 0,072291 100 0,999973 0,994079 0,867380 0,633968 0,394230 0,181433 0,095208 200 1,000000 1,999965 0,982412 0,866020 0,633042 0,329948 0,181351 500 1,000000 1,000000 0,999959 0,993430 0,918428 0,632489 0,393621 Юии 1,000000 1,000000 1,000000 0,999957 0,993346 0,864935 0,632305 3. ДАННЫЕ ПО НЕЧИСЛЕННЫМ ЭКСПЕРИМЕНТАМ МОНТЕ-КАРЛО Данные по нечисленным экспериментам Монте-Карло суммированы в приложении 2. Из этого приложения следуют три вывода: 1. При сравнении приведенных здесь данных с результатами полного перебора, приведенными в приложении 1, обращает на себя внимание коэффициент усиления для случая Монте-Карло, по- 46
вышающий вероятность коротких планов и уменьшающий вероятность длительных. Результаты можно видеть в табл. 5, в которой сравниваются эксперименты по задаче 6x6. Смысл коэффициента усиления был пояснен в разделе 2. Таблица 5 Эксперимент 6X6*2 6X6*3 6X6*4 6X6*5 Минимальная длительность 4 6 7 8 Вероятность при полном переборе 0,145 0,488 0,117 0,011 Вероятность при процедуре Монте-Карло 0,314 0,633 0,406 0,136 2. Широта рассеяния, то есть разность между временем выполнения самого длительного плана и временем выполнения самого короткого из найденных планов, только один раз превысила 10 и для достаточно большого размера задач она была приблизительно постоянна на уровне восемь или девять. 3. Время выполнения фиксированного числа экспериментов колебалось приблизительно в линейной зависимости от «размера» задачи. Это наблюдение можно уточнить следующими двумя замечаниями: а) Время выполнения изменялось примерно в линейной зависимости от площади задачи, то есть от А = т-п. б) Время выполнения изменялось примерно в линейной зависимости от объема задачи, то есть от V = m-n-L, где L — длина (или ожидаемая длина) задачи. Выводы 2 и 3 рассмотрим более подробно. Вывод 2 противоречит интуиции, поскольку с увеличением размера задачи более логично ожидать, что наихудшие из найденных планов будут намного хуже, чем лучшие из них. Тем не менее, как показывают приведенные данные, это не так. Значение установленного этим выводом факта заключается в том, что он обусловливает равноценное применение метода Монте-Карло как в отношении задач большого размера, так и малого, поскольку распределения вероятностей длительности полученных планов в обоих случаях одинаковы. Между прочим, форма распределения для нечисленного случая имеет вид колоколообразной кривой, усеченной справа и слева, что показано на рис. 4. Как видно из данных приложения 2, кратчайший план в редких случаях является наиболее вероятным. Обычно наиболее вероятный план только на 3 или 4 единицы времени продолжительней самого короткого. Благодаря коэффициенту усиления вероятность полу- 47
чить очень длительные планы практически сводится к нулю, а вероятность выработать короткие планы возрастает. Этот коэффициент можно рассматривать как причину того, что широта рассеяния мала. Малая широта рассеяния внушает опасения в том смысле, что по мере увеличения размера задач практически любой метод выбора даст план, не очень далекий от оптимального. Мы увидим, однако, что в численном случае постоянство широты рассеяния уже не наблюдается и, следовательно, вторая часть этого заключения отпадает. Длительность плана Рис. 4. Что касается вывода 3, то его легче всего сделать на основании графиков приложения 3, на которых время в минутах нанесено точками в зависимости от произведения mn, именуемого в дальнейшем «площадью данных». Эта «площадь» представляет собой количество чисел в использованной матрице последовательности оборудования. Прямые линии на обеих диаграммах хорошо совпали со всеми наблюденными точками, кроме двух исключений — в отношении задач 100x10* 10 и 200x10*10. Однако заметим, что в этих случаях каждое изделие обрабатывалось на каждой единице оборудования, что привело к двум результатам: во-первых, время на расчет одного плана сильно возросло, так как минимальная длительность этого времени здесь, очевидно, близка к т\ во-вторых, очереди перед оборудованием очень увеличились, что вызвало необходимость частого использования сравнительно громоздкой подпрограммы разрешения конфликтов с помощью случайных чисел, а это связано со значительным увеличением машинного времени. Связанное с площадью данных предположение о том, что время выполнения заданного числа вычислительных циклов х находится в линейной зависимости от площади данных тп, судя по наблюдениям, очень хорошо оправдывается при условии, если в среднем 1 В оригинале run — «запуск»; имеется в виду повторная часть процедуры Монте-Карло, завершающаяся получением одной реализации статистической модели. В программе ЭВМ этой части процедуры соответствует цикл.— Прим. ред. 48
не более 20% единиц оборудования можно использовать для обработки любого данного изделия. В этом случае для оценки времени на обсчет 200 планов мы можем использовать приближенную формулу t = А/70 = тп/70. Значения Л, t и Alt подсчитаны в приложении 4. Чтобы принять в расчет длительность планов, а следовательно, и среднее количество решений, которые должны быть приняты для расчета одного плана, рассмотрим «объем» задачи V = mnL, где L — наименьшая наблюденная длительность или (лучше) наиболее вероятная длительность плана (как оценка ожидаемой длительности). Все эти величины подсчитаны в приложении 4. Заметим, что V* (наиболее вероятный объем) удовлетворительно выражает размер задачи и что приблизительно V* = 1400/, где t — время на расчет 200 планов. Соотношение V* /t меньше чем 1400 для задач малого размера, где нет больших очередей и оно больше чем 1400 для задач большого размера, где наличие больших очередей приводит к необходимости использовать менее эффективные кодпро- граммы. Из изложенных двух предположений легче использовать предположение о линейной зависимости машинного времени от площади данных, так как никто не знает заранее, какова будет ожидаемая длительность плана. Тем не менее при объяснении уже полученных данных предположение, связанное с объемом, подходит лучше. 4. ЧИСЛЕННЫЙ АЛГОРИТМ МОНТЕ-КАРЛО Алгоритм для численного случая описан в [1]. Поскольку мы не разрабатывали алгоритма полного перебора, наш опыт касался лишь варианта Монте-Карло. Как и в нечисленном варианте, для решения задачи была составлена программа для ЭВМ. В численном примере нужно было определить пооперационное время для каждого изделия, что опять- таки выполнялось на машине. Пооперационное время выражалось положительными целыми числами, при выборе которых пользовались переменным параметром, равным отношению R — самого продолжительного времени выполнения работы к самому короткому (кратчайшим временем выполнения работы всегда являлась единица). Затем время работы определяли способом случайного отбора, исходя из равномерного распределения в интервале от единицы до максимальной продолжительности. Нами был выполнен ряд вычислительных циклов со значениями R, равными 2, 3, 5, 8, 10 и 15. Результаты суммированы в приложениях 5—8. В приложении 7 показано, каким образом изменяется время выполнения плана в зависимости от отношения R. Заметим, что, как и прежде, широта рассеяния выражается разностью между временем выполнения самого длительного и самого короткого плана. 4 Заказ № 195 49
Другим интересным параметром является количество «пиков» в распределении. На рис. 5, где представлено распределение результатов 200 вычислительных циклов применительно к задаче 20 X 20* 8 с R= = 15, видно, что в данном случае имеется 20 пиков (отсчитывая пики по таким длительностям выполнения планов, при которых наблюдаемая частота перестает убывать и начинает возрастать). Такой вид распределения является типичным для численных задач, сильно уклоняющихся от квадратных (то есть т > п) при большом значении отношения R. 10 ? 140 150 Время выполнения плана 170 180 190 200 210 B00 расчетов по задаче 20*20*8) 220 Рис. 5. Для того чтобы объяснить разного рода результаты, полученные нами, включая и явление пиков, рассмотрим следующую модель задачи, которую мы пытаемся решить. Представим работы в виде прямоугольников, каждый шириной, равной единице, и длиной, пропорциональной продолжительности работы. Мы хотим построить график Гантта, разместив все прямоугольники, представляющие работы, назначенные к выполнению на данной единице оборудования, в строку таким образом, чтобы была обеспечена последовательность обработки. Мы желаем решить головоломку, разместив все прямоугольники на графике Гантта таким образом, чтобы он имел наименьшую протяженность. Графики на рис. 7 показывают, что как широта рассеяния, так и число пиков находятся приблизительно в линейной зависимости от R. Если R = 1, то имеем нечисленный случай, при котором возникают один пик и широта рассеяния, равная 7. При R = = 15 наблюдается 16 пиков и широта рассеяния, равная 92. Применительно к идее, заложенной в нашу задачу, мы видим, что отсюда вытекает возможность составить графики Гантта в широ- 50
ком диапазоне продолжительностей, но в пределах этого диапазона некоторых продолжительностей можно достигнуть проще, чем других. Таким образом, по мере возрастания R быстро расширяются комбинаторные возможности задачи. Критерием ценности метода Монте-Карло служит продолжительность самого короткого из наблюденных планов. Для того чтобы получить представление о качестве кратчайшего плана, сделаем два сравнения. Во-первых, сравнение делается с наиболее вероятным планом, наблюдаемым с помощью процедуры Монте- Карло, причем мы рассматриваем эту процедуру как репрезентативную замену полностью децентрализованной системы планирования, когда каждый рабочий у своего станка принимает все необходимые решения. Во-вторых, сравнение произведено с правилом распределения работ SIOг («правило кратчайшей операции», именуемое также FOFO — «первым уйдет — первым делай»). Это правило является локальным правилом планирования в том смысле, что рабочий-станочник должен назначать работу, которую можно выполнить на станке скорей других. В приложении 8 приведены диаграммы для совокупности задач 20 х 20*10 с данными о средней продолжительности 2 выполнения самого короткого плана, наиболее вероятного плана и плана, соответствующего правилу SIO,— во всех случаях — в зависимости от R. Ясно, что средние продолжительности наиболее короткого плана и плана по правилу SIO оказались лучше, чем продолжительность наиболее вероятного плана при всех значениях R. И план по правилу SIO слегка превосходит при нескольких значениях R средний наиболее короткий план. План на основе правила SIO в том виде, как мы его строили, при возможности нескольких выборов, допускает только единственный из них. Мы полагаем, что поступили бы с этим планом еще лучше, рассчитывая его несколько раз со случайным отбором в случаях, когда имеется несколько возможностей. К сожалению, эта идея не была опробована в наших экспериментах. В выборке с использованием процедуры Монте-Карло наиболее короткие планы, как и в нечисленном случае, относятся к планам с наименьшим числом разрешенных конфликтов. Этого нельзя сказать в численном случае о наиболее коротких планах. Так, в примере на стр. 501 в [1] для каждого из двух наиболее коротких планов с временем выполнения, равным 16, и с тремя разрешенными конфликтами вероятность отбора равна х/8. Между 1 Мнемонические сокращения SIO —«Shortest imminent operation», FOFO —«first off, first on».— Прим. ред. 2 В оригинале length — длина. Вообще в главе под «длинным» планом подразумевается план с длительным временем выполнения, под «коротким»— план с коротким временем выполнения. В переводе соответственно использованы термины «длительнцй план» и «короткий план».— Прим. ред. 4* 51
тем плану с длительностью выполнения 18 соответствует только два конфликта, и поэтому вероятность его отбора процедурой Монте-Карло равна 2/4. Таким образом, коэффициент усиления в численном случае не обязательно действует в наших интересах. Все, что он дает, заключается в выделении определенной группы планов (с наименьшим числом разрешенных конфликтов) и в увеличении вероятности отбора их при одновременном уменьшении вероятности отбора остальных. 5. ВЫВОДЫ Исходя из только что изложенных соображений, представляется вероятным, что такая процедура Монте-Карло, при которой правила распределения работ дают направление случайному отбору, будет значительно превосходить механизм строго случайной выборки. И, действительно, Фишер и Томпсон [2], следуя логической основе нашего эксперимента, разработали особую стратегию обучения и заложили ее в программу использования правил распределения работ г. Один из определенных выводов данного исследования заключается в том, что коррелированная стратегия (лучший план из k отобранных) превосходит некоррелированную стратегию (наиболее вероятный план). Во-вторых, сделан вывод, что правило SIO действует примерно так же хорошо, как коррелированная стратегия, а коррелированное правило SIO (лучший результат нескольких испытаний с правилом SIO, когда конфликты разрешаются способом случайного отбора) должно быть еще лучше. Внедрение в заводскую практику коррелированного правила, конечно, вызовет необходимость значительно увеличить объем технической оснастки, включая, возможно, и сигнальные устройства, расположенные на каждом станке. Вопрос заключается в том, выгодно ли будет внедрять это правило, когда затраты на дополнительное оборудование и другие расходы будут сравниваться с ожидаемой экономией; в настоящее время ответ на этот вопрос пока еще далек от ясности. Правило SIO характеризуется в данной статье как удовлетворительное, вероятно, потому, что оно в общем и по возможности ускоряет продвижение изделий через цех и отсюда приводит к образованию очередей перед многими машинами. Чем длинней очереди перед станком, тем полнее будет загрузка этого станка. Представляется целесообразным, чтобы на ближайшем этапе исследования были разработаны программы обучения с применением комбинаций правил распределения работ. О первых шагах в этом направлении сообщается в [2]. 1 См. статью Фишера и Томпсона на стр. 260.— Прим. ред. 52
Приложение 1 ИТОГОВЫЕ ДАННЫЕ-СЛУЧАИ ПОЛНОГО ПЕРЕБОРА Эксперимент 4X4*1 4X4*2 4X4*3 4X4*4 5X5*1 5x5*2 5x5*3 5x5*4 5x5*5 6x6*1 6x6*2 6x6*3 6x6*4 6x6*5 10x10*1 10X10*2 10X10*3 10X10*4 Число планов 2 12 16 71 4 12 61 687 1894 36 290 914 7 546 84 802 8 256 27 673 112 7831 Время, мин. 0,00 0,00 0,001 0,06 0,00 0,001 0,018 0,31 1,30 0,00 0,09 0,48 4,82 70,18 0,00 0,05 20,62 75,101 Минимальная длительность 2 4 5 6 2 3 5 7 8 3 4 6 7 8 2 5 6 8 Вероятность минимальной длительности 1,000 0,667 0,563 0,155 1,000 0,333 0,574 0,261 0,181 1,000 0,145 0,488 0,117 0,011 1,000 1,000 0,096 0,734 Наиболее вероятная длительность 2 4 5 7 2 4 5 8 9 3 5 6 9 И 2 5 7 8 Вероятность наиболее вероятной длительности ' 1,000 0,667 0,563 0,563 1,000 0,667 0,574 0,517 0,479 1,000 0,607 0,488 0,362 0,306 1,000 1,000 0,500 0,734 Широта рассеяния 1 2 2 3 1 2 3 4 4 1 3 3 5 6 1 1 3 3 1 Эксперимент ЮхЮ* 4 не закончен. Приложение 2 ИТОГОВЫЕ ДАННЫЕ-НЕЧИСЛЕННЫИ СЛУЧАЙ МОНТЕ-КАРЛО Эксперимент 4X4*2 4x4*3 4X4*4 5x5*2 5x5*3 5x5*4 5x5*5 Число планов 1000 500 500 1000 1000 1000 1000 Время, мин. 0,57 0,32 0,46 0,57 0,91 1,27 1,56 Минимальная длительность 4 5 6 3 5 7 8 Вероятность минимальной длительности 0,678 0,548 0,188 0,368 0,623 0,657 0,419 • Наиболее вероятная длительность 4 5 7 4 5 7 8 Вероятность наиболее вероятной длительности 0,678 0,548 0,594 0,632 0,623 0,657 0,419 Широта рассеяния 2 2 3 2 3 4 4 53
OOOOOOOO@@<DO^«0CDO000000000000000044^vlS4M0H5O)O5Qa> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # * * # AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA oooooooo^^^^^^^^^^^^^^^^^^^^^^^ * * * * * * * *сО00^0^СЛ4^СОЮ00^0^СЛ4^С0^^^^О^СЛ4*<^ЮСТ>С7>СЛ4*СО1О 0000^1О>СЛ4*СОЮ ~ »— to to со s= 2? Q ~ Q go о о о о о о о о о о о о о о о о о о о о о о о о ел >— со со ^ ООО^ОО О О) — О О о — со о о OiQOOOOS-v)COH-o1m^WWb-»-o^WWtO^>-004WW-»-»-0»-N3S^>-0 О О) ЬО О) О СП ^ >- Ъ О СО СаЗ V(D W 0)Ъ>СО*— СЛООСоЪоСлТоЪ>^СО-*4 СО ^О "<1 Ч СЛ Ь "»- Ъо 0»-(»CnMOW^05DMO)QW4UiWOiO)^»»-0)^OOOOij!>0000L00^ 5 л> * 2 W03t0b-@000iW^Wt0O00405WlC»-C0000)Cn^C0*-'-O0040L^OC00040>^ СЛ СЛ 4*. tO О О) СЛ СО |- (OvJO)WrfkCOb-@0001^COCOWtOOOOO>Cn*- СО -*J О) СЛ о 4* О ^4 О 4* СО СО о 4*. ё О 4* СЛ О СГ> to о СЛ оо 4* О СО 4* О СО СО СО о со СО о со оо 4* о о --J 4* о о сл ¦ч _» 8 О ^ о о о о со ю о со СЛ 00 о со 00 ^ о 4* СЛ to о 4* СО СЛ о СЛ а ^4 о СЛ S _* о о о о СО со СО о 4*. о со СЛ СЛ о 4*. 4* о СЛ со 05 о СЛ 4* о ст> со о со 4* 05 о со ^1 00 о со *! о 4^ о СЛ о О со со о <У> со со nJ О) СЛ СП СЛ СО СО ¦<1О>а>СЛС0СО>—>— ЧЧО5СЛСЛ^Ь0>- 00О5СЛСЛ4^СОЮ-^1^О^4^СОСО S н сг я н2* = ооооооо — оооооо — »- OOOtO^-^JCOOOO"- tOtOOOO 000>СООО(ОСЛОЮЧЮ05ЧСЛОО «оспсоооослслоч^сою^^оо о о о о о о о о о о о — н- СЛ tO Ю а> оо сл <i © *- ооооооооооооо слооо»— о to ел со © © >— 4* о> со СЛОООС04^СЛ4^СТ)ООСООСОн- 45»0*<1СОСООО^*н-с0004^С7H5С042>. я д s 35 Ja 2 5 О 2яь°? *g3f osos онаОк нпно tr j» л> i аз о> ««ял0 I ОП) "S PS м О С я 2 н * о м о о, о ;*» 8 "О X с * Ю
4ь О X 8 * to ел о о 4*. to со 4* о о to о 4* 4* О N0 S со со о X ел о * ю ел о о со ы со ^1 о о ел о 4* О О to 4* О СО to О X 8 * 8 о о ел 05 О со to о о to о se о со ^J о СО о X ел о * ю ел о о to *^ ^j tO 00 о о 4*> О со о о 4* *>4 О о> 4*. О X 4* О * »—t ел ю о о ю 00 О to оо о о о со to о to ¦ч о о 001 X м о * 1—1 о ел о о> »_* »—* о 4* о о ГО о о о> о to о -J о о X X to *- сл о * * •—» Н-» о о о ел о о ел ел ^ 4* оо ел О) ^J to со о о> to о о о о ss н- Ю О О *- СО о о ю to *— 4*. О О tO 00 001 X ел о * 1—1 о о о »—» to и- о со о о 4* О со со о со 4*. О 00 § X ел о * N) О О о to С5 со со 00 о о 4* о 4* О о to to о со ел о X ел о * к» ел 8 00 8 со о о о 4^ О СО to 1 1 со со о to о 00 8 X СЛ о * 1— о о о о 4* со 4* СЛ со о о о 4* to о со го СЛ СО СЛ о X ел о * к—к о to о о 00 00 о со о о СЛ to о со сл 00 88 X сл о # СО to о о <J ? 00 о о 4*. сл ю о о 4*. го ел СО X сл о # 00 to В а 4ь со C75 о о 05 о 00 о 4* со сл ^1 сл о X сл о * ->1 to о о сл о •— 4* о о о а> о 4* со о ^J 8 X S * С7> to сл о X Сл о * сл ю 88 4* со со to о о о 4* о 4* о о сл со 4* ^ о Н-. сл сл to о сл --J о 4* сл о X сл о * 4* ю о о to О) to со о со сл о о сл со о со 8 X сл о * со to о о ¦— 00 сл -vj о ? о 00 о сл оо сл 4Ь сл о X 8 * N9 о о о о> к_* о сл о о ^*| *>1 а о со to со to 8 X сл о * го КО о о »— го о Сл о о СО о о о со о to сл о X 8 * Ь-к го 8 о ^1 4* ^ о о о 4*. о X 4* о * го о о о о _- СО со ^1 о о о 4* to о to сл о о 4* о X 4ь о * >—1 о К*> о о ^1 ? к_* СО о о о сл го со о со о сл со ёё§ X со о * __, сл to X со о * к_» о КО X К") о * >— о К*) 888 00 СО сл to ^1 о о сл to СО о to СЛ о со сл 4* со 00 о 8 сл to о со сл сл -vl со <7) to со о о о сл ю to о to -4 о •^ о X ._ о # _* о о со 00 00 00 (Л о о to 00 о СО to ¦^J 00 о X _4 о * СО со to СО о СЛ сл о о ^J <J> О) о со 4* со G5 о X >тшк о * <г> -vl сл о к_ -4 сл о о 00 1— ^J о СО CTi о X tm^ о * On 8 ел CD со со о 8 О сл о со СО •ч О") о X _^ о * 00 8 о сл 8! со о о со сл о со о ^1 я п 2 го а н X О ю о 5^ я з: » о 5 ь я н»яя ^ а 2 ^S5 as S'SS o«oS СГ -3 w -3 ь 2 a — 5 йта s 5 л a ii 2 ^ n< * v 5 n н T о n> i "O k- я о о Е? я2" f 50 Л OS ' ^1 о о <^ О % ?:
30x10 О 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 Площадь данных 200x2510 115,7 пин 200x10*10 217,6 пин 12 3 4 5 6 7 8 9 10 11 1213 14 1516 1718 19 20 2122 23 2425 Площадь данных 8 сотнях Рис. 6. Приложение 3.
4* О X ел о * ко СЛ ко оо 4* CD 4^ , . О о о СО СО СО ?» О О О 4* 4* О 4* 4* 4*. 4* О О О 1 СЛ 4* СЛ СО О X СЛ о * ко СЛ оо к- сл СО ^4 ^4 СЛ О 4^ СО КО -4 <1 СЛ О СЛ КО 00 4*> О СО О О О О сл СЛ ко о X СЛ о * ко СЛ ^ ^- го о СО to СЛ о о 4ь 4^ ^4 ^_ СЛ О о о 4* ко оо СО 4* 1—к ^4 О о о СЛ -4 о X СЛ о * ко СЛ СЛ сл 4^ го 00 КО СЛ о 4*. СЛ о ^4 о о о N3 а> 4ь со о -s| 8 о СО СЛ 4>> 4^ о X 4* О * 1—t СЛ _ ко оо сл ко 00 СЛ О о 4* сг> СЛ t—+ сл 00 о о СО о сл СО to »—* со to о о 4*. СО Со го о о X КО сл * |_* о - СЛ ^4 to со сл КО О О о , ¦ **4 со >_ СО to 8 О сл ^ о о К*) о to о о о ^4 СЛ о Ю *— 88 X X ь— >—i О О * * >— 1—1 о о to ~*4 СО сл о о о to ~ о о tO 4* to н- о о о о о о >_- со сл Ю СО 4* *- о о 4^ 4* 88 О О оо сл сл сл о о to — о о СО СО 4* >— о о СЛ СО 88 О О 00 ^1 ~*4 СО О О _ о о X Сл о * 1—* о to 4^ to о СО , , 8 О 4* со СО о о о to 00 о со со 8 о о о СО СЛ о СЛ о X сл о * ко о to сл to сл СО 00 , , о о о со СО сл СО 00 о о о сл о о 4^ о 4ь о о о о сл 00 о сл о X сл о * Н-» сл _ СЛ >_» 00 СО о -J сл о 4w СЛ сл to to сл о о оо СО о со to 1 1 со со to 4* о о о 4*. 00 о сл сл о о X X СЛ СЛ о о * * >—1 >— о о 00 00 SS СО со сл сл 88 сл сл -<1 СЛ сл оо СО СО сл сл о о о о о о СО 00 to о to to 1—* 1—* о о II to •— м- СО о о сл о X сл о * CD ^4 СЛ сл оо 4*> сл о Сл 00 00 оо 1—1 о о о сл о to о со 8 о оо о сл о X СЛ о * 00 сл 4* со сл 4^ о о сл to to СЛ 4* о о СО СО СЛ 00 ^1 to о о to о Сл о X сл о * -4 сл СЛ *-* 4* СО СЛ о сл to со 4^ СО о о 00 ^4 со СЛ Сл 8 о со СО 00 ел ел о о X X Сл сл о о * * сл сл 4* СО СО 4* СО ->4 to — со to 8S СЛ -q СО Ю to о со to СЛ ^4 о сл о о 00 ^4 со со to со 4* tO 4*. СО ко о 88 СО 00 -О СЛ о ел ел о X СЛ о * 4ь to СЛ to СО to о о ^4 сл 4*> К— 00 о о сл 00 ~vl _ о to 8 о -4 сл СЛ сл о X сл о * со н— оо Сл -«4 сл о 00 о •—* о ел о ел СЛ 00 00 »— to о о сл сл о ел о X ел о * го *~* to ел сл о о 00 о о сл о о 4*. о о СЛ сл о о 4^ оо о сл о X ел о * to *-* to сл Сл 8 --4 СО СЛ сл о о СО СО 00 СЛ 8 о 4* -4 СЛ 8 X СЛ о * 1— о ^4 4* ел о ^4 о 4ь to о о to р° to 4* 1 to 00 to 4^ о X 4^ о * to о to о to СЛ со ^4 оо о о СО со сл to СО СЛ о о t ¦ ф- СЛ о ?» to СО со СЛ о о СЛ СЛ о 4* о X 4^ о ж >_» о -4 4ь о со 4* о о ел 4^ о ^ СЛ о о , . о СО о to со CD to о о to 4?» о со о X со о * 1—к ел 00 СО сл to ^4 4^ сл о сл о to »— to 1— СЛ о t , со СЛ о to СО 1—* СО о сл о 4*> 00 о со о X СО о * |—4, о сл 4ь со 00 СО о о сл сл to Сл 4ь 8 со со сл to СЛ со о о СЛ о to о X to о * м- о со СЛ to СО К*) ° СЛ сл 4* СО 00 о о t . о ел о to to 4* 4^ 8 to to о о X о * >_* о СЛ о СЛ о о СЛ to Сл СЛ о о СО со сл 00 00 о о to о о X о * СО со --J сл СО о СЛ ел --4 со сл о СО со ел СЛ 4ъ> 4*. о о СЛ о о X о * со ь_* сл сл со о ¦^4 оо Сл со Сл о t h— 00 о ^4 СЛ со о со Фь о о X о * 00 >— со со 00 о ¦vl о о 4* о СО to 4*> сл to о о о ^4 о о X о * 00 ^ ^-* со оо о •V.1 to о о 4^ о со 4^ о сл КО о о о 00 о о X о * 00 ь_ to со 00 о •vl Сл о 4ь о со со о сл КО о о о ^4 о о X о * оо н— 4^ со оо о ^4 о о о 4^ о СО о сл КО о о о сл о ~ ю W •^ ел о СО о Экс <т> •о S ОМ g tfl мальная тельность ?Д 1 ч*. 1* о ov 2 н< Наиболее вероятная тельность &3 Со Ч"^ 1 *
КО Ю о о X X ко ко о о * * со оо * * ел о Ф> CD ел о о о о о о о ел ел ел о со со о о о о ел со ел оо 4* 00 о о о cd со 00 4* СО ^1 о о о о 4* 4ь 4* СО ^- ^1 ГО о X to о * оо * 00 00 00 о о to со -S 1 со оо о о -ч ел СО о о о о ел ко оо ^ о о 4* ? КО о X ю о * 00 * ел 4* со о о о ел cd о о *- о 4* ^J ко 4* ^ О О 4* 4ь К*) О X to о * 00 * СО со о 8 ел СО 00 1 1 со СО о >— cd 5° to о о к— ел со о о 4* 4*. ко ко о X to о * 00 # to ко 4* о о 4*. ю СО о to ел ел to cd о о СО ко - о о 4* 4^ СО КО о X ко о * оо * •—> 4* О О со CD О СО СО „ ел о ко cd ел cd ~ о о 4* ел СО КО о X ко о * 4*> * ел -J -si о о о ел со -*j о о cd оо со о о ел со со со о о ко ко ко ко ко о о X X ко ко о о * * 4*> 4*. * * 5«, 4*. СО со ел о о ?8 ел ел 4*. оо о о о о ~ оо ел ел ел со 00 00 о о о о 00 СО ко ко 00 КО оо ел о о о о ко ко -<1 CD ко о X ко о * 4* * ел ко СО о о ко ел со со о >w оо о ко 00 CD ел о о ко 4*. КО о X ко о * 4^ * СО •—> со о ^ ел ко о о ко cd о 00 СО - о о ко со ко о X ко о * 4* * ко 1—» ко о о ел ел о СО о СЛ со о о оо СЛ 00 ~ о о ко ко о ко о X ко о # 4^ * -vl о 8 ел СО о т ко 00 о ко CD 4* ~ О о ко ко cd 00 X 00 * оо * о -*] 4* о о о cd оо со о о о CD оо со о о 4*> О СО СО СО со 4*. СО 00 X 00 * ^J * о -nJ о о о cd 00 cd о о CD о CD оо 4ь 4* О со о со 00 X 00 * CD * о ел 00 о о о ко -v.1 со о о -J ко оо со о о 4*» 8 со ко ел 4* 00 X оо * СЛ * о СЛ 00 о 8 ко ¦<! ко о о со ко CD CD о о СЛ о со СЛ ^J ко о ^4 оо X 00 * 4* * о к о о о 4* 4ь ко о *_* ко 4* ^J о о СО 00 ко ">1 оо — CD СЛ 00 X 00 * со * о со ко о о ко 4* 4ь ко о ко ко 4* со ел о о CD CD ко о CD — ко о 00 X 00 * ко * о 1—* СО о о -^ 00 ко о со 00 CD ко о со 00 CD ел о 00 ко 00 X 00 * 00 * СО ко CD о о ко со о о ^ оо ко ко CD о о ко СЛ - со 4^ 4*> 00 X 00 * -q * со ко 4* о о 2 ко СО о н- CD CD ко CD о о 00 ко СЛ ко ко СО 4ь 00 X 00 * CD * СО ко СО о о о ко ко СО 1 1 со о о _1 СЛ CD ко 00 о н- 4* ко ^J - ко 8 00 X 00 * СЛ * со 1-^ ^1 о о о ко ко о ко ко -J о о о ко ко - ко о 00 00 X 00 # 4ь * со 1—* со о о ко CD о ко со 4ь ел о _L ко 4» - ~ CD 4ь оо X 00 * со * со 1—» ко о о 4*> ю 4*. о со ко ^1 о о СО 00 00 со ~ >— <JJ 00 X 00 * ко * со СО о 4ь СО ко СО о 4ь со ко СО о 4* со ко CD ко о 00 О) CD X CD * CD * _- о CD со о о о ко ^1 СО о о СО о CD СО о о со о со <| и- 00 •—» CD X CD * СЛ * н- о 4ь со о о 4* ел оо о о -ч о 4^ СЛ о 8 CD со CD CD ~ °\ --4 CD X CD * 4* * и~ о 4* о о 00 4*. оо о н- Со 00 4* ¦ч о _- ко ко ко со ~ ко ел CD X CD * со * >— о со ко о о *-* со 4* о ко ко CD со ко о о 00 о ко 4* о СО со CD X CD * КО * 1— о со о ко о о со со о ко 4*. CD 4ь О О 1—i со CD СЛ СЛ о Я5 ел CD X CD * CD * СО и-* СО о 8 00 ко СО о >_ ел оо ко о о о *ь о _ ел ~ ~ -<i СО CD X CD * ел * со Н-* со о о о 4* КО ко о ко о 4* КО ко о ко о 4* _ 4*. - — CD »—• CD X CD * ?» * СО >—» ел о о о CD со о _- 00 О 00 о и— ^J о ко — ко ко CD X CD * СО * со 1—* о о ел CD СО О КО СО 4^ 4* О н— О ко СО ~ о СО to CD X CD * КО * со СО о со ко о о о 4*. 4* КО оо о СО to 4» КО о CD сл .— to СлЭ СЛ СЛ ^ СО .— о @ ° а •о S № н мальная тельность о a <t> *j ' о «Г 1 5 ч 5 оХ ш ?чэ й К » Е о л> к 35 » » л » Я w еро- ят- )СТЬ тельность SIO HiO tr , Широта рассеяния Число пиков со ЖЯСЯ^'О О Sa Ob, 5 w I w* tt
ел о X ел о * h—» О * »—t ел _ 00 О о о о СЛ to о ео о о ел ел , . -4 ел *<i to 4* о to о ел ел § X ел о * *__ о * 1—> о ^ to о 8 ел ,_ 4*> О О О С» , . I— 00 ел ел ю о to о СЛ СО СЛ о X 8 * »—» о * 00 ^ о ел о о N- СЛ о о -^4 , ^ О со 4* 00 -<| о ю о 2 СЛ СЛ Ю о о о XXX ел ел »— о о о * * * »— *- to о о о * * * сл ео н- сл ео О) ^ со СЛ Ю О о о о 888 СЛ СЛ СЛ to о X го о * to о * 1—* о to со СО о о о сл ео to to оо 4*» сл ел ел О ^1 »-4 ^J 4* о о о о — о СО СО СЛ сл ел ео 00 4*. О О СО СО О О о о СО Ю сл ел to >- со 4^ ОО ^ СЛ СО -J О О О СО ~ СЛ СЛ Ю 00 о о ел to to сл 8 4* о 8 8 X to о * to о * 00 ^ 00 ел о о Ю N- о со сл сл о 8 , , 00 сл о О о ю о X 8 * to о * сл ю о о о ел 8 о о сл СЛ t lt 1—i сл со 4*» 00 о -*4 СЛ 8 X К*) о * to о * со -<| •ч о о СЛ 00 СО о н- СЛ ^4 СЛ to -а -4 о 00 00 to о X К*) о # to о * to СЛ СЛ о о СЛ О ^ со СЛ со ^4 со о to о СО to о X ю о * К*) о * I—* со 4* о о СЛ со -ч о to СЛ о со со *"* о ю to СЛ 8 X to о * СЛ * >-^ СЛ N0 ^4 о о о 8 4* о о 4* СЛ to СЛ сл со 4*. СО о 8 о со 8 X ю о * сл * )_* о --4 СЛ о 8 СЛ to о 4*. о о СЛ , , ^3 СЛ о ъ о СЛ ^4 СЛ о о со to to о X to о * сл * 00 и- 4^ ел о о t . СЛ 4* о о ^1 , 1 4* to 4* -J ~ о о СО СЛ to о X to о * сл * СЛ со сл о о о СЛ ^ о со о н- о со ел о о о СЛ со ^4 ел о 8 to со 8 X 8 * сл # СО сл о о о о СЛ сл -^ о _> to СЛ СЛ сл to СЛ со о о со со -^ 88 X X to to о о * * сл ел * * tO N- 4*. tO СО ^4 о о о о to to 4* СО 00 О о о •— to оо оо со to СО ^ о 8 4^ СО to — о о о о со со со сл со со to о X ю о * to * СЛ to о СЛ о 8 СЛ to 8 о о 4*. СЛ to о о 4* 00 о о СО to о X ю о * to * о ( , со ^4 о о о ел ь-» сл сл о о СЛ ¦ ¦ со 00 о о о сл СЛ о о ел сл 4ь to о X ю о * to * 00 ~ о 8 СЛ to СЛ о о ^1 tm_k о СЛ о о о ел сл ^1 to о X to о * to # СЛ ^4 со о о СЛ 00 со 00 СЛ о 8 СЛ ^4 о S2 -4 о 8 *-) ¦^4 8 X to о * to * со 4*- СЛ о о сл сл о н- СЛ сл 4а» СЛ о S СЛ со о о СЛ ^4 00 8 X to о * to * to со СЛ о о со со о to о сл со to _ со ~ о 8 оо со 8 X 8 * to * to о о 00 сл to со о со to to о о сл ^4 о о ^4 о -¦4 fc- ю со 4*. сл о ¦ч оо «о о я •о Я 2 X " ь ь w ь я Н (Г к » С * D* • ' • -• О л)Л 2 "'Я j 1 о V 1 gaSoa х 00 <1 н«а 3 ' о 0* | 1 5 ю Q м л ? о о Е? S О н SB ?! Ь S О О 1 00 m S3 Я СЛЙ»о ОЬоЬл u bio» s 1 a
Приложение 6 СЕРИИ 20 X 20 R 1 2 3 5 8 10 15 Средняя широта рассеяния 7 13 18 29 42 55 92 Среднее число пиков 1 2 3 7 9 12 16 Средние наиболее короткие 21 33 46 74 113 157 207 Средние наиболее вероятные 23 38 56 84 126 185 229 Средние SIO 21 33 45 71 ПО 157 201 100 90 80 %W | 60 §-50 | 40 4 30 ¦ 20 10 ¦20 48 -16 \14 40 1 1 J_. . 1 _.._ 1 I Средняя широта рассеяния я >^»х ^^г Число пиков 1 1 ," 1 1 L 1 J 1 1 1 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14- 15 Rj Отношение самого длительного и самого короткого времени выполнения работы в сериях 20х20 Рис. 7. Приложение 7.
Среднее наиболее вероятное бремя Среднее наиболее короткое бремя -Среднее Время SIO О 1 2 3 4 5 6 7 8 9 10 11 12 13 ft 15 Отношение самого длительного и самого короткого Времени Выполнения работы В сериях 20*20 Рис. 8. Приложение 8.
ГЛАВА 4 Алгебры календарного планирования и их применение при формулировке моделей общих систем Б. ГИФФЛЕР1 В этой главе мы намерены суммировать некоторые теоретические положения в области календарного планирования, в частности показать, как эти положения применяются для определения и решения тех из возникающих здесь задач, для которых обычно применяется математическое моделирование. Рассматриваются два основных типа задач: 1) детерминированные задачи, решения которых неявно заложены в исходные данные (например, задачи по определению моментов времени начала работ 2, если известны «отношения последовательности», связывающие эти работы и продолжительность выполнения каждой из них) и 2) недетерминированные задачи, в которых исходные данные недостаточны для нахождения решений и где требуется определить функции для получения отсутствующих данных. Примером таких задач могут служить задачи календарного планирования, в которых априори неизвестна последовательность работ на станках 3 и она должна быть установлена путем многократного применения правила календарного планирования 4. Основная цель главы заключается в том, чтобы показать новые, более эффективные способы решения задач календарного планирования производства и облегчить составление программ для решения таких задач на электронно-вычислительных машинах. 1 Работает в «Интернешнл бизнес мэшинз корпорейшн». 2 В оригинале task (задание); мы переводим как «работа» во избежание необычных на русском языке фразеологических вариантов и для единства терминологии, с помощью которой в сборнике формируются задачи календарного планирования.— Прим. ред. 3 В оригинале facilities (в данном случае — совокупность отдельных единиц оборудования, а не оборудование в целом); во избежание разнотолко- ваний и для единства условной терминологии при формулировке задач в сборнике переводится как «станки». В дальнейшем «facility» переводится «станок».— Прим. ред. 4 В других главах сборника переводится как «правило приоритетов» и «правило распределения работ».— Прим. ред. 62
Примеры решения задач приводятся как в математической записи, так и в алгоритмической форме, пригодной для составления программ для электронно-вычислительных машин. 1. ОТНОШЕНИЯ ПОСЛЕДОВАТЕЛЬНОСТИ ОПЕРАЦИЙ В КАЛЕНДАРНОМ ПЛАНИРОВАНИИ В основе любой задачи календарного планирования лежит определяемая последовательностью система, элементы которой — работы — должны быть запланированы. Основная взаимосвязь в последовательности работ называется «отношением предшествования». Она обозначается символом <:. Запись а <[ Ь показывает, что работа а должна начаться раньше работы Ь, или одновременно с ней, или попросту, что работа а предшествует работе Ь г. Отношение < является транзитивным, рефлексивным и асимметричным, то есть 1) а<а для всех а; 2) (а<6) Д (fc<c)-> -*а<с, и 3) (а<6) Д F<а)->а= 6. Следует отметить, что отношения предшествования существуют между двумя работами не потому, что иногда случайно оказывается, что одна из них начинается одновременно с другой или раньше нее. Существование такой взаимной последовательности работ обусловливается технологической необходимостью начинать выполнение одной из операций одновременно или раньше начала другой операции. Например, если надо выполнить две работы, одна из которых — грунтовка поверхности, а другая окраска, то существует отношение предшествования, так как работа «грунтовка» должна быть начата одновременно с работой «окраска» или раньше нее. Аналогично, если на одном станке выполняются две работы, то одна из них предшествует другой в том случае, когда она должна быть начата раньше или одновременно с другой работой. Понятие предшествования работы (<) включает в себя взаимосвязь между работами, называемую «непосредственным предшествованием», обозначаемую знаком <. Запись а < Ъ показывает, что непосредственно вслед за работой а выполняется работа b или, точнее, что существует транзитивная цепь отношений < от а к 6, в которой отсутствуют промежуточные работы. Уяснить различие между отношениями < и < поможет следующий пример. Системы, определяемые последовательностью работ, удобно представлять в виде сетевого графика. На рис. 9 показана такая система из 4 работ: а, Ь, с и d. Отношения предшествования существуют между следующими парами работ: а<а, а<6, а<с, a<;d, Ь<6, 6<с, 6<d, c<c, c<d, d<d. Отношение непосред- 1 Слово «предшествует» здесь имеет тот смысл, что работа «должна начинаться раньше последующей работы или одновременно с ней». 63
ственного предшествования имеется между работами а < 6, а < d, Ъ <€ с, с <€ d. Эта система последовательности, являясь отвлеченной схемой, может, по-видимому, описывать систему последовательности, заложенную в каждую из любого числа специфических, конкретных задач. Например, при изготовлении изделия 1 последовательно выполняются работы а и Ъ\ при изготовлении изделия 2 — работы end. Таким образом, технология производства этих двух изделий может быть описана двумя отношениями непосредственного предшествования а < Ь и с < d. Два оставшихся отношения непосредственного предшествования могут существовать в том случае, если технология 0Э G\ производства предусматривает по- " V^/ следовательное выполнение пар работ — а и Ьу Ъ и с на одном станке. Каждое отношение предшествования а<6 содержит одну или более цепей отношений непосред- р 9 ственного предшествования. Число отношений < в этих цепях может быть равно 0 или большему целому числу. К примеру, отношение a<[d, показанное графически на рис. 9, состоит из двух цепей отношений <, а именно а < 6 < с < d и a<i Мы говорим, что первая цепь состоит из 3 звеньев, поскольку она содержит 3 отношения непосредственного предшествования; вторая — из одного звена. Каждое предшествование операции по отношению к самой себе принято считать цепью с нулевым числом звеньев. 2. КОЛИЧЕСТВЕННОЕ ВЫРАЖЕНИЕ ОТНОШЕНИЙ ПОСЛЕДОВАТЕЛЬНОСТИ Каждой цепи отношений непосредственного предшествования (с числом звеньев 0 или более) дается количественное выражение, для чего ей ставится в соответствие число, равное продолжительности минимального промежутка времени, необходимого для прохождения цепи. Так, однозвенной цепи а < Ь ставится в соответствие минимальное время от начала выполнения операции а до появления возможности начать операцию Ь. Двухзвенную цепь, допустим а < Ъ < Су можно представить числом, которое является обыкновенной суммой количественных представлений двух составляющих эту цепь однозвенных цепей. Для упрощения дальнейшего изложения введем новое обозначение. Тот факт, что работа i не предшествует непосредственно работе у, можно выразить такой записью: 4j} = 0. A) 64
Верхний индекс A) показывает, что речь идет об однозвенной цепи; индексы i и /обозначают начало i и конец / однозвенной цепи; число 0, к которому приравнено выражение s\)\ свидетельствует о том, что между i и / нет однозвенной цепи, или, иными словами, i не предшествует непосредственно /. Если работа i непосредственно предшествует /, то это отношение записывается следующим образом: где ttj — минимальное время с момента начала работы i до возникновения возможности начинать работу /. Так как теоретически ttj может представлять отрезок времени, равный нулю, а нуль уже был использован ранее для другой цели (в выражении s\f = 0 он показывает, что* i </< /) \ воспользуемся для обозначения нулевой продолжительности буквой греческого алфавита йота i. Чтобы не путать 0 с i и, наоборот, в дальнейшем будем всегда называть символ 0 нулем, а символ i — йотой или нулевой продолжительностью. Воспользуемся символом i для количественного выражения всех цепей с нулевым числом звеньев: 4j) = l> если * = /\ = 0, если 1Ф]. C) Для задач календарного планирования характерно, что между любыми двумя работами может быть не более одной цепи с нулевым числом звеньев. Это, конечно, не относится к цепям с большим числом звеньев. Имея в виду последнее обстоятельство, введем понятие «множества всех цепей с данным числом звеньев». Множество всех цепей с нулевым числом звеньев от i до у обозначается (si?). Выше было показано, что это множество может содержать максимум один элемент, а именно нуль, если i ф /, или йоту, если i = /. Аналогично множество всех возможных цепей с одним звеном от i до / обозначается через (s^)- Это множество будет иметь количественное выражение, равное нулю, если i < /< /, или равное одному или более положительным числам 2 ttj, если i < /. Вышесказанное можно записать в форме равенств: ($>) = (i) * = /, =@) 1Ф1 D) 1 Символ </< обозначает «не предшествует непосредственно». 2 Множество (sf>) будет содержать столько положительных элементов, сколько существует независимых причин для отношения непосредственного предшествования между работами / и /. Например, работа i может непосредственно предшествовать операции / из-за того, что 1) работа / должна выполняться после работы i при изготовлении одного и того же изделия, и, кроме того, 2) последовательность работ может быть обусловлена технологией применительно к станку (станкам), на которых они выполняются. 5 Заказ № 195 65
и №) = (ttj) i€h = @) i</</. E) Множество продолжительностеи прохождения по всем дву- звенным [цепям легко получить из множества продолжительностеи прохождения по всем однозвенным цепям. Это можно записать как (s\V) = (tik + tkj) F) для всех работ /г, удовлетворяющих условию i < k < /. Приведенную выше формулу расчета для множества (Sjf) можно представить также следующим образом: Df) = SD^)o(siV), G) k где «умножение» (s$) на (s$) означает, что каждый элемент множества (s(ih) прибавляется ко всем элементам множества (sty), если оба слагаемых не равны нулю, а «суммирование по k» означает, что все полученные результаты принадлежат одному множеству. Характер вычислений в уравнении G) позволяет предполагать, что, дав соответствующие определения операциям сложения и умножения, можно разработать математическую систему, которая упростит логические и вычислительные операции в задачах календарного планирования до уровня обычных операций над матрицами. В настоящее время уже разработаны две такие математические системы, названные нами «алгебрами календарного планирования». Они описываются в разделе 3. 3. АЛГЕБРЫ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ В этом разделе описываются две специальные алгебры (вернее, два матричных кольца) для решения задач календарного планирования. Первая из них с точки зрения ее аксиом аналогична обычной матричной алгебре и названа нами «алгеброй календарного планирования». Вторая в понятиях ее постулатов аналогична обычной алгебре неотрицательных матриц. Эта алгебра будет описана далее. Она названа нами «алгеброй календарного планирования*». «Алгебра календарного планирования» оперирует с прямоугольными матрицами, (i, /)-e записи г в которых являются множествами. Во избежание возможной путаницы мы будем в дальнейшем называть основные элементы данной алгебры матрицами 1 В оригинале entry — «отдельная запись»; мы переводим ее для краткости как «запись». Entry — обобщенное понятие, соответствующее и компоненте вектора и элементу матрицы.— Прим. ред. 66
и заключать их обозначения в квадратные скобки, элементы матриц именуются в дальнейшем «множествами», или «элементами- множествами», и обозначаются в круглых скобках. Термин «эле-, мент» резервируется только для элементов этих множеств. Символы, обозначающие «элементы», в скобки никогда не заключаются. Множество @), содержащее только число 0, называется «пустым». Если множество не является «пустым», оно может содержать любое число положительных или отрицательных чисел, однако в нем не должно быть двух одинаковых по абсолютной величине чисел с разными знаками. Говоря о числах, мы имеем в виду обычные арифметические числа, но нуль заменяется парой чисел i и — i. Матрицы [Л] и [В] можно складывать, если их размеры одинаковы. Операция сложения записывается как [Л]0[?] = [С]. Здесь [С] является алгебраической суммой матриц [Л] и [В]. Множество (ctj) матрицы [С] получают, как в обычной матричной алгебре, сложением соответствующих множеств (а^) и (Ьи) матрицы [А] и матрицы [В]. Теперь, чтобы закончить определение сложения в «алгебре календарного планирования», остается только сформулировать правило сложения двух множеств. Чтобы сложить два множества, выполняют последовательно следующие операции: 1. Объединяют все элементы обоих множеств. 2. Все пары элементов, имеющие одинаковую величину, но разные знаки, заменяют нулями. 3. Если остается хотя бы один ненулевой элемент, то вычеркивают все нули. Если все остающиеся элементы равны нулю, то вычеркивают все нули, за исключением одного. Нижеследующий пример показывает сложение двух матриц с размерами 2x3: @) (-1) E) I @ (-0 (-0J [(I, 0) A, -1, -I) (-5, 5) ~L@, i) (i, -i) @, -i) Умножение матриц в «алгебре календарного планирования» напоминает обычное умножение матриц. Например, матрицу [А] можно умножить на матрицу [В] только в том случае, если число столбцов в [В] равно числу строк в [Л]. Полученная в результате умножения матрица будет иметь число строк, равное числу строк в [А], и число столбцов, равное числу столбцов в [В]. Умножение [А] на [В] записывается [Л]0[В] или [Л] [В]. Множество (/, у) произведения матриц [Л] [В] определяется с помощью равенства (Ы = 2 (*«*)© (М- (Q) ft 5* 67 (О .@) A, -О @ (-5) @) I © (О .@ (-1) @) @) (-0 (8)
В равенстве (9) множество {рц) находится в i-и строке и /-м столбце произведения [Л] О [В]; (aik) и (bkJ) являются (?, &)-ми и (k, /)-ми множествами матриц [А] и [В]. Равенство показывает, что нужно сложить произведения k-x пар мнвжеств (aik) и {bhj), причем имеется в виду сложение в «алгебре календарного планирования», определение которого было дано выше. Чтобы получить произведение двух множеств (aik) и (bkJ) в «алгебре календарного планирования», необходимо сложить произведения каждого элемента множества (aik) на все элементы множества (bkJ). Как и в предыдущем случае, сложения производятся по указанным ранее правилам «алгебры календарного планирования». Таким образом, чтобы закончить определение правила умножения, нам осталось только установить, как перемножать два элемента. Правило умножения двух элементов состоит в следующем: aQb = \a\ + \b\==c, если а и b имеют одинаковый знак, = — с, если а и Ь имеют разные знаки, = 0, если а и b равны нулю. Знаком плюс в приведенном выше правиле показана обычная операция сложения *. Следовательно, iQa — а для всех а и аналогично —iQa = —а для всех афО. Для иллюстрации правила умножения в «алгебре календарного планирования» ниже приведен пример умножения вектора 1 X 2 на матрицу 2x2: п п п,ГA' 1) @) 1 к*, -о A. »)][(l) (_1}J = = [(i, 1, -1, -2, 1, 1) (-2, -2I = [(i, -2, 1, 1) (-2, -2)]. A0) В «алгебре календарного планирования» сложение ® и умножение О матриц постулированы так же, как и в обычной матричной алгебре. Единичная матрица при сложении обозначается [0]; все ее множества являются @) или пустыми. Каждая матрица [А] имеет при сложении единственную матрицу с обратным знаком. В матрице с обратным знаком (i, /)-e множество содержит те же элементы, что и (ir /)-e множество матрицы [А], однако с той разницей, что знаки их противоположны. При умножении единичной матрицей является квадратная матрица [/], имеющая множества (t) на главной диагонали и остальные множества @). Подобно тому как это имеет место в обычной матричной алгебре, при умножении матрица имеет единственную обратную матрицу (если обратная матрица существует). 1 Следует отметить, что в «алгебре календарного планирования» нет такой операции, как обычное сложение. Она была использована нами, чтобы проще объяснить, как получить величину произведения в «алгебре календарного планирования». 68
Матрица [—Л отличается от матрицы [/] только тем, что у нее на главной диагонали находятся множества (—t). Умножая любую матрицу на [—/] или умножая [—Л на любую матрицу, можно изменить знаки всех ненулевых множеств в матрице. Матрица [—/] позволяет формально определить операцию вычитания в «алгебре календарного планирования». Мы просто пишем, что [Л]0[В] = [Л]®[-/]О[Я]. A1) Здесь поучительно отметить, что все теоремы обычной матричной алгебры, зависящие только от постулатов алгебры, применяются также и в «алгебре календарного планирования». 3.1. ВАРИАНТ ПРАВИЛА СЛОЖЕНИЯ Во многих задачах календарного планирования для упрощения расчетов удобно изменить правило сложения матриц таким образом, чтобы сложение стало «максимизирующей» операцией. При введении этого изменения и нескольких неустранимых их следствий в «алгебру календарного планирования» мы получим алгебру, именуемую «алгеброй календарного планирования*». Для «алгебры календарного планирования*» справедливы те же постулаты, что и для «алгебры календарного планирования», за исключением того, что при сложении нет матрицы с обратным знаком. Это делает «алгебру календарного планирования*» в понятиях ее постулатов аналогичной обычной алгебре для полностью неотрицательных матриц. Ниже приводится краткое описание «алгебры календарного планирования*». Матрицы в «алгебре календарного планирования*» состоят из записей в виде неотрицательных чисел (включая i) или нулей. Сложение в ней обозначается через*. Как и в «алгебре календарного планирования», и в обычной матричной алгебре сложение двух матриц здесь возможно только тогда, когда они имеют одинаковые размеры. В сумме матриц [Л]*[?] (if j)-e множество- элемент является max (a,;, b^), где atj и btj представляют собою (i, /)-e множества-элементы в [А] и [В]. Число 0 при этой максимизации рассматривается как отрицательная бесконечность. Единичная матрица для сложения в «алгебре календарного планирования*» записывается как [0] и содержит только нулевые записи. Умножение матриц в «алгебре календарного планирования»* производится так же, как в «алгебре календарного планирования», за исключением того, что здесь все операции сложения, выполняемые при умножении матриц, производятся в соответствии с определенным выше правилом максимизации. Единичной матрицей при умножении является квадратная матрица [/] с нулевыми 69
множествами-элементами всюду, кроме главной диагонали, заполненной символами I. Умножение матриц в «алгебре календарного планирования*» обозначается знаком Jf. Ниже даны примеры сложения и умножения матриц в «алгебре календарного планирования* [: "]• [: ?]« го г Ь 5. ГО 11 Ь 5} — = "max(l, 0)max@, 1I Г 1 1 max(i, l)max(l, 5)J ~~|_ 1 5 max(l GO, 0-1) max(l О 1, 0-5) max(iQ0, Ы) max(i0l, I • 5)J 0 2 2 6 A2) 4. АЛГЕБРАИЧЕСКАЯ ФОРМАЛИЗАЦИЯ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Однозвенной матрицей (или матрицей непосредственного предшествования) назовем матрицу [S], у которой (i, /)-e множество (Si))) = (tij), если i « у, = @), если /</</, A3) где значения ttj являются минимальным промежутком времени с момента начала операции i до возникновения возможности начать операцию /. Матрицей нулевого предшествования [S0] назовем квадратную матрицу, у которой (/, у)-е множество (sW) = (i), если / = /, -@), если 1ф}. A4) Очевидно, [S0] является единичной матрицей [/]. Множество (sgO для всех двухзвенных цепей от работы i до работы / является алгебраической суммой всех k-x произведений Ш) О (sk% то есть D?)) = 2(^})оE1У). A5) Приведенная формула может быть распространена на определение множеств для любых цепей с числом звеньев от i до у, равным w: A6) (sW) = ?\(s%-k)H(s{% где k — любое неотрицательное целое число, равное или меньшее w. Равенство A5) можно записать в более краткой форме для всех (i, /)-x пар работ с помощью матричного уравнения «алгебры 70
календарного планирования» [sw] = [sM,-,i]0[sh]. A7) Множество (s^) матрицы [Sw] будет иметь столько ненулевых элементов, сколько цепей отношений непосредственного предшествования w имеется между операциями i и /. Далее, каждый элемент множества, будучи суммой w промежутков времени t для одной цепи, является нижней границей времени прохождения по всем w звеньям цепи от операции i до /. Если между операциями i и / не существует ш-звенной цепи, то в результате вычисления (sffi) будет получено пустое множество @). Множество протяженности во времени всех цепей (с любым числом звеньев) от i до / обозначим символом @^) и запишем, что (в^^дае^е.'-е^Г). A8) где X* — максимальное число отношений непосредственного предшествования в любой цепи от i до /. Все @^-) можно сгруппировать в матрицу [0] и записать, что [e] = [/]0[S]0...0[S4 A9) где X — максимум для всех А,*. Очевидно, что [Sh] = [0] для всех k > К. Теперь покажем, что [0] = [/0S]-\ B0) для чего умножим правую и левую части этого равенства на [7 0S] и перегруппируем члены так, чтобы получить [9] = [/]©[S][0J. B1) Расширяя этот результат повторным умножением обеих частей равенства на [S] и прибавлением к ним [/], приходим к равенству [e] = [/]©[S]©...©[S?t+1][0] и, поскольку [S^+1][0] = [O], [6] = [/]0[S]0...0[S*j. B2) Матрица [0] суммирует все ограничения, наложенные на начала /-х работ, вытекающие из отношений непосредственного предшествования < и промежутков времени, связанных с этими ограничениями. Каждое множество (Qu) содержит (если оно не пустое) продолжительности времени прохождения по всем цепям отношений непосредственного предшествования < от i до / и показывает нижнюю границу близости начала работы i и работы /. Максимальный элемент множества обозначается знаком ср^-. Он представляет наибольшую из нижних границ близости и показывает наименьший промежуток времени, который может отделять начала соответствующих работ. Можно показать, что если все операции, 71
не имеющие предшествующих, начинаются в некоторое время — обозначим его t0i— то тогда операция / может быть начата точно в момент времени t0 + max (срг7) и не раньше. Чтобы показать некоторые практические возможности «алгебры календарного планирования», рассмотрим кратко задачу по определению влияния на матрицу [0] изменения одной или более записей в [S]. При доказательстве допускается, что известно [90] = [/©Sol и надо найти матрицу [0J, которая получится, если [S0] заменить на [SJ. Начнем с определения изменяющей матрицы [AS1J = [S1]0[So] и запишем, что [9,] = [/ 0 SJ = [/ © S0 © А^Г1. B3) Умножая правую часть уравнения B3) на [/05оГМ/05о] = [/] и имея в виду, что [/ - S0] [/ 0 S0 0 AS,]-* = [[/ 0 S0 © AS,] [I © So]], получим [6i] = [/ © So] [/ © S0] [/ © S0 © AS,]'1 = = U © So] [[/ © S0] [/ © So] © AS» [/ © SoF1] - = [e0][/©AS1e0r1. B4) Когда изменения в [S0] немногочисленны, [ASA,] будет содержать, вообще говоря, немного значащих элементов и, следовательно, [/©A5i0o], для которой вычисляется обратная матрица, близка к единичной, и поэтому вычисление производится сравнительно просто. Во всяком случае, существует много различных численных методов для быстрого вычисления обратных матриц в такого рода обычных обстоятельствах. Некоторые из этих методов подробно рассматриваются в работе [1]. Когда необходимо знать только максимальные цепи, связывающие (i9 /)-e пары работ, можно найти матрицу «алгебры календарного планирования*» [ф], у которой (/, /)-я запись является числом ф^- (определенным ранее), и затем решить непосредственно для этой матрицы уравнение H>] = [/]*[S]*...*[S*] или, зная, что Sx+i = [01, [tp] = [/MS]#[(p]. B5) В приведенных выше уравнениях предполагается, что запись в матрице [S] содержит самое большее один элемент, который 72
равен нулю, если множество пустое или соответствует максимуму множества. Это допущение всякий раз подразумевается при формализации «алгебры календарного планирования*» и является причиной того, что каждое множество всегда бывает представлено входящим в него элементом. Уравнение B5) и также уравнение B0) можно решить с большей экономией усилий с помощью итеративных уравнений, примеры которых даются ниже. Итеративные решения возможны благодаря тому, что [Sk+1] содержит только нулевые члены. @и) = @ * = /, = S(sife)H(e*;) 1фи к Фи = @ ' = /> = 2^?)#<pju- *^/- Bб> к Может быть также произведен итерационный расчет времени начала и (или) окончания операций. Расчет начинают с определения вектора-строки [Т0], у которого /-й элемент /}0) соответствует самому раннему времени возможного начала /-й работы, если у нее нет предшествующей работы. В противном случае /-й элемент равен нулю г. Затем определяют вектор-строку [Г], имеющий /-м элементом tj — реальное время начала /-й работы. Итерационный расчет элементов tj можно произвести с помощью следующего уравнения «алгебры календарного планирования*»: 0 = ^0)*2^#$\ B7) 5. ДЕТЕРМИНИРОВАННЫЕ ЗАДАЧИ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Мы различаем два класса задач календарного планирования: детерминированные и недетерминированные. Детерминированной называется такая задача, у которой решение неявно заложена в заданные ограничения. Детерминированная задача подобна задаче решения систем совместных уравнений, где ответ (то есть значения неизвестных) неявно содержится в уравнениях. В противоположность этому задача календарного планирования называется недетерминированной, если ограничения заключают в себе не определенный ответ, а самое большее — множество возможных (или допустимых) ответов. Для решения недетерминированной задачи надо сначала привести ее к детерминированной. 1 Вообще, элементы // могут быть произвольными ограничениями времени начала любой работы независимо от того, имеет она предшествующую работу или нет. 73
В задачах календарного планирования, когда последующая работа не задана предварительно ограничениями (или не подразумевается), для этого обычно устанавливается правило выбора последующих выполняемых работ. Это правило существенно сужает поле допустимых решений путем последовательного добавления ограничений к исходным ограничениям задачи до тех пор, пока не останется единственный ответ. .5.1. ПРИМЕР ДЕТЕРМИНИРОВАННОЙ ЗАДАЧИ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Здесь мы кратко рассмотрим следующую задачу: дано множество из п работ и известно, что определенные пары этих работ должны выполняться последовательно (то есть между ними нет третьей промежуточной работы). Для каждой из этих пар известно минимальное время от начала первой работы до возможного начала второй работы. И, наконец, задано время начала каждой работы, не имеющей предшественника. Требуется найти время начала всех работ х. Один подход к решению данной задачи был описан ранее (см. уравнение B7)). Мы, однако, воспользуемся возможностью описать другой вариант подхода. Заметим сначала, что заданы матрица [S] и вектор-строка [Г0], у которого /-й элемент /$0) соответствует времени начала работы /, если ей не предшествует никакая другая работа. В противном случае /-й элемент равен нулю. Далее, пусть [Г] с /-м элементом, равным /7-, представляет собой вектор-строку подлежащих определению моментов времени начала работ. Тогда можно записать, что т = [7,0]#[фЬ = [Т0] # [/*S*S2*...*s4 = [Т0] * IT0S] * [T0S] [S] * [T0S*] [S] *...* [7VS*-1] [S]. B8) Последнее уравнение может быть представлено в такой форме2: [Т] = ЩЬ где Щ] = [7VJ * [7\-i] [S] = [7\-i] [/ * 5] B9) и [Ti] = lT0}*lT0][S] = [T0][I*S]. 1 Эта задача аналогична определению времени наиболее раннего возможного начала работ на сетевой модели в методе критического пути. 2 При выводе уравнения B9) используется особое свойство сложения в «алгебре календарного планирования*», которое состоит в том, что [А]* [А] = = [А] для всех [А]. 74
Чтобы получить решение поставленной задачи, достаточно только решить уравнение B9), а для этого нужен алгоритм. Один из возможных алгоритмов состоит из следующих шагов: Шаг 1. Составим последовательность из п ячеек (или слов). Обозначим эту последовательность через Т. Заданное время начала i-й операции следует поместить в i-ю ячейку в Т. Во всех других ячейках в Т будут нули (в результате реализации алгоритма время начала каждой работы в конце концов попадет в соответствующую ячейку последовательности Т). Шаг 2. Для каждого заданного отношения непосредственного предшествования следует взять три ячейки. В первую ячейку каждой тройки помещают индекс непосредственно предшествующей работы /, во вторую ячейку — индекс работы, имеющей непосредственное предшествование (/), в третью—заданное минимальное время ttj с момента начала первой работы до возможного начала второй. Далее составляют последовательность трех ячеек так, чтобы индексы у находились между индексами i. Назовем эту последовательность ячеек через N. Шаг 3. Пусть индекс К = 0. Поместим этот индекс в каждую /-ю ячейку в Т (или следующий за ним), содержащий ненулевой элемент. Назовем номер, приданный i-й ячейке, номером ячейки /<V Шаг 4. Обозначим «крайнюю левую» ячейку в последовательности Т номером Kt = /С. Пусть это будет i-я ячейка. Первоначально все ненулевые ячейки будут иметь Kt = 0. Шаг 5. Сложим (имеется в виду обычное сложение) элемент, находящийся в указанной выше i-й ячейке, с первым ttJ в N. Сравним сумму с элементом, содержащимся в у-й ячейке Т. Если сумма больше, то элемент, у-й ячейки заменяют суммой и маркируют ячейку. Этот шаг повторяют с каждым у-м из последующих ttj. Шаг 6. Будем повторять алгоритм, начиная с третьего шага, до тех пор, пока не окажется ячеек с Kj = К- Затем номер /С/ всех помеченных ячеек увеличивают на единицу и уничтожают метки. Далее, переходят от К к К + 1 и повторяют, начиная с шага 4, все последующие шаги. Если не оказывается помеченных ячеек, то переходят к шагу «конец». Конец. По достижении этого шага в i-й ячейке последовательности Т будет находиться время начала i-й работы. 6. НЕДЕТЕРМИНИРОВАННЫЕ ЗАДАЧИ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Об основном различии между детерминированной и недетерминированной задачами календарного планирования уже говорилось в разделе 5. Здесь мы перейдем непосредственно к описанию решений особого класса недетерминированных задач календарного 73
планирования, которые обычно называют моделированием производства. Эти задачи характеризуются следующими особенностями. 1) Необходимо выполнить п работ. Указаны типы станковг на которых производится каждая работа. Для выполнения работ в наличии может быть одна или несколько единиц оборудования каждого типа. 2) Вследствие особенностей ассортимента выпускаемых изделий определенные пары работ должны выполняться последовательно. Для каждой из этих пар задано минимальное время между началом первой работы и возможным началом второй. 3) Определенные пары работ могут быть выполнены последовательно, так как они должны производиться на однотипном оборудовании и, возможно, даже на одном и том же станке данного* типа г. Для каждой такой пары существует заданное минимальное время между началом первой работы и возможным началом второй, если, конечно, мы предполагаем, что вторая работа в конце концов непосредственно последует за первой работой на одном и том же станке. 4) Для некоторых работ будет задано наиболее раннее время возможного начала. Эти данные, по-видимому, должны быть указаны в следующих случаях: а) для выполнения работ необходимо изделие, которое поступит в производство только к определенному времени (здесь достаточно установить время поступления такого изделия только для работ, не имеющих предшественников); б) для выполнения работы требуется специальное оборудование, сырье, услуги и т. п., которые появятся только после определенного момента времени. 5) Для каждой работы может быть задано число, показывающее время, необходимое для ее выполнения от начала до конца. Задача состоит в том, чтобы определить момент времени начала каждой работы и конкретные станки, на которых она будет выполняться. Кроме того, если задана продолжительность выполнения работы, то можно определить момент времени ее завершения. Чтобы решить поставленную задачу, допустим, что известно правило выбора работы, которая должна выполняться следующей. Ниже дается математическое решение задачи с применением «алгебры календарного планирования*». Начнем снова с постановки задачи. Соберем информацию по указанным выше пунктам 1, 2 и 3 в открытую матрицу [50]> в которой sij = tij, если задано, что i <C /, Sij^tijXtj, если возможно, что i < /, stj = 0, если невозможно i < /. C0) 1 В данном конкретном случае это означает, что операции i и / должны выполняться на однотипном оборудовании и, следовательно, они могут быть выполнены поочередно на одном из станков данного типа. 76
Переменная хи имеет значение i, если операции i и у будут выполняться последовательно на одном и том же станке. В противном случае xtj является множеством, равным 0. S^ приравнивается нулю с самого начала, если известно, что i = /, /<л, или / < t, или также, что i и / должны выполняться на различных типах оборудования и не задано i < /. Информация по пункту 4 сводится в вектор «алгебры календарного планирования»* [Г0], у которого /-й элемент соответствует наиболее раннему допустимому времени начала /, если оно установлено, или в ином случае — 0. Информация по пункту 5 не требует специальной обработки. Она используется главным образом для нахождения времени завершения работ, когда дано время их начала. Во многих случаях отрезки времени, упоминаемые в пункте 5, будут такими же, как один или другой из отрезков, упоминаемых в пункте 2 или 3. Для упрощения дальнейшего изложения предположим, что 1) существует только один станок каждого типа; 2) для выполнения каждой работы требуется только один «з этих станков; 3) выбор последующих работ, выполняемых на этом станке, производится по правилу FOFO. Это правило имеет много разновидностей. Однако в нашей задаче, приводимой для примера, оно попросту означает, что следующей работой, которая будет выполняться на станке, должна быть такая, которая займет станок на наименьший промежуток времени и быстрее других освободит его для другой работы. Заметьте, что правило не требует, чтобы работу можно было начать, как только станок освободится, или чтобы работа была выбрана из очереди работ, ожидающих освобождения станка. Согласно этому правилу, иногда будет планироваться простой станка даже тогда, когда одна или несколько работ стоят в очереди перед этим станком. Очевидно, в подобном случае правило держит станок незагруженным в ожидании подхода работы с короткой продолжительностью выполнения. Теперь мы можем перейти к описанию итеративного процесса определения моментов времени начала всех работ. Этот процесс во многом похож на применявшийся для нахождения моментов времени начала операций в детерминированной задаче календарного планирования, рассмотренной в разделе 5 (см. уравнение 29). Шаг 1. Построить описанные выше вектор [Т0] и матрицу [S0]. Шаг 2. Поместить каждый нулевой или потенциально нулевой столбец в [S0]. (Столбец является потенциально нулевым, если его можно сделать нулевым, приравнивая нулю значения всех х в столбце и вычеркивая все элементы в строках работ, отобранных ранее к выполнению.) Шаг 3. Для каждой /-й работы, столбец которой при втором шаге был помещен в [S0], следует определить «контрольное число», 77
равное /-й компоненте вектора [Г0], умноженной на минимальный коэффициент при х строки у-х работ матрицы [50]. Вычисленные таким образом числа именуются FACATS («момент высвобождения станка»). Каждое из них соответствует наиболее раннему моменту времени, когда на данном станке можно будет начать новую работу, после работы /, если последняя будет отобрана для выполнения как ближайшая. Выбирается /-я работа, у которой, расчетное значение времени высвобождения станка минимально. Шаг 4. Преобразовать [S0] в [Si] следующим образом: а) приравнять нулю каждый /-й xtj в столбце у; б) приравнять каждый из xjk (если они имеются) у$ъ (это изменение переменной объяснено в следующем параграфе); в) если имеется yhj> то его следует приравнять I, а все другие унн (при их наличии) — нулю. Шаг 5. Вычислить [TJ = [Г0]*[Т0 # SJ. При умножении [Т0] на [SJ с Xij следует обращаться так, как если бы они были нулями, а с ytj — как если бы они были-i. Шаги с первого по пятый показывают, как выбирается первая работа для запуска в производство и как затем изменяют задачу, чтобы итеративный процесс мог продолжаться. В частности, чтобы выбрать ближайшую следующую работу, повторяют шаги 3, 4 и 5, заменив [S0J на [5J, [Т0] на [TJ, [SJ на [S2] и [7J на [Т21. Этот итеративный процесс продолжают до тех пор, пока не будут отобраны все работы, у которых время всех переменных (х и у) в исходной матрице [S0] было заменено на i или 0. Окончательные у-е записи в [Т] соответствуют моментам времени начала у-х работ. Переменные у носят промежуточный характер. Они представляют значения, которые могут принимать хи на пути превращения в йоту или в нуль и оправданы тем, что при отборе у-й работы в качестве ближайшей сразу же становятся известными работы, которые уже не могут непосредственно предшествовать ей. Однако мы не знаем, какая именно работа (если она существует) будет непосредственно следовать за отобранной у-й работой. Известно только, что (возможно) один из Xjk будет приравнен t, а другие — 0. Пока xJk находятся в этом состоянии, мы называем их yJk. 6.1. ЧИСЛОВОЙ ПРИМЕР Рассмотрим следующую числовую задачу. Требуется изготовить 2 изделия: Р1 и Р2. Допустим, что Р1 запущено в производство в момент времени i, P2 — в момент времени 3. Для изготовления каждого изделия требуется выполнить 3 работы. Взаимосвязь работ и длительность их выполнения указаны на диаграммах производственных потоков (см. рис. 10). На рис. 10 числами в кружках (на пересечениях) обозначены работы. Последовательность из трех чисел (х, у, г) в скобках у каждого кружка имеет следующий смысл: х — номер станка, необ- 78
ходимого для выполнения работы (заметьте, что каждая работа выполняется на одном из двух станков); у — минимальная длительность с начала работы i до возможного начала следующей для данного изделия работы; z — минимальная длительность времени с начала работы i до возможного начала выполнения следующей. Р1 B,1,1) Рис. 10. на данном станке работы. Априори не имеется ограничений, наложенных на последовательность выполнения работ на станках. Первый шаг заключается в построении матриц [Т0] и [S0]r как это показано ниже. Эти матрицы строятся так, что /-я строка и (или) столбец представляют i-ю работу. Все х в [S01 представляют собой различные переменные. [То] = [ [50] = i "О 0 2х 0 1* 0 i 0 0 0 1* 0 2х max 0 .B, 1 0 0 \х 0 Ix) 3 0 \х 0 0 0 2х 0 1л 0 2л- 1 0 0 0] 0 " 1х 0 1л 2 0 C1> Построив [S0], мы обнаружим, что работы 1, 2 и 4 являются потенциально нулевыми и моменты высвобождения оборудования для них соответственно равны 1, 1 и 4. Так как работы 1 и 2 связаны между собой, мы выбираем (произвольно) работу 1 для выполнения в первую очередь. Этот выбор изменяет матрицу [S0], превращая её в "О 0 0 0 0 0 0 0 0 1л 0 2х тах B, 1 0 0 1л 0 W 0 1л 0 0 0 2л iy 0 2л 1 0 0 0 ' 1л 0 1л 2 0 [Si] Рассчитаем [Т^ = [Т0] * [Т0 # St] и получим [7\] = [i i2340]. C2> (?3). 79.
Теперь мы видим, что потенциально нулевыми столбцами являются работы 2 и 4 (поскольку работа 1 началась, мы не обращаем внимания на ее строку и столбец) и время высвобождения станка для них остается равным соответственно 1 и 4. Следовательно, мы выберем работу 2 как подлежащую выполнению в следующую очередь. Этот выбор изменит IS^ и превратит ее в [S21. ГО 0 max B, \у) 0 \у О О 0 1 0 0 0 0 0 0 0 0 \х 0 0 0 [St iy 0 0 0 2х 0 2х 1 0 0 iy 0 1* 2 0 C4) Вычислив [T2] = [Ti] *[Ti # S2], получим [Г2]-[1 i2346]. C5) Теперь работами с потенциально нулевыми столбцами являются работы 3 и 4. Моменты времени высвобождения станка для них равны соответственно 4 и 4. Выбираем для запуска работу 3 опять- таки произвольно. Этот выбор превратит [S2] в [S3]. [S3] = 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 iy 0 0 0 2х 0 0 2у 1 0 0 0 iy 0 lx 2 0 C6) Вычислив [Т3] = [Г2] *[Т2 й S3], мы получим [T3] = [i 12 3 4 6]. C7) Теперь имеется только одна работа с потенциально нулевым столбцом — это работа 4. Поскольку выбор ограничивается только одной работой, можно не рассчитывать момент времени высвобождения станка. В качестве следующей операции, подлежащей выполнению, выбираем работу 4 и в результате получаем [SJ = Вычислив [Г4] = [Г3] * [^з # S4], имеем [74] = [i 12 3 4 6]. 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 1 0 0 0 0 0 0 2у 1 0 0 0 0 0 \у 2 0 C8) C9) 80
Теперь снова имеется только одна работа с потенциально нулевым столбцом, а именно работа 5. Следовательно, выбираем ее для запуска в производство, в результате чего получим  0 0 0 0 [о 0 0 0 0 0 0 2 1 0 0 0 0 0 1 0 0 0 0 0 0 2 1 0 0 0 I 0 0 щ 2 о ! С помощью матрицы [S5] вычислим [Г5] = [Тк] * [Г4 # S5] или [Г5] = [1 12 3 4 6]. D1) Последней выполняется работа 6. Ее выбор дает матрицу [S61: '0 0 0 0 0 [о 0 0 0 0 0 0 2 1 0 0 0 0 0 1 0 0 0 0 0 0 2 1 0 0 01 0 0 1 2 0J и 1Т*] = [Т5].[ТЬ] ft [S6] = [i 12 3 4 6]. D3) [SQ] является решенной матрицей [S], а [Г6] —вектором времени начала операций [Т]. Каждая запись / вектора [Т] обозначает момент времени начала операции /. 6.2. ВЗАИМОЗАМЕНЯЕМОЕ ОБОРУДОВАНИЕ Существует множество различных направлений обобщения задачи и решения, представленных в предыдущих разделах. К сожалению, из-за нехватки места мы можем рассмотреть только одно из возможных направлений обобщения, а именно изменение задачи применительно к случаю, когда имеется произвольное число станков каждого типа. Отметим попутно, что если для выполнения работ требуется одновременное наличие двух или более различных типов, то изменять задачу не требуется. В этом случае, если один или несколько различных станков, необходимых для выполнения работы i, требуются также для работы /, мы просто принимаем, что su равно tijXij. Мыслимо также использование различных значе- 6 Заказ № 195 81
ний ttj для каждого станка. Однако применительно к рассматриваемой нами задаче достаточно брать максимальное ttj *. Когда имеется не один, а несколько станков каждого типа, мы к работам, действительно выполняемым на станках каждого типа, прибавляем некоторое число условных работ, которые не имеют предшественников и сами не предшествуют никакой другой работе. Для их выполнения требуется время i. Условные работы, однако, могут непосредственно предшествовать реальным и иметь их в качестве непосредственных предшественников, если реальные работы выполняются на станках того типа, для которого введены условные работы. В описанной выше задаче с условными работами мы делаем так, чтобы в первую очередь были начаты именно они. Для этого за одну итерацию заменяем все х в столбцах условных работ на нули, а все х в их строках — на t/. Затем мы могли бы продолжать решение обычным способом, если бы не то обстоятельство, что в столбце «кандидаты на запуск» может быть более одной записи с коэффициентом при у. (Фактически будет столько записей с коэффициентами при у у сколько имеется взаимозаменяемых станков для выполнения «работы кандидата».) В таком случае при умножении [S0] на векторы [Th] приравниваем к i не все yiJy а только тот из них (в каждом столбце /), который минимизирует /-ю компоненту вектора-произведения. Это изменение решения задачи календарного планирования приводит к тому, что каждая у-я работа (выбранная как ближайшая) будет начата на том станке требуемого типа, который дольше других простаивал в ожидании загрузки. Если ни один изэтих станков не простаивает, работа назначается на том из них, который первым освободится для ее выполнения. 0.3. АЛЬТЕРНАТИВНЫЕ ПРАВИЛА КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Важная особенность решения недетерминированной задачи заключается в том, что после каждого выбора начинаемой работы должна существовать возможность такого преобразования исход- 1 Стоит отметить, кстати, что при такой формулировке автоматически учитывается возможная экономия на наладках станков, зависящая от последовательности работ на них. Это достигается следующим образом: мы считаем, что время tfj, затрачиваемое на выполнение работы i, состоит из двух слагаемых, а именно t^ = uj-\-sij, где t'ij — продолжительность работы i, если станок, выполняющий эту работу, уже налажен, a Sij — время на переналадку станка на работу /, которая может непосредственно следовать на станке за работой *'. Очевидно, возможны различные значения t\j в зависимости от работ /, которые могут непосредственно следовать за работой i на этом станке. Ясно также, что переналадка станка с работы i на работу / не задержит начала той работы, которая обязательно должна быть начата непосредственно после работы /'. 82
ной задачи, чтобы правило выбора можно было бы применить снова. Специфическая цель подобного преобразования заключается в том, чтобы доставить информацию о новом состоянии системы, необходимую для повторного применения этого правила календарного планирования. В задаче, рассмотренной в разделе 6, с правилом выбора FOFO важное значение имеет информация о времени возможного начала каждой работы с потенциально нулевым столбцом в матрице [S]. Без такой информации применение правила невозможно. Информацию обычно получают путем ряда повторяющихся вычислений векторов [7\] (напомним, что /-й компонент [Tk] является как раз наиболее ранним моментом времени возможного начала работы /). Для применения других правил календарного планирования может требоваться больше или меньше информации о состоянии системы, чем для этого правила. Например, можно представить такие правила календарного планирования, при применений которых было бы необходимо после каждого &-го выбора ближайшей работы вычислять матрицу [фА] или даже [Qh], соответствующую матрице [5^1. С другой стороны, можно представить правила календарного планирования, для которых потребовалось бы знать только наличие работ при очередном выборе. 6*
ГЛАВА 5 Задача календарного планирования в цехе с единичным и мелкосерийным производством Р. С. РЕЙНИЦ1 1. ОСНОВНЫЕ ИДЕИ И МЕТОД ПОДХОДА К ЗАДАЧЕ Производственный процесс в цехе с единичным и мелкосерийным производством может быть представлен как сложная система. Это динамический процесс с непрерывным потоком заказов. Если бы мы захотели проследить прохождение каждого заказа в цехе, то масштабы задачи оказались бы столь велики, что анализ был бы невозможен. Но нужно ли следить за прохождением каждого заказа? Разве нельзя рассматривать каждый заказ как единицу совокупности заказов и оценивать статистические свойства совокупности, на которые влияют параметры производства? Таковыми могут быть рабочая сила и производительность оборудования, квалификация персонала, возможности складского хозяйства и т. п. Мы считаем, что такой подход позволит представить задачу в приемлемом для анализа виде. В нем используются идеи теории массового обслуживания (цех рассматривается как сеть очередей) и термодинамики [1] (вместо попытки установить, в каком пункте цеха находится изделие в любой момент времени, определяется вероятность нахождения изделия в различных пунктах цеха). Основное допущение, принятое в моделях, состоит в том, что различные станки в цехе, рассматриваемые как каналы массового обслуживания, работают независимо один от другого, а поступление заявок на центр обслуживания соответствует пуассоновскому потоку. Фактические данные, основанные на обследовании цехов с единичным и мелкосерийным производством и сходных с ними в данном отношении объектов (например, аэродромов), показали, что поступление заказов в различные обслуживающие отделения или цехи очень близки к пуассоновскому потоку [2, 3]. Кроме того, имеется еще одно разумное основание для использования пуассоновского потока как модели входного потока реальной Работает в «Сокони мобил ойл компани». 84
системы: пуассоновскии процесс является пределом дезинтеграции планируемых процессов. Дело в том, что сроки поступления изделий в данный цех зависят от момента завершения их обработки в других цехах. Но каждой операции в каждом цехе соответствует некоторое распределение вероятностей ее длительностей, а связанные с этим обстоятельством отклонения действительных сроков от запланированных придают случайный характер входному потоку деталей («заказов»), что и является существенной особенностью пуассоновского потока. Это допущение позволяет упростить громоздкую задачу определения очередности изделий х для центра обслуживания с числом станков, равным п, разбив ее на п задач для центров с одним станком. Предположим также, что цех в состоянии выполнить все поступающие заказы (то есть коэффициент использования меньше единицы) и что он работает в статистически установившемся режиме. Считается также, что распределение вероятностей длительности обслуживания подчинено показательному закону или оно может быть апроксимировано — либо гиперэкспоненциальным распределением, либо законом Эрланга &-го порядка. Марковский процесс (дискретный в пространстве и непрерывный во времени) оказался идеальной математической моделью системы: он охватывает стохастические свойства поступления и выбытия заказов. Мы различаем два уровня принятия решений, которые тесно связаны между собой: 1) Принятие решений, относящихся к работе всего цеха, как, например, прием или отказ от заказов, установление даты поставки. 2) Принятие решений, относящихся к центру станочной обработки, как, например, очередность выполнения работ данным центром. Для обоих уровней принятия решений разработаны математические модели. В данной статье нами представлен метод получения функции распределения длительностей ожидания с помощью уравнений Колмогорова [4], путем введения искусственных абсорбирующих состояний в марковскую матрицу перехода и путем изменения темпа поступления заказов. При заданном способе установления очередности изделий эти определяющие время функции позво- 1 Здесь и в дальнейшем автор применяет термин sequence «последовательность». Речь идет о последовательности обслуживания заказов (в понятиях теории массового обслуживания) — иначе говоря, об очередности их выполнения, a sequencing procedure в данном случае соответствует «дисциплине очереди». Но тот же термин применяется в смысле «календарный план» или «график» обработки изделий — то есть в том же смысле, что и в предыдущих статьях этой части сборника. И, наконец, с точки зрения организации производства sequencing procedure (при ожидании нескольких изделий перед станком) соответствует «правилу приоритетов» (см. вступительную статью). Автор, видимо, сознательно унифицирует все эти понятия. С указанными выше оговорками мы переводим sequence как «очередность изделий»— термин, наиболее приемлемый для всех случаев.— Прим. ред. 85
ляют нам оценить длительность выполнения заказа и соответствующее распределение вероятностей, что можно положить в основу договоренности о сроках поставки. Задача определения очередности изделий *в цехе с единичным и мелкосерийным производством не является статической. Вследствие постоянного притока заказов выбор оптимальной очередности изделий в каждый отдельный период времени вовсе не означает, что весь процесс будет оптимальным. Поэтому задача была сформулирована как задача динамического программирования с использованием алгоритма Говарда [5] для решения рекурсивных отношений, выраженных N линейными дифференциальными уравнениями с постоянными коэффициентами. Эти уравнения включают структуру затрат нашей задачи, и из них с помощью итерационного метода Говарда определяют последовательность работ, при которой общий ожидаемый уровень издержек будет минимальным. Для нахождения оптимальной очередности изделий требуется описать систему многочисленными ее возможными состояниями (достигающими нескольких тысяч). Это обстоятельство может серьезно затруднить решение практических задач. Ожидается, что в течение ближайших десяти лет или немного меньшего срока появятся электронно-вычислительные машины, способные быстро и недорого решать крупномасштабные вычислительные задачи. 2. МОДЕЛЬ ОТДЕЛЬНОГО ЦЕНТРА СТАНОЧНОЙ ОБРАБОТКИ (АНАЛИЗ) Во введении к статье указывалось, что работа отдельного центра станочной обработки непосредственно влияет на работу цеха в целом. От выбора способа установления очередности изделий зависит, сколько времени они будут ожидать обработки, что в свою очередь обусловливает издержки, связанные с длительностью ожидания. Очередность изделий влияет также на стоимость обработки, так как она определяет последовательность и число наладок станков для обработки различных изделий. Покажем теперь, как рассчитать длительности ожидания обработки при заданной очередности изделий и как найти оптимальную очередность. 2.1. ОПРЕДЕЛЕНИЕ ДЛИТЕЛЬНОСТИ ОЖИДАНИЯ а) Система 1. Центр станочной обработки. Центр станочной обработки состоит из постоянного числа идентичных станков. Под центром станочной обработки подразумеваются также контрольные, сборочные, упаковочные или любые другие отделения цеха, через которые должно пройти изделие. 86
2. Входной поток является стационарным и соответствует прибытию незаконченных изделий, подлежащих дальнейшей обработке на станках. Изделия делятся на г классов. 3. Выходной поток центра станочной обработки составляют незавершенные обработкой или готовые изделия. б) Параметры модели Для каждого класса изделий мы располагаем следующими характеристиками: Хр — средний темп поступления, р — 1, 2, . . . ...,/*. l*>Ph — средняя длительность обработки, если работа класса k следует за работой класса р, где р, k = 1, 2, . ..., г. Время выполнения работы класса р включает в себя смену оснастки и наладку станка для выполнения следующей работы класса k. в) Допущения в модели 1. Центр станочной обработки в состоянии выполнить все поступающие заказы (то есть коэффициент использования меньше единицы). 2. Входной поток изделий соответствует пуассоновскому закону. 3. Распределение длительностей обработки (обслуживания) соответствует показательному закону или может быть апроксими- ровано — либо гиперэкспоненциальным распределением, либо законом Эрланга fe-ro порядка. 4. Система находится в установившемся состоянии. 5. Число возможных состояний конечно. (Каждое состояние определяется числом изделий класса р, ожидающих обработки, р = 1, 2, . . ., г, а также типом изделий, обрабатываемых в данный момент времени.) Такое допущение необходимо в связи с тем, что вычислительные машины ограничены по своим возможностям в отношении объема решаемых ими задач. С другой стороны, если на систему наложены ограничения в отношении накопления остатков незавершенного производства, то такое допущение необходимо для того, чтобы удовлетворить этим ограничениям. 6. Каждый центр станочной обработки с т одинаковыми станками и темпом обработки A /m)\i приравнен одноканальной системе обслуживания с темпом обслуживания ц,. Такое допущение принимается прежде всего с целью сокращения вычислительных работ. При решении задачи для совокупности многоканальных центров не возникает принципиальных затруднений, кроме случаев, когда количество состояний значительно возрастает. 7. Любая начатая операция должна быть доведена до конца. Иными словами, не допускается запуск нового изделия с момента начала данной операции и до ее завершения, независимо от того, к каким классам отнесены изделия (не допускается процедура обслуживания без преимущества для начатых обслуживанием заказов). Но изделия, ожидающие в очереди, можно сместить, если это предусмотрено процедурой. 8. Внутри каждого класса дисциплина очереди соответствует правилу «первым прибыл — первым обслужен». 87
9. Способ установления очередности изделий постоянен и известен, иначе говоря, при заданном состоянии Et известно, какое из ожидающих изделий должно последовать для обработки на освободившийся станок. г) Математическое представление центра обслуживания. В течение малого интервала времени dt может случиться переход из состояния i в одно из многочисленных возможных состояний. Если изделия сгруппированы в г классов, то состояния будут заданы в г + 1-мерном векторном пространстве. Так, вектор состояний (р; пи п2, . . ., пг) показывает, что обслуживается изделие класса р, а в очереди ждут tit изделий класса 1, п2 класса 2, . . ., пг класса г. В рассмотренной системе моменты времени перехода из состояния в состояние случайны. Если задано состояние Et в момент t0, то никакая дополнительная информация о состояниях системы за предшествующее время не может изменить вероятности того, что система окажется в состоянии Ej в любой последующий момент t0 + t. Для таких систем действительно уравнение Чэпмена — Колмогорова [4]. Пусть pij— вероятность перехода из состояния i в состояние / на протяжении короткого промежутка времени h. pi (t) — вероятность того, что система находится в состоянии i в момент t. Уравнение Чэпмена — Колмогорова дает следующее рекуррентное отношение: 'Pj(t+h) = %Pi(t)ptJ, A) г где 2ру=1- B) Вычитая Pj(t) из обеих частей уравнения A), получаем р,(/+Л)-рЛ0 = 2^@ру-ял0, C) г Pj(t + h)-Pj{t) = %Pt(t)lptj-6tj}, D) г где 8tj — дельта Кронекера со значением 11, если i = /, О, если 1ф\. • E) Разделив уравнение D) на h и переходя к пределу, получим Ит ГР,(< + »)-РЛ01 = v р,(Olim r^i^l • F) /i-*-0 L я J . h-^-0 L Л J 88
Определим Tu = \im!?=^l. G) Допустим, что Ttj существует. При i ф j Ttj называется интенсивностью перехода из состояния i в состояние /. Уравнения F) и G) приводят к известному прямому уравнению Колмогорова ±Pj{t) = %Pt(t)T,j. (8) at i Уравнение (8) характеризует скорость изменения вероятности Pj состояния / в момент / и представляет марковский процесс с непрерывным временем и дискретными состояниями. Пусть Р (t) — вектор-строка; в матричном обозначении уравнение (8) принимает вид ±P(t) = P(t)T. (9) Поскольку 2ри-1 = 0 B) 3 и 2(р«-ву)=2р«-1. (Ю) i г из этого вытекает, что 2Г„ = 0; Ти=-%Ти, A1) 3 Зфг то есть каждая строка непрерывной марковской цепи в сумме дает нуль. Отсюда видно, что нашу систему можно описать совокупностью цепей Маркова — по одной на каждый центр. д) Функция распределения длительностей ожидания. Для оценки распределения длительности ожидания изделий класса р в отделении d выделим одно из них случайным отбором в момент прибытия и назовем его «меченым изделием». Допустим, что решение по вопросу — какое изделие надо обрабатывать следующим — зависит от системы и известно. Следующий аппарат позволяет проследить путь нашего меченого изделия: все изделия класса р, поступающие после меченого, обозначаются через р'. Другими словами, мы вводим дополнительный класс изделий р' с той же интенсивностью перехода, как у р, но все изделия, прибывающие после меченого, мы добавляем к пр, и все выбывающие из класса р уменьшают пр. Поскольку внутри каждого класса мы руководствуемся правилом «первым прибыл — первым обслужен», меченое изделие поступит на станок тогда, когда пр = 0 и в обработке было изделие р. 89
Следовательно, мы создаем абсорбирующие состояния вида (р\ пи . . ., Яр-i, пр = О, пр„ . . ., пг). Пусть все эти состояния принадлежат множеств^ А, а все переходные состояния — множеству В. Пусть J — максимально допускаемое количество изделий, ожидающих в очередях. Матрица перехода для этой ситуации получается следующим образом: система переходит из состояния \к\ tli, • • •» Пр, Яр', . . •, Пг) в состояние \к\ tli, • • •, tip, tip' -J- 1» • • •» Пг) с интенсивностью перехода Яр, если г 2 ЯА < /, fe=l или к состоянию («| Mi, . • ., tlfi'V I» • • • > ^p» Яр', • • ., tlr) с интенсивностью перехода Яд, Нфр, если ь=1 или к состоянию (р; tii, • • •» Яр — 1, Яр', ..., пг) с интенсивностью перехода цАр, если пр > 0, и в соответствии с принятой для системы процедурой следующим запускается в обработку изделие класса р или система переходит в состояние \П, tli, • • •» Яд~— 1, • • •, tip, tip', • ш •, «*х^ с интенсивностью перехода \ikh> если tih > О, и в соответствии с принятой для системы процедурой следующим запускается в обработку изделие класса й. Все остальные переходы имеют интенсивность, равную нулю. Диагональные элементы составляют сумму всех интенсивностей перехода в своей строке с обратным знаком (см. уравнение 11). Для более компактной записи обозначим состояния как 1,2, . . . . . ., I, ...,/,..., N и интенсивности перехода через Ttj. Опустив подстрочные индексы, обозначающие меченую работу и рассматриваемое отделение, обозначим через qj (t) вероятность того, что данное изделие р все еще находится в очереди в момент времени t после прибытия, причем задано, что оно присоединилось к системе в нулевой момент времени, что означало переход системы в состояние / 6 В. 90
Вероятность qs (t) можно изучить, применив уравнение Чэп- мена — Колмогорова: qj(t + dt)=%Tjkqk(t)dt + {l- 2 Tjkdt)qj(t). A2) k?B k?A\JB Уравнение A2) можно интерпретировать следующим образом: изделие р все еще будет находиться в очереди через мгновение dt при одном из следующих условий. 1. Оно (изделие) осуществляет переход в состояние k 6 В (к Ф /) спустя мгновение dt после присоединения к очереди. Данный случай имеет вероятность Tjk dt. 2. Оно не приводит ни к какому другому состоянию спустя мгновение dt после присоединения к очереди. Этот случай имеет вероятность 0-2 TJhdt). h?A\JB кФэ Заметив, что h?A[JB кфз перенося qj (t) в левую часть уравнения, разделив на dt и переходя к пределу, получим ЩР = 2 TJhqh (t) для всех / ? В. A3) к?В Таким образом можно выразить скорость изменения искомого распределения длительности ожидания, точно определив множество переходных состояний. Образуем новую матрицу перехода X, которая будет включать только переходные состояния системы Т. Интенсивность перехода X будет такова, что Xjk = Tjk, если /, k? В. Из уравнения A3) имеем ^-2 *,**<<>. (Н) h Пусть Q(t) вектор-столбец qu (t). Тогда в матричном обозначении получим &iP-XQ(f). A5) Преобразование Лапласа в отношении A5) приводит к sQ(s)-Q@) = XQ(s), . A6) (sI-X)Q(s) = Q@), A7) 91
где / — единичная матрица. Умножив обе части уравнения A7) на величину, обратную (si — X), получим Q(s) = (s/-X)-iQ@), A8) но Q@) = A ... 1)т, A9) поскольку вероятность того, что меченое изделие р все еще находится в стадии ожидания в нулевой момент времени после присоединения его к системе, равна единице. Отсюда Q(s) = (sl-X)-*A ... If. B0) Пусть Н (t) — результат обратного преобразования Q (s). Тогда неусловная кумулятивная функция распределения вероятностей длительности ожидания Gq (t) получается взвешиванием вектрра- столбца Н (t) соответствующим вектором * Р матрицы Т вероятностей для установившегося режима. Заметим, что матрица Т содержит все состояния, переходные и абсорбирующие, то есть размерность Т равна N> тогда как размерность Н равна числу состояний, составляющих только множество В. М0=2М0^> B1) где P'j имеет следующее значение: пусть Pj — вероятность для установившегося режима Ej, В — переходные состояния. Тогда Р1 — вероятность того, что система находится в состоянии Ej 6 В сразу же после прибытия изделия классов pj. Каждая Р'3 равна одной из вероятностей Pt для установившегося режима, а именно вероятность, что после прибытия изделия класса р, Et переходит в Ej. В связи с тем, что наши вычисления имеют отношение к меченому изделию р, получим кумулятивную функцию распределения длительности ожидания для изделия класса р, отметив уравнение B1) соответствующим индексом GqP(t)= S hJV(t)P]. B2) )?Вр Пусть Wp — ожидаемая длительность нахождения изделия р в очереди; Е (t\p) — момент второго порядка длительности ожидания изделия р в очереди; (AtqpJ — дисперсия длительности ожидания изделия р в очереди. 1 Вектор Р вероятностей для установившегося режима получается путем решения системы совместных уравнений РТ = 0 плюс нормализующее условие N 92
Тогда Wp=^Gqp(t)dt, B3) Я(*«>) = 2 ^tG„(t)dt, B4) (Atqp)*=\Bt-Wp)Gqp(t)dt. B5) Пример. Пусть J (максимальный номер в очереди) равно двум и г (число классов изделий) равно единице. В этой модели, если в очереди находятся два изделия, то вновь поступающие изделия в очередь не принимаются. При расчете распределений длительности ожидания и их моментов такие изделия считаются находящимися в очереди в течение нулевого времени. Это избавляет нас от необходимости создавать искусственный класс изделий, так как в пределах каждого класса выполняется правило «первым прибыл — первым обслуживается». Чтобы выделить состояние, при котором меченое изделие входит в систему обслуживания, достаточно приравнять нулю темп поступления изделия в момент его прибытия. Тогда можно выделить следующие детерминированные состояния: а) когда в системе нет очереди и канал обслуживания занят и б) когда канал обслуживания свободен. Матрица X имеет вид Состояние A,1) A» 2) A,1) A.2) — \i О \1 -fl. B6) (si — X) — обратная ей матрица записывается следующим образом Состояние A,1) A, 2) 0.1) A.2) (sI-X) = s + ii О Состояние A,1) A,2) B7) A.1) A.2) 1 (sI-X)-* = /1 9\ I ?_ Q (s)T получено умножением (si — X) на вектор-столбец A; 1)г. 1 S + \l о B8) 93
Таким образом, Q^T=(jh-'^W+^T' B9) Условные кумулятивные распределения длительности ожидания В (i)T получают обратным преобразованием Q (s)T В (if = (er&\ life-** + e~vf. C0) Смысл В (t)T состоит в следующем: если известно, что после поступления заказа в очередь система находилась в состоянии A, 1), то вероятность того, что в момент времени t после поступления заказа он все еще будет в очереди, равна е'^К Если же задано, что после поступления заказа в очередь система была в состоянии A,2), то вероятность того, что в момент времени t после поступления заказ все еще будет в очереди, равна (I + \it) e~^1. Эти результаты хорошо известны из теории массового обслуживания. Преимущество приведенного выше решения для расчета распределений длительности ожидания состоит в том, что оно применимо при любой дисциплине очереди. Теперь мы должны установить полное распределение длительности ожидания Gq (t). Матрица перехода Т имеет для данного случая вид Состояние @,0) A,0) A,1) 0,2) @,0) I -Я Я Гв A.0) ц —Л—|* Я A, 1) \i — Я—\1 \i A,2) I fx -ц. C1) Вероятности в Т при установившемся режиме равны p=(Po\Poq;Poq2;Poqs), C2) где р°=Н* «-?• C3) И, в конечном счете, Gq(t)^QPole-^ + Q(l+iit)e^]. C4) В данном случае вероятностями для установившегося режима будут Р A,0) и Р A,1), так как заказ поступает в очередь и ожидает обслуживания только при состояниях A,0) и A,1). Поскольку г = 1, индекс класса работы в нашей записи отсутствует. Средняя длительность ожидания оо W=^Gq(t)dt. B3) о 94
Подставляя равенство C4) в равенство B3) и интегрируя, получим W=P0Q[-±e-*-fe-*-^W+l)]~, C5) W = P0±A+2q). C6) Для момента второго порядка длительности ожидания имеем сю E(t\) = 2^tGq(t)'dt, B4) о ?(ф = 2Р04-A+Зе). C7) г Определим также дисперсию сю (Ад2 о. J Bt—W) Gq (t) dt, B5) о (A^ = 2P0^-A + 3q)-[-^-A+2q)]2. C8) Рассчитать функцию распределения длительности ожидания Gpq (t) на практике весьма затруднительно, так как для нахождения обратной матрицы (si — ХУ1 должна быть сохранена функциональная форма равенства B0). Ниже в статье приводится другой, правда не столь изящный, метод определения Gpq (/). При его применении можно использовать высокопроизводительные электронно-вычислительные машины. Как будет показано, после описания указанного выше метода нахождения Gpq(t) расчеты упрощаются, если нам не требуется знать приближенную форму распределения длительности ожидания, а достаточно только знать моменты (как в случае установления распределения общей длительности обработки изделия). Другая методика нахождения распределения длительности ожидания. В уравнении A5) имеем -^Qp(i)-X,Qp(i). A5) Решением уравнения A5) является Qp(*)-Qp@)e*p'f C9) в котором е*р«= [l + Xpt + -±-X4*+ ... ] , C9) где Q (О), как и прежде, является вероятностью того, что р находится в системе в нулевой момент времени (в момент прибытия). 95
Следовательно, Qp(*) = **p'k(l,..., 1)^ D0) Тогда Qp{t) = Q + Xpt + ±Xlt* + ±Xlt*+...yU...,l)T. D1) Qp(t) можно легко определить, так как при ее расчете производятся только операции матричного умножения и сложения. eXpi можно аппроксимировать с помощью степенных рядов с желаемой степенью точности, взяв достаточное число членов разложения уравнения D1). При состоянии, в котором находится система по прибытии изделия р, Qp (t) остается пока условным. Рассуждая так же, как и при описании предыдущего метода, мы обнаружим, что уже не условным распределением длительности ожидания при установившемся режиме является Овр(/)=2^р@Я} Р=1,2, ...,г. D2) Вывод момента порядка г для длительности ожидания. В уравнении A5) мы получили скорость изменения вектора распределения длительности ожидания Q (t). Такая же зависимость будет иметь место и для функции плотности распределения W (t)y поскольку последняя может быть получена дифференцированием функции распределения, а матрица X (переходных состояний) принадлежит обеим функциям. Отсюда *%2>=2 ****<'>• • <43> h Пусть Yj — момент времени, когда рассматриваемое нами изделие поступает в канал обслуживания, переводя систему в состояние /6 5» если задано, что оно прибыло в систему в нулевой момент времени. Известно, что wj(t)dt = P[Yj?(t,t + dt)]. Момент порядка г распределения Yj равен ?(У5) = (-1)г-^г<М*)|.=о, D4) где Wj (s) является преобразованием Лапласа для Wj (t). Преобразование Лапласа уравнения D3) имеет вид SWj (S) - Wj @) = 2 XjkWk (s). D5) ft Взяв первую производную по 5 в уравнении D5) Wj (s) + SWj (s) = 2 XjkWh (s), D6) 96
мы имеем «М0) = 1, D7) Wj@)=-E(Yj)=-Kj, D8) где Kj — условная средняя длительность ожидания. Подставляя уравнения D7) и D8) в уравнение D6) (при s = 0), мы получим 2ЗД*=-1. D9) k Пусть в матричной записи К будет вектором-столбцом Kj Х#Г=-A, ..., 1)т. E0) Допуская, что существует матрица, обратная Х> имеем #Г=-Х-*A, ...Л)Т. E1) Момент второго порядка Yj получают дифференцированием уравнения D6) по s, полагая, что s = 0. Wj (s) + wj (s) + swj (s) = 2 Xjhwh (s) |в=о- E2) h Wj@) = E(YD = Rj, E3) где /fy—условный момент второго порядка длительности ожидания. -2Kj = ^1X}kRk, E4) к -2/С=Х/?, E5) или Я = (Х-1)*B, ...,2)т. E6) Мы видим, что как момент первого порядка, так и момент второго порядка для условного промежутка времени, в течение которого изделие находится в очереди, легко рассчитываются с помощью таких простых операций, как обращение и умножение матрицы. Задаваясь состоянием центра станочной обработки в момент поступления заказа, мы можем опеределить время, которое пройдет, прежде чем заказ достигнет канала обслуживания. Векторы средней длительности ожидания и момента второго порядка (не условных) получают взвешиванием их с помощью вектора априорной вероятности при установившемся режиме Р (опять, как и в случае распределения общего времени ожидания, необходимо отметить различие в размерности К, R и Р). 7 Заказ № 195 97
Для иллюстрации этого положения возьмем прежний пример. Состояние A,1) A,2) Х'г = 1 \1 1 ^ 'о 1 ^ A.1) A.2) tt7 = Po^(l+2Q). Для расчета момента второго порядка мы имеем: Состояние A,1) A,2) E7) E8) E9) F0) A.1) О (Х-*)» = A.2) E(tl)^RlP(l,0) + R2P(\, 1), ?(^) = 2P0(-^)A + 3q). F1) F2) F3) F4) Дисперсия значений tq рассчитывается с помощью следующих формул: т_пя F5) 12 F6) (MqY = E(t\)-W\ (Ag2 = 2P0-^-(l+3e)-[PoJ(l+2Q)]: Мы рассмотрели распределение длительности ожидания изделия р в отделении d. Если желательно получить распределение длительности выполнения изделия р (время, за которое изделие р покидает отделение), то следует сохранить прежний ход расчета, определив заново детерминированные состояния так, как показано далее: А = (k; пи ..., Лр-i, пр = 0, п'р ... пт) для всех кфр. 2.2. ОПРЕДЕЛЕНИЕ ОПТИМАЛЬНОЙ ОЧЕРЕДНОСТИ а) Система, Такая же, как описанная в разделе 2.1. б) Параметры модели. Кроме параметров, характеризующих загрузку центра станочной обработки (их мы рассматривали в раз- 98
деле 2.1), для каждого центра обслуживания имеются следующие стоимостные параметры: ср — норма издержек на межоперационные запасы для изделия р, связанная с ожиданием обработки; cpk — норма издержек на смену оснастки и наладки станка, если изделие k следует за изделием р (k ф р). Для получения cpk ожидаемые расходы на смену оснастки и наладку станка относят к ожидаемой длительности обработки; dp — норма издержек, связанная с опозданием поставок потребителям. Практически dp имеет следующее значение: некоторые контракты могут предусматривать штрафы за задержку поставок и премии за поставки ранее установленного срока. Такие издержки (прибыли) могут быть выражены в долларах на единицу времени запаздывания (опережения). В других случаях штрафы (вознаграждения) за опоздание (опережение) поставки могут быть связаны с потерей (получением) ожидаемых прибылей. Это может произойти тогда, когда запаздывание (опережение) поставок вызывает потерю (получение) заказов в будущем. в) Допущения в модели. Допущения в модели аналогичны приведенным в разделе 2.1, за исключением пункта 9 (вместо допущения, что очередность известна, мы должны показать, как найти оптимальную очередность). г) Переменная, зависящая от решения и цели, поставленных в модели. Пусть о,- — множество вариантов решения, когда система находится в состоянии /. В любом состоянии системы мы должны решить, к&кую работу надо выполнять в следующую очередь. Наша цель — минимизировать общие ожидаемые издержки, связанные с межоперационными запасами, наладками и задержками поставок потребителям. Эта цель достигается определением очередности обработки изделий, при которой минимизируются общие ожидаемые издержки. д) Оптимальная очередность изделий. Задача нахождения очередности изделий в цехе с единичным и мелкосерийным производством не является статической: вследствие постоянного поступления заказов выбор оптимальной очередности в каждый отдельный период времени вовсе не обязательно ведет к достижению оптимальной очередности в целом. Поэтому будем рассматривать нашу задачу как динамическую задачу принятия решений. В каждый момент времени мы имеем возможность установить очередность выполнения любых изделий, ожидающих обработки (соблюдая для каждого класса изделий правило «первым прибыл — первым обслуживается»). Имеется также возможность не начинать обработку ни одного из ожидающих изделий до тех пор, пока не произойдет переход в другое состояние. Такое реше- 7* 99
ние может быть экономически целесообразным, когда расходы на переналадку оборудования довольно высоки. Задача, следовательно, состоит в том, чтобы найти очередность обработки случайно поступающих изделий, при которой минимизируются общие ожидаемыег издержки. Для этого требуется выбрать варианты решения, оптимизирующие целевую функцию. Множество этих вариантов решения для всех состояний составляет оптимальную стратегию. Чтобы найти оптимальную стратегию, применим принцип оптимальности динамического программирования Беллмана [6], который гласит: «Оптимальная стратегия обладает таким свойством, что, каковы бы ни были исходное состояние и первоначальное решение, последующие решения должны представлять оптимальную стратегию относительно состояний, возникших в результате первого решения». Пусть ft (t) — общие ожидаемые издержки центра обслуживания в оставшиеся t единиц времени, начиная с состояния t, если следовать оптимальной стратегии; Си — норма издержек для центра обслуживания, когда он находится в состоянии i; Ctj — норма издержек для центра обслуживания при переходе из состояния i в состояние /. Сц можно выразить следующим образом: г Cn = Cpk+ S nih(Ch + dh), cPk = 0, если p = k, где nth — число изделий класса А, ожидающих обработки в состоянии i\ определение сРь, ср, dp было дано в параграфе Ь данного раздела. В соответствии с принципом оптимальности мы имеем fi(t + dt) = mm{(l-^Taijdt)(Caddt + fi(t)) + + S Tailfj (t) dt) для i - 1, 2, ..., N, F7) Эфг где {аь} представляет множество возможных вариантов решения в состоянии I. Рекуррентное отношение в уравнении F7) получено, исходя из следующих соображений. В течение отрезка времени dt центр обслуживания может оставаться в состоянии i или переходить 1 Математическое ожидание издержек.— Прим. ред. 100
в некоторое другое состояние /. Если центр остается в состоянии i на время dt, то его издержки составят Cndt плюс ожидаемые издержки в оставшийся период времени /, то есть ft (/). Вероятность этого равна единице минус вероятность перехода центра обслуживания во время dt в другое состояние. С другой стороны, в течение отрезка времени dt может совершаться переход в некоторое состояние / Ф i. Вероятность перехода в другое состояние равна Tijdt. В этом случае издержки центра обслуживания составят Ctjdt, которые после умножения на Ttjdt дадут член высшего по сравнению с dt порядка. Следовательно, им можно пренебречь. Таким образом, если центр обслуживания начинает работать в состоянии / и остается в нем в течение времени /, то ожидаемые издержки равны fj (/). Второй член нужно просуммировать по всем возможным состояниям / Ф i. Из имеющегося множества вариантов решения {at} мы должны выбрать один, который минимизирует правую часть уравнения F7). (Заметим, что нормы издержек перехода и нормы затрат в данном состоянии являются функциями выбранных вариантов решения.) Подставляя в уравнение F7) уравнение A1) и пренебрегая членами высшего по сравнению с dt порядка, получим U (t + dt) = min {(Cii dt + ft (t) + Tiift (t) dt + + ?>Taijfj(t)dt}, F8) N ft (t + dt) = min {(Cail dt + ft (t) + 2 Tljfj (t) dt} для * = 1, 2, ..., N. F9) Вычтя из обеих частей уравнения F9) ft (/), разделив их на dt и переходя к пределу, мы получим N ?fi(t) = mm\c"Ut+%Taijfj(t)X *' = 1,2, ...,N. G0) Говард разработал способ решения подобных рекурсивных отношений [5]. Он состоит из двух последовательных расчетов для каждой итерации, стратегии оценки и стратегии улучшения. Мы не будем рассматривать вывод метода Говарда, а приведем только способ решения, имеющий отношение к рассматриваемой задаче (см. рис. 11). В табл. 1 показана переходная матрица Г, а в табл. 2—векторы норм издержек для различных вариантов решения. Приведенный в указанных таблицах пример относится к случаю J = 2 и г = 2, где 101
Таблица 1 МАТРИЦА ПЕРЕХОДА ДЛЯ ВАРИАНТОВ РЕШЕНИЯ Число выполненных изделий Oi о2 Число изделий, ожидающих выполнения П\ П2 0 0 0 0 1 | 0 0 1 | 1 0 0 1 1 I Состояние 1 2 3 4 5 6 1 -ь ЦП 2 -% 1 | 2 0 | 7| | 1 | 0 2 | 8 | | 2 | 0 0 | 9 | | Д22 2 1 0 10 2 | 0 1 | 11 | | 2 1 1 12 2 | 2 0 | 13 | | 2 | 0 2 |14 | | Oi | 0 1 |15| | Oi | 1 0 |1б| | 3 *1 A,J2 4 5 —А,—Дц| %\ | %2 Д11 |—А.—1Ац| -*-»и *т.1 1 **u I 6 7 1 %2 \ ^1 Я.1 ~»Ч |—ЦП 1 1 1 1 1 1 1 1 »Й 8 %2 9 XJt %2 К1 10 *Й — 1*12 | | |—X—|Li22| ^1 -*-»*2* 1 1 1 1 1 1 •» 1 U21 **1 »И 1 М.М. | | | 1 | 1 1 1 1 1 1 1 1 1 1 *I I I I I I ?-1 1 1 1 1 1 Яг 11 Д12 Я»2 —X—\Х2 12 13 14 1 1 1 1 15 К1 16 *.«» 1 1 •»Й 1 1 1 1 1 1 %*2 Xi "Й U | | Яг | | -1*21 1 1-1*1 | | И22 | | j— М-221 | | и | | | -х\ 1 1 1 1 1-я. Матрица перехода для нахождения оптимальной очередности обработки изделий. Число классов изделий г = 2, максимальное число ожидающих обработки изделий J = 2, максимальное число состояний N = 16. Вообще состояние (О^; п%, «г» ••• » «^i ••• > пг) представляет такое состояние, в котором станки налажены для обработки изделия ft, однако в данный момент времени они свободны и изделия класса р ожидают обработки 2 п <J. Р=1 р
J — максимально допускаемое число изделий, ожидающих обработки; Ji — число изделий, ожидающих обработки в состоянии i\ nip — число изделий класса р, ожидающих обработки в состоянии L Имеем Ji— 2л Hip* Ji^J» Таблица 2 ВЕКТОР ИЗДЕРЖЕК С** ДЛЯ НАХОЖДЕНИЯ ОПТИМАЛЬНОЙ ОЧЕРЕДНОСТИ ОБРАБОТКИ ИЗДЕЛИЙ Вы- пол- няют- ся о4 о2 2 2 2 2 2 2 Oi о2 П\ 0 0 0 1 0 1 2 0 0 1 0 1 2 0 0 1 п2 0 0 0 0 1 1 0 2 0 0 1 1 0 2 1 0 Состояние 1 2 3 4 5 6 7 8 9 1 10 11 12 13 14 15 16 Элементы издержек 0 о 1 0 ct + dt ^12 + ^2 + ^2 ci + di + c2 + d2 2(c2 + d2) Ci2 + 2(C2-M2) 0 ^21 + ^1 + ^1 c2 + d2 ^21+^1 + ^1 + ^2 + ^2 C2i + 2(cl + dl) 2(c2 + d2) C2 + dz Ci + dt Элементы издержек при альтернативном решении ^12 с21 c2 + d2 ^12+^1+^1+^2+^2 Ct + di Cl + d± + C2 + d2 Примечание, с — норма издержек на межоперационные запасы для изделий класса р, ожидающих обработки; dp — норма издержек для изделий класса р, связанная с задержкой поставок потребителю; с ^ — норма издержек на переналадку оборудования, если изделие k следует за изделием р. Как видно из табл. 1, даже в простом случае, когда максимальное число изделий не превышает двух и число классов изделий также равно двум, имеется 16 возможных состояний. При увеличении J и г число возможных состояний N быстро увеличивается. 103
Взаимосвязь между N, J и г показана в приложении. Из формулы, выражающей зависимость между ними, видно, что, когда, к примеру, максимально допускаемое число изделий, ожидающих выполнения, равно 10 и имеется три класса изделий, то число возможных состояний достигает 1023. Операция При заданной стратегии следует системы ураднений для всех получения оценки использовать Ту и С и для] относительных значений // и L, приравнибая fN решения нулю. Программа улучшения стратегии Для каждого состояния i следует найти альтернативное значение а1, при котором минимизируется используя относительные значения fi, принятые для предыдущей стратегии. Тогда а' становится новым решением в состоянии i, а' а* Сц становится Сц, а Тп соответственно Тп. рис. 11. Итерационный цикл для полностью эргодических процессов принятия решений с непрерывным временем. При решении реальных задач большое число возможных состояний может сильно затруднить расчеты. Тем не менее всегда можно субоптимизировать систему, пользуясь одним из методов определения субоптимальной последовательности обработки изделий, описанных автором этой главы [см. 9]. 3. МОДЕЛЬ ЦЕХА С МЕЛКОСЕРИЙНЫМ И ЕДИНИЧНЫМ ПРОИЗВОДСТВОМ В ЦЕЛОМ (СИНТЕЗ) Модель для всего цеха с мелкосерийным и единичным производством получена путем объединения моделей отдельных обслуживающих центров. Рассмотрим, как производится оценка времени длительности выполнения изделий и установление сроков поставок. 104
а) Система. 1. Цех с единичным и мелкосерийным производством. Цех состоит из комплекса центров станочной обработки, каждый из которых имеет постоянное число одинаковых станков. 2. Входной поток. Входной поток представляет собою прибытие в установившемся режиме изделий, которые должны пройти обработку на некоторых или на всех станках. Изделия могут иметь различные длительности обработки, предъявлять разные требования к наладке оборудования, различаться по своей значимости и т. д. По любому сочетанию этих признаков изделия можно разделить на г отдельных классов. 3. Выходной поток. Выходной поток соответствует выбытиям из цеха законченных обработкой изделий. б) Параметры модели. Для каждого центра станочной обработки имеем: tpd — время, в течение которого изделие класса р находится в отделении d\ Vpd = E_(tpd) — средняя значение tpd; e$d = Е (tpd — Updy2 — дисперсия tpd; m — число отделений цеха, через которые проходит изделие класса р. Для каждого изделия имеем Sp = 2 tpd — время обработки изделия р (суммируется d по всем отделениям, через которые должна проходить изделие); Мр = Е (Sp) — среднее время обработки изделия р; 4 = Var(Sp) — дисперсия Sp. в) Допущения в модели 1. Цех в состоянии обслуживать все поступающие заказы. 2. Ожидаемые длительности пребывания изделий класса р в отделении d и их среднее квадратическое отклонение известны. В разделе 2.1 был показан способ определения этих параметров при заданной очередности. Заметим, также, что Upd и <r?d являются функциями а) темпа поступления и обработки, которые зависят от класса изделий и от отделения цеха; б) очередности выполнения изделий в каждом отделении цеха. 3. После того как изделие на станке обработано, оно немедленно передается в следующее отделение. Это допущение можно, однако, устранить, введя дополнительный центр обслуживанияг который выполнял бы функцию передачи работ следующему центру обслуживания. 4. Входной поток для каждого центра обслуживания может возникать как вне системы, так и прибывать из любого другого 105
центра обслуживания. Маршруты прохождения изделий в цехе могут быть представлены сетью взаимно пересекающихся путей. 5. Продолжительности tpd нахождения изделий класса р в отделении d являются взаимно независимыми случайными переменными. г) Функция распределения календарных длительностей изготовления изделий. Приближенную функцию распределения длительности календарного времени изготовления изделий получают с помощью центральной предельной теоремы. Известно, что Sp по мере увеличения т стремится к нормальному распределению, -если соблюдены следующие (достаточные) условия [8]: 1. Продолжительности tpd нахождения изделий класса р в отделении d являются взаимно независимыми случайными переменными d ? т, р = 1, 2, . . ., г. 2. Существуют две положительные постоянные а и ($, которые для всех р и d удовлетворяют old > а, E(\tpd-Upd\*)<$. 3. Sp—> оо при m—> оо, р=1,2, ...,г. G1) 4. lim -^- = 0 для всех р и d. т-*оо sp Поскольку изделия обычно проходят через многие различные отделения цеха по множеству маршрутов и каждое отделение работает независимо по отношению к очередности поступления изделий, можно полагать, что эти условия выполняются. Мы имеем Л*р = 2*7р* G2) d 4=2<4<*. G3) d Здесь суммирование производится по всем отделениям, через которые проходит изделие р. Применяя центральную предельную теорему, мы получим приближенную функцию распределения календарного времени изготовления изделий. P(Sp<0^*(^-P> G4) где Ф — интегральная функция нормального распределения. Если фирма мирится с невыполнением в среднем доли ар заказов в срок, она установит свои собственные сроки Dpy которые удовлетворяют уравнению 106
Например, если ар == 10%, toDp получают, прибавляя 1,3 среднего квадратического отклонения к ожидаемому среднему кален* дарному времени изготовления изделий Мр. Dp = Mp+l,Ssp. G6) Уравнение G6) показывает, как надо подходить к определению сроков выполнения заказов. Сроки выполнения заказов должны устанавливаться, исходя из реальных возможностей, основываясь на степени загрузки цеха. При этом следует учитывать правила очередности обработки изделий, принятые в различных производственных отделениях цеха. Такой метод определения сроков выполнения заказов отличается от общепринятой практики, когда сначала устанавливаются сроки, а затем составляется план работы цеха таким образом, чтобы попытаться уложиться в них. Довольно часто эти сроки определяются без четкого представления о возможности их выполнения, причем почти всегда не учитывается влияние на издержки производства попыток обязательно уложиться в установленные сроки. При определении сроков выполнения заказов мы исходили из неизменной загрузки цеха. Большую точность можно было бы, пожалуй, получить, принимая во внимание число изделий, фактически ожидающих обработки. Однако практически это трудно осуществить вследствие двух основных причин: 1. Для сбора необходимых данных и производства расчетов могут потребоваться чрезвычайно большие затраты труда и времени, особенно в крупных цехах. 2. За время, прошедшее между проведением обследования и получением заказа, положение в цехе может существенно измениться. Таким образом, выполняемый для большей точности учет изделий, фактически ожидающих обслуживания, не всегда может быть легко осуществимым или практически целесообразным.
Приложение Число возможных состояний Число возможных состояний можно рассчитать, рассматривая нашу задачу как задачу о размещении. В каждом состоянии i мы имеем /^ шаров (соответствующих изделиям, ожидающим обработки), которые могут быть помещены в г ячеек (соответствующих классам изделий /). Ячейку р занимают nq шаров. Для каждого состояния i имеем "i + /*2+...+nr=/i Jt=0,...9J. (A.l) Феллер доказывает (см. лемму 2.5 в [7]), что число различных решений уравнения (АЛ) равно AJi>r=Ci+j~l) Ji=°>-~>J- <A-2> •Кроме того, мы допускаем, что канал обслуживания может быть свободен, если даже несколько изделий находится в очереди. Такое положение может возникнуть в случае, когда ни одно из ожидающих обработки изделий не принадлежит к классу изделий, которые последними покинули канал, и если 2"р<'- р=1 (Разумеется, не имеет смысла держать станок незагруженным, если в очередь больше не может поступить ни одно изделие.) Для каждого состояния i с незагруженным станком мы имеем «i + «2+ • • • + «р-1 + ("р=0)+лр+1+ ... +nr=Jt р = 1, 2, ..., г. (А.З) Число различных решений уравнения (А.З) равно Ч'-*Сг+/~2) у,=0, '• •••' J~h (A> Мы можем рассматривать канал обслуживания как совокупность г ячеек, причем одновременно может быть занята только одна ячейка. Это относится к обоим случаям: как при занятом, так и при свободном канале обслуживания. В первом случае ячейка занята шаром (изделием), во втором — ячейка занята оснасткой, оставшейся от последней выполненной работы. Для каждого различимого положения Jt возможны г различных состояний канала обслуживания, что дает в сумме (^.r + ^.r-l)'' <A-5> различных состояний. Чтобы получить общее число возможных состояний N, следует суммировать Л г по всем Jf (от нуля до J) и Л т по всем допустимым /f (от ну- ля до J — 1). Выполнив эти операции, мы получим J,=0 J.=0
ГЛАВА 6 Правила приоритетов, минимизирующие затраты из-за задержек изделий в очередях при календарном планировании станочных работ Ч. С. ХОУЛТ1 1. ВВЕДЕНИЕ Хотя при современном состоянии науки нельзя формулировать правила управления крупными системами массового обслуживания с сетями очередей, тем не менее уже не слишком рано обрисовать возникающую здесь проблему и попытаться найти ее приблизительное решение. Подход, положенный в основу данной главы, заключается в том, что в результате анализа сети очередей в целом устанавливается оптимальная локализация времени ожидания по отдельным изделиям. Переменными задачи при анализе системы массового обслуживания в целом являются сроки начала каждой работы в цехе и ожидаемая продолжительность задержки2 в очередях на каждой операции. Тем самым открывается возможность использовать для каждой очереди локальные правила приоритета в соответствии с общим решением. Эти локальные правила предназначены для применения в конкретных ситуациях каждой из очередей, которые в свою очередь отражают случайные события, возникающие в системе. Такая комбинация общего анализа всей системы с локальными правилами выбора решений в масштабе отдельных очередей, вероятно, лучше подходит для многономенклатурного производства с большим числом станков. Подобного рода крупные вероятностные системы в общем крайне нечувствительны к средствам их регулирования, в силу чего, проектируя эти средства, надо принимать в расчет только наиболее важные факторы. Общий анализ описан в разделе 2. Цель его заключается в том, чтобы найти такие сроки начала работ и продолжительность задер- 1 Работает в Висконсинском университете. 2 Термины «длительность задержки в очереди» и «длительность ожидания» применяются в переводе как синонимы—первый из них во избежание словосочетаний «ожидаемая длительность ожидания».— Прим. ред. 109
жек в очередях, при которых для системы в целом достигает минимума общая сумма затрат на содержание запасов и потерь вследствие опоздания поставок. При этом на рассматриваемой стадии анализа предполагается устойчивое соотношение между средней продолжительностью задержек в очередях и загруженностью данного станка. Хотя полный алгоритм решения такой задачи не предложен, тем не менее, казалось бы, в частных случаях можно получить удовлетворительное приближение. Результаты общего анализа системы увязаны с локальными правилами приоритета в дальнейшем изложении. При этом рассмотрены три правила: правило приоритета на основе календарного плана и два правила на основе оценки затрат из-за задержек в очередях. Правило приоритета на основе календарного плана запроектировано с расчетом содействовать осуществлению плана, вытекающего из анализа системы в целом. Правила приоритета на основе оценки потерь содействуют, помимо сказанного, снижению локальных расходов, связанных с временем ожидания. Соответственно на основании выполненных для каждого изделия оценок потерь в связи с ожиданиями перед станками приняты децентрализованные решения по каждому станку. Упомянутые два таких правила различаются примененными аппроксимациями. 2. ЛОКАЛИЗАЦИЯ ВРЕМЕНИ ОЖИДАНИЯ В ОЧЕРЕДЯХ ПО ИЗДЕЛИЯМ Предположим, что составлен календарный план обработки / изделий на J станках в течение заданного периода времени (например, одного месяца). Ожидаемое время обработки на каждой операции обозначим через Mtj (i = 1, 2, . . ., /; / = 1, 2, . . ., JI. Для каждого изделия операции выполняются в определенной последовательности, которую отразим номером операции 5 в обозначении Mi (s) для ожидаемой длительности обработки j-го изделия2. По каждому станку планируется фонд часов — то есть число часов, в течение которых станок можно загрузить на протяжении планового периода. По станку / эта величина обозначается как Mj. Для каждого изделия назначена дата поставки, обозначенная через 7Y Пусть tt — дата поступления изделия в цех для обработки и Qu — ожидаемая длительность задержки в очереди изделия i 1 В случаях, когда «изделию» соответствует партия, состоящая из отдельных единиц, вместе обрабатываемых и перемещаемых от станка к станку» время обработки должно включать переналадку, если последняя не зависит от предыдущего изделия. 2 Для упрощения изложения принято, что каждое изделие обрабатывается на каждом станке, причем только один раз. Ослабление любого из этих предположений ничего не изменило бы в дальнейшем. Замечания об общем случае разработаны автором. по
перед станком /. Обозначим так же через Qt (s) ожидаемую дли^ тельность задержки изделий в очереди перед операцией s. Принимаемые в расчет расходы складываются из затрат на содержание запасов, составляющих незавершенное производство, и потерь из-за опоздания поставок. Функцию затрат можно записать следующим образом: C=S S tF,(s)[Q«(s) + Al«(s)]+ S/i(bf). A) i=l 6=1 [i=l где первый член — общая сумма затрат на содержание запасов, a Vt (s) — стоимость содержания изделия i в течение единицы времени его ожидания перед операцией s и времени выполнения этой операции *. Второй член равняется сумме пени за опоздание для всех изделий, причем f\ ( ) является функцией пени для изделия i и Lt — длительностью промежутка времени, на который опаздывает цех при обработке изделия i сравнительно с установленной датой поставки Tt. Предположительная форма функции пени за опоздания показана на рис. 12 сплошной линией. // №t)JI / br(Lt) / I у Т[ Врет t О Опоздание + Li' О Ожидаемое опоздание + ELt Рис. 12. Функция пени за опоздание. Если опоздания увеличиваются, пеня, выраженная, например^ реакцией потребителей, увеличивается с возрастающей скоростью. Для отрицательного опоздания, то есть для преждевременного выполнения, пеней являются издержки по содержанию изделия как запаса до даты поставки Ти или же она отражает неудобства для потребителя, возникающие при преждевременной доставку 1 По мере того как изделие проходит последовательные стадии обработки, его стоимость и, следовательно, затраты на его содержание в запасе возрастают. Во многих случаях уточнения, связанные с этим обстоятельством, окажутся необязательными. Строго говоря, в этой функции следовало бы использовать фактические, а не ожидаемые продолжительности задержки изделий в очередях и обработки их на станках. -ЕЦ 111
изделия. В общем, пени при преждевременном выполнении заказа относительно низки. При самых благоприятных обстоятельствах опоздания подвержены случайным колебаниям, но есть основания надеяться, что ожидаемое опоздание поддается регулированиюг. В качестве критерия при выборе решения пригодно математическое ожидание пени за опоздание в расчете на ожидаемое опоздание, то есть /*(?Li)a?/i(Lf), B) где Е — оператор математического ожидания. В качестве примера на рис. 13 приведено распределение вероятностей опозданий. Ожидаемая пеня за опоздание показана пунктирной линией на рис. 12. Минимального значения эта функция Рис. Опоздания 13. Распределение опозданий. достигает при отрицательных значениях ELt\ поэтому надо стремиться к опережению заданных сроков выполнения. Если бы не было случайных колебаний, идеальным опозданием было бы, конечно, нулевое. Размер отклонений сроков выполнения заказов в сторону опережения отражает строгость пени за опоздание и широту распределения опозданий. Математическое ожидание опоздания задано равенством j EU = U 4- S [Qt (s) + Mt (s)] - Tu C) s=l где tt — время прибытия изделия i для начала станочной обработки, иначе говоря, время постановки изделия в очередь перед первой станочной операцией. Объединив A), B) и C), получим ожидаемую сумму переменных затрат ?С=2Ц vt(s)[Qi(s)]+ 2 /,{*,+ S lQi(s) + Mt(s)]-Ttl D) i=l 8=1 г=1 8=1 1 Система регулирования, конечно, частично понижает случайные колебания опозданий. Прямых попыток связать случайные колебания с отдельными изделиями здесь не делается. 112
где члены Mt (s) в первой сумме опущены, так как они представляют постоянные затраты, не имеющие отношения к рассматриваемым решениям. Средняя, вычисленная по длительностям задержек Qtj перед станком /, должна равняться «средней длительности задержек D^ перед этим станком К В данном случае удобно применить обозначение, связанное со станком JZQu S=L— = Dj (/=1,2,..., У). E) Предполагается, что между средней длительностью задержек в очередях Dj и ожидаемой долей времени простоев при использовании фонда часов станка / существует устойчивое соотношение. Процент времени простоев для станка / за каждый плановый период определяется исходными данными о времени обработки всей совокупности изделий так, что среднюю длительность задержек в очередях в формуле E) можно вычислить с помощью функции, имеющей следующую форму: i Dj = 8j(l—^r^MlJ'). F) Это положение, конечно, требует практической проверки, но, по-видимому, оно подтверждается при очень широких условиях 2. Ясно, что отрицательные задержки в очередях невозможны, так что решение следует ограничить соотношением (/ = 1,2, ...,/), °<«" </-!.* J). <7> Обозначив через t исходный момент текущего времени планового периода, можно записать следующее ограничение для исходного момента времени tt (момента запуска) по каждому изделию *<*« (*=1, 2, ...,/); (8) 1 Эта странная формулировка имеет тот смысл, что Qtj должны быть такими, чтобы их средняя равнялась Dj, определенному в соответствии с F).— Прим. ред. 2 Д. Р. Джексон [3] указал систему условий применения принципа декомпозиции, иначе говоря, систему условий, при которой центры обслуживания в случае сети очередей можно рассматривать независимо друг от друга как простые очереди. Р. Конвей и У. Максвелл также показали, что возникает устойчивое соотношение между процентом времени простоя и средним размером очереди перед станком. В высшей степени показательно, что оба эти результата относятся как к цехам с чисто поточным производством, в которых все изделия проходят одинаковые последовательности операций, так и к цехам с чисто единичным и серийным производством, в которых ближайший следующий станок для изделия выбирается наудачу с равной вероятностью перехода с данного станка на любой другой. 8 Заказ № 195 ЦЗ
иначе говоря, нельзя начать обработку изделия 'раньше, чем немедленно. Поскольку к началу планового периода в процессе обработки уже будут многие изделия, для них автоматически tt приравнивается t1. Мы должны иметь данн&е о длительности станочной обработки для расчета загрузки оборудования как по выполняемым 2, так и по предстоящим операциям. Теперь можно поставить общую («глобальную») задачу оптимизации. Требуется найти моменты запуска изделий в производство tt и длительности задержек в очередях Qt (s) для (i = 1, 2, ... ...,/) и (s = 1, 2, . . ., J), минимизирующие целевую функцию D) при ограничениях — равенствах E) и ограничениях — неравенствах G) и (8). Заметим, что в этих уравнениях для одной и той же переменной — длительности задержки в очередях Qtj использованы два обозначения. Можно предвидеть следующие особенности решения этой общей задачи. Относительно поздние (сравнительно с датой поставки) сроки запуска в производство назначаются для изделий, требующих больших издержек при содержании в запасе, изделий с коротким временем на обработку, с малым числом очередей 3, в кото* рых им предстоит ждать, изделий, обрабатываемых на слабо загруженных станках с относительно короткими очередями, и изделий, по которым пеня при опоздании поставки сравнительно мала. В противоположных случаях сроки запуска в производство должны быть относительно ранними. Ожидаемая длительность задержек в очередях должна быть короче для тех изделий, запуск которых опаздывает сравнительно со сроком, обеспечивающим своевременную поставку (следовательно, может вступить в действие какое- либо из ограничений G) или (8)), а также для тех изделий, по которым пеня за опоздание поставки высока, хранение в запасе обходится дорого, которым предстоит пройти через большое число очередей и подвергнуться обработке на мало загруженных станках. В противоположных условиях можно мириться с относительно большим временем задержки изделий в очередях. Если темп выпуска высок и тем самым процент времени простоев в общем низок, назначаются ранние сроки запуска изделий в производство, что указывает на удлинение производственных циклов. Очереди растут, и соответственно увеличиваются запасы в форме незавершенного производства. При решении задачи применительно к столь крупной и сложной системе существенную роль играет вычислительная сторона 1 Для локальных правил выбора решений, рассматриваемых ниже, можно использовать фактические даты запуска. 2 Вместо того чтобы попытаться принять в расчет, насколько далеко зашло осуществление этих операций, можно принять упрощенное предположение, что они выполнены наполовину, то есть использовать Mtj/2 для операций, начатых выполнением. 3 Это относится к общему случаю, когда число операций для разных изделий неодинаково. 114
вопроса. В этой связи следует рассмотреть несколько простых аппроксимаций для функции ожидаемой пени за опоздания. Например, можно воспользоваться линейным программированием * или программированием с квадратичными формами. Этот второй из упомянутых методов содержал бы квадратичную аппроксимацию второго члена уравнения D) j /,(??»)« {-?-} {ti + 2lQt(s) + Ml(s)]-Ti-L,y, (9) S=l где Pt и Lt есть постоянные, определяемые способом наименьших квадратов по относящемуся к задаче участку кривой на рис. 12. С ограничением — неравенством (8) можно поступить следующим образом. Изделия, по которым требуется немедленный запуск, отделяем от остальных и для них принимаем t% = t. В отношении всех остальных изделий ограничение (8) не применяем. Если вступает в действие ограничение G), иначе говоря, если для выполнения договорных сроков поставки требуется свести к нулю длительности задержек изделий в очередях, это значит, что завод уже столкнулся с серьезными затруднениями. При условии, что такая возможность устранена (для чего предусмотрены надлежащие длительности отставания поставок сравнительно с датой получения заказов 2), ограничением G) можно пренебречь, и тогда, пользуясь способом множителей Лагранжа, задачу легко свести к решению системы линейных уравнений. В последующем анализе Qt (s) и tt соответствуют оптимальным значениям, полученным в результате решения поставленной выше задачи. 3. ПРАВИЛО ПРИОРИТЕТА ЗАПУСКОВ ПО ПЛАНОВЫМ СРОКАМ Решения, найденные в отношении сроков запуска изделий в обработку и в отношении длительности задержки их в очередях, можно сочетать с данными о времени обработки на станках и о после- 1 Речь идет не о программировании, а об обычной аппроксимации линейной или квадратной функцией.— Прим. ред. 2 При решении общей задачи оптимизации системы требуется некоторая изобретательность. Например, если регулирование системы выполняется достаточно хорошо 'для того, чтобы изделия запускались в производство своевременно (то есть tt действительно превышало t для всех изделий), ограничением G) можно пренебречь. Тогда, определив при этом значения переменных, соответствующих времени отставания поставок от момента заказа Ti = Ti-tu можно было бы, используя квадратную 'функцию затрат (9), объединить аналогичные изделия и тем сильно снизить число неизвестных. Побочным результатом анализа могли бы быть указания на изделия, заслуживающие особого внимания из-за времени отставания поставок от даты заказа с тем, чтобы это обстоятельство учесть при переговорах с потребителями. 8* 115
довательности операций, составив для каждого изделия оптимальное расписание ожидаемых сроков выполнения каждой из стадий его обработки. Это делается путем размещения продолжительностей обработки на станках и продолжительностей задержек в очередях каждого данного изделия в заданной последовательности выполнения операций и путем порядковой нумерации этих величин. Иначе говоря, в обозначениях Mt (s) и Qt (s) буква s соответствует порядковому номеру (s = 1, 2, . . ., У), присвоенному времени задержки изделия перед станком и времени обработки, непосредственно следующей за этой задержкой. Планируемый срок запуска в производство изделия i на станочной операции s обозначим через ti (s). Он определяется равенством ti(s)=ti+^Ql(r)+^Mt(r) [Г!'!'"*'7!; (Ю) r=i r=l E=1, Z, . . ., J). Такие календарные планы по каждому изделию нельзя выполнить строго, потому что: 1) в календарном плане следует ожидать появления внутренних противоречий, поскольку при общем анализе системы в целом не была принята в расчет последовательность операций; 2) связанным с очередями процессам, на которых основывается анализ, свойственно случайное рассеяние; 3) возможны не поддающиеся предвидению отказы станков и т. д. Д. Джексон выполнил исследование свойств таких локальных систем приоритетов, которые могли бы заполнить разрыв между оптимальным календарным планом и оперативными решениями на уровне отдельной очереди. Предположим, что изделию, поступающему в очередь перед следующей операцией, присвоен индекс приоритета, равный запланированному сроку запуска в производство на этой операции, то есть tt (s). Пусть дисциплина очереди состоит в том, что из ожидающих в очереди изделий запускают в производство то из них, у которого индекс приоритета окажется минимальным, иначе говоря, изделие с наиболее ранней запланированной датой запуска в обработку на данном станке. Если из этой запланированной даты запуска вычесть фактическую дату прибытия изделия в очередь, можно получить оценку такой ожидаемой длительности задержки в очереди, которая необходима для того, чтобы возвратить изделие точно к плановым срокам. Назовем эту величину нормативной задержкой. В условиях рассматриваемой схемы (как явствует из [3]) те изделия, для которых длительность задержек в очередях случайно оказалась бы относительно большей, чем по другим изделиям (а именно верхний «хвост» распределения этой величины важен), в среднем имеют задержки, линейно связанные с нормативными задержками с угловым коэффициентом, равным единице. Таким образом, при данной системе приоритетов на каждой стадии производства имеется тенденция полностью скорректировать ранее возникшие случайные отклонения от календарного 116
плана. Это постоянное давление в направлении совпадения с календарным планом выражается в том, что в результате изменений приоритетов в соответствующую сторонух замедляется продвижение по стадиям обработки изделий, опередивших план, и ускоряется продвижение изделий, отстающих от плана. Конечно, высокий приоритет не всегда приводит к немедленному выправлению сроков обработки детали в соответствии с планом, так как в той же очереди могут одновременно оказаться несколько изделий, отстающих от плана (и, следовательно, имеющих высокие приоритеты). Все они не могут попасть одновременно в первую очередь. Вместо того чтобы допустить нарастание воздействия случайных отклонений, рассматриваемая система локальных приоритетов, действующая в соответствии с оптимальным календарным планом, ослабляет влияние случайных нарушений и обеспечивает управление системой. В силу того, что в план заложены оптимальное соотношение затрат и пени, децентрализованные локальные решения будут постоянно направлены на достижение оптимума, установленного общим анализом системы в целом. 4. ПЕРВОЕ ПРАВИЛО ПРИОРИТЕТА ПО РАСХОДАМ НА ЗАДЕРЖКИ В ОЧЕРЕДЯХ Хотя описанный выше подход к календарному планированию станочных работ представляется разумным, тем не менее следует поставить несколько вопросов. Почему исследование оптимизации надо ограничить общими решениями для системы в целом, не принимая во внимание соображения по поводу локальных затрат, связанных с локальными решениями вопросов очередности, когда в расчет принимается только эффективность управления производством? Нельзя ли найти такое локальное правило приоритета, которое при наличии оптимизирующих его свойств применительно к ситуациям, возникающим в очередях, можно было бы применить в сочетании с общим исследованием условий оптимальности системы в целом? Поскольку локальная дисциплина очереди способна повлиять на среднюю длительность задержек в очередях (рассмотренную в уравнении F)), можно было бы внести дополнительные улучшения, снизив среднюю длительность задержек и уменьшив их стоимость. Р. У. Конвей и У. Л. Максвелл указывают в [1] на некоторые оптимальные особенности правила кратчайшей операции в статических условиях. Предположим, что для изделия i (i = 1, 2, . . . ...,/) из фиксированной совокупности изделий, ожидающих в очереди перед станком, требуется время обработки на этом 1 В данном случае снижение приоритета означает увеличение индекса приоритета. Снижение приоритета изделий, обогнавших плановые сроки, способствует ускорению продвижения изделий, отстающих от плана. ш
станке, равное Mt. Если изделия перенумерованы в последовательности их поступления на станок, время для завершения обра- i ботки i-ro изделия равно 2 МЛ. Если предполагается, что затраты n=i хранения изделия i в течение данного периода времени составляют wu то общая сумма этих расходов по всем изделиям равняется l i 2 wt 2 Мп. Эта общая сумма расходов достигает минимума, если i=l n=i изделия расположить и при надобности перенумеровать в последовательности ^i^...^. (П) Конвей и Максвелл пошли дальше, показав с помощью моделирования на электронно-вычислительной машине (для равных w), что это правило приоритета в условиях сложной сети динамичных очередей характеризуется низким уровнем расходов, что проявляется в уменьшении средней календарной длительности изготовления при высокой дисперсии этой величины. По-видимому, было бы желательно использовать это правило для минимизации локальных расходов, связанных с очередями, если только оно оказалось бы совместимым с анализом для всей системы в целом и если только удалось бы ввести эффективное средство регулирования, смягчающее тенденцию к накапливанию случайных отклонений в системе (тенденцию, приводящую к очень неустойчивому успеху попыток выполнять сроки поставок). Для того чтобы применить это локальное правило выбора решения к очереди перед станком /, надо знать для каждого изделия в ней отношение времени обработки на станке Мt (s) к приращению расходов wt (t) за единицу времени ожидания в очереди, причем это приращение принимается таким, каким оно стало к моменту /. Расходы на ожидание В связи со сказанным надо знать затраты, вызванные задержками в очереди изделий с существенными отклонениями фактических сроков обработки от оптимальных, установленных календарным планом. В частности, требуется оценить приращение за единицу времени ожидания затрат по тем изделиям, которые ждут обработки перед станком в момент его освобождения t. Применительно к этому моменту надо принять решение о прекращении ожидания для одного из изделий с соответствующими последствиями для всех остальных. Следовательно, приращения затрат, зависящих от длительности задержки в очереди в момент времени t для всех изделий, имеют прямое отношение к решению задачи. 118
Приращение расходов за единицу времени ожидания wt (t) к моменту времени t для изделия i, если это изделие ожидает в очереди перед операцией s, вычисленное по модифицированному уравнению D), равно и\ дЕС S S—1 = vi(s) + ^Mfi[ti + y2iQi(r)+2iMi(r) + J J + 2 Qt(r)+2Mi(r)-T*]> A2) r=s+l r=s где через Qt (г) и Mt (r) обозначены возникшие фактические длительности задержек в очередях и фактическое время обработки на станках в отличие от ожидаемых значений этих величин, соответствующих оптимальному плану. В действительности величина Qt (s) еще не полностью отражает длительность задержек в очередях до тех пор, пока изделие не выбрано для выполнения очередной операции на станке. Тем не менее будет уместно оценить приращение расходов на ожидания к моменту времени t> исходя из длительности задержек на ту же дату. Соответственно член в квадратных скобках в уравнении A2) можно записать как [t+ S QiM+SAMO-r,], r=s+l r=s где текущее время t заменяет первые три члена. Прибавив сюда правую и отняв левую часть уравнения A0), получим: 8t [lt-tt(s)] + tt+ S [Q*(s) + AMs)]-T,}, A3) 8=1 где [t — tt (s)] — мера текущего отставания изделия от календарного плана. Выражение A3) можно записать проще, если ввести новую постоянную Ц: [t-ti(s) + Lth где L* — оптимум ожидаемого опоздания для изделия /. После подстановки этой величины в уравнение A2) приращение расходов из-за задержки составит wl(t) = vl{S) + T?—fi[Ll + t-tt(s)]. A4) Если завод не чрезмерно перегружен и если время отставания поставки от момента заказа не слишком коротко, оптимум ожидаемого опоздания обычно будет отрицательной величиной. Это указывает на желательность достаточно раннего срока tt запуска 119
изделия в производство для образования буферного промежутка резервного времени в конце процесса обработки с целью погашения случайных колебаний длительности пребывания изделия в цехе. (В результате уменьшается риск уплаты пени за опоздания.) Из приведенного выше выражения для wx (s) видно, что приращение расходов на ожидание в очередях в будущем зависит от того, опережает ли изделие по срокам изготовления календарный план или отстает от него. Чем больше отстает изделие от плана, тем выше затраты на дополнительные задержки, как это и следует ожидать после ознакомления с рис. 12. Если с целью упрощения вычислений применить квадратическую аппроксимацию (9), то для приращения расходов на ожидания можно получить простое линейное выражение wi(t) = Vt(s) + Ptm-Li + t-ti(s)] A5) или еще проще wi(t) = ai(s) + Pit, A6) где ai(s) = vi(s) + Pi[Lt-Li-ti(s)]. Расходы на ожидание в очередях в соответствии с уравнения- ми A4) или A6) можно подставить в правило приоритета A1), получив правила для локальных решений, определяющих, какое из ожидающих изделий должно быть выбрано как следующее для станочной операции. В любом случае индекс приоритета зависит от времени t. Следовательно, его надо рассчитывать заново всякий раз, когда решается вопрос, какое изделие выбрать из числа ожидающих в очереди. Чем длительнее время ожидания изделия в данной очереди, тем выше его индекс приоритета. Если изделие поступает в очередь в сроки, соответствующие плану, индекс приоритета для него низок, и чем длительнее запланированный промежуток пребывания изделия в очереди, тем ниже индекс приоритета. При низком в таких обстоятельствах индексе приоритета маловероятно, чтобы изделие попало на станок очень скоро, если только станок не окажется свободным. С течением времени индекс приоритета изделия растет, так что к моменту запланированного запуска tt (s) этот индекс, надо полагать, будет достаточно высоким для того, чтобы изделие заняло первую очередь и его обработка была начата, как только освободится станок. Однако в результате случайных колебаний длина или состав очереди могут быть такими, что изделие еще не будет выбрано. В этом случае с течением времени возрастание индекса приоритета будет продолжаться до тех пор, пока он в конце концов не станет самым высоким в очереди, а изделие — первоочередным. После того как обработка изделия на станке закончена, оно поступает в очередь перед другим станком для выполнения следующей (s + 1) операции. Имея в виду уравнения A6) и A0), ясно, 120
что увеличение s приводит к уменьшению wt(t). Таким образом, индекс приоритета изделия в новой очереди окажется сначала относительно низким, но с течением времени он станет постепенно возрастать, как и до сих пор. Индексы приоритетов растут быстро для тех изделий, для которых быстро возрастает серьезность последствий опоздания по мере его увеличения в соответствии с кривой на рис. 12, наклон которой становится все круче по мере увеличения опоздания. С помощью упоминавшихся повторных пересчетов осуществляется обратная связь в отношении индексов приоритетов, удерживающих сроки обработки изделия в соответствии с календарным планом, установленным на основании общего анализа системы в целом» Добавим, что время обработки на станках и затраты на ожидание принимаются в расчет для конкретных изделий, составляющих очереди таким образом, что это приводит к смещению затрат по каждой отдельной очереди в сторону минимального уровня. 5. ВТОРОЕ ПРАВИЛО ПРИОРИТЕТА ПО РАСХОДАМ НА ЗАДЕРЖКИ В ОЧЕРЕДЯХ При выводе правила A1) предполагалось, что затраты на задержки в очереди постоянны, в то время как в действительности пеня за опоздание прогрессивно возрастает по мере увеличения опоздания. Кроме того, выкладки были рассчитаны на статические условия, и в них не приняты в расчет происходящие время от времени прибытия изделий в очередь и освобождения их из нее. Во втором правиле приоритетов по расходам из-за задержки в очередях сделана попытка снять эти ограничения путем минимизации расходов, связанных с каждым отдельным решением. При этом было сделано предположение, что приращение расходов из-за задержки в очередях Wi (s) остается неизменным лишь в течение промежутка времени, необходимого для выполнения на станке ближайшей операции. Рассмотрим затраты на содержание в очереди тех изделий, которые остаются в ней, покуда отобранное изделие обрабатывается на станке. Предположим, что к моменту t освобождения станка / в очереди ожидает обработки совокупность изделий qj. Выбор изделия i для запуска на данной операции приводит к задержке в очереди перед станком всех остальных ожидающих обработку изделий и вызывает общие затраты по очереди, равные г Ctj(t) = Mi(s) S wk(t). A7) hdqj Зти затраты надо оценить для каждого варианта выбора изделия, запускаемого в обработку, и надо остановиться на таком 1 Знак^ означает сумму элементов, содержащихся в совокупности qj* 121
варианте, который привел бы к наименьшим расходам по очереди в целом. Таким образом оценка расходов по очереди в целом становится индексом приоритета, причем меньшие его значения соответствуют большей предпочтительности изделия. Ясно, что изделие с коротким временем обработки на станке меньше задержит в очереди остальные изделия. Тем самым оно получает преимущество в приоритете при запуске в обработку на станке. Но то же самое относится к изделиям, пребывание которых в очереди обходится очень дорого, например тогда, когда исключение из очереди изделия, опаздывающего сравнительно с заданным сроком поставки, снижает расходы по очереди в целом. Взаимодействие этих двух факторов определяет приоритет. Второе правило приоритетов по расходам на задержки в очередях имеет ту интересную особенность, что индекс приоритета данного изделия зависит от состава изделий, одновременно с ним находящихся в очереди. Отсюда, в частности, следует, что это правило приоритета действует применительно к длинной очереди иначе, чем применительно к короткой. В первом случае оно совпадает с «правилом кратчайшей операции» и, таким образом, действует в направлении минимизации длины очереди. Если очередь коротка, положение изделия в ней улучшается при малой длительности времени его обработки на станке и при высокой стоимости ожидания, то есть так же, как при первом правиле приоритета по расходам из-за задержки в очередях. Если очередь состоит из двух изделий, оба правила, естественно, совпадают. При сравнении равенств A1) и A7), выражающих индексы приоритетов, ясно, что затраты на вычисления во втором случае (для второго правила приоритета по расходам из-за задержки в очередях) несколько превышают затраты, необходимые в первом случае. Выбор локальной дисциплины очереди оказывает воздействие на среднюю длительность задержек в очередях Djy следовательно, его надо принять в расчет при формулировании функции времени задержек в равенстве F) при анализе системы в целом. Таким образом, ясно, что общий и локальный анализ взаимодействуют, и, оценивая возможности системы, мы должны рассматривать ее в целом. Очень большую пользу принесло бы для оценки описанных правил математическое моделирование, и авторы были бы рады узнать, что кто-нибудь предпринял подобное исследование. Хотя методы решения проблемы календарного планирования, описанные выше, далеки от совершенства, тем не менее они достаточно просто охватывают многие факторы, относящиеся к вопросу. Надо надеяться, этот подход перекроет пропасть, лежащую между не поддающимися обсчету методами точной оптимизации, с одной стороны, и практически доступными, но неэффективными системами приоритетов — с другой.
ЧАСТЬ II Проблемы планирования в связи с регулированием запасов Основное содержание большинства глав данной части посвящено возможности управления запасами готовой продукции. Авторы глав исходят из допущения, что к моменту утверждения календарного плана объем произ- водства и даты поставок еще не установлены. Баумен Е. Г. в гл. 7 «Согласованность и оптимальность решений в управлении производством» доказывает, что польза от изучения методов оптимальных решений в управлении заключается не столько в изменении характера решений, сколько в большей их согласованности за разные периоды времени. Подтверждая этот довод такими примерами, как выравнивание объема производства и численности рабочей силы, оптимизация размера предприятия и решение проблемы запасных частей в авиации, он указывает, что основная функция управления заключается в том, чтобы оценивать (возможно, даже интуитивно) потери из-за не поддающихся учету обстоятельств. Эти высказывания имеют прямое отношение к календарному планированию на предприятии, особенно к вопросу, в какой мере оправдывается устранение возможности просроченных поставок. Чрезвычайно важная задача управления производством заключается в том, чтобы гарантировать согласованность решений, принимаемых разными отделами фирмы. В гл. 8 «Правила регулирования запасов с ограничениями в связи с выравниванием производства» Винтере рассматривает способы взаимного согласования трех видов решений: 1) планирования суммарного объема производства и численности рабочей силы на предприятии; 123
2) регулирования запасов отдельных видов продукции; 3) календарного планирования запуска в производство изделий, подле- жащих изготовлению. Изучение вопроса явно привело к установлению индексов приоритетов, определяющих последовательность запуска в производство различных изделий в течение планового периода. В гл. 9 «Экспериментальная проверка математическим моделированием методик расчета размеров партии» Б. П. Дзелинский, К. Т. Бейкер и А. С. Мэн, применяя математическое моделирование на электронно-вычислительных машинах, сравнивают эффективность двух систем календарного планирования. Хотя реальная задача содержала элементы случайности, для планирования размеров партий, занятости и запасов была применена детерминированная модель линейного программирования, построенная на основе данных по заводу металлоизделий. Полученные результаты сопоставлялись с эффективностью аналогичной системы, построенной на регулировании запасов отдельно по каждому изделию. Данные моделирования показывают, что система с линейным программированием подает большие надежды как средство экономичного планирования производства. В этой же"главе показано также, каким образом можно сравнить эффективность различных «моделей оптимизации», когда исходные условия их не полностью соответствуют действительности. К. Г. Ишлер, Р. М. Шарп и В. В. Стейли (гл. 10, «Оптимизация системы производства и распределения») рассматривают применение линейного программирования для случая, когда производство ведется в различных местах и продукция сбывается на нескольких рынках. Для сокращения объема исходной задачи предлагаются методы аппроксимации. Последняя статья посвящена задаче планирования в условиях, когда невозможно содержать запасы готовой продукции, а именно при производстве электроэнергии. К. Баховцев и Дж. Корриган (гл. 11 «Календарное планирование методом средних издержек») предлагают способ планирования работы электростанций при различных нагрузках. Испытания средствами математического моделирования позволяют предположить, что описанный метод мог бы дать значительную экономию по сравнению с существующей практикой.
ГЛАВА 7 Согласованность и оптимальность решений в управлении производством ?. Г. БАУМЕН1 Глава содержит отчет о нескольких исследованиях, относящихся к принятию решений в управлении производством. В ней изложены также идеи, теоретические обобщения и рекомендации, вытекающие из этих исследований. Предлагаемый метод не является плодом отвлеченных благопожеланий, а подчинен требованиям практической целесообразности в том смысле, что он намечает путь от изучения реального содержания разрешаемых вопросов и от методических построений на этой основе к общему улучшению системы управления. В главе выдвинуты теоретический и методический принципы правильного сочетания личной компетенции руководящего персонала и применений математических средств оптимизации решений. В одном из отзывов содержание главы было суммировано следующим образом: «Взаимная согласованность принимаемых разновременно решений больше содействует их правильности, чем методы оптимизации затрат с применением подробных математических моделей, и это особенно верно в тех случаях, когда встречаются не поддающиеся прямому учету величины (потери в результате дефицита, дополнительные затраты из-за опозданий поставок), которые надо так или иначе обусловить или оценить». Хотя это утверждение носит характер конкретной рекомендации, оно вытекает из общих представлений, которые отражают современные условия жизни и могли бы вызвать не меньший интерес. Материал в главе расположен в соответствии с очередностью, в которой были выполнены исследования и формировались связанные с ними идеи. Изложение начинается с вопросов календарного планирования, послуживших поводом для ее появления. Рассмотрена постановка задачи календарного планирования, описано связанное с ней исследование и правила решения. Далее описан метод использования прежних решений в управлении производством для улучшения текущих решений, после чего развита теоретическая 1 Работает в Массачусетском технологическом институте. 125
сторона этого метода и изложены результаты его экспериментальной проверки. Статья заканчивается суммарным обзором высказанных в ней идей, причем дальнейшее выяснение вопросов, связанных с обоснованностью, универсальностью и инеГрументальностью предложенных методов, отложено до будущих исследований. 1. ПРАВИЛА КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ ПРОИЗВОДСТВА В ходе исследования, породившего наиболее существенные из изложенных здесь идей, рассмотрена в общем виде задача планирования производства и рабочей силы. Эта работа излагается довольно подробно для того, чтобы показать, в каком духе ведется исследование. Простейшее правило «решения» календарного плана производства выражается равенством Pt = St, где Pt — запланированный объем производства за время t и St — сбыт, ожидаемый за время /. В этом случае производство должно было бы отражать все разнонаправленные колебания сбыта, и поэтому данное правило нельзя признать удачным. Его можно развить дальше: Pt = St + x(Pt-t-St), где х — коэффициент правила решения со значением от 0 до 1, a Pt-i — объем производства за предшествующий период времени. Если х= 1, то члены уравнения, обозначающие сбыт, выпадут и объем производства за этот период окажется равным объему производства за предшествовавший период времени. При значениях больших нуля и меньших единицы эта величина играет роль тормозного устройства, благодаря которому колебаниям сбыта соответствуют меньшие колебания объема производства х. Однако применение этого правила (при котором производство не обязательно соответствует сбыту за каждый период времени) вызовет колебания запасов. Для регулирования уровня запасов можно еще расширить правило Pt = St + х (Р^ -St) + y (IN - U-i), где у — также коэффициент правила принятия решения со значениями от 0 до 1, IN соответствует понятию нормального уровня запасов (это название, возможно, проще, чем «оптимальные запасы») и It-i — уровень запасов в конце предыдущего периода. 1 Это правило можно преобразовать в более обычную формулу с обратной связью: Pt = -Pf-i + U — x)(St — Pt-i)- 126
Поскольку желательно учитывать ожидаемый в будущем (в ближайшем периоде) сбыт, правило следует еще расширить: i=t-\-n Pt= S atSi+xiPt-i-SJ + yiln-It-t) i=t (at > аш > at+2 > • • • > at+n), где at — веса при прогнозировании продаж St на следующий период. Хотя правило принятия решения можно разрабатывать и рас- ширять еще дальше, для начала этого достаточно. На план фирмы, применяющей это правило, решающее влияние оказывают значения коэффициентов аи . . ., ап, х, у и IN, где IN рассматривается со значением на данный момент времени. Различные значения коэффициентов определяют тот или иной образ действий фирмы на протяжении предстоящего периода. Так как здесь могут быть различные по выгодности варианты, необходимо определить совокупность значений коэффициента, соответствующую предпочтительному для фирмы варианту действий. Для этого существует три метода: 1) Математическое моделирование (экспериментирование). 2) Анализ. 3) Непосредственное решение руководства. Математическое моделирование в настоящее время является, по-видимому, общепризнанным методом. Оно широко используется •в университетах и в промышленности *, в особенности в тех случаях, где неприменима дедуктивная схема решения. Математический анализ можно применять даже в таких сложных задачах, как данная 2. Для возникающих в промышленности задач, очерченных проще, чем в данном случае, применение анализа вовсе не редкость. Иной источник суждения о коэффициентах правила принятия решения (а именно прежние решения руководства) рассматривается в этой статье далее. 2. ПРАВИЛА ПРИНЯТИЯ РЕШЕНИЙ ХОУЛТА, МОДИГЛИАНИ, МУТА И САЙМОНА (ПРАВИЛА ХММС) Хоулт, Модиглиани, Мут и Саймон выполнили исследование, в котором на примере компании, изготавливающей красители, изучена задача календарного планирования производства и рабо- 1 Для подробного знакомства рекомендуется книга Jay Forrester, Industrial Dynamics, Massachusetts Institute of Technology Press and John Wiley and Sons, Inc., 1961 (Дж. Форрестер, Основы кибернетики предприятия, Издательство «Прогресс», М., 1966). 2 См. в частности, Holt, Modigliani, Muth and Simon, Planning Production, Inventories and Work Force, Englewood Cliffs, N. J., Prentice-Hall., Inc., 1960. 127
чей силы, решаемая большинством фирм обрабатывающей промышленности. В ней требуется для каждого планируемого календарного периода определить как объем производства, так и численность рабочей силы. Применяя квадратичные формы для исследования издержек производства и долгосрочные перспективные планы, они вывели следующие формулы объема производства и численности рабочей силы: pt = + о,4630, + 0,234Ож + ... +Ot+ii + + 0,9931?,-!+153-0,464/,-lf Wt= +0,01010, +0,0088О,+1+... +0Ж1 + + 0,743WM + 2,09 — 0,010/,_1? где нижние индексы обозначают период времени* Р — объем производства, W — численность персонала, О — сбыт, / — уровень запасов. Здесь не приводится вывод этих формул, так как он довольно сложен и не является необходимым для понимания основных положений данной главы. С ним можно познакомиться в соответствующей литературе г. Однако весьма важно отметить, что правило принятия решения и коэффициенты 0,463; 0,993; 153; —0,464 были получены в результате обсчета математической модели издержек производства по материалам обследования фабрики красителей. Если бы компания пользовалась этим правилом, то образ ее действий, а следовательно, и расходы в результате принятых решений отличались бы от; того, что было в действительности. В табл. 1 по материалам Хоулта, Модиглиани, Мута и Саймона приведены сводные нормативные данные об издержках производства для трех случаев. Так как для правил принятия решения требуются оценки будущего сбыта на предстоящие 12 месяцев, то для воссоздания поведения системы в указанные годы были использованы как фактические продажи (теперь известные и получившие название «точный прогноз»), так и прогноз с помощью скользящей средней (именуемый «непосредственным (naive) прогнозом»). В таблице приведена фактическая сумма издержек производства (в % к норме), а также издержки, которые могли бы быть, если бы компания руководствовалась правилами принятия решений. Нетрудно заметить, что при постоянном применении правила принятия решения компания имела бы значительную экономию. 1 a) Holt, Modigliani and Simon, A Linear Decision Rule for Production and Employment Scheduling in Management Science, October 1955; Holt,Modigliani and Muth, Derivation of a Linear Decision Rule for Production and Employment, in Management Science, January 1956. б) Эти главы были перепечатаны в «Analyses of Industrial Operations», edited by Bowman and Fetter, Irwin, Inc., 1959. в) Указанные главы были также включены в книгу Planning Production, Inventories and Work Force by Holt, Modigliani, Muth and Simon, Prentice- Hall, Inc., 1960. 128
Таблица 1 Фабрика красителей 1949—1953 гг. (включена война в Корее), % 1952—1954 гг. % Правило принятия решения (точный прогноз) Правило принятия решения (прогноз с помощью скользящей средней) Фактические издержки компании 100 108,5 Примечание. За 100% приняты издержки производства в сумме приблизительно 3 млн. долл. 3. ДРУГИЕ ПРИМЕНЕНИЯ ПРАВИЛ ПРИНЯТИЯ РЕШЕНИЙ В нашем исследовании мы применили метод ХММС, о котором только что было сказано, к календарному планированию производства и рабочей силы для трех предприятий по производству мороженого 1, шоколада 2 и кондитерских изделий 3. Результаты в том же виде, что и в предыдущей таблице, приведены в табл. 2. Таблица 2 Производство мороженого, % Производство шоколада, % Производство кондитерских изделий, % Правило решения (точный прогноз) Правило решения (прогноз) с помощью скользящей средней .... Фактические издержки Приблизительная сумма издержек в долларах, принятая за 100% . . . 100 104,9 105,4 500 000 100 102,0 105,3 150 000 100 103,5 111,5 1 500 000 1 R i en T. van der Veld e, An Application of a Linear Decision Rule for Production and Employment Scheduling (Master's thesis, Massachusetts Institute of Technology, 1957). 2 Wallace Crowston, An Empirical Study of Actual and Optimum Decision Rules for Production and Employment Scheduling (Master's thesis, Massachusetts Institute of Technology, 1958). 3 Составлено по данным Production and Inventory Control, Analysis of the Decision-Making Process, Clinton M. Jones (Master's thesis, Massachusetts Institute of Technology, 1958). 9 Заказ № 195 129
Из таблицы видно, что применение линейных правил решений, выведенных квадратичной аппроксимацией структуры издержек производства каждой фирмы, хотя и с меньшей выгодой, привело бы к сокращению издержек. 4. ФАКТИЧЕСКИЙ ОБРАЗ ДЕЙСТВИЙ И СТАТИСТИЧЕСКАЯ РЕГРЕССИЯ Автор, изучивший материалы предприятия по производству шоколада, вычислил способом наименьших квадратов регрессию, характеризовавшую близость фактических решений дирекции фабрики к плановым заданиям, полученным в соответствии с линейным правилом принятия решений. Он ввел дополнительную переменную — ожидаемый сбыт на предстоящее полугодие, применив экспоненциальное прогнозирование по отчетным данным. Для правила Wt получен коэффициент множественной корреляции г = 0,971, для правила Pt r = 0,87. Иными словами, формулы этих правил очень хорошо отражают решения руководителей фабрики, откуда следует вывод, что эти руководители в своих решениях принимали во внимание те же самые переменные. Тот же вопрос был освещен с помощью графика эмпирической регрессии по материалам обследования кондитерской фабрики (при постоянном сбыте). Здесь тоже обнаружена тесная корреляционная связь с тем добавлением, что большие запасы допускались в полугодии с сезонным оживлением. Затем по всем четырем предприятиям (производство красителей, мороженого, шоколада и кондитерских изделий) были вычислены коэффициенты регрессии для оценки близости фактических решений дирекций к плановым заданиям, рассчитанным в соответствии с «открытой формой» формулы — правила pt = а + Ь& + b2S2 + b3S3 + 64S4 + b5S5 + M7M + b7It-t. Эти вычисления привели к довольно скудным результатам. Между оценками сбыта S была тесная корреляционная связь и t — тест х прошел неудовлетворительно. Мы последовали совету относительно вычисления регрессии («использовав все имеющиеся ограничения улучшить оценки») и применили модифицированную (с обратной связью) форму правил решений 2. 1 Речь идет о критерии существенности Р. Фишера. См. Р. Фишер, Статистические методы для исследователей, Госстатиздат, М., 1958, стр. 157.— Прим. ред. 2 Правила ХММС были преобразованы в правила с обратной связью Джозефом В. Янсом в его неопубликованной работе Marshal lian Elements in the Carnegie Tech. Rules. 130
Для исследования регрессии были получены следующие версии правил: Pt = b3Wt + b,^S2-^Wt^ + b5^St^^It-^+a2l где W, Р и / имеют прежнее значение, St представляет фактический сбыт за текущий период, 52-4 — средние фактические продажи за предстоящие три периода, a S, W и / — средние значения соответствующих переменных за весь период исследования. Эти правила немного проще, хотя они и вытекают из правил с обратной связью, которые, как доказывает Яне, равноценны правилам ХММС. Точная формулировка правил не имеет существенного значения для данной статьи, несмотря на то, что их модификация (с переменной в виде нормализованных разностей [St (I/S) — U-\] позволила придать больший смысл оценкам регрессии. Для того чтобы в формулах, выражающих правила принятия решений, можно было выбрать значения их коэффициентов на основании изучения реального опыта управления производством, по материалам четырех упоминавшихся предприятий были вычислены линии регрессии, связывающие практические решения с расчетными в их модифицированной форме. Тесная корреляционная связь, обнаруженная при этом, позволила развить метод, описанный ниже. 5. ОПРЕДЕЛЕНИЕ ВЫГОДНОСТИ ПРАВИЛ, ОПИРАЮЩИХСЯ НА РЕГРЕССИЮ Предположив, что предприятие применяет правила с обратной связью для календарнога планирования производства и рабочей силы с коэффициентами, полученными на основании результатов обработки данных о фактических решениях руководства предприятий, можно выполнить математическое моделирование производства (с прогнозом сбыта с помощью скользящей средней) так же, как это было сделано в описанных исследованиях. Результаты приведены в табл. 3. Как видно из таблицы, во всех случаях (за исключением кондитерской фабрики), применение расчетных правил принятия решений с коэффициентами, соответствующими практическому опыту руководства, отраженному регрессией, и при относительно простой схеме прогнозирования сбыта снижает издержки сравнительно с действительными. Для предприятий по производству шоколада и мороженого они были даже меньше, чем при использовании правил принятия решений, опирающихся на обычный в этих случаях математический аппарат и ту же схему прогнозирования сбыта. Здесь требуется несколько пояснений. Тот неожиданный факт, что решения по формулам с коэффициентами, взятыми из практики, 9* 131
Таблица 3 Производство мороженого, % Производство шоколада, % Производ-j ство кондитерских изделий, % Производство красителей, % Правило принятия решения (точный прогноз) Правило принятия решения (прогноз с помощью скользящей средней) Фактические издержки Правило с коэффициентами на основании практического опыта .... Коэффициент корреляции: Wt,r Рит 100 104,9 105,3 102,3 0,78 0,97 100 102,0 105,3 100,0 0,57 0,93 100 103,3 111,4 124,11) 0,73 0,86 100 ПО 139,5 124,7 2) 0,40 0,66 1) Точное прогнозирование продаж снизило бы этот показатель до 112,5%. 2) Это число следует принимать с оговоркой, так как при вычислениях были использованы публикации и рабочие материалы ХММС, а не данные первоисточника. Некоторые издержки производства не удалось восстановить, и, кроме того, были взяты не 1949 — 1953 гг., а пятилетний период с 1950 по 1954 г. Тем не менее он также включает годы максимального подъема производства во время корейской войны. приводят к большей экономии затрат, чем расчеты с применением математического анализа, иногда объясняют недостаточно точным совпадением с реальными условиями математической модели, использованной при втором из этих способов. Причина, конечно, не в этом. Важно иметь в виду, что оптимизация решения всегда основывается на математической модели, которая предположительно и лишь в общих чертах представляет собою некоторое подобие действительности. Сказанному не противоречит, казалось бы свидетельствующее об ином, соотношение по кондитерской фабрике. Полученная по материалам этой фабрики эмпирическая линия регрессии (см. выше) показала, что решение с применением взятых из практики коэффициентов станет лучше, если уточнить соответствующее ему правило, приняв в расчет сезонные изменения в регулировании запасов. 6. ПРИМЕНЕНИЕ КОЭФФИЦИЕНТОВ, ОПРЕДЕЛЯЕМЫХ НА ОСНОВАНИИ ОБРАЗА ДЕЙСТВИЙ АДМИНИСТРАЦИИ Имея в виду дальнейшее развитие идей, связанных с применением установленных из практики коэффициентов для планирования производства и рабочей силы, ниже сделана попытка своего рода аксиоматической трактовки этой концепции. 132
1. Опытный руководитель отдает себе ясный отчет о наличии критерия эффективности системы и считается с ним в своих решениях. 2. Опытный руководитель отдает себе отчет о переменных, влияющих на этот критерий в рамках системы. 3. В современных условиях, в результате естественного отбора, руководители производства, принимая решения, неявно пользуются правилами их оптимизации, опираясь на здравый смысл и интуицию, которые не безукоризненно связывают переменные с критерием оптимальности, зависящим от них. Возникающие при этом неточности чаще представляют собою разнонаправленные ошибки, чем систематические уклонения от правильного пути. 4. Поверхность, соответствующая множеству значений целевой функции (критерию, сумме затрат), в большинстве случаев имеет сверху (снизу) форму, напоминающую неглубокую тарелку даже с учетом систематических уклонений в образе действий руководства. Лишь ошибки, выпадающие из поля случайного рассеяния, приводят к росту затрат или к убыткам. 5. Если бы руководители производства следовали в своей деятельности правилам принятия решений с коэффициентами, установленными как средние на основании их собственного опыта, их практика в большей степени соответствовала бы критериям, которыми они руководствуются. Надо полагать, будет полезно попытаться объяснить, почему правила принятия решений, выведенные из осредненного поведения руководства, могли бы дать лучшие результаты, чем информация о самом поведении в целом. Человек, по-видимому, реагирует на сигналы из внешней среды избирательно. Порой кажется, что его внимание привлекают сигналы одного рода (например, последний телефонный звонок), тогда как в другое время на него воздействует иная группа возбудителей. Здесь дело не только в селективном отборе сигналов, и, по-видимому, в данном случае следует также применить понятие «порога». Человек до некоторого уровня сигнала может вообще не реагировать на него, а затем, после перехода за пределы этого уровня, обладать обостренной реакцией на этот сигнал. Именно такого рода поведение помогает объяснить различия в образе действия организации (или ее руководителя). Уклонение дирекций предприятий при принятии решений от образа действий, соответствующего предпочтительным в этом смысле результатам, можно, таким образом, разделить на две компоненты (или приписать двум факторам). Одна из них проявляется как отклонение центра группирования от предпочтительной цифры и именуется смещением. Она приводит к сравнительно небольшим потерям в результате того, что поверхность значений критерия у основания подобна тарелке. Вторая компонента выражается в случайных отклонениях от центра группировки и именуется дисперсией. Она приводит к большим потерям в связи с возникновением 133
«случайных отклонений» на периферии поверхности значений критерия («на боках тарелки»). По-видимому, применение правил принятия решений с коэффициентами, полученными на основании повторной практики дирекции предприятий,'открывает соблазнительную возможность устранить вторую и более важную из упомянутых двух компонент. Что же дает эта теория применения коэффициентов, определяемых на основании образа действий руководства предприятий? 1) Она может осветить восприятие проблемы управления и процесса принятия решений, способствуя дальнейшему 'развитию идей (это действенно в научном отношении) г. а) Часто бывает выгодно иметь несколько подходов к решению одной и той же задачи. б) Устойчивые особенности отклонений образа действий от правил принятия решений могут помочь обнаружить недостающие в анализе элементы. в) Она дает нам возможность косвенно взглянуть на критерий с точки зрения руководителя (или его действий). 2. Теория коэффициентов позволяет производить выборочные обследования существующей системы. Например, если номенклатура запасов состоит из 10 000 наименований, то руководитель может тщательно просмотреть 100 наименований и вынести по ним необходимые решения. Затем данные, полученные по этим 100 наименованиям (с относящимися к ним переменными), могут быть использованы для подсчета коэффициентов правил принятия решений для 10 000—100 изделий (пример исследования запасов приведен ниже в этой главе). 3. Существует возможность на основе этой теории повысить взаимосоответствие элементов существующей системы. Например, если фирма имеет несколько заводов, то можно точнее определить их размеры в составе фирмы (в этой главе в дальнейшем описан пример проверки размеров заводов). 4. Пусть руководитель ознакомится с правилом принятия решений, включающим коэффициент, отражающий его деятельность, и затем вынесет свое решение. Говоря иначе, пусть в ходе работы будет установлена обратная связь между руководителем и правилами 2. 1 Харлоу Шейпли, астроном из Гарвардского университета, в рецензии на книгу Hermann Bondi, The Universe at Large пишет; «Автор вполне справедливо заявляет, что цель любой научной теории состоит не в том, чтобы быть неопровержимой, окончательной или истинной, а в том, чтобы быть плодотворной, наводить на мысль о возможности новых воззрений, ведущих к более глубокому, многогранному познанию объекта исследований». 2 В книге J. G. March and H. A. S i m о n, Organizations, New York, John Willey Sons, Inc., 1958, p. 209, говорится: «поскольку нет оснований полагать, что любой метод принятия решений, централизованный или децентрализованный, будет способствовать достижению организацией близости кистинному «оптимуму», то при поисках механизма вынесения решений 134
5. «Отключите» руководителя от реального управления, но регистрируйте его решения (это следует понимать не как серьезное предложение, а как стимул для новых идей). Руководитель имеет постоянный доступ к окружающим его изменяющимся условиям и принимает свои решения. Эти решения регистрируют и накапливают, но календарное планирование объема производства и численности рабочей силы производится на основании правила принятия решения, а не в соответствии с решением руководителя. Затем правило принятия решения периодически обновляется на основе зафиксированных к данному моменту времени решений руководителя. Идея заключается в том, чтобы устранить влияние случайных отклонений в образе действий и в то же время позволить правилу принятия решений отражать изменяющуюся окружающую обстановку. 6. Если можно проверить теорию, когда чувствуется возможность существования измеримого критерия системы (как в приведенных в данной главе примерах), появляется определенная уверенность при применении ее там, где измеримого критерия нет х. 7. При автоматическом принятии решений (электронно-вычислительной машиной) для экономии времени руководителя потребуются правила принятия решений с коэффициентами, которые могут быть получены с помощью регрессии. 8. На границе возможностей анализа новая теория может помочь при создании системы. Там, где при аналитических способах применены укрупненные расчеты и возникает вопрос, что произойдет, если исполнитель переходит к расчлененному решению, можно воспользоваться правилами с коэффициентами регрессии. Теория применения коэффициентов, определяемых на основа- нельзя слишком серьезно принимать критерий оптимизации, а нужно искать «подходящие» методы получения удовлетворительных решений. Исследование методов принятия таких решений пока что находится только в начальной стадии. В отдельных фирмах разработан ряд правил принятия решений для регулирования объема производства и численности рабочей силы, но опять- таки только с небольшими вылазками за границу области обычной оптимизации». Новая теория несколько отходит от этой области. 1 Херберт Саймон в книге «The New Science of Management Decision», New York, Harper and Row Publishers, 1961, делает несколько замечаний относительно этой идеи. Если новая теория что-либо предлагает, то первая цитата со стр. 17 (относительно исследований операций) не обязательно справедлива: «Для модели требуется расчет определенных параметров ее структуры (системы) до того, как ее можно будет применить в конкретной ситуации. Следовательно, обязательно должны существовать способы реальной количественной оценки этих параметров [системы, а не правил принятия решений, полученных из нее] с достаточной для практических целей точностью». Тем не менее для подкрепления этой мысли приведем вторую цитату со стр. 18 этой книги: «Если подходить к практической деятельности с точки зрения исследования операций, то ничто не должно быть абсолютно точным, данные должны быть достаточно близки к действительности, чтобы дать лучшие результаты по сравнению с теми, которые могут быть получены с помощью здравого смысла без математических методов». 135
нии образа действий руководства, конечно, имеет свои нерешенные задачи. Она может убить курицу, которая несет золотые яйца. Руководитель может следовать правилу с коэффициентами, отражающими в среднем его прошлый опыт, и не корректировать поведение в связи с новыми, изменившимися условиями. Марч и Саймон х различают, во-первых, быструю адаптацию, как, например, при решении задачи (здесь используется в качестве опоры правило принятия решений), и, во-вторых, длительную адаптацию, как, например, при обучении (здесь для модификации правил принятия решений используется деятельность руководителя). Задача состоит в том, как обойти первое, не препятствуя второму. 7. РАЗМЕР ПРЕДПРИЯТИЯ Для дополнительной проверки представленной здесь теории было проведено исследование по результатам работы, опубликованной в 1958 г. 2 В ней рассматривался вопрос об оптимальном размере фабрики мороженого компании, владеющей 10 предприятиями в семи штатах. Не будем здесь повторять весь ход исследования, укажем только, что правило принятия решения об оптимальном объеме производства предприятия имеет вид '«Pt-W1" (¦?-)*. где К обозначает плотность продаж в тыс. галлонов на квадратную милю в год, а Ь и с — отдельные стоимостные коэффициенты, относящиеся к системе производства и распределения мороженого. Если бы система была перестроена в соответствии с данными исследования и правилом принятия решения, то, очевидно была бы получена экономия валовых издержек. Эти данные наряду с результатами применения новой теории представлены в табл. 4. Таблица 4 2/3 Исходная модель Vopt = (КI/з ( — ) Регрессия (первая модель) V = (/СI/з d{ Регрессия (непосредственная модель) V = a-\-d,2K Экономия, долл. 207 000 133 000 20 000 1 J. G. March and H. A. Simon, Organization, New York, John Wiley Sons, Inc., 1958, p. 170. 2 E. H. В о w m a n, Scale of Operations — An Empirical Study, Journal of the Operations Research Society of America, May — June, 1958. 136
Та же самая форма правила принятия решения [при (КI/9 в качестве независимой переменной и фиксированном параметре а = 0] была использована для оценки коэффициента правила решения dt по фактическим объемам производства фабрик компании. Если бы фабрики компании были перестроены в соответствии с коэффициентом в правиле принятия решений, соответствующих их собственному образу действий, то предполагаемая экономия от сокращения издержек составила бы 133 тыс. долл. В опытных целях таким же самым образом было использована «непосредственное» правило принятия решений: V = а + d2K- Оно включало ту же переменную — плотность продаж, однако эта переменная входила в формулу не в надлежащей степени, а параметр а не был фиксированным. Здесь а и d2 были подсчитаны по данным действующих фабрик и, как видно из табл. 4, была получена довольно скромная экономия. Иными словами, «традиционные» правила в данном случае не пригодны. Очевидно, что при самом простом правиле, где V = V, то есть если все фабрики были бы одинаковой мощности, то в этом случае фирме пришлось бы нести большие издержки, чем при существующем распределении мощностей. Интересно, что «непосредственное» правило на практике обнаруживает лучшее соответствие фактическим данным. В рассматриваемом случае большее значение придается скорее экономии, чем хорошему соответствию действительности; но если бы в настоящее время существовало тесное сотрудничество между исследователем и руководителем предприятия, это соответствие заслуживало бы изучения и осмысливания для них обоих. Иначе говоря, новая теория могла бы быть очень полезной составной частью более общего аналитического процесса, чем формирование прямых указаний. 8. ХРАНЕНИЕ ЗАПАСНЫХ ЧАСТЕЙ В АЭРОПОРТУ АЙДЛУАЙЛД Еще одна проверка новой теории была произведена по материалам одной диссертации х, в которой исследовалась проблема поддержания запасов запасных частей в аэропорту Айдлуайлд. Для анализа запасов была применена теория массового обслуживания. Система массового обслуживания имела п каналов обслуживания для п отдельных деталей. При наличии на складе запасной части канал обслуживания считался свободным, при отсутствии запасной части — занятым; возникновение очередей не допускалось. Для проверки теории применения коэффициентов, определяемых на основании образа действий руководства предприятий, было 1 Giyora Doeh, Overhauled Spares Inventory for Aircraft Components (Master's thesis, Massachusetts Institute of Technology, 1958). 137
разработано очень простое правило принятия решений: Запасные части = а + Ьх, где Использование запасных частей в течение ремонтного цикла х Цена одной детали В диссертации довольно подробно изучено 10 складируемых деталей с широким диапазоном характеристик. Результаты приведены в табл. 5. Таблица 5 Фактические данные компании Анализ в 'диссертации Новая теория Вложенный капитал (долл.) Случаи отсутствия на складе необходимой тали (за 6 лет) де- 17 000 186 16 000 69 16 500 143 Простое правило принятия решений с коэффициентами поведения (а и Ь), по крайней мере для этой малой выборки, могло бы привести к экономии вложенного капитала, равной половине экономии, полученной в диссертации, и сократить число случаев отсутствия необходимых деталей на одну треть того снижения числа этих случаев, которое было достигнуто в результате анализа в диссертации. Более детальное исследование не проведено. 9. ДРУГИЕ ПРИМЕРЫ ПРАКТИЧЕСКОГО ПРИМЕНЕНИЯ Многочисленные выводы, подтверждающие изложенные в этой главе идеи, были получены в ходе очень детального изучения образа действий при обновлении автомобильного парка в автотранспорт- 1 Для использования метода конечных приращений зададимся следующими условиями: Л издержек = Л прибыли, Издержки на одну деталь = (А вероятности) /издержки, связанные \ ( с отсутствием необхо- ] . \димой детали / Пусть А вероятности а -. — (применяемость) (число деталей) v r и хвост гиперболы является грубой аппроксимацией хвоста кривой распределения Пуассона. Тогда Издержки на деталь а применяемость /издержки, связанные с отсут-\ F число деталей \чствием необходимой детали J • Число деталей а применяемость Г издержки, связанные с отсут- издержки на деталь V ствием необходимой детали ) 138
ном предприятии г. В этой работе была использована вполне приемлемая модель 2 с эмпирическими данными из отраслевых исследований. Она позволила определить следующие величины: 1) Оценки износа а) наличная грузоподъемность грузовика; б) технические характеристики двигателя внутреннего сгорания. 2) Оценки текущих расходов а) топливо; б) техническое обслуживание. В результате исследования были построены кривые с очень малой кривизной, характеризующие общие среднегодовые расходы как функцию срока службы грузового автомобиля. Замена одного автомобиля со сроком службы от 2,2 до 4,4 лет другим будет вести к потере максимум 50 долл. по сравнению с «точным» оптимумом. Смит отмечает: «Это очень важный результат, в особенности если учесть, что в среднем около 2/3 всех капитальных вложений автотранспортных фирм идет на приобретение автомобилей (то есть на покупку средств производства со средней длительностью пользования, требующих регулярного технического обслуживания). Казалось бы, политика замены оборудования должна иметь для коммерческого автотранспорта большее значение, чем для других отраслей производства и обслуживания. Однако оказывается, что для автотранспортных фирм точность сроков замены автомобилей не имеет большого значения. Это вовсе не.говорит о том, что безразлично, когда производится замена автомобиля. Суть здесь в следующем. Прибыли столь незначительно зависят от замены автопарка, что фирма, вероятно, не заметит уклонений от оптимума по изменениям себестоимости даже при использовании сравнительно грубых методов анализа». Смит также отмечает, что оптимальный срок службы, равный 3—4 годам, приблизительно на 1—2 года короче действительной продолжительности эксплуатации автомобиля до замены у обследованной им фирмы. ,| Далее он объясняет, что удлинение срока эксплуатации является для этой фирмы по существу сравнительно дешевым источником капитала. Иными словами, руководство чувствует несколько иную поверхность критерия, отличающуюся от принимаемой во внимание при исследовании. Регрессия поведения должна позволить включить в правило принятия решений эту интуицию руководства. 1 Vernon Smith, Economic Equipment Policies, An Evaluation, Management Science, October, 1957. o* L *r=o о 139
В настоящее время, по-видимому, уделяется большое внимание эвристическому и экспертному решениям задач. Хотя эти процессы могут быть в значительной степени произвольно направленными и качественными, в них вложены некоторые коэффициенты. Вопрос о том, как далеко идти по тому или иному пути или сколько элементов надо взаимно связать, тоже может потребовать определения параметров. Там, где дело обстоит именно таким образом, может оказаться полезным наблюдение за работой опытного практического работника и исследование регрессии на основании его поведения. Проиллюстрируем это примером. Исследователь, пишущий диссертацию, разрабатывает эвристическое правило распределения работ, которое должно быть увязано с основным технологическим процессом на авиационном заводе. Задача состоит в нахождении очередности обработки деталей, ожидающих обработки перед станком. Исследователь установил 4 характеристики деталей (например, стоимость, срок), которые влияют на очередность обработки. Для взвешивания этих характеристик ему нужны коэффициенты. Прежде ему приходилось заниматься моделированием. Он считает, что анализ, по крайней мере в общих чертах, возможен. Новая теория предоставляет исследователю возможность получить от предприятия те фактические решения о запуске в производство большого числа деталей, которые были приняты людьми, непосредственно занимающимися планированием производства. Эти данные наряду с характеристиками деталей позволяют построить регрессию для определения весов в эвристическом правиле. Теория применения коэффициентов, определяемых на основании образа действий руководства предприятия, дает метод оценки деятельности этого руководства и их организации. Кажется, нет видимых причин, почему эти идеи должны применяться только к производству, а не к сбыту, или только к промышленным организациям, а не к правительственным, или только к микроэкономическим задачам, а не к задачам, встречающимся также при макроэкономическом анализе. Однако здесь, быть может, имеется некоторое преувеличение. 10. ЗАКЛЮЧЕНИЕ Суть теории применения коэффициентов, определяемых на основании образа действий руководства, заключается в ряде следующих сравнительно простых положений: 1. Процесс принятия решений руководителями и (или) их организациями может быть представлен как процесс оценки коэффициентов для правила принятия решений (разумеется, не следует понимать это буквально). 2. Так как поверхность критерия имеет форму «тарелки», случайные отклонения при принятии решений ведут к большему ущербу, чем отклонения типа смещений. 140
3. Правило принятия решений со средними коэффициентами, полученными на основании образа действий руководства, должно давать лучший результат по сравнению с существующей практикой хозяйственной деятельности. 4. Это правило, может быть, лучше, чем правило с коэффициентами, полученными с помощью традиционного анализа. 5. Систематические взаимосравниваемые исследования с применением «теории коэффициентов» могут привести к возникновению новых идей.
ГЛАВА 8 Правила регулирования запасов с ограничениями в связи с выравниванием производства П. Р. ВИНТЕРС1 1. ВВЕДЕНИЕ Под термином «выравнивание производства» подразумевается такое планирование, которое снижает пики и сглаживает спады при определении объема производства в зависимости от изменчивых условий сбыта. Подобного рода планирование обычно применяется на предприятиях, создающих товарные запасы. Одна из основных причин содержания этих запасов заключается как раз в том, что они позволяют выравнивать уровень производства. Имеется много разнообразных методов выравнивания производства или, иными словами, методов оптимального планирования производства 2. Например, можно назвать методики Хоулта, Модиглиани, Мута и Саймона [1], на основе которых принимаются комплексные производственные решения для минимизации издержек, связанных с наймом и увольнением персонала, со сверхурочными работами или простоями, с расходами по содержанию запасов или с убытками из-за их недостаточности. В последней главе этой книги кратко описываются другие методы и даются рекомендации по их использованию. В литературе по научному управлению выравнивание производства, вероятно, привлекает больше внимания, чем любая другая проблема, за исключением разве регулирования запасов. Если речь идет о регулировании товарных запасов, оказывается, что эти две проблемы тесно связаны. Регулирование запасов в традиционном понимании заключается в решении двух относящихся к запасам вопросов: 1) когда для пополнения запасов надо повторить заказ 1 Работает в Технологическом институте Карнеги. 2 make production decisions — здесь подразумеваются оптимальные научно обоснованные решения, принимаемые на предстоящий период времени. Буквальный перевод этого выражения исказил бы смысл.— Прим. ред. 142
поставщику или снова запустить изделия в производство на своем предприятии и 2) сколько изделий надо заказать. Решение этих вопросов для запасов своей готовой продукции фактически равносильно определению плана производства. В математической теории запасов, однако, основное внимание уделено запасам по отдельным наименованиям продукции без учета воздействия принимаемых решений на всю систему, включающую запасы. Когда такого рода подход применяется при регулировании запасов готовой продукции, то предприятие или должно игнорировать предлагаемое ему «решение», или же вынуждено нести связанные с этим решением дополнительные издержки (см. выше). Дело в том, что регулирование производства и запасов отдельно по продукции каждого наименования зачастую усиливает влияние сезонных колебаний, между тем как комплексные, выравнивающие производства решения ослабляют его. Разумное решение вопроса о запасах должно соответствовать плановым предположениям для предприятия в.целом. В то же время в суммарных планах надо определить долю в выпуске и в запасах продукции различных наименований. В данной статье изложен способ достижения этих целей, или, точнее, описана группа взаимосвязанных способов такого рода. Вначале мы рассмотрим способ минимизации общих расходов на содержание запасов (суммы расходов по содержанию запасов по отдельным наименованиям) при ограничениях, относящихся к запасам. Затем, применяя тот же критерий, мы будем пользоваться ограничениями, связанными с производством. Как мы увидим в дальнейшем, ни один из этих двух способов не является вполне удовлетворительным: первый — поскольку он не выполняет поставленной задачи; второй, хотя и дает желаемые результаты, неудовлетворителен вследствие связанного с ним большого объема расчетов. Далее, мы покажем, как, уменьшая число ограничений, можно очень простым способом достигнуть почти оптимальных вариантов плана производства. Предлагаемый метод основан на сравнении издержек при различных способах расчета размеров партий и точек повторения заказа, согласованных с желаемыми суммарными планами. Он дает недорогой (в отношении затрат на вычислительные работы) способ, обеспечивающий предприятие в начале каждого месяца (или другого планируемого периода) определенной номенклатурой продукции с указанием объема и очередности выпуска по каждому наименованию. Очередность определяется исходя из запасов и сбыта и может быть изменена заводом с учетом фактической производственной мощности. Сравнение расходов при оптимальном и приближенно оптимальном методах показано на графиках. Математический аппарат подробно описан в приложении. 143
2. ОГРАНИЧЕНИЯ В ВИДЕ СУММАРНОГО ЛИМИТА ДЛЯ ЗАПАСОВ Как уже было отмечено во введении, расходы на содержание товарных запасов по заводу в целом рассматриваются как одно из главных обстоятельств при оптимальном планировании производства, запасов и рабочей силы для системы завод — склад. При заданном суммарном уровне запасов существует множество вариантов распределения их по отдельным наименованиям. Любое возможное распределение сопряжено с присущими ему расходами — например, можно иметь излишки одних изделий \ в то время как другие могут вовсе отсутствовать. Желательно выбрать удовлетворительное распределение запасов по номенклатурным позициям {или наилучшее, если можно его найти) и затем при выравнивании производства исходить из связанных с этим распределением издержек. Рис. 14 дает простую иллюстрацию этого положения. .1 i; \ v > Издержки Вариантных распределений s Распределение с * минимальными издержками k Все запасы, число единиц Рис. 14. Затем, принимая решения о запасах каждого изделия, мы будем стремиться приблизиться к распределению, при котором минимизируются общие издержки содержания запасов. Один из способов достижения этой цели состоит в том, чтобы минимизировать общие издержки на запасы (сумму издержек по отдельным изделиям) при том ограничительном условии, что сумма запасов по отдельным изделиям равняется суммарному запасу, установленному при выравнивании производства. Для большей точности введем следующие обозначения. Для каждого изделия (индекс изделий опущен): Q — размер партии или заказа 2. 1 Для краткости в дальнейшем переводим individual product как «изделие» вместо «продукции данного наименования».— Прим. ред. 2 Здесь и далее в статье количества выражаются в таких «единицах», которые допускают суммирование количеств разных изделий (продукции разных наименований), например в человеко-часах трудоемкости, в галлонах, долларах или в любых других единицах, отвечающих этому требованию. 144
IT — точка повторения заказа; s — уровень сбыта, ожидаемый в течение времени отставания поставки, единиц изделий за единицу времени; Ть — время отставания поставки (производственный цикл для своего производства) в единицах времени; С (/т, Q) — ожидаемые издержки на содержание запасов по данному изделию за период; / — норматив ожидаемого суммарного объема запасов в единицах. Суммарные издержки на содержание запасов = 2 С (ITi, Q0- г Средний запас одного изделия равен половине размера партии плюс страховой запас ? + 1т-8Ть. Чтобы минимизировать суммарные издержки на содержание запасов при установленном выше ограничении, применим функцию Лагранжа г i и минимизируем ее, для чего возьмем частные производные по Qt и 1ти приравняем их и ограничение нулю и решим эту систему уравнений. Для реальных моделей запасов, которые определяют С Vt> Q) г> и в частности для модели, которая будет изложена несколько позже, выполнить это крайне трудно. Вычисления облегчаются, если отдельные функции издержек С (/г, Q) разложить в ряды Тейлора, включающие только члены второго порядка и ниже. Подобным же образом можно аппроксимировать производные с помощью линейной функции Q, 1Т и s. Пример первого метода дан в первой главе [2], а второго — в гл. 13 [1]. Однако основная трудность, связанная с общим ограничением запасов, заключается не в самих вычислениях. Дело в том, что предпочтительный суммарный уровень запасов получают только на основе средних данных по всем изделиям и, следовательно, со значительным и недопустимым запаздыванием во времени. Предположим, например, что в среднем каждое изделие производится предприятием приблизительно один раз в три месяца. Иными словами, ежемесячно предприятие выпускает около V3 всей номенклатуры изделий. Если в данный момент суммарный уровень запасов равен А (см. рис. 15), а для выравнивания производства желательно к концу месяца достигнуть уровня В, то, применяя описанный выше метод, мы повысим для всех изделий точку повторения заказа и увеличим размер партии. Однако в действительности в течение месяца 1 Допускается, что С (/т, Q) можно дифференцировать в соответствующих интервалах 1Т и Q. 10 Заказ № 195 145
будет запущена в производство лишь часть изделий из всей номенклатуры, поэтому к концу месяца запасы увеличатся по сравнению с уровнем Л, но не достигнут уровня В. Таким образом, производство оказалось бы ниже нормативного уровня. Если больше не вносить никаких изменений в точку повторения заказа и в размеры Время, будущий период Рис. 15. партий, то уровень В будет достигнут через несколько месяцев. К сожалению, за это время мы попытаемся несколько изменить принятое направление, что тоже можно достигнуть только за длительный срок и т. д. Этот процесс надо рассматривать в динамике, а не статически. 3. ОГРАНИЧЕНИЕ ПО СУММАРНОМУ ОБЪЕМУ ПРОИЗВОДСТВА Другой подход к задаче заключается в том, чтобы минимизировать сумму расходов на содержание запасов при условии, что количество продукции, запущенной в производство в течение месяца, равно нормативу суммарного объема производства Р* *. Это ограничение записывается как где р 6 Р означает, что включаются партии изделий, запускаемых в производство в течение месяца. Функция Лагранжа принимает такой вид: L = %C(ITU Qi) + X(%QP-P*). A) г Р?Р V Вначале нам неизвестно, какие изделия будут запущены в производство, поэтому для пробы следует включить их всех. Необходи- 1 Норматив суммарного объема производства Р* можно получить многими различными методами, включая линейные правила оптимального планирования Хоулта, Модиглиани, Мута и Саймона [1], а также другими, приведенными в последней главе этой книги. 146
мым условием существования минимума являются 3L dITi dL dQt = 0, = 0. /== 1, 2, ...,N. B) Уравнения B) можно решить попарно для ITi (X) и Qt (X). Затем 1) выбирают значение Я, 2) вычисляют ITi (X) и Qt (X), 3) смотрят, ожидается ли в течение месяца запуск в производство изделия г, для чего выполняют расчеты по формуле _ ITi (X) C) текущий запас изделия i, St — ожидаемый в течение меся- Если Рг> U то ожидается запуск изделия и, следователь- включаем Qt (X) в /*¦ у / 0 Я* Рис. 16. где /? - ца сбыт, но, мы суммарный объем производства (то есть она является одной из партий Qp). После того как эти расчеты выполнены для всех изделий, мы можем нанести одну точку на графике Я, Р (пример графика дан на рис. 16). Выбор нескольких значений X позволит нам определить X* для норматива Р*; затем мы можем пересчитать Ih (X*) и Qf (Я*). При таком подходе решения о запасах по отдельным изделиям в среднем дадут суммарный уровень производства в соответствии с нормативным. Этот метод, надо думать, может принести достаточно хорошие результаты, хотя он и не является строго оптимальным в том смысле, что между минимизацией издержек на содержание запасов и оптимальным планированием производства * вклинились правила регулирования запасов, основанные на соотношениях С GТ, Q) для каждого отдельного изделия. Его недостатком является громоздкость вычислений 2: нужно несколько раз в месяц решать N пар 1 Попытка оперировать непосредственно с решениями для отдельных изделий и суммарными издержками дается Шильдом [3]. Метод Шильда имеет тот недостаток, что он никоим образом не гарантирует, что на предприятии запуск изделий в производство будет производиться целыми расчетными партиями. 2 Например, произведен на электронно-вычислительной машине IBM-650 обсчет модели средней сложности. При использовании регистра переадресации и запоминающего устройства на магнитных сердечниках решение одного уравнения B) для одного изделия занимает около минуты машинного времени. Ю* 147
нелинейных уравнений B) (для N изделий). Эти расчеты, вероятно, неосуществимы при очень большой номенклатуре запасов. Невозможность проведения расчетов заставила нас рассмотреть альтернативные методы, о которых говорится в следующем разделе. 4. ИЗДЕРЖКИ В ЗАВИСИМОСТИ ОТ СОДЕРЖАНИЯ НАЛОЖЕННЫХ ОГРАНИЧЕНИЙ Описанные выше трудности, связанные с расчетами, заставили нас заинтересоваться вопросом, насколько точки повторения заказа и партии при оптимальных ограничениях меняются при снятии ограничений. Для исследования этих различий мы минимизировали C(IT, Q) для одного из изделий при ограничении его среднего запаса / (индекс изделия здесь опущен) 0 = C(Jr,Q) + *[^ + /T-srIi--/). D) Чтобы найти минимум, берем частные производные1 °> -ятг = °- E) д1т ~~ "' dQ Для многих уровней сбыта и издержек нами было установлено, что <2*(Я) имеет значительно большие отклонения, чем /г(Я). Типичный результат такого анализа показан на рис. 17 2. Полученные результаты наводят на мысль о возможности зафиксировать 1Т в его среднем значении при расчете без ограничения, а затем и осуществить подчиненные ограничениям изменения в запасах, увеличивая и уменьшая только Q 3. Это несколько упрощает расчеты. Однако прежде чем остановиться на этом плане, мы решили исследовать, с какими издержками связано наложение ограничений только на Q или только на /т при различных средних уровнях запасов. Исследование было проведено следующим образом. 1) Приравняем к = О и решим уравнения E) относительно (/т, Q) без ограничений. 2) Выберем значение Я и решим уравнения E) относительно A*т, Q*). 3) Подсчитаем / (X) = ^ + 1*т - s TL. 1 Модель для расчета издержек и эти уравнения подробно рассматриваются в приложении. 2 Объяснение всех принятых условных обозначений дается в приложении. 3 Такая возможность получения нормативного суммарного уровня производства выражается правилом: при любом уровне Р* надо запланировать выпуск одной и той же номенклатуры изделий (в течение месяца) и затем получить Р*, увеличив или уменьшив количество продукции каждого наименования. 148
4) Наложим ограничение только на Q, чтобы получить то же значение / (Я), что и в пункте 3, используя уравнение Q'=2[/ (k)-IT + sTL]. Единицы рис. 17. Кривые, характеризующие изменение Q и /т. Примечание. CF = 200 долл.; Cj = 0,1 долл. (единицы на месяцы); D/Cj = 30 (безразмерная величина); Tl = 1,8 месяца; г = 3 (безразмерная величина); s = 500 единиц в месяц. 5) Наложим ограничение только на /т, чтобы получить то же значение / (Я), что и в пункте 3, используя уравнение /т = / (А,) — 149 •
6) Вычислим следующие издержки: а) С (/т, Q*) — издержки при ограничениях, наложенных как на /т, так и на Q; б) С (/т, Q') — издержки при ограничении только Q; в) С (/т, Q) — издержки при ограничении только /т. 7) Возвратимся к пункту 2, чтобы выбрать другое значение Я. Типичные результаты приведены на рис. 18 х. Они были не совсем такими, как предполагалось, и показали, что сделанный выше вывод целиком ошибочен. Когда средний уровень запасов превышает уровень, получаемый при отсутствии ограничения, издержки 1100 щ 1000 % 900 | 800 S 700 | 600 М 500 % 300 1 200 4 100 О у/ Издержки при ограничениях, наложенных как на1Г,так и на QFa) Издержки при ограничении только Q F6) Издержки при ограничении только fy F8) i i i I \кЧ,0 k0-,5 \=0:2?ЩП=0;05Л=0М №°1 1нии уровень запасов при наложенных ограничении ЛЩ09 1000 2000 3000 Средний уродень запасоб, I то 5000 Рис. 18. Издержки при различных ограничениях. Примечание. s = 1000 единиц в месяц; значения других величин даны в примечании к рис. 17. для всех трех случаев Fа, 66, 6в) очень близки друг к другу. При этом до тех пор, пока /г и Q по крайней мере не меньше их оптимальных, не подчиненных ограничениям значений (/г, Q), едва ли существенно, как получен средний уровень запасов, по крайней мере с точки зрения издержек. Однако по другую сторону от оптимального значения, где /т и Q меньше их оптимума, дело обстоит совсем иначе. Если установить Q равным Q и уменьшать /т, чтобы получить меньший средний уровень запасов, то издержки Fв) будут ненамного выше, чем при наилучшем выборе 1Т и Q Fа). С другой стороны, если 1Т постоянно и равно /т и уменьшается Q, то издержки F6) растут гораздо быстрее. Следовательно, лучшее правило с уменьшенным числом ограничений состоит в том, что надо зафиксировать рассчитанный без 1 Объяснение всех принятых условных обозначений дается в приложении. 150
ограничений размер партии Q на длительный срок, а нормативный уровень запасов обеспечить за счет точки повторения заказа. Для производства это значит, что размеры партий должны быть постоянными, а для получения нормативного месячного объема производства Р* надо выпускать более широкую или менее широкую номенклатуру изделий. 5. АППРОКСИМАЦИИ ДЛЯ УПРОЩЕННЫХ ПРАКТИЧЕСКИХ РАСЧЕТОВ Результаты сравнения издержек, приведенные в разделе 4, показывают, что если исходить из издержек на содержание запасов, то лучше всего накладывать ограничения только на точки повторения заказа. Если продолжать исследования задачи по избранному нами пути, то мы должны стремиться минимизировать L, выраженное уравнением A) при неизменных размерах партий, равных Qt. L = 2iC(ITi,Qi) + k(% Qp-P*)- i p?P Заметим, что производные по оставшимся переменным, влияющим на решение, не содержат К dL= dC(lTi,Qi)=0 F) dITi dlTi Следовательно, этот метод нельзя применить для решения поставленной задачи. Можно было бы применить другой подход к задаче, при котором из всех Qt выбирают группу Q, удовлетворяющую (хотя бы приблизительно) условию 2 QP = P*. Р?Р Р Затем находят такую группу Q, которой соответствует минимум ожидаемых издержек на содержание запасов. Поступая таким образом, мы практически свели бы к нулю роль точек повторения заказа (которые понадобились бы только для установления очередности запуска) и должны были бы перестроить всю задачу. В качестве альтернативы привлекает внимание следующий метод аппроксимации: 1) Следует определить из уравнения B) при к = О1 точки повторения заказов без наложенных ограничений. 2) Надо вычислить индексы очередности п.— JTi Hi ~~ /о с. для всех изделий: 1 Можно было бы использовать аппроксимацию IT = a-\-bs. Ее применение описано в приложении. 151
3) Расположить изделия в порядке уменьшения pt. 4) В этой последовательности переходят от изделия к изделию до тех пор, пока накапливаемая сумма Q^He достигнет нормативного суммарного объема производства Р*. Выбранная так группа изделий соответствует номенклатуре, подлежащей изготовлению в течение месяца. Очередность их производства задана значениями pt. Поскольку при определении последних издержки производства не учитывались, в очередность изготовления изделий можно вносить изменения, повышающие эффективность календарного плана. С помощью этого метода предприятие в начале месяца могло бы получать подробную информацию о намеченном производстве, полезную не только при составлении календарных планов, но также и при определении потребности в рабочей силе для каждого цеха и т. п. Кроме того, полезно заранее знать постоянные размеры партий (Qt) в случаях, когда материалы заказывают в определенных количествах на каждый запуск изделия в производство. Данное преимущество исчезает, если Qt не подчинены ограничениям и не постоянны. Дополнительно к этому можно было бы пользоваться точками повторения заказов без наложенных ограничений для дополнительной гарантии от дефицита изделий, не внесенных в первоначальный перечень.
Приложение Модель для расчета издержек на содержание запасов, использованная для расчетов в данной главе, подробно описана в приложении Е к работе [2] и в гл. 12 и 13 [1]. Модель включает следующие расходы: постоянные расходы на партию, издержки содержания запасов, потери из-за дефицита, пропорциональные произведению числа единиц дефицитного изделия на длительность дефицита. В модели приняты следующие условные обозначения х: CF — постоянные расходы на партию, долл.; Сj — коэффициент издержек по содержанию запасов; долл. на единицу в месяц; D — коэффициент потерь, связанных с дефицитом; долл. на единицу в месяц; Tl — планируемый период в месяцах; s — уровень сбыта в течение времени отсутствия поставки (производственного цикла в своем производстве), число единиц в месяц; s является случайной переменной, для которой / (s) — распределение вероятностей s; s — ожидаемый уровень продаж, единицы за месяц. Переменные, определяемые решением: Q — размер партий, число единиц; /т — точка повторения заказа, число единиц. Расходы, ожидаемые в связи с системой регулирования запасов за один период для одного изделия, определяются функцией издержек , s(D + G!) ? (sTL-IT)* 2Q it/tl I &*=Wmto. (ad 1 В качестве единицы времени в модели взят месяц; можно взять и другой период. Во всяком случае, используемая в модели запасов единица времени не зависит от планируемого для Р* периода. 153
Производные функции издержек записываются в следующем виде: дС _ 5(D + Cf) ? sTL-IT д!т I STLs h /W* + Cl=0. (A2> it/tl it/tl Уравнения (А2) и (A3) можно решить следующим образом: 1) Выбрать значение QA) для уравнения (А2) (обычная формула определения размера партии позволяет получить удовлетворительный первоначальный выбор). 2) Используя QA), решить уравнение (А2) относительно /т. Можно использовать метод последовательных приближений Ньютона, который дает быструю сходимость. 3) Подставляя значение 1Т из уравнения (А2) в уравнение (A3), решить уравнение (A3) относительно QB). 4) Сравнить QA) и QB). Если различие между ними достаточно мало, то уравнения решены. В противном случае заменяют QA) на Q<2> и, начиная со второго этапа решения, повторяют все сначала. Как закон распределения вероятностей / (s) принято гамма-распределение. Несколько исследований статистики сбыта (см. гл. 15 [1]) показывали, что гамма-распределение здесь очень хорошо соответствует действительности. Это распределение также облегчает математическую обработку уравнений (А2) и (A3). Функцию плотности вероятности при гамма-распределении можно записать в виде а интегральный закон распределения как 8 F(s)=\ f($)ds- о Параметры распределения q и г связаны со средней s и дисперсией 2 ^ 0s следующим образом: _ s2 _ s __ г Г~ <jj ' ~~ *? ~~ s ' Все интегралы уравнений (А2) и (A3) можно легко преобразовать в интегральные функции распределения вероятностей it/tl 154
что можно записать в виде: TL ' qIT/TL 0= l Jr=i. e-ssr-i dSt (A5) Последнее выражение (А5) является неполной гамма-функцией и имеет форму, приемлемую для вычисления с помощью электронно-вычислительных машин. Схемы последовательности операций вычисления даны в [1], стр. 255—256. 100 500 1000 S, число единиц в месяц Рис. 19. Средний уровень запасов как функция от предполагаемых продаж. Примечание. Отношение D/Cj показано на графике; значения других величин даны в примечании к рис. 17. Исследования статистических данных по сбыту, кроме того, показали, что г = s2/os является почти постоянной величиной для широкого диапазона данных. Это допущение, несомненно, сильно сокращает объем исследований по статистике сбыта, так как позволяет заменить сплошное изучение выборочным. Сокращению объема необходимых расчетов способствует также допущение, что соотношение D/Cj постоянно для больших групп изделий. Это допущение, по-видимому, вполне оправдано, поскольку как D, так и Cj тесно и прямо связаны со стоимостью единицы продукции. 155
В главе 13 [1] приведены графики зависимости 1т и Q* от s для различных значений г и D/Cj. Для практических целей могут быть полезны следующие рекомендации: 1) Группируя изделия по г и D/CT, можно решить уравнение минимальных издержек при отсутствии ограничений (А2) и (A3) для небольшого числа зависимостей (г, D/Cj) от s при выбранных постоянных значениях CF и С1у представляющих в каждой группе все изделия. 2) Существуют простые способы аппроксимации /г и Q* как функций от 5 для каждого из этих подклассов изделий. Очень хорошие результаты получают, например, при прямолинейной апроксимации /г = а + bs. 3) Такое аппроксимирование можно производить каждый месяц, когда делаются прогнозы продаж s на ближайшее будущее для получения 1Т и Q, соответствующих изменениям в уровнях продаж. 4) Результаты, получаемые на первом и втором этапах расчета, следует пересматривать только время от времени, когда происходят значительные изменения в издержках или прогнозах. И, наконец, рис. 19 показывает изменение оптимального уровня запасов / для одного изделия без наложенных ограничений. Как видно из графика, при совместном расчете размера партии и страхового запаса / является почти линейной функцией от s, а не функцией квадратного корня, на которую издавна указывают, если ограничиваются лишь расчетом размера партии.
ГЛАВА 9 Экспериментальная проверка математическим моделированием методик расчета размеров партии Б. П. ДЗЕЛИНСКИЙ, К. Т. БЕЙКЕР и А. С. МЭН* 1. ВВЕДЕНИЕ Рассмотрим следующую задачу, связанную с планированием производства. Задан прогнозируемый спрос на каждое из изделий в течение разбитого на ряд плановых периодов промежутка времени. Надо определить для деталей каждого наименования, входящих в эти изделия, каковы оптимальные величины партий, запускаемых в производство, и в каком плановом периоде каждая из партий должна быть запланирована с тем, чтобы минимизировать суммарную величину переменной части расходов на их изготовление. При составлении плана должны быть учтены следующие затраты: затраты на подготовку к запуску, издержки на содержание заделов и запасов, потери из-за дефицита или отсутствия необходимых деталей в номенклатуре задела, издержки на рабочую силу в урочное и сверхурочное время, затраты на наем и увольнение рабочих. Решение таких задач по планированию производства в некоторых отраслях металлообрабатывающей промышленности может натолкнуться на затруднения, связанные с большой номенклатурой изготовляемых деталей. Каждая деталь 2 различными путями конкурирует с другими при выделении для нее оборудования и рабочей силы, а объем будущих заказов по ней динамичен и подвержен случайным колебаниям. Обычно потребность в каждой детали можно удовлетворить в результате одной из возможных последовательностей запусков ее в производство, и именно здесь-то и возникает трудность согласования календарных планов по отдельным деталям с общими ограничениями, связанными с наличным оборудованием и рабочей силой. Цель данной главы — показать, как можно применить ко всем этим динамичным и подверженным случайным колебаниям услови- 1 Работают в «Интернешнл бизнес мэшинз корпорейшн». 2 В дальнейшем для краткости вместо «детали данного наименования» пишем «деталь».— Прим. ред. 157
ям детерминированный метод математического программирования, предложенный А. С. Мэном [1]. Настоящее исследование включает контрольное математическое моделирование тпроизводства на взятом в уменьшенном масштабе металлообрабатывающем заводе, где календарный план выпуска деталей составляется с помощью линейного программирования. Вследствие динамичности и подверженности случайным колебаниям условий предполагалось, что осуществляется только первый шаг каждого решения, полученного программированием. По окончании каждого периода использовалась новейшая информация относительно заказов и т. д.; в программе математического моделирования изменялись условия задачи составления плана, что приводило к обновлению рассчитываемых и осуществляемых решений. Планируемый ход производства уточнялся от периода к периоду; новая информация использовалась, как только это становилось возможным. Линейное программирование приводит к одновременному определению величины партий для всех деталей в условиях, когда каждую деталь можно выпускать в соответствии с одним из нескольких вариантов календарного плана производства. В результате при реальном количестве деталей возможности вычислительной техники 1960 г. стали узким местом. Поэтому для настоящего исследования по материалам, полученным в ходе реального производственного процесса, было отобрано небольшое число деталей. Данные по ним использованы в ходе всего контрольного математического моделирования. Как эталон для оценки рассматриваемого метода выполнялось также математическое моделирование в предположении рассчитанной обычным способом «экономичной величины заказа» *. При определении EOQ по обычной формуле предполагается, что между расчетами, выполняемыми для каждой из многочисленных деталей, выпускаемых заводом, нет существенных взаимосвязей. Модель, соответствующая EOQ, была избрана для сравнений по следующим соображениям: 1) сопоставления с фактической работой завода за прошлое время были бы затруднительны и дороги; 2) с помощью системы EOQ можно без больших затрат так выполнить моделирование с отдельными деталями, чтобы обеспечить проверку развитой в схеме линейного программирования методики укрупнения номенклатуры деталей; 3) в практике управления производством этот метод хорошо известен. 2. МОДЕЛЬ ЗАВОДА В соответствии с намеченной целью наше исследование выполнено применительно к модели планирования в реальном механическом цехе, взятом в уменьшенном масштабе. Изготовленные на заводе детали пополняют складской запас. В свою очередь за счет этого 1 Economic Order Quantity Model (EOQ).— Прим. перев. 158
запаса удовлетворяются потребности сборочного цеха; таким образом, запас играет роль «буфера» между двумя цехами. Уменьшение масштаба значило, что планирование производства выполняется в отношении выборочно взятых готовых изделий; потребность в деталях определялась непосредственно из спроса на готовые изделия, без учета каких-либо посторонних заявок. Сборка поток поступающих заказов от потребителей У Регулирование ' 1 Картотека заказод on потред ? шпелей L/llf/UAUUO/Л JUflUUUU Прогнозирование спроса Расчет по схеме линейного программирования ill ¦ Механоойрада- ты дающий цех Деазицит деталей Рис. 20. Все имеющиеся станки были сведены в К групп оборудования, и наконец производственная мощность была приведена в соответствие с уменьшенным масштабом модели. Обсудим математическую модель с помощью ее принципиальной схемы (см. рис. 20). Поток заказов от потребителей на каждое из изделий поступал в картотеку заказов и накапливался в ней. В конце каждого периода эти данные экстраполировались с целью прогнозирования спроса на каждое изделие в течение каждого из нескольких предстоящих календарных периодов. Запас, необходимый для каждого периода, увеличивался затем на величину страховой надбавки с учетом случайных колебаний и динамичности в условиях задачи. Кроме того, если при прогнозировании обнаруживалась общая тенденция к повышению или сокращению спроса, осуществлялась корректировка страховой надбавки в сторону увеличения или уменьшения соответственно в течение нескольких предстоящих периодов, охваченных прогнозированием. Если, например, в один из месяцев ожидалось получение заказов на 9 штук одного из изделий, а принятая величина страховой надбавки равнялась месячной потребности, то необходимый запас равнялся в общей сложности 18 штукам. Наряду со страховой надбавкой к потребности в запасе добавляли различные задолженности, оставшиеся от предыдущего периода. Прогнозирование осуществлялось путем экстраполяции отчетных данных о полученных заказах следующим способом, описан- 159
ным Брауном [2, 3]. Прогнозируемый в момент t объем заказов за (/ + т)-й период S {t + т) равен S(t + x) = S(t) + b(t)[-]r + T-l'\ • 0<о<1, A) где S (t) и b @ — оценки к моменту времени / соответственно среднего объема полученных заказов и тенденции в его изменении. S (t) и b (t) получаются из следующих зависимостей: S(t) = aS(t) + (l — a)S(t—l) B) b(t) = a[S(t)-S(t-l)] + (l-a)b(t-l), C) где 5 (t) — объем заказов, фактически полученных за период t. Несколько значений а проверено по материалам о заказах за 1954 и 1955 гг., полученным от действующей фирмы. Анализ Рис. 21. Заказы, получаемые ежемесячно в течение 6 лет. показал, что при прогнозе на месяц вперед значение а = 0,1 обеспечивает наименьшую ошибку. Ради объективности выводов уже известные данные за 1954—1955 гг. в последующих экспериментах непосредственно не использованы. 160
Более точно скорректированную потребность в детали I к моменту времени t + т можно выразить, исходя непосредственно из прогноза спроса на изделия, следующим образом: rii = (l+X)Si(t + l)-yi(t+l) т=1, ] Здесь rix.— суммарная потребность; St (t + т) — ожидаемая величина сбыта;) Я — коэффициент страхового запаса и yt (t -f- 1) — исходная величина запаса (или задолженность — если она отрицательна) для периода t + 1. 3. РАСЧЕТНАЯ СХЕМА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ Формулировка настоящей задачи производственного планирования применительно к линейному программированию аналогична формулировке, предложенной Мэном [1]. Однако в нее были внесены определенные изменения и упрощения с целью обеспечения возможности ее обсчета при помощи имевшихся к 1960 г. алгоритмов линейного программирования. Эти различия описаны ниже. Одной из важных сторон формулировки в [1] является то, что в ней можно принять в расчет затраты на запуск партий в производство х. Сам характер этих затрат, казалось бы, не дает возможности использовать линейное программирование. Однако затраты на запуск в производство можно принять в расчет, опираясь на различие в повторяемости переналадок, соответствующей варианту «последовательности производственных заданий». «Последовательность производственных заданий» для одной из деталей в течение разбитого на Т плановых периодов промежутка времени представляет собой последовательность Т неотрицательных целых чисел, определяющих количества подлежащих изготовлению деталей данного наименования в каждом из Т периодов. (В некоторых из этих периодов количество деталей может быть задано равным нулю.) Выявленная потребность в определенного вида деталях в течение Т периодов может быть удовлетворена с помощью нескольких различных последовательностей запусков в производство или планов расчленения продукции на партии. Однако, принимая во внимание определенные соображения о «предпочтительности», нет необходимости рассматривать все возможные последовательности (см. [1] и [4]). Задача вычислений с помощью линейного программирования состоит в том, чтобы выбрать оптимальную комбинацию последова- 1 В оригинале set-up costs. Как видно из дальнейшего, речь идет не только об оплате подготовительно-заключительного времени в цехе, но и о конторских расходах. Поэтому «set-up costs» переведено как «затраты на запуск в производство».— Прим. ред. П Заказ № 195 161
тельностей производственных заданий для всех деталей в заданных условиях в течение всего планируемого промежутка времени. Коэффициенты rix, определение которых дано в предыдущем разделе, служат входными данными при * вычислении плановых размеров партий. Исходя из их значений, последовательности запусков разрабатывались в соответствии с правилами, изложенными в приложении А, в разделе А.З. Выходными данными вычислений с использованием линейного программирования являются перечень производственных заказов на детали, которые должны быть изготовлены для удовлетворения потребностей сбыта и пополнения запасов. Выполняемый расчет показывает, следует ли требуемое количество деталей данного наименования изготавливать одной, двумя или более партиями. Он также определяет размер партии и период, когда партию следует изготовить. Эти решения принимают таким образом, чтобы общая дисконтированная х сумма переменной части затрат была минимальной. Минимизируемая величина в этом расчете составлена из всех ранее названных слагаемых затрат, за исключением лишь одного — потерь, связанных с дефицитом деталей. Эти потери непосредственно в расчетную схему линейного программирования не включаются. Однако оценка дефицитных деталей в долларах регистрировалась в ходе математического моделирования отдельно, один раз за период. Математическое моделирование проводилось так, как если бы полученное с помощью линейного программирования решение для предстоящего планового периода действительно доводилось до цеха- изготовителя в виде совокупности производственных заказов на этот период. Остальная часть решения, относящаяся к последующим периодам, отбрасывалась, и вычисления методом линей- дого программирования между каждыми двумя периодами производились заново с учетом информации об изменениях в сбыте. При этом предполагалось, что все производственные заказы, выданные в начале периода, к концу его выполняются, детали, изготовленные по ним, немедленно поступают на склад и могут быть по окончании этого периода использованы для удовлетворения потребности в них. Таким образом, задача подробного планирования или установления оптимальной последовательности выполнения работ на различных группах оборудования в этом эксперименте не ставилась. И, наконец, было принято, что задолженность возникает только в том случае, если наличного количества деталей оказывается недостаточно для полного удовлетворения всех текущих требований и погашения ранее возникших задолженностей. Неизвестные величины, коэффициенты и константы при формулировке задачи для линейного программирования определялись следующим образом: 1 См. пояснение на стр. 445.— Прим. ред 162
1. Неизвестные Qtj — часть общей потребности в детали t, производимой в соответствии с вариантом / последовательностей (t=l,2, ...,/), (/=1, 2, ...,J). W\x — число рабочих, закрепленных за группой оборудования k в первой смене в течение периода (t + т), без сверхурочных работ (?=1,2, ...f K)f (т=1,2, .... Г). Н7|т — число рабочих, закрепленных за группой оборудования k в первой смене со сверхурочной работой в течение периода (t + т); каждый из этих рабочих отрабатывает в течение данного периода фиксированное число урочных и сверхурочных часов. Wlx — число рабочих, закрепленных за группой оборудования k во второй смене без сверхурочных работ в течение периода (t + т). W\x — число рабочих, закрепленных за группой оборудования к во второй смене со сверхурочными работами в течение периода (t + т); каждый из этих рабочих отрабатывает в течение этого периода фиксированное число урочных и сверхурочных часов. D+Wk% — увеличение общего числа рабочих, закрепленных за группой оборудования k на период (t + т> по сравнению с периодом (t + т — 1). D~Wkx — уменьшение общего числа рабочих, закрепленных, за группой оборудования k на период (t + т)> по сравнению с периодом (t + т — 1). 2. Параметры, рассчитываемые заново для каждого периода: Lykx — затраты труда, необходимые в течение периода (t + т) для осуществления варианта / из возможных последовательностей запуска детали i на группе оборудования k LlJh* = {aih + bikxJ "P" **{><>}• где aik и btk означают соответственно нормативы подготовительно- заключительного и оперативного времени для детали i на группе оборудования k. Числа xijx относятся к количествам детали it требующимся в соответствии с последовательностью у в период т. Эти величины определяют собой варианты последовательностей производственных заданий. Они вычисляются на основе прогнозов спроса rix в соответствии с правилами, приведенными в приложении А, в разделе А.З. П* 163
3. Константы Wk — максимальное число рабочих, которые могут быть закреплены за оборудованием k в течение одной смены. Я1 — суммарное число часов, отработанных в течение периода в первую смену, за исключением сверхурочных. Я2 — суммарное число часов, отработанных в течение периода в первую смену, включая установленное заранее число сверхурочных часов. Я3 — суммарное число часов, отработанных в течение периода во вторую смену, за исключением сверхурочных. Я4 — суммарное число часов, отработанных в течение периода во второй смене, включая установленное заранее число сверхурочных часов. Rlx — заработная плата * на оборудовании k в первую смену в урочное время, дисконтированная на т периодов. Rlx — заработная плата на оборудовании k в первую смену, включая сверхурочные, дисконтированная на т периодов. Rlx —заработная плата на оборудовании k во второй смене в урочное время, дисконтированная на т периодов. Rkx — заработная плата на оборудовании k во вторую смену, включая сверхурочные, дисконтированная на т периодов. Г0т — затраты, связанные с увольнением одного рабочего, дисконтированные на т периодов. Гпх — затраты, связанные с наймом одного рабочего, дисконтированные на т периодов. cix — стоимость материалов на единицу детали i, дисконтированная на т периодов. Задача линейного программирования формулируется следующим образом. Найти Min 2 B [RkxWlx^r0xD-Wkx + rhxDWkx] + ^ijCixXijx} i, k, т r=l j при условии, что 2ву=1 /=1, ...,/, (А) i 2 LiJhxQu < S HWhx ( т Z , " "' т' (Ш 1 Речь идет о заработной плате одного рабочего на протяжении одного периода.— Прим. перев. 164
r=l r=l *=1,. T=l, . k=l,. T=l, . ..,*, ...r, ..,*, ...r (Q (D) и все в„, У?т, D+Wkx,D-Wkx>0. В группу (А) входит / равенств; эти ограничения устанавливают, что суммарная планируемая потребность в деталях каждого вида должна быть удовлетворена с помощью выпуклой комбинации возможных последовательностей производственных заданий. Значения неизвестных 8^ обычно оказываются равными 0 или 1. Мэн доказывает [1], что лишь в небольшом числе случаев (в данной задаче в КТ случаях) Qtj может быть правильной дробью. Ниже изложено физическое толкование дробных 8^ в эксперименте, где при решении предполагались именно две правильные дроби 8И и 9j2 Период т Потребность rix Последовательность производственных заданий 1 Последовательность производственных зада- 0,4 последовательности производственных заданий 1 0,6 последовательности производственных заданий 2 Итого (с округлением) ......... 1 10 18 10 7,2 6 13 2 8 0 17 0 10,2 10 3 9 9 0 3,6 0 4 9И = 0,40 0*2 = 0,60 Результирующая последовательность A3, 10, 4), хотя и выполнимая физически, не может быть получена по правилам, приведенным в приложении А в разделе А.З. Эта последовательность на деле является нарушением «теоремы предпочтительности» (dominance theorem), утверждающей следующее: в рамках вычислительной схемы нормирования размеров партии рассматриваются только последовательности, обеспечивающие полное удовлетворение требований на поставку деталей за счет выпуска их в ближайшем из тех 165
предшествующих периодов, в которых производились затраты, связанные с запуском детали данного наименования [1, 4]. В группу (В) входит КТ неравенств. Эти неравенства обеспечивают достаточность суммарной пропускной способности группы оборудования k в течение периода т для выполнения установленного объема работы. В группу (С) входит КТ равенств. Это просто уравнения баланса, связывающие между собой численность рабочей силы в смежные периоды. Заслуживает внимания, что исходная численность рабочей силы предопределяется заранее при каждом расчете величин партий методом программирования. В группу (D) входит 2КТ неравенств. Эти неравенства ограничивают число рабочих, которые могут быть закреплены за группой оборудования k в течение периода т как в первой, так и во второй сменах. Модель линейного программирования формулировалась с учетом необходимости создания запасов, используемых после окончания всего промежутка времени, охваченного планированием. Однако эта сторона вопроса в описываемом эксперименте не исследована. Издержки на хранение запасов не включены явно в минимизируемую линейным программированием величину, но они введены туда путем дисконта затрат на рабочую силу и на материалы. •3.1. АППРОКСИМАЦИИ В УСЛОВИЯХ ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ Для формулировки данной задачи как задачи линейного программирования требуется в общей сложности / + 4/(Т ограничительных уравнений. Выборочные данные по 4 изделиям, собранные на металлообрабатывающем заводе, охватывали 950 деталей. В меха- нообрабатывающем цехе завода насчитывалось 13 групп оборудования. Конечно, при / = 950 и К = 13 число ограничительных уравнений намного превышало бы то количество, которое допустимо при любом из известных методов решения задачи с помощью линейного программирования. Было очевидно, что потребуется прибегнуть к сокращениям и аппроксимации для того, чтобы свести число ограничительных уравнений к приемлемому уровню. Первым шагом было сокращение планируемого промежутка времени до трех периодов. Затем 13 групп оборудования были сведены в две более крупные группы. Исследование корреляции для 950 наименований изготовляемых деталей выявило тесную положительную связь в использовании различных групп станков, что послужило основанием для объединения их именно в две большие группы. В результате этих изменений получилось значение АКТ = 24, к которому добавляется / уравнений по числу наименований деталей. 166
При математическом моделировании желательно было охватить изменения сбыта в течение многих месяцев. Поскольку плановые периоды выбирались равными одному или двум месяцам, необходимо было за приемлемое машинное (для ЭВМ) время найти методами линейного программирования десятки решений. Из этих соображений следовало, что в системе должно быть от 60 до 70 ограничительных уравнений. Такая система была нами получена заменой прежних 950 наименований изготовляемых деталей 35 подкомплектами деталей. При этом оказалось / = 35, что вместе с 4/СТ = 24 дало систему из 59 уравнений. Есть еще одно соображение, касающееся размеров матрицы в данной задаче линейного программирования. Хотя модель строилась применительно к условиям работы, как максимум в две смены, имелась в виду и «третья смена» с более высокими затратами и с неограниченной пропускной способностью оборудования. Эта «третья смена» играла роль предохранительного клапана во избежание невыполнимости условий задачи, что имело бы место при резком увеличении потребности в периоды пик спроса. Для того чтобы принять в расчет этот фактор, в модель время от времени вводились еще двенадцать ограничительных уравнений. Поскольку каждый из введенных в модель подкомплектов деталей включал два и более наименования обычных деталей, возник вопрос, связанный с тем, что некоторые отдельные детали входят в состав более чем одного изделия. Если этого не учесть, возникают трудности при расчете потребности в деталях, исходя из спроса на изделия, и возможны осложнения при сопоставлении количества подкомплектов деталей с наличием отдельных деталей. Для того чтобы избежать затруднений, возникающих при использовании одного и того же подкомплекта деталей для разных изделий, были введены «условные изделия», исходя из следующей схемы. Рассмотрим четыре исходных изделия: А, В, С, D и все возможные их комбинации — АВ, AC, AD, ВС, BD, CD, ABC, ABD, BCD, ACD, ABCD. Они определяют все мыслимые варианты использования одной и той же детали для разных изделий. Каждая такая комбинация названа «условным изделием». Для каждого условного изделия рассчитано число часов, необходимое для выпуска по одному экземпляру каждого из исходных изделий1. Оказалось, что из одиннадцати возможных условных изделий только два имели сколько- нибудь значительную трудоемкость. Поэтому в модель введено шесть изделий: четыре реальных и два условных. Соответственно отдельные детали четырех реальных изделий были разбиты на шесть категорий, и количество подкомплектов определялось по каждой категории отдельно. 1 «Условное изделие» по сути является комплектом унифицированных деталей. Речь идет о трудоемкости такого числа комплектов, которого хватит на выпуск по одному экземпляру всех изделий, на которые идет комплект. —Прим. ред. 167
При отнесении деталей к тому или иному подкомплекту принимались во внимание три характеристики: подготовительно-заключительное время, оперативное время и стоимость материала на одну деталь. Эти характеристики представлялись важными в связи с той ролью, которую они играли в процессе вычислений по методу линейного программирования. Подкомплект деталей представлял собой совокупность деталей, входящих в одно конечное изделие, имеющих одинаковую трудоемкость и равную стоимость материала в расчете на штуку. Число наименований подкомплектов деталей по каждому изделию установлено исходя из относительного объема производства изделия по выборочным данным о сбыте за 10 месяцев. Таким образом, изделия с относительно большим объемом выпуска получили больше наименований подкомплектов деталей. Число наименований подкомплектов по изделиям было принято таким: Изделие А 11 Изделие В . 6 Изделие С 6 Изделие D 5 Условное изделие I 4 Условное изделие II 3 Для каждого подкомплекта деталей норма подготовительно- заключительного времени по каждой группе оборудования равнялась сумме подготовительно-заключительного времени для всех отдельных деталей. Точно так же норма оперативного времени и стоимость материала соответствовали сумме норм оперативного времени и сумме стоимостей материала по всем деталям, входящим в подкомплект деталей. В двух последних суммах учитывалось количество деталей, идущих на одно изделие. Иными словами, при моделировании темпы производства и уровни запасов принимались равными для отдельных деталей всех наименований, включенных в данный подкомплект деталей. 4. СИСТЕМА EOQ * Применение обычной формулы EOQ в качестве инструмента регулирования производства и запасов хорошо освещено в литературе [5, 6]. В этой формуле затраты на запуск сопоставляются с затратами на содержание запасов для того, чтобы установить 1 Речь идет о системе регулирования производства и запасов, при которой запускается в производство «наиболее экономичная партия» (EOQ всякий раз, когда остаток запаса падает до «точки повторения заказа»— то есть уровня запасов, необходимых для погашения спроса до прибытия новой партии и для погашения случайных колебаний спроса и длительности производственного цикла.— Прим. ред. 168
экономичную величину заказа. Затем, полагая будущий спрос на постоянном уровне, с помощью классических приемов дифференциального исчисления определяется точка равновесия этих двух видов затрат. Эта методика обычно совершенно не учитывает влияния на выбор размера партии таких обстоятельств, как затраты на рабочую силу, доплаты за сверхурочные часы, разница в тарифных ставках разных смен, затраты на наем и увольнение рабочих (см. приложение А, раздел А.2). При помощи рис. 22 вычислительную схему EOQ можно описать так же, как и схему линейного программирования. Полученные Отпрадка готовой продукции Поток поступающих заказов Зорка заелш ка избшя *-Ч заказов Н 0амие спроса вычисление иех Запас Уточнение страхового запаса' Рис. 22. заказы накапливаются в картотеке заказов. В каждом периоде эти данные однократно используются при составлении прогноза сбыта каждого изделия на один период вперед (метод прогнозирования,, использованный при испытании метода линейного программирования). Прогноз в отношении каждого изделия служил в свою очередь прогнозом в отношении каждой из входящих в него деталей. При вычислениях EOQ прогноз на период (t+ 1) принимали за постоянный уровень спроса rt на отдельные детали. Если ожидалось, что к концу периода / уровень запаса деталей i будет меньше требуемой величины страхового запаса, то вычисляемую на начало периода по детали i оптимальную партию EOQ* соответственно увеличивали, получая окончательный размер заказа qt qi = mQi + 'kri-yi{t + \), где К — параметр страхового запаса (О < Я), rt предполагает постоянный уровень спроса, a yt (t + 1) — наличный запас (или задолженность) деталей и Затем механообрабатывающему цеху поручали изготовить партию деталей i размера qt в течение периода t + 1. В конце каждого периода число деталей, необходимых для выполнения заказов текущего периода и покрытия задолженности, вычитали из выпуска 169
за данный период и остатков на его начало, определяя таким образом новый уровень запасов (или задолженности). Затем по каждой детали проверяли, не опустился ли остаток по ней ниже установленной на данный период точки повторения заказа. При положительном ответе соответствующую деталь включали в номенклатуру выпуска на следующий период. При исследовании EOQ предполагалось, что наличие рабочей силы в каждом периоде приводилось в соответствие с требованиями производства. Затраты на оплату сверхурочной работы, надбавки за работу в вечерней смене и издержки на наем и увольнение рабочей силы допускали в той последовательности предпочтительного выбора их, в которой они здесь перечислены, и в той мере, в какой это требовалось загрузкой цеха и пропускной способностью оборудования. 5. КРИТЕРИИ ЭФФЕКТИВНОСТИ Поскольку система EOQ использована как база для оценки системы регулирования производства и запасов на основе линейного программирования, при контрольном моделировании обеих систем применялись одни и те же критерии эффективности. В число соответствующих итоговых оценок входили полной суммой затраты на производство, включая издержки на содержание запасов и все затраты на рабочую силу (обычные, сверхурочные, надбавки за сменность и расходы в связи с изменениями численности персонала). Потери из-за дефицита (в долларах) не рассчитывали, но фиксировали стоимость недостающих деталей. Кроме того, записывали стоимость наличных запасов на конец каждого периода и численность рабочих, закрепленных за каждой группой оборудования. 5.1. АНАЛИЗ РЕЗУЛЬТАТОВ Было выполнено по четыре испытания для системы регулирования производства и запасов на базе расчетной схемы линейного программирования (система LP)* и для системы EOQ. Задача линейного программирования в том виде, как она сформулирована в настоящей статье, решалась с помощью программы SCROL, пригодной для машины IBM-704. Система EOQ также моделировалась на IBM-704. В общем виде матрица данной задачи линейного программирования приведена в приложении Б. 1 В дальнейшем под «системой LP» подразумевается система в организационно-производственном смысле; иначе говоря, принятый порядок регулирования производства и запасов на базе расчетной схемы линейного программирования (а не система ограничений, не кибернетическая система и т. п.).— Прим. ред. 170
При четырех испытаниях использовались следующие параметры: Т—максимальное число плановых периодов (равное 3); Я — коэффициент страхового запаса (равный 0 или 1); m — число месяцев работы предприятия в каждом плановом периоде (равное 1 или 2). Испытание 1 Т = 3 Я = 0 171= 1 Испытание 3 7 = 3 % = 0 т = 2 Испытание 2 Г = 3 Х=1 т = 1 Испытание 4 7 = 3 Я=1 т = 2 Моделирование охватывает данные о фактическом спросе на продукцию фирмы за конец 1956 г. и за весь 1957 г. Кривая спроса 50с ' 40 30 I Щ 20 10 <5 5 1956 _l_ I 4 I 2 § I I I f t 1957, Рис. 23. Объем заказов, поступающих ежемесячно в сумме по четырем изделиям. за этот период в сумме по четырем готовым изделиям показана на рис. 23. Каждое испытание начиналось с одними и теми же исходными запасами и исходным уровнем наличия рабочей силы, уста- 171
i I 300 250\ 200[ 150 100 50 0 Испытания системы LP Испытания системы EOQ (неопределенная общая к ^длительной планируемого .промежутка времени) ОиЗ тТ-трехмесячная общая длительность планируемого промежутка времени из тТ-шестимесячная общая длительность планируемого промежутка времени 100 200 300 400 500 600 700 Затраты на рабочую силу и содержание запасов (тыс. долл.) 300 Рис. 24, Зависимость между дефицитом и затратами на рабочую силу и содержание запасов (в долл.). Примечание. О — без страхового запаса; 1 — месячный страховой запас. новленными в соответствии с усредненным спросом за предшествующие периоды. В данных о затратах, фиксируемых здесь для сравнения, учитывается влияние этих начальных условий. Рис. 24 подводит итог различиям между двумя системами при общей длительности планируемого периода, равной трем и шести месяцам и при двух уровнях страхового запаса. График построен по двум оценкам эффективности: по суммарной стоимости дефицитных деталей и по недисконтированным затратам на производство. Эти данные указывают на существенное преимущество системы LP перед системой EOQ: при сопоставимом объеме дефицита суммарные затраты вдвое меньше. Как и следовало ожидать, при увеличении страхового запаса затраты на производство увеличиваются, а дефицит в ценностном выражении сокращается. Увеличение числа месяцев в каждом плановом периоде благоприятно сказывается на производственных затратах при системе LP. На рис. 25, 26 и 27 приведено детальное сравнение двух систем по недисконтированным производственным затратам, уровням запасов и недисконтированным затратам на рабочую силу. Недискон- тированные производственные затраты за период, охваченный моде- 172
<§ I ^ 1956 t! ! 1 J ^ 1957 Рис. 52. Накопленная сумма затрат на производство (на рабочую силу и на содержание запасов) для систем EOQ и LP при двухмесячном плановом периоде. Примечание. X = О (без страхового запаса); А, = 1 (месячный страховой запас). лированием, изображены в виде кумулятивных временных рядов. Рис. 26 показывает, что основная часть экономии при использовании системы LP получается за счет той доли затрат, которая связана с запасами. Не нужно забывать, что система LP, как и система EOQ, приводят к выбору размера партии, однако подход к этому выбору различен. Например, обычная формула EOQ такова: EOQ = 2 (темп потребления) (подготовительно-заключительное время в часах) (тарифная ставка) q (часов на единицу продукции) (тарифная ставка)+ + Q (стоимость материала на единицу продукции) 2 (темп потребления) (подготовительно-заключительное время в часах) q (часов на единицу продукции) + Q (стоимость материала на единицу продукции) (тарифная ставка) где q — процент на капитал за один период. 173
Заслуживает внимания то, что при решении по схеме EOQ предполагается постоянство тарифных ставок от периода к периоду. С другой стороны, при решении по схеме LP учтено, что заложенные в расчет затраты рабочей силы изменяются в соответствии Рис. 26. Накопленная сумма затрат на содержание запасов для систем EOQ и LP при двухмесячном периоде. Примечание, См. примечание к рис. 25. Обращаем внимание на изменение шкалы. с обострением потребности в ней, а это в свою очередь влияет на выбор размеров партий деталей. Например, в период подъема в цикле деловой активности расходы на рабочую силу повышаются и, следовательно, размеры партий будут увеличены с целью экономии затрат на рабочую силу. В период спада в цикле деловой активности издержки на рабочую силу снижаются и поэтому выпускаются более мелкие партии. Системе LP свойственна тенденция вести производство применительно к обстоятельствам. Поэтому, посколь- 174
ку при системе LP принимают во внимание затраты на наем и увольнение рабочих, в периоды подъема производство ведется крупными партиями деталей, а в периоды спада — мелкими. Такое регулирование размеров партий направлено на сокращение колебаний Рис, 27. Накопленная сумма затрат на рабочую силу для систем EOQ и LP при двухмесячном периоде. Примечание. См. примечание к рис. 25. в численности рабочих на самом предприятии, но оно усиливает колебания в спросе на материалы, производимые поставщиками предприятия. То, что больше всего подходит для одного предприятия, не обязательно представляет собой наилучшую линию поведения с точки зрения экономики в целом. На рис. 27 показаны кривые накопленных сумм затрат на рабочую силу, включая оплату за работы в урочное и сверхурочное время и надбавки за сменность, а также затраты на изменение численности рабочих. При EOQ принятый порядок регулирования страховых запасов мало влияет на эти затраты, а при системе LP введение месячного страхового запаса связано с увеличением затрат на рабочую силу примерно на 8 %. На рис. 27 показано, что по затратам на рабочую силу система LP эффективней системы EOQ на 12—18% (в зависимости от того, сравниваются ли затраты с верхней или нижней кумулятивной кривой). 175
Заметим, что на рис. 27 затраты на рабочую силу при системе LP не возрастают со временем так быстро, как при системе EOQ. Если бы сравнение этих систем производилось с учетом данного фактора оценки, оно явно было бы еще более благоприятным для системы LP. На рис. 28 изображены кривые накопленных сумм стоимости дефицитных деталей (в долл.) за тот же период испытания. В отношении этого критерия влияние такого фактора, как страховой 1 300, 250 200 150 100 50 0 - [ Октябрь «¦^"^> * I 1956 ^~ Январь Февраль L i Март Апрель i i i__ *S 1 1 ?: ^ ^ 1957 i Август Е0Ц(А=0) LP(A = 0) _ Е0й(Л=1) LPpL=t) i | 1 i Сентябрь] Октябрь Ноябрь Декабрь Январь ' Рис. 28. Накопленная сумма стоимости дефицита деталей для систем EOQ и LP при двухмесячном периоде (по месяцам). Примечание. См. примечание к рис. 25. запас, очевидно (причем независимо от расчетной схемы, на которую опирается решение о размере партий). Однако в системе LP переход от нулевого страхового запаса к страховому запасу, равному ожидаемой месячной потребности, дает сокращение накопленного дефицита в 5 раз. Такое же изменение условий задачи при системе EOQ сократило сумму накопленного дефицита в 2,8 раза. Этот неожиданный результат связан, может быть, с тем, что в исследование были включены данные о суммах дефицита (задолженности), составлявшие лишь короткие временные ряды. В итоге, когда система LP была применена для выбора размеров партий при общей длительности планируемого. промежутка времени в 6 месяцев, разбитого на 3 плановых периода, и когда она была 176
сравнена с примененной в аналогичных условиях системой EOQ при работе без страхового запаса, схема LP оказалась по затратам на содержание запасов в 11 раз более эффективной. Накопленная сумма затрат на рабочую силу для нее была ниже примерно на 12%, накопленная сумма стоимости дефицита деталей меньше в 1,7 раза. Когда был введен такой фактор, как страховой запас, равный ожидаемой месячной потребности, то при схеме LP на протяжении Один месяц 6 плановом периоде Трехмесячная о5щая длительность) планируемого промежутка дремени /^ Рис. 29. Накопленная сумма затрат на рабочую силу для систем EOQ и LP при месячном и двухмесячном периоде в системе LP (по месяцам). Примечание. См. примечание к рис. 25. охваченного моделированием промежутка времени, равного ^месяцам, затраты на содержание запасов уменьшились в 17 раз, накопленная сумма затрат на рабочую силу — на 21%, а накопленная сумма стоимости дефицитных деталей — в 3 раза. Вторая группа испытаний проведена при условии, что плановый период приравнен одному месяцу. Это значит, что все решения принимались и пересматривались раз в месяц и производство планировалось только на три месяца вперед. Эти испытания снова показали, что система LP имеет лучшие характеристики, когда сравниваются издержки на содержание запасов и стоимость дефицитных деталей, но не тогда, когда сравниваются накопленные суммы затрат на рабочую силу. На рис. 29 показаны накопленные 12 Заказ № 195 177
суммы затрат на рабочую силу, соответствующие системе LP при трех- и шестимесячной общей длительности планируемого промежутка. Там же они сравнены с аналогичным показателем для системы EOQ (не зависящим от длительности планируемого промежутка). На рис. 29- видно, что сокращение общей длительности планируемого промежутка времени с 6 месяцев до трех увеличивает накопленную сумму затрат на рабочую силу при системе LP на 36— 38%. Даже если принять в расчет экономию на издержках по содержанию запасов, связанную с уменьшением длительности планируемого промежутка, то и тогда разница в накопленных суммах затрат на рабочую силу равняется примерно 30%. 6. КОММЕНТАРИИ Эти результаты получены на основании лишь одной серии экспериментов, выполненных при моделировании. Хотя были приняты самые тщательные меры, чтобы устранить все возможные источники числовых ошибок, нет- гарантии, что при повторении испытаний эксперимент будет столь же удачен. Авторам представляется, что теоретическая основа определения размеров партий линейным программированием оправдывается даже в динамичных и подверженных случайностям условиях. На практике много трудностей связано со схемой подкомплектов деталей, имевшей целью преодолеть ограничения, накладываемые возможностями вычислительной техники в 1960 г. При попытках добиться практической осуществимости необходимых вычислений путем формирования подкомплектов всегда существует возможность появления серьезных искажений.
Приложение А Описание двух сопоставляемых моделей А.1. ОБЩИЕ ПОЛОЖЕНИЯ Здесь довольно подробно описаны две альтернативные модели планирования размеров партий: а) «определение» «экономичной величины заказа» (EOQ) при выпуске продукции одного наименования и б) определение размеров партий методом линейного программирования в условиях многономенклатурного производства (LP). Если коротко описать общие условия, при которых выполнено исследование, то они характеризуются партионной обработкой деталей на станках металлообрабатывающего завода и, следовательно, конкуренцией партий при столкновении их маршрутов перед одним и тем же станком. Готовыми деталями пополняются запасы. Потребность в запасах вытекает из планов сборки изделий завода, покрывающих спрос нескольких заказчиков. Регулирование запасов и производства на заводе осуществляется путем нормирования размера партий и точки повторения заказа по каждой детали. Кроме перечисленных, введены еще следующие предположения: 1. Для каждой группы оборудования в пределах урочного времени установлена максимальная численность рабочей силы. 2. Для каждой группы оборудования установлено максимальное число сверхурочных часов. 3. Тарифные ставки при сверхурочной работе и работе во второй смене заданы как произведения тарифных ставок первой смены на соответствующий коэффициент. 4. Установлены затраты на наем и увольнение рабочей силы. 5. Партии деталей, запущенные в производство в течение данного периода, выпускаются в пределах того же периода. Спрос на продукцию-каждого наименования устанавливается экспоненциальной экстраполяцией по данным за прошлое время. Ни в одной из двух описываемых методик регулирования производства не принят во внимание в явной форме вероятностный характер прогнозирования спроса. Главная цель моделирования на вычислительной машине заключалась в том, чтобы установить, имеют ли все же место — даже при наличии существенных ошибок в прогнозах — значительные различия в эффективности двух методик регулирования в целом. Для оценки альтернативных методик регулирования производства использованы два критерия. Один критерий эффективности представляет собой суммарную величину переменной части затрат. Эта сумма состоит из следующих слагаемых: а) Затраты на оплату рабочей силы по тарифам урочного . времени и в виде надбавок. Эти затраты зависят от количества часов, отработанных в пределах смен и сверхурочно на каждой группе оборудования; для их 12* 179
определения необходимо иметь сведения о численности рабочих, тарифных ставках и фонде времени каждой группы оборудования. б) Затраты на изменение состава рабочей силы. Эти затраты связаны с увеличением и уменьшением численности рабочих на каждой группе оборудования и пропорциональны колебаниям в затратах труда в различные периоды. в) Затраты на содержание запасов. Эти затраты пропорциональны объему запасов, имеющихся в наличии на начало каждого периода. Стоимость наличных запасов оценивается стоимостью материалов, приобретенных для их изготовления. (В формуле EOQ компонента затрат, связанных с созданием запасов, включает в себя как материальные, так и трудовые затраты.) г) Затраты на подготовку заказа. Эти постоянные по величине затраты производятся каждый раз при открытии заказа. Это прежде всего конторские расходы, связанные с подготовкой производства по заказу. Вторым критерием эффективности, связанным с управлением производством, является стоимость деталей, недостающих сравнительно с запланированной потребностью. Этот дефицит покрывается в следующих периодах (ни одна заявка не остается неудовлетворенной). Величину затрат, связанных с дефицитом, не устанавливаем. А.2. ОПРЕДЕЛЕНИЕ «ЭКОНОМИЧНОЙ ВЕЛИЧИНЫ ЗАКАЗА» ПРИ ВЫПУСКЕ ПРОДУКЦИИ ОДНОГО НАИМЕНОВАНИЯ Использование «экономичной величины заказа» (EOQ) в качестве инструмента регулирования производства и запасов широко освещалось в литературе [5], [6]. Этот метод основан на предположении о том, что на типичном заводе с партионным производством на склад нет существенного взаимодействия между многочисленными деталями при выделении времени на производство каждой из них. Если предположить, что такое взаимодействие полностью исключено, то среднемесячные затраты на изготовление и хранение на складе деталей каждого наименования будут складываться из двух главных составных частей. Первая из них при возрастании размеров партии увеличивается, вторая уменьшается. При сделанных предположениях проценты на среднюю сумму вложенного капитала вместе со среднемесячными затратами на запуск в производство и обработку детали составляют Q[aP + (b; + C)X-] + ^lap + (bP + c)x], (A1) число штук деталей в каждой партии запуска; процентная ставка за один период; суммарное время на подготовку запуска (включая переналадку в цехе и конторскую работу); время, необходимое для изготовления одной детали данного наименования; стоимость материала на одну деталь данного наименования; 180 где х Q а Ь
r — ожидаемый уровень спроса на продукцию данного наименования в течение одного периода; р — часовая тарифная ставка производственных рабочих. Задача состоит в выборе х, минимизирующего сумму затрат (А1). Чтобы найти минимум выражения (А1) относительно х, приравняем производную нулю и получим общеизвестную формулу «экономичной величины заказа» EOQ EOQ=** = -|/ 2а' ^ N . (А2) V Q *+<f)" Заметим, что предположение о полной взаимонезависимости расчетов экономичной партии для различных деталей, положенное в основу выражения (А1) и формулы EOQ (A2) в неизменных условиях оправдывается. Если спрос со временем не меняется, а общая численность персонала соответствует «точке равновесия», найденной расчетом экономичной партии, то вполне резонно, определяя в формуле EOQ величину затрат, считать, что р представляет собой затраты на рабочую силу, оплаченную по обычному тарифу. Программа моделирования. Программа моделирования на вычислительной машине была разработана с целью исследовать варианты решений, определяющих запуск деталей в производство, иначе говоря, определяющих размеры партий и точки повторения заказа, установленные с расчетом удовлетворить ожидаемую потребность в деталях. Размер партии и точка повторения заказа, обозначенные соответственно q и г, определяются с помощью системы уравнений для каждого периода. Последовательность вычислений этих величин такова: сначала устанавливают исходные условия, после чего моделирование производится в соответствии с системой уравнений. В уточнениях нуждаются следующие исходные условия: 1) Уг @) — предполагаемый исходный запас деталей / для начального периода; 2) г% @) — предполагаемый уровень потребности для деталей / в начальном периоде; 3) zt @) — точка повторения заказа в начальном периоде для деталей /; 2а> Л — постоянный коэффициент в EOQ для деталей /; 5) Общее исходное число рабочих, которое может быть закреплено за группой оборудования k\ 6) а — принятое значение параметра в уравнении экстраполяции спроса, где 0 < а < 1. В начале каждого отдельного периода / первая задача состоит в том, чтобы установить, сколько именно надо заказать деталей по каждой позиции / номенклатуры. Этот вопрос решается следующим образом: Яг- 0 если и (*)>*» 181
где <=(/^%)(/f)' и *и = (Ь)Ш (Х>0). (А4) С помощью уравнения (А2а) вычисляют «экономичную величину заказа»; уравнение (А4) определяет точку повторения заказа г, являющуюся функцией текущей оценки ожидаемого уровня спроса г, а 1 — параметр, изменения которого отражают различия в уровне страхового запаса. Уровень запасов (yt) деталей / может принимать как положительные, так и отрицательные значения. Отрицательные значения (у{) означают дефицит по сравнению со спросом на детали данного наименования в каком-либо периоде. Фактическая величина заказа на деталь /, запускаемого в производство, равна <?;. Это означает, что qt, или размер партии деталей данного наименования, состоит из EOQ плюс разность между наличием деталей и точкой повторения заказа. Добавление указанной величины к EOQ доводит наличие деталей в предстоящем периоде до такого уровня, который дает возможность, во-первых, удовлетворить ожидаемую в течение этого периода потребность и, во-вторых, пополнить страховой запас до установленного уровня. В конце периода t фактическая потребность в каждой из деталей рассчитывается, исходя из зафиксированных данных о спросе на готовые изделия, следующим образом: L di=%guXSl / = 1, 2, 3, ..., L, (A5) /=i где ?ц — количество деталей / в единице готового изделия I; Si — фактическая величина спроса на изделие / за период t. В результате исключения из имеющихся запасов фактической потребности в деталях образуется новый баланс наличия их перед новым периодом производства. Выше мы указывали, что наличие деталей может выражаться положительной и отрицательной величинами; положительный запас влечет за собой определенные затраты на его содержание, отрицательный представляет собой дефицит деталей данного наименования. Наличие (или дефицит) на начало (t + 1)-го периода рассчитывается следующим образом: И('+1)=Ю@ + ?*-<*|. (А6) После того как эти величины для периода t определены, становится возможным рассчитать и некоторые другие данные, необходимые для планирования производства на период (t + 1). Например, rt (t + 1), новый уровень спроса, должен быть определен так, -как это описано в основной части настоящей главы. Когда rt (t + 1) вычислено, a yt (t + 1) известно, тогда можно определить, достигнута ли по какой-либо детали i точка повторения заказа. 182
Этот процесс повторяетсядля всех периодов, охваченных экспериментом моделирования. Вычисление суммы переменной части затрат для периода t. После того как все q% определены, появляется возможность вычислить потребность в рабочей силе для каждой детали / и для каждой группы оборудования k, Likt \.a,b + bih-Qi(t)J ' если qt (t)=0 taik + bik-liV)) ' если ?* (/) >0 (i = lf ...,/; k = \, ...,*). (A7) Затем мы определяем число урочных и сверхурочных человеко-часов и изменения в численности рабочих по сравнению с предыдущим периодом. Число урочных и сверхурочных человеко-часов, отработанных в обеих сменах в течение каждого периода, должно быть достаточным для покрытия потребности в рабочей силе, исчисленной на основании плана производства B0 будничных дней и 4 субботы в среднем в месяц; 1,6 часа в день в первой смене и 1,52 часа — во второй смене) I [т] [32Wlkt + 38,4Г\t + 30.41P& + 36,5И^] > 2 Lш, (А8) г где т равно числу месяцев, включенных в плановый период /. Кроме того, (при всех k, t). Это означает, что число рабочих, закрепленных в первой смене за группой оборудования k для работы в пределах смен и сверхурочно, не должно превышать максимального количества, обозначенного W^. To же верно и для I второй смены. В случае, если 2^ft* больше, чем W^ C8,4 + 36,5), преду- г сматривается дополнительный ресурс в виде третьей смены. Это соответствует предположению, что необходимые дополнительные рабочие закрепляются за третьей сменой с удвоенными (включая доплату) расходами. Если известна потребность в рабочей силе, то величины w\, Wk, W% и Wk в модели EOQ определяются по следующему правилу: 1. Назначить все работы на первую смену, если возможно — только в урочное время, или как в урочное, так и в сверхурочное время. 2. Если потребность превышает возможную загрузку первой смены с учетом максимально допустимого количества сверхурочного времени — назначить полную первую смену без сверхурочных, а недостающую часть покрыть за счет урочного времени второй смены. 3. Если потребность больше числа человеко-часов в соответствии с п. 2, недостающую часть покрыть за счет сверхурочного времени первой смены. Недостающие и при этом варианте часы переносятся на сверхурочное время второй смены. 183
4. Если возможности обеих смен, включая урочное и сверхурочное время, исчерпаны полностью и все же остается некоторая потребность в рабочей силе, ее покрывают за счет «третьей смены». В заключение необходимо рассчитать изменения в уровне наличия рабочей силы по каждой группе оборудования. Этот расчет производится с помощью следующего уравнения, связывающего наличие рабочей силы в период / с соответствующими данными за предшествующий период =D+lT«-D-rw. (A9) А.З. ОПРЕДЕЛЕНИЕ РАЗМЕРОВ ПАРТИЙ МЕТОДОМ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ В МНОГОНОМЕНКЛАТУРНОМ ПРОИЗВОДСТВЕ 1 Описанная ниже модель линейного программирования заведомо рассчитана на то, что предстоит иметь дело с преходящими явлениями, связанными с неуравновешенностью исходных условий, с несбалансированностью уровней запасов и рабочей силы. Если можно с большой вероятностью ожидать, что при переходе от исходных условий к состоянию равновесия затраты на изменение численности рабочей силы так малы, что ими можно пренебречь, и если так же малы затраты на надбавки к тарифным ставкам, то применение описанной ниже модели для определения размеров партий дает мало преимуществ. Определение альтернативных последовательностей затрат труда при запуске деталей. Пусть максимальное число периодов для перехода от исходных условий к состоянию равновесия ограничено величиной Т. Любую возможную последовательность запусков (комбинацию периодов, в которых производится запуск) в переходной фазе обозначим индексом у (/ = 1,2, ... . . ., J; J = 2Т). Каждая такая последовательность есть вектор Ау-, компоненты которого 6^т принимают значения 0 или 1 /Ъя\ AJ=\ bjx W/ Потребность в деталях / в течение периода т обозначена через г^т. Переходящего остатка детали / должно хватить на п периодов после Т (п > 0) 2. Для каждого сочетания значений /, j и п построим вектор производства Х^ 1 Эти заметки следовало бы дополнить ссылками на [1] и [4]. 2 При экспериментах не допускалось образование остатков на конец планируемого промежутка 7\ то есть п приравнено нулю. 184
с компонентами во временной последовательности ^ ijn — xijn,% \Xijn,TJ Уровни выпуска х^х определяются в соответствии с уравнениями (А10)г (Alia) или (АПб), приведенными ниже. Эти условия равносильны правилу, устанавливающему, что поступающие в тот или иной период требования должны удовлетворяться в первую очередь за счет оставшихся исходных запасов, пока они имеются, и лишь затем — за счет выпуска продукции в последнем из периодов, когда производились затраты, связанные с запуском. Набор «предпочтительных» векторов формируется по следующим правилам: Если 6/т=0, xiJnx=0, (A10) то / (/, т) равняется ГО"! т—1 f "> 11 /(/, t)=S J- в зависимости от 2^'р 1 ^.п Г * у-г равняется У1=У1 A) — исходная величина запаса деталей /-го наименования. g(/\ *) равняется р g(/, т)=тах{р:т<р<7 и 2 fys = l} • s=x Если «/, = 1 и g(j, т)<7\ gU,x) т-1 хцпх= 2 г*р—/(/»x)[yi— 2г*р]- (А11а> Р=Т р=1 Если 6,4 = 1 и *(/, т)=7\ т т-1 *tfnt=[2 Г*Р—я^т]—/(/, т) [*/*- 2 ПР] • (АПб) Р=Т р=1 Вектор производства Х^л считается «невыполнимым», если для тех т, при которых / (у, т) = djX = 1 сохраняет силу или неравенство (А12а) или неравенство (А126) 1 хшх<0, (А12а) т-1 У1< 2г*р- (А126) р=1 1 Чтобы упростить задачу для решения на машине, может быть желательным в этом случае исключить ряд векторов производства, где время изготовления партии столь велико, что отдельные группы оборудования оказались бы занятыми в течение слишком длительного времени, например от двух до четырех недель. 185
И, наконец, по всем выполнимым векторам производства определяются трудоемкости LzV&tit для каждой детали / и для каждой группы оборудования Л (i = l, ...,/; * = 1, . . ., К). Lijknx—\ в зависимости от %i in h~\~bik,xrjnx • {><,}¦ (А13) где ам и bfk означают соответственно подготовительно-заключительное и оперативное время для детали / на группе оборудования k. Максимальное число положительных значений трудоемкости Ь^пХ1 определяемых в каждой отдельной задаче, равняется > Среднее чис-* ' ло календар- » (¦ Число наЛ именова- \ ний деталей (=) 0) М35) {Число положительных последовательностей (J = 2Г) B3) Число |х( ГРУПП \ оборудо- \ вания (К) B) / Число коЛ / нечныхзна- |х[ чений вели- I чины запа- \ сов (АО A) ных периодов, в которых фактически производится выпуск а) C/2) = 840 / Уравнения в модели линейного программирования. Первая группа уравнений устанавливает, что потребность в деталях каждого наименования должна быть> удовлетворена с помощью выпуклой комбинации выбранных для деталей данного наименования последовательностей запуска 2 е* = 1 (для всех *'). (А) Следующая группа уравнений требует, чтобы сумма урочных и сверхурочных часов, запланированных на обе смены в каждом плановом периоде была как минимум достаточной для покрытия потребности в рабочей силе, рассчитанной согласно принятым планам производства B0 будней и 4 субботы в среднем в месяц; 1,6 часа в день — в первой смене и 1,52 часа — во второй): [т] [32^г + 38,4Г2т+30,4^т + 36,54^т] > > 2 LijknxQijhnx (при всех k, т). г, ;, п (В) 186
Далее идут уравнения, связывающие наличие рабочей силы в каждый период с соответствующими данными за предшествующий период h + D+Wkx—D-Whx (при всех k; т = 1, ..., Т). (С) И последними идут уравнения, согласно которым в каждой смене численность рабочих, закрепленных за той или иной группой оборудования, не должна превышать производственной возможности данной группы Kx + Wlx<Wk, (при всех k, т) (D) Wlt + <x<*k. Общее число уравнений в каждой отдельной задаче равно Число уравнений в группе (А) = / = 35 Число уравнений в группе (В) = КТ = 6 Число уравнений в группе (С) = КТ = б Число уравнений в группе (D) = 2 КТ = 12 =1 + 4КТ= 59 Вычисление сумм затрат. Переменная часть затрат, минимизируемая с помощью линейного программирования, складывается из следующих дисконтированных сумм: (Р1) — затраты на оплату труда по обычным тарифам и доплаты; (Р2) — затраты на изменение численности рабочей силы; (РЗ) — затраты на содержание запасов; (Р4) — конторские затраты по заказам; (Р5) — проценты на капитал, вложенный в переходящие остатки. Чтобы исчислить коэффициент дисконта за период т, удобнее предположить, что все затраты, отнесенные на период т, подлежат оплате в конце этого периода. Тогда, если обозначить через Q процентную ставку за один период, то за т периодов этот коэффициент равнялся бы е"~рт. Расчет затрат, соответствующих первым двум слагаемым (Р1) и (Р2), прост и здесь подробно не описывается. Эти затраты пропорциональны переменным, связанным с рабочей силой W^x и DWkx. Остальные три слагаемых связаны с неизвестными 0^ и дают в сумме коэффициент затрат Pijn для каждого набора /, /, п. Затраты на материал прямо пропорциональны количеству деталей, изготовленных в каждом периоде xijnx. Обозначим через С( стоимость еди- 1 Если бы в модели должно было быть предусмотрено, что уровень наличия рабочей силы в конце периода Т должен быть равен потребности в ней, то это ограничение потребовало бы включения в модель еще К уравнений. 187
ницы материала, необходимого для изготовления детали i. Тогда для заданных значений /, j и п т (Рг)=^[е-<>х][хипЛ[а}. х=1 Слагаемые, соответствующие конторским затратам по заказу, определяются количеством заказов и распределением их во времени. Обозначим через wi конторские затраты по заказам, возникающие при каждом запуске детали /, и напомним определение переменной 6;т, равной или 0 или 1 (раздел 3). Тогда для заданных значений / и /: т (P4)=2^pT][MN. т=1 И, наконец, надо оценить затраты на содержание переходящих остатков, то есть запасов, переносимых из периода Т в фазу равновесия. Если определено, что этих запасов хватит на п периодов, затраты на них по каждой детали / определяются как разность дисконтированных сумм, зависящая от срока дисконта, а именно Р E)—процент на средства, вложенные в переходящие запасы = {дисконтированные суммы всех предстоящих материаль-1 ных и трудовых затрат, отнесенных на фазу равновесия— 1 = см. уравнения A) и B), раздел А.2 J ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ 1. При расчете издержек по переходящим остаткам число периодов п может быть произвольно установлено для всех последовательностей запуска, кроме той, при которой 6±= . . . 6Т= . . . 6Т = 0. В этом исключительном случае Г п=*--У1пх = *=±_. т-1 2. Удобными значениями для п являются 0, х*/2г и х*/г. 3. Величины заказов ху получаемые из уравнения Bа) в разделе А.2, необходимы не только для реализации самой схемы EOQ, но и для вычисления процентов на сумму переходящих запасов и определения параметров ^А, т+1 в схеме линейного программирования. 4. Каждый «выполнимый» вектор последовательности неизвестных 0^ будет включать в себя КТ коэффициентов необходимых трудовых затрат Lijnx> комплексный коэффициент финансовых затрат Pijn, в который входят затраты на приобретение материалов, конторские расходы и издержки по переходящим остаткам, а также коэффициент +1 в соответствующей строке требований в уравнениях группы (А). 188
Приложение Б МАТРИЦА ВЫЧИСЛИТЕЛЬНОЙ СХЕМЫ LP В ОБЩЕМ ВИДЕ Неизвестные Альтернативные последователь- Урав- \^ ности J запуска детали / нения Рабочая сила и изменения в связанных с нею переменных 1-ая смена—3 периода — 2 группы оборудования 2-ая ейена и т. д. ные Дополнительные Правая перемен- часть Коэффициенты pppppppppppppp...pppppppRlR2rhr0RlR2rhr0RlR^rhroRlR^rhroR^R^rhr0RlR2rhroRSR^rhr0.. ./?3^4глГ0 Группа 1 = 1 урав- t=2 нений А t=35 11111 11 11111 11 ... ... 1111 11 1 Группа т=1, В т=1, Т=2, Т=2, Т=3, Т=3, Группа к=1, с к=1, к=1, к=2, к=2, к=2, Группа т=1, D т=1, Смена т=2, 1 Т=2, т=з, Т=3, к=1 L k=2L к=1 L к=2 L к=1 L к=2 L Т=1 Т=2 Т=3 Т=1 Т=2 т=з к=1 к=2 к=1 к=2 к=1 к=2 LL LL LL LL L LL L LL LLL LLL L L L L LL L. . LL L.. L LL.. L LL.. LLL.. LLL.. •• . L LL L-H-H . L LL L . L L LL . L L LL L LLL L LLL 1 1 -1 -1 -1 1 1 -Н-Н 1 1 1 -1 -1 -1 1 1 -Н-Н 1 1 1 -1 1 1 -Н-Н 1 1 1 -1 -1-1 1 1 -Н-Н 1 1 1 -1 -1 -1 1 1 -Н-Н 1 1 1 -1 1 1 -Н-Н . 1 1-11. -1-1 1 1 ..-Н-Н 1 .. 1 1-1 1 1 . . . . 1 . 0 0 0 0 0 0 .W1..W4 .0 0 .Wl ..W* . о 0 W W W W W W Группа т=1, к=1 D Смена , 1 1 W т=3, к=2 ... 1 1 W
Приложение В Глоссарий терминов Ниже приводится перечень математических символов, использованных в данной главе. Те из определяемых здесь символов, которые в главе применяются иногда без индексов, фигурируют в перечне лишь один раз — с индексами. / — общее число изготавливаемых заводом деталей (в соответствии с двумя испытуемыми моделями) (/= 1, 2, . . ., /). J — число возможных календарных планов производства, в соответствии с которыми может изготавливаться каждая деталь (; = 1, 2, . . ., J). п — число месяцев, в течение которых потребность может покрываться за счет переходящего остатка на конец планируемого промежутка времени (л=1, 2, . . ., N). Т — количество плановых периодов в планируемом промежутке (т = 1, 2, . . ., Г). К — количество различных групп оборудования, имеющегося на заводе (k = 1, 2, . . ., /С). пг — длительность каждого планового периода в месяцах (т= 1, 2, . . .)• S (t + г) — ожидаемое поступление заказов за т единиц времени. 5 (t) — оценка среднего объема спроса по поступившим заказам, отнесенного к календарному интервалу t. Ь (t) — ожидаемый объем спроса по поступающим заказам, отнесенный к календарному интервалу t. а — коэффициент усреднения в уравнениях прогноза поступления заказов. rti — установленная потребность в детали i на период т, когда т = 1. г%х — общая потребность в детали / на период т, когда т = 2, 3, . . ., Г. X — произвольный коэффициент страхового запаса. 6^- — часть общей потребности в детали /, производимая в соответствии с вариантом / последовательности запусков (/= 1, 2, . . ., /; /= 1, 2, . . ., J). — число рабочих, закрепленных за группой оборудования k в первой смене в течение периода (t + т) без сверхурочных работ (k = 1, 2, . . ., К\ т = 1, 2, . . ., Т). Whx — число рабочих, закрепленных за группой оборудования k в первой смене со сверхурочной работой в течение периода (t + т); каждый из этих рабочих отрабатывает в течение этого периода фиксированное число урочных и сверхурочных часов. 190
Whx — число рабочих, закрепленных за группой оборудования k во второй смене без сверхурочных работ в течение периода (/ + т). Wkx — число рабочих, закрепленных за группой оборудования k во второй смене со сверхурочными в течение периода (/ + т); каждый из этих рабочих отрабатывает в течение этого периода фиксированное число урочных и сверхурочных часов. D+Wfa — увеличение общего числа рабочих, закрепленных за группой оборудования k на период (t + т) по сравнению с периодом (t + т — 1). D'Wkx — уменьшение общего числа рабочих, закрепленных за группой оборудования k на период (t -+- т) по сравнению с периодом (t 4- т — 1). Lijht — затраты труда, необходимые в течение периода (t + т) для осуществления варианта j из возможных последовательностей производственных заданий по детали i на группе оборудования k. xijx — количество деталей /, изготовляемых в соответствии с последовательностью / в течение периода (/ + т); эти числа определяют альтернативные последовательности производственных заданий. Wk — максимальное число рабочих, которое может быть закреплено за группой оборудования k, Н1 — суммарное число часов, отработанных в течение периода в первой смене без сверхурочных. Н2 — суммарное число часов, отработанных в течение периода в первой смене, включая установленное заранее число сверхурочных часов. Н9 — суммарное число часов, отработанных в течение периода во второй смене без сверхурочных. Я4 — суммарное число часов, отработанных во второй смене, включая заранее установленное число сверхурочных часов. bik — оперативное время обработки детали / на оборудовании k. Zn — точка повторения заказа для детали / на период t. Rkx — заработная плата на оборудовании k в первой смене в урочное время, дисконтированная на т периодов. Rkx — заработная плата на оборудовании k в первой смене, включая сверхурочные, дисконтированная на т периодов. Rkx — заработная плата на оборудовании k во второй смене в урочное время, дисконтированная на т периодов. Rkx — заработная плата на оборудовании k во второй смене, включая сверхурочные,^исконтированная на т периодов. 191
Г0т — затраты, связанные с увольнением одного рабочего, дисконтированные на т периодов. Гьт — затраты, связанные с наймом одного рабочего, дисконтированные на т периодов. CiX — стоимость материалов на единицу детали /, дисконтированная на т периодов. qi — окончательный размер заказа по детали / с учетом страхового запаса в соответствии с расчетной схемой определения экономичной величины заказа. EOQj — экономичная величина заказа, рассчитанная для детали i по стандартной формуле, в которой уравновешиваются затраты на запуск и затраты на содержание запасов. Уг (т) — наличный запас деталей / на начало периода т; Уг (т) < 0 рассматривается как задолженность. q — процент на капитал за один период. aik — число часов, необходимых для организации и осуществления запуска партии деталей / в производство на оборудовании k (подготовительно-заключительное время и время оформления запуска в конторе завода). А/т — «дельта Кронекера» принимает значения 0 или 1 в варианте у последовательности производственных заданий по детали / в период т. Д^- — вектор-столбец, компоненты которого принимают значения ноль или единица. X}j — вектор производства с компонентами *г-7-т во временной последовательности, обозначающими коли чество деталей /, изготовленных в соответствии с вариантом / последовательности производственных заданий. е~~рх — коэффициент дисконта за т периодов, необходимый для вычисления текущих значений ряда компонентов затрат, непосредственно входящих в функционал, минимизируемый с помощью линейного программирования. xi»t — конторские затраты, связанные с каждым] отдель- ным запуском партии деталей /•
ГЛАВА 10 Оптимизация системы производства и распределения К. Г. ИШЛЕР, Р. М. ШАРП, В. В. СТЕЙЛИ (младший) i В данной главе рассматриваются методы решения задач оптимизации системы производства и распределения, основанные на применении линейного программирования. При этом возможность применения линейного программирования для минимизации издержек системы, объединяющей производство и распределение, достигается благодаря некоторым методам расчленения задачи и изменения ее параметров. Цель главы — дать подход к решению задачи, которую, вследствие большого масштаба и сложности многостадийной системы производства и распределения, в обычной постановке было бы невозможно решить с помощью линейного программирования. 1. СИСТЕМА Гипотетическая система включает стадию добычи сырья, многостадийный процесс переработки, стадию фабрикации и, далее, распределение готовой продукции между потребителями. Через эту систему проходят потоки сырых материалов и полуфабрикатов, а также поток готовых изделий, доставляемых потребителям. Система представлена графически на рис. 30. Сырье добывается в трех отдельных пунктах (EiE2E3). Полученное сырье сначала поступает на стадию переработки А в любой из 4 пунктов (Ль Л2, Л3, Л4). Затем материал в виде полуфабриката подвергается дальнейшей переработке на стадии В в одном из 6 пунктов (Ви В2, . . ., В6). На стадии В получается однородный продукт, используемый при фабрикации готовой продукции. На последней стадии (фабрикация) полуфабрикат превращается в готовое изделие на одном из 25 пунктов (Fit . . ., F2b)- Для нашей задачи можно разбить готовую продукцию на 10 классов, 1 Работают в «Юнайтед Стейтс стил корпорейшн» и «Вестингхаус электрик корпорейшн». 13 Заказ № 195 193
или отдельных групп изделий (Рь . . ., Pi0). Разбивка продукции на такие отдельные группы произведена почти целиком, исходя из конечной формы изделий. Кроме того, следует отметить, что каждая из десяти групп изделий производится только на нескольких Добыча сырья ?1 Е2 h Стадия А переработки *1 Аг А3 Стадия В переработки Фабрикация (изделия Pf,...,Pw) Районы сбыта готовой продукции \И \к. и [± \к. 1Г\ \±. \±_ и А • • • • • « > 1а ё Сщ н в 3 Рис. 30. и ни в коем случае не на всех пунктах производства. Например, изделие Рх может быть изготовлено на пунктах Fi6t Fi7 и FiS; P2 — на пунктах Fu F2, F5 и FiQ. И, наконец, чтобы сократить задачу до доступных размеров, весь рынок сбыта в системе можно разделить на 15 районов сбыта (Си . . ., С15), каждый из которых должен быть обеспечен необходимыми изделиями в потребных количествах. Такое разделение рынка сбыта на районы производится, исходя из географического размещения заводов и населенных пунктов. 2. ОПТИМИЗАЦИЯ СИСТЕМЫ Как видно из рис. 30, система имеет ряд направленных звеньев между различными стадиями обработки. Каждому звену соответствуют определенные производственные и транспортные расходы, принимаемые в расчет при его использовании. Определенные наборы звеньев, взятые в последовательности, составляют пути, или маршруты, потоков изделий через систему к потребителю. Например, если 194
спрос в районе С2 на изделие Pt составляет X единиц, то путь продукции может быть таким: сырье добывается в пункте 1, проходит стадию переработки А в пункте Л3, далее следует на стадию переработки В в пункт ?4> после чего проходит фабрикацию в пункте Fi7, а затем готовые изделия доставляются в район сбыта С2. Этот путь можно записать символами EiAzBkF^C2- Тот же самый спрос можно удовлетворить целиком или частично, ИСПОЛЬЗУЯ ДРУГОЙ ПуТЬ ?2^4^бЛбС2- В следующем разделе будет сказано о применении этого «путевого метода» для оптимизации системы. Затем будут указаны возникающие здесь трудности и представлена приемлемая модель для приближенной оптимизации системы. Следует, однако, отметить, что цель этой приближенной оптимизации решения состоит в том, чтобы показать метод, который обладает как достаточной точностью, так и простотой расчетов. На практике, если получено такое приближенное решение, то дальнейшие уточнения могут позволить фирме ближе подойти к действительному оптимуму. 3. МЕТОД ПРЯМОГО РЕШЕНИЯ Метод прямого нахождения оптимума для всей системы состоит в том, что устанавливаются и перечисляются все потенциальные пути, пользуясь которыми можно полностью или частично обеспечить спрос на необходимую продукцию. Далее, если каждый потенциально возможный путь будет представлен в системе отдельной переменной и при наличии ограничений, исключающих возможность превышения лимитов производственной мощности различного оборудования, можно представить эту систему в виде модели для линейного программирования. Например, вначале мы могли бы установить все потенциальные пути обеспечения каждого района сбыта необходимой продукцией. Как и в предыдущем случае, эти пути можно обозначить символами (Е^А^В^^С^. Затем мы могли бы назвать 2 основных класса, необходимых для рассматриваемой системы ограничений: 1) Сумма потоков продукции, проходящих через каждый производственный пункт по всем путям, должна быть меньше или равна максимальной производственной мощности этого пункта (и равна или больше его минимальной мощности, если существует такое ограничение). Следовательно, для каждого входящего в систему пункта требуется одно или два уравнения — ограничения. 2) Сумма потоков продукции, проходящих по всем путям через все пункты X и оканчивающихся в районе сбыта К, должна быть равна спросу на данное изделие в этом районе. Следовательно, для каждого из 15 районов сбыта требуется 10 ограничивающих уравнений (по одному для каждого изделия). 13* 195
Сумма переменных производственных и транспортных расходов, соответствующая каждому пути, составляет издержки (с/), зафиксированные при формализации задачи для этой переменной. В предыдущем разделе было указано два пути, по которым потенциально можно удовлетворить спрос района 2 на изделие 1. Можно было бы перечислить гораздо больше потенциальных путей удовлетворения спроса этого района за счет указанного изделия. Так как в задаче учитывается спрос 15 районов на 10 отдельных видов изделий, то, кроме группы потенциальных путей удовлетворения спроса района 2 на изделие 1, существует еще 149 других подобных групп путей. Если бы в предложенную модель линейного программирования были включены все возможные пути, проходящие в системе, то число неизвестных достигло бы приблизительно 27 000, а ограничений — от 53 до 91. Для решения такой задачи потребовались бы очень мощные вычислительные устройства. Надо также заметить, что установление и перечисление путей само по себе было бы чрезвычайно трудоемкой работой. Чтобы сузить задачу до выполнимых размеров и в то же время приблизиться к оптимуму системы, можно воспользоваться излагаемым ниже методом. 4. РЕКОМЕНДУЕМЫЙ МЕТОД АППРОКСИМАЦИИ 4 1. МОДЕЛЬ СУБОПТИМИЗАЦИИ При применении предлагаемого метода вся система может быть разделена на 3 отдельные подсистемы. Каждую из них можно затем оптимизировать относительно своей суммы издержек на производство и доставку. Увязанные друг с другом результаты решений для подсистемы дадут субоптимальное решение для системы в целом. Подсистема 1 включает пункты «фабрикации» и все районы сбыта. Оптимальное решение для этой подсистемы обеспечивает такой график производства и доставки, при котором минимизируются общие расходы, связанные с фабрикацией изделий на данной стадии и их транспортировкой в районы спроса. Подсистема 2 включает все пункты, выполняющие стадию переработки 5, и все предприятия стадии фабрикации. Здесь задача оптимизации заключается в том, чтобы минимизировать расходы по переработке материала на стадии В и по перевозкам необходимых объемов продукции стадии В на пункты фабрикации. Третья из этих подсистем, подсистема 3, включает все предприятия фирмы по добыче сырья, выполняющие стадию переработки Л, и предприятия стадии В. Оптимальное решение этой подсистемы минимизирует расходы по производству и доставке, связанные с добычей сырья, с переработкой на стадии А 196
и перевозкой полученного полуфабриката в назначенных количествах на предприятия стадии В. Решение подсистемы 1 можно получить из 10 распределительных задач по одной задаче для каждого из 10 изделий, применив метод транспортной задачи [1, 2, 3] линейного программирования. В этих 10 распределительных задачах в общей форме потребности устанавливаются как оценки спроса (сбыта) по группе X готовой продукции, в каждом из 15 районов сбыта. Расходы (си)у введенные в модель к*/ !&,// 1 • • 1 • \м*у^ D< \1,2/ %,г/ • • • СМ,9/ D2 • • • Потребность 8 изделии X в каждом районе сбыта Рис. 31. hy °г,1$/ • • • °М}15/ В* K1 «2 • • • I Км I Si ^ ? e 1: I1 1 & распределительной задачи, состоят из переменных производственных расходов на единицу продукции X на предприятии / плюс транспортные расходы на единицу продукции X по доставке от указанного предприятия @ в соответствующий район сбыта (/). В общем виде каждую из 10 рассматриваемых задач можно представить матрицей транспортной задачи, показанной на рис. 31. Решая такую транспортную задачу для каждой из 10 групп изделий, мы можем запланировать объем производства для каждого из предприятий и определить, куда и в каком количестве каждое предприятие должно поставлять свою продукцию. Это решение представляет собою оптимизацию первой подсистемы. Затем полученные решения 10 распределительных задач объединяют. Теперь можно определить потребность 25 предприятий стадии фабрикации в продукции стадии переработки В, рассчитав потребности в затратах продукции стадии переработки В по известному из решения 197
подсистемы 1 выпуску продукции предприятиями стадии фабрикации В. Оптимальное решение подсистемы 2 можно получить, решив транспортную задачу применительно к модели, представленной на рис. 32. Как и в предыдущем случае, расходы (ci7) представляют различные переменные производственные и транспортные затраты у у у у у У' Rf Ч/ kz/ C3l/ kl/ у кг/ R2 - • • Л • • Ья/ Ьд/ kj&s %/ у у % ' *' h Кз А* к5 к* Потребность каждого из 25 предприятий б продукции, бы пускаемой на стадии переработки В (по данным подсистемы 1) j II if р I* I i Рис. 32. на единицу продукции, связанные с переработкой на стадии В и транспортировкой предприятиям последующей стадии. В результате решения этой транспортной задачи мы получаем план размещения производства на стадии В на предприятиях и план доставки выпускаемой на этой стадии продукции при распределении ее между различными пунктами фабрикации. План производства на предприятиях стадии В дает далее возможность определить потребность предприятий этой стадии в продукции, выпускаемой на стадии А. 198
Эти данные, характеризующие спрос предприятий стадии В на продукцию предприятий стадии Л, в дальнейшем используются в подсистеме 3. И, наконец, мы получаем оптимальное размещение производства и план доставки для подсистемы 3. Здесь мы используем тот самый «путевой метод» применительно к средствам линейного программирования, который был описан в разделе, посвященном прямой модели. Единственное отличие подсистемы 3 от двух предыдущих состоит в том, что она по сравнению с ними имеет меньше переменных и ограничений. Можно проследить возможные «пути», проходящие через эту подсистему от пунктов добычи сырья к пунктам стадии переработки В. В подсистеме насчитывается 72 переменных и от 13 до 26 уравнений-ограничений. Расходы, связанные с каждой переменной (или «путем»), являются суммарными расходами на единицу продукции по добыче, переработке на стадии А и транспортировке от места добычи к пункту переработки стадий А и далее от него к пункту переработки стадии В. В качестве примера рассмотрим один из возможных путей — EiA3Bq. Использование этого пути (переменной) связано с затратами, которые являются суммой следующих статей расходов: 1) Переменные расходы на единицу добытого в пункте 1 сырья. 2) Переменные расходы ,на единицу продукции, прошедшей стадию переработки А на предприятии 3. 3) Расходы по перевозке единицы добытого сырья из Et в А3. 4) Расходы ' по перевозке единицы продукции, прошедшей стадию Ai из А3 в Б6. Сумма потоков сырья по всем возможным путям, исходящим от определенного пункта добычи, не должна превышать максимальной производственной мощности этого пункта и должна быть не меньше его минимального допустимого объема производства, если такое ограничение существует. Аналогично сумма потоков продукции по всем путям, проходящим через пункт стадии Л, должна быть меньше или равна максимальной производственной мощности этого пункта и больше или равна его минимальной мощности. Например, ограничение для пункта 1 стадии переработки могло бы быть таким: з б 2 2 ExAiBz, должно быть меньше или равно максимальной мощности Л4 и больше или равно минимальной мощности Л4. Подобные ограничения можно записать для каждого входящего в систему пункта стадии переработки А и добычи сырья. Потоки материалов по всем путям, заканчивающимся в данном пункте стадии В, должны быть равны тому количеству выпускаемой продукции, которое было запланировано для этого пункта решением подсистемы 2. Итак, ограничение 199
для Bi можно записать следующим образом: з 4 S 2 ЕхАуВи *=1 у=1 должно равняться запланированному выпуску продукции в пункте Bi (полученному из решения подсистемы 2). Для каждого предприятия, входящего в систему, должны быть сформулированы надлежащие ограничения. Задача решается симплекс-методом [1, 2]. Методика получения субоптимального решения этим еще не исчерпывается. Решение подсистемы 1 определяет размещение выпуска продукции на различных предприятиях стадии фабрикации и план доставки с этих предприятий в районы сбыта. Решение подсистемы 2 устанавливает размещение производства на предприятиях на стадии В и дает план доставки с предприятий стадии В на предприятия стадии фабрикации в соответствии с определившимся в подсистеме 1 размещением. И, наконец, решение подсистемы 3 определит распределение объема производства между тремя пунктами добычи сырья и размещение обработки на стадии А на соответствующих 4 пунктах. Оно также даст план доставки с предприятий, добывающих сырье, пунктам стадии Лис пунктов стадии А пунктам стадии 5. Таким образом у мы составили план производства для всех пред- приятии и план перевозок продукции между различными стадиями системы. Входящие в систему подсистемы были оптимизированы относительно своих производственных и транспортных расходов. Однако этим не гарантируется достижение действительного оптимума. Поэтому наша следующая задача заключается в том, чтобы разработать метод, который приблизит нас к действительному оптимуму для всей системы. 4.2. АНАЛИЗ ТЕНЕВЫХ ИЗДЕРЖЕК Под теневыми издержками понимают значения Zj — Cj под структурными векторами симплексной таблицы. Эти значения представляют дополнительные затраты на единицу продукции при введении данного вектора в базис. Теневые издержки показывают также дополнительные расходы на единицу продукции, которые возникли бы при выборе пути, который при решении транспортной задачи оказался неоптимальным. Из только что описанных моделей субоптимизации легко установить, какие из возможных путей в системе являются «активными», то есть имеют ненулевые (и, конечно, неотрицательные) материальные потоки в субоптимальном решении. Это множество «активных» путей может, однако, не быть точным подмножеством путей, которые стали бы «активными», если бы вся система была решена прямым методом. Чтобы обеспечить точность окончательной модели 200
оптимизации, мы должны рассмотреть возможность введения в наличное множество активных путей некоторых дополнительных путей. Здесь задача заключается в том, чтобы определить, какие из неактивных в данный момент путей надо добавить к множеству активных путей. Рассматривая теневые издержки описанных выше оптимальных транспортных матриц и симплексной таблицы в модели субоптимизации, мы можем определить, какие неактивные звенья в системе стоят ближе всего к активным (под «звеном» понимается путь через одну из трех подсистем; например Fi0Ci2, B3Fi0 и EtA2B3 являются звеньями, принадлежащими соответственно подсистемам 1, 2 и 3). Допустим, что чем ближе к нулю значение отдельной теневой цены, тем более вероятно, что соответствующая ей переменная (или звено) будет иметь ненулевое значение в действительно оптимальном решении. Хотя это и не всегда так, все же данное эвристическое правило приемлемо для выбора новых путей. Теперь надо составить мнение по вопросу, сколько дополнительных звеньев каждой подсистемы следует ввести в окончательную модель оптимизации. Это мнение будет зависеть, во-первых, от близости каждой отдельной теневой цены к нулю и, во-вторых, от числа дополнительных путей, которые можно добавить в модель, не создавая чрезмерных трудностей для вычислений (см. гл. 9 [1]). После того как решено, какие звенья следует сделать активными, определяют, какие новые активные пути через всю систему надо добавить, чтобы включить все новые активные звенья в окончательную модель оптимизации. Чтобы образовать все возможные новые пути через систему, эти новые звенья надо соединить с другими новыми звеньями, а также с существующими активными звеньями. Затем эти новые пути следует включить в общее множество активных путей, которые явятся переменными окончательной модели оптимизации. 4.3. ОПТИМИЗАЦИЯ ВСЕЙ СИСТЕМЫ — МОДЕЛЬ ОПТИМИЗАЦИИ Теперь, надо думать, нами получен метод определения всех активных путей, или, иными словами, путей, которые, возможно, могли бы войти в оптимальное решение всей системы. Конечным этапом всего этого процесса является оптимизация системы, причем только «активные» пути должны рассматриваться как переменные. Не включая в задачу пути, которые из-за стоимостных соображений вряд ли попадут в оптимальное решение, можно сократить число входящих в задачу переменных с 27 000 до менее чем 500. Применяемая модель линейного программирования очень похожа на модель, описанную в разделе этой статьи «Метод прямого решения». Единственное различие между ними заключается в том, 201
что новая модель содержат значительно меньшее число переменных и тем самым вычисления, необходимые для решения задачи, здесь вполне осуществимы. Ограничения модели могут быть представлены в такой общей форме: 1) Сумма потоков продукции по всем активным путям, проходящим через предприятие X, меньше или равна его максимальной производственной мощности и больше или равна минимальной мощности. 2) Сумма потоков продукции по всем «активным» путям, проходящим через любое предприятие, выпускающее изделие X, и оканчивающимся в районе сбыта Y, должна равняться потребности в изделии X в области Y. Расходы, соответствующие каждой переменной, равны сумме переменных расходов на производство и транспортировку единицы продукции для данного пути. Задача решается симплексным методом линейного программирования. Для решения можно пользоваться большинством имеющихся программ для электронно-вычислительных машин. Решение дает план производства и доставки для всей распределительной системы, при котором минимизируются расходы, прямо связанные с этими видами деятельности. 5. АЛЬТЕРНАТИВНЫЙ МЕТОД — ОПТИМИЗАЦИЯ СИСТЕМЫ В ЦЕЛОМ Альтернативный метод анализа неактивных путей, имеющий целью определить, следует ли их включать в окончательную модель оптимизации, состоит в следующем: 1) Решают симплекс-методом задачу оптимизации всей системы, рассматривая как активные только те пути, по которым проходят материальные потоки в субоптимальном решении. 2) Применяют описанный ранее «анализ теневых издержек» к моделям субоптимизации, чтобы найти все другие потенциально активные пути. 3) Чтобы определить, может ли любой из этих потенциально активных путей войти в оптимальное решение (то есть в базис), используют следующий метод (условные обозначения взяты из[1]): а) Пусть Pj — вектор-столбец, представляющий исследуемый путь в таком виде, в каком он появился бы в исходной таблице, если бы действительно был включен в нее. б) Пусть со' является вектором-строкой Zj — Cj обращенного базиса (то есть строкой Zj — Cj под дополнительными векторами) в оптимальной таблице. в) Векторное произведение со'-Ру будет в оптимальной таблице иметь значение Zj — Cj для этого вектора Pj. 202
г) Если со'. Pj положительно, то Pj (путь /) должен быть введен в базис оптимальной таблицы и, применяя симплекс-метод, должен быть получен новый оптимум. д) Если со'. Pj отрицательно, то этот вектор Pj вычеркивают и испытывают другой возможный путь Pj из числа «неактивных» в данный момент. Этот метод позволяет определить, какие «неактивные» пути должны войти в оптимальное решение и таким образом снизить общие расходы. Однако метод не дает прямой оценки прироста экономии, получаемого при использовании данного пути. Чтобы определить общую сумму экономии в результате введения в базис любого Pj, необходимо найти в (где 0 = min Pi0/Xik), то есть число, указывающее на вектор Pjt вводимый в систему. Следовательно, сумма экономии, достигаемая в результате введения в базис PJf равна 8 (zj — Cj). При оптимизации всей системы вследствие больших масштабов задачи рассчитать решение можно только с помощью электронно- вычислительной машины. Следует отметить, что существуют программы, значительно облегчающие исследование многочисленных векторов Pj (путей). 6. ОГРАНИЧЕНИЯ МОДЕЛИ Существуют определенные ограничения для применения описанных методов. Наиболее важные из них следующие: 1) Использование рассмотренной модели ограничено долгосрочным планированием. Она предназначена для получения оптимального распределения продукции в течение некоторого периода времени при заданном спросе и не позволяет найти оптимум системы при сезонных или других колебаниях спроса. 2) В модели минимизируются издержки. Поэтому изделие, изготавливаемое с наименьшими издержками производства, всегда будет иметь приоритет при загрузке мощностей. При этом методе не делается попытка максимизировать прибыльность и в тех случаях, когда спрос превышает производственную мощность, возможны серьезные ошибки в решении. 7. ДРУГИЕ ОБЛАСТИ ПРИМЕНЕНИЯ МОДЕЛИ Являясь инструментом долгосрочного планирования, рассмотренные методы оптимизации, кроме того, имеют и другие возможные области применения: 1. Они обеспечивают информацией о потерях, обусловленных недостаточной производственной мощностью и номенклатурой 203
выпуска определенных предприятий. Тем самым они помогают составлению плана финансирования реконструкции существующих и строительства новых предприятий. 2. Они помогают найти оптимальное размещение новых предприятий, показывая, какие решения обеспечат наибольшую экономию. 3. Они показывают зависимость системы от изменений производственных издержек и других параметров. 4. Они позволяют определить расходы, связанные с выполнением спешных или внеочередных заказов.
ГЛАВА 11 Календарное планирование методом средних издержек С. БАХОВЦЕВ, ДЖ. КОРРИГАН i 1. ВВЕДЕНИЕ В этой главе описана методика календарного планирования по средним издержкам. Она пригодна для особой разновидности задач, часто встречающихся (особенно на предприятиях коммунального обслуживания) при планировании работы оборудования, в условиях циклически меняющейся нагрузки. Речь идет об использовании оборудования с однородной продукцией (например, электрическая энергия), которую, к сожалению, нельзя запасать и поэтому в любой момент времени надо производить в количестве, равном потребности. График изменяющейся во времени потребности в данном случае может выглядеть, как это представлено на рис. 33. При таком графике возникает необходимость периодически останавливать некоторые машины при спаде нагрузки и пускать их при пиках. Машины, обеспечивающие потребность, могут различаться по эффективности и производственной мощности, а также иметь (см. рис. 34) снижающиеся, постоянные или возрастающие маргинальные издержки 2. У некоторых машин может быть даже сочетание этих видов маргинальных издержек. Машины не могут работать при нулевой нагрузке, и поэтому, когда последняя падает ниже определенного минимального уровня, машина должна быть остановлена. Это условие усложняет планирование: невозможно сократить нагрузку до нуля и гонять машину вхолостую до тех пор, пока потребление снова не увеличится. Вместо этого машину надо остановить, а остановка и пуск связаны с расходами, которые могут быть весьма велики. Методика средних издержек первоначально была разработана для компании по производству электроэнергии, но ее можно при- 1 Работают в «Юнайтед стил корпорейшн» и «Артур Андерсон энд ком- пани». 2 В данном случае издержки на прирост загрузки, равный единице продукции.— Прим, ред. 205
менять к аналогичным задачам, таким, как эксплуатация водонасосных и газокомпрессорных станций, оборудования, производящего одинаковые изделия; можно легко расширить сферу применения метода до исследования работы нескольких заводов. Методика проста, она включает несколько правил и требует заполнения максимум трех таблиц. Хотя она не гарантирует получения оптимального плана, однако позволяет очень близко подойти к оптимуму. В качестве альтернативных способов решения поставленной задачи календарного планирования были рассмотрены линейное Е^ Снижающиеся \ маргинальные издержки Постоянные \ маргинальные издержки Возрастающие маргинальные издержки Нагрузка а Нагрузка 5 Рис. 34. Нагрузка и динамическое программирования. Для ее записи в виде задачи линейного программирования требуется ввести так много ограничений, что вычисления, необходимые для ее решения, становятся практически невозможными, даже если прибегнуть к аппроксимации. Применение линейного программирования с использованием методов, описанных в [1], рассмотрено авторами главы в пока что неопубликованной работе. О динамическом программировании сообщено в [2] и [3]. Как было обнаружено в задаче применительно к 17 машинам, нужно было исследовать слишком много сочетаний для того, чтобы получить решение, близкое к оптимальному. Метод средних издержек позволяет быстро получить решение, близкое к оптимальному. 206
2. МЕТОД СРЕДНИХ ИЗДЕРЖЕК Чтобы показать, что такое метод средних издержек, рассмотрим простой пример. Пусть 2 машины имеют характеристики, показанные на рис. 35. У машины 1 пусковые расходы составляют т долл., 5* II si 4 12 3k Выпуск продукции (число единиц в нас) 1 г з 4 Выпуск продукции (число единиц б час) Рис. 35. Маргинальные издержки а^а^а^а^ А^А^А^А^ (долл. на единицу продукции в час). Постоянные расходы Ь. В долл. в час. Пусковые расходы т М долл. Расходы при остановке машины п N долл. Примечание. Машины должны быть остановлены, если уровень производства становится меньше одной единицы продукта в час. а расходы при остановке — п долл. Постоянные расходы Ь соответствуют уровню текущих затрат при условном предположении, что нагрузка машины упала до нуля (фактически машину останавливают при нагрузке ниже единицы продукции в час)г. Расходы на остановку машины равны п долл. С остановкой связаны также расходы на последующий запуск в размере т долл. У машины 1 маргинальные издержки производства изменяются, как показано на рис. 35, а. Первая единица продукции в час обходится в #1 долл., вторая — а2 долл., третья — а3 долл. и четвертая— а4 долл. Эта машина имеет маргинальные издержки, возрастающие при увеличении производства на одну единицу в час то есть 01 < «2 < Яз < #4- Наибольшую трудность при календарном планировании представляет случай с возрастающими маргинальными издержками. Поэтому 1 То есть речь идет о том, что постоянные расходы Ь имеют смысл расчетной величины, так как чрезмерно малая нагрузка, а тем более холостой ход машины по условию задачи не допускаются.— Прим. ред. 207
именно он взят в качестве примера. При постоянных и снижающихся маргинальных издержках дело обстоит гораздо проще — эти случаи будут рассмотрены в дальнейшем. Характеристики машины 2 подобны характеристикам машины 1. Издержки, связанные с машиной 2, обозначены прописными буквами. Допустим, что для обеспечения потребности в соответствии с графиком на рис. 36 требуется 2 машины. Пусть машина 1 работала от х0 до Xi часов и производила 2 единицы продукции в час. В это время машина 2 была остановлена. Предположим, что до наступления момента времени jq был составлен график работы оборудования Рис. 36. с целью минимизации общих издержек производства. В момент времени jq производство должно быть увеличено до 3 единиц в час, а в момент хп оно снова должно быть сокращено до 2 единиц в час. В момент х2 производство надо увеличить до четырех единиц в час, а в xn-i опять сократить до уровня трех единиц в час. В момент времени хх должно быть принято решение, пустить ли машину 2, которая имеет низкие маргинальные издержки производства добавочной единицы продукции в час, или получить необходимую единицу продукции в час на машине 1, если заранее известно, что в момент хп машину 2 придется остановить. При планировании в момент Xi производства дополнительной единицы продукции в час учитывается длительность периода увеличенной потребности, отмеченного штриховкой на рис. 36. Тот факт, что в дальнейшем в момент х2 потребности возрастут до 4 единиц в час, не принимается во внимание до тех пор, пока не принято первоначальное решение об увеличении производства до 3 единиц в час. После принятия решения рассматривается следующее увеличение производства (то есть до 4 единиц в час). Если планируется, что третью единицу продукции в час (на период от *! до Хп) будет выпускать машина 1, то тогда дополнительные расходы на весь объем производства будут равны маргинальным издержкам производства третьей единицы продукции на машине 208
1, то есть (а3), умноженным на число произведенных единиц (в данном случае одна) и на число часов работы машины, которое равно Хп — хх. Короче —- издержки равны а3 (л^ — х4). Если третью единицу продукции в час получить на машине 2, то" дополнительные расходы равны пусковым расходам (М) плюс постоянные расходы (В), умноженные на время (Хп — *i), плюс маргинальные издержки на производство единицы продукции на машине 2 (Ai), умноженные на число часов работы (л^ — л^), плюс расходы на остановку машины N. То есть они равны M+BiXn-xJ + AilXn-xJ + N. План должен быть составлен так, чтобы в период времени от xt до Хп работала та машина, у которой дополнительные общие издержки на производство третьей единицы продукции минимальны. Машина 1 вносится в план работы в том случае, если выполняется условие as(Xn — xi)<M + B(xn — xi) + Ai(xn — xi) + N. A) Для двух машин такой расчет выполнить довольно просто, однако если речь идет о большом числе машин, то задача сильно усложняется. И в этом случае желательно иметь простой способ быстрого решения вопроса, какую из машин надо включить в график. Ниже излагается такой метод. Разделив неравенство A) на (л^ — jq), получим *<Т^ + *+^+7^вС<*"-*>- B) Таким образом, дополнительные издержки производства третьей единицы продукции на машине 1 должны быть меньше суммы расходов на пуск и остановку в среднем за д^ — xt часов и маргинальных издержек выпуска единицы продукции на машине 2. Мы назвали выражение B) средними издержками. Конкретно они являются издержками производства одной единицы продукции в час на машине 2 в течение периода времени от Хп до xt часов, если известно, что машина 2 пускается в начале и останавливается в конце этого периода. Для обозначения средних издержек будем пользоваться той же записью, что и в уравнении B), а именно С (хп — *i). Чтобы облегчить процесс выбора решений, можно составить таблицы средних издержек для каждой из машин в расчете на каждое обычно встречающееся в практике приращение производства и на продолжительность работы (в единицах времени), которая, как правило, является# длительностью полного рабочего цикла. Для машины 2 приращение объема производства можно было бы принять равным одной, двум, трем и четырем единицам продукции в час. 14 Заказ № 195 209
Если приращение продукции не постоянно, следует рассчитать средние и маргинальные издержки, приходящиеся на одну общую для них единицу прироста продукции с тем, чтобы можно было их взаимно сравнить. В рассмотренном выше примере это сравнение не представляет трудности, но для электрических генераторов было необходимо использовать в качестве базы сравнения затраты на один мегаватт в час в долларах. Эта задача рассматривается далее. Для компании, у которой нагрузка колеблется в течение суток, средние издержки можно рассчитать на период продолжительностью от 1 до 24 часов. В приведенном примере, если бы решался вопрос о том, какую машину загрузить в период от Xi до хп производством третьей единицы продукции, маргинальные издержки производства третьей единицы на машине 1 (то есть а3) сравнивались бы со средними издержками выпуска единицы продукции на машине 2 за период (Хп — *i) часов, то есть С (Хп — Xi). Машина, имеющая меньшие издержки, была бы внесена в график. После принятия решения относительно производства третьей единицы продукции в час рассматривается следующее приращение, то есть выпуск четвертой единицы в час, и т. д. до тех пор, пока не будет закончен план для той части цикла, в течение которой объем производства возрастает. Если машина 2 не включена в план работы в период от xt до х2у может оказаться, что при увеличении производства каждый раз на единицу маргинальные издержки для машины 1 будут всегда превышать средние издержки для машины 2. Однако если окажется, что средние издержки при планировании производства двух единиц продукции на машине 2 в период от х2 до Хп-х часов меньше маргинальных издержек при планировании их выпуска на машине 1, то тогда в план работы на этот период должна быть включена машина 2. Из сказанного ясно, что необходимо учитывать средние издержки на приращение производства на 2 и более единиц в час. Рассмотрим, например, план на рис. 36. Здесь мы сталкиваемся с таким случаем в период от jq до х2, когда объем производства увеличивается только на единицу в час. Надо ли увеличить нагрузку машины 1 до 3 единиц продукции в час, а затем в момент х2 (когда будет пущена машина 2), снова ее снизить? Или следует пустить машину 2 в момент х{? Если учитывать только относящиеся сюда издержки, то машину 2 нужно пустить в момент хи если сумма маргинальных издержек на выпуск первой единицы продукции в час машиной 2 (то есть А^ и постоянных эксплуатационных расходов В меньше маргинальных издержек производства третьей единицы на машине 1 (то есть а3). Короче — в этом случае At + В < at. Расходы на пуск и остановку машины здесь не включены, так как они являются единовременными и рассматриваются для периода Х2 Хп—\. Тем не менее, хотя такие сравнения возможны, они не нужны при большом числе машин и циклическом характере нагрузки 210
с резкими пиками и спадами. Обычно нагрузка увеличивается довольно быстро на величину, значительно превышающую мощность отдельных машин. Именно так изменялся спрос на продукцию в компании, подвергнутой изучению. Здесь можно было применить простой метод средних издержек. При больших постоянных расходах, а также расходах на пуск и остановку машин может оказаться, что средние издержки для машин всегда будут выше маргинальных издержек. В таком случае планирование сильно упрощается — увеличивается до максимума нагрузка работающих машин, а затем рассматривается вопрос о пуске резервных машин. Поэтому здесь можно обойтись без метода средних издержек. Из вышесказанного знакомимся с основными идеями метода средних издержек при построении плана производства. Однако для полноты этого метода применительно к рассмотренному выше типу задач нужно использовать еще некоторые дополнительные правила. Они будут изложены в следующем разделе. 3. ДОПОЛНИТЕЛЬНЫЕ ПРАВИЛА МЕТОДА СРЕДНИХ ИЗДЕРЖЕК 3.1. СРАВНЕНИЕ МАРГИНАЛЬНЫХ ИЗДЕРЖЕК Если в момент времени Xi работают обе машины 1 и 2 (см. рис. 36), то при увеличении нагрузки от 2 до 3 единиц в час следует запланировать увеличение производства на той машине, у которой выпуск следующей единицы продукции сопряжен с наименьшими маргинальными издержками. Аналогично, когда работают обе машины, а нагрузка уменьшается, то первой выключают машину, имеющую наибольшие маргинальные издержки производства. Так поступают до тех пор, пока одна из машин достигает минимальной нагрузки и останавливается. Рассмотрим теперь остановку машин. 3.2. ОСТАНОВКА МАШИН Чтобы разработать правила остановки машин, рассмотрим сначала случай, когда работают обе машины 1 и 2. В час они изготавливают 4 единицы продукции. Три из них выпускаются машиной 1 и только одна — машиной 2. В момент времени Хп нагрузка уменьшается с 4 до 3 единиц в час, а в момент лг22, как показано на рис. 37, опять возрастает до 5 единиц в час. В момент х0 происходит еще одно уменьшение нагрузки, на этот раз до 2 единиц в час. Затем, в момент xiU нагрузка увеличивается до 3 единиц в час. Рассматривая снижение нагрузки в момент хп с 4 до 3 единиц в час, 14* 211
надо принять во внимание продолжительность нового уровня, который в примере сохранится с момента Хп до момента х22. (На рис. 37 показано штриховкой.) Дальнейшее уменьшение нагрузки до 2 единиц в час рассматривается после того, как принято первое решение. В момент времени Хп надо выбрать между двумя возможностями: 1) остановить машину 2 и получать 3 единицы продукции с машины 1 или 2) сократить нагрузку машины 1 на единицу продукции в час. Предположим, что в момент x22i когда снова потребуется 5h *! /I- iiii ш. тжж U i 1 ' 1 i ! ! ! Х0 -J(ff Часы х22 Рис. 37. выпускать 4 единицы в час, будет опять пущена машина 2. Подразумевается еще, что в период, предшествовавший моменту Хп, работа машин планировалась таким образом, чтобы минимизировать общую сумму расходов. Теперь надо принять решение, при котором минимизируется сумма производственных расходов за отрезок времени от Хп до х22. Дополнительные расходы при выборе первого из двух альтернативных решений составили бы сумму затрат на пуск и остановку машины 2 плюс издержки на производство третьей единицы продукции на машине 1. Таким образом, общая сумма расходов для альтернативы A) равна: M + N + a3(x22—xn). Сумма дополнительных расходов для второй альтернативы равнялась бы издержкам производства единицы продукции в час на машине 2 за (х22 — *п) часов. Общие расходы для альтернативы B) равны At (х22 — хп) + В(х22—хп) = (Ai + B) (x22—xn). Машина 2 должна быть остановлена, если расходы, связанные с альтернативой B), больше расходов, соответствующих альтернативе A). (Al + B)(x22 — xn)>M + N + a3(x22—xn). C) 212
Если перенести член а3 (х22 — Хп) в левую часть неравенства, то получим выражение (Ai + B — a3)(x22—xn)>M + N. D) Следовательно, машина 2 должна быть остановлена в том случае, если экономия при производстве продукции на машине 1 (то есть разница издержек производства на машинах 1 и 2) больше расходов на пуск и остановку машины 2. Этот расчет мог бы занять значительное время, если бы было много машин. Для большинства плановых решений вполне удовлетворительным будет предлагаемый метод аппроксимации. Если выражение D) разделить на (Ai + В — а3), то получим v v ^ М+К E) Величина (М + N)/(Ai + В — а3) называется критическим временем остановки. Если машина 2 не требует по истечении критического времени остановки, то ее останавливают. При использовании метода критического времени остановки нужно решить вопрос о выборе значения маргинальных издержек для машины 1. В различное время может быть введено в расчет любое из значений маргинальных расходов а2, а3 и а4. В задаче для двух машин не представляет большого труда составить таблицу критического времени остановки для каждой величины маргинальных издержек машины 1. Однако, когда машин много, на такую таблицу требуются весьма значительные затраты времени. Чтобы упростить задачу, нами разработан метод приближенного решения, который в большинстве случаев дает оптимальные результаты. Суть его в том, что для машин, которые обычно останавливают при уменьшении нагрузки, производится сравнение со средними маргинальными издержками более экономичных машин, взятыми при таких нагрузках, при которых менее экономичные машины обычно остановлены. Для облегчения планирования можно составить таблицу критического времени остановки. Рассмотрим теперь второе правило остановки, которое применяется тогда, когда обе машины 1 и 2 работают с наименьшей допустимой нагрузкой, причем она продолжает падать. Это значит, что одна из машин должна быть остановлена. Рассмотрим приведенный на рис. 38 график-прогноз. Если в момент времени хр остановить машину 1, то экономия эксплуатационных расходов будет равна издержкам производства единицы продукции на машине 1 за время простоя машины минус расходы на пуск и остановку: 0i(*n—xp) — (m + n). Предполагается, что в момент Хц, когда нагрузка увеличится до 2 единиц в час, машина 1 будет снова пущена. Аналогично, если 213
остановить машину 2, то экономия равнялась бы Л(*ц-*р)-(Л1 + Л0. Должна быть остановлена машина, которой соответствует при этом наибольшая экономия. Для обычно встречающихся величин V #2 О Хр *п Часы Рис. 38. простоев можно составить таблицу очередности остановки машин, работающих при минимальных нагрузках. Нами рассмотрены все правила, необходимые для решения поставленной задачи планирования. Сводка этих правил дается в следующем разделе. 4. СВОДКА ПРАВИЛ ПЛАНИРОВАНИЯ Пусть задана кривая предполагаемой нагрузки. Тогда начиная с первого часа (или любого подходящего периода времени) рассматриваем по очереди один за другим каждый час и определяем, какие машины и с какой нагрузкой надо включить в план, причем поступаем следующим образом. 4.1. ПРИ ВОЗРАСТАЮЩЕЙ СУММАРНОЙ НАГРУЗКЕ * а) Все имеющиеся машины работают. Увеличиваем нагрузку машины с наименьшими в каждый данный момент маргинальными издержками, повторяя это 2 до тех пор, пока вся потребность не будет удовлетворена. 1 Речь идет о суммарной потребности, равной суммарной продукции, получаемой на всех работающих машинах.— Прим. ред. 2 Подразумевается повторение для каждой очередной единицы прироста объема продукции. После того как нагрузка машины с минимумом маргинальных издержек возрастет на единицу, эти последние для данной машины могут измениться и минимум может перейти на другую машину.— Прим. ред. 214
б) Часть машин работает, остальные—стоят. 1) Следует определить число часов, в течение которых сохранится данный уровень увеличившейся нагрузки. 2) Из числа работающих машин находим такую, у которой маргинальные издержки в данный момент минимальны. Затем выбираем из числа неработающих машину с наименьшей суммой средних издержек в расчете на число часов работы с увеличенной нагрузкой. Полученные единицы прироста продукции планируем на той из этих двух машин, по которой требуются меньшие затраты. Это повторяем до полного удовлетворения возросшей потребности. 4.2. КОГДА НАГРУЗКА УМЕНЬШАЕТСЯ а) Ни одна из машин не работает с минимальной нагрузкой. Следует уменьшать нагрузку машин с максимумом маргинальных издержек, пока не будет достигнут заданный пониженный уровень нагрузки. б) Некоторые машины работают с минимальной нагрузкой* 1) Определяем число часов, в течение которых сохранится данный уровень пониженной нагрузки. 2) Останавливаем машины, работающие с минимальной нагрузкой, если продолжительность простоя машины больше критического времени ее остановки. 3) Производим, если необходимо, дальнейшее снижение нагрузки, уменьшая ее на машинах с максимумом маргинальных издержек при данной нагрузке, а также на машинах, работающих при нагрузках, выше базисной. в) Все машины работают с минимальной нагрузкой. Останавливаем машину с наибольшей разностью между суммой издержек при работе в течение промежутка времени, равного возможному простою, и суммой расходов на пуск и остановку машины. 5. ПРИМЕНЕНИЕ МЕТОДА СРЕДНИХ ИЗДЕРЖЕК Изложенный выше метод средних издержек был применен к 17 паровым электрогенераторам, работавшим на угле. Графики суточных нагрузок в будние дни с понедельника по пятницу выглядят так, как показано на рис. 39. Типичный график суточной нагрузки в субботние и воскресные дни представлен на рис. 40. Рис. 41 показывает типичные характеристики генератора. У каждого из генераторов расходы на пуск и остановку были весьма велики. Постоянную часть производственных затрат составляли издержки холостого хода, которые возникают при работе генератора и исчезают после его остановки. 215
Их можно рассматривать как теоретические издержки при работе генератора без нагрузки. Однако генераторы не могут работать с нулевой нагрузкой, так как при этом режим их работы 1000 I | 500 I 12 12 Часы Рис. 39. Типичный график нагрузки в будние дни (с понедельника по пятницу). нестабилен. Минимальная рабочая нагрузка была названа базисной нагрузкой. Она составляет приблизительно 30% максимальной 1000 i * 500 1 12 Часы 12 Рис. 40. Типичный график нагрузки в субботние и воскресные дни. нагрузки генераторов. У каждого из генераторов было по 7 вентилей управления, которые по очереди открывали при увеличении нагрузки. Для каждого вентиля были рассчитаны маргинальные издержки, представляющие увеличение производственных расходов при открытии одного вентиля. Рост нагрузки при каждом 216
открытии вентиля колебался от вентиля к вентилю и от генератора к генератору. Чтобы сделать данные сопоставимыми, маргинальные издержки для каждого вентиля были выражены в долларах на мегаватт-час. Затем были построены таблицы маргинальных издержек, записанных для каждого вентиля в возрастающем порядке в пределах каждого генератора. Маргинальные издержки по каждому генератору росли с увеличением нагрузки. Если бы эти маргинальные издержки были постоянными или уменьшались, то сначала Нагрузки) мегаватты Рис. 41. планировали бы увеличение нагрузки действующих генераторов, до максимальной, а затем вводили бы резервные генераторы. В этих случаях можно обойтись без метода средних издержек. Вышесказанное характеризует основные факторы, которые необходимо учитывать в задаче с генераторами. Следует принимать во внимание также некоторые другие факторы, но дирекция компании пожелала вначале получить решение, учитывающее только основные факторы, с тем чтобы в дальнейшем были бы включены и другие. До применения метода средних издержек компания планировала работу действующих генераторов по методу маргинальных издержек, а для запуска и остановки генераторов при росте или падении нагрузки пользовалась комплексом правил. Эти правила были разработаны главным образом методом «проб и ошибок», исходя из влияния определенных изменений плана работы генераторов на сумму затрат. Было/ например, обнаружено, что при определенной последовательности включения генераторов можно снизить производственные затраты по сравнению с существующи- 217
ми. Однако, составляя план загрузки генераторов, компания не располагала способом непосредственного использования в расчетах данных о затратах на холостой ход, пуск и остановку генераторов. Пользуясь способом средних издержек, *она получила возможность просто и легко принять в расчет эти расходы. Чтобы облегчить практическое использование метода средних издержек, были составлены таблицы средних расходов для открытия каждого вентиля на время от одного до 24 часов. Для сопоставимости данных таблицы с маргинальными издержками, средние 1000 i * 500 I 12 12 Часы Рис. 42. Типичный график нагрузки в будние дни (с понедельника по пятницу). издержки рассчитывались в долларах на мегаватт-час. Эти вычисления были запрограммированы для электронно-вычислительной машины применительно к существующим в данный момент значениям маргинальных издержек. В результате, помимо экономии на механизации 3000 вычислений, получена возможность быстрого пересчета таблиц в случае уточнения исходных данных о затратах. Критическое время остановки (то есть при невозможности загрузки машины — такая длительность предполагаемого простоя, превышение которой указывает на необходимость остановки машины) рассчитывалось путем сравнения маргинальных издержек менее экономичных генераторов при базисных нагрузках с маргинальными издержками двух самых экономичных генераторов. Последние два генератора работали постоянно, их останавливали только для технического обслуживания. Такое упрощение приводило при составлении плана лишь к незначительным ошибкам. Поскольку нагрузка всей системы никогда не уменьшалась до уровня, при котором все генераторы работали бы с базисной нагрузкой, не было надобности устанавливать очередность остановки генераторов, имеющих базисную нагрузку. 218
При наличии таблиц можно было довольно быстро составить план работы генераторов, если был известен прогноз нагрузки на следующие сутки. Практически график нагрузки на 24 часа составлялся менее чем за 30 минут. Например, при составлении плана работы генераторов при изменении суточной нагрузки, показанном на рис. 39, прогнозируемая кривая нагрузки разбивалась на секции, отмеченные на рис. 42 штриховкой. Затем по очереди рассматривалась каждая секция до тех пор, пока график не был полностью готов. В результате сравнения существовавшего метода планирования и метода средних издержек не было обнаружено существенного различия между ними. Так как в обоих методах составления графиков нагрузки работающих генераторов использовались маргинальные издержки, а характеристики генераторов обусловливали весьма ограниченные возможности выбора, то нет ничего удивительного в том факте, что оба метода давали одинаковые планы. Однако метод средних издержек позволил оценивать в связи с планом затраты, которые прежде не поддавались прямому учету. Это явилось шагом вперед в направлении улучшения календарного планирования, после того как все другие действующие ограничения были включены в основной метод. 6. ЗАКЛЮЧЕНИЕ Метод средних издержек позволяет учитывать дополнительные издержки,- постоянные затраты холостого хода и расходы на пуск и остановку группы машин, выпускающих однородную продукцию. Метод прост и ненамного сложнее, чем планирование по маргинальным издержкам. Затраты времени при его применении на практике невелики. Так как метод используется людьми, то в процессе составления графиков можно легко вносить ограничения и изменения, не следуя за методом слепо. К моменту написания этой работы метод средних издержек с точки зрения проведения расчетов был значительно проще методов линейного и динамического программирования.
ЧАСТЬ 111 Модели целочисленного программирования для календарного планирования При календарном планировании единичного и мелкосерийного производства график должен быть составлен так, чтобы любая работа начиналась не раньше, чем завершены все непосредственно предшествующие ей работы. Следовательно, необходимо тем или иным способом получать информацию об окончании каждой работы. Очевидно, носителем такой информации может быть переменная, которая равна единице, если данная работа окончена, а в противном случае равна нулю. Используя эту идею и ее варианты, задачу календарного планирования можно сформулировать как задачу целочисленного линейного программирования, что показано Алэном Мэном в главе 12 «Задача календарного планирования для предприятий единичного и мелкосерийного производства». Существуют по крайней мере три такие формулировки поставленной задачи, и все они приведены в упомянутой главе. Как показывают оценки Мэна, одна из трудностей формализации заключается здесь в чрезвычайно большом числе переменных. Однако его формулировка, по-видимому, является наиболее сжатой по сравнению с любой известной в настоящее время. Наряду с трудностями, возникающими при первоначальной постановке задачи, применение целочисленного программирования пока что не во всех случаях приводит к удовлетворительным результатам. Эти проблемы рассматриваются в следующих двух главах. Впервые алгоритм решения задач целочисленного программирования был опубликован в 1958 г. Ральфом Гомори, что вызвало к жизни множество 220
работ, связанных с задачами, к которым можно было приступить на этой основе. Часто встречаются практические задачи линейного программирования, по своей сути требующие целочисленных решений, так как нередко бывает, что единицы, в которых выражаются как ресурсы (оборудование, персонал и пр.) , так и параметры их использования неделимы. Конечно, такие задачи можно решить с помощью обычного линейного программирования и затем попытаться «округлить» полученные результаты, с тем чтобы ответ был выражен в целых числах. Однако простые примеры показывают, что элементарные правила округления, такие, как обычное «научно обоснованное округление», не дают оптимальных результатов. Следовательно, алгоритмы целочисленного программирования совершенно необходимы. В гл. 13 настоящей книги Гомори изложил один из последних разработанных для этого случая алгоритмов. Здесь предполагается, что все первоначальные данные выражены в целых числах и в дальнейшем при использовании целочисленного алгоритма составляются таблицы, которые также содержат только целые числа. Алгоритмы целочисленного программирования отличаются от алгоритмов обычного линейного программирования тем, что в процессе выполнения алгоритма получают новые ограничения и вводят их в таблицу. Целочисленный алгоритм обладает тем преимуществом, что каждое вновь вводимое ограничение немедленно используется как направляющая строка и затем исключается. Следовательно, объем запоминаемых данных не увеличивается в ходе решения, этим алгоритм Гомори отличается от предшествующих алгоритмов. Хотя доказано, что алгоритм имеет конечное число шагов, в экспериментах, о которых сообщает Гомори, оно колебалось в очень широких пределах и не поддавалось предварительной оценке. По этой причине до настоящего времени различные алгоритмы целочисленного линейного программирования применялись для решения реальных задач только в порядке эксперимента. В настоящее время Гомори и другие ведут большую исследовательскую работу с целью улучшения этих алгоритмов. В гл. 14 книги А. Стори и X. Вагнер сообщают о применении алгоритмов Гомори для решения задачи календарного планирования в формулировке Вагнера. Их подход был заведомо экспериментальным с использованием как орудия исследования электронно-вычислительной машины, служившей для выполнения экспериментов на основе различных идей решения задачи календарного планирования в цехах с единичным и мелкосерийным производством. Вначале они описывают некоторые простые испробованные ими эвристические правила, от которых они впоследствии отказались ради формулировки целочисленного программирования. Были получены очень разнообразные и обнадеживающие результаты, однако, как отмечают сами авторы: «Мы еще не нашли такого метода целочисленного программирования, который можно было бы применить для быстрого и надежного решения большинства задач по определению последовательности выполнения станочных работ». Хотя авторы этой части книги сообщают о сравнительно ограниченном числе положительных результатов, метод целочисленного программирования остается одним из в высшей степени многообещающих направлений дальнейших исследований по календарному планированию в индивидуальном и серий- -ном производстве. 221
ГЛАВА 12 Задача календарного планирования для предприятий единичного и мелкосерийного производства А. С. МЭН1 Допустим, что условием задачи по определению последовательности обработки предполагается выполнение п таких рабочих заданий, каждое из которых требует загрузки одного станка в течение целого числа единиц времени (для конкретности примем за единицу времени день). В общем случае для производства любого конечного продукта требуется выполнить последовательно несколько рабочих заданий. Решением задачи календарного планирования является такое распределение отдельных работ во времени, которое удовлетворяло бы 1) необходимой последовательности (например г детей сначала моют, потом вытирают); 2) ограничениям, связанным с интерференцией технологических маршрутов 2 (к примеру, в одной ванне нельзя одновременно купать годовалого и трехлетнего ребенка. Все родители, несомненно, искренне надеются, что такие задания можно выполнить быстрее чем за день). Пусть каждое из неизвестных xjt выраженное целым числом, указывает день, когда должно начаться выполнение задания / (xj = 0, 1, . . ., ТK. Сформулируем задачу в постановке Джонсона: план должен быть составлен таким образом, чтобы минимизировать производственный цикл, то есть календарное время, соответствующее выполнению всех заданий при условии ограничений, накладываемых последовательностью операций и наличием оборудования, а также сроками поставки отдельных изделий. 1 Работает в Станфордском университете. 2 В оригинале interference или machine interference — помехи в результате столкновения сроков выполнения разных работ на одном и том же станке. 3 Можно предположить, что наши априорные знания достаточны, чтобы выбрать (большое) целое число 7\ которое было бы заведомо завышенным верхним пределом неизвестных xj. Цели такого предположения станут понятны из дальнейшего изложения. 222
I. ОГРАНИЧЕНИЯ, СВЯЗАННЫЕ С ИНТЕРФЕРЕНЦИЕЙ МАРШРУТОВ Допустим, что для выполнения работ / и k требуется соответственно cij и ak последовательных дней г. Если надо исключить возможность одновременного выполнения этих работ на одном и том же станке, потребуем, чтобы одна из них опережала другую на время, необходимое для того, чтобы первая работа была завершена до начала второй, то есть Xj—Xk>a>hi или иначе, л;* — xj>cij. (о Для того чтобы представить это условие в виде линейного неравенства с неизвестными, выраженными целыми числами, удобно ввести новую переменную yjk с целочисленными значениями и записать следующие ограничения: 0<yJh<U B) (Т + ak) yjk + (Xj — xk) > ak, C) (T + aj) A -yJh) + (xh-xj) >aj. D) Из условия B) следует, что yjk равен нулю или единице. Известно также, что \xj — xh |<7\ Таким образом, результат условий C) и D) можно резюмировать следующим образом. Если Г>0 (Xj—Xk) ' =0 <0 то Г °' П f ° { 1 J I 0, 1 где первая совокупность значений yjk имеет место при условии C), а вторая — при условии D). Следовательно, при (Xj — xk) = 0 yjk не имеет значений, удовлетворяющих как условию C), так и D). С другой стороны, если (xj — xk) Ф 0, то yJk равен нулю или единице в зависимости от того, какая работа выполняется первой. Таким образом, уравнения C) и D) обеспечивают начало первой работы в достаточно ранний срок для завершения этой работы до начала второй. Отметим, что при классическом варианте линейного программирования было бы невозможно точно установить такое альтернативное условие, как A). Это исключающее интерференцию маршрутов ограничение 1 В несколько более сложной модели следует допустить возможность эффекта «технологического наследования», то есть зависимости времени обработки изделия от наладки оборудования, оставшейся после изготовления предыдущего изделия. 223
приводит непосредственно к системе невыпуклых ограничений для неизвестных. Не удивительно, что открытие целочисленного программирования Гомори [4] возродило интерес к проблеме интерференции технологических маршрутов. 2. ОГРАНИЧЕНИЯ, СВЯЗАННЫЕ С ПОСЛЕДОВАТЕЛЬНОСТЬЮ ВЫПОЛНЕНИЯ РАБОТ После того как записаны условия, исключающие интерференцию маршрутов, остальная часть формализации задачи выполняется почти автоматически. Если работа / должна предшествовать &, то это означает, что работа k должна быть выполнена по крайней мере на aj дней позже чем /. Это условие целочисленного программирования можно записать как */ + Я/<**. Eа) Аналогичным образом можно записать «слабую» взаимосвязь в последовательности. Например, для того, чтобы показать, что работы i и / предшествуют работе k, но ограничения, влияющие на последовательность выполнения i и /, отсутствуют, достаточно дать два неравенства ** + я*<**1 xj + ajKXk- E6) Может также случиться, что между работами / и k происходит задержка, равная точно 67-А дням. Это ограничение выражается равенством xj + aj + Qjk = xh. Eв) 3. СПЕЦИФИЧЕСКИЕ ТРЕБОВАНИЯ, ОБУСЛОВЛИВАЕМЫЕ СРОКАМИ ПОСТАВКИ Цех могут обязать обеспечить поставку отдельных изделий не позже установленной даты. Если работа / является последней операцией, выполняемой в цехе над изделием, и если изделие должно быть готово ко дню dj, то это требование можно записать формулой Xj + aj<Cdj. F) 4. ОБЩИЕ ТРЕБОВАНИЯ В СВЯЗИ С ПОСТАВКАМИ Согласно Джонсону [6], наша цель заключается в минимизации производственного цикла или общего календарного времени, соответствующего выполнению всех предполагаемых работ. Обозначим это календарное время через /. Теперь задача заключается в минимизации / относительно неотрицательных целых Xj и у^ при условии 224
ограничений B) — F), а также xj + aj^t (/ = 1, ..., п). G) Экономист, вынужденный, как в данном случае, пользоваться малопонятной минимизируемой величиной, отличной от издержек производства в долларах; встретит критерий Джонсона, минимизацию производственного цикла t, без особого энтузиазма. В защиту выбора этого критерия следует, однако, сказать, что между t и издержками производства в долларах существует, по-видимому, корреляционная связь. При минимизации t мы можем также предположительно получить следующие выгоды, выражаемые в издержках производства и прибыли: 1) уменьшение остатков незавершенного производства, 2) сокращение средней длительности выполнения заказов, и 3) сокращение простоев, которые прежде возникали вследствие одновременного выполнения всех имеющихся заказов — тем самым расширяется возможность выполнения большего числа новых заказов. В меру того как все эти факторы действуют в одном направлении, календарное время могло бы явиться приемлемой заменой для издержек производства. Очередность выполнения работ, обеспечивающая минимальный производственный цикл, достаточно хорошо отразилась бы также на критерии в виде издержек производства в долларах. 5. НЕКОТОРЫЕ ВОПРОСЫ, СВЯЗАННЫЕ С РАСЧЕТАМИ Если исключить все дополнительные переменные и минимизируемое /, то число неизвестных в данной задаче будет равно общей численности Xj и yjk. Таким образом, если имеется п работ и т возможных конкурирующих пар загрузок станков, то общее число неизвестных составит п + т. Например, для случая 5 станков, на каждом из которых должно быть выполнено 10 работ, будем иметь п = 50 и т = х/2 E) A0) A0—1) = 225. Поэтому количество целочисленных-переменных Xj и yJk составит 275, то есть требуется внушительный, но отнюдь не невыполнимый объем вычислительной работы г. 1 Для сравнения укажем, что если бы задача была сформулирована так, как это сделано во второй части статьи Вагнера [7], то общее число переменных достигло бы 600, не считая и здесь дополнительных переменных и минимизируемой продолжительности производственного цикла. Вообще, придерживаясь формулировки Вагнера, требуется ввести в задачу немногим больше чем удвоенное число неизвестных сравнительно с предлагаемой в данной главе постановкой задачи [последняя содержит меньше ограничений — неравенств, потому что в предложенной Вагнером формулировке задачи требуется большое число неравенств для записи условия (8)]. Почему при оценке сложности расчетов внимание сосредоточивают на количестве основных переменных и пренебрегают числом ограничений? Дело в том, что решение задач целочисленного программирования методом, предложенным Гомори, заключается в повторяющемся применении алгоритма 15 Заказ № 195 225
Следует отметить, что если бы существовал алгоритм решения «смешанных» задач целочисленного программирования, где часть переменных принимает только целые значения, а остальные могут быть непрерывными величинами, то наша модель календарного планирования очень хорошо подходила бы к категории таких «смешанных» задач. Неизвестные yjk обязательно должны быть дискретными. [Иначе было бы невозможно ввести условие A).] Однако эффективней и, вероятно, реалистичней было бы считать даты начала работ Xj непрерывными переменными, не подчиняя их условию целочисленное™. Успех применения такой модификации задачи всецело зависит от создания алгоритма решения «смешанных» задач и стоимости вычислительных работ. К числу важнейших вопросов исследовательской работы в этом направлении следовало бы отнести выяснение путей сокращения количества неизвестных у^. За исключением ограничений верхнего предела B), эти неизвестные применяются только в связи с интерференцией маршрутов C) и D). Так как в любой частной задаче многие из этих ограничений неизбежно окажутся излишними, можно было бы очень легко применить здесь программы для ЭВМ, разработанные в связи с принципом «вторичных ограничений» Данцига [3] Ч В задаче коммивояжера, например, записывают не все возможные «петлевые ограничения», а только те, которые были нарушены при выполнении предыдущих шагов [2]. При таком подходе к задаче календарного планирования затраты на ее решения в конкретных условиях, надо думать, экономически оправдываются. Когда производится оценка преимуществ точной оптимизации больших систем с помощью целочисленного программирования, исследователь не должен игнорировать возможность приближенной оптимизации методом Монте-Карло, которая сопряжена с меньшими расходами на вычисления. Недавно Геллер сообщил о весьма многообещающем начале работы в данном направлении [5]. двойственного симплекс-метода, где важнейшее значение имеет первоначальная численность небазисных переменных. Само собой разумеется, что при ограниченном до настоящего времени опыте вычислений при решении задач целочисленного программирования нельзя слишком полагаться на такие предсказания. Еще одно замечание. Как мне кажется, реальное преимущество формулировки Вагнера сравнительно с описанной возникает в том случае, когда чередование изделий на каждом из двух смежных (в последовательности обработки) станков одинаково. Этот случай действительно имеет очень большое значение, и я считаю, что подход Вагнера окажется здесь практически вполне целесообразным. 1 Ричард Левитан в настоящее время разрабатывает для задачи целочисленного программирования программу для ЭВМ, в которой применяется этот принцип.
ГЛАВА 13 Полностью целочисленный алгоритм целочисленного программирования РАЛЬФ Е. ГОМОРИ1 В этой главе описан новый способ целочисленного программирования, который отличается от прежних двумя следующими основными особенностями: 1) Он является полностью целочисленным; иначе говоря, если коэффициенты в исходной таблице являются целыми числами, то все коэффициенты остаются целыми в течение всего расчета. 2) Процесс решения задачи прост и во многом напоминает обычный двойственный симплекс-метод с той лишь разницей, что направляющий элемент всегда равен (—1). Цикл максимизации, добавления неравенства и другие характерные особенности алгоритма, описанного в [2], здесь устранены 2. Будем пользоваться символикой, использованной в [2]. Таким образом, мы рассматриваем задачу линейного программирования как задачу максимизации при неотрицательных переменных линейной формы z = a0,o+ S«o,j( — tj) (I) при ограничениях: i=n Xm = Clm, 0 + S am, j ( — tj), B) i=i 1 Работает в «Интернешнл бизнес мэшинз корпорейшн». 2 Здесь я хотел бы отметить влияние некоторых идей, выдвинутых М. Д. Маклройем из «Белл телефон лэборейториз». 15* 227
*1 = -1(-*|) B) иначе говоря, записывая в матричной форме, требуется максимизировать z при ^ограничениях: Х = А°Т°, А° = (а0, сц, ...,ап). ( z \ ( l \ Х = Xi %2 и г„ = -и -к C) \tn/ \~tnj Всюду предполагается, что столбцы a,-, j Ф 0 лексикографически положительны, то есть что задачу можно решать как двойственную. В противном случае это легко сделать. См., например, [31. При обычном двойственном симплекс-методе производится ряд исключений Гаусса из матрицы А0 (см. формулы 3); в результате обновляется набор небазисных переменных. При этом получают новые выражения типа Х = АТ, D) где вектор Т является вектором новых небазисных переменных» а А получают в результате преобразования матрицы А0 путем исключений Гаусса. В ходе этих последовательных шагов направляющий элемент выбирают по правилу двойственного симплекс- метода, в результате чего столбцы в матрицах всегда остаются лексикографически положительными. Когда а0 столбец свободных членов содержит только неотрицательные элементы (за исключением, возможно, первой позиции), то решение обычной задачи линейного программирования получено. Описываемый ниже алгоритм очень похож на только что рассмотренный. Однако вместо введения каждый раз новых, небазисных переменных в число исходных переменных задачи в ходе решения создаются новые переменные. Эти новые переменные вначале вводят в качестве базисных, добавляя к нижней части матрицы А в D) новое уравнение, а затем исключают преобразованием Гаусса новую переменную из базиса. 228
Теперь приступим к выводу этих новых соотношений, начиная с использованного как в [1] и [2], так и в данной работе. Рассмотрим типичное уравнение х = а0+ i>aj(-tj) E) или j=n ;=l то есть одно из уравнений D). Представим каждый коэффициент dj в E) и единицу в виде bjX + rjf где bj — целое число, г7- — остаток, X — положительное число, которое будет определено в дальнейшем. Таким образом, aj = bjk + rj = [aj/k]k + rj, / = 0, ...,л, 1=[1Д] + г, 0<г/<Я 0<г<Я 0<Я, F) где квадратные скобки [а] обозначают целую часть а. Подставляя выражения F) и E) и перенеся все оставшиеся члены, за исключением г0, в левую часть уравнения, получим 2 rjtj + rx = r0 + X{[a0/X] + S laA)(-tj) + ll/K)(-x)}. G) Любые неотрицательные целые значения х и tj, которые удовлетворяют условию E), удовлетворяют также условию G). Так как г7- положительны, то при неотрицательных л: и tj левая часть уравнения имеет неотрицательное значение. Далее, обратим внимание на правую часть уравнения, в особенности на выражение, взятое в фигурные скобки. Обозначим его через 5 s = [аоЩ + 'J [aj/X] (- tj) +11Д] (- *). (8) Очевидно, величина, полученная после подстановки в (8) тех же х и tj, окажется целым числом, так как все входящие в (8) коэффициенты — целые числа (хотя необязательно положительные). Но 5 является в действительности не только целым, но и неотрицательным числом. При отрицательном целом s, равном, например, —1, —2 и т. д., правая часть уравнения G) вследствие г0 < X приняла бы отрицательное значение, что противоречит неотрицательности левой части уравнения. Таким образом, 5, введенное уравнением (8), является новой неотрицательной целочисленной переменной. 229
Сначала рассмотрим случай, когда К = 1. При этом ИМ = 1, поэтому, подставляя E) в (8), имеем или ^-/о-'З/Л-'Л (9) где /7- обозначает дробную часть о,. Это уравнение послужило основой алгоритма, описанного в [1] и [2]. Роль его в новом методе раскрывается в конце этой статьи. Рассмотрим теперь случай, когда Х> 1. Так как ИМ = О, (8) имеет следующий вид: s = [a<A]+2 la А] (-*,), ИЛИ *=&о+2Гм-0)- (Ю) Соотношение A0) является новым уравнением, которое должно удовлетворять любому целочисленному решению исходной задачи линейного программирования при условии неотрицательности s. Таким образом, мы можем записать уравнение A0) в нижнюю часть матрицы D) и считать его строкой, в которой, возможно, находится направляющий элемент. Прежде чем идти дальше, необходимо привлечь несколько обстоятельств, существенных при использовании A0). При двойственном симплекс-методе направляющими могут быть только строки с отрицательным свободным членом (это означает невыполнение условия неравенства). Более того, в принятой нами записи только отрицательные элементы пригодны как направляющие. Следовательно, направляющая строка обязательно должна начинаться с отрицательного постоянного члена и иметь другие отрицательные элементы. Очевидно, aj<0=$bj = [aj/X]<0, так что если строку E) можно выбрать направляющей, то это относится и к строке A0), полученной из нее. Таким образом, мы убедились, что если в матрице D) вообще остались строки, пригодные как направляющие, то из любой из них можно получить новую строку A0) с тем же свойством. Если таких строк нет, то задача или решена, или не имеет решения. Теперь попробуем произвести над новой строкой преобразование, которое обратило бы направляющий элемент в (—1). Эта возмож- 230
ность очевидна: ведь при достаточно большом значении X все отрицательные bj становятся равными (—1), а все другие исчезают. Итак, при достаточно большом значении i направляющий элемент может быть только (—1). Однако, как будет показано в дальнейшем, мы могли бы поступить лучше. Рассмотрим эту возможность. Пусть J — совокупность индексов /, / ф 0, для которых а7- < 0. Тогда, если применение правила двойственного симплекс-метода к A0) дает направляющий элемент by = — 1, получим aj' = mina/. A1) Иными словами, если / 6 J — направляющий элемент оказывается равным (—1), то содержащий его столбец может быть только {лексикографически) наименьшим и с отрицательным элементом на пересечении со строкой E). Чтобы выбрать направляющий элемент, применяют обычное правило его нахождения, которое гласит, что направляющим является такой столбец а,', для которого выполняется условие ( -г— I аУ = т*п ( -г- ) aj- ^ ьу J ;eA bj J J Следовательно, -=- ау < -=у- aj для всех / ? J. A2) Если by= —1 и ^ — отрицательное целое число, ay^^raj^aj, то (Xj' = mina,-. i?J Так как bj не участвуют в выборе направляющего столбца, то в качестве такового будет выбран один и тот же столбец для всех тех Я, которые превращают E) в строку A0) с направляющим элементом (—1). Рассмотрим две такие Я, а именно А,4 и Я2. В результате преобразований строк типа A0) к столбцу свободных членов {нулевой столбец) будут прибавлены [b0/Xi]ayf или [b0/X2](ty. Очевидно, с уменьшением использованного коэффициента X уменьшается нулевой столбец и, следовательно, целевая функция. Это происходит потому, что в обоих случаях направляющий столбец один и тот же, а изменяется только коэффициент. Резюмируя изложенное выше, надо сказать, что при выборе к необходимо соблюдать следующие требования: 1) Эта величина должна пре- 231
вращать направляющий элемент в (—1) и 2) она должна иметь наименьшее возможное значение г. Теперь применим эти два требования для выбора X. Если ау — наименьший столбец а7- (/ ? J), аа;- — дру?ой столбец той же матрицы и если а,- должен иметь в новой строке компоненту, равную (—1), и должен быть выбран как направляющий столбец, мы для всех / 6 J должны получить (—\1Ь3)а^ау. Здесь bj — отрицательное целое число. Пусть \ij — наибольшее целое число, для которого A /\ij) aj^ay. (Ясно, что существуют целые числа» удовлетворяющие этому последнему неравенству, так как ему удовлетворяет 1.) 2 Тогда, для того чтобы ау был направляющим столбцом, необходимо выполнить условие -Ь=-[-т]<ъ <13> и наименьшим значением Я, удовлетворяющим неравенству A3), будет Заметим, что Xj не обязательно целое число. Для того чтобы для всех столбцовое (/ ? J) выполнить приведенные выше условия, мы должны иметь X по меньшей мере равное Ятт = тахЛ/. A5) Тогда выбор X приводит к выбору направляющего столбца ау, а поскольку для а у мы имеем \iy = 1, то — ау ^min > — > — &У\ Цу таким образом, L ^min J Резюмируем вышесказанное. Процесс получения минимального значения X можно разбить на следующие 4 шага: 1 Такое правило выбора X при условии A) имеет своим результатом наибольшие изменения в нулевом столбце. Оно не обязательно ведет к замещению исходной строки E) такой полученной из нее строкою A0), которая является настолько сильным неравенством, насколько это возможно, или всегда оказывается сильнее, либо всегда слабее, чем исходное неравенство. Например, из уравнения х = —4 — 3 (—/4) —5 (—t2) для X = 2 получим s = — 2 — 2 (—ti) — 3(—t2)\ для X = 3 s = —2—1 (—/J —2 (—t2); для X = 4 s = — 1 — 1 (—^)—2 (—t2). Из условия неотрицательности переменных в левой части уравнений можно записать неравенства 3^ + Ы2 ^> 4, 2^ + + 3/2 > 2, ^ + 2^ > 2, tt + 2t2 > 1. Второе из этих неравенств слабее, чем первое, третье — сильнее, четвертое — опять слабее первого. 2 Если это соотношение удовлетворяется для всех целых, то нельзя отдать предпочтение никакому столбцу aj перед aj,; Xj A4) может быть принят равным нулю. 232
1) Выбрать наименьший столбец а,- (/ 6 У), который явится направляющим столбцом ajo. 2) Для каждого столбца а7- (/ ? J) найти наибольшее целое число jjtj, при котором ( — ) а/ > а/0. 3) Определить Xj —:z^ . 4) Найти ЯтШ = max Xj. При выполнении шага 2 для каждого столбца обычно достаточно одного деления х. Теперь мы можем перейти к описанию алгоритма. Пусть имеется целочисленная исходная матрица Л°, допускающая постановку двойственной задачи. Выберем строку с отрицательным постоянным членом (если таких строк нет, то задача решена). В результате четырех шагов описанных вычислений найдем ЯтШ и направляющий столбец, после чего, использовав Xmin для образования новой строки типа A0), припишем последнюю снизу матрицы А. Далее выполним в отношении новой строки исключение Гаусса, то есть введем 5 в качестве новой небазисной переменной, а новую строку вычеркнем. В дальнейшем эти операции повторяются. Вследствие того, что направляющий элемент равен (—1), матрица все время остается целочисленной. В приложении к главе дается числовой пример. Покажем далее, что при определенных правилах выбора строки этот процесс не бесконечен. Допустим, что задача имеет некоторое целочисленное решение X', при котором целевая функция приобретает значение z0. На любой стадии вычислений переменные х представлены столбцом коэффициентов плюс сумма неотрицательных столбцов, умноженных на неотрицательные переменные (взятые со знаком минус) X = ao + '%aj(-tj). A6) Так как при любом решении tj принимает неотрицательные значения, очевидно, что любое решение X лексикографически равно или меньше а0. Кроме того, после каждого шага а0 лексикографически уменьшается, так как к ней прибавляется отрицательное кратное одного из столбцов. Таким образом, мы имеем убываю- 1 Если оба столбца olj и olj0 начинаются с неравных нулю элементов a0j и aoJoi то ПРИ a0ij> не кратном a0jo, имеем \ij= [a0,j/a0jo]. Если a0j кратно aoJo, то \ij = a0j/a0jo при а; > (a0j/a0jo) aj0\ в противном случае [ij = =z (aoj/aoJo) — !• Если рассматриваемые два столбца начинаются с неравного числа нулей (пусть aj.0 начинается с большего числа нулевых элементов), то N — произвольно большое число, a Xj = 0. Когда оба столбца имеют р нулей, сохраняется та же процедура, но с заменой a0j и a0jo на apj и apj0. Стоит отметить, что \ij0 всегда равно 1. 233
щую последовательность столбцов a0>aJ>aa0...>X/, A7) ограниченную снизу предполагаемым решением Х\ Допустим, что существует бесконечная последовательность такого рода. Так как мы оперируем с целочисленными векторами а0, а?, а* и т. д., элементы векторов изменяются на целые числа. Рассмотрим для примера первый элемент (целевая функция). Если бы он неограниченно уменьшался, то в конце концов стал бы меньше z0i первого элемента Х\ что невозможно. Следовательно, первый элемент может уменьшаться только строго определенное число шагов и затем должен оставаться постоянным с некоторым неизменным значением z'>z0. С этого момента второй элемент не должен увеличиваться, и теперь существуют две возможности: 1) он может достигнуть некоторого конечного значения и с этого времени оставаться постоянным или 2) может неограниченно уменьшаться. В первом случае следует перейти к третьему элементу, для которого существуют те же две альтернативы. Если для всех элементов реализуется первая альтернатива, то после конечного числа шагов элементы столбца а0 перестанут меняться. Так как а0 будет уменьшаться лишь до тех пор, пока в столбце свободных членов остаются отрицательные элементы, это означает, что таких элементов больше нет и задача решена. Тем самым правило, обеспечивающее конечное число шагов решения, должно исключать возможность второй альтернативы. Рассмотрим случай, когда альтернатива B) реализуется для первого элемента. После некоторого числа шагов элемент становится отрицательным и продолжает оставаться таковым в дальнейшем. Таким образом, строка этого элемента может быть выбрана в качестве строки E). Однако ее никогда не выбирают, потому что при выборе этой строки и при преобразовании ее в строку типа A0) направляющий столбец ау имел бы на пересечении с этой строкой отрицательный элемент а. у. Поэтому в результате преобразования свободный член данной строки сильно увеличился бы, что противоречит допущению о его невозрастании. Таким образом, если свободный член строк становится и остается отрицательным, то любое правило, с помощью которого рано или поздно будет выбрана эта строка, исключает возможность B) и приводит к конечному алгоритму. Ниже приводятся примеры таких правил. 1. Следует всегда выбирать первую сверху строку, содержащую отрицательный первый элемент. 2. Процесс выбора строки должен быть циклическим: сначала надо рассмотреть первую строку и, если ее свободный член неотрицателен, перейти к следующим строкам; после первой рассмотреть вторую строку и далее — следующие за ней. 234
3. При случайной выборке строк вероятность того, что алгоритм решения будет конечным, равна единице. Как пример правила, не охваченного приведенным доказательством конечности алгоритма, можно привести правило обычного симплекс-метода, согласно которому выбирается строка с наибольшим отрицательным свободным членом. Применяемые теперь нами правила выбора были получены частично методом проб и ошибок. Вначале пытались воспользоваться хорошо известным испытанным правилом обычного симплекс-метода, несмотря на отсутствие доказательства конечности процесса решения. На каждом шаге решения выбирали строку с наибольшим отрицательным свободным членом и преобразовывали ее в новую строку. Смысл здесь, конечно, заключался в том, что в результате преобразования первоначальной строки с большим отрицательным свободным членом можно было надеяться на достаточно большой свободный член в новой строке. Такой подход к решению был почти полностью неудачным. Пользуясь правилом обычного симплекс-метода, по-видимому, можно решать лишь простейшие задачи. Для примера приведем один из крайних случаев, когда задача с 7 переменными и 7 ограничениями — неравенствами, решенная позже за 10 шагов была снята с машины после 1200 шагов. По-видимому, эффективный метод состоит в рассмотрении не строк, а столбцов и построении новой строки таким образом, чтобы направляющий столбец был как можно больше. Существуют, как нам кажется, две причины, вследствие которых в данном случае более разумно применять в качестве критерия столбец, а не пользоваться правилом отыскания большого отрицательного свободного члена. Одна из них заключается в том, что в рассматриваемом полностью целочисленном методе целочисленное кратное направляющего столбца вычитается из нулевого столбца. Следовательно, достигаемый прогресс по меньшей мере соответствует по величине направляющему столбцу. В этом заключается отличие от обычного симплекс-метода, при котором «большой» новый столбец можно ввести только на очень низком уровне значений. Во-вторых, когда мы имеем дело с вырождением — а это обычное явление в задачах целочисленного программирования — степень вырожденности столбца существенным образом меняет дело. Иначе говоря, при рассмотрении любых двух столбцов <Л 0 7 3 2 1/ а2 = ( °\ 2 — 1 -4 2 V *) 235
любому кратному а2 должно быть отдано предпочтение перед любым кратным аи таким образом, решающее значение имеет столбец, а величина свободного члена рассматривается лишь во вторую очередь. Поэтому для этого вида целочисленного программирования, по-видимому, применим следующий метод. Во-первых, надо ранжировать столбцы матрицы в порядке убывания, присвоив им ранги 1, 2, 3, 4 и т. д. Обозначим ранг /-го столбца через С (/). Затем ранг любой строки, которая может быть выбрана, запишем следующим образом: R(i) = maxC(j). Здесь R (i) — ранг столбца, который был бы выбран направляющим, если бы для образования новой строки была бы использована строка i. Затем выбираем строку /0 по правилу R (i0) = min R (i). возможные г В настоящее время мы разрабатываем следующий еще более строгий подход. Сначала получим значения R (i) для всех строк, а не только для тех, которые могли бы стать направляющими. Затем выбираем строки i0 либо по приведенному выше правилу, либо по какому-либо другому, например по правилу наибольшего отрицательного критерия, и образуем соответствующую новую строку A0). Затем производим преобразование только для столбца свободных членов, то есть вычисляем отдельно числа atl 0 + Ь0а^0. Рассматриваем строки i, для которых это выражение отрицательно. Свободные члены соответствующих строк станут отрицательными после очередного преобразования матрицы. Если среди таких строк есть некоторые с рангом значительно меньшим, чем R (i), то выбираем одну — пусть это будет it. После умножения atll Jo на строку Ъ} и прибавления произведения к ряду i4 получаем новую строку с отрицательным свободным членом aiu 0 + b0aiu Jo. Ранг этой новой строки, безусловно, меньше R (i0), так как его элемент, принадлежащий столбцу /0, равен нулю, а элементы в столбцах, имеющих ранг > R (i)y неотрицательны. Последнее заключение вытекает из определения ранга, которое показывает, что обе рассматриваемые строки обладают этим свойством и из того факта, что aiuj0>0 вследствие R (i'i) < R (/о)- Теперь описанный выше процесс может быть повторен, причем роль исходной строки i& будет играть вновь созданная объединенная строка, которая используется для образования новых bj и т. д. х. Здесь основная идея заключается в использовании того обстоятельства, что, пытаясь удовлетворить неравенству, представленному строкой i0, мы нарушаем неравенство, представляемое строкой ii9 чтобы преобразовать новую строку и улучшить ранг направляющего столбца. 1 Фактически в базисном преобразовании здесь участвует только последняя, вновь созданная строка. Следовательно, оптимальное значение X необходимо выбрать только для этой строки, а для всех остальных к = —bj& будет достаточно иметь значение —1 какого-либо элемента в наименьшем столбце. 236
Хотя на первый взгляд эта схема расчета кажется довольно сложной, более детальное ее изучение показывает, что ожидаемый объем вычислений на каждом этапе здесь может быть значительно меньшим, чем при способе полного исключения. Таким образом, если число шагов (преобразований) значительно сокращается, использование рассматриваемых методов имеет смысл. До сих пор метод, положенный в основу нашего правила решения, являлся только грубым приближением к тому, что было сказано выше. Это правило подразделяется на две части: 1. Если все относительные стоимостные коэффициенты, то есть ^о,7,/=7^=0, отличны от нуля, или, иначе говоря, если мы имеем дело со случаем полной невырожденности, то используется правило обычного симплекс-метода, по которому выбирается строка с наибольшим отрицательным постоянным членом. 2. Если некоторые a0,j равны нулю, образуем функцию N (/), равную числу нулей от начала каждого столбца до первого положительного элемента. Позже N (/), приблизительно соответствующую рангам столбцов, используем как С (/) в первом из описанных выше методов. Применяя это правило, мы получили неустойчивые, но интересные результаты. Например, по этому правилу были решены 4 задачи с 15 неизвестными и 15 неравенствами. Во всех четырех задачах ограничения — неравенства были во всем одинаковы, кроме свободных членов, которые от задачи к задаче увеличивались на 2. Все коэффициенты при переменных оставались неизменными. Из этих задач три были решены соответственно за 17, 21 и 23 шага. Что касается четвертой задачи, то ее решение по этим правилам потребовало более 400 шагов. Для решения такой же серии, состоявшей из трех задач и содержавших 32 переменных в 32 неравенствах, потребовалось 23 и 156 шагов (во втором случае решение на электронно-вычислительной машине IBM-704 заняло 3 минуты). Третья же задача осталась нерешенной после 200 шагов. Хотя при решении других, реже встречающихся задач результаты были устойчивей, все же число неудачных решений еще велико. Имеются указания на необходимость исследования описанных вычислительных процессов. Обратимся теперь к связи рассмотренного метода решения задач целочисленного программирования с методом, изложенным в [1] и [2]. Вывод неравенств, изложенный в начале этой статьи, показывает, что описанный здесь алгоритм и алгоритм в [1 ] и [2] являются экстремальными случаями. В статьях [1] и [2] описан только тип неравенств, получаемых при Я = 1, в то время как теперь использованы лишь неравенства, полученные при Я > 1 г. Приняв Я = 1, можно получить нетривиальные направляющие строки, 1 Заметьте, что вывод неравенств не зависит от целочисленности aj. 237
если в нулевом столбце имеются нецелочисленные элементы независимо от наличия среди них отрицательных. Однако эти неравенства неприменимы, если мы имеем дело с полностью целочисленной матрицей. С другой стороны, неравенства, полученные при А, > 1, пригодны, когда в нулевом столбце встречаются отрицательные элементы, и неприменимы, если все элементы нулевого столбца неотрицательны, но среди них могут оказаться нецелочисленные. В табл. 1 показано, какие виды неравенств соответствуют различным состояниям нулевого столбца. Таблица 1 Некоторые члены нецелочисленные Все члены целочисленные Отрицательные свободные члены Х>1 Отрицательных свободных членов нет Решение задачи Оба класса неравенств, очевидно, можно объединить в алгоритм, обладающий многими интересными особенностями. Например, можно начать решение задачи обычным симплекс-методом, чтобы приблизиться к решению или, может быть; получить нецелочисленное решение. Затем, начиная с некоторого момента, можно производить преобразования только над дополнительными строками, получаемыми или для X = 1, или для А, > 1. Тот или иной вид неравенства пригоден для всех возможных случаев. Так как направляющий элемент равен или —1, или правильной дроби —fjy то число D, описанное в [2], будет теперь постепенно уменьшаться. При другом методе можно заранее установить для D пределы, и когда направляющий элемент обычного симплекс-метода будет их нарушать, то следует переходить к дополнительным строкам. Проблема округления может быть устранена, если оперировать постоянным D. Ясно, что можно создать много различных объединенных алгоритмов. К сожалению, пока что невозможно установить, какие из них лучшие. Приложение Пример Целочисленное программирование minz' = 10*!+14*2+21*3 или max z = ( —10*!+14*2+ 21*3) при ограничениях 8*1+11*2+9*з>12, 2*!+ 2*2+7*з > 14, 9*!+ 6*2 + 3*з > 10. 238
При каждом шаге преобразуется строка, отмеченная стрелкой. ч:я]-'*-[й]-*-[;г]- Hi A) 1 -*! - г= 0 10 s1= — 12 —8 - s2= —14 —2 s3= —10 —9 *!= 0 —1 х2= 0 0 *3= 0 0 s1== —4 —1* - *- т — 2 ^2 = Ят1п=тах -*2 — *3 14 21 -11 —9 — 2 — 7<— — 6 —3 0 0 -1 0 0 —1 -1 —2 А=2 H2 B, 2, 2=- «1 = S2= ¦ s3= *1 = *2 = *3 = s2= *,= Лз i> 1 - -40 20 -6 - 26 - 4 • 0 0 — 2 3 _ 7 ~~Н<з 7 ~ 2 ' B) -St 10 —8 -2 -9 -1 0 0 — 1 7 "~2 — *2 4 — 3 0 3 1 — 1 0 0 — хз 1 7 — 3 15 2 0 — 1 — 1* C) D) 2 = - Sl = s2= s3= *1= *2= *з= s3= Я=24 1 -42 6 0 — 4 0 0 2 — 1 — si 9 -15 1 — 24 — 3 0 1 — 1* — *2 4 — 3 0 3 1 — 1 0 0 2 = Sl = s2= s3= *i= — s2 1 7 — 3 15 <- 2 0 — 1 0 1 -52 14 2 5 1 2 = Sl = s2= ¦ s3= *i = *2 = *3= s4= Jt=3 E)_ —s3 - 9 -15 - 1 —24 — 3 1 -51 21 — 1 20 3 0 1 — 1 -*2 4 -3 0 3 1 -s3 9 -15 1 — 24 — 3 0 1 0 — s4 1 7 — 3 15 2 — *2 4 — 3 0 3 1 — 1 0 0 — S2 1 7 —3 15 2 0 — 1 — 1* x2= 0 0—1 0 Xo= 2 1 0—1
Решение z ' = 52 *i = l» *2=0» *з—2 Тот же пример, решенный строчно комбинаторным методом 1) первый шаг, такой же, как в предыдущем случае, поскольку в результате преобразования ни одно из неравенств высокого ранга не становится отрицательным. B) Ранг столбца 1 г= —40 «!= 20 s2= —6 s3= 26 xi= 4 х2= 0 *3= 0 1 — 51 10 — 8 — 2 — 9 — 1 0 0 2 — *2 4 -3 0 3 1 — 1 0 3 — *з 1 7 —3 15 2 0 — 1 Ранг строки 2 3 < 1 1 2 3 52= — 1 — 1* о о C) Выбирая единственную отрицательную строку, мы, как и в предыдущем случае, получаем строку ( — 2, — 1, 0, —1). Однако ее преобразование сделало бы отрицательной строку с более низким рангом. Объединяя 15 ( — 2, —1, 0, -1) + B6, -9, 3, 15) = ( —4, — 24, 3, 0), получаем строку с рангом 1. При А, = 24 имеем (-—1, — 1, 0, 0). Дальнейшие итерации невозможны, поэтому операции над матрицей закончены. D) z = «1= s2= S3 = *i= *2 — x3 = s3= X= 1 -50 28 — 4 35 5 0 0 -2 3 —*3 10 — 8 —2 — 9 — 1 0 0 — 1 — *2 4 —3 0 3 1 — 1 0 0 — *з 1 7 — 3 <r— 15 2 0 — 1 — 1* z= Si = s2 = s3= xi = ЛГ2 = *3 = 1 -52 14 2 5 1 0 2 — *з 9 -15 1 — 24 — 3 0 1 — *2 4 — 3 0 3 1 — 1 0 —s4 1 7 — 3 15 2 0 -1
ГЛАВА 14 Опыт применения целочисленного программирования при расчете календарного плана для предприятий единичного и мелкосерийного производства А. Е. СТОРИ, X, М. ВАГНЕР 1 1. ВВЕДЕНИЕ В этой главе изложен опыт расчета оптимальной последовательности выполнения работ на предприятиях единичного и.мелкосерийного производства применительно к определенной модели. По условию задачи п изделий должны пройти обработку на каждом из трех станков — I, II и III; изделие можно обрабатывать на станке II только после завершения обработки на станке I и на станке III — после обработки на станке II; операционное время обработки изделий на каждом станке известно; оптимальной последовательностью обработки принимается такая, при которой общая продолжительность календарного времени выполнения всех работ на всех станках минимальна 2. Особенность модели для трех станков заключается в том, что для нее нет элементарного алгоритма общего решения, но, как можно показать [3], всегда существует оптимальная последовательность обработки для случая одинакового чередования изделий на каждом из станков. Это последнее свойство «трехстаночной» модели означает, что если имеется п деталей A,2, . . ., я), то необходимо лишь выбрать определенную перестановку их номеров 1,2, ... , п из всех возможных перестановок п\ Из других источников [3, 4] известно, что условия задачи расчета последовательности выполнения работ математически эквивалентны модели целочисленного линейного программирования и, следовательно, решение этой задачи возможно на основе последних достижений в разработке алгоритмов целочисленного линейного программирования [1, 2]. 1 Работают в «С. Бревер энд компани» и Станфордском университете. 2 Всесторонний обзор общей модели последовательности обработки в цехе с единичным и мелкосерийным производством дается в [3]; там же приводится полная формулировка основных предпосылок. 16 Заказ №> 195 241
В разделе 2 данной главы исследовано несколько простых эвристических методик получения пробных перестановок. Неудачи при решении задач этими методами позволили понять присущие им недостатки, которые должны быть устранены созданием общего метода решения. В разделе 3 рассмотрена модель целочисленного линейного программирования. В разделе 4 описан опыт расчетов с использованием алгоритмов целочисленного программирования, обсуждены различные пути ускорения решений. Раздел 5 посвящен работам, выполняемым в настоящее время и предполагаемым в будущем. 2. НЕСОСТОЯТЕЛЬНОСТЬ ЭЛЕМЕНТАРНЫХ ПРАВИЛ Для того чтобы обратить должное внимание на необходимость такого сложного алгоритма, как алгоритм целочисленного программирования, мы рассмотрим ряд сравнительно простых правил решения путем пробных перестановок. Ясно, что при большом значении п полный перебор всех перестановок п\ невозможен. Так, при п — 10 число перестановок превышает 3,6 млн. С помощью элементарных правил мы можем значительно сократить число рассматриваемых перестановок, ограничившись небольшим их набором и выбором оптимальной последовательности только в пределах данного набора. Рассмотрим первое правило, которое можно назвать градиентным процессом. Начав с пробной перестановки, исследуем «соседние» для нее перестановки и, если в одной из них найдено улучшение, рассматриваем такую перестановку как новую пробную, повторяя с ней тот же процесс и т. д. В частности, нами практически испробовано правило, с помощью которого оцениваются в качестве соседних перестановки, полученные одним из следующих способов: 1) парной взаимозаменой работ в пробной последовательности; 2) «вращением вокруг конца» в той же последовательности; 3) заменой пробной последовательности на обратную. В табл. 1 приведен пример, показывающий, что с помощью этих правил невозможно найти действительно оптимальную последовательность. Заметим, что оптимальной является перестановка 15. Однако, если взять за исходное пробное решение перестановку 18, то при помощи правила 1 можно перейти к соседним перестановкам 5, 12, 13, 16, 17 и 24, которым соответствует большая календарная продолжительность выполнения всех работ. Применяя правило 2, можно перейти к соседним перестановкам 4 и 21, при которых календарная продолжительность выполнения всех работ возрастает по сравнению с календарной продолжительностью для перестановки 18; дальнейшее применение правила 2 дает перестановку 7, причем улучшения также не достигается. Приме- 242
нив правило 3, найдем перестановку 2, затем воспользуемся правилом 2 и получим перестановки 12, 13 и 23. Однако ни для одной из них календарная продолжительность выполнения всех работ не становится меньше, чем при перестановке 18. Второе испытанное нами правило можно назвать динамическим процессом. Его суть в следующем. Выбирают два любых изделия и находят оптимальную последовательность обработки, используя в качестве критерия минимальную календарную продолжительность выполнения всех работ. Затем произвольно берут третье изделие и, сохраняя установленную для первых двух изделий последовательность обработки, находят наилучший порядок работ при добавлении третьего изделия — при этом приходится изучать три возможных варианта, когда третье изделие предшествует двум первым, находится между ними или следует за ними. Таблица 1 ОПРЕДЕЛЕННОЕ ВРЕМЯ ОБРАБОТКИ Изделие 1 2 3 4 №. перестановки 1 2 3 4 5 6 7 8 9 10 11 12 I Перестановка 1234 1243 1324 1342 1423 1432 2134 2143 | 2314 2341 2413 2431 3 4 4 6 Календарная продолжительность выполнения всех работ 29 32 33 33 32 36 32 35 31 34 38 36 Стано к 1 П 10 1 8 4 № перестановки 13 14 15 16 17 18 19 20 21 22 23 24 III Перестановка 3124 3142 3214 3241 3412 3421 4123 4132 4213 4231 4312 4321 4 5 6 1 Календарная продолжительность выполнения всех работ 32 32 281 32 35 312 35 39 37 36 37 33 1 Действительный оптимум. 2 Групповой оптимум. 16* 243
Далее берут четвертое изделие и, сохраняя последовательность, установленную для предыдущих трех, находят наилучшую последовательность работ при добавлении четвертого изделия и т. д. Этот метод требует рассмотрения не л! случаев, а только 0,5 (п— 1)- •(л+ 2). Практическое применение правила показано в табл. 2 для изделий 1, 2 и 3, взятых из табл. 1. Рассмотрим сначала изделия 2 и 3. Для них оптимальной последовательностью является 2, 3. Однако оптимальной последовательностью для трех изделий оказалась 3, 2, 1, что меняет местами изделия 2 и 3. Таблица 2 Изделия 2 и 3 № перестановки 1 2 перестановка 23 32 календарная продолжительность выполнения всех работ 22 23 Примечание оптимум Изделия 1, 2 и 3 1 2 3 4 5 6 . 123 213 312 132 231 321 28 31 31 32 30 27 оптимум Следует сказать несколько слов о методике испытаний элементарных правил. Если набор элементарных правил включает много вариантов, то при малых п будут, вероятно, рассмотрены все перестановки. Следовательно, изучая эффективность элементарных правил, необходимо либо проявить благоразумие в отношении числа правил, включаемых в набор, либо быть достаточно щедрым, определяя п в поверочных примерах. Мы обнаружили, что полезно иметь стандартную программу для электронно-вычислительной машины, позволяющую получить полный перечень всех перестановок и календарные продолжительности выполнения всех работ для каждой из них. Если иметь подобный перечень для простых случаев, можно быстро проверить, достигается ли при данном комплексе правил сходимость к оптимальному решению от любой произвольной исходной перестановки. 244
3. ПОСТАНОВКА ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ В этом разделе ставится задача определения последовательности выполнения работ в виде модели линейного программирования [4] с целочисленными значениями переменных. Пусть [ 1, если изделие i по графику будет __ I обрабатываться в /-ю очередь. lj ~] 0, если изделие i по графику не будет I обрабатываться в /-ю очередь. Например, если п = 4 и мы хотим записать перестановку 3, 1,4, 2, то это можно сделать следующим образом: xi2 = х2ь = x3i = — *4з = Ь все прочие xtj = 0. Так как для рассматриваемого случая с тремя станками существует оптимальный порядок обработки изделий, при котором чередование последних на каждом из станков одинаково, нет надобности для Хц в верхнем индексе, обозначающем станок. Первая группа ограничений аналогична ограничениям задачи загрузки оборудования. 2 Xtj — 1, когда одно из изделий занимает место / г в последовательности запуска в обработку. 2 Xtj = 1, когда одно из мест в последовательности предназначено для изделий L A) В дополнение к ограничению A) мы накладываем ограничение по времени, с тем чтобы не получилось так, что одно изделие обрабатывается одновременно на двух станках или один станок обрабатывает в одно и то же время два изделия. Смысл этих ограничений для станков II ичШ виден из рис. 43. Мы записали ограничения по времени, приведенные на рис. 43 в алгебраической форме. Присвоим номер k изделию, которое занимает место номер k в данной последовательности запуска в обработку. Пусть Sk — время по станку h между окончанием обработки изделия k и началом обработки изделия k + 1. Uk — время между окончанием обработки изделия k на станке h и началом его обработки на станке h + 1. А. j = (Xij, x2jj ..., xnj). L — вектор-строка операционного времени обработки изделий 1, 2, . . . , пна станке I. М — вектор-строка операционного времени обработки изделий 1, 2 . . . ., п на станке И. 245
N — вектор-строка операционного времени обработки изделий 1, 2, . . ., п на станке III. Тогда ограничения, приведенные на рис. 43, можно записать следующим образом: sF + MX.b+i + uV+i^uV + NX.k + sl11 ft=l, 2, . 1. B) В табл. 3 дана полная схема для случая трех станков при п = 6. Критерий — минимальная календарная продолжительность выполнения всех работ — выражен в эквивалентной ему форме [3,4] минимального суммарного времени простоя станка III. Станок I Станок i СтШкМ к + 1 к-1 к + 1 bU в ¦А Станок I к+1 J Станок й к |||Г Станок Ж к-1 А- к+1 W> Ж +U Рис. 43. Графики Гантта. к+1 На приводимых ниже графиках Гантта через А обозначено время простоя станка II между окончанием обработки изделия «ft» и началом обработки изделия «ft + 1», В обозначает продолжительность обработки «ft + 1» на станке II, а время между окончанием обработки изделия «ft + 1» на станке II и началом его обработки на станке III обозначено через С. Сумма Л, В и С равна времени между окончанием обработки изделия «ft» на станке II и началом обработки изделия «ft + 1» на станке III. Через D на графиках обозначено время между окончанием обработки изделия «ft» на станке. II и началом его обработки на станке III; продолжительность обработки изделия «ft» на станке III отмечена буквой ?, 246
а время простоя между окончанием «А» и началом обработки изделия «k + 1» — буквой F. Сумма D, Е и F равна, как и сумма Л, В и Су времени между окончанием обработки изделия «k» на станке II и началом обработки изделия «k + 1» на станке III. Таблица 3 ТАБЛИЦА КОЭФФИЦИЕНТОВ X 1 Х.2Х.3 Х.4 X 5 Х.в S11 s»i «—1=5 О М —L О М -L О М —L О Л1 -Z. О М — 1 1-1 1-1 1-1 1-1 «-1=5 ( О N -М —1 О N — М —1 О Л' — М —1 О N — М —1 I о N —М — 1 1-1 1-1 1-1 1-1 2«-1 = = 11 Матрица задачи ^— загрузки оборудования 4(«—1)=20 переменных где «2=36 переменных Требуется минимизировать (L+Af)X.i+(H . • S<*)=(sf, sjf, . . . 1/(Л)=<иЛ, «*,.., OS- iii XQJ » Несколько более сложное, чем описанное в разделе 2, но все же простое правило получения пробного решения состоит в том, что для целочисленной модели применяют обычное (без целочисленных ограничений) программирование и затем округляют полученные значения xtj до целых чисел [начиная, скажем, с xijy имеющих значения, наиболее близкие к 1, и не нарушая условие A)]. Числовой пример и его решение с помощью линейного программирования приведен в табл. 4. Таким образом, округленное решение дает последовательность 2, 3, 4, 1, при которой календарная продолжительность 247
выполнения всех работ составляет 58, в то время как при оптимальной последовательности она равна 56. Таблица 4 ОПЕРАЦИОННОЕ ВРЕМЯ ОБРАБОТКИ Изделие 1 2 3 4 Станок I 4 5 6 30 II 1 8 30 4 III 4 20 6 5 РЕШЕНИЕ ЗАДАЧИ СИМПЛЕКС-МЕТОДОМ Изделие 1 2 3 4 Позиции I 1,00 II 0,08 0,83 ш 0,11 0,08 0,09 | 0,81 IV 0,81 0,09 0,10 Округленное решение: 2, 3, 4, 1. Календарная продолжительность выполнения всех работ —58. Оптимальное решение: 2, 1,3, 4. Календарная продолжительность выполнения всех работ —56. 4. ПРОВЕРКА АЛГОРИТМОВ ЦЕЛОЧИСЛЕННОГО ПРОГРАММИРОВАНИЯ С ПОМОЩЬЮ ПРАКТИЧЕСКИХ РАСЧЕТОВ Нами применялись алгоритмы целочисленного программирования, основанные на методах, предложенных Гомори. На электронно-вычислительной машине IBM-7090 мы пытались решать ряд пробных задач, применяя «целочисленный двойственный алгоритм» г. При каждой итерации полученная таблица содержала целочисленные коэффициенты; пробное решение было целочисленным, но не обязательно неотрицательным. Впоследствии на электронно-вычислительной машине Бэрроуз-220 мы испытывали варианты первого алгоритма Гомори [1], который обычно применяют после получения оптимального нецелочисленного решения симплекс-методом. На электронно-вычислительной машине IBM-7090 нами проведена большая серия испытаний программы IPO-3 с группой задач, приведенных в табл. 5А — 5Е. В каждой группе исходная 1 Программа, разработанная фирмой IBM, названа IPO-3. 248
Таблица 5 ОПЕРАЦИОННОЕ ВРЕМЯ ОБРАБОТКИ И ОПТИМАЛЬНАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ ЗАПУСКА ДЕТАЛЕЙ (ЕСЛИ ОНА ПОЛУЧЕНА) А Изделие 1 2 3 4 5 6 7 8" 9 ~ Станок I 5 6 30 2 3 • 4 8 16 2 и 8 30 4 5 10 1 7 10 4 III 20 6 5 3 4 4 2 4 12 Оптимальная последовательность запуска п изделий 4123 - 41235 412365 4123567 D123657) не получена не получена Оптимальная продолжительность простоя станка III 22 25 22 25 Б Изделие 1 2 3 4 5 6 7 8 9 Станок I 9 7 6 8 20 10 7 2 6 II 13 7 4 3 7 2 10 8 13 III 6 20 8 10 2 13 7 5 6 Оптимальная последовательность запуска п изделий 3421 32145 342165 3421675 34216785 не получена Оптимальная продолжительность простоя станка III 10 13 10 10 10 в Изделие 1 2 3 Станок I 6 12 4 II 7 2 6 Ш 3 3 8 Оптимальная последовательность запуска п изделий Оптимальная продолжительность простоя станка III
Продолжение таблицы 5 Изделие 4 5 6 7 8 9 Станок I 3 6 2 19 9 10 II 11 8 14 1 9 9 Ш 7 10 12 6 3 8 Оптимальная последовательность запуска п изделий 3412 35412 356241 не получена не получена не получена Оптимальная продолжительность простоя станка III 13 11 14 г Изделие 1 2 3 4 5 6 7 8 9 Станок I 4 2 2 10 7 9 1 2 7 II 5 17 10 8 15 4 12 3 6 III 5 7 4 2 6 И 6 8 6 Оптимальная последовательность запуска п изделий 2134 21354 213654 7123654 71236854 712396854 Оптимальная продолжительность простоя станка III 26 35 28 33 | 28 28 д Изделие 1 2 3 4 5 6 7 8 9 Станок I 9 12 8 11 5 - 12 9 8 1 II 1 1 6 9 13 3 3 14 1 III 5 13 7 10 6 9 13 6 7 Оптимальная последовательность запуска л изделий 2413 не получена не получена не получена не получена не получена Оптимальная продолжительность простоя станка III 19
Продолжение таблицы 5 Е Изделие 1 2 3 4 5 6 7 8 9 Станок I 15 7 9 28 1 1 6 11 6 и 5 4 14 11 17 8 15 8 15 Ш 14 2 18 9 4 3 10 12 3 Оптимальная последовательность запуска п изделий 3412 31542 не получена не получена не получена не получена Оптимальная продолжительность простоя станка III 30 28 задача была представлена моделью для 4 изделий A, 2, 3 и 4) и затем, прибавляя каждый раз к предыдущей модели одно новое изделие, строилось еще 5 моделей. По моделям, для которых мы смогли получить решения, мы приводим в таблице оптимальную последовательность и соответствующую ей календарную продолжительность выполнения работ. Опыт, полученный при расчетах по программе для IBM-7090, резюмирован в табл. 6. В таблице показаны размеры каждой модели, общее число возможных перестановок и число проделанных итераций целочисленного программирования к моменту окончания расчетов. Под одной итерацией здесь понимается одно преобразование матрицы. В нескольких случаях в таблице появляется обозначение 1000, которое показывает, что электронно-вычислительная машина была остановлена после 1000 итераций, но к этому моменту оптимальное решение не было достигнуто. За исключением одного случая, число итераций увеличивалось с возрастанием числа изделий, включенных в модель. И, как естественное следствие, всякий раз, когда для решения модели требовалось более 1000 итераций, мы были не в состоянии получить решение для более крупного варианта модели. Только в одном случае мы смогли получить решение задачи с девятью изделиями. В трех наиболее удачных случаях, показанных в табл. 5А, 5Б и 5Г, добавление нового изделия оказывало небольшое влияние или не влияло совсем на предыдущую оптимальную последовательность. Для малых моделей, содержащих 4, 5 и 6 изделий, число итераций часто превышало общее число возможных перестановок. На основании проведенных испытаний было сделано заключение, что заложенный в программу метод решения, по-види- 251
мому, не совсем пригоден для задач оперативно-календарного планирования станочных работ *. Вторая серия пробных испытаний была проведена на электронно-вычислительной машине Бэрроуз-220. Здесь опробованы различные методы решения задачи с 4 изделиями, взятой из табл. 5А. Таблица 6 ЧИСЛО ИТЕРАЦИЙ ПРИ РАСЧЕТЕ ПО ПРОГРАММЕ IPO-3 Число изделий п Число переменных Число постоянных Таблица 5А Таблица 5Б Таблица 5В Таблица 5Г Таблица 5Д Таблица 5Е Число перестановок п\ 4 28 13 261 31 59 37 261 62 24 5 41 17 613 71 141 46 1000* 323 120 6 56 21 807 83 891 55 1000* 1000* 720 7 73 25 85 105 1000* 78 1000* 1000* 5040 8 . 92 29 1000* 283 1000* 538 1000* 1000* 40 320 9 113 33 1000* 1000* 1000* 545 1000* 1 000* 362 880 Все эти методы являлись вариантами первоначальной идеи Гомо- ри [1], согласно которой начинают с оптимального симплексного решения и вводят ограничения до тех пор, пока не будет найдено целочисленное решение. Чтобы применить такой подход, требуется ответить на следующие вопросы: какое уравнение, соответствующее нецелочисленной переменной текущего базиса, должно быть выбрано для образования нового ограничения? Как должно быть сформулировано новое ограничение, если нам задано только что выбранное исходное уравнение? Мы рассмотрели несколько возможных вариантов решения каждого из этих вопросов. Было сформулировано 8 схем выбора базисной переменной и соответствующего уравнения для образования нового ограничения: 1) Выбирать в качестве базисной переменную, имеющую наибольшую дробную часть. 2) Выбирать Xij, ближайшее к 0,5. 3) Выбирать Хи < 1, ближайшее к 1. 4) Выбирать xtj > 0, ближайшее к 0. 1 Мы полагаем, что к такого рода исследованиям должен быть экспериментальный подход. При этом подходе на базе накопленного опыта в некоторый момент нужно решить, оправдывает ли испытываемый метод дальнейшие исследования или более многообещающим является какой-нибудь альтернативный метод. Нет никакой гарантии, что отвергнутый метод не окажется в конце концов наилучшим из имеющихся. 252
5) Выбирать xtj <C 1, ближайшее к 1; когда целевая функция содержит дробную часть, значение целевой функции следует приравнивать ближайшему большему целому числу. 6) Выбирать xiJf ближайшее к 0,5; когда целевая функция содержит дробную часть, надо приравнивать значение целевой функции ближайшему большему целому числу. 7) Вводить одновременно несколько дополнительных ограничений — по одному для каждой базисной переменной, имеющей дробную часть. 8) Выбирать уравнения последовательно, одно за другим, возвращаясь к первому (циклически); когда целевая функция содержит дробную часть, значение целевой функции приравнивают ближайшему большему целому числу. Целесообразно сделать несколько замечаний по этим правилам. Методы 1 и 3 применительно к многим задачам могут давать одинаковые результаты. Чтобы определить, достигла ли переменная целочисленного значения, необходимо установить коэффициент допускаемых отклонений а. Этот коэффициент имеет решающее значение при применении методов 3, 4 и 5. Мы применяли а = 0,0001 и 0,00001. При использовании методов 1—6 часто наблюдалось, что одна и та же уже взятая базисная переменная избиралась вновь и, как следствие, значение целевой функции не претерпевало больших изменений. Такое постоянство в выборе может быть до некоторой степени нарушено увеличением коэффициента допускаемых отклонений, но это средство имеет свои очевидные пределы. Метод 8 и до некоторой степени метод 7 являются попыткой достигнуть этой же цели. В методах 5, 6 и 8 ясно поставлено условие целочисленности целевой функции. Следовательно, когда при пробном решении полученное значение целевой функции имело дробную часть, мы приравнивали целевую функцию ближайшему большему целому числу. Считалось, что приравнивание ускоряет сходимость к оптимуму. Мы рассмотрели также несколько методов образования новых ограничений: 1) Полностью целочисленный метод Гомори [1]. 2) Частично целочисленный метод Гомори [2]: а) где только хи целочисленны; б) где все переменные, описанные в разделе 3, целочисленны. Хотя априори можно было бы ожидать, что метод 1 лучше подходит для решения данной задачи, чем метод 2, так как первый полностью соответствует условию целочисленности всех переменных, тем не менее для решения нашей пробной задачи метод 2 оказался лучшим (см. табл. 7). Мы не проводили опробования всех возможных сочетаний каждого из 8 приведенных выше методов с каждым из способов 253
образования новых ограничений. Результаты опробования 13 сочетаний на модели с 4 изделиями из табл. 4А можно разбить на следующие группы: а) получено оптимальное целочисленное реше- Таблица 7 МОДЕЛЬ ДЛЯ 4 ИЗДЕЛИЙ ИЗ ТАБЛИЦЫ 5А Получено оптимальное целочисленное решение Алгоритмический метод 1 — 1 1—3 2а—2 2а—3 26—3 Число итераций к моменту окончания расчетов 50 50 62 62 65 Число дополнительных ограничений к моменту окончания расчетов 3 3 6 8 10 ОПТИМАЛЬНОЕ ЦЕЛОЧИСЛЕННОЕ РЕШЕНИЕ НЕ ПОЛУЧЕНО. ПОЛУЧЕНО ОПТИМАЛЬНОЕ ЗНАЧЕНИЕ ЦЕЛЕВОЙ ФУНКЦИИ Алгоритмический метод 1—2 1-5 1—8 26—6 Число итераций к моменту окончания расчетов 197 84 79 78 Число дополнительных ограничений к моменту окончания расчетов 36 21 15 11 НЕ ПОЛУЧЕНО ОПТИМАЛЬНОЕ ЦЕЛОЧИСЛЕННОЕ РЕШЕНИЕ И ОПТИМАЛЬНОЕ ЗНАЧЕНИЕ ЦЕЛЕВОЙ ФУНКЦИИ Алгоритмический метод 1—4 1—6 2а—4 2а—7 Число итераций к моменту окончания расчетов 50 81 76 54 Число дополнительных ограничений к моменту окончания расчетов 10 21 10 21 ние, б) вычисления прекращены до получения оптимального целочисленного решения, однако достигнуто оптимальное значение целевой функции и в) вычисления прекращены до получения оптимального целочисленного решения и оптимального значения целе- 254
вой функции г. Результаты опробования этих 13 сочетаний приведены в табл. 7. Совершенно очевидно, что на основании данных таблицы нельзя выбрать лучший способ решения. Ограниченное количество выполненных расчетов показывает, что первый способ образования новых ограничений, по-видимому, только ненамного лучше способов 2а и 26 (как будет показано ниже при анализе табл. 8, были проведены дополнительные пробные расчеты с применением способа 1). Таблица 8 Модель с 4 изделиями Таблица 5А Таблица 5Б Таблица 5В Таблица 5Д Таблица 5Е Число итераций к м'енту окончания четов 28 38 85 322 27 мо- рас- Число дополнительных ограничений к моменту окончания расчетов 1 2 22 118 — к моменту окончания расчетов решение не получено 1 Выбор Хи < 1, ближайшего к 1, по-видимому, дает несколько лучшие результаты, чем выбор xijy ближайшего к 0,5, а выбор хи > 0 со значением, наиболее близким к 0, представляется малоперспективным. В ходе пробных расчетов при применении методов 5, 6 и 8 не было получено ни одного оптимального целочисленного решения. Этот результат был разочаровывающим, так как считалось, что метод с приравниванием значительно ускорит сходимость к оптимальному целочисленному решению. Чтобы лучше понять влияние округления на сходимость, был проведен еще один эксперимент. О нем сообщается в следующем параграфе. В проведенных ранее пробных расчетах методы с приравниванием целевой функции E, 6 и 8) довольно быстро приводили к получению оптимального значения целевой функции, но затем итерационный процесс нахождения оптимального целочисленного решения замедлялся. Был поставлен вопрос — насколько быстро можно найти оптимальное целочисленное решение, если начинать итерационный процесс с ограничения, устанавливающего оптимальное значение целевой функции (которое нам известно из проведенного ранее анализа). Мы воспользовались приведенными в табл. 5А, 5В, 5Д и 5Е моделями с 4 изделиями, причем уравнения формировались по методу 1—8. Результаты (см. табл. 8) оказались по меньшей мере неустойчивыми, удалось быстро решить 1 Число указанных в таблице итераций включает итерации получения симплексного решения. 255
задачи из табл. 5А и 5Е, но при решении других трех задач оказалось, что метод, соответствующий табл. 6 (при котором оптимальное значение целевой функции не было задано заранее), позволял найти оптимум за меньшее число итераций, чем в данном случае. 5. ВЫВОДЫ И БУДУЩИЕ ИССЛЕДОВАНИЯ Очевидный вывод на основании испытаний состоит в том, что до настоящего времени не найден метод целочисленного программирования, который был бы надежен и давал возможность быстро решать большинство задач определения оптимальной последовательности обработки изделий на станках. Мы полагаем, что в будущих исследованиях усилия должны быть сконцентрированы на разработке методов, в которых полнее отражается специфическая структура задач определения оптимальной последовательности работ. В них должен быть устранен многократно повторяющийся выбор одной и той же базисной переменной для образования нового ограничения. Они должны также обеспечивать быстрое нахождение целочисленного решения, если действительно получено оптимальное значение целевой функции. Кроме того, необходимо уделить внимание разработке таких эффективных подходов при выборе исходных для новых ограничений уравнений, которые ускорили бы изменения целевой функции и соответственно сократили бы число итераций г. Исследования в этом направлении в настоящее время ведутся авторами статьи. 1 Речь идет непосредственно о правилах, позволяющих определить, существует ли такая базисная переменная, что полученное из соответствующего ей уравнения новое ограничение привело бы к изменению целевой функции. Проблема заключается в том, чтобы найти, если это возможно, способ быстрой проверки наличия таких уравнений.
ЧАСТЬ IV Математическое моделирование процедур календарного планирования и эффективность планирования Попытки точного решения на оптимум (с помощью полного перебора и целочисленного программирования) задач оперативного планирования имели ограниченный успех (см. гл. 3 и 14); исключение составляет лишь особый случай, описанный Джонсоном (гл. 2). Наиболее очевидная трудность, с которой приходится сталкиваться при использовании точных алгоритмов, состоит в быстром росте объема необходимых вычислений по мере увеличения размера задачи (пропорционально кубу или экспоненциально). С другой стороны, при математическом моделировании трудности, связанные с проведением вычислений, возрастают с увеличением размера задачи в общем линенйо. В связи с этим математическое моделирование уже находит себе, хотя и ограниченное, практическое применение и стало объектом большого числа теоретических исследований. В гл. 15 Г. Фишер и Г. Л. Томпсон обсуждают «Комбинации локальных правил календарного планирования применительно к самонастраивающимся на вероятностной основе программам для электронно-вычислительной машины». К локальным правилам оперативно-календарного планирования, или к правилам распределения работ, относятся такие правила, которыми может пользоваться рабочий-станочник, выбирая для обработки одно из изделий, ожидающих очереди перед его станком. В данной статье рассматриваются 17 Заказ № 195 257
два правила: SIO—«правило кратчайшей операции» и LRT (по наибольшей суммарной трудоемкости невыполненных операций). Исходя из предположения, что в определенных ситуациях одно правило может быть предпочтительнее другого, Фишер и Томпсон разработали для* вычислительной машины программу, которая подвергает испытанию вероятностные комбинации указанных правил и изменяет вероятность выбора каждого из этих правил соответственно с относительным успехом или неудачей, которые сопутствовали их применению в предыдущих экспериментах. Проведенные опыты показали, что такое «обучение» возможно, но что оно не дает результатов, существенно лучших по сравнению со случайной несмещенной комбинацией тех же локальных правил планирования. Однако такая случайная несмещенная комбинация оказывается значительно эффективнее каждого из данных правил, примененных в отдельности. Таким образом, авторы главы открыли новое интересное направление в поисках решений задач оперативно-календарного планирования. Весьма сходной идее следуетМ. Аллен в статье «Эффективное использование рабочей силы в условиях меняющегося спроса» (гл. 16). Он рассматривает цех, где производство свертывается и необходимо закончить выполнение имеющихся заказов. Автор использует при математическом моделировании два тех же самых правила распределения работ (SIO и LRT) и оценивает их с точки зрения эффективности применения для рационального использования рабочей силы. Производится также оценка эффективности этих правил по сравнению со случайной последовательностью запусков и исследуется возможность попеременного использования правил. Опираясь на накопленный таким образом опыт, автор разрабатывает правило переключений, в соответствии с которым вначале используется одно из частных правил очередности запуска, а затем, в заданный момент времени, начинают пользоваться другим правилом очередности. Результаты этого исследования показывают, что» подобная стратегия при использовании правил распределения работ может быть очень эффективной. Правило кратчайшей операции (SIO) исследуютР. У. Конвей и У. Л. Максвелл в статье «Календарное планирование в условиях сети очередей с дисциплиной по кратчайшей операции» (гл. 17). Они рассматривают сначала упрощенный цех, где обрабатываются п изделий на одном станке, и показывают, что все правила очередности запуска, не учитывающие трудоемкости операций,, равноценны, а правило кратчайшей операции оптимально. Показано, что* тот же самый, по существу, результат имеет место в отношении несложных, систем, включающих очереди изделий с показательным распределением промежутков времени между прибытиями изделий в очередь. Далее в главе цех единичного и мелкосерийного производства рассматривается как сеть очередей и делается предположение о том, что для условий такого цеха указанные выше результаты будут оставаться в силе. Данные контрольного математического моделирования подтверждают это предположение и свидетельствуют о том, что результаты не зависят сколько-нибудь значительно от матрицы перехода в таком цехе. Последующие эксперименты средствами математического моделирования имели целью показать, что для эффективного использования правила кратчайшей операции точные оценки трудоемкости произвол- 258
ственных операций необязательны. Заканчивается глава рассмотрением недостатков, свойственных правилу кратчайшей операции, и предложениями по их преодолению. В гл. 18 Д. Мут использует математическое моделирование для того, чтобы исследовать «Влияние случайного рассеяния оценок длительности работ на оптимальные календарные цланы». Чтобы исследовать изолированно этот вид ошибок и его влияние на календарную длительность выполнения плана, автор пользуется математической моделью цеха с двумя станками и правилом оптимального выбора решений, предложенным Джонсоном (см. гл. 2). Планы, полученные путем случайной выборки из совокупности действительных планов, сопоставляются с планами, построенными в соответствии с методом Джонсона в условиях точной и неточной информации тно- сительно длительностей производственных операций. Данные о длительности операций были получены путем независимой выборки из двумерного логарифмически нормального распределения. В ряде случаев длительности обработки каждого изделия на первом и втором станках были связаны между собой положительной или отрицательной корреляцией. Средние величины и дисперсия длительностей менялись в зависимости от объема производственного задания. Результаты применения математического моделирования говорят о том, что ошибки в оценке длительностей производственных операций оказывают сравнительно небольшое влияние на суммарную календарную дли тельность выполнения плана. Фактически Мут установил, что около 90% разницы между хорошим и плохим планами может быть отнесено за счет процедуры планирования, в то время как только 10% может быть устранено путем установления более точной оценки длительностей обработки. Эти результаты согласуются с подобными же выводами, сделанными Конвеем и Максвеллом в предшествующей главе. Темой главы 19, написанной Д. Джексоном, является применение экспериментов математического моделирования для подтверждения теоретических предположений, касающихся систем с «динамичным правилом приоритета». Считается, что каждой заявке соответствует определенный планируемый срок начала обслуживания, определяемый суммой времени поступления заявки и «индекса срочности», выбираемого из заданного вероятностного распределения. Пусть, предполагает далее Джексон, заданы «индексы срочности» и < v, а очередь столь велика, что каждой вновь поступающей заявке неизбежно предстоит продолжительное ожидание. Тогда для вновь поступившей заявки с «индексом срочности» и время ожидания обслуживания будет примерно таким же, как и для заявки с «индексом срочности» у, уже ожидающей обслуживания в течение v — и единиц времени. Говоря точнее, речь идет о свойствах асимптотического поведения распределений времени ожидания в очереди. Джексон приводит экспериментальные доказательства в пользу указанных выше, а также некоторых других предположений. 17*-
ГЛАВА 15 Комбинации локальных правил календарного планирования применительно к самонастраивающимся на вероятностной основе программам для электронно-вычислительной машины Г. ФИШЕР, Г. Л. ТОМПСОН* 1. ВВЕДЕНИЕ Гиффлер, Томпсон и Ван-Несс [21 делятся опытом использования описанных Гиффлером и Томпсоном в [1] алгоритмов полного перебора и Монте-Карло. Они установили, что, во-первых, не считая тривиально малых задач, метод полного перебора в высшей степени непрактичен и что, во-вторых, для решения задач среднего размера можно использовать процедуру Монте- Карло. Однако этот последний метод не гарантировал оптимальности плана и лишь давал примерно такие же результаты, как правило распределения работ SIO (FOFO). Одна из простых задач, решавшихся на машине, представлена в табл. 1. Имеется шесть изделий и шесть станков, и каждое изделие должно в заданной последовательности пройти обработку на всех станках. Длительность различных операций указана в скобках после номера станка. Число допустимых действительных планов в этой задаче, по самой скромной оценке, значительно больше миллиона, так что нельзя даже ставить вопрос об их полном переборе. Выборка, составленная из 5000 действительных планов, полученная с помощью процедуры Монте-Карло, дала план, выполнение которого заканчивается за 58 единиц времени, и такой план был получен лишь один раз. Когда эту задачу предложили как учебную группе студентов, изучающих организацию производства, был найден план, выполнение которого заканчивается за 55 единиц времени, а его разработка требует около двух часов ручного счета. После изучения с учетом требований к нижней границе план был признан оптимальным. 1 Работают в Вашингтонском университете и в Технологическом институте Карнеги. 260
Следует отметить, что задачи с квадратной матрицей (то есть с т = п) оказались наиболее трудными. Задачи с неквадратными матрицами решаются значительно проще, тем не менее опыт изучения этих задач показывает, что для повышения эффективности процедуры Монте-Карло необходимо дальнейшее ее совершенствование. С этой целью были разработаны описанные в настоящей главе методики изучения вопроса с помощью программы с вероятностным обучением. Возможно, читатель захочет сам решить представленную в табл. 1 задачу, и тогда он обнаружит, что узкое место обычно образуется на станках 5 и 6. Поэтому сначала задача сводится к тому, чтобы загрузить эти станки как можно раньше. После того как они начнут работать, желательно обеспечить их полную загрузку. Таб лица 1 ЗАДАЧА -ТЕСТ 6X6X6 (ДЛИТЕЛЬНОСТЬ ОПЕРАЦИЙ УКАЗАНА В СКОБКАХ) Номер изделия 1 2 3 4 5 6 рA) 2(8) 3E) 2E) 3(9) -2C) Матрица 1C) 3E) 4D) 1E) 2C) 4C) последовательности 2F) 5A0) 6(8) 3E) 5E) 6(9) 4G) 6A0) 1(9) 4C) 6D) 1A0) станков 6C) 1A0) 2A) 5(8) 1C) 5D) 5FП 4D) 5G) 6(9) 4A) 3A) J Будем считать элементарными (локальными) правилами календарного планирования такие правила, которые могут быть использованы рабочими-станочниками и которые требуют от рабочих только знания работы, ожидающей своей очереди перед их станками. Два правила, которым чаще всего следуют,— это SIO *, или, как его еще называют, FOFO, и правило LRT. При решении задачи, записанной в табл. 1, правило SIO привело к плану с длительностью выполнения 67 единиц времени, а правило LRT — 61 единицы. Результат моделирования с процедурой Монте-Карло в этом случае оказался лучше, чем оба приведенные выше результата. 1 SIO или FOFO, LRT — мнемонические сокращения названий двух правил очередности (или, что то же, «правил приоритетов» и «правил распределения работ», правил загрузки оборудования, дисциплины очередей, дисциплины ожидания). В оригинале эти сокращения расшифрованы следующим образом: SIO — shortest imminent operation — «правило кратчайшей операции». FOFO — first off first on — «делай то, что раньше окончишь», LRT — longest remaining time — выбор по наибольшему оставшемуся времени обработки.— Прим. ред. 261
При ближайшем рассмотрении задачи, показанной в табл. 1, представляется разумным воспользоваться сначала правилом SIO, поскольку при этом станки будут быстро включаться в выполнение плана, а затем желательно перейти к правилу LRT, так как его применение обеспечивает сосредоточение усилий на выполнении наиболее длительных работ. Следовательно, идея комбинирования двух правил оказывается эффективнее разработки каждого из них в отдельности. В настоящей статье будет описан метод комбинирования правил SIO и LRT на основе «программы с вероятностным обучением». Мы укажем, как этот метод может быть распространен на случай комбинации любого числа элементарных правил выбора решений таким образом, что полученная в результате программа будет действовать не хуже самого лучшего из этих элементарных правил. Наш опыт показывает, что комбинация правил неизменно «работает», значительно лучше, чем любое из элементарных правил, взятых в отдельности. Жаждый раз мы будем стремиться выработать такой календарный план (то есть график Гантта), выполнение которого требует как можно меньше времени. Эта цель, может быть, не всегда правильна, но мы ее ставим в соответствии с нашими непосредственными намерениями. То, что мы предполагаем выполнить, было бы нетрудно при надобности изменить применительно к иным целям. В дальнейшем предполагается, что время выполнения каждой операции известно достоверно. То, что такое допущение обоснованно, подтверждается работой Мута [3]. 2. ВЫРАБОТКА УДОВЛЕТВОРИТЕЛЬНЫХ КАЛЕНДАРНЫХ ПЛАНОВ СПОСОБОМ НЕСМЕЩЕННОГО СЛУЧАЙНОГО ОТБОРА Для того чтобы спланировать обработку п изделий на т станках, необходимо принять пт решений, определяющих время начала обработки изделия i на станке /. Так, для условий, показанных в табл. 1, при составлении плана надо принять 36 решений. В идеале хотелось бы иметь вместе с данными о времени принятия решений параллельную запись обозначений станков. Однако с увеличением объема информации растут требования к запоминающему устройству вычислительной машины, а мы были ограничены возможностями машины, которой располагали (IBM-650). Поэтому мы ограничились текущей записью лишь 36 (в общем случае пт) решений в отношении времени, не фиксируя признаки станков, для которых эти решения принимались. Мы могли, таким образом, записать решение в виде вектора с 36 (в общем случае — с пт) компонентами. Наши результаты можно было бы значительно улучшить, если бы наличие большей машины позволило увеличить объем регистрируемой информации. 262
Каждый раз, когда принимается решение, мы обращаемся к станку, перед которым образовалась очередь невыполненных работ, и должны выбрать ту из них, которая фактически будет начата. Под процессом несмещенного случайного отбора мы будем понимать способ, в соответствии с которым из совокупности элементарных правил выбора решения случайно отбирается одно правило, используемое затем практически при составлении плана. В настоящей статье рассматривается совокупность, состоящая из двух правил: SIO и LRT. Но в принципе такая совокупность правил может состоять из любого их числа. Единственное требование, которому должно удовлетворять каждое правило, сводится к тому, чтобы с его помощью можно было однозначно определить, какая операция должна быть следующей в плане, и установить срок начала ее выполнения при условии совместимости с другими плановыми сроками и выполнимости плана. Если говорить о правилах SIO и LRT, то возможно, что в очереди одновременно ожидает не одна, а несколько работ, удовлетворяющих данному правилу. В этом случае наша программа производит случайный выбор одной из таких работ. На основании своего опыта, описанного в следующих разделах, мы нашли, что способ несмещенного случайного отбора служит так же хорошо, как эвристический способ планирования, и неизменно лучше, чем худшее из правил, составляющих исходную совокупность. При несмещенном случайном отборе возможность найти последовательность правил выбора решений, приводящую к удовлетворительному календарному плану, зависела от удачи. Полагали, что, возможно, моделирование обеспечит обучение некоторому систематическому способу изменения частостей использования каждого из этих правил. Например, в задаче, представленной в табл. 1, нам кажется, было бы резонным воспользоваться вначале правилом SIO, а затем — правилом LRT. Если это действительно так, то можно было бы разработать программу, которая будет менять свое поведение х в соответствии с результатами опыта и тем самым обучится выбору желательной разновидности поведения при составлении календарного плана. Ниже мы опишем такую самообучающуюся программу. 3. ПРОЦЕСС ОБУЧЕНИЯ Относящаяся к области психологии схема обучения на основе поощрений и наказаний по сути дела гласит, что обучение является результатом опыта. Когда мы сталкиваемся с совершенно новой 1 Здесь авторы применяют понятия и терминологию кибернетической теории самообучающихся механизмов.— Прим. ред. 263
ситуацией или проблемой, мы осуществляем действие и запоминаем его результаты. Когда подобная или идентичная ситуация повторяется вновь, осуществляется еще одно действие, оцениваемое в связи с ранее полученным результатом. Эти два действия могут быть схожими или различными. Если второе действие эффективно, вероятность повторения его при дальнейших событиях увеличивается. Если оно неэффективно или неудовлетворительно, по своим результатам вероятность его повторения уменьшается. Таким образом, людям свойственно закреплять в своей практике действия, ассоциирующиеся с положительными результатами, и уклоняться от тех действий, которые ассоциируются с незначительными или отрицательными результатами. Процесс планирования со случайным отбором можно построить так, чтобы он моделировал подобное поведение, изменяя вероятности выбора определенных правил решений по любому пункту процесса планирования с учетом предшествующих решений по тому же пункту и их результатов. Действия могут быть охарактеризованы как определенные последовательности выбора решений^ результаты — как календарная продолжительность выполнения плана, то есть длительность промежутка времени между началом самой ранней операции и завершением самой поздней. Действия являются идентичными, если определяют одинаковые последовательности выбранных решений. Сходство действий измеряется числом последовательно идентичных элементов в каждой из сравниваемых последовательностей выборов решений. Наименьшее возможное сходство заключается в отсутствии идентичных выборов, а наибольшее — в идентичности действий. Удовлетворительные результаты приводят к построению плана лучшего, чем эталонный. Для всех используемых нами процессов обучения, кроме одного, эталонный план определяется как лучший из числа разработанных к данному моменту времени. Это определение принимается по той причине, что однажды найденный план всегда можно использовать и не стоит тратить сил на любой план, менее эффективный, чем лучший из составленных на данный момент. Таким образом, в соответствии с моделью каждый раз, как составленный план оказывается лучше предыдущих, он определяет норму эффективности, а связанные с ним действия (последовательность правил выбора решений) становятся своего рода нормативным образцом, к которому будут тяготеть последующие действия до тех пор, пока новые результаты будут оставаться неудовлетворительными. Прежде чем описать определенную совокупность элементарных правил календарного планирования и процессы обучения, примененные в рассматриваемой модели, обсудим два момента, имеющих„ как нам кажется, отношение к данному вопросу. Первый момент заключается в следующем: те ограниченные данные, которыми мы располагаем, свидетельствуют о том, что процесс случайного отбора 264
относительно эффективен по сравнению с другими общепринятыми методами построения плана г. Тем самым любые применения способа обучающихся программ высокоэффективны, так как требуется лишь немного усилий для доказательства того, что они экономичнее случайного отбора. Во-вторых, описываемый процесс обучения программ может быть эффективен только в том случае, если планы с небольшим временем выполнения являются, как правило, результатами близких друг к другу действий (последовательности решений). В настоящее время мы не уверены полностью, имеется ли в данном случае существенная взаимосвязь. На деле она может иметь место для одних комплексов правил и не существовать для других. 4. ПРАКТИЧЕСКИ ИСПЫТАННЫЕ ПРАВИЛА ВЫБОРА РЕШЕНИЙ В силу ограниченных возможностей вычислительной машины IBM-650 был запрограммирован лишь простой случай (три правила). В число этих правил, как ранее указывалось, входили видоизмененные правила SIO и LRT, а также «правило заполнения», не участвующее в процессе выбора решений. Модифицированные правила SIO и LRT, которыми мы пользуемся, отличаются от описанных выше обычных правил SIO и LRT тем, что в данном случае запуск на освободившемся станке очередного изделия из числа ожидающих перед этим станком планируют только при условии, что до окончания обработки этого изделия не ожидается прибытия с какого-нибудь другого станка изделия с более высоким приоритетом. Если где-то такое изделие уже обрабатывается, план предусматривает простой станка в ожидании его прибытия. Если же ожидаемое изделие с более высоким приоритетом еще не обрабатывается, а лишь ожидает обработки перед другим станком — запуск очередного изделия планируется, как обычно, и данный станок не будет простаивать. В противоположность этому обычные правила SIO и LRT допускают простой оборудования, только при отсутствии работы для него. Модифицированные правила SIO и LRT, не дополненные иными правилами, допускают в законченном календарном плане простои оборудования, не вызванные необходимостью. Например, станок 1 может простаивать в ожидании завершения обработки изделия с более высоким приоритетом на другом станке. Прежде чем это изделие попадет в очередь перед станком 1, на другом станке может начаться обработка изделия с еще более высоким приоритетом, что приведет к дополнительной задержке. При этом не исключено,, что за время бесполезного простоя иногда можно было бы обра- 1 Все данные относятся к задачам, включающим не более 100 операций и 10 станков. 265.
«ботать одно или несколько изделий из очереди перед станком 1, не задерживая начала обработки ожидаемого с другого станка изделия. Мы пытались выйти из положения с помощью «правила заполнения», которое добавляется к правилам планирования и заключается в том, что каждый раз, когда дело доходит до простоя, вся очередь изделий просматривается в поисках любого изделия, обработку которого можно запланировать для заполнения перерыва в загрузке станка с тем, однако, чтобы это не задерживало начала обработки ожидаемого изделия. Просмотр выполняется в порядке убывания времени, необходимого для обработки изделия на станке, причем промежуток предполагаемого простоя заполняется возможно большим числом операций. Очередь просматриваем только один раз, и обработка изделий планируется таким образом, чтобы она была закончена не позже допустимых сроков. Поскольку это правило может лишь улучшить план и не может задержать планируемый запуск какого- либо изделия с более высоким приоритетом, оно применяется везде, где это возможно. S. ИСПОЛЬЗУЕМЫЕ ПРОЦЕССЫ ОБУЧЕНИЯ Применительно к рассмотренным только что элементарным правилам календарного планирования применялись четыре определенных процесса обучения. Ниже мы будем говорить об этих процессах, как об обучении 1-го типа, обучении 2-го типа и т. д. Четыре процесса различаются между собой одной или несколькими -из следующих характеристик: 1) исходный эталонный план; 2) метод определения нового эталонного плана; 3) уточнение вероятностей после того, как последовательные планы созданы и оценены; 4) надежность, с какой может быть выбрано определенное правило в данном пункте выбора решений. .5.1. ОБУЧЕНИЕ 1-ГО ТИПА , Обучение 1-го типа характеризуется несмещенным исходным положением и процессом обучения, приводящим к единственной последовательности решений. Несмещенное исходное положение означает, что для первого плана после того, как установлен исходный эталон, вероятность выбора любого правила выбора решений одинакова по всем пунктам решения. Сходимость к единственному вектору решений осуществляется посредством двух классов вероятностных изменений. Если выработанный план оказывается лучше 266
всех предыдущих \ он становится новым эталоном и все до того принятые вероятности смещаются в сторону нового эталона. Если вновь выработанный план оказывается эквивалентным или худшим по сравнению с существующим эталонным планом, последний остается в силе и все вероятности смещаются в его сторону. Таким образом, если достигнут такой эталонный план, который продолжает оставаться не худшим сравнительно с вырабатываемыми в дальнейшем планами, вероятности сходятся к этому эталонному плану. Для такого процесса предусмотрен верхний предел вероятности, достижение которого является основанием к тому, чтобы данный элемент вектора решений сделать достоверным за один шаг вместо того, чтобы продолжать процесс обучения. Были предусмотрены четыре варианта изменений вероятностей: 1) лучший план — за эталон принимается выбор того же правила; 2) лучший план — выбор правила отличен от эталонного; 3) худший или эквивалентный план — за эталон принимается выбор того же правила; 4) худший или эквивалентный план — выбор правила отличен от того, который был использован в эталонном плане. Изменения вероятностей, как они определены выше, имеют фиксированную абсолютную величину и остаются постоянными в ходе лроцесса обучения. Заметим, что, поскольку правило выбора решений включает вторичное правило случайного отбора, единственный вектор решений может быть связан с более чем одним планом (графиком Гантта) и календарным временем его выполнения. За исходный эталон принимается лучший из планов, полученных при 100%-ном использовании модифицированных правил SIO или LRT. 5.2. ОБУЧЕНИЕ 2-ГО ТИПА Между этим процессом и первым имеется три различия. Во-первых, исходное множество вероятностей (после того, как был определен эталонный .план) может быть смещенным. Во-вторых, после того, как достигнут новый эталон, вероятности, соответствующие всем тем пунктам решений, по которым новый эталон отличается от старого, устанавливаются заново со смещением, связанным с новым выбором правил (вместо того, чтобы получить фиксированные приращения). И, наконец, когда вероятность достигает определенного верхнего предела, она не заменяется достоверностью и не увеличивается далее, а остается на достигнутом уровне. Характерным для этого процесса является то, что в любое время с неко- 1 Календарная продолжительность выполнения плана меньше, чем Для плана, являющегося в данный момент эталоном. 267
торой вероятностью может оказаться выбранным любой из множества возможных планов, и то, что, устанавливая соответствующий верхний предел для элементов вектора решений, можно добиться желаемой степени сходства между посл'едовательностями решений. Если верхний предел принимается равным единице, то результатом будет единственная последовательность. 5.3. ОБУЧЕНИЕ 3-ГО ТИПА Этот тип обучения отличается от первых двух тем, что в качестве исходного эталона применяется план, составленный на основе способа несмещенного случайного отбора правил очередности запуска изделий, после чего элементы вектора решений определяются с максимальным смещением. Если в последующем вырабатывается равноценный или худший план — процесс обучения не реализуется и вероятности не меняются. Если вырабатывается удовлетворительный план, он становится новым эталоном и все элементы вектора решений получают соответствующие максимальные смещения. В результате этого процесса после установления эталона вырабатываются планы с заданной ожидаемой степенью сходства с эталоном, пока не будет найден более выгодный план. В известном смысле суть процесса состоит в обучении применительно к последовательности решений лучшего на данный момент плана и в исследовании его окрестности, состоящей из планов с определенной ожидаемой степенью сходства с ним в отношении последовательности решений. 5.4. ОБУЧЕНИЕ 4-ГО ТИПА Этот процесс существенно отличен от 1, 2 и 3-го процессов. Исходным эталоном, как и в третьем процессе, служит план, составленный на основе несмещенного случайного отбора правил очередности запуска изделий, но в то же время исходный вектор решений также не смещен, что характерно для первого процесса. Обучение 4-го типа отличается от всех предыдущих тем, что в нем за эталон всегда принимается последний из выработанных планов. Если вырабатывается план лучше эталона, все пункты решений, отличающиеся от предыдущего плана (эталона), смещаются к новому выбору. Если же новый план оказывается равноценным или худшим по сравнению с эталоном, все пункты решений, отличающиеся от предыдущего плана, смещаются к предыдущему выбору. Этот процесс характеризуется также наличием верхнего предела вероятности выбора того или иного правила. 268
С помощью рассматриваемого типа обучения делается попытка •определять, какое правило применительно к каждому из пунктов решения чаще всего связано с улучшением плана, и затем смещать будущий выбор правила очередности в соответствии с результатм последнего эксперимента. 6. СРАВНЕНИЕ 1-ГО И 2-ГО ТИПОВ ОБУЧЕНИЯ Моделирование обучения 2-го типа было вызвано недостатками обучения 1-го типа и желанием расширить возможность поиска среди планов, имеющих определенную степень сходства с эталоном. Обучение 1-го типа имеет одно возможное преимущество по сравнению с обучением 2-го типа. По ходу обучения вероятности, соответствующие некоторым пунктам решения, достигают уровня достоверности, что, как можно надеяться, устраняет возможность неправильных решений по этим пунктам в будущем. Когда в тех или иных пунктах достигается достоверность, число взаимосвязей в задаче в целом сокращается и обучение в других пунктах может стать более эффективным. В силу того, что задача оперативно- календарного планирования характеризуется огромным числом взаимосвязей, многое из того, что дает обучение на основании каждого отдельного плана, ошибочно. Предполагается все же, что баланс между правильным и ошибочным обучением складывается в пользу первого, и это ведет к улучшению планов. Сокращение числа взаимных связей в конкретной задаче увеличивает вероятность эффективного обучения. Смещение исходного положения при процессе 2 возможно в предположении, что в какой-то мере для обучения можно использовать сам эталон. Это в общем рационально, если исходный эталон определяется выбором лучшего из нескольких планов. В том случае, когда эталон выбирается из числа планов, построенных только по правилу SIO или только по правилу LRT, оказывается, что последующие планы лишь подтверждают выбор, сделанный для эталонного плана. Количество смещений зависело бы от предполагаемой близости эталона к лучшему из достигнутых планов. Эту особенность процессов можно устранить, приравняв смещения нулю. Особенность процесса обучения 2, состоящая в том, что значения вектора решений устанавливаются заново, имеет определенное преимущество, которое заключается в следующем: когда достигнут новый эталон, всем элементам его вектора решений, не совпадающим с элементами, соответствующими прежнему эталону, придаются ранее известные значения и в будущем эти элементы имеют равные возможности влияния на обучение. При обучении первого типа остаточные смещения могут быть положительными или отрицательными относительно нового эта- 269
лона, что определяет большие или меньшие возможности влияния на обучение до достижения конечной точки процесса. Последнее из трех различий между типами обучения 1 и 2 введено для того, чтобы расширить возможности поиска в состоянии сильного смещения. Если пользоваться постоянным абсолютным изменением вероятностей и отказаться от исходного смещения (первый тип обучения), то главная часть всего поиска будет выполнена в почти несмещенном состоянии. Поэтому приходится выработать большое число планов для того, чтобы обеспечить некоторую возможность поиска в сильно смещенном состоянии. Второй процесс позволяет быстро или медленно пройти через состояние, близкое к несмещенному, и обеспечивает неограниченный поиск в состоянии любого желательного смещения, определяемого ожидаемым сходством векторов решений для последовательно вырабатываемых планов, с одной стороны, и эталонного плана — с другой. С помощью процесса 2 можно проверить гипотезу, состоящую в том, что сходству векторов решений сопутствует близость календарных продолжительностей выполнения соответствующих планов. Назначив исходное смещение на уровне верхнего предела, можно выработать планы с различной ожидаемой степенью сходства. Затем можно установить, действительно ли векторам решений, имеющим тесное сходство между собой, соответствуют в общем близкие по величине календарные продолжительности выполнения плана. Если такое соответствие имеет место, то тем самым выполняется одно из основных условий эффективности процесса обучения. Подвергнуть испытанию сам процесс обучения можно, изменив его на обратный и попытавшись выработать «плохие» планы, чтобы посмотреть, на много ли отличается план с наименьшей календарной длительностью выполнения из числа «плохих» от самого короткого из «хороших» планов. Если разница в общем невелика, то можно предположить, что либо используемый процесс обучения неэффективен, либо лучший из «плохих» планов представляет собой случайную неудачу и, стало быть, данный процесс обучения ничуть не лучше процесса несмещенного случайного отбора. 7. СРАВНЕНИЕ ПРОЦЕССА ОБУЧЕНИЯ 3-ГО ТИПА С 1-М И 2-М ТИПАМИ При процессах обучения 1-го и 2-го типа поиск начинается с относительно несмещенной случайной выборки планов, а затем постепенно получает направление в сторону планов, обладающих заданным ожидаемым сходством с лучшим найденным планом. При обучении 3-го типа случайный отбор в начале процесса опущен и поиск, имея отправной точкой случайный план, выполняется в окрестности планов, обладающих заданной степенью сходства 270
до тех пор, пока не будет найден более выгодный план. Этот план? становится новым эталоном, и выполняется поиск в его окрестности и т. д. Можно ожидать, что на практике было бы выгодней принимать за исходный эталон лучший из нескольких случайно выбранных планов. Для целей эксперимента полезно, может быть, начинать со случайно выбранного плана с тем, чтобы выяснить,, насколько данный метод справляется с трудностями, которые могут возникнуть, если исходный эталон окажется сравнительно «плохим». Можно также ожидать, что последний вариант создает большие возможности для обучения и тем самым большую очевидность результатов обучения при анализе той или иной из вырабатываемых последовательностей планов. 8. СРАВНЕНИЕ ПРОЦЕССА ОБУЧЕНИЯ 4-ГО ТИПА С ПРОЦЕССАМИ 1-ГО, 2-ГО И 3-ГО ТИПОВ Процессы, обучения 1-го, 2-го и 3-го типов сходны тем, что, начиная с некоторого момента процесса поиска, последовательность решений, установленная эталонным планом, в основном повторяется во всех планах, вырабатываемых в дальнейшем. В особенности это относится к тому случаю, когда все элементы вектора решений достигают своих максимальных значений, соответствующих достоверности. В отличие от первых трех процессов при обучении 4-го типа нет гарантий того, что какой-либо элемент вектора решений достигнет максимума, соответствующего достоверности. Но если этого не происходит, то нет никаких оснований ожидать стабильности или повторения последовательностей решений в вырабатываемых в дальнейшем планах. При этом типе обучения предполагается, что для любого момента времени в ходе обучения существуют ключевые пункты решения, определяющие качество плана. Можно надеяться на достаточную взаимозависимость отдельных решений, что позволило бы определить место ключевых пунктов и сместить соответствующие им вероятности в сторону лучшего плана. Когда смещение достигает верхнего предела и соответствующие частные решения повторяются с высокой вероятностью, надо рассчитывать на появление новой совокупности ключевых пунктов и т. д. Этот метод обучения требует большей независимости между пунктами решений, чем другие три метода, и поэтому можно ожидать, что из всех рассмотренных методов он окажется наименее эффективным. Однако, если существует достаточная независимость и если в результате имеется ограниченное число ключевых пунктов, существенно влияющих на качество плана, тогда этот метод может иметь некоторые преимущества перед другими. В связи со своеобразием этого типа обучения, исходя из- благоприятных априорных предположений, думается, что в данном случае стоит пойти на выборочное испытание. 271
9. ПРОГРАММА Программа, по существу, состоит из двух частей: из подготовительного раздела и раздела планирования й обучения. Подготовительный раздел производит обработку входных данных и устанавливает необходимую структуру записей и параметры для раздела планирования и обучения. Раздел планирования и обучения вырабатывает планы только по правилу SIO или только по правилу LRT, выбирает в качестве эталона лучший из этих планов и вырабатывает дополнительные планы, комбинируя в каждом случае правила SIO и LRT. Планы могут вырабатываться с помощью процесса случайного отбора или с использованием описанного выше процесса обучения. Случайные планы можно получить, начав с нулевого смещения и приравняв параметры обучения нулю. Недостаток места не позволяет остановиться на дальнейших подробностях программы. J0. ОПИСАНИЕ РЕЗУЛЬТАТОВ ИСПЫТАНИЯ Ниже изложена краткая сводка крайне ограниченных данных, собранных для того, чтобы ответить на вопрос — подает ли в действительности достаточные надежды метод обучения для того, чтобы продолжить его разработку. Будут описаны и рассмотрены результаты, полученные с помощью каждой из упомянутых выше моделей обучения, а также результаты теста сходства и исследования устойчивых закономерностей, сформулированные и описанные ниже. Испытание различных процессов обучения проводилось на трех задачах, однако, как это видно из дальнейшего, не все эти задачи использованы для каждого из процессов. Первая задача является задачей 6x6x6 (табл. 2А), то есть для каждого из шести изделий требуется шесть операций — по одной операции на каждом из шести имеющихся станков. Время на операцию выбрано по таблице случайных чисел и варьирует от одного до десяти часов. Порядок операций в технологическом процессе также устанавливался путем случайного отбора, при этом вводилось ограничение: для каждого изделия на каждом из станков выполнялась одна операция. Вторая задача является задачей 10 х 10 х 10 (табл. 2Б) — десять изделий с десятью операциями для каждого по одной на каждом из десяти имеющихся станков. Трудоемкость операций устанавливалась методом случайного отбора и колебалась от 1 до 99 часов. При назначении станков обеспечена тенденция к выполнению начальных операций на станках с малыми номерами и более поздних операций на станках с большими номерами. Такая ситуация, когда 272
Таблица 2 ДАННЫЕ ОБ ИЗДЕЛИЯХ А. ЗАДАЧА-ТЕСТ 6X6X6 операции 1 2 3 4 5 6 Изделия I те я то н о 3 1 2 4 6 5 время на операцию, часы 1 3 6 7 3 6 и то я те н о 2 3 5 6 1 4 время на операцию, часы 8 5 10 10 10 4 ш те я те ь о 2 3 4 6 1 2 5 время на операцию, часы 5 4 8 9 1 7 IV те к те н о 2 2 1 3 4 5 6 время на операцию, часы 5 5 5 3 8 9 V те к я те н о * 3 2 5 6 1 4 время на операцию, часы 9 3 5 4 3 1 VI те Я те н о 2 2 4 6 1 5 3 время на операцию, часы 3 3 9 10 4 1 Б. ЗАДАЧА —ТЕСТ 10X10X10 № операции 1 2 3 4 5 6 7 8 9 10 Изделия I № станка 1 2 3 4 5 6 7 8 9 10 время на операцию, часы 29 78 9 36 49 11 62 56 44 21 И № станка 1 3 5 10 4 2 7 6 8 9 время на операцию, часы 43 90 75 11 69 28 46 46 72 30 III № станка 2 1 4 3 9 6 8 7 10 5 время на операцию, часы 91 85 39 74 90 10 12 89 45 33 IV станка 2 3 1 5 7 9 8 4 10 6 время на операцию, часы 81 95 71 99 9 52 85 98 22 43 V № станка 3 1 2 6 4 5 9 8 10 7 время на операцию, часы 14 6 22 61 26 69 21 49 72 53 18 Заказ № 195 273
Продолжение табл. 2 операции 1 2 3 4 5 6 7 8 9 10 VI № станка 3 2 6 4 9 10 1 7 5 8 время на операцию, часы 84 2 52 95 48 72 47 65 6 25 VII станка 2 1 4 3 7 6 10 9 8 5 время на операцию, часы 46 37 61 13 32 21 32 89 30 55 VIII № станка 3 1 2 6 5 7 9 10 8 4 время на операцию, часы 31 86 46 74 32 88 19 48 36 79 Щ IX № станка 1 2 4 6 3 10 7 8 5 9 время на операцию, часы 76 69 76 51 85 11 40 89 26 74 X № станка 2 1 3 7 9 10 6 4 5 8 время на операцию, часы 85 13 61 7 64 76 47 52 90 45 В. ЗАДАЧА - ТЕСТ 20X5X5 № операции 1 2 3 4 5 Изделия I станка 1 2 3 4 5 время на операцию, часы 29 9 49 62 44 II станка 1 2 4 3 5 время на операцию, часы 43 75 69 46 72 III № станка 2 1 3 5 4 время на операцию, часы 91 39 90 12 45 IV станка 2 1 5 3 4 время на операцию, часы 81 71 9 85 22 V станка 3 2 1 4 5 время на операцию, часы 14 22 26 21 72 операции 1 2 3 4 5 VI № станка 3 2 5 1 4 время на операцию, часы 84 52 48 47 6 VII Mb станка 2 1 3 4 5 время на операцию, часы 46 61 32 32 30 VIII станка 3 2 1 4 5 время на операцию, часы 31 46 32 19 36 IX станка 1 • 4 ' 3 2 5 время на операцию, часы 76 76 85 40 26 X станка 2 3 1 4 5 время на операцию, часы 85 61 64 47 90 274
Продолжение табл. 2 операции 1 2 3 4 5 XI станка 2 4 1 5 3 время на операцию, часы 78 36 И 56 21 XII станка 3 1 2 4 5 время на операцию, часы 90 11 28 46 30 XIII № станка 1 3 2 4 5 время на операцию, часы 85 74 10 89 33 XIV № станка 3 1 2 4 5 время на операцию, часы 95 99 52 98 43 XV № станка 1 2 5 3 4 время на операцию, часы 6 61 69 49 53 операции 1 2 3 4 5 XVI станка 2 1 4 5 3 время на операцию, часы 2 95 72 65 25 XVII станка 1 3 2 4 5 время на операцию, часы 37 13 21 89 55 XVIII станка 1 2 5 3 4 время на операцию, часы 86 74 88 48 79 XIX станка 2 3 1 4 5 время на операцию, часы 69 51 11 89 74 XX станка 1 2 3 4 5 время на операцию, часы 13 7 76 52 45 отдельные виды оборудования тяготеют к тому или иному этапу технологического процесса, типична для механообрабатывающих цехов, где, как правило, на продольно-строгальных, поперечно- строгальных, токарных, винторезных и т. п. станках выполняются черновые операции, на фрезерных, сверлильных и расточных станках—получистовые операции, а на шлифовальных, полировальных станках и на окрасочных стендах — чистовые и отделочные операции. Третья задача 20 х 5 х 5 (табл. 2В); двадцать изделий, по пяти операций для каждого — по одной на каждом из пяти имеющихся станков. Длительности операций те же, что и в задаче 10 X 10 X 10. Сохраняется и нумерация станков, но с учетом того, что их имеется не десять, а пять. Это означает, что та же самая работа должна быть выполнена с помощью вдвое меньшего количества станков. П. МОДЕЛЬ НЕСМЕЩЕННОГО СЛУЧАЙНОГО ОТБОРА Описанный выше (см. раздел 2) процесс несмещенного случайного отбора с использованием элементарных правил очередности запуска изделий будет, как правило, служить базой для сравни- 18* 275
тельной оценки эффективности различных моделей процесса обучения. Результаты, полученные в каждой из задач-тестов при выборе случайных планов без обучения, показаны на рис. 44. Представляет интерес тот факт, что во все* испытаниях в результате случайно выбранных комбинаций правил было найдено много планов, которые оказались существенно лучше самого лучшего из планов, полученных при использовании какого-либо одного правила. Во всех испытаниях большая часть планов, выработанных на основе комбинации двух правил, была лучше наименее выгодного плана из числа построенных с применением только правила SIO или только правила LRT. В задаче 6x6 для модели несмещенного случайного отбора, не подчиненного какому-либо правилу, из 500 планов оказался один с лучшим по выборке временем выполнения, равным 60 часам. Если эта выборка правильно отражает распределение планов для данной модели, то вероятность отсутствия плана с временем выполнения, не превышающим 60 часов в выборке, состоящей из 50 планов, равняется 0,62, или примерно двум третям. Случайная выборка с использованием указанных выше правил дала из 50 планов пять с временем 60 часов и менее. Если опять-таки эта выборка репрезентативна, то вероятность для данной модели того, что при 50 попытках не удастся получить ни одного плана, равноценного плану со временем 60 часов, меньше 0,00001, что составляет один шанс из 100 000. 12. МОДЕЛИРОВАНИЕ ПРОЦЕССА ОБУЧЕНИЯ 1-ГО ТИПА В связи с тем, что неэффективность описанного выше процесса обучения 1-го типа была рано установлена, испытание выполнено только на задаче 6x6. Результаты показаны на рис. 45. Заметно существенное различие по сравнению с экспериментом для модели случайного (без обучения) отбора, охватившим 50 планов (рис. 44, а). Не считая третьего эксперимента (см. рис. 45, в), в результате процесса обучения получена совокупность планов с меньшей долей плохих планов и состоящая из более выгодных планов сравнительно с результатами случайного процесса (за исключением полученного с помощью этого процесса плана со временем, равным 56 часам). Третий эксперимент (см. рис. 45, в) интересен тем, что хороший план был найден среди в общем неудачных планов и поиск был направлен в область, где хорошие планы редки. За исключением 69-го, все планы, начиная с 63-го, вырабатывались в соответствии с одной и той же последовательностью решений. Одна и та же последовательность решений может дать более чем один план, если ко времени выполнения правила два или более изделий имеют одинаковые приоритеты и готовы к обработке на станке. 276
03 S я • " *> 05 * CD Ci, a я 2 я л Я« м »to _fa « 'g s ьз fa н fa я о> cd ч fa я ? СГ to fa Я Со я о я оно Q s я« « Я я И § я IIs fa 2 or я я я л 5 о я я о Я - ? *в Я Я 50 fa я g ю Ь S Е »гя я „ о со U)fa * € 5 л >— со о я ю \у fa ч СО Календарная длительность выполнения плана ^сэ OY <S сЯ Календарная длительность быполнения плана *ч О) Оо <=а са Оэ S N $ ой 3 fc? ^ &) N> ^ ^ Со <^ N0 с^ Са ср cs) Q са сэ со <*о ;?* j^4 Q5 о© са Np « са qj «а ^1 f X я CD CO OVw to <D CO «О Л _ OVCO *< CD лях 2 я Л? /ШШ# Календарная длительность быполнения плана 48 планоб 1план 1план
10 20 30 40 Номер плана а 50 > 23 плана 18 планов 10 20 30 40 50 Номер плана б 12 планов -*- 6 планов \ 33 плана 1007Ш) . й - 5 планов 23 плана 10 20 30 40 50 60 70 80 90 Номер плана в Рис. 45. а) График календарной длительности выполнения плана. Задача 6X6, обучение 1-го типа C3 плана), б) График календарной длительности выполнения плана. Задача 6X6, обучение 1-го типа C2 плана), в) График календарной длительности выполнения плана. Задача 6X6, обучение 1-го типа G9 планов).
Тогда случайный выбор нарушает возникшую неопределенность, в результате чего с помощью повторения одной и той же последовательности решений может получиться несколько планов. Интересно отметить, что для задачи 6x6x6 окончательный оптимум равен 55 часам. (Это можно доказать различными способами, вводя нижние границы для времени.) Но это, однако, не значит, что какая-либо из комбинаций использованных нами двух правил способна обеспечить построение оптимального плана. 13. ОБУЧЕНИЕ 2-ГО ТИПА Второй тип обучения опробован при решении всех трех использованных для испытания задач. В задаче 6x6x6 получились результаты, сравнимые с соответствующими данными, характеризующими первый тип обучения. Поскольку исходным для процесса обучения 2-го типа является смещенное состояние, можно было ожидать, что рассеяние календарные длительностей выполнения планов здесь будет меньше, чем при обучении 1-го типа. Это ожидание подтверждается сравнением рис. 46, а и рис. 45, а, б, в. Однако один этот пример еще далеко не является решающим доказательством наличия этого соотношения. При решении задачи 10 х 10 х 10 (рис. 46, б), доказательств прогрессирующего обучения также не оказалось. Снова, за исключением одного случая, процесс обучения приводит к большому числу хороших планов. Однако при этом получается примерно такое же количество плохих планов, которые не преобладали и среди ранних планов, где их можно было объяснить относительно несмещенным состоянием процесса. Как и прежде, оказалось, что хороший план найден в области интенсивных вариаций, и поиск был непрерывно направлен на эту область. На рис. 47, а показано накопленное число построенных применительно к задаче 10 X X Ю х 10 планов с временем, меньшим х часов, для процесса обучения 2-го типа и для процессов без обучения. При решении задачи 20 х 5 х 5 впервые получено очевидное доказательство прогрессирующего обучения и впервые в ходе процесса обучения вырабатывается план лучший, чем при несмещенном случайном выборе. И снова оказалось, что наилучший план найден в области интенсивных вариаций. Поскольку создалось впечатление, что имеет место прогрессирующее обучение, решено было продолжить это испытание за пределы тех примерно 50 планов, которыми ограничивались другие испытания. Среди последующих 25 планов не оказалось ни одного, который был бы лучше прежних, и испытание было прекращено. Диаграмма накопленных частот, аналогичная составленной для задачи 10 х 10 х 10, показана на рис. 47, б. 279
3 -Is 63 * -со со я я^э со со *ег *ОЧЭ Я Я Я * о ° - **s ^ S Я 3 го со ? tr я 5 а о о о » СЛ Ю Ч I § | | SB § 2 ас d а а я s а ж я g я Календарная длительность выполнения плана ^ й ^ ^ ^ 9? Календарная длительность выполнения плана 33 плана Календарная длительность дыполнения плана 73 плана 2плана
Х-календарное Время выполнения плана а 50 1 зо I 10 Обучение 2-го типа—^/' /.^ обучения • г— 1350 ПОО П50 1500 1550 1600 1650 Календарное время выполнения, плана 5 1700 Рис. 47. а) Диаграмма кумулятивного распределения. Задача 10 X 10,. с обучением 2-го типа и без обучения E4 плана), б) Диаграмма кумулятивного распределения. Задача 20 X 5, с обучением 2-го типа и без обучения. E0 планов).
И на этот раз полученные результаты неубедительны в связи с малым объемом выборки. Однако складывается впечатление, что для задач большего размера процесс обучения, пожалуй, оправдывает затраты на него. Было известно, что для задачи 20 х 5 х 5 возможный оптимум составляет 1165 часов. Соответствующий план можно построить, если как можно скорей подать изделия 5 и 17 на станок 4 и затем не допускать простоев этого станка г. Этот оптимум не может быть достигнут с помощью какой-либо комбинации двух применяемых нами правил, поскольку первая операция изделия бив соответствии с правилом SIO, и в соответствии с правилом LRT не является первоочередной на станке 4, ее нельзя начать в 0 часов, а это необходимо для получения оптимального результата. Какой наилучший план может быть построен при использовании указанных правил — неизвестно, но лучший из полученных в ходе экспериментов планов требовал для своего выполнения 1359 часов. 14. ОБУЧЕНИЕ 3-ГО ТИПА Испытания процесса обучения 3-го типа проводились только на задачах 6x6x6 и 20x5x5. Результаты, полученные лри решении второй задачи, показаны на рис. 48. Для каждого из испытаний характерной чертой является то, что сравнительно хороший план удается найти в самом начале решения, но отыскать с помощью процесса обучения более рациональный вариант оказывается невозможным. Хорошие планы появляются уже в самом начале испытания, так что их появление вряд ли можно объяснить эффективностью процесса обучения, а скорее случайным стечением обстоятельств, Полученные данные снова указывают на то, что хороший план был найден в области, характеризующейся большой изменчивостью качества планов, а относительная частота хороших планов не слишком велика. Возможно, что этот тип обучения оказался бы более практичным, если начинать поиск поблизости от лучшего из небольшого "числа планов, полученных с помощью случайной выборки, и расширять область поиска только в том случае, если не удается добиться успеха. Испытание такого рода вариантов не проводилось. 15, ОБУЧЕНИЕ 4-ГО ТИПА Обучение 4-го типа применялось для условий задач 6x6x6 и 20 х 5 х 5. Испытания проводились как с целью получения хорошего плана (см. рис. 49, а, б), так и с целью нахождения наи- 1 В оригинале, видимо, опечатка, так как в соответствии с табл. 2 В первая операция для изделия 5 и вторая для изделия 17 выполняются на станке З.—Прим. ред. 282
худшего из возможных планов (см. рис. 49, в и 49, г). Хотя характеристика этого типа обучения уже давалась выше, не лишне повторить, что это единственный из процессов обучения, не гаран- 100% SI0 1350 О 10 20 30 40 50 60 70 Номер плана Рис. 48. График календарной длительности выполнения плана. Задача 20 X 5, обучение 3-го типа E0 планов). тирующий даже медленной сходимости. Практически до тех пор, пока параметры изменения вероятностей были велики, в проведенных экспериментах сходимости не было ни в одном из пунктов решения. В том случае, когда каждое изменение вероятностей при- 283
*» - Оз^^ ТЗ S со о * ' я««?, 03 si- ill* я и ^ 5 ^ о* 5 о, S §.* Я w о S g g 2 2 cr я E о я о я^о» о я о ь » н >i 5 я я и 5»»н я 2? » 3 я 5 * й о ff Я ез и « га я я 2 03 03 (Т> 2 йэ д Ш weas оз оэ S я Da Л g о 0э оэ ? 5я ? а>р 5 ьзхооя О^0Э » Л" оэ я - О Л 5з СЛ о\0э w s>fi Si &> о ova» «-1 Я л 3ggx ОЗ i О я *i ov Сл? , Л °» я 8 j\j Я Я я^э я *а • оэ п> оэ «\> у„ич я ""^сл ^ til Is ¦о оэ оэ я .в* я о я о» я«« . Календарная длительность выполнения плана Ol СП СЭ> <л с=э °* Календарная длительность Выполнения плана а> 1 Календарная длительность дыполнения плана Календарная длительность выполнения плана <\> 4Eпланов 4 плана
нималось равным 0,05, после построения 50 планов лишь половина элементов вектора решения имела значения выше 0,78 или ниже 0,25. При изменении вероятностей на 0,15 после 50 планов ни один элемент не имел величину больше 0,68 или меньше 0,41. Результаты решения задачи 6x6x6 указывают на наличие прогрессирующего обучения. Относительная частость хороших планов значительно ниже, чем при 2-м типе обучения, что указывает на замедленность процесса обучения и более случайное его состояние. Этого можно было ожидать, поскольку моделью стабильность не обеспечивается. Прогресс обучения может быть объяснен следующим образом: каждый хороший план не оказывает непрерывного влияния на направление поиска, а как бы добавляет некоторое количество информации, после чего забывается. Поэтому направленность и стабильность достигаются только после накопления большого опыта. Для задачи 20 X 5 х 5 поиск хорошего плана приводит к посредственному результату, но подтверждает предположение о более медленном темпе процесса обучения, возможно, настолько медленном, что в последовательности из 50 планов эффективность обучения почти не проявляется. Сравнение взаимно соответствующих — прямого и обратного — процессов вновь свидетельствует, что обучение возможно. Хотя в свете достигнутых результатов данный процесс представляется неэффективным, тем не менее он дает некоторую информацию о всей проблеме обучения в целом. 16. ТЕСТ СХОДСТВА Для оценки применимости процессов обучения был разработан метод, который назван «тестом сходства». Тест этот направлен на то, чтобы определить, имеет ли место существенное родство между всеми планами, выработанными на основе сходных последовательностей решений. Если нет, примененные типы обучения были бы, вероятно, совершенно неэффективными. Тест сводится к следующему: некоторый план и календарная длительность его выполнения принимаются за постоянный эталон, затем вырабатывается большое число других планов с различной степенью сходства — от нуля до полного совпадения. Эти планы рассматриваются с целью определить, порождают ли сходные с эталонной последовательности решений такие планы, время выполнения которых ближе к эталонному времени, чем для планов, возникших на основе менее сходных последовательностей. Тест выполнен только на задаче 6x6x6 для трех различных последовательностей решений. В качестве эталона была выбрана последовательность, на основе которой был получен лучший из 285
всех выработанных ранее планов. Длительность его выполнения равнялась 56 часам. Было установлено, что та же последовательность может дать план с длительностью выполнения в 60 часов. При втором испытании за эталон принималась последовательность, в соответствии с которой был получен план с наибольшей длительностью выполнения (93 часа). Эта же последовательность дала планы с длительностью выполнения в 74 и 85 часов. И, наконец, в качестве эталона была избрана последовательность, в соответствии с которой был получен план с длительностью выполнения, равной 64 часам. На основе этой последовательности были также построены планы с длительностью выполнения в 57, 58 и 67 часов. Таким образом, испытанию подвергались две последовательности, давшие хорошие планы, и одна, давшая сравнительно неудачный план. Графически результаты этих испытаний представлены на рис. 50, а—е. Сходство длительностей выполнения сходных планов совершенно очевидно. Данные показывают, что в случаях, когда эталоном выбран хороший план, среднее время выполнения плана увеличивается с ростом несходства этих планов с эталоном. В случае, когда эталоном выбран плохой план, происходит обратное. В целом результаты указывают, по-видимому, на то, что множество всех относительно хороших (или относительно плохих) планов включает очень несхожие планы. Представляется, что это множество распределено в пространстве планов не равномерно, а образует сосредоточения в зонах концентрации. Вместе с тем в указанных сосредоточениях «желательные» планы составляют, очевидно, лишь небольшую часть и сопровождаются большим числом планов с промежуточными длительностями выполнения. Если такое утверждение о пространстве последовательностей решений верно, то правильная методика заключается в определении местонахождения предположительно благоприятных зон поиска и в предпочтительно тщательном поиске в этих зонах. 17. АНАЛИЗ УСТОЙЧИВЫХ ЗАКОНОМЕРНОСТЕЙ Последний анализ, которому были подвергнуты полученные данные, имел целью установить, подтвердилось ли в отношении хороших планов априорное предположение о высоком проценте выборов правила SIO на ранних стадиях планирования и правила LRT на поздних стадиях. Анализ заключался в том, что для каждой задачи большую совокупность случайных (без обучения) планов, группировали по признаку длительности их выполнения, определяя затем процент выборов правила SIO на ранних и на поздних стадиях процесса планирования. Количественные результаты этого анализа приведены в табл. ЗА, ЗБ и ЗВ. Во второй части каждой 286
95 90 85 _ 80 | 75 1 7° 1 65 I 60 ^55, X XX X X XXX X XX XX X X X X X Эталон=56 * часам О 2 4 6 8 10 12 ft 16 18 20 22 2*t 26 28 30 32 Зч- 36 Число выборов правила очередности, отличающихся от последовательности решений эталонного плана а 95 % -ч 53 *- 1 *!? g «S 1 1 90 85 811 75 70 65 8 •ч 55 95 \ 90 | 80 | 75 ¦j 70 %65 1 60\ ё 4^5 L 1 X X |.Т1., X К XX X X X X X X 1 1 1 1 X „ X X X X XX X Ух х * * XX X X Эталон=93 часам . х х X t X * х i X X XXX X X XX х х х х х х X X X X X XX X X X* X » X х » 5 хх 1 1 1 1 L. ' 2 4 6 8 10 12 1U 16 18 20 22 2k 26 28 30 32 3k 36 Число 8ы5оров правила очередности, отличающихся от последовательности решений эталонного плана 5 50 XXX X 8 X X $ 5 дах$Х XXX X X х х XXX .L ! { ,*¦> й х 5 Й х х * х х * х * х X ш ^¦K^gg^xN'^x^^C •" "¦" Х*НвС *¦"• —¦« *HSf "'S1 ^^™ ""ЧС "^ Н^ ¦"¦• ¦""¦ тттш , .^^ ^^ ¦_» шш i ¦ i^ ^лЛ* х х х хх х х w х х^ ^ х х Эталон=64 часап хх5 х * X X X X X X J * О 2 4 6 8 10 12 ft 16 18 20 22 24 26 28 30 32 34 36 Число выборов правила очередности,^ отличающихся от последовательности решений эталонного плана В Рис. 50. а) Испытание возможности обучения. Задача 6 X 6 A02 плана), б) Испытание возможности обучения. Задача 6X6 A01 план). в) Испытание возможности обучения. Задача 6X6 B00 планов).
Таблица 3 ОТНОСИТЕЛЬНАЯ ЧАСТОСТЬ ПРИНЯТИЯ РЕШЕНИЙ ПО ПРАВИЛУ SIO (В ПРОЦЕНТАХ К ОБЩЕМУ ЧИСЛУ РЕШЕНИЙ) А. ЗАДАЧА 6X6X6 • Планы Диапазон дли-| тельно- стей выполнения планов % решений по правилу SIO при разбивке всех планов на 4 группы % решений по правилу SIO при разбивке всех планов на 2 группы % решений по правилу SIO по всем планам в целом Лучшие 20% планов Вторые 20% планов Третьи 20% планов Четвертые 20% планов . . . . Пятые 20% планов Всего 57—62 63—66 67—68 69-75 76—93 62,5 56,8 52,7 41,6 42,9 53,4 61,2 60,4 51,4 47,5 41,6 54,5 53,8 51,0 50,0 46,3 50,3 52,3 52,6 53,4 53,6 47,5 48,4 53,3 61,9 58,6 52,1 44,6 42,3 54,0 53,2 52,2 51,8 46,9 49,4 52,8 56,7 55,4 51,9 45,6 45,8 53,4 Сопоставление Лучшие 20% пла- Худшие 20% пла- Разность 63 43 +20 61 42 +19 54 50 +4 53 48 +5 62 42 +20 53 49 +4 57 46 +П Б. ЗАДАЧА 10 X 10 X 10 Планы Диапазон длительностей выполнения планов % решений по правилу SIO при разбивке всех планов на 4 группы % решений по правилу SIO при разбивке всех планов на 2 группы % решений по правилу SIO по всем планам в целом Лучшие 20% планов Вторые 20% планов Третьи 20% планов 1103—1167 1168—1205 1207—1225 51,4 55,3 53,4 47,6 50,0 48,4 47,5 54,9 49,0 53,6 52,7 50,6 49,5 52,7 50,9 50,6 53,8 49,8 50,0 53,2 50,4 288
Продолжение табл. 3 Планы Четвертые планов Пятые 20% нов . . . 20% пла- Всего Диапазон длительностей выполнения планов 1229—1255 1258—1370 % решений по правилу SIO при разбивке всех планов на 4 группы 53,0 49,1 51,9 48,6 46,8 47,8 47,6 50,8 49,3 48,0 50,9 50,7 % решений по правилу SIO при разбивке всех планов на 2 группы 50,8 48,0 49,9 47,8 50,9 50,0 % решений по правилу SIO по всем планам в целом 49,3 49,4 50,0 Сопоставление Лучшие 20% пла- Худшие 20% планов Разность 51 49 +2 48 47 -1 48 51 -3 54 51 +3 50 48 +2 51 51 0 50 49 + 1 В. ЗДДАЧА 20 X 5 X 5 Планы Диапазон длительностей выполнения планов % решений по правилу SIO при разбивке всех планов на 4 группы % решений по правилу SIO при разбивке всех планов на 2 группы Лучшие 20% планов Вторые 20% планов Третьи 20% планов Четвертые 20% планов . . . . Пятые 20% планов Всего 1359—1438 1442—1463 1465-1511 1511-1543 1550—1759 1359—1759 51 54 51 48 45 50 53 54 53 51 49 52 37 43 43 48 45 43 40 37 45 45 47 43 52 54 52 50 47 51 39 40 44 46 46 43 Сопоставление Лучшие 20% пла- Худшие 20% пла- Разность 51 45 +6 53 49 +4 37 54 -8 40 47 52 47 -7| +5 39 46 -^ 45 47 -2 19 Заказ № 195 289
из таблиц приведено сравнение процентов выборов правила SIO в г/5 лучших и 1/5 худших планах. Первая часть сформулированного выше предположения существенно подтверждается только при решении задачи 6x6x6 (табл. ЗА): хорошие планы были выработаны при высоком проценте выборов правила SIO на ранних стадиях планирования. Вторая часть предположения подкреплена лишь при решении задачи 20 х 5 х 5. Таким образом, гипотеза в полном составе на этих примерах не подтвердилась. Более умеренное предположение, в соответствии с которым в хороших планах должен быть больший процент ранних выборов SIO и поздних выборов LRT, чем в плохих планах, получило лишь слабое подтверждение. Однако следует иметь в виду, что весь рассматриваемый вопрос запутан, так как правила SIO и LRT часто приводят к одному и тому же решению и это не позволяет выделить изучаемый фактор. Единственный положительный вывод, который может быть сделан, сводится к тому, что вероятностная комбинация правил планирования дает лучшие результаты, чем каждое из них в отдельности. 18. ЗАКЛЮЧЕНИЕ Из приведенных выше результатов можно сделать два следующих наиболее важных вывода: 1) несмещенная случайная комбинация правил планирования дает лучшие результаты, чем каждое из них, взятое в отдельности; 2) обучение возможно. Остается вопрос, насколько желательно обучение, поскольку несмещенная случайная комбинация правил оказалась столь эффективной. Неясно также, что должно быть предметом обучения, поскольку наше первоначальное предположение подтвердилось не очень существенно. Хотя, по-видимому, имея дело с относительно простыми задачами, охваченными экспериментом, можно легко обойтись без электронно-вычислительных машин; вполне вероятно, что способ несмещенного случайного отбора при комбинациях из 5—10 правил значительно превзошел бы способности человека применительно к задачам сравнительно большого размера. В конце концов, неплохо было бы хотя бы проверить эту гипотезу. Время, необходимое для выполнения программы обучения, растет пропорционально первой степени величины задачи, поэтому с помощью имеющихся вычислительных машин можно было бы справиться со сравнительно большими задачами. В заключение можно сказать, что мы не думаем, будто охватили все возможные идеи, касающиеся использования программ вероятностного обучения для решения задач, связанных с оперативно-календарным планированием, и надеемся, что наша работа послужит стимулом для других исследований в этом направлении.
ГЛАВА 16 Эффективное использование рабочей силы в условиях меняющегося спроса М. АЛ ЛЕН1 1. ВВЕДЕНИЕ Выравнивание производства представляет собою одну из классических задач управления производством и запасами. Эта задача заключается, попросту говоря, в определении наилучшего способа реагирования на большие колебания потребительского спроса. Например, в случаях, когда поступление заказов ослабевает, с коммерческой точки зрения остается только три выхода. 1. Там, где накапливание товарных запасов допустимо, предприятие может стать на путь сохранения неизменного темпа производства без каких-либо уточнений в отношении численности рабочей силы. Запасы при этом, конечно, возрастут, что может привести к чрезмерным издержкам. 2. В случаях, когда накапливание запасов неосуществимо или не соответствует намерениям данного предприятия, возможен второй способ прямого реагирования на изменение потребительского спроса — снижение темпа производства. Если соответственно не уменьшить численность рабочей силы, в результате возрастут простои, что при современном уровне тарифных ставок обойдется довольно дорого. 3. Стремясь удержать простои в разумных границах, предприятие может прийти к убеждению в неизбежности увольнения некоторого числа рабочих. Реакция на изменение спроса в такой форме может привести к чрезмерным административным расходам. В общем затраты будут наименьшими тогда, когда предприятие реагирует на колебания спроса комбинацией перечисленных выше вариантов решения. Существует даже реальная возможность разработать ряд правил, позволяющих вычислить такого рода оптимальную комбинацию [2]. 1 Работает в «Дженерал электрик компания. 19* 291
1.1. ПРОИЗВОДСТВО НЕПОВТОРЯЮЩЕЙСЯ ПРОДУКЦИИ Надо признать, однако, что в отраслях промышленности, имеющих отношение к рассматриваемому вопросу, очень часты случаи, когда модели и типы продукции устаревают так быстро, что ее накопление в виде товаров или полуфабрикатов невозможно. Без запасов, играющих роль буфера при выравнивании производства, колебания численности рабочей силы и (или) простои должны быть еще больше, чем тогда, когда есть возможность работать на склад. 1.2. ПРЕДПРИЯТИЯ С ПРОДУКЦИЕЙ ВОЕННОГО НАЗНАЧЕНИЯ Рассматриваемый вопрос, в частности, стоит остро на предприятиях, выпускающих продукцию военного назначения, где быстрое устаревание технологии зачастую исключает возможность работы на склад. К сожалению, именно предприятия такого типа сталкиваются с наиболее резкими колебаниями спроса. В этом случае применение упомянутой системы правил может еще привести к получению оптимальной комбинации вариантов решения, хотя такой образ действий, по всей вероятности, не очень желателен. Колебания спроса в сочетании с неповторяемостью продукции могут привести к появлению совершенно хаотических условий. Здесь требуется более пристальный, более подробный анализ экономики данного предприятия, для того чтобы найти дополнительные варианты реагирования на подобную обстановку. 1.3. ПОДРОБНЫЙ АНАЛИЗ Цель данного доклада заключается в том, чтобы на основании результатов подробного моделирования на электронно-вычислительной машине проанализировать вопросы управления предприятием в условиях колебаний сбыта. В частности, рассматриваются две различные, но взаимосвязанные группы вопросов. 1. В условиях снижающегося спроса нельзя ли, сохраняя неизменной численность рабочей силы, существенно уменьшить простои, применив подходящее распределение работ? В противоположном случае — в условиях сильной перегрузки предприятия, нет ли возможности надлежащим способом распределения работ уменьшить потребность в сверхурочных работах? 2. Какие изменения можно внести в профиль предприятия для того, чтобы успешнее амортизировать глубокие сдвиги в спросе. В частности — какова эффективность повышения универсальности квалификации рабочих? И как эту универсальность повысить? 292
1.4. ИЗУЧЕНИЕ ПРОИЗВОДСТВЕННЫХ ЦЕХОВ Данное исследование было выполнено от имени дирекции в большом цехе единичного и мелкосерийного производства на одном из заводов «Дженерал электрик компани». В цехе насчитывается 78 станков, разбитых на 18 групп. При выполнении операций заказы проходят последовательно через несколько групп оборудования; в пределах каждой группы соответствующую операцию можно выполнить на любом станке с равными затратами операционного времени и времени на переналадку. Цех был оборудован обычным для единичного и мелкосерийного производства комплектом оборудования (начиная с точных сверлильных станков, требовавших не более двух часов работы на выполнение заказа, и кончая большими расточными агрегатами со средней длительностью обработки в расчете на заказ свыше 50 часов). Маршруты движения заказов в цехе были совершенно случайны, хотя и существовали определенные устойчивые схемы производственных потоков, традиционные для обработки металла резанием. Рабочих в цехе было 40 человек, разбитых в данном случае на 13 групп по признаку взаимозаменяемости в пределах каждой группы. Взаимосвязь рабочей силы и оборудования определялась способностью рабочих данной группы обслуживать ту или иную группу оборудования. В нескольких случаях возможности обслуживания оборудования рабочими частично перекрывались, но многие группы рабочих были в состоянии обслуживать только свои группы станков, так что благоприятные условия для увеличения универсальности квалификации рабочих действительно существовали. Поскольку станков в цехе было 78, а рабочих только 40, производственные возможности в целом ограничивались численностью рабочей силы. С другой стороны, пропускная способность некоторых групп оборудования, в частности крупного, как, например, расточных станков, была ограниченной сравнительно с нормальной потребностью. 1.5. ПРОГРАММА ДЛЯ ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНОЙ МАШИНЫ Рассматриваемая производственная система была моделирована с помощью программы «Дженерэл электрик манюфакчуринг симью- лейте» (ДЭМС), разработанной Службой регулирования производства совместно с производственным отделом «Дженерэл электрик компани». Модель ДЭМС представляет собою легко приспосабливаемую программу общего назначения, написанную на языке «Фортрен» II для электронной машины типа IB M-704. 293
2. ПРАВИЛА РАСПРЕДЕЛЕНИЯ РАБОТ При моделировании первая серия экспериментов была связана со сравнительной оценкой ряда правил распределения работ применительно к условиям снижающейся загрузки цеха. Правило распределения работ, если говорить очень упрощенно, представляет собою способ определить, какое следующее рабочее задание надо выполнять. Например, правило «первым прибыл—первым обслужен» гласит, что надо выбрать то рабочее задание, которое первым прибыло в очередь. Можно сформулировать бесконечно много правил такого рода в зависимости от целей, намечаемых предприятием. В условиях данного эксперимента главная цель заключалась в том, чтобы поддержать использование рабочей силы на возможно более высоком уровне, пока не поступят дополнительные заказы. Вопросы, связанные со сроками, обычно здесь не имеют значения, так как сокращение загрузки приводит, вообще говоря, к уменьшению времени ожидания в очередях. Во всяком случае, здесь должна существовать тенденция к досрочному выполнению рабочих заданий. По этим же соображениям объем незавершенного производства в данном случае не имеет большой важности. 2.1. ПРАВИЛО КРАТЧАЙШЕЙ ОПЕРАЦИИ Конвей [1] показал, что в определенных условиях «состояния устойчивости» на использование оборудования могут оказать влияние такие правила распределения работ, в которых при назначении приоритетов так или иначе принимается во внимание длительность выполнения рабочего задания. В частности, из числа подобных правил, испытанных применительно к условиям состояния устойчивости, наибольшее использование оборудования обеспечивает «правило кратчайшей операции» (см. [1], стр. 221—229). Попросту говоря, в соответствии с этим правилом наиболее высокий приоритет назначается тому изделию, которое требует наименьшего времени для его обработки на данной операции. Однако вопрос, рассматриваемый сейчас, представляет полную противоположность тем вопросам, которые могут возникнуть в условиях состояния устойчивости. Задача данного исследования заключается в том, чтобы изучить способы, с помощью которых цех может лучше приспособиться к более или менее нестабильным условиям. Поэтому, думается, было бы правильнее всего в качестве исходного пункта заново исследовать правило кратчайшей операции применительно к этим новым условиям. 294
2.2. ЗАМЕНЫ МАРШРУТОВ В связи с намерением улучшить использование оборудования надо рассмотреть еще такой фактор, как замена маршрутов. При изучении конкретной совокупности разнообразных заказов обнаружилось, что приблизительно одну треть всех необходимых операций составляют такие операции, каждую из которых можно выполнить более чем на одном станке. Но встретились и такие группы оборудования, обойти которые было невозможно. В частности, малые станки иногда можно заменить большими, но обратное редко имеет место. К сожалению, некоторые из этих крупных станков, как уже указывалось, временами работали с перегрузкой и становились узкими местами. Тем не менее использование возможности замен маршрутов, по-видимому, представляет собой хороший способ смягчить диспропорции, возникающие при загрузке рабочей силы. Таким образом, надо было ответить не на вопрос, повышается ли при замене маршрутов эффективность производства, а на вопрос о размерах возможных при этом улучшений примени- тельно к данной совокупности заказов в данном цехе. Решение о замене маршрута для данной операции, отвлеченно говоря, может быть принято в любое время между моментом прибытия изделия в цех и моментом, когда рассматриваемая операция должна быть начата. В силу того, что принятие таких решений откладывается непосредственно к началу обработки изделия на данной операции, замена маршрутов становится частью распределения работ. В этом случае правило распределения работ не только определяет приоритет для изделий, но и выбор той группы оборудования, на которой должна производиться их обработка. В нашей модели решение о замене маршрута откладывается до момента, когда изделие поступает на данную операцию, и на этом основании замены маршрутов рассматриваются как часть распределения работ. Специфическим способом замены маршрутов является проверка очередей один раз в каждую смену. Если из числа ожидающих в той или иной очереди имеются такие изделия, которые, возможно, не удастся обработать в течение предстоящей смены, то пытаются заменить маршрут, перемещая эти изделия из данной очереди в очередь, которой не хватит для загрузки станка в течение смены. 2.3. ЭКСПЕРИМЕНТЫ, ВЫПОЛНЕННЫЕ ПРИ МОДЕЛИРОВАНИИ. СЕРИЯ 1 В соответствии с вышесказанным первая серия экспериментов, выполненная при моделировании, состоит из оценок четырех способов распределения работ: 1. Правила кратчайшей операции с заменами маршрутов. 295
2. Правила наиболее длительной операции с заменами маршрутов, 3. Правила случайного отбора с заменами маршрутов. 4. Правила случайного отбора без замены маршрутов. Правило наиболее длительной операции- использовалось лишь для контраста с правилом кратчайшей операции. Правило случайного отбора определяет приоритет на основании значения случайного числа. Оно включено в модель как один из способов распределения работ, не поставленных преднамеренно в зависимость от длительности выполнения операции и тем самым как эталон для сравнения. Исходная загрузка цеха, взятая по фактическим данным производственного отдела, оказалась более чем достаточной для полного использования рабочей силы. Однако, имея в виду цель нашего исследования, было предположено, что в результате аннулирования или выполнения контрактов в наличии не было никаких новых работ, которые можно было бы спустить в цех. Поэтому, как только выполнялось рабочее задание, входившее в начальную загрузку, возникала обстановка «истощения» системы. Соответствующие итоговые данные приведены в табл. 1. 2.4. РЕЗУЛЬТАТЫ Наиболее существенные выводы, которые можно сделать на основании этих данных, заключаются в следующем: 1) с точки зрения использования рабочей силы лучшим правилом распределения работ является правило кратчайшей операции; 2) значительные выгоды должны быть получены в результате даже ограниченной возможности замены маршрутов. Упомянутое выше превосходство правила кратчайшей операции в наибольшей степени проявлялось в течение первых 10 недель истощения портфеля заказов. Если бы в течение этого времени действовало правило кратчайшей операции, то процент использования рабочей силы был бы на 3,3 выше, чем при правиле «наиболее длительной операции», и на 1,7 выше сравнительно с включенным в эксперимент правилом случайного отбора. После десятой недели все правила одинаковы в том смысле, что цех полностью освобождается от работ через 27 недель при использовании любого из них. Очевидно, что при данной совокупности заказов и заданном профиле цеха выбор того или иного правила распределения работ может иметь лишь кратковременную эффективность. Однако в наиболее обычном случае полное истощение портфеля заказов не ожидается, и эти кратковременные различия важны. Если все же будет иметь место полное истощение портфеля заказов, то здесь можно применить более существенный критерий, чем число недель, остающихся до полного освобождения цеха от работ. Эта проблема будет кратко рассматриваться в дальнейшем. 296
Таблица J МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ - ВЫБОРКА 1; ЦЕХ С 13 ГРУППАМИ РАБОЧИХ- Неделя 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Общее число недель, необходимое для окончания всех работ в цехе| 1 Правило 1 ° СО а к s S СО со ° ° 5 С s s« 2 100 100 100 100 100 100 94 71 50 36 31 29 26 15 Is. *s « as со со X OQ X О OJ CO ч л c ч « о о 3 \ X С с; CO О Я X X cj 3 100 200 300 400 500 600 694 765 815 851 882 911 937 952 27 «3 S CD ° ° S СУ СУ (У и а 4 771 583 470 382 313 255 198 154 122 96 72 53 38 24 1 Правило 2 i о о се а 05 s х со « СО ч °* s« 5 100 100 100 100 100 100 86 65 44 23 43 38 14 19 «s Is. 5 x 2 w x m x о су m Ч л c ч - О о Я a с ч «J О Я X X О 6 100 200 300 400 500 600 686 751 795 818 861 899 913 932 27 «3 Я со X о X V <у а> ш о ю 7 953 917 859 796 710 618 480 379 299 255 215 177 119 84 1 Правило 3 СО о. к s х СО 0 о со а У я« 8 100 100 100 100 100 100 91 66 48 29 31 29 30 21 ^? Ui со со X 0 X О а> со ч л с ч ч о о 3 со о Я X S U 9 100 200 300 400 500 600 691 757 805 834 865 894 924 945 27 S * со X ° х 9 СУ СУ <у |« 1 10 912 828 745 655 543 431 336 268 223 187 147 ПО 82 52 1 Правило 4 i ° со О. К X х со 0 ° со я« 1 П 100 100 100 99 99 99 85 51 36 26 30 22 18 23 со О ft I'm я со X 0 х о 0) СО с ч « о о 2 «сч со и я XSu 1 12 100 200 300 399 498 597 682 733 769 795 825 847 865 888 27 X су со X ° S IT су СУ о ?¦* а> я" °*« о 0 13 912 827 734 634 547 438 340> 281 239 206 185 163 144 127 • Правило 1. Правило кратчайшей операции с заменой маршрутов. Правило 2. Правило наиболее длительной операции с заменой маршрутов - Правило 3. Правило случайного отбора с заменой маршрутов. Правило 4. Правило случайного отбора без замены маршрутов. 297
Второй вывод имеет отношение к эффективности той особенности правил распределения работ, которую вносят замены маршрутов. Даже при ограниченных возможностях замен маршрутов и при несложном правиле, примененном «здесь, эта особенность приводит к существенному повышению эффективности. Действительно, в каждый момент времени разница между использованием рабочей силы по правилу случайного отбора с заменой маршрутов и при таком же правиле, но без замены превышает соответствующую разницу между правилом кратчайшей операции и правилом наиболее длительной операции. Один из простейших случаев использования замен маршрутов был изучен математически [3], причем выявлены были большие преимущества этой особенности распределения работ. Казалось бы, на основании только что рассмотренных результатов высокую оценку эффективности замены маршрутов можно распространить и на более сложные случаи, подобные описанному здесь. 2.5. ПОЛНОЕ ИСТОЩЕНИЕ ПОРТФЕЛЯ ЗАКАЗОВ В предыдущих параграфах главное внимание было уделено непродолжительным улучшениям в использовании рабочей силы. Но бывают периоды, когда встречаются случаи полного исчерпания портфеля заказов, хотя следует надеяться, что это бывает нечасто. Если, однако, такие условия возникли, задача заключается в том, чтобы быстро перераспределить рабочую силу, или если это исключено, то возможно скорее ее сократить. В этой связи заметим, что надо оставить по меньшей мере по одному человеку в каждой такой группе рабочих, для которой еще осталась какая-нибудь работа в цехе. Таким образом, одна из задач в случае полного истощения заказов заключается в сокращении числа групп рабочих и соответствующих этим группам разновидностей работ. Данные табл. 2 показывают, что правило кратчайшей операции еще раз оказалось вполне эффективным. Например, к концу 21-й недели из 13 рабочих групп при использовании правила кратчайшей операции 7 групп закончили бы свою работу, а при использовании правила случайного отбора — только одна. Как легко подсчитать, после 14 недель при использовании правила кратчайшей операции для полного «освобождения» цеха требуется минимум 90 человеко-недель, между тем при использовании правила случайного отбора для этого понадобилось бы 132 человеко-недели. Не исключено, что эти минимальные числа преуменьшают действительные возможности. Двоякое объяснение рассматриваемого результата, очевидно, заключается в следующем: во-первых, при заданном числе использованных рабочих часов правило кратчайшей операции обеспечивает выполнение большего числа операций, 298
чем любое другое правило. Например, и первое, и третье правила обеспечивают в течение первых шести недель стопроцентное использование рабочей силы. Однако, как это можно узнать из табл. 1, Таблица 2 МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ — ВЫБОРКА 1, ЧИСЛО ГРУПП РАБОЧИХ, ДЛЯ КОТОРЫХ, НАЧИНАЯ С ДАННОГО СРОКА, НЕ ОСТАЛОСЬ РАБОТЫ Неделя 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Правило 1 0 2 3 3 3 3 3 3 7 9 10 11 11 11 13 Правило 3 0 0 0 0 4 5 5 8 10 13 к концу этих 6 недель при использовании первого правила осталось бы только 255 не законченных обработкой изделий против 431, в соответствии с третьим правилом. Если предполагается, что время, необходимое для выполнения операций, не коррелирует с их числом для каждого изделия, первому правилу соответствует к концу шестой недели меньшее число остающихся операций. С уменьшением числа остающихся для выполнения операций, при прочих равных условиях, большее число рабочих групп должно закончить все закрепленные за ними работы. Вторая очевидная причина этого результата состоит, конечно, в том, что применение правила кратчайшей операции приводит к улучшению использования рабочей силы. Таким образом, первое правило не только содействует увеличению числа выполненных операций при данном уровне использования рабочей силы, но и повышает этот уровень. Поэтому нет ничего удивительного в эффективности первого правила с точки зрения высвобождения рабочей силы для других целей. 299
2.6. ИТОГИ Если говорить об итогах первой серии экспериментов, то они показали, что выбор правила распределения работ может все же непродолжительно повлиять на использование рабочей силы, хотя это влияние совершенно не ощущается в течение длительного периода. Так, например, для всех правил требуется один и тот же период, именно 27 недель до полного освобождения цеха от работ. Однако в течение любого промежутка времени, меньшего чем 27 недель, правило кратчайшей операции с заменой маршрутов обеспечивает большее использование рабочей силы, чем любое иное из числа исследованных правил. Наибольшие преимущества этого правила проявились в течение первых 10 недель, когда достигнутое использование рабочей силы было в среднем на уровне 85,1%. Правило наиболее длительной операции за те же 10 недель привело в среднем к 81,8% использования рабочей силы. Хотя это различие невелико, им никак нельзя пренебречь. Существенная разница выявилась также между правилами распределения работ тогда, когда была поставлена цель как можно скорее высвободить рабочую силу для иных целей. Здесь правило кратчайшей операции снова превзошло все другие испытанные правила, частично благодаря тому, что ему свойственна тенденция к большему использованию рабочей силы на протяжении коротких промежутков времени, но в еще большей степени в результате его других свойств. 2.7. ПОПЫТКА ОБЪЯСНЕНИЯ На первый взгляд объяснение выявившегося превосходства правила кратчайшей операции очевидно. Выполнение тех из наличных рабочих заданий, которые требуют наименьших затрат времени, приводит к ускорению производственного потока в цехе. Соответственно возникает тенденция к ускоренной ликвидации любых диспропорций при загрузке станков, которые иначе могли бы увеличиться, следовательно, появляется тенденция к снижению простоев тех станков, потребность в которых падает. В равной степени очевидно, что правило кратчайшей операции не может сохранять свое преимущество бесконечно. Поскольку нет в наличии новых заказов, которые можно было бы спустить в цех, среднее время на операцию будет от недели к неделе возрастать. Например, при использовании правила кратчайшей операции на протяжении первых двух недель, когда использование рабочей силы достигало 100%, было обработано 188 изделий. С другой стороны, за пятую и шестую недели обработано только 58 изделий, хотя за этот период рабочая сила также использовалась на 100%. 300
В то время, как при применении правила кратчайшей операции средняя длительность операции растет, при использовании правила наиболее длительной операции она падает. В какой-то момент времени темп потока обрабатываемых изделий, соответствующий правилу 2, должен становиться быстрей, чем темп потока, соответствующий правилу 1. Начиная с этого момента было бы вполне разумно предположить, что правило наиболее длительной операции обеспечивает лучшее использование рабочей силы. Однако это не так. В течение шестой и седьмой недель при условии применения правила 1 было бы обработано 57 изделий с использованием рабочей силы на уровне 94,0%. За тот же самый период при применении правила 2 было бы обработано 138 изделий с использованием рабочей силы на уровне 86%. К тому же выводу можно прийти в отношении сравнительной эффективности этих двух правил в течение 8, 9 и 10 недель. При ближайшем рассмотрении выходных данных моделирования напрашивается следующее возможное объяснение. Длительности операций, выполняемых в течение этого четырехнедельного промежутка времени в условиях применения правила 2, характеризуются очень высокой дисперсией. Как следствие, несмотря на то что средние затраты времени на операцию были малые и еще больше снижались, нашлось несколько групп оборудования, на котором еще выполнялись очень длительные операции. Это особенно относится к группам, состоящим из крупных станков, например из расточных. В результате перед такими группами скопилось много необработанных изделий, что привело к быстрому снижению наличия работ для всех остальных групп оборудования. Ясно, что здесь возникают простои. 2.8. ГИПОТЕЗА Хотя предыдущий анализ был в большей мере умозрительным, чем покоился на фактах, он натолкнул, однако, на мысль применить средства моделирования некоторых дополнительных вариантов действий («стратегий») при распределении работ. Одна из возможностей заключалась в том, чтобы применять правило наиболее длительной операции до тех пор, пока это не наносит ущерба использованию рабочей силы. Когда использование последней начинает падать, от правила наиболее длительной операции следует отказаться в пользу правила кратчайшей операции. Действуя таким образом на основании приведенных соображений, следует обработать как можно больше изделий с длительными операциями, не допуская при этом простоев, а обработку менее трудоемких изделий отсрочить до тех пор, пока не возникнет надобность в ускорении производственного потока для сохранения высокого уровня использования рабочей силы. Результаты применения соответствующего этой стратегии правила 5 приведены в табл. 3 вместе с результатами, 301
полученными применительно только к правилам 1 и 2. Переключение с обработки наиболее трудоемких изделий на обработку наименее трудоемких пришлось на шестую неделю. До шестой недели включительно рабочая сила использовалась на уровне 100%. Уровень использования рабочей силы в течение седьмой недели в результате перехода на правило 5 увеличился с 86 до 90%, но еще остается ниже 94%, соответствующего применению правила 1. Однако в течение 8—10 недель с помощью правила 5 достигается более высокий уровень использования рабочей силы по сравнению с правилом 1. В результате средний за 10 недель процент использования рабочей силы для правила 5 оказался на 1,6 выше, чем для правила 1, и на 4,9 выше, чем для правила 2. Хотя эти цифры вряд ли убедительны, Таблица 3 ОЦЕНКА РАСПРЕДЕЛЕНИЯ РАБОТ С НЕСКОЛЬКИМИ ПРАВИЛАМИ Неделя 1 2 3 4 5 6 7 8 9 10 Правило 1 % использования рабочей силы 100 100 100 100 100 100 94 71 50 36 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 694 765 815 . 851 Правило 2 % использования рабочей силы 100 100 100 100 100 100 86 65 44 23 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 686 751 795 818 Правило 5 % использования рабочей силы 100 100 100 100 100 100 90 79 59 39 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 690 769 828 867 Правило 6 % использования рабочей силы 100 100 100 100 100 100 94 79 56 36 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 694 773 829 865 Использов. рабочей силы (р. с.) (в среднем): 1—10 недель 85,1% 81,8% 86,7% 86,5% 7—10 недель 62,8% 54,5% 66,8% 66,3% Правило 1. Правило кратчайшей операции. Правило 2. Правило наиболее длительной операции. Правило 5. Правило наиболее длительной операции до 6-й недели, в дальнейшем — правило кратчайшей операции. Правило 6. Правило кратчайшей операции для узких рабочих мест и правило наиболее длительной операции — в остальных случаях. 302
тем не менее дальнейшее изучение «правила переключения», казалось бы, представляет интерес. В частности, для определения эффективности метода следовало бы изучить связь между изменениями в использовании рабочей силы с течением времени и моментом перехода с одного правила на другое. 2.9. ВТОРАЯ ГИПОТЕЗА Еще одна стратегия распределения работ была сформулирована к^к несколько иная комбинация правил кратчайшей и правил наиболее длительной операции. В рамках общей модели правило кратчайшей операции было применено в отношении таких групп оборудования, которые оказались наиболее узкими местами (как это выяснилось при более подробном изучении результатов предыдущего моделирования). Правило наиболее длительной операции было использовано в рамках общей модели в отношении всех остальных групп оборудования. Основания здесь были те же, что и для правила 5, а именно стремление обработать как можно больше трудоемких изделий, пока цех сильно загружен, и тем самым компенсировать низкий темп потока изделий. Результаты применения правила 6, соответствующего этой стратегии, приведены в табл. 3. И снова в результате комбинации правила наиболее длительной операции и правила кратчайшей операции использование рабочей силы было улучшено сравнительно с уровнем, обеспеченным применением только правила кратчайшей операции. В течение первых семи недель использование рабочей силы для правила 6 находится на том же уровне, что и по правилу 1. Однако в течение восьмой недели с помощью правила 6 достигнуто использование рабочей силы на уровне 79%, в то время как по правилу 1 только 71 % (в течение девятой недели соответственно 56% и 50%). Эти различия невелики, но все же достойно внимания то обстоятельство, что совершенно неудовлетворительное само по себе правило наиболее длительной операции при надлежащем применении может улучшить использование рабочей силы. 2.10. ТРЕТЬЯ ГИПОТЕЗА Дальнейшие размышления над правилом кратчайшей операции дают нам еще один подход к распределению работ в условиях, когда критерием является использование рабочей силы и ставится задача максимизации этого критерия. Если использование рабочей силы можно улучшить путем ускорения потока изделий, то, казалось бы, в правилах распределения работ надо принимать в расчет не только продолжительность выполнения той операции, перед которой изделия ждут в очереди, но и число операций, остающихся к выполне- 303
нию для каждого из этих изделий. Для изучения такого подхода была сформулирована новая стратегия — правило 7. Все изделия, ожидающие в очереди, разбиваются на два класса — такие, которые,, помимо данной операции, требуют дополнительной обработки, и такие, для которых данная операция является последней. Более высокий приоритет всегда присваивается изделиям, требующим дополнительной обработки, независимо от длительности для них данной операции. В пределах каждого класса, однако, очередность изделий определяется правилом кратчайшей операции. Результаты, полученные для правила 7, приведены в табл. 4. Таблица 4 ОЦЕНКА РАСПРЕДЕЛЕНИЯ РАБОТ С НЕСКОЛЬКИМИ ПРАВИЛАМИ Неделя 1 2 3 4 5 6 7 8 9 10 Правило 1 % использования рабочей силы 100 100 100 100 100 100 94 71 50 36 накопленная сумма % ис- 1 пользования рабочей силы 100 200 300 400 500 600 694 765 815 851 Правило 7 % использования рабочей силы 100 100 100 100 100 100 95 80 61 43 накопленная сумма о/о пользования рабочей силы 100 200 300 400 500 600 695 775 836 879 Правило 5 % использования рабочей силы 100 100 100 100 100 100 90 79 59 39 накопленная сумма о/о пользования рабочей силы 100 200 300 400 500 600 690 769 828 867 Правило 8 % использования рабочей силы 100 100 100 100 100 100 93 79 63 48 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 693 772 835 883 Использов. р. с. (в среднем): 1—10 недель 85,1% 87,9% 86,7% 88,3% 7—10 недель 62,8% 69,8% 66,8% 70,8% • Правило 7. Двухклассное правило кратчайшей операции. Правило 8. Двухклассное правило с переключениями. Преимущества этого «двухклассного правила кратчайшей операции» (правила 7) сравнительно с исходным правилом кратчайшей операции (правилом 1) совершенно очевидны. На протяжении всего лесятинедельного промежутка времени благодаря правилу 7 304
использование рабочей силы в среднем было выше на 2,8%. В течение периода с 7 до 10 недели эта разница равнялась в среднем 7. При рассмотрении столь благоприятных результатов возникает следующий вопрос: не удастся ли улучшить использование рабочей силы, присоединив классификацию изделий по числу оставшихся операций к одному из более сложных правил распределения работ, в частности к такому, которое само уже дало за первые 10 недель более высокие результаты, чем правило кратчайшей операции. Соответственно было проведено дополнительное моделирование, при котором снова более высокий приоритет соответствовал изделиям, требовавшим дополнительной обработки. В этом эксперименте, однако, в пределах каждого класса была установлена следующая очередность изделий: до конца шестой недели — по правилу наиболее длительной операции и с этого момента по правилу кратчайшей операции. Результаты, полученные для такого «двухклассного правила с переключением» (правило 8) сравнительно с исходным «одноклассным» вариантом (правило 5), приведены в табл. 4. И снова зависимость очередности обработки изделий от числа остающихся операций приводит к улучшению использования рабочей силы, хотя различие между правилами 8 и 5 не так велико, как это было при сравнении правил 7 и 1. Все же использование рабочей силы по правилу 8 было выше в среднем на 1,6% за первые 10 недель и на 4% в среднем в течение 7, 8, 9 и 10-й недель. 2.11. ИТОГИ. ЗДЕСЬ СУЩЕСТВУЮТ РАЗЛИЧИЯ Если суммировать приведенные выше результаты исследования, выявляется, что надлежащим выбором правил распределения работ можно значительно, хотя и кратковременно, повлиять на уровень использования рабочей силы даже в случае, когда этот уровень более или менее фиксирован на длительный срок. В табл. 5 дано сравнение эффективности работы цеха при условии применения наихудшего из всех испытанных элементарных правил — правила 2 и при условии применения правила 8 — наилучшего из испытанных комплексных правил. Рабочая сила в соответствии с правилом 8 за первые 10 недель периода истощения портфеля заказов использовалась на 6,5% лучше, чем для правила 2, а на протяжении периода времени с седьмой до десятой недели включительно — в среднем на 16,3%. Такого же внимания заслуживает очевидное преимущество комбинации правила наиболее длительной операции с правилом кратчайшей операции перед правилом кратчайшей операции, используемым отдельно. Это представляет особенный интерес из-за низкой эффективности, полученной при исключительном применении правила наиболее длительной операции. 20 Заказ Ко 195 305
2.12. ВТОРАЯ ВЫБОРОЧНАЯ СОВОКУПНОСТЬ ЗАКАЗОВ Все до сих пор обсуждавшиеся результаты относились только к одной выборочной совокупности заказов/Поэтому здесь уместен вопрос, можно ли полученные результаты распространить на другие выборки из той же генеральной совокупности заказов. По-видимому, нет смысла добиваться исчерпывающего выяснения этого вопроса применительно ко всем правилам распределения работ, Таблица 5 МАКСИМАЛЬНОЕ РАЗЛИЧИЕ МЕЖДУ ПРАВИЛАМИ РАСПРЕДЕЛЕНИЯ РАБОТ; ВЫБОРКА 1 Неделя 1 2 3 4 5 6 7 8 9 10 Правило 2 % использования рабочей силы 100 100 100 100 100 100 86 65 44 23 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 686 751 795 818 Правило 8 % использования рабочей силы 100 100 100 100 100 100 93 79 63 48 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 693 772 835 883 Использов. р. с. (в среднем): 1—10 недель 81,8% 88,3% 7—10 недель 54,5% 70,8% Правило 2. Правило наиболее длительной операции. Правило 8. Двухклассное правило с переключениями. изученным на основании первой выборки, но представляется уместным продолжать исследование относительной эффективности применения следующих правил: 1. Правила кратчайшей операции — правила 1. 2. Правила наиболее длительной операции — правила 2. 3. Правила с переключениями — правила 5. 4. Двухклассного правила с переключениями — правила 8. В табл. 6 приведены результаты исследования применительно к этим правилам на основании второй выборочной совокупности заказов. Для экономии машинного времени эти эксперименты были 306
ограничены сроком в десять недель. Тем самым поставленная задача заключалась в максимизации использования рабочей силы на протяжении десяти недель периода истощения портфеля заказов. Таблица 6 ОЦЕНКА ПРАВИЛ РАСПРЕДЕЛЕНИЯ РАБОТ; ВЫБОРКА 2 Неделя 1 2 3 4 5 6 7п 8 9 10 Правило 1 % использования рабочей силы 100 100 100 100 100 94 88 79 58 41 накопленная сумма % пользования рабочей силы 100 200 300 400 500 594 682 761 819 860 Правило 2 % использования рабочей силы 100 100 100 100 100 92 85 82 54 33 накопленная сумма % пользования рабочей силы 100 200 300 400 500 592 677 759 813 846 Правило 5 % использования рабочей силы 100 100 100 100 100 100 93 82 59 32 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 693 775 834 866 Правило 8 % использования рабочей силы 100 100 100 100 100 100 93 83 64 35 накопленная сумма % пользования рабочей силы 100 200 300 400 500 600 693 776 840 875 Использов. р. с. (в среднем): 1—10 недель 86,0% 84,6% 86,6% 87,5% 6—10 недель 72,0% 69,2% 73,2% 75,0% 6—9 недель 79,8% 78,2% 83,5% 85,0% Правило 1. Правило кратчайшей операции. Правило 2. Правило наиболее длительной операции. Правило 5. Правило с переключениями. Правило 8. Двухклассное правило с переключениями. Вообще говоря, различия между правилами оказались меньшими, чем по данным первой выборки, однако последовательность, в которой располагаются правила по степени их эффективности, сохранилась точно такой же. Правило наиболее длительной операции (правило 2) приводит к наименее удовлетворительному использованию рабочей силы на протяжении первых десяти недель. Правило кратчайшей операции (правило 1) увеличивает использование рабочей силы сравнительно с правилом 2 на 1,4%. Однако правило с переключением (правило 5) в еще большей степени повышает использование рабочей силы, но это улучшение, взятое в среднем за десять 20* 307
недель, невелико. Разница между правилами 1 и 5 наиболее очевидна на протяжении первых девяти недель периода истощения портфеля заказов. Например, за шестую неделю применение правила 5 обеспечивает достижение стопроцентного использования рабочей силы против 94% для правила 1. В течение пятой недели использование рабочей силы, соответствующее правилу 5, было на 5% выше, чем для правила 1. За восьмую неделю разница составила 3% и за девятую— 1 %. И, наконец, еще раз установлено, что правило 8 обеспечивает наилучшее использование рабочей силы. 2.13. ТРЕТЬЯ СОВОКУПНОСТЬ ЗАКАЗОВ Табл. 7 содержит результаты применения тех же самых четырех правил на основании третьей выборки из той же самой совокупно- Таблица 7 ОЦЕНКА ПРАВИЛ РАСПРЕДЕЛЕНИЯ РАБОТ; ВЫБОРКА 3 Неделя 1 2 3 4 5 6 7 8 9 ю Правило 1 % ис- поль- зова- ния рабочей силы 100 100 100 100 I 100 98 93 69 47 30 накопленная сумма % использования рабочей силы 100 200 300 400 500 598 691 760 807 837 Правило 2 % ис- поль- зова- ния рабочей силы 100 100 100 100 .100 100 86 62 31 30 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 686 748 779 809 Правило 5 % ис- поль- зова- ния рабочей силы 100 100 100 100 100 100 98 75 39 25 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 698 773 812 1 837 Правило 8 % использования рабочей силы 100 100 100 100 100 99 100 74 50 j 32 накопленная сумма % использования рабочей силы 100 200 300 400 500 599 699 773 823 855 Использов. р. с. (в среднем): 1 —10 недель 83,7% 80,9% 83,7% 85,5% 6—10 недель 67,4% 61,8% 67,4% 71,0% 6— 9 недель 76,8% 69,8% 78,0% 80,8% 6— 8 недель 86,7% 82,7% 91,0% 91,0% Правило 1. Правило кратчайшей операции. Правило 2. Правило наиболее длительной операции. Правило 5. Правило с переключениями. Правило 8. Двухклассное правило с переключениями* 308
сти заказов. И на этот раз различия между правилами не оказались значительными. Однако на протяжении первых десяти недель применение правила наиболее длительной операции (правила 2) привело к наихудшему использованию рабочей силы, а двухклассного правила с переключениями (правила 8)— к наилучшему, что полностью согласуется с ранее полученными (по двум выборкам) результатами. Однако результаты данной выборки говорят о том, что применение правил 1 и 5 характеризуется одинаковым использованием рабочей силы в течение первых 10 недель. Тем не менее правило 5 обладает преимуществом сравнительно с правилом 1, обеспечивая лучшее использование рабочей силы в начале периода истощения портфеля заказов, особенно в течение шестой, седьмой и восьмой недель. Кроме того, надо сказать, что не было сделано попытки найти оптимальный момент переключения правила 5 с отбора изделий по наиболее длительной операции на отбор по кратчайшей операции. Поэтому приведенные результаты не дают повода сомневаться в том, что комбинация правила наиболее длительной операции с правилом кратчайшей операции могла бы улучшить использование рабочей силы за 10 месяцев сравнительно с правилом кратчайшей операции. 2.14, НЕКОТОРЫЕ ВЫВОДЫ Заканчивая данный раздел доклада, можно, как нам думается, с достаточным основанием сделать следующие выводы: 1. Правило наиболее длительной операции в условиях снижающейся загрузки цеха представляет собою нежелательный способ распределения работ. Это правило не только приводит к сравнительно плохому использованию рабочей силы в течение коротких промежутков времени, но, видимо, есть основания сделать вывод, что оно оказалось бы неудовлетворительным и в том случае, когда ставится задача возможно быстрее высвободить рабочую силу для выполнения других заданий. 2. Правило кратчайшей операции в условиях снижающейся загрузки цеха является хорошим, но, конечно, не лучшим способом распределения работ в случае, когда цель заключается в кратковременном улучшении использования рабочей силы. С другой стороны, это же правило очень облегчает быстрое перераспределение рабочей силы для выполнения других задач. 3. Можно найти различные комбинации правила наиболее длительной операции и правила кратчайшей операции, которые обеспечат лучшее использование рабочей силы в течение непродолжительного периода времени, нежели одно правило кратчайшей операции. 4. Присвоение более высоких приоритетов изделиям, у которых До окончания обработки остается более одной операции, представ- 309
ляет собою эффективный способ кратковременного улучшения использования рабочей силы. Более того, по-видимому, разумно сделать вывод, что применение двухклассного правила кратчайшей операции дало бы больший эффект, чем использование одноклассного правила кратчайшей операции и тогда, когда задача заключается в возможно более быстром перераспределении рабочей силы для выполнения других заданий. 5. Хотя с помощью соответствующего распределения работ в некоторых случаях удается добиться кратковременного улучшения использования рабочей силы, все же сочетание того или иного уровня загрузки оборудования в цехе и его профиля, по-видимому, очень жестко ограничивают такого рода возможности. Например, даже ограниченная заменяемость маршрутов ведет к очень большому улучшению работы цеха, чего нельзя добиться в результате применения тех или иных правил распределения рабочей силы. 3. УНИВЕРСАЛЬНОСТЬ РАБОЧЕЙ СИЛЫ Исходя из этих выводов и вследствие невозможности регулировать в желательных границах ни общий уровень загрузки оборудования в цехе, ни структуру этой загрузки, направление исследования было изменено в сторону большего внимания к вопросам, связанным с профилем цеха. В частности, исследование потенциальных возможностей, заложенных в повышении универсальности рабочей силы, представляет, по-видимому, интерес по следующим соображениям: 1. Не считая двух или трех групп оборудования, пропускная способность станочного парка цеха была более чем достаточна для того, чтобы обеспечить выполнение заказов при больших колебаниях их количества и ассортимента. Узкие места обычно возникали из-за ограниченного наличия рабочей силы. 2. Заменяемость маршрутов удалось бы увеличить за счет выбора надлежащей технологии, однако возможности такого рода были крайне ограничены. 3. В качестве эффективного способа снижения потребности в рабочей силе в условиях снижающейся загрузки цеха можно было бы использовать повышение универсальности квалификации рабочих. В предыдущем разделе мы видели, что в каждой группе рабочих, для которой осталась работа, надо оставить по меньшей мере одного человека. В той мере, в какой различные группы рабочих оказываются взаимозаменимыми, это требование становится менее жестким. 4. Имеется много побочных преимуществ, связанных с повышением универсальности рабочей силы, таких, как упрощение управления кадрами, снижение расходов на «оплату» личных способностей и пр. 310
Решение повысить универсальность рабочей силы обусловливает проведение ряда существенных, связанных с затратами мероприятий, таких, как: 1) обучение, 2) перевод работников на другую работу, 3) повышение ставок, 4) уменьшение специализации рабочей силы. В то время, как замена правил распределения работ несложна и может быть предусмотрена всякий раз, когда это требуется вследствие изменений количества и состава заказов, частые коррективы, вносимые в основную схему специализации рабочей силы, очевидно, непрактичны. Прежде всего повышение универсальности рабочей силы представляет собою в значительной степени необратимый процесс (повысить универсальность значительно легче, чем снизить ее). Поэтому решение об изменении степени универсальности рабочей силы должно быть обосновано расчетом возможного диапазона изменений количества и состава заказов. 3.1. ГИПОТЕТИЧЕСКИЙ ЦЕХ С ОДНОЙ ГРУППОЙ РАБОЧИХ В качестве исходного пункта для оценки эффекта повышенной универсальности рабочей силы использовалось моделирование при предположении, что все 40 человек рабочих в цехе объединены в одну чрезвычайно разностороннюю по квалификации группу, которая могла управлять всеми станками в цехе. Хотя цехи с единственной группой рабочих действительно существуют, тем не менее это предположение практически не отвечает условиям рассматриваемого нами цеха и принято для него лишь с целью определить максимум преимуществ, которые можно было бы получить при повышении универсальности рабочей силы. В соответствии с такой постановкой вопроса мы не пытались рассматривать какие-либо затраты на повышение универсальности из числа упомянутых выше. Для сравнимости результатов начальные эксперименты по изучению эффекта универсальности рабочей силы проводились над той же самой выборочной совокупностью заказов, которая была использована при моделировании работы цеха с 13 группами рабочих. В табл. 8 приведены данные для сравнения эффективности работы двух цехов — изучаемого цеха с 13 группами рабочих и гипотетического цеха с единственной группой рабочих, причем в обоих случаях предполагается, что действует правило 3 — случайный отбор изделия для очередной загрузки станка с заменами маршрутов. Преимущества большей универсальности рабочей силы, как нам думается, совершенно очевидны. В цехе с одной группой рабочих было достигнуто заметно более высокое использование рабочей силы на протяжении всего периода истощения портфеля заказов. В результате общее число недель, необходимых для завершения обработки всех изделий, было снижено с 27 до 19. Следовательно, если новых заказов не будет, рабочая сила в цехе потребуется лишь в истечении этого срока. 311
Таблица 8 СРАВНЕНИЕ ЦЕХОВ С 13 И С ОДНОЙ ГРУППАМИ РАБОЧИХ, ВЫБОРКА 1. В ОБОИХ ЦЕХАХ ИСПОЛЬЗУЕТСЯ ПРАВИЛО 3 (ПРАВИЛО СЛУЧАЙНОГО ОТБОРА) Неделя 1 2 3 4 5 6 7 8 9 10 11 12 13 групп рабочих % пользования рабочей силы 100 100 100 100 100 100 91 66 48 29 31 29 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 691 757 805 834 865 894 число изделий 912 828 745 655 543 431 336 263 223 187 147 НО —* _^_____ 1 группа рабочих % пользования рабочей силы 100 100 100 100 100 100 100 100 - 80 56 26 13 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 700 800 880 936 962 975 число изделий 911 814 725 632 527 416 314 220 126 72 45 32 Общее число недель, необходимых для окончания всех работ в цехе 27 19 Потребность в рабочей силе в цехе с 13 группами рабочих после 19-й недели зависит от числа групп, рабочие в которых к этому моменту не закончили работу. Как было установлено, эта потребность существенно уменьшилась в результате применения правила кратчайшей операции. Но даже и при этом условии после 19-й недели требуется минимум 39 человеко-недель, что легко проверить по данным табл. 2. В таких же условиях, если мы пользуемся правилом случайного отбора, минимальная потребность в рабочей силе по истечении 19-й недели составляет 69 человеко-недель. Ко всему сказанному следует добавить, что увеличение универсальности рабочей силы облегчает, конечно, перевод или увольнение рабочих еще до истечения 19-недельного периода. Таким образом, в случае полного истощения портфеля заказов повышение универсальности квалификации рабочих облегчило и ускорило бы перераспределение рабочей силы. 312
3.2. УМЕНЬШЕНИЕ ИЗМЕНЕНИЙ В УНИВЕРСАЛЬНОСТИ РАБОЧЕЙ СИЛЫ По своему характеру полученные результаты не были неожиданностью, в то же время масштабы полученных улучшений, несомненно, заслуживают серьезного внимания. Итоги моделирования подводят к вопросу, нельзя ли большую часть полученных преимуществ обеспечить менее резким и практически более осуществимым повышением универсальности рабочей силы? Особенно заманчивая возможность заключалась в том, чтобы, не меняя существующей схемы специализации рабочей силы, добавить к наличным 13 группам еще одну группу рабочих, обладающих в высшей степени разносторонней квалификацией, способных выполнять при надобности любые операции. В эту очень универсальную группу следует отобрать наиболее квалифицированных из числа имеющихся в цехе станочных рабочих, обеспечив все необходимое для их дополнительного обучения. С целью дальнейшего изучения возникающих здесь возможностей было проведено моделирование при предположении, что из- 40 рабочих цеха 5 человек могут работать на любом из наличных станков. При таком профиле квалификации рабочих цеха для полного исчерпания всех заказов и на этот раз потребовалось толька 19 недель, то есть столько же времени, сколько и в цехе с одной группой рабочих. Предполагается, что рабочие, составляющие группу из 5 человек, были отобраны не случайно. С другой стороны, надо отметить, что, если среди рабочих цеха найдется хотя бы один- единственный, способный управлять любым станком из числа имеющихся в цехе, то нет уже необходимости оставлять рабочих в каждой группе, для которой еще предвидится работа. Такой подход к повышению универсальности рабочей силы, казалось бы, имеет большие преимущества не только в случаях полного истощения портфеля заказов, но и при непрерывной работе цеха, когда группа рабочих, имеющих разностороннюю квалификацию, могла бы устранять узкие места, связанные с рабочей силой, где бы они ни возникали. 3.3. УНИВЕРСАЛЬНОСТЬ РАБОЧЕЙ СИЛЫ - АЛЬТЕРНАТИВА ВОЗРАСТАНИЮ ЗАПАСОВ Прежде чем закончить рассмотрение табл. 8, можно сделать один заключительный вывод. В цехе с 13 группами рабочих в течение восьмой недели при наличии 263 изделий рабочая сила использовалась лишь на 66%. Между тем в цехе с одной группой рабочих в течение девятой недели, когда в цехе оставалось обработать лишь 126 изделий, использовалось уже 80% рабочей силы. Для выявления связи между загрузкой цеха и использованием рабочей 313
силы в фактических условиях потребовалось бы дополнительное исследование. Но уже сейчас можно сделать вывод, что с повышением универсальности рабочей силы удается добиться очень существенного снижения объема незавершенного .производства. Поэтому повышение универсальности рабочей силы можно, по-видимому, рассматривать как альтернативу вложения средств не только в товарные запасы, но также и в незавершенное производство. Иными словами, увеличение затрат на повышение универсальности рабочей силы может снизить объем средств, вложенных в товарные запасы и в незавершенное производство. 3.4. ВЫБОР МЕЖДУ ПОВЫШЕНИЕМ УНИВЕРСАЛЬНОСТИ РАБОЧЕЙ СИЛЫ И УНИВЕРСАЛЬНОСТЬЮ ОБОРУДОВАНИЯ Еще один интересный вопрос затрагивает связь между универсальностью рабочей силы и взаимозаменяемостью технологических маршрутов. При анализе работы цеха с 13 группами рабочих были выявлены преимущества даже ограниченной возможности замены технологических маршрутов. Максимально возможная степень применения этого способа в цехе может служить мерой универсальности оборудования, в связи с чем имеет смысл изучить связь между универсальностью квалификации рабочих и универсальностью станков. Соответственно было произведено моделирование работы цеха с одной группой рабочих в случае применения правила случайного отбора (правила 4) без замены маршрутов. Табл. 9 содержит сравнительные данные о работе двух цехов — с 1 и с 13 группами рабочих, причем в каждом цехе — с заменой маршрутов и без замен. В цехе с одной группой рабочих наибольшее улучшение, связанное с универсальностью станков, имеет место в течение первых 11 недель свертывания производства. Средний за эти 11 недель процент использования рабочей силы для правила 3 был на 4 выше, чем для правила 4. Соответствующая разница в цехе с 13 группами рабочих за 11 недель составила 3,6 и выросла до 4,5 при сравнении средних уровней использования рабочей силы за 13 недель. Маргинальные затраты на расширение возможности замен маршрутов в изученных условиях, по-видимому, довольно мало зависят от степени универсальности рабочей силы. Этот вывод можно объяснить, обратившись к двойственной связи между универсальностью рабочей силы и универсальностью оборудования. Так, надобность в заменах маршрутов, несомненно, возрастает при низком уровне универсальности рабочей силы вследствие большей вероятности возникновения узких мест. Но, по-видимому, логично предположить, что заменяемости маршрутов (если в ней будет надобность) больше благо- 314
приятствует высокий уровень универсальности рабочей силы, так как, прежде чем заменить маршрут, надо располагать не только свободными станками в заменяющей группе оборудования, но и необходимой для их обслуживания рабочей силой. В подробностях эта Таблица 9 ЗАМЕНЯЕМЫЕ МАРШРУТЫ И УНИВЕРСАЛЬНОСТЬ РАБОЧЕЙ СИЛЫ Неделя 1 2 3 4 5 6 7 в 9 10 11 12 13 13 групп правило 3 % ис- поль- зова- ния рабочей силы 100 100 100 100 100 100 91 66 48 29 31 29 30 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 691 757 805 834 865 894 924 рабочих правило 4 % ис- поль- зова- ния рабочей силы 100 100 100 99 99 99 85 51 36 26 30 22 18 накопленная сумма % использования рабочей силы 100 200 300 399 498 597 682 733 769 795 825 847 865 1 группа рабочих правило 3 % ис- поль- зова- ния рабочей силы 100 100 100 100 100 100 100 100 80 56 26 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 700 800 880 936 962 правило 4 % пользования рабочей силы 100 100 100 100 100 100 100 100 61 34 24 накопленная сумма % использования рабочей силы 100 200 300 400 500 600 700 800 861 895 919 Правило 3. Правило случайного отбора с заменой маршрутов. Правило 4. Правило случайного отбора без замены маршрутов. взаимосвязь, конечно, меняется в зависимости от цеховых условий. При всем том в меру зависимости маргинальных затрат на повышение универсальности оборудования от универсальности рабочей силы (и наоборот), суммарные затраты на достижение цехом любого заданного уровня производительности сильно снижаются. Дело в том, что функция затрат на повышение универсальности рабочей силы, несомненно, не относится к числу линейных. Например, в то время как обучение нескольких человек из числа наиболее квалифицированных рабочих (инструментальщиков) обслуживанию всех станков цеха может экономически оправдаться, затраты на такое же обучение менее квалифицированных рабочих (например, сверловщиков на легких станках), вероятно, были бы недопустимо большими. Следовательно, было бы, по-видимому, гораздо экономичней искать возможности сочетания повышенной универсальности обору- 315
дования, повышенной универсальности рабочей силы, а также и маневра последовательностью выполнения заказов вместо того» чтобы сосредоточиваться только на каком-либо одном из этих методов. 4. УНИВЕРСАЛЬНОСТЬ И РАСПРЕДЕЛЕНИЕ РАБОТ Нам остается обсудить взаимосвязь двух понятий, которым уделено основное внимание в данном докладе. Речь идет о повышении универсальности и о правилах распределения работ. Применение того или иного правила распределения работ зависит от количества и состава выполняемых заказов, с одной стороны, и от профиля цеха — с другой. Поскольку повышение универсальности рабочей силы существенно меняет профиль цеха, представляется целесообразным произвести переоценку некоторых правил распределения работ, рассмотренных ранее применительно к условиям цеха с 13 рабочими группами. В табл. 10 содержатся результаты, полученные для цеха с одной группой рабочих при применении правила кратчайшей операции (правило 1) и правила наиболее длительной операции (правило 2). Приведены также результаты применения правил 3 и 4. 4.1. СРАВНЕНИЕ ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ С ПРАВИЛОМ НАИБОЛЕЕ ДЛИТЕЛЬНОЙ ОПЕРАЦИИ В течение первых 7 недель применение всех правил обеспечивало 100%-ное использование рабочей силы. Разницы между ними не было до восьмой недели, когда начинались затруднения с правилом кратчайшей операции. В течение девятой недели использование рабочей силы, соответствующее этому правилу, снизилось еще больше и составило в среднем за первые 9 недель только 96,3% против 98,7% в случае применения правила 2. Надо напомнить, что в цехе с 13 группами рабочих в течение первых 9 недель средний процент использования рабочей силы, соответствующий правилу 1г составил 90,6%, а соответствующий правилу 2 — только 88,3%. Таким образом, повышение универсальности рабочей силы меняет местами правило 1 и правило 2 при сравнительной оценке их желательности, причем с существенным преимуществом для правила 2. 4.2. ОБСУЖДЕНИЕ Приведенные результаты не расходятся с высказанной ранее гипотезой о преимуществах правила наиболее длительной операции при соответствующих условиях его применения. Это правило пригодно в цехе с 13 группами рабочих для всех групп оборудова- 316
ния на протяжении начального периода свертывания работ, когда цех работает с перегрузкой. Благоприятные результаты были полу- Та б лица 10 МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ — ВЫБОРКА 1; ЦЕХ С ОДНОЙ ГРУППОЙ РАБОЧИХ Неделя 1 2 3 4 5 6 7 8 9 10 11 12 Правило 1 № S Я 03 - « я ° 5 СО 5 О* 100 100 100 100 100 100 100 95 72 52 29 22 03 S 2 К су ас 5 Я к Й ч я Й я = 25 с с р. о у о я©^а 100 200 300 400 500 600 700 795 867 919 948 970 a со S о ч  су tf 8* 748 554 433 340 268 198 144 102 74 50 31 21 Правило 2 К Я Я со з 8| 25 1? С -р я° яю 100 100 100 100 100 100 100 100 88 50 18 10 ев 2 _ Is л 2 а si3 11? с Г, S* §*? 100 200 300 400 500 600 700 800 888 938 956 966 i СО S О ч Я Ш 953 921 872 810 749 645 547 422 202 103 60 51 Правило 3 к S X о 5 со Я л о И я? 1^8. 100 100 100 100 100 100 100 100 80 56 26 13 03 | 2 « 2 а су я к ю 5 <п О Ч 2 m я I!' §§5 j я^о. 100 200 300 400 500 600 700 800 880 936 962 975 i О) еС со Я о ч я g су :f 911 814 725 632 527 416 314 220 126 72 45 32 Правило 4 к я я 8§ 23 о* я® 100 100 100 100 100 100 100 100 61 34 24 20 C3 и = 25 су Чв |*| Я^О. 100 200 300 400 500 600 700 800 861 895 919 939 i СУ |=С со Я о ч СУ Я СУ а- X СУ СУ Я" СУ Я ВС | &S 911 814 725 632 520 403 305 214 132 86 60 50 Общее число недель, необходимых для окончания всех работ в цехе 20 19 19 19 Правило 1. Правило кратчайшей операции с заменой маршрутов. Правило 2. Правило наиболее длительной операции с заменой маршрутов. Правило 3. Правило случайного отбора с заменой маршрутов. Правило 4. Правило случайного отбора без замены маршрутов. чены также при использовании правила наиболее длительной операции в течение всего периода свертывания работ в отношении тех групп оборудования, которые обычно не обращались в узкие места. 317
Дело в том, что правило наиболее длительной операции, по-видимому, полезно в периоды снижения загрузки цеха там, где нет надобности ускорять производственный поток с целью улучшения использования рабочей силы. Повышение универсальности рабочей силы уменьшает требования к скорости производственного потока в результате увеличения мобильности рабочей силы. Иными словами, подвижность рабочей силы компенсирует замедление производственного потока. Здесь возникает естественный вопрос — почему правило 2 не сохраняет своих преимуществ сравнительно с правилом 1 после девятой недели? К числу причин в данном случае, по-видимому, относятся узкие места, возникшие на тяжелых станках. Например, в течение десятой недели в цехе, где применялось правило 2, в среднем было 102 изделия, но из них 47 находилось в очереди перед седьмой группой станков и 16 — перед двенадцатой группой. Каждая из названных групп состояла лишь из одного станка, следовательно, повышение универсальности рабочей силы не имело значения с точки зрения уменьшения очередей перед этими перегруженными станками. Предлагаемое объяснение опять-таки больше является результатом домысла, чем опирается на факты. Тем не менее с целью несколько более глубокого выяснения рассматриваемых обстоятельств было проведено дополнительное моделирование, при котором использовалось правило 5 —«правило с переключением», причем предусматривалась к концу девятой недели замена отбора по наиболее длительной операции отбором по кратчайшей операции. В данном случае использование рабочей силы повысилось в течение пятой недели с 50 до 53% сравнительно с 52% при применении правила 1. Хотя этот результат нельзя рассматривать как существенное улучшение, он все же, несомненно, совпадает с рассмотренным ранее. 4.3. РИСК ОБОБЩЕНИЙ Во всяком случае, если цель заключается в сохранении высокого уровня использования рабочей силы в течение первых 10 недель, правило кратчайшей операции, по-видимому, представляет собою менее желательный метод распределения работ в цехе с одной группой рабочих. Более того, нет оснований пользоваться правилом кратчайшей операции и для того, чтобы облегчить ускоренное перераспределение или сокращение численности персонала, как это было в цехе с 13 группами рабочих. Здесь, однако, существуют очень жесткие зависимости между профилем цеха и желательностью тех или иных правил распределения в нем работ, поэтому при распространении на другие цехи результатов, полученных при использовании различных правил планирования и распределения работ, требуется очень большая осторожность. Необходимо еще многое узнать, прежде чем делать обобщения. 318
4.4. ЦЕХ С ПЕРЕГРУЗКОЙ Существует и другая сторона взаимосвязи между универсальностью рабочей силы и распределением работ, которая может оказаться полезной при большой загрузке цеха. В этих условияху несомненно, возможно применение тех или иных форм распределения работ по нормативным срокам окончания обработки изделий. В этом случае, хотя использование рабочей силы уже не является вопросом, ее универсальность могла бы оказаться выгодной. Дело в том, что повышенная универсальность рабочей силы позволяет увеличить совокупность изделий, из которой производится выбор одного из них для предстоящей обработки. Так, например, в цехе с одной группой рабочих, о котором шла речь выше, рабочий может выбрать как следующую любую из работ с единственным ограничением в виде наличия необходимого для нее оборудования. Таким путем повышенная универсальность рабочей силы обеспечила бы более тесное соответствие сроков окончания обработки изделий нормативным датам. Аналогичные замечания применительно к тем же условиям можно сделать относительно заменяемости технологических маршрутов. Для оценки эффективности повышения универсальности рабочей силы в рассматриваемых условиях сильно загруженного цеха была выполнено очень ограниченное число экспериментов. Моделирование осуществлено как для цеха с 13 группами рабочих, так и для цеха с одной группой. При этом было применено правило распределения работ по нормативным датам обработки без заменяемости маршрутов. Хотя оба цеха характеризовались 100%-ным использованием рабочей силы, цех с повышенной универсальностью понизил среднее квадратическое отклонение опозданий изделий с 16 до 12 дней. Поэтому представляется, что повышение универсальности рабочей силы в цехе, работающем с перегрузкой, могло бы при уменьшении среднего квадратического отклонения опозданий снизить потребность в сверхурочных работах. 5. ЗАКЛЮЧЕНИЕ Обычный подход к решению задачи выравнивания производства заключается в определении общего темпа производства и соответственной численности рабочей силы таким образом, чтобы наиболее выгодно сбалансировать необходимые для этого разнообразные затраты [2]. Иными словами, при такого рода подходе работа предприятия рассматривается более или менее суммарно, а функция стоимости предполагается заданной. Тема данной статьи заключалась в исследовании полезности более детального моделирования с помощью электронной машины с целью рассмотреть и затем модифицировать функцию стоимости. В частности, было найдено, что полезны два следующих подхода к решению этой задачи. 319'
1. Применение усложненной стратегии распределения работ, состоящей в комбинировании нескольких элементарных правил. 2. Повышение универсальности рабочей силы для увеличения эффективности ее использования и при необхЬдимости для внесения изменений в численность персонала. С теоретической точки зрения повышение универсальности рабочей силы или какие-либо изменения в профиле цеха, возможно, нежелательны, так как такой подход разрешает проблему планирования, фактически снимая ее. С другой стороны, надо признать, что эффективность даже оптимальных методов календарного планирования и распределения работ не может не наталкиваться на пределы, обусловленные профилем данного цеха. С практической точки зрения к вопросу повышения эффективности работы цеха надо подходить с двух сторон — как со стороны возможных изменений в цехе, так и со стороны улучшения в нем планирования и распределения работ. И, действительно, результаты, изложенные в данной статье, показывают, что первый из этих подходов существенно превосходит второй в отношении тех частных задач, которые были изучены. 6. ДАЛЬНЕЙШИЕ ИССЛЕДОВАНИЯ Цель наших исследований в Службе регулирования производства заключается в том, чтобы проектировать и разрабатывать правила и принципы эффективной работы цехов. Мы утверждаем, что надо разрабатывать такую «теорию» управления производством, которая позволила бы формулировать для наличных цеховых условий систему оперативных правил, помогающих достигнуть цели, поставленной предприятием. Разработка такого рода теории представляет собою не простую задачу. Даже для очень элементарных и специальных условий и целей,- рассмотренных в данной статье, требуется проведение гораздо большего числа опытов. Надо исследовать более сложные правила выбора решений и изучить дополнительные выборочные совокупности заказов. В идеях нет недостатка, наоборот, данная проблема трудна вследствие многочисленности напрашивающихся вариантов. Стоимость экспериментального исследования надо существенно снизить посредством разработки таких программ моделирования, как ДЭМС. Кроме того, мы полагаем на будущее, что при организации столь обширных исследований стоимость моделирования должна быть еще более снижена. Это особенно важно, если требуется рассмотреть другие стороны проблемы внутризаводского календарного планирования, такие, как загрузка цехов, комплексное планирование, принципы регулирования запасов. Соответственно проектирование и разработка более эффективных машинных программ моделирования являются очень важной частью наших предстоящих исследований.
ГЛАВА 17 Календарное планирование в условиях сети очередей с дисциплиной по кратчайшей операции Р. У. КОНВЕЙ и У. Л. МАКСВЕЛЛ 1 Распределение работ представляет собою последнюю стадию процесса планирования производства и является окончательным решением, принимаемым в момент, непосредственно предшествующий действию. Оно отвечает на вопрос «Что делать дальше?», возникающий всякий раз, когда на станке или вручную заканчивается выполнение очередного задания. Последовательность ответов на такие вопросы представляет собой фактический план загрузки станков. Распределение работ можно рассматривать, исходя из того, что оно выполняется в соответствии с некоторой «системой приоритетов». Это значит, что в момент, когда надо назначить к выполнению одно из наличных заданий, выбирается то из них, для которого оказывается наименьшим индекс, именуемый «приоритетом» 2. Тогда изучение организационной функции распределения работ сводится к исследованию различных методик определения значений приоритета для каждого из заданий. Функция распределения работ не исчерпывает процесса планирования, и, вероятно, она не является даже наиболее важной его частью. Возможно, что принимаемые заранее решения при планировании производства и при расчете загрузки имеют большее значение, чем вопросы детализации календарной последовательности работ, разрешаемые распределением. Однако последнее заслуживает систематического изучения. Существует почти бесконечное число способов назначения приоритетов, и имеются свидетельства об интересных различиях между практическими результатами применения этих способов. Интуитивно очевиден и вряд ли требует разъяснения тот факт, что различные способы назначения приоритетов воздей- 1 Работают в Корнелльском университете, Итака, Нью-Йорк. 2 Назначение низкого числового значения для индекса, соответствующего «высокому приоритету» находится, возможно, в противоречии с обычным употреблением слова «приоритет», но удобно для последующего изложения и, пожалуй, соответствует обычной практике в литературе по данному вопросу. 21 Заказ № 195 321
ствуют на относительную скорость продвижения на стадиях производства отдельных изделий. Доказано также, что выбор'способа назначения приоритетов может повлиять на суммарные оценки работы предприятия. Хотя распределение работ само по себе не составляет еще процесса календарного планирования в целом, тем не менее оно является существенной фазой любой процедуры планирования и относится к числу функций, которые волей-неволей надо выполнять и при этом их можно выполнять хорошо. Здесь реально не возникает вопрос, оправдается ли улучшение распределения практически. Дело в том, что многие из разнообразных методов назначения приоритетов в основном одинаково просты для внедрения. Поэтому при правильном выборе одного из них легко получить чистую выгоду при любой, даже самой малой валовой экономии. Возможно, что еще большее значение, чем прямая выгода, имеет то воздействие, которое оказывает правильный выбор методики распределения работ на весь процесс календарного планирования. Ведь при любой методике календарного планирования имеет существенное значение скорость, с которой продвигается изделие через цех, а те предположения, которые необходимо сделать на этот счет, играют решающую роль. Но скорость продвижения изделий, как и правильность предположений о ней, существенно зависят от принятой методики распределения работ. Надо думать, что правильное представление об эффективности организационной функции распределения работ в связи с различными способами назначения приоритетов заметно помогло бы построению методики календарного планирования в целом. По-видимому, ясно, что любая приемлемая методика календарного планирования, включая планирование на длительные промежутки времени, должна обеспечить возможность «пересмотра в последнюю минуту». Производство на действующем предприятии представляет собою отличный пример «процесса с нарастающей информацией». Возможно, единственный пункт, по которому имеется уверенность при заблаговременном планировании, сводится к тому, что ко времени выполнения того или иного решения хотя бы часть информации, на которой оно базируется, перестанет отвечать действительности. Неисправность инструмента, поломки станков, отсутствие рабочих, дисперсия пооперационного времени, нехватка материала, необходимость переделок, изменения в чертежах и еще несколько десятков факторов того же порядка содействуют уверенности, что к моменту, непосредственно предшествующему выполнению плана, обстановка изменится и потребуется в той или иной форме пересмотр данных в последнюю минуту. Этот пересмотр может принять форму существенной перестройки плана на длительный период времени и все еще соответствовать понятию распределения работ, сформулированному выше. Лишь размеры затрат и необходимость уложиться в сроки, продиктованные реальной обстановкой, ограничивают область, относящуюся к распределе- 322
нию работ. Обычное правило назначения приоритета «первым прибыл — первым обслужен» и правило «наиболее раннего нормативного срока» являются примерами таких простейших методик распределения работ, для которых требуется минимальная информация, а способы расчетов и внедрения тривиальны. Можно применить более сложные способы, если возросшие трудности при их внедрении будут оправданы дополнительной эффективностью. Существует несколько интересных способов классификации методик назначения приоритетов. Джексон [8, 9] ввел полезное различие между статическими и динамическими методиками. Но можно группировать их по широте необходимой информации. Можно также выделить строго локальные методики, в которых приоритеты полностью определяются характеристиками рассматриваемых работ и не зависят ни от положения, сложившегося на предприятии в целом, ни от наличия либо отсутствия данных о характеристиках по другим работам. Значительный интерес представляет собою правило назначения приоритетов «по кратчайшей операции», которое состоит в том, что приоритеты для изделия на каждой из операций пропорциональны длительности ее выполнения. Это правило, по-видимому, имеет несколько достоинств, но, к сожалению, не свободно от серьезных недостатков. Задача предлагаемой главы заключается в том, чтобы подытожить материал, излагаемый в публикациях, имеющих отношение к упомянутому правилу, и описать несколько экспериментальных результатов, полученных нами. 1. ОДНОШАГОВЫЕ ЗАДАЧИ ОПРЕДЕЛЕНИЯ ОПТИМАЛЬНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ Сущность воздействия локальных методик назначения приоритетов и особенно воздействия правила кратчайшей операции можно в известной мере понять, изучив элементарный вариант задачи на определение оптимальной последовательности запуска изделий в производство. Будем рассматривать отдельно взятый станок и совокупность изделий в рамках одного интервала времени и ограничимся задачей определения оптимальной последовательности обработки этих п изделий на одном станке [12, 14]. Каждое изделие имеет много индивидуальных признаков — стоимость, срочность, вес, значение заказчика и т. д. Пусть Vij — величина, соответствующая /-й особенности изделия i. Введем также следующие обозначения: St — время обработки изделия i (включая время переналадки при ее наличии). Предполагается, что время на переналадку не зависит от предшествующей работы, выполненной на станке. 21* 323
Ct — момент времени окончания обработки изделия /. Так как началом производства для всех изделий принят один и тот же момент времени, приравненный нулю, Ct является также и календарной .длительностью производства изделия. Если применить правило кратчайшей операции, изделия составят последовательность, при которой (нумерация изделий, при надобности, меняется). При этом можно показать, что г 1. Сумма календарных длительностей производства BС*) минимальна. 2. Средняя календарная длительность производства BСг//г) минимальна. 3. Среднее число изделий в производстве [SCj/max^ (Ct)] минимально. 4. Средняя длительность задержки в очередях 2 [2 (Ct — st)/n] минимальна. 5. Если нормативная дата окончакия обработки изделия i равна dt и «опоздание» определено как (Ct — dt), то среднее опоздание [2 (Сj — di)ln] минимально. Если применить именно эти показатели эффективности, то правило кратчайшей операции при элементарном варианте задачи является оптимальным и любое другое правило, базирующееся на иной характеристике изделий, в общем случае привело бы к менее благоприятным значениям каждого из показателей. Поскольку последние полностью зависят здесь от времени обработки, назначение приоритетов, исходя из какого-нибудь правила или характеристики, не связанных с этой величиной, было бы равносильно перестановке изделий в случайной последовательности. В таких условиях математические ожидания каждого из перечисленных показателей эффективности одинаковы для всех правил назначения приоритетов, кроме правила кратчайшей операции. 1 Перечисляемые ниже свойства транзитивны, и поэтому их легко доказать, рассмотрев результаты попарной взаимозамены. Доказательство приведено в [14]. 2 Waiting time в теории массового обслуживания, соответствующее на русском языке термину «время ожидания», нами переводится как «длительность задержки в очередях», так как иначе неизбежны такие словосочетания, как «ожидаемое время ожидания» или «математическое ожидание времени ожидания». Вместо «время» в переводе нередко принято «длительность» или «продолжительность» для устранения неудобств, вроде «распределение времени», и для однозначности термина (в отличие от «время» в смысле «срок» или «момент времени»). Expected (например, expected waiting time) переведено для краткости как «ожидаемое» (время длительности и пр.), но во всех случаях речь идет о математическом ожидании случайной переменной.— Прим. ред. 324
Если даже при запуске п изделий на одном станке применить все те же показатели эффективности, но взвешенные по какой-либо иной характеристике изделий, то время обработки каждого изделия все еще будет играть важную роль. Сумма взвешенных календарных длительностей производства изделий становится минимальной при последовательности si ^ s2 ^ ^ sn Минимизируются также показатели, приведенные выше .под номерами со второго по пятый. Если календарные длительности производства изделий взвесить линейной комбинацией характеристик, то ^ji^jjCijVijCi (a/>0 для всех /) достигает минимума при следующей последовательности работ: si ^ $2 ^ <_?zl_. 2 А*и ^ 2 A<W ^ ' ^ 2/VW ' Этот пример служит хорошей иллюстрацией как преимуществ правила кратчайшей операции, так и эквивалентности всех правил, при которых время обработки не принимается в расчет. Отрицательные стороны правила кратчайшей операции здесь не показаны, но ясно одно: так или иначе, но правило это можно применить только в случае, если заранее более или менее известны длительности обработки отдельных изделий. Работа по обобщению изложенных результатов для случая нескольких станков пока еще не закончена. 2. ЭЛЕМЕНТАРНЫЕ СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ Воздействие различных правил назначения приоритетов можно показать в рамках систем массового обслуживания. Дисциплина очереди представляет собою наиболее доступную, иногда единственно возможную точку приложения усилий при попытке улучшить систему массового обслуживания. В этой связи надо признать, что в литературе возникающим здесь вопросам уделено поразительно мало внимания. В большинстве из опубликованных работ в явной или неявной форме предполагается дисциплина очереди типа «первым прибыл — первым обслужен». Однако в многочисленных случаях такого рода предположения лишены оснований и публикуемые результаты применимы к гораздо более широкому классу дисциплин очереди. Имеется много примечательных исключений [1, 3, 4, 8, 10, 13]. Кобхэм [4], по-видимому, первым опубликовал результаты 325
исследования систем массового обслуживания с иной очередностью, чем в последовательности прибытия. Он определил формулу математического ожидания числа заявок в системе и формулу математического ожидания времени задержки в очередях для каждого из конечного числа классов приоритета. Кистей и Раненберг [10] обобщили этот результат и вывели распределение вероятностей для обеих этих величин. Фиппс [13] рассмотрел дисциплину очереди по кратчайшей операции в особом случае — при бесконечном числе классов приоритета, каждый из которых соответствует фактической продолжительности обслуживания прибывшей единицы. Исследование выполнено применительно к одноканальной неперегруженной (q < 1) системе массового обслуживания с показательным распределением промежутков между прибытием заявок и произвольным распределением продолжительности обслуживания, с дисциплиной очереди следующего типа: Поступившая заявка относится к тому или иному классу приоритета в соответствии с некоторым распределением вероятностей > не меняющимся с течением времени. На обслуживание вызывается заявка с наименьшим индексом класса приоритета. В случаях совпадения очередность определяется временем прибытия. В отношении этой системы на основании результатов Фиппса можно утверждать следующее: 1. Если математическое ожидание продолжительности обслуживания одинаково для всех классов приоритета, то общая средняя длительность задержки в очередях и среднее число заявок в системе одинаковы для всех правил назначения приоритетов. 2. Если класс приоритета можно разделить на два подкласса таким образом, что математическое ожидание времени обслуживания для одного из них меньше, чем для другого, и если меньшее значение приоритета назначается для подкласса с меньшим временем обслуживания, то уменьшается как средняя длительность задержек в очередях, так и среднее число заявок в системе. (Заметим, что состояние системы характеризуется только числом заявок в ней). 3. Если ожидаемые длительности обслуживания поступающих заявок различны, то общая средняя длительность задержек и среднее число заявок в системе минимальны при условии, что классы приоритета получают индексы, возрастающие с ростом ожидаемой длительности обслуживания заявок. 4. Если ожидаемые длительности обслуживания поступающих заявок различны, то общая средняя длительность задержек в очередях и среднее число заявок в системе максимальны при индексации классов приоритета в порядке, обратном ожидаемой длительности обслуживания. 5. Если время задержек в очередях заявок класса приоритета р взвесить по значению v, то общая средняя взвешенная длительность 326
задержек минимальна при условии индексации классов приоритета в последовательности отношений s/v: 5i/^1<s2/y2< • . •, где sp — ожидаемая длительность обслуживания для р класса. Таким образом, в пределах ограниченного класса правил приоритетов для элементарной системы массового обслуживания правило кратчайшей операции приводит к оптимальным средним значениям определенных показателей эффективности. Однако некоторое представление о слабых сторонах принципа кратчайшей операции уже можно получить, рассматривая то затруднение, которое возникает в отношении заявок, отнесенных к классам приоритета с наибольшим временем обслуживания. Такие изделия подвергнутся обработке только тогда, когда никаких других изделий какого-либо иного класса приоритета не останется в очереди. Это может привести к чрезвычайно большой длительности задержки в очередях отдельных изделий, хотя средняя длительность задержек и будет минимизирована. Надо еще решить вопрос — каким образом обеспечить определенные предварительные данные об ожидаемом времени выполнения поступающих заявок, необходимые для практического осуществления правила кратчайшей операции. 3. СЕТЬ ОЧЕРЕДЕЙ Предприятие с единичным и мелкосерийным производством можно охарактеризовать как сеть очередей. Некоторое представление о значении правил назначения приоритетов на таком предприятии можно получить путем обобщения результатов, полученных для простейшей системы массового обслуживания. К сожалению, это еще не сделано. Наиболее плодотворным аналитическим результатом, полученным до настоящего времени, является принцип декомпозиции Джексона. Пусть задана такая сеть очередей: 1. Для заявок, вновь поступающих извне в систему массового обслуживания, интервал между их поступлением на данный узел сети имеет показательное распределение вероятностей. 2. Распределение вероятностей времени обслуживания в каждом узле сети очередей подчинено показательному закону. 3. Матрица перехода, содержащая вероятности перехода заявки с одного узла сети очередей на другой, не меняется во времени. 4. Для каждого из каналов обслуживания применяется правило приоритета «первым прибыл — первым обслужен». Тогда каждый из узлов сети очередей можно рассматривать независимо от других как элементарную очередь. Данный вывод существенно обусловлен тем, что при показательном распределении как промежутков времени между поступлением заявок, так и длительностей обслуживания выходной поток 327
системы тоже соответствует показательному закону. Последнее хорошо известно, поскольку речь идет о дисциплине очереди «первым прибыл — первым обслужен». Мы склонны думать, что это верно при любой дисциплине очереди с одинаковыми распределениями вероятностей времени обслуживания в разных классах очередности. Если это так, то справедливы и следующие утверждения. Пусть задана сеть очередей, удовлетворяющая первым трем из перечисленных выше условий. Для тайой сети эквивалентны относительно среднего числа заявок в системе и средней длительности задержек все локальные правила приоритета, при которых распределения вероятностей времени обслуживания в различных группах очередности одинаковы. Если распределение продолжительности обслуживания различно для различных классов очередности, то при показательном распределении промежутков между поступлением заявок в очередь и при показательном распределении времени обслуживания в ней выходной поток заявок не будет соответствовать показательному закону и доказательство Джексона здесь не применимо. Интересно отметить, что одно и то же обстоятельство — совпадение распределений продолжительности обслуживания в различных классах приоритета — обусловливает как эквивалентность правил приоритета в одноканальных системах обслуживания, так и независимость отдельных очередей в их сети. Правила, различающиеся друг от друга при одноканальных системах (то есть такие, при которых распределения продолжительности обслуживания в разных классах приоритета неодинаковы), препятствуют взаимонезависимости отдельных очередей в сети. 4. ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ Случай с одним станком очень широко изучен и довольно хорошо осмыслен как в отношении последовательности запуска п изделий в обработку, так и применительно к моделям массового обслуживания. И при первом, и при втором из этих подходов выяснилось, что правило кратчайшей операции приводит к важной системе ограничений и к оптимальной эффективности относительно определенных показателей. Ни в какое сравнение не идут с этим результаты, полученные до настоящего времени для сети с т станками, и нет оснований надеяться здесь на равноценные достижения в ближайшем будущем. С целью изучения дисциплины очереди по кратчайшей операции, конечно, в более интересном и важном случае т станков мы прибегли к экспериментальному исследованию сети очередей средствами моделирования на электронно-вычислительной машине. На началь- 328
ной стадии описанной здесь работы мы интересовались следующими вопросами: 1. Можно ли статистически показать, что правило кратчайшей операции отличается от других разнообразных правил приоритетов (применительно к суммарным показателям эффективности)? 2. Каковы размеры этой разницы и насколько они зависят от параметров системы массового обслуживания — таких, как процент загрузки, число узлов в сети очередей, свойства матрицы перехода? 3. Какова чувствительность правила кратчайшей операции к неполноте или неточности предварительных данных о времени обработки? 4. В каких пределах можно смягчить недостатки правила кратчайшей операции путем его модификаций или сочетания с другими правилами? 5. Можно ли установить, что правило кратчайшей операции является оптимальным локальным правилом приоритетов с точки зрения минимизации среднего числа заявок в системе? Пункты 1 и 5 заслуживают некоторых предварительных пояснений. Обычно проверка гипотез не является особенно интересной или полезной постановкой вопроса. Действительно, если сравнить процедуры, физически отличающиеся друг от друга, можно ждать, что между ними обнаружится хотя бы небольшая разница. Невозможность отбросить предположение, что обе процедуры одинаковы, свидетельствует лишь о недостаточности объема выборок для того, чтобы различие признать значимым. В нашем случае, представляющем собою все же теоретическое исследование, а не физический эксперимент, тот факт, что многие правила назначения приоритетов (как это было показано) вполне эквивалентны в элементарных ситуациях, придает смысл формальной проверке гипотезы о различиях. Вопрос об оптимальности, поставленный в пункте 5, представляет не только академический интерес. Оптимальность в смысле минимизации числа заявок в системе и сравнительно лишь с локальными правилами назначения приоритетов вряд ли оправдала бы немедленное и широкое применение правила кратчайшей операции. Но это правило тем не менее важно по той причине, что оно доставляет нижний лимит — абсолютный стандарт для сравнения всех остальных правил приоритетов. Другие локальные методики, обладающие определенными желательными особенностями, можно сравнить с таким стандартом для того, чтобы определить, во что обошлись эти особенности. Нелокальные методики, применение которых предполагает увеличение объема необходимой информации, можно сопоставить с лучшей локальной методикой с тем, чтобы оценить преимущества, получаемые в результате привлечения дополнительных данных. Однако доказать опти- 329
мальность методики посредством эксперимента очень трудно. Доказать неоптимальность методики, противопоставив ей пример оптимального решения, конечно, можно, но утверждение, что методика . оптимальна только потому, 4fo нельзя подобрать противоположного примера, было бы по меньшей мере неубедительно. Путем сравнительного испытания можно показать превосходство данной методики по отношению ко всем остальным, подвергшимся испытаниям, но расширение этого вывода до утверждения оптимальности в пределах класса методик, часть которых не испытана, представляет собой трудное и рискованное предприятие. Экспериментальное исследование было выполнено с помощью программы моделирования сети очередей на машине Борроуз-220 [5]. На протяжении всего исследования выполнялись следующие условия: 1. Распределение длительности обработки было одинаковым для всех станков в сети, в каждом случае это распределение соответствовало дискретной аппроксимации показательного распределения со средней, равной 10 единицам времени. 2. Число изделий в цехе в каждый момент времени оставалось постоянным: за каждым выпуском немедленно следовало поступление в цех другого изделия. Можно было бы, как это обычно делают, предположить фиксированный темп выпуска и, следовательно, фиксированную загрузку цеха, рассматривая возникающее в результате распределение числа изделий в цехе. Но в данной работе сделано наоборот — задано постоянное число изделий в цехе, а рассматриваются загрузка и темп выпуска, что позволило уменьшить необходимый объем выборки. Отдельные эксперименты были выполнены при двукратном, четырехкратном и шестикратном числе изделий сравнительно с числом станков. 3. Использованы два предельно различных типа матриц перехода. В матрице для цеха с чисто единичным и мелкосерийным производством все элементы были равны друг другу (кроме элементов главной диагонали, равных нулю). Матрица для чисто поточного производства содержала только нули и единицы. Под цехом с чисто единичным и мелкосерийным производством подразумевается цех, в котором изделие, покидающее станок, может быть с равной вероятностью передано на любой другой станок в цехе (включая «станок- выпуск»). В цехе с чисто поточным производством для каждого изделия существует только один путь, которым оно может следовать, и для каждого станка фиксированы предыдущий станок, откуда изделие поступает, и последующий станок, на который изделие передается с данного станка. В экспериментах для цеха с чисто единичным и мелкосерийным производством число операций на изделие для удобства программирования было ограничено девятью. При экспериментах для цехов с чисто поточным производством число операций на изделие равнялось числу станков в цехе. 330
4. Сопоставление правил приоритетов выполнено по одной и той же выборочной совокупности изделий. В каждом случае объем выборки был не меньше 2000 изделий. В некоторых случаях длительность эксперимента была значительно большей, как это показано в таблице. Были рассмотрены следующие правила распределения работ (сокращения, указанные-в скобках, применены в таблицах результатов): Правило случайного распределения работ (R). Назначаемое для обработки изделие выбирается из числа ожидающих перед станком наудачу (методом случайного отбора). Это правило принято как представитель класса локальных правил, в которых длительность выполнения операции не принимается во внимание. Сюда относятся правило «первым прибыл — первым обслужен» (FCFS), правило, при котором очередность зависит от стоимости изделия, случайный отбор и пр. Предполагается, что все они эквивалентны в отношении средних показателей системы. Правило кратчайшей операции (S). Назначается первым к запуску изделие с наименьшей длительностью времени обработки на данном станке. При совпадениях применяется правило «первым прибыл — первым обслужен». Предполагается, что время выполнения каждой операции заранее точно известно. Правило кратчайшей операции при неточных данных о длительности предстоящих операций (S, X). Не отличается от правила кратчайшей операции, за исключением того, что длительность обработки каждого из изделий заранее точно не известна. Пусть X — показатель возможности предсказать длительность обработки. Для длительности обработки S ошибки оценок распределены приблизительно нормально со средней, равной нулю, и средним квадра- тическим отклонением Х8. (Все отрицательные оценки, которые могут при этом получиться, приравниваются нулю.) Заметим, что S, 0 = S и S, оо = R. Правило кратчайшей операции с двумя классами BS, ?). Все изделия разбиваются на два класса с «короткими операциями» и с «длинными операциями», причем предпочтение при назначении на станок отдается изделиям с короткими операциями. Изделие относится к классу с короткими операциями, если время обработки (точно известное заранее) меньше, чем В. Усеченное правило кратчайшей операции (TSy С) совпадает с правилом кратчайшей операции за исключением того, что для длительности ожидания изделия в любой из очередей установлена верхняя граница С. Если изделие ожидает в очереди С единиц времени, оно направляется на станок раньше других независимо от длительности выполнения операции. Заметим, что TS, 0 = FCFS и TS, оо = S. Чередование правил кратчайшей операции с правилом «первым прибыл — первым обслужен» (SF,P). Эти правила применяются 331
попеременно, чередуясь через периоды определенной длительности. Цикл в обоих случаях равен 400 единицам времени (при средней длительности выполнения операции, равной 40 единицам времени), а Р равняется доле циклов, в течение которых действует правило кратчайшей операции. Заметим, что SF, 1 = S и SF, 0 = FCFS. Правило последующей операции (Л, К) (правило не локальное). Диспетчер принимает во внимание ту операцию, на которую изделие будет направлено после обработки на данном станке. Предпочтение в очереди отдается изделиям, которые направляются в дальнейшем в «критическую очередь». Критической очередью называется такая, в которой ждут изделия с общей трудоемкостью не большей, чем К единиц времени. Среди изделий, направляемых в критическую очередь, отбор производится в соответствии с правилом кратчайшей операции. Легко показать, что в цехе единичного и мелкосерийного производства до его «заполнения», независимо от дисциплины очереди, имеет место следующее соотношение [11]: где С — среднее календарное время *, Y — средний промежуток между поступлениями, XN—среднее число изделий в цехе. Для цеха в установившемся состоянии это соотношение можно записать как где N— число станков в цехе, Т— средняя доля времени простоев, R — среднее время на обработку поступающих изделий. Значения X, N и R устанавливаются условиями эксперимента; значения С и Т являются его результатами, подлежащими изучению. Как основной показатель эффективности, внимание привлек средний процент времени простоев, так как из двух статистических оценок, получаемых в результате эксперимента, именно эта оказалась более устойчивой. 5. ВЛИЯНИЕ УСЛОВИЙ ПРОИЗВОДСТВА На первом этапе исследования было намечено изучить влияние размера цеха, числа изделий и свойств матрицы перехода на средний процент простоев, выявленных при дисциплинах очереди, соответствующих случайному отбору и отбору по кратчайшей операции. Было полностью выполнено многофакторное исследование для двух правил назначения приоритетов (R и S), двух типов цехов («чисто единичное и мелкосерийное производство», и «чисто поточ- 1 Здесь и в дальнейшем подразумевается календарная длительность пребывания изделия в цехе (см. выше значение С).— Прим. ред. 332
ное производство»), четырех размеров цехов (с 2, 3, 6, 9 станками) и трех уровней численности изделий (число изделий в цехе равнялось двукратному, четырехкратному и шестикратному числу станков). Результаты этого исследования приведены в табл. 1. Таблица 1 ПРОСТОИ СТАНКОВ (В ПРОЦЕНТАХ) ПО РЕЗУЛЬТАТАМ МОДЕЛИРОВАНИЯ, ПОЛУЧЕННЫМ ПРИ ЭКСПЕРИМЕНТАХ С 2000 ИЗДЕЛИЙ Размер N 2 2 3 3 6 6 9 9 Правило 5 R S R S R S R Чисто с единичное и мелкосерийное производство число изделий в цехе 2N (экспер.) (теорет.) (экспер.) (теорет.) (экспер.) (теорет.) (экспер.) (теорет.) 13,П 18,11 B0,00) 15,80 24,84 B5,00) 21,26 29,04 B9,41) 21,17 30,30 C0,77) AN 3,95 10,66 A1,11) 5,36 12,64 A4,29) 6,89 17,40 A7,24) 8,63 17,59 A8,18) GN 2,28 7,55 G,69) 2,84 8,56 A0,00) 2,69 12,37 A2,19) 4,66 12,84 A2,90) Чисто поточное производство число изделий в цехе 2N 11,43 18,54 15,18 21,95 18,49 28,67 19,48 30,36 AN 1,42 9,36 2,80 12,69 5,06 18,01 5,17 18,05 6N 0,82 5,63 0,65 8,66 1,98 12,93 1,88 12,89 Применительно к особой схеме освобождений, использованной во всех экспериментах, если действует правило «случайного отбора», для цеха с «чисто единичным и мелкосерийным производством» можно получить аналитическое выражение для ожидаемой доли времени простоев * T=(N-l)/(XN + N-l). Соответствующие значения этой величины для сравнения включены в табл. 1. Эти данные представлены в виде диаграмм на рис. 51, 52 и 53 и дают основания для нескольких интересных наблюдений. 1 Применительно к использованной схеме освобождений в цехе всегда находится XN изделий, распределенных между N станками. При изучении времени простоев можно принять, что изделия неразличимы друг от друга, а это обусловливает применимость в данном случае статистик Бозе — Эйнштейна. Приведенное выражение представляет собою отношение числа различимых размещений XN изделий по iV — 1 станкам к числу различимых размещений XN изделий по N станкам. См. Feller, Probability Theory and Its Applications, 2nd ed., p. 38, Wiley, New York, 1957. (В. Ф е л л е p, Введение в теорию вероятностей и ее приложение, Издательство «Мир», М., 1964.) 333
1. Правило кратчайшей операции и правило случайного отбора по результатам их применения существенно отличаются друг от друга как в статистическом смысле, так и практически. Формальное 32 30 28 26 24 22 $?20 §- 16 1 12 10 8 6 4 2 г" 1 1 1 1 У I / 1 / /У. ;>-'_ у^^ . +— .1- ,_, 1 1 1 1_ 1 L__ _ -+/?-2/V -+S-2N — i /? ft A/ + S-W ^ S-6N 0123456789 10 Размер цеха Рис. 51. Влияние размера цеха — цех единичного и мелкосерийного» производства. испытание гипотезы, состоявшей в том, что значения показателей эффективности, наблюденные при разных системах условий, относятся к одной и той же статистической совокупности, привело 334
32 30 28 26 24 22 ^20 | 18 R 16 I 12 h 10 6 ^~*R-2R +S-6N 3 4 5 6 7 Размер цеха 10 Рис. 52. Влияние размера цеха — цех с поточным производством.
32 30 28 26 24 22 ^ 20 1 18 I 16 1 Й- П <s 12 10 8 6 4 2 Случайный отбор ¦+ Пробило кратчайшей операции О 1 2 3 4 5 6 7 8N W-1-P Объем незадершенного производства [число изделий) Рис. 53. Влияние размера незавершенного производства — цех единичного и мелкосерийного производства, 6 станков.
к тому, что эта гипотеза была полностью отброшена. Суммарный интервал времени наблюдения был разбит на равные взаимосопоставимые подинтервалы. Длительность простоев по каждому под- интервалу рассматривалась как отдельное наблюдение при вычислении оценок рассеяния; «/» — тест существенности различий был выполнен так, как он изложен в книге Диксона и Месси *. 2. Нет никаких указаний на то, что существуют условия, которые могли бы изменить результаты сделанного сопоставления на обратные. Правило кратчайшей операции является лучшим при всех испытанных условиях, и нет причин думать, что дополнительное изменение условий в каком-либо направлении представляет интерес. Во всяком случае, различия между правилами удивительно мало зависят от условий сравнения. Можно было ждать, что с увеличением числа изделий в производстве простои, соответствующие правилу S, составят постоянный процент простоев, возникающих при использовании правила R. В действительности речь идет скорее о сохранении преимущества, выраженного абсолютной величиной (см. рис. 53). 3. Согласованность теоретических и экспериментальных данных оказалась достаточно тесной. То, что направления изменений на первой стадии совпадают, не удивительно, так как отдельные эксперименты не независимы — они выполнялись применительно к одной и той же совокупности изделий. 4. Удивительно мала разница между эффективностью в цехе с «чисто единичным и мелкосерийным производством» и в цехе с «чисто поточным» производством. Поскольку этим цехам соответствуют матрицы перехода, представляющие собою противоположные крайности, мало причин остается для того, чтобы поддерживать высказанное ранее предположение, будто матрица перехода в основном определяет эффективность правила назначения приоритетов. На основании экспериментов, выполненных на первой стадии, удалось выделить систему условий для дальнейшего исследования. Диаграмма эффективности в зависимости от размера цеха (см. рис. 51 и 52) в известной мере оправдывает выбор для последующих экспериментов цеха с 6 станками. Существовала также очень существенная практическая причина ограничиться малым цехом; эта причина заключалась в том, что при заданном объеме выборки машинное время ЭВМ быстро растет с числом станков. Субъективно казалось, что шести станков достаточно для того, чтобы показать в известной мере сложность большого цеха и возникающие в нем взаимодействия. Кроме того, мы убедились, что примерно в этой точке можно наблюдать некоторого рода переломы многих кривых эффективности. Изменения в показателях эффективности при росте 1 См. Dixon and M a s s e у, Introduction to Statistical Analysis, p. 105. 22 Заказ № 195 337
числа станков с 6 до 9, по-видимому, не оправдывает необходимого при этом существенного увеличения времени вычислений на ЭВМ. Обстановку в цехе единичного и мелкосерийного производства мы оценивали как более интересную, чем в поточном цехе. Выбирая число изделий в незавершенном производстве, мы остановились без какого-либо дополнительного основания на среднем уровне 4 N. 6. ЧУВСТВИТЕЛЬНОСТЬ ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ К ОШИБКАМ В ОЦЕНКАХ ВРЕМЕНИ ВЫПОЛНЕНИЯ ОПЕРАЦИИ Применение правила кратчайшей операции нередко наталкивается на практическое возражение, связанное с необходимостью зара- 26 \ 24 22 20 18 16 /4 12 10 В\ 6 к 2 с& Случайней отбор и. / Вило кратчайшей операции с двумя классами Точное 12 3 4- Индекс способности предсказания Рис. 54. Чувствительность правила кратчайшей операции к ошибкам в предсказанных длительностях обработки. нее знать время обработки. Утверждают, что на практике зачастую имеются лишь очень грубые оценки этих величин. Поэтому нами 338
выполнена серия экспериментов, в которых приоритеты назначались в соответствии с правилом кратчайшей операции применительно к оценкам времени обработки. Предметом исследования была эффективность правила как функция качества оценок. Данные приведены в табл. 2 и представлены диаграммой на рис. 54. На основании полученных результатов можно сделать вывод, что ошибки в оценках не составляют серьезной проблемы и что отсутствие точных оценок длительностей обработки не является веским возражением против применения дисциплины очереди по кратчайшей операции. Очень грубые оценки (разбивка на два класса, оценки со средним квадратическим отклонением, равным 2) все еще обеспечивают добрую половину преимущества правила кратчайшей операции сравнительно с правилом случайного отбора. Таблица 2 ЧУВСТВИТЕЛЬНОСТЬ ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ К ОШИБКАМ В ОЦЕНКАХ ВРЕМЕНИ ОБРАБОТКИ Правило (S, X) S, 0( = S) S, 0,25 5, 0,50 S, 1,00 5, 2,00 S, 5,00 S, оо ( = Д) Правило B5, В) 2S, 0( = 5) 25, 7 25, 10 25, 30 5, со( = /?) Средний процент времени простоев 6,89 7,40 8,45 9,97 11,26 12,78 17,40 6,89 13,08 11,76 11,72 17,40 Матрица перехода—чисто единичное и мелкосерийное производство; числол станков — 6; число изделий в цехе—4N; объем выборки — 2000 изделий. Сравнительно с указанным уровнем точности цеховые работники, вне всякого сомнения, располагают гораздо большими возможностями правильной оценки длительностей обработки. Обычно претензии к точности тщательного хронометража (±10%) соответствуют значениям X порядка 0,03, то есть такой точности оценок, которая пренебрежимо мало снижает эффективность правила кратчайшей операции. (Правильность вывода, возможно, в извест- 22* 339
ной мере зависит от предположения о показательном законе распределения длительностей обработки, и не исключается, что испытание следует повторить для какого-либо совершенно иного закона распределения.) 7. НЕДОСТАТКИ ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ * Второе возражение против правила кратчайшей операции отклонить не так просто. Оно вызвано тем, что отдельные изделия остаются в цехе недопустимо долго, несмотря на то что правило кратчайшей операции существенно снижает Среднюю для всех изделий суммарную календарную длительность ожиданий и обработки. Рассмотрим следующие данные, полученные на основании эксперимента, охватившего 2000 изделий в цехе чисто единичного и мелкосерийного производства, с 6 станками и 36 изделиями, находящимися в обработке. Правило FCFS R S Средняя для распределения календарного времени 344,7 344,4 283,1 Средняя для распределения календарного времени на операцию 72,0 72,3 59,5 Дисперсия для распределения календарного времени 61785 93 074 388 672 Дисперсия для распределения календарного времени на операцию 16 933 46 221 356 801 Очень желательно найти такой вариант правила кратчайшей операции, который сохранил бы преимущества основного правила, но без его недостатков, иначе говоря, найти вариант, при котором среднее календарное время было близко к средней для правила кратчайшей операции, но без присущей этому правилу высокой дисперсии. При попытке осуществить это намерение, очевидно, возможны следующие два способа: 1. Чередовать правило кратчайшей операции с правилом, обеспечивающим малую дисперсию с целью периодической «очистки цеха». 1 При обсуждении излагаемых результатов читатель должен иметь в виду условия, принятые при исследовании. Хотя это не было в свое время обнаружено, методика, использованная в данном случае, видимо, ставит правило кратчайшей операции в значительно худшие условия, чем условия для других правил. При дальнейших экспериментах с постоянным темпом выпуска изделий правило кратчайшей операции характеризуется гораздо благоприятней в отношении дисперсии календарного времени, чем это показано здесь. 340
2. «Насильственно» прерывать действие правила кратчайшей операции, установив лимит длительности задержки, допустимой для отдельного изделия. Исследованы обе эти возможности. Правило кратчайшей операции было «усечено» введением лимита С на длительность пребывания отдельного изделия в одной из очередей. При достижении этого лимита вступает в силу правило «первым прибыл — первым обслужен» до тех пор, пока не будет выполнена обработка задержавшегося изделия. Данные по этому эксперименту приведены в табл. 3 и представлены диаграммой на рис. 55. Таблица 3 ЭФФЕКТИВНОСТЬ УСЕЧЕННОГО ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ * Правило TS, 0 (FCFS) TS, 100 TS, 300 TS, 1000 TS, oo(S) Средний % простоев 16,59 13,36 11,98 7,60 6,79 Среднее календарное время 244,5 236,1 229,3 220,4 218,2 Среднее календарное время на операцию 50,7 49,1 48,3 45,9 45,5 Дисперсия календарного времени 30 423 36 264 51417 75 984 125 461 Дисперсия календарного времени на операцию 7 896 14 791 24 557 23 069 1 Матрица перехода—чистое единичное и мелкосерийное производство; число станков—6; число изделий в цехе—4N; объем выборки—20 000 изделий. Как и следовало ожидать, время простоев и среднее календарное время являются убывающими функциями числа, при котором обрывается действие правила кратчайшей операции (числа усечения), а дисперсия является возрастающей функцией от этой величины. Успех модификации такого типа можно оценить с помощью величин, характеризующих скорость, с которой меняются показатели эффективности в зависимости от изменения строгости усечения. Для того чтобы судить о строгости усечения, надо сравнить, с одной стороны, число усечения (приблизительно равное максимальной задержке изделия в отдельной очереди), установленное для правила кратчайшей операции с усечением, с другой стороны — математическое ожидание длительности задержки в очереди для правила «первым прибыл — первым обслужен». Среднее календарное время на одну операцию при FCFS, приведенное в табл. 3, равно 50,7. В то время как средняя длительность обработки равна 10 единицам времени, средняя длительность задержек в расчете на одну очередь составляет приблизительно 40 единиц времени. (Средняя длительность задержек при базисном правиле кратчайшей операции равна 35 единицам.) При числе усечения, равном 100, изделие может остаться в отдельной очереди на срок, 341
превышающий не более, чем в 21/2 раза ожидаемую среднюю длительность задержек изделия в очереди для правила FCFS. Применение усеченного правила кратчайшей операции снижает процент 22 20 18 16 ^1 1 | 12 1' /4 10 без усечения 100 300 1000 Число усечения Рис. 55. Чувствительность правила кратчайшей операции. простоев на 3,23, в то время, как то же, но не усеченное правило — на 9,8; дисперсия в 1,19 раза превышает дисперсию для правила FCFS. Сопоставления в сводном виде представлены в следующей таблице: Число усечения 0 100 300 1000 оо Приблизительное отношение максимальной длительности задержки в очереди при TS, С к ожидаемой длительности задержки при FCFS 2,5 7,4 25 оо Сохраненная доля преимущества 0 0,34 0,47 0,92 1,00 Отношение дисперсии при TS, С к дисперсии при FCFS 1,00 1,19 1,69 2,50 4,13 342
Эти данные могут послужить как для оптимистических, так и для пессимистических выводов. Если рассматривать полученные результаты пессимистически, можно подчеркнуть, что правило кратчайшей операции при умеренном усечении, скажем порядка 300 единиц времени, наполовину теряет свои преимущества. С другой стороны, можно отметить, что замена правила FCFS жестко усеченным правилом кратчайшей операции обеспечило бы третью часть преимуществ последнего без недопустимого нахождения изделий в очередях. (При жестком усечении, соответствующем TS, 100, наибольшее время ожидания в отдельной очереди было бы того же порядка, что и для FCFS.) Это обстоятельство по меньшей мере дает основание для дальнейших поисков и ни в какой мере не подтверждает вывод о полной непрактичности вариантов правила кратчайшей операции. Второй модификацией правила кратчайшей операции является его чередование с правилом «первым прибыл — первым обслужен». Цель заключается в том, чтобы за периоды действия правила FCFS можно было продвинуть в очереди изделия с длительным временем обработки. (На деле это сильно походило бы на поочередное применение правила кратчайшей операции и правила самой продолжительной операции.) Цикл замены правил был постоянным и удерживался на уровне 400 единиц времени, что соответствует увеличенной в 40 раз средней длительности времени обработки. (Это отвечало намерению воспроизвести 40-часовую рабочую неделю для цеха со средней длительностью выполнения операции, равной одному часу.) Эксперименты выполнены для различных соотношений между суммарными длительностями применения каждого из правил. Полученные данные приведены в табл. 4 и представлены диаграммой на рис. 56. Т аблица 4 ЭФФЕКТИВНОСТЬ ПОПЕРЕМЕННОГО ПРИМЕНЕНИЯ ДИСЦИПЛИНЫ КРАТЧАЙШЕЙ ОПЕРАЦИИ И ДИСЦИПЛИНЫ «ПЕРВЫМ'ПРИБЫЛ-ПЕРВЫМ ОБСЛУЖЕН»! Доля времени применения 0 (FCFS) 0,20 0,40 0,60 0,80 1,00(S) Средний % простоев 16,59 13,82 12,33 10,60 8,43 6,89 Среднее календарное время 244,5 230,3 223,7 215,8 211,3 205,9 Среднее календарное время на операцию 50,7 48,6 47,1 45,7 44,1 43,4 Дисперсия календарного времени 30 423 67 375 60 550 67 757 85 072 88 695 Дисперсия календарного времени на операцию 7 896 45 550 40 577 48 120 67 880 71212 1 Матрица перехода—чистое единичное и мелкосерийное производство; число станков—6; число изделий в цехе—4N; объем выборки—20 000 изделий. 343
На рис. 56 видно, что преимущества правила кратчайшей операции прямо пропорциональны доле времени, в течение которого это правило действовало. Наиболее неожиданной стороной данного варианта является огромное возрастание Дисперсии при каждом переходе к правилу кратчайшей операции. Очевидно, при этом способе ввода в действие правила кратчайшей операции недостатки О 0,2 Ofi 0,6 0,8 Доля бремени применения правила кратчайшей операции о цехесИ изделиями W Рис. 56. Попеременное применение правила кратчайшей операции и правила «первым прибыл — первым обслужен». его проявляются гораздо скорей, чем преимущества. Изложенное выше было попыткой модифицировать правило кратчайшей операции таким образом, чтобы, сохраняя его преимущества, уменьшить недостатки. Альтернативный подход заключался в поиске путей, сводящих к минимуму отрицательные последствия высокой дисперсии, обусловливаемой этим правилом. Казалось бы, что существует много случаев, когда необычная длительность промежутка календарного времени, в течение которого данное изделие остается на станке, не приносит ообенного вреда, если эту задержку можно предвидеть заранее. Такое предвидение доступно с помощью услов- 344
ного распределения вероятностей календарного времени при заданной длительности обработки. Не исключено, что календарное время пребывания изделия на операции можно предсказать для отдельного изделия с такой же точностью применительно к правилу кратчайшей операции, как и при использовании правила случайного отбора и даже правила «первым прибыл — первым обслужен». Здесь, видимо, открывается обещающее и практически полезное направление исследования. Рассматривая практическую полезность некоторых форм дисциплины очереди с отбором по кратчайшей операции, мы сравнивали ее с дисциплиной «первым прибыл — первым обслужен» и дисциплиной со случайным отбором. Следует отметить, что многие практически применяемые правила распределения работ следовало бы классифицировать как очень близкие к дисциплине очереди с отбором по наиболее длительной операции. Основанием для этого служит то обстоятельство, что, пытаясь удовлетворить критерию, взвешенному по какому-либо показателю важности изделий, их очередность зачастую опеределяют в соответствии с этим и только этим показателем. Поскольку разумно предположить наличие положительной корреляции между важностью изделий и продолжительностью их обработки, такая практика привела бы к тенденции в пользу изделий с длительными операциями. Дисциплина очереди с отбором по наиболее длительной операции является, конечно, противоположностью дисциплины очереди с отбором по кратчайшей операции, увеличивая до максимума то, что эта последняя минимизирует. Сверх того, она подобна правилу кратчайшей операции в том отношении, что обусловливает высокую дисперсию. Коротко говоря, она страдает недостатками правила кратчайшей операции, не имея его достоинств. Привлекательность правила кратчайшей операции (или очередности по s/v там, где применим взвешенный критерий) существенно возрастает при сравнении с дисциплиной очереди с отбором по наиболее длительной операции. 8. ОБ ОПТИМАЛЬНОСТИ ПРАВИЛА КРАТЧАЙШЕЙ ОПЕРАЦИИ В заключение была выполнена короткая серия экспериментов, с помощью которой мы пытались показать (путем демонстрации опровергающих гипотез и примеров), что правило кратчайшей операции в общем случае не оптимально. Мы склонны к мысли, что правило кратчайшей операции оптимально относительно множества локальных правил, хотя пока что не могли доказать правильности этого утверждения. Но мы были также убеждены, что вне множества локальных правил наилучшему правилу соответствует меньшее среднее число заявок в системе (среднее состояние системы), а применительно к условиям эксперимента — и меньший процент времени простоев, чем в соответствии с правилом кратчайшей операции. 34&
При выделении из числа нелокальных правил такого, которое предположительно снизило бы процент простоев (сравнительно с правилом кратчайшей операции), выбор пал на правило последующей операции. Это правило предвосхищает условия на шаг вперед и отдает преимущество тем изделиям, которые попадают после данной операции в очередь, очень близкую к истощению. Среди изделий, которым предстоит попасть в критическую очередь, отбор производится в соответствии с правилом кратчайшей операции. Данные об эффективности правила последующей операции при различных уточнениях понятия «очень близкая к истощению очередь» приведены в табл. 5. Таблица 5 ЭФФЕКТИВНОСТЬ ПРАВИЛА ПОСЛЕДУЮЩЕЙ ОПЕРАЦИИ * кь 0 10 20 со ( = S) Средний % времени простоев 9,07 8,88 8,91 6,89 Среднее календарное время 215,1 217,3 217,7 205,9 Среднее календарное время на операцию 47,3 41,8 47,5 43,4 Дисперсия календарного времени 68 284 64 937 66 692 88 695 Дисперсия календарного времени на операцию 43 593 39 454 42 423 71212 1 Матрица перехода—чисто единичное и мелкосерийное производство; число станков—6; число изделий в цехе—4N; объем выборки—2000 изделий. Если суммарное время обработки изделий, ожидающих в очереди, меньше или равно К единицам времени, очередь считается «критической». Совершенно очевидно, что это правило оказалось значительно эффективней правила случайного отбора, в то же время оно не превзошло правила кратчайшей операции. Этот результат сильно повышает нашу оценку пригодности правила кратчайшей операции. Не исключая тем не менее возможности построить наилучшее (локальное) правило, мы полагаем, что сделать это не просто, и не исключено, что это правило, в свою очередь, будет очень сложным. 9. ВЫВОДЫ I. Изложенные ниже утверждения относятся к средним значениям основных показателей эффективности системы (длительность задержек в очередях, число заявок в системе, использование оборудования). А. При элементарной постановке задачи о последовательности п работ на одном станке можно показать, что 1. Все правила, не зависящие от длительности выполнения операции, эквивалентны. 346
2. Правило кратчайшей операции оптимально. Б. Для элементарных систем массового обслуживания с показательным распределением промежутков между поступлениями изделий можно показать, что 1. (Почти) все такие способы назначения приоритетов, при которых математическое ожидание времени обработки одинаково для различных классов очередности, эквивалентны. 2. Правило кратчайшей операции оптимально. В. Если системе массового обслуживания соответствует сеть очередей, имеются веские аналитические и экспериментальные основания для следующих предположений: 1. Все локальные правила назначения приоритетов, при которых математические ожидания времени обработки одинаковы для всех классов очередности, эквивалентны. 2. Правило кратчайшей операции оптимально относительно совокупности всех локальных правил. II. Необходимость заранее располагать данными о длительности обработки изделий практически не приводит к серьезным осложнениям при использовании правила кратчайшей операции. Это правило показало большую нечувствительность к ошибкам оценок длительности обработки изделий. III. Есть основания надеяться, что недостаток, присущий правилу кратчайшей операции и связанный с высокой дисперсией, можно преодолеть либо путем разработки модификации этого правила, либо путем разработки методик, которые лучше реагировали бы на календарное время производства по отдельным изделиям. Мы полагаем, что дисциплина очереди с отбором по кратчайшей операции, безусловно, заслуживает дальнейшего изучения и характеризуется очень широкими возможностями практического применения.
ГЛАВА 18 Влияние случайного рассеяния оценок длительности работ на оптимальные календарные планы ДЖ. Ф. МУТ1 Цель описанного ниже исследования состояла в том, чтобы лучше понять, какое влияние статистические свойства длительностей выполнения работ оказывают на календарную продолжительность завершения последних, особенно в условиях неточной информации. Основной вывод исследования сводится к тому, что при разработке оптимальных методик календарного планирования случайное рассеяние длительностей выполнения работ имеет второстепенное значение. (Это не означает, однако, что для управления производством точные данные о времени обработки вовсе не нужны; они могут потребоваться для целей регулирования издержек и совершенствования технологии.) Некоторые результаты случайного рассеяния смягчаются наличием большой картотеки незаконченных работ. Эти выводы были сделаны на основании результатов математического моделирования сравнительно простой задачи календарного планирования, применительно к двухоперационному процессу обработки. В какой мере эти результаты можно распространить на случай многооперационного процесса — неизвестно. Пользуясь методами исследования операций, анализ обычно начинают с помощью детерминистической модели, затем изучают чувствительность результатов к ошибкам в модели и, наконец, рассматривают, если необходимо, риск. С риском приходится, как правило, считаться при анализе методик регулирования запасов. Однако в данном исследовании предполагается, что риск не относится к числу решающих факторов внутризаводского календарного планирования. Чувствительность модели к неизвестным факторам имеет большое значение при решении вопроса о том, следует ли применять математический анализ для разработки систем календарного планирования в промышленности. Для задач календарного планирования общим является то, что разработанные планы редко выполняются Работает в Технологическом институте Карнеги. 348
точно. Причины отклонений обычно известны и зачастую весьма основательны. Дело в том, что в настоящее время в математические модели календарного планирования не включается целый ряд условий. Для полного аналитического решения проблемы необходимо будет исследовать влияние вносимых иногда грубых сверхупрощений. Различные источники ошибок связаны с получением следующих данных: 1. Длительность выполнения работ. 2. Прочие характеристики работ (например, необходимое оборудование и материалы, особая квалификация отдельных рабочих). 3. Технические изменения. 4. Реальное содержание намечаемой работы (например, при ремонтах). 5. Цели, поставленные перед системой планирования. 6. Реальные границы, в которых возможен выбор значений переменных лицами, принимающими решения. Скромные цели настоящей статьи отразились в том, что изучен лишь первый фактор из этого довольно длинного перечня. 1. ОПИСАНИЕ ПРОЦЕССА МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ Поскольку для получения точной информации о свойствах процесса планирования необходимо относительно большое число повторений экспериментов, пришлось ограничиться простой задачей, которая может быть решена с помощью правила последовательности запуска, разработанного С. М. Джонсоном [1]. Это правило относится к следующей задаче: имеется заданный перечень т изделий (величина т называется объемом задания), каждое из которых проходит две операции, выполняемые в одном и том же порядке на двух станках. Цель состоит в том, чтобы минимизировать календарную продолжительность обработки всех т изделий. Иллюстрацией такого случая могут служить перечень изделий и длительности соответствующих им двух производственных операций, приведенных в табл. 1. Верхнего предела суммарной длительности выполнения всех работ, конечно, не существует. Естественно сосредоточить внимание только на так называемых «действительных» планах, то есть на таких планах, в которых ни одну операцию нельзя начать раньше запланированного срока. Джонсон показал, что имеет смысл рассматривать только те планы, в которых последовательность запуска изделий в обработку на обоих станках одинакова. В этом случае остается лишь шесть возможных последовательностей запуска, соответствующих перестановкам трех элементов. Эти возможные последовательности запуска приведены в табл. 2 вместе с соответствующими им календарными длительностями выполнения планов, то есть календарными отрезками времени, необходимыми для завершения всех работ. 349
Самое короткое календарное время соответствует последовательности 2, 1,3, при которой для выполнения плана необходим 21 час. Среднее время для всех шести планов равно 23,7 часа, что примерно на 13% больше оптимального. С помощью математического моделирования хотелось бы выяснить и то, насколько средняя величина календарной продолжительности выполнения всех работ превышает возможный минимум, чтобы оценить эффективность различных методов планирования. Вторая цель состоит в том, чтобы определить, насколько близки будут к этому истинному минимуму планы, в основу которых положены предполагаемые длительности работ, не совпадающие с фактическими. Допустим, что планировщик не знал данных о длительности операций, приведенных в табл. 1, а использовал вместо них предполагаемые длительности, которые записаны в табл. 3. Он все равно остановился бы на последовательности 2, 1, 3. Хотя, по его предположениям, календарная длительность выполнения плана составляет 22 часа, на самом деле эта величина была бы равна 21 часу в соответствии с нормативами длительности из табл. 1. В данном примере неверные представления относительно длительности работ совершенно не отражаются на процессе планирования: в результате выбирается та же самая последовательность. Однако нетрудно указать и такие ошибочные оценки, которые привели бы к выбору другой последовательности запуска, в результате чего фактическая календарная длительность выполнения плана может оказаться на 7 часов больше, чем для оптимального плана. Желательно было бы определить, насколько такие неточные оценки влияют на календарную длительность выполнения плана. Таблица 1 ПРИМЕР ПЕРЕЧНЯ РАБОТ С ФАКТИЧЕСКИМИ ДЛИТЕЛЬНОСТЯМИ ОПЕРАЦИИ Изделие 1 2 3 Операция 1 (часы) 6 2 9 Операция 2 (часы) 5 8 2 Изучение этих вопросов проводилось с помощью математического моделирования, при котором данные о фактической и предполагаемой продолжительности обработки изделий вырабатывались в соответствии с определенными законами распределения вероятностей. Планы, получаемые методом случайного отбора из совокупности действительных планов, сравнивались с планами, полученными по правилу Джонсона, применительно к условиям как точной, так и неточной информации о различных характеристиках цеха. 350
Таблица 2 КАЛЕНДАРНАЯ ДЛИТЕЛЬНОСТЬ ВЫПОЛНЕНИЯ ПЛАНА ПРИ РАЗЛИЧНЫХ ПОСЛЕДОВАТЕЛЬНОСТЯХ ЗАПУСКА Последовательность запуска 1, 2, 3 1, 3, 2 2, 1, 3 2, 3, 1 3, 1, 2 3, 2, 1 Календарная длительность выполнения плана (часы) 22 25 21 22 28 24 Таблица 3 ПРИМЕР ПЕРЕЧНЯ РАБОТ С ПРЕДПОЛАГАЕМЫМИ ДЛИТЕЛЬНОСТЯМИ ОПЕРАЦИЙ Изделие 1 2 3 Операция 1 (часы) 5 4 8 Операция 2 (часы) 6 7 3 Длительности работ задавались с помощью случайного отбора из двумерного логарифмически нормального распределения. По каждой из двух операций дисперсия продолжительности обработки изделий была принята в пределах от половины до двухкратной величины соответствующих средних. Эти колебания отражают разнообразие изготовляемых в цехе изделий с точки зрения продолжительности времени, необходимого для выполнения операций. Продолжительности обработки одного и того же изделия на каждом из двух станков не во всех случаях принимались статистически независимыми. В принципе между ними могла иметь место положительная или отрицательная корреляция. В первом случае такие работы будут различаться между собой главным образом по масштабу (изделие с длительной обработкой на первой операции требует, как правило, много времени и на второй). При отрицательной корреляции два станка для данной работы частично взаимозаменяемы. Среднее квадратическое отклонение ошибки при оценке длительности обработки было в интервале 20—80% от средней. Следует отметить, что и наименьшее из этих значений — ошибка в оценке 35!
на 20% — величина существенная. В самом деле, ошибки распределены по нормальному закону со средней, равной нулю, так что только около 68% фактических длительностей обработки будет отличаться от предсказанных не более чем на Jf 20%. И последняя из характеристик, которые варьировались в последовательных экспериментах моделирования,— число работ, подлежащих выполнению. Список обрабатываемых изделий включал 10, 35 или 100 наименований. (Для случая наименьшего числа работ было получено 200 реализаций модели. Однако при большей номенклатуре лимитирующим фактором становилось время работы вычислительной машины, так что число реализаций было соответственно сокращено до 50 и 25.) 2. СВОЙСТВА СРЕДНЕЙ И МИНИМАЛЬНОЙ КАЛЕНДАРНОЙ ДЛИТЕЛЬНОСТИ ВЫПОЛНЕНИЯ ПЛАНА Влияние разнообразия работ показано в табл. 4. И средняя и минимальная календарные длительности выполнения плана заданы при условии, когда коэффициенты вариации длительностей изменяются от 0 до 200%. Если коэффициент вариации равен 0, оба значения календарной длительности выполнения плана — минимальное и среднее — имеют наименьшую величину, равную 11 единицам времени (принимая за единицу среднее время на одну операцию по одному изделию). По мере увеличения коэффициента вариации возрастает как минимальная, так и средняя календарная длительность выполнения плана. Неожиданным, однако, оказался тот факт, что календарные длительности выполнения плана, особенно минимальная, с увеличением разнообразия длительностей работ возрастают весьма мало. В то время когда среднее квадратическое отклонение вдвое превышает среднюю величину, минимальная календарная длительность выполнения плана всего лишь примерно на 10% больше той, какая имела бы место в случае, если бы все изделия были совершенно одинаковы по затратам времени на их обработку. В табл. 5 сопоставляются величины календарных длительностей выполнения плана при различных коэффициентах корреляции между длительностями первой и второй операции изготовления каждого из изделий. Из таблицы видно, что при числе изделий, равном десяти, и средняя и минимальная календарные длительности выполнения плана имеют наименьшую величину тогда/когда между длительностями первой и второй операций нет никакой статистической взаимосвязи. Этот эффект проявляется не слишком резко. Однако при большем числе изделий проявляется тенденция к сокращению обоих длительностей выполнения плана по мере увеличения коэффициента корреляции. Другими словами, тенденция состоит в том, что имеется больше возможностей для выбора рациональной оче- 352
редности запуска изделий в производство в том случае, когда различия в трудоемкостях обработки этих изделий на первой и второй стадиях производственного процесса носят одинаковый характер. Однако это преимущество проявляется при довольно большом числе изделий. Таблица 4 ВЛИЯНИЕ ДИСПЕРСИВНОСТИ ОЦЕНОК ТРУДОЕМКОСТИ НА СРЕДНЮЮ И МИНИМАЛЬНУЮ ВЕЛИЧИНЫ КАЛЕНДАРНОЙ ДЛИТЕЛЬНОСТИ ВЫПОЛНЕНИЯ ПЛАНА 1 Коэффициент вариации, % 0 50 100 200 Средняя величина календарной длительности выполнения плана 11,0 12,2 13,3 14,3 Минимальная величина календарной длительности выполнения плана 11,0 11,2 11,9 12,4 1 При нулевом коэффициенте корреляции между длительностями двух операций по каждому изделию* в производственном задании—10 изделий. Таблица 5 ВЛИЯНИЕ КОРРЕЛЯЦИИ МЕЖДУ ДЛИТЕЛЬНОСТЯМИ ОПЕРАЦИЙ ПО КАЖДОМУ ИЗДЕЛИЮ НА СРЕДНЮЮ И МИНИМАЛЬНУЮ ВЕЛИЧИНЫ КАЛЕНДАРНОЙ ДЛИТЕЛЬНОСТИ ВЫПОЛНЕНИЯ ПЛАНА 1 Число изделий в задании равно 10 коэффициент корреляции -0,4 0,0 +0,7 средняя величина календарной длительности выполнения плана 13,6 13,3 13,6 минимальная величина календарной длительности выполнения плана 12,2 11,9 12,1 Число изделий в задании равно 35 средняя величина календарной длительности выполнения плана 43,0 41,2 39,0 минимальная величина календарной длительности выполнения плана 39,6 38,3 36,1 1 Во всех случаях коэффициент вариации длительностей равен 100%. Распределение вероятностей значений минимальной календарной длительности выполнения плана при различном числе изделий показано на рис. 57. Нижняя кривая — кумулятивное распределение при числе изделий, равном 10. На рис. 57 видно (и это подтверждается критерием согласия Пирсона), что данное распределе- 23 Заказ № 195 353
ние имеет существенные отклонения от нормального. Но при числе изделий, равном 35 и 100, достигается более полное соответствие распределения нормальному закону х. 50 45 40 35 1 30 «а- 25 20\ 15 10 5 Г' Число изделий в задании равно 35 (по ледой шкале) у^ / ^УЧисло изделий в /* задании равно 100 / (по правой шкале) / ? ^^ Число изделий в rjy^ задании равно 10 (по левой шкале) 0,51 2 5 10 20 304050607080 90 9598 99 9ф Шкала вероятностей, (%) 115 110 1 100 А95 Рис. 57. Распределение вероятностей календарных продолжитель- ностей выполнения плана при различных объемах производственного задания. 3. «СНИЖЕНИЕ ЭФФЕКТИВНОСТИ» МЕТОДИКИ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ ПРИ НЕТОЧНОЙ ОЦЕНКЕ ДЛИТЕЛЬНОСТИ РАБОТ Далее был произведен расчет выполнения плана для условий, когда ожидаемые продолжительности работ были распределены вокруг фактических значений по нормальному закону со средним квадратическим отклонением ошибок прогнозов в пределах от 20 до 80% средней продолжительности операций. Результаты этого исследования представлены в табл. 6 и 7. Цифры в таблицах дают меру «снижения эффективности» по Тейлу [2]. Пусть Т — календарная длительность выполнения плана, построенного по правилу Джонсона в условиях неточной информации, TmIn — минимальное время, которое может быть определено при наличии точной информации, и Тср — средняя календарная длительность выполнения плана, определенная на основании всех возможных планов. Мера «снижения эффективности» определяется из следующего уравнения: F = ^ср.—^min 1 Предположение о нормальном распределении календарной длительности выполнения плана высказал Дж. Хеллер. 354
Таблица 6 СНИЖЕНИЕ ЭФФЕКТИВНОСТИ ПЛАНИРОВАНИЯ ИЗ-ЗА НЕТОЧНОСТИ ОЦЕНОК ДЛИТЕЛЬНОСТИ ОПЕРАЦИЙ 1 Коэффициент корреляции -0,4 0,0 +0,7 Среднее квадратическое отклонение оценки в процентах к средней длительности операций 20 7,9 8,6 13,1 50 19,1 23,9 39,2 80 24,4 31,7 54,4 1 Число изделий, подлежащих обработке, равно 10. Таблица 7 СНИЖЕНИЕ ЭФФЕКТИВНОСТИ ПЛАНИРОВАНИЯ ИЗ-ЗА НЕТОЧНОСТИ ОЦЕНОК ДЛИТЕЛЬНОСТИ ОПЕРАЦИЙ ПРИ РАЗЛИЧНОМ ЧИСЛЕ ИЗДЕЛИЙ 1 (в %) Коэффициент корреляции —0,4 0,0 +0,7 Число изделий, 10 7,9 8,6 13,1 подлежащих обработке 35 4,4 5,8 10,5 100 3,3 4,5 6,7 1 Среднее квадратичное отклонение оценки равно 20% средней длительности операций. Эта мера характеризует ту часть разницы между минимальным и средним значениями календарной длительности выполнения плана, которая не может быть реализована с помощью процедуры календарного планирования при неточной информации. Так, например, в табл. 1 и 3 «снижение эффективности» равно 0, поскольку в основе плана, построенного на неточной информации, лежит все та же оптимальная последовательность. Замечательным в статистиках, приведенных в табл. 6 и 7, являются их малые значения. Снижение эффективности календарного планирования из-за временами очень существенной неточности информации обычно составляет около 10%. Иными словами, 90% разницы между средней и оптимальной календарными длительностями выполнения плана должно быть отнесено за счет методики планирования, тогда как за счет уточнения данных о длительности работ может быть добавлено лишь около 10% этой разницы. Из 23* 355
табл. 6 видно, что снижение эффективности нарастает с довольно большой скоростью по мере увеличения неточности оценок, измеряемой средним квадратическим отклонением, с 20 до 80%. Видно также общее снижение эффективности при повышении коэффициента корреляции между трудоемкостями первой и второй операций по каждому изделию с — 0,4 до + 0,7. Иначе говоря, методика планирования более чувствительна к ошибкам в оценке длительности операций тогда, когда колебания этих длительностей, как правило, в равной мере относятся как к первой, так и ко второй стадиям производственного процесса. Табл. 7 показывает, как влияние неточности оценок длительности операций может быть в некоторой мере ослаблено путем увеличения числа изделий, подлежащих обработке. Это, по-видимому, происходит потому, что при большом числе изделий появляется возможность смягчать влияние указанных выше неточностей такими путями, которые отпадают при планировании обработки всего лишь 10 изделий. Следует отметить, что для какого-либо уменьшения показателя «снижения эффективности» необходимо существенное увеличение числа изделий, намеченных к обработке. Увеличение числа изделий в десять раз дает, по-видимому, возможность уменьшить статистику снижения эффективности наполовину. 4. ВЫВОДЫ Самый важный вывод на основании исследования состоит, очевидно, в том, что не слишком большие ошибки в оценке длительности работ не оказывают существенного влияния на величину календарной длительности выполнения плана. Этот вывод особенно важен, если учесть те трудности, с которыми приходится сталкиваться при разработке алгоритмов планирования, основанных на использовании достоверной информации. Некоторые результаты случайного рассеяния длительностей операций могут быть смягчены путем увеличения числа изделий, подлежащих обработке. Однако такой способ удовлетворения требований производства может оказаться весьма дорогостоящим. Результаты описанного моделирования дают мало оснований для предположения, что статистические особенности распределений длительностей операций могут значительно помочь при разработке оптимальных планов. При умеренном числе изделий, подлежащих обработке, коэффициент корреляции между длительностями операций не оказывает существенного влияния ни на минимальную, ни на среднюю календарную длительность выполнения плана; такое положение сохраняется до тех пор, пока не накапливается большой объем незавершенного производства.
ГЛАВА 19 Очереди с динамическим правилом приоритета ДЖЕМС Р. ДЖЕКСОН 1 1. ВВЕДЕНИЕ В настоящей статье рассматриваются системы массового обслуживания с «динамическим правилом приоритета», в которых для каждой заявки назначен «плановый срок запуска» (начала обслуживания). Если в момент освобождения канала обслуживания в очереди оказывается несколько заявок, из них выбирают ту, для которой этот срок окажется самым ранним. Предположим, что плановый срок запуска соответствует моменту поступления заявки в систему, смещенному на «индекс срочности» 2, полученный с помощью случайного отбора, исходя из заданного распределения вероятностей. Под плановым сроком запуска понимается наиболее поздний допустимый срок начала обслуживания, а индекс срочности представляет собой наибольший допустимый промежуток времени ожидания заявки в очереди. Детальному рассмотрению таких систем посвящен раздел 2. Пусть и и v — индексы срочности, причем u < v . Можно предположить, что в больших очередях, когда каждой поступающей заявке почти наверно предстоит длительное ожидание, вновь поступившие заявки с индексом срочности и окажутся примерно в таком же положении, как и заявки с индексом срочности v, уже прождавшие в очереди v — и единиц времени. Пусть все заявки разбиты в зависимости от величины индекса срочности на «классы срочности» и для каждого класса найдены распределения длительности времени ожидания в установившихся условиях. Из сделанного выше замечания следует, что верхние «шлейфы» у различных кумулятивных кривых распределений одинаковы по форме, но у кривой, соответствующей классу срочности v, он будет сдвинут на v — и единиц времени вправо вдоль оси времени по сравнению с кривой для класса срочности и. Это предположение формализовано в разделе 3 1 Работает в Калифорнийском университете, Лос-Анжелес. 2 В оригинале sum of... time of arrival and... «urgency number»— полный перевод «сумма времени поступления и „показателя срочности"».—Прим. перге. 357
вместе с более сильным предположением, в котором выдвигается более полное описание асимптотического поведения распределений длительности времени ожидания. В разделе 4 дано краткое изложение соответствующего математического исследования, которое будет описано полностью в другой статье. Пятый раздел посвящен общему описанию некоторых экспериментов по моделированию на вычислительной машине. В разделе 6 рассматриваются результаты этих экспериментов, особенно в отношении упомянутых выше предположений, и формулируется новое предположение. В разделе 7 подводится краткий итог выводам из данной главы с точки зрения возможных их применений и приводится несколько примеров. Полученные результаты, как нам кажется, можно использовать на практике. Применение динамических правил приоритета для установления очередности обслуживания заявок широко распространено и соответствует природе систем массового обслуживания, в которых большую долю заявок необходимо выполнять «вовремя». Поэтому верхние «шлейфы» кумулятивных кривых распределений времени ожидания имеют первостепенное значение. К счастью, однако, оказалось, что для случаев, представляющих наибольший интерес, а именно тогда, когда коэффициент использования системы «загрузка», равный отношению потребности в обслуживании к возможности обслуживания, близок к единице, наблюдавшаяся при экспериментах сходимость к предсказанным асимптотам оказалась весьма быстрой. 2. СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ С ДИНАМИЧЕСКИМ ПРАВИЛОМ ПРИОРИТЕТА В данном разделе намечены в общих чертах основные характеристики рассматриваемых систем х. В эти системы с одним или не- сколькими каналами обслуживания время от времени поступают заявки. Каждая заявка обслуживается в течение заданного непрерывного интервала времени, в течение которого соответствующий канал обслуживания считается полностью загруженным. После окончания обслуживания заявка покидает систему. Если в момент поступления заявки имеется свободный канал обслуживания, эта новая заявка начинает обслуживаться немедленно. В противном случае заявка поступает в «очередь» и ожидает обслуживания. Каждой заявке присваивается «индекс срочности» и «плановый срок запуска», который определяется как сумма текущего времени, соответствующего моменту поступления заявки в систему, и индекса срочности. 1 Подробная математическая модель одного из классов таких систем представлена в статье Джексона (J.R.Jackson, Some Problems inQueueing with Dynamic Priorities, Naval Research Logistics Quarterly, 7, 3, September 1960, p. 235—249. 358
Ожидающие обслуживания заявки располагаются в очереди в порядке возрастания чисел, выражающих плановые сроки запуска г. После освобождения канала обслуживания в него немедленно поступает первоочередная заявка. Входной поток заявок определяется тремя стационарными случайными процессами, с помощью которых вырабатываются взаимно независимые последовательности взаимно независимых случайных чисел. Для каждой заявки должны быть заданы следующие величины: 1) индекс срочности, назначение которого было объяснено выше; 2) промежуток времени между прибытиями (между моментом времени поступления в систему данной и следующей за ней заявки); 3) продолжительность обслуживания (от начала до завершения обслуживания заявки). Чтобы определить существенно единственную систему массового обслуживания с динамическим правилом приоритета в пределах общих ограничений, введенных в двух предыдущих параграфах, достаточно установить (в дополнение к количеству каналов обслуживания) распределения вероятностей, определяющих выбор индексов срочности, промежутков времени между прибытиями и продол- жительностями обслуживания. Здесь уместно указать, пока без уточнения, на масштабы тех возможностей, к которым имеют некоторое отношение выводы данной главы. В связи с этим будет введен ряд обозначений и понятий. По причинам, связанным со структурой практических задач, и в связи с ограничениями, накладываемыми аналитическими методами и техникой эксперимента, настоящая статья ограничивается рассмотрением систем, в которых распределения индексов срочности заданы ограниченным числом различных значений этой величины 2. Буквы и и v резервируются для обозначения тех значений индексов срочности, которые фактически будут получены. При этом, естественно, считается, что все заявки, имеющие одинаковый индекс срочности, скажем и, образуют «класс срочности», о котором мы будем говорить, как о «классе срочности и». Пусть ри (i, n, w) — вероятность того, что заявка, отобранная случайно из п первых заявок, входящих в- класс и> которая должна поступить после момента, когда состояние системы обозначалось как i, ожидает начала обслуживания не более w единиц времени. Нас будут интересовать только такие системы, где ри (w) не зави- 1 В случае равенства плановых сроков запуска заявки располагаются в порядке возрастания индексов срочности, если и они совпадают,— в порядке возрастания сроков поступления заявок в систему, а при равенстве этих сроков — в случайном порядке. 2 Речь идет о небольшом числе интервалов во входной таблице распределения для Монте-Карло.— Прим. ред. 359
сит от i; имеет место pu(w) = l\mpu(i, л, до), где ри (до) < 1 для всех конечных до, причем ри (до)-> 1, когда до-> оо. Иначе говоря, для каждого класса срочности должно существовать установившееся для длительного периода распределение длительности ожидания с отличной от нуля плотностью при любых значениях этой величины. Из широко известной теории массового обслуживания явствует, что необходимое условие для выполнения сформулированного выше требования состоит в том, чтобы распределения промежутков между прибытиями и продолжительностью обслуживания (величин всегда неотрицательных) имели положительные средние и чтобы «загрузка» q была меньше 1. Под q подразумевается отношение Средняя продолжительность обслуживания Число каналов обслуживания **""" Средний промежуток между прибытиями Представляется очевидным, хотя и не доказывалось, что имеются необходимые и достаточные условия существования установившегося распределения вероятностей длительности ожидания с отличной от нуля плотностью для любого значения этой величины в системах, которые отличаются от рассматриваемых систем с динамическим правилом приоритета только тем, что очередность обслуживания в них определяется правилом «первым прибыл — первым обслужен». Результаты экспериментов моделирования свидетельствуют (а опытному подтверждению мы придаем большое значение) о том, что для рассматриваемых систем с динамическим правилом приоритета характерны именно такие распределения времени ожидания. 3. ДВА ПРЕДПОЛОЖЕНИЯ Рассмотрим систему массового обслуживания, удовлетворяющую условиям, перечисленным в разделе 2. Обозначим через ри (до) установившуюся вероятность того, что какая-либо заявка из класса срочности и будет ожидать обслуживания не дольше до единиц времени. Определим для 0</< 1 wu(f) = ini{w\pu(w)>f}. (Это длительность ожидания, соответствующая вероятности / в кумулятивном распределении длительности ожидания для класса срочности и1.) Теперь рассмотрим систему, отличающуюся от описанной выше только тем, что порядок обслуживания заявок в ней определяется правилом «первым прибыл — первым обслужен»; обозначим через р (до) установившуюся вероятность того, что заявка 1 То есть квантиль порядка ?. =- Прим. перев. 360
в этой новой системе будет ожидать обслуживания не дольше ад- единиц времени. Определим w(f) = inf{w\p(w)>f} для 0</<1. Сделаем два предположения. Предположение L Для любой системы массового обслуживания, удовлетворяющей условиям, сформулированным в разделе 2, для случая, когда и и v — фактически полученные значения индекса срочности: Wu(f) — wv(f)->u — v1 когда /->1. Предположение 2. Для любой системы массового обслуживания, удовлетворяющей условиям, сформулированным в разделе 2, можно найти число и такое, что если и практически получаемый индекс срочности, то Wu(f) — w(f)-+u — u, когда f->l. 0Ж\ 0,400 0.200 О 10 20 30 40 Длительность ожидания Рис. 58. Графическое представление предположения 2. 361
Предположение 1 представляет собой формализацию обоснованного правдоподобностью заключения, которое было сделано в разделе 1. Ясно, что предположение 2 включает в себя предположение 1, но мы приводим их оба, поскольку, именно в этом частном случае выдвинутые предположения находят более прямое подтверждение в ходе экспериментального моделирования (см. раздел 6). Вводя обозначение и в предположение 2, мы исходим из того факта (он будет пояснен ниже), что для круга систем, подвергавшихся моделированию, эта величина приблизительно, а в некоторых частных случаях — точно равна средней арифметической распределения индекса срочности. Смысл предположения 2 иллюстрируется рис. 58 (на примере системы с одним каналом обслуживания, средней длительностью ожидания, равной единице, q = 0,9 и показательным распределением промежутков между поступлениями и длительности ожидания обслуживания). В системах, где промежутки между прибытиями и длительности ожидания распределены по показательному закону, а очередность выполнения требований определяется в соответствии с правилом «первым прибыл — первым обслужен», кривая кумулятивного распределения длительностей ожидания благодаря использованию обращенной логарифмической шкалы на оси ординат имеет вид прямой линии г. Изогнутые линии в нижней левой части рисунка дают примерное представление о форме кривых распределения длительности ожидания в системах с динамическим правилом приоритета {полученных при экспериментальном математическом моделировании). 4. МАТЕМАТИЧЕСКИЕ РЕЗУЛЬТАТЫ Были, конечно, сделаны попытки исследовать математическую состоятельность выдвинутых выше предположений, оказавшиеся в некоторой мере успешными. В основу данной работы положено распространение метода, использованного в одной из более ранних статей 2, на решение ряда вопросов, касающихся средней длительности ожидания в некоторых типах систем с динамическим правилом приоритета. Полученные результаты и их обоснование будут подробно разобраны в другой главе; в данном же разделе предполагается дать лишь общую оценку состояния этого исследования. Самый важный из использованных методов состоит в том, что распределение вероятностей числа таких заявок в системе, выполнение которых предшествует выполнению некоторой выбранной случайно 1 См. P. M. Morse, Queues, Inventories and Maintenance, John Wiley -and Sons, New York, 1958. 2 См. примечание 1 на стр. 358. 362
заявки, вычисляется как функция «индекса срочности» этой заявки и длительности ожидания ее в очереди. Этот метод может быть применен для различных систем с динамическим правилом приоритета, в которых шкалы времени дискретны. Обслуживание этой случайно выбранной заявки после ее появления в системе начнется сразу же, как только число заявок, стоящих в очереди раньше нее, окажется меньше количества каналов обслуживания. Поэтому данный метод приводит к одинаковому распределению вероятностей длительности ожидания для заявок в каждом из классов срочности. Большой интерес, по крайней мере для данной главы, представляет тот факт, что указанный метод дает возможность сделать более или менее общие заключения относительно асимптотического поведения распределений вероятностей длительности ожидания. Предположение 2 представляет собой теорему, сформулированную для круга систем массового обслуживания с динамическим правилом приоритета, имеющих один канал обслуживания, в которых промежутки между прибытиями и продолжительности обслуживания распределены по закону геометрической прогрессии. Было показано, что и лишь незначительно превышает среднюю величину для распределения индексов срочности (разница между ними зависит от «грубости» распределения по закону геометрической прогрессии, который можно рассматривать как приближение к показательному). Нам представляется, что метод, с помощью которого были получены эти результаты, может быть использован и для случая с несколькими каналами обслуживания, а возможно, и с иными распределениями промежутков между прибытиями и продолжи- тельностей обслуживания; однако доказательств этого найдено не было. Для моделей с дискретными шкалами времени можно позаимствовать формально ограничивающие процессы, в которых промежуток, принятый за единицу времени, стремится к нулю, в то время как различные характеристики системы остаются без изменения. Эти процессы можно построить таким образом, что распределения индексов срочности, промежутков между прибытиями, длительностей ожидания в очереди и продолжительностей обслуживания будут стремиться к некоторым пределам. Логично также предположить, что и системы с непрерывным временем и ограниченными распределениями индексов срочности, промежутков между прибытиями и продолжительностей обслуживания имеют также стремящиеся к пределу распределения длительностей ожидания. Такие заключения могли бы послужить аргументом в пользу предположения 2 применительно к системам с одним каналом обслуживания и с показательным распределением промежутков между прибытиями и продолжительностей обслуживания; однако строгих доказательств, опирающихся на них, лайти пока не удалось. Величина и действительно приближается к средней арифметической 363
распределения индексов срочности, когда промежуток, соответствующий единице времени, стремится к нулю. Это является доводом, хотя ограниченным и нестрогим, в пользу предположения о том, что в системах с одним каналом обслуживания и распределенными по показательному закону продолжительностями обслуживания и промежутками между прибытиями й равняется упомянутой выше средней. 5. МОДЕЛИРОВАНИЕ В этом разделе описаны эксперименты в форме моделирования на электронно-вычислительной машине, проведенные с целью изучения поведения систем массового обслуживания с динамическим правилом приоритета. Программы были записаны на языке FORTRAN II. Предварительные замечания, В ходе экспериментов оказалось удобным для всех изучаемых систем принять за единицу времени среднюю продолжительность выполнения заявки. К числу переменных, которые, как можно ожидать, оказывают влияние на установившееся статистическое поведение в ходе эксперимента систем массового обслуживания с динамическим правилом приоритета, удовлетворяющих условиям раздела 2, можно отнести следующие переменные: 1. Число каналов обслуживания. 2. Форма распределения промежутков времени между поступлениями заявок. 3. Форма распределения продолжительностей обслуживания заявок. 4. Загрузка канала обслуживания. 5. Распределение индексов срочности. Эксперименты * проводились на системах с 1, 2, 3, 4, 6 и 8 каналами обслуживания. Промежутки между прибытиями и продолжительности обслуживания заявок выбирались либо постоянными, либо распределенными по показательному закону. (Эксперименты, в которых были бы постоянны обе величины и промежутки между прибытиями и продолжительности обслуживания, конечно, не проводились.) В ходе экспериментов коэффициенту загрузки q придавались следующие значения: 0,4; 0,6; 0,8; 0,9; 0,95; 0,98. Поведение системы массового обслуживания с динамическим правилом приоритета не изменится, если к индексам срочности всех заявок прибавить одно и то же число, поэтому ограничение 1 В оригинале simulation run, run —«эксперимент», часть процесса моделирования, в результате которого получают одну реализацию модели (в данном случае многошаговой); практически соответствует однократному запуску программы на машине.— Прим. ред. 364
экспериментов такими распределениями индексов срочности, в которых средняя арифметическая равна нулю, не сужает сферы применимости выводов. Эксперименты проводились с использованием разных форм распределений индексов срочности, включая равномерные респре- деления с переменным числом значений, биномиальные распределения, резко асимметричные распределения и бимодальные распределения с большим числом значений. Интервал между последовательно полученными значениями индексов срочности рассматривался как независимая переменная величина, которой можно придать различные значения от нуля (для правила «первым прибыл — первым обслужен») до бесконечности (очередность обслуживания заявок устанавливается в соответствии с «жестким» приоритетом)* Особое значение придавалось, конечно, промежуточным значениям (динамические правила приоритета). В большей части экспериментов отношение между величинами индексов срочности и установившейся средней длительностью ожидания, характерной для испытываемой системы, колебалось в пределах от 1 до 20. Необходимо было решить вопрос о продолжительности каждого эксперимента и о порядке начальной процедуры. Решения по необходимости были компромиссными, поскольку приходилось учитывать ряд соображений, касающихся как простоты, так и эффективности вычислений на машине, но притом принимались, кроме того, во внимание известные теоретические положения, имеющие особое отношение к выборочному методу применительно к системам массового обслуживания \ а также устойчивость выходных данных и их соответствие сложившейся теории в случаях ее применимости. В большей части экспериментов очередь заранее приводилась в исходное состояние путем включения в нее установившегося среднего для рассматриваемой системы числа заявок. Первые 500 дополнительно вводимых заявок составляли следующую стадию предварительной части эксперимента и не участвовали в выдаче статистических данных, основанных исключительно на 7500 дальнейших поступлений заявок. Чтобы предотвратить возможное влияние конечной фазы эксперимента, обеспечивалось поступление в систему новых заявок до начала выполнения последней оставшейся из этих 7500 заявок. Эти решения при повторении одинаковых статистических условий во всех экспериментах привели к достаточно устойчивым выходным данным, хорошо соответствовавшим сложившейся теории установившегося процесса. Исключением было то, что длительности ожиданий, соответствующие верхним квантилям распределения этой величины в системах с большей 1 См., например, J. R. Jackson, Some Expected Transition Times in Simple Queues, Operations Research, Vol. 9, № 2, March-—April 1961, p. 277—279. 365
загрузкой, обычно получали заниженные количественные оценки, сравнительно с заранее установленными на основании теоретических соображений. За исключением немногих предварительных экспериментов, результаты вычислений по каждой группе срочности содержали значения длительности ожидания, соответствующие следующим накопленным частостям в выборочных распределениях этой величины г: 0,2; 0,4; 0,6; 0,8; 0,9; 0,95; 0,98; 0,99; 0,995; 0,998. Средние квадратические отклонения и средние арифметические по этим выборочным распределениям также выводились на печать. Кроме того, те же самые данные определялись и для выборочного распределения Щпительности ожидания всех заявок (собранных вместе вне зависимости от класса срочности). Эти последние данные облегчали определение w (f) в предположении 2 благодаря тому, что эксперименты проводились с индексами срочности, равными нулю. В этом случае динамическое правило приоритета, определяющее порядок обслуживания заявок, сводилось к правилу «первым прибыл — первым обслужен». Экспериментирование. Для правильной постановки исследования в начале его было выполнено 30—40 пробных экспериментов с различными наборами переменных в моделях. Было использовано несколько способов графического представления результатов. На диаграммах кумулятивных распределений длительности ожидания, построенных на обращенной полулогарифмической сетке (такой же, как на рис. 58), обращает на себя внимание строгая закономерность данных, что является подтверждением предположений, сформулированных в разделе 3. Дальнейшее исследование было запланировано прежде всего с расчетом более глубоко разработать эти предположения и исследовать их состоятельность. Всего было выполнено 500 экспериментов, что потребовало около 20 часов работы электронно-вычислительной машины IBM-709, принадлежавшей Западному вычислительному центру. Целью этих экспериментов было изучение общего характера поведения моделируемых систем, а не проверка конкретных гипотез, так что использование соответствующих формальных схем статистического исследования представлялось и невозможным и ненужным. Из 500 реализаций модели 270 составили «главное исследование», посвященное только системе с одним каналом обслуживания, с распределенными по показательному закону продолжительностями обслуживания и промежутками времени между поступлениями заявок и с тремя равномерно распределенными индексами срочности. Варьировались два параметра: загрузка канала обслуживания q и коэффициент /С, равный гг (Наибольший индекс срочности) — (Наименьший индекс срочности) ~" Средняя длительность ожидания обслуживания в данной системе 1 То есть выборочным квантилям.— Прим. перев. 366
Эксперимент охватывал все комбинации следующих значений этих величин: q = 0,4 0,6 0,8 0,9 0,95 /С= 0 1 2 4 6 8 12 20 со Каждая комбинация использована в шести экспериментах с 7500 заявками, так что суммарные статистики основывались на данных о 45 000 заявок. Фактически сформировано лишь шесть определенных множеств заявок, причем эти множества модифицированы заменой значений параметров для обеспечения экспериментов с каждой из комбинаций Q и /С. Благодаря такому подходу в наибольшей мере сокращались этапы вычислений, требующие наибольших затрат машинного времени (выдача псевдослучайных чисел и вычисление логарифмов для обращения их при построении показательных распределений). Кроме того, уменьшалось влияние ошибки выборки на сравнение результатов, полученных при различных значениях параметров. Остальные 230 экспериментов дают довольно обширные (хотя и не систематизированные) выборочные сведения о поведении системы при различных наборах переменных. В большинстве случаев в общую схему «главного исследования» вносились одно или два из перечисленных ниже изменений: 1) увеличение числа каналов обслуживания; 2) замена распределенных по показательному закону промежутков между поступлениями заявок постоянным значением этой величины; 3) замена распределенных по показательному закону продолжительностей обслуживания постоянными значениями; 4) использование различных распределений индексов срочности. Так же, как и в «главном исследовании», сформированная однажды совокупность заявок использовалась неоднократно — с различными загрузками и с различными интервалами между последовательными значениями индекса срочности. В большинстве случаев один из экспериментов производился с приравнением нулю всех индексов срочности для того, чтобы получить выборочную оценку для w (/) в предположении 2 в соответствии с приведенным выше объяснением. 6. РЕЗУЛЬТАТЫ МОДЕЛИРОВАНИЯ В этом разделе подытожены выходные данные экспериментов, выполненных для изучения поведения систем массового обслуживания с динамическими приоритетами. Общий подход, отражающий точку зрения, которой мы придерживались при планировании и проведении экспериментов, имеет не формально статистический, а скорее описательный характер. Подтверждение предположения L Результаты всех экспериментов полностью согласуются с предположением 1, и, за определенными исключениями, которые будут отмечены и объяснены ниже, они 367
служат подтверждением этого предположения. В этом отношении типичен рис. 59, построенный по данным шести экспериментов «главного исследования» с q = 0,8 и К = 2. Не будем временно обращать внимание на пунктирные линии. Сплошные кривые (точнее говоря, ломаные линии) соединяют полученные точки в выборочных кумулятивных распределениях длительности ожидания, 0,995 \ 0,200 0 Ю 20 30 Длительность ожидания ?1 Рис. 59. «Главное исследование»; q = 0,8, К = 2. соответствующих трем классам срочности (эти классы обозначены в верхней части графика индексами срочности). Содержание предположения 1, выраженное графически, заключается в том, что верхние части упомянутых кривых должны быть одинаковы по форме и должны отстоять одна от другой на величину направленного горизонтально отрезка, равного алгебраической разности их индексов срочности. Небольшие отклонения от этого условия по большей части весьма малы по сравнению с теми отличиями от 368
эксперимента к эксперименту, которые мы наблюдали в положении кривых в шести реализациях модели, послуживших основанием для рис. 59. Рис. 60 и рис. 61 подобны рис. 59 с той лишь разницей, что на рис. 60 приведены результаты экспериментов «главного исследования» при q = 0,8 и К = 4, а на рис. 61 — при q = 0,8 и К = 6. 0/00 0,200 о 10 20 30 Длительность ожидания Рис. 60. «Главное исследование»; q = 0,8, К — 4. И снова отклонения от предположения 1, которые заметны в верхней части кривых, незначительны по сравнению с различиями в положении этих кривых при сравнении разных экспериментов. Результаты моделирования в целом подтверждают предположение 1 в той же мере, как и приведенные на рис. 59, 60 и 61, за исключением случаев, отмеченных в следующем параграфе. (Но, как и следовало ожидать, кривые выборочных распределений длительности ожидания, построенные по данным одной-двух реализаций, 24 Заказ № 195 369
имеют несколько менее правильную форму по сравнению с кривыми «главного исследования», каждая из которых строилась по итогам шести реализаций.) Рассматривая последовательно рис. 59, 60 и 61, можно понять, почему необходимо было упоминать о «некоторых исключениях» Длительность ожидания Рис. 61. «Главное исследование»; q = 0,8, К = 6. при утверждении о том, что результаты моделирования подтверждают предположение 1. Если верхний обрез этих рисунков сместить до уровня вероятностей 0,95, то из оставшейся части рис. 61 уже нельзя увидеть, каким образом построенные по выборкам кривые воспроизводят тот переход к пределу, который был предсказан предположением. В некоторых экспериментах предсказанное поведение при переходе к пределу не было обнаружено даже на наиболее высоком уровне вероятности в выходных данных, соответствующем 0,998. Но во всех случаях форма кривых дает право допустить, что 370
такое поведение имело бы место, если только продлить кривые до значительно более высоких уровней вероятностей. Основанием для такого допущения может служить тот факт, что эти «вызывающие сомнения» результаты по своему характеру хорошо совпадают с результатами других связанных с ними экспериментов. Они сопоставимы с теми закономерностями, которые читатель сам может уловить из сравнения рис. 59 с рис. 60, а затем с рис. 6L Подтверждение предположения 2. Возможны два подхода к проверке предположения 2. С одной стороны, для его обоснования могут быть использованы значения w (f), полученные в результате выборки с помощью метода, описанного в разделе 5. С другой стороны, в ряде случаев значения w (f) могут быть определены математически точно; тогда можно воспользоваться этими значениями. Результаты двух названных подходов могут различаться между собой, естественно, лишь постольку, поскольку рассчитанные по выборке значения w (f) отличаются от математически точных значений. В проводившемся исследовании эксперименты не были достаточно продолжительными для того, чтобы можно было точно определить фактическое положение «верхних» точек распределений длительности ожидания в системах с q>0,8. Теория, построенная для установившегося состояния системы, при q = 0,8 очень хорошо подтверждается до уровня вероятностей 0,990, но при q = 0,900 граница приемлемой точности находится, по-видимому, недалеко от уровня вероятностей 0,950, при q = 0,95— поблизости от уровня 0,900 и при q = 0,98 — вблизи уровня вероятностей 0,8. Для q = 0,4 и 0,6 в тех границах, которые были выше указаны, все результаты экспериментов находятся* в полном соответствии с предположением 2, до наиболее высоких значений накопленной вероятности в выходных данных и независимо от того, какие используются значения w (f) — опытные или расчетные (они к тому же часто совпадают). Исключение составляют случаи, которые могут быть объяснены, как и при рассмотрении вопроса об экспериментальном подтверждении предположения 1, с помощью допущения о том, что выходные данные моделирования просто не содержат значений длительности ожидания при таких высоких вероятностях, какие необходимы, чтобы можно было обнаружить поведение распределений, приближающееся по своему характеру к предсказанному в предположении 2. Как и раньше, основанием для такого допущения служит тот факт, что «сомнительные» результаты хорошо совпадают с «более удовлетворительными» результатами других экспериментов, связанных с ними. За этими границами результаты экспериментов еще остаются в согласии с предположением 2, если для его интерпретации использовать выборочные значения w (/). Но почти во всех случаях, для которых были построены графики w (/) по математически точным данным, выборочные значения образуют кривую, которая более 24* 371
круто изгибается вверх, чем это предсказано теорией для установившегося состояния. И вся система кривых выборочных распределений длительности ожидания при этом устремляется вверх. Это явление отражает тот факт, что при выборке занижается число значений длительности ожидания, превышающих высокие квантили распределения этой величины при установившемся состоянии системы массового обслуживания. На рис. 59, 60 и 61 средняя из трех пунктирных линий представляет собой математически точную кривую установившегося распределения длительности ожидания в системах, отличающихся от систем, к которым относятся эти рисунки, лишь тем, что очередность выполнения требований в них определяется не динамическим правилом приоритета, а правилом «первым прибыл — первым обслужен». Две другие пунктирные линии параллельны средней и отстоят от нее на величину направленного горизонтально отрезка, равную ненулевым значениям индексов срочности, устанавливаемых в системах с динамическим правилом приоритета. Смысл предположения 2 в графической интерпретации сводится к тому, что кривые распределения длительности ожидания в системах с динамическим правилом приоритета должны иметь асимптоты, параллельные этим пунктирным линиям и отстоящие от них в том же направлении на то же расстояние. Результаты экспериментов в общем так же подтверждают предположение 2, как и данные, представленные на рис. 59, 60 и 61, с тем же толкованием и с теми же оговорками, которые отмечались выше. Верхняя часть этих рисунков является иллюстрацией явлений; связанных с ошибкой выборочного метода, о которых упоминалось в предыдущем параграфе. Оценки й. Результаты исследования хорошо согласуются с допущением о том, что в любой системе массового обслуживания с динамическим правилом приоритета значение й не должно отличаться от средней арифметической распределения индексов срочности более чем на небольшой процент разности между наибольшим и наименьшим индексами срочности, встречающимися в системе. Применительно к системам с постоянными значениями промежутков между прибытиями и распределенными по показательному закону значениями продолжительности обслуживания или к системам с распределенными по показательному закону значениями промежутков между поступлениями заявок и постоянными значениями продолжительности обслуживания результаты экспериментальных расчетов свидетельствуют о том, что в таких случаях й может систематически несколько превышать среднее значение индекса срочности. Похоже, что это наблюдение соответствует тому математическому факту, что упоминавшиеся соотношения правильны и для определенных систем с дискретным временем (см. раздел 4). На основе приведенных результатов экспериментов и тех доводов описательного характера, базирующихся на математических 372
построениях, о которых шла речь в конце раздела 4, ниже приводится более, жесткая формулировка предположения 2 применительно к особому классу систем. Предположение 3. Для систем с продолжительностями обслуживания заявок и промежутками времени между прибытиями, распределенными по показательному закону в предположении 2, й равно средней арифметической распределения индексов срочности. Следует отметить, что это предположение формулируется применительно как к системам с одним каналом обслуживания, так и к многоканальным системам. Если говорить о графической интерпретации предположения 3, то имеется в виду, что пунктирные линии на рис. 59, 60 и 61 сами представляют собой асимптоты кривых распределения длительности ожидания в системах с динамическим правилом приоритета. Эти графики типичны с точки зрения соответствия результатов описанных экспериментов предположению 3 при условии толкования и оговорок, аналогичных тем, на которые ранее было обращено внимание в связи с обоснованием предположения 2. Выше было предложено более общее заключение о том, что для широкого круга различных систем массового обслуживания с динамическим правилом приоритета значения й ненамного отличается от средней арифметической распределения индексов срочности; это заключение графически может быть интерпретировано следующим образом: в такого рода системах кривые распределения длительности ожидания должны асимптотически приближаться к кривым, близким к представленным пунктирными линиями на рис. 59, 60 и 61. Сходимость к асимптотам. В этой последней части раздела мы исходим из того, что предположения 2 и 3 оправдались в действительности, и применительно к этому случаю формулируем ряд замечаний относительно формы нижней части кривых, построенных по выборочным распределениям длительности ожидания в системах с динамическим правилом приоритета, а также относительно того, каким образом эти кривые сходятся в эксперименте к предсказанным для них асимптотам. «Асимптоты», которые мы будем далее иметь в виду, построены, как правило, на основе выборочных значений w (f). В случаях, на которые предположение 3 не распространяется, положение по горизонтали всего набора предполагаемых асимптот было выбрано с расчетом обеспечить наибольшее возможное (оцениваемое субъективно) соответствие предположению 2. Однако не было ни одного случая, когда бы выбранное положение не соответствовало бы допущению о том, что в рассматриваем мых системах й отличается от средней арифметической распределения индексов срочности не более чем на небольшой процент от разности между наибольшим и наименьшим из используемых в данной системе индексов срочности. Кривые, изображенные на рис. 58—61, представляют собой типичные образцы кривых выборочных распределений длительно- 373
сти ожидания. За исключением небольших отклонений, которые вполне обоснованно можно отнести за счет ошибки выборки, вся совокупность кривых в любой заданной системе всегда располагается между асимптотами, соответствующими наименьшему и наибольшему индексам срочности, используемым в данной системе. Значения длительности ожидания, соответствующие заданному квантилю для различных классов срочности, всегда располагаются в порядке увеличения индекса срочности. Кривые, относящиеся к наименьшему и к наибольшему индексу срочности, всегда довольно плавно «развертываются» в направлении своих асимптот. Кривые, относящиеся к промежуточным классам срочности, имеют обычно более сложную форму по сравнению с другими, плавными выпуклыми или вогнутыми кривыми, начинающимися в тех же точках на вертикальной оси и имеющими такие же асимптоты. Этим промежуточным кривым свойствен более крутой подъем после того, как они в самом начале отходят от вертикальной оси. Попытки интерполяции нижней части кривых распределения длительности ожидания при динамичных приоритетах с помощью заданного параметрами закона распределения привели лишь к неудовлетворительным результатам. Вообще говоря, построенная по выборочным данным кривая распределения длительности ожидания при наименьшем индексе срочности, как видно из графика, медленней других приближается к своей асимптоте; это означает, что кривые, относящиеся к более высоким индексам срочности, приближаются к своим асимптотам на любое заданное горизонтальным отрезком расстояние при меньшем квантиле, чем эта кривая. Однако в пределах одной системы разница в скорости сходимости для различных кривых невелика, и поэтому представляется целесообразным дальнейшие замечания по этому вопросу формулировать применительно к кривой с наименьшим индексом срочности. Для описания сходимости этой кривой для любой системы массового обслуживания с динамическим правилом приоритета в качестве грубой, найденной эмпирическим путем средней, полезно определить величину (Среднее значение индекса срочности) — j _ (Наименьшее значение индекса срочности) ~~ Средняя длительность ожидания заявки в очереди И принять М == Q2e~L. Заметим, что средняя длительность ожидания обслуживания одинакова и в системе с динамическим правилом приоритета и в системе массового обслуживания, отличной от нее только тем, что очередность обслуживания в ней определяется правилом «первым прибыл — первым обслужен», поэтому L и М могут быть во многих разнообразных случаях легко вычислены с помощью хорошо известных математических построений. 374
Как выяснилось в результате экспериментов, расстояние по горизонтали на уровне вероятностей A — М) между кривой выборочного распределения длительности ожидания для наименьшего индекса срочности и предсказанной для этой кривой асимптотой всегда грубо равняется половине средней для этой кривой длительности ожидания w(l— М) — wu(\— М)^~й— и—|-, где й — наименьший индекс срочности, a w — средняя длительность ожидания в данной системе. В большинстве случаев эта разница на уровне вероятностей A —М/2) слишком мала для того, чтобы ее можно было обнаружить по выборочным данным. В табл. 1 приведено несколько приближенных значений величины A —М). Величина L в системе, к которой относится рис. 59, равна единице, a q = 0,8. Из таблицы находим A — М) = 0,77. Таким образом, смысл предшествующего параграфа применительно к рис. 59 заключается в том, что пунктирные линии могут служить приемлемым приближением для кривых выборочных распределений длительности ожидания только на уровне вероятностей выше 0,77. Соответствующие уровни вероятностей равняются для рис. 60— 0,91, а для рис. 61—0,97. 7. ЗАКЛЮЧЕНИЕ. ПРИМЕРЫ Нам представляется, что приведенные в данной статье аргументы достаточны для того, чтобы на их основании считать полезными рабочими гипотезами следующие утверждения: 1. Предположение 2 действительно для широкого круга систем массового обслуживания с динамическим правилом приоритета, и для большинства практических целей оно достаточно точно согласуется с фактическими результатами. 2. Далее, для большинства практических целей в предположении 2 вместо й можно использовать среднюю арифметическую распределения индексов срочности. 3. И, наконец, на уровне вероятностей не ниже A — М) (как это было установлено в конце раздела 6), гипотетические приближенные асимптоты, найденные на основе использования двух предыдущих утверждений, достаточно точно для большинства практических целей аппроксимируют кривые распределения длительности ожидания. Для большей уверенности можно в третьем из этих утверждений заменить уровень вероятности A — М) на A — М/2). Но независимо от того, какая используется формулировка, наилучшие результаты, если говорить о рассматриваемых в данной статье параметрах, получаются в тех системах массового обслуживания с динамическим 375
правилом приоритета, в которых загрузка каналов обслуживания близка к единице, разность между средним и наименьшим из используемых индексов срочности не слишком велика и в которых наибольший интерес представляют участки распределений длительности ожидания, соответствующие высоким уровням вероятностей. Примеры. В последних параграфах приведены условные примеры использования предположения 3. Во всех случаях имеется в виду система массового обслуживания с одним каналом обслуживания, распределенными по показательному закону продолжитель- ностями обслуживания и промежутками между прибытиями заявок, где средняя продолжительность обслуживания равна единице, a q = 0,9. В таких случаях табл. 1 может служить хорошей основой для толкования данного предположения. Средняя длительность ожидания обслуживания в системе, которую необходимо знать для расчета с использованием табл. 1, равняется q/A —q) = 9. Таблица 1 ЗНАЧЕНИЯ A-М) \v Р L \. 1 2 3 4 0,4 0,94 0,98 0,992 0,997 0,6 0,87 0,95 0,98 0,993 0,8 0,77 0,91 0,97 0,988 0,9 0,71 0,89 0,96 0,985 0,95 0,68 0,88 0,95 0,984 Примечание. Определения и смысл приведенных в таблице величин разъяснены в последней части раздела 6. В первом примере все заявки разделяются на три класса, составляющие соответственно 10, 25 и 65% общего числа заявок и имеющие плановые сроки запуска, равные 20, 30 и 50 единицам времени, считая от момента поступления заявок в систему. Необходимо заранее определить, какая часть из всех поступивших заявок будет обслужена «вовремя», если они будут располагаться в очереди в соответствии с плановым сроком запуска. Если считать числа 20, 30 и 50 индексами срочности, то математическое ожидание индекса срочности будет равно 42. Это й из предположения 3. Предполагаемые асимптоты параллельны кривой распределения для правила «первым прибыл — первым обслужен», приведенной на рис. 58, и отстоят от нее на величину направленных горизонтально отрезков: —22, —12 и +8 (три значения разности и — й). Как видно, эти линии пересекают лимиты длительности ожидания, установленные с расчетом закончить обслуживание «вовремя» B0, 30 и 50 еди- 376
ниц времени), вблизи от уровня вероятностей 0,980. Поскольку L = D2 — 20) : 9 = 2,4, то из табл. 1 видно, что здесь A — М) меньше 0,95. Можно, следовательно, допустить, что кривые фактических распределений длительностей ожидания подходят близко к своим асимптотам на уровне вероятностей 0,98. Отсюда следует вывод, что в каждом классе срочности «своевременно» будет начато обслуживание около 98% требований. Если бы в предыдущем примере начало обслуживания заявок тех же классов срочности планировалось через 5, 15 и 35 единиц времени после их прибытия в систему, то уровень вероятностей, при котором кривые пересекали бы предполагаемые асимптоты, равнялся примерно 0,92 (если воспользоваться рис. 58). Поскольку это значение близко к A — М), то вывод о том, что «своевременно» будет начато обслуживание 92% заявок, представлял бы собой сравнительно грубое приближение. На самом деле можно ожидать, что в классе с наибольшим индексом срочности процент заявок, обслуживание которых будет начато «своевременно», окажется несколько ниже. В третьем, последнем, примере все заявки разбиваются на два класса, скажем А и В, включающие в себя соответственно 40 и 60% общего числа заявок. Требуется разработать для этих двух классов такое динамическое правило приоритета, при котором обслуживание не менее 95% заявок класса А будет начато не позднее 15 единиц времени после прибытия их в систему и которое обеспечило бы (с учетом этого ограничения) самое лучшее обслуживание для класса В, какое только возможно. Второе требование, если интерпретировать его с помощью общепринятых обозначений, означает,, что необходимо минимизировать uB —иА. Если мы условимся считать, что интересующие нас части кривых распределения длительности ожидания «достаточно близки» к своим асимптотам, то для класса А требование сводится к тому, чтобы асимптота этого класса проходила на рис. 58 через точку (или выше) с координатами A5; 0,95). Это требование выражается неравенством иА — а< 15 — — 30 = — 15. Так как и = 0,4иА + 0,6шБ, это неравенство после простых преобразований может быть выражено через условие и>в — иА>25. Требуемый минимум достигается, очевидно, при ив = иА + 25. Теперь можно проверить наше условное допущение. Из табл. 1 находим, что L равняется примерно 1,7, а A—М) меньше 0,89, откуда следует, что достаточное сближение кривых распределения длительности ожидания с их асимптотами может быть, конечно, обеспечено на уровне вероятностей 0,95 и поставленная задача может быть, конечно, решена, если принять ив = иА + 25. Плановые сроки запуска могут быть установлены следующим образом: для заявок класса А время прибытия в систему плюс 15, для заявок класса В — время прибытия в систему плюс 40.
ЧАСТЬ V Календарное планирование сложных комплексов операций После того как метод критического пути был впервые сформулирован в 1959 г. Келли и Уокером [1], он нашел немедленное признание и применение как теоретическая концепция и как инструмент для практической деятельности. Мальколм и др. [2] описали связанную с этим методом систему, названную ПЕРТ. Данные методы были с тех пор применены в ряде различных случаев, а в последнее время некоторые фирмы, выпускающие электронно-вычислительные машины, стали рекламировать программы для реализации метода критического пути как часть дополнительных услуг, оказываемых ими клиентам. По существу, это простой метод графического представления той работы, которую необходимо произвести для завершения проекта, основанный на выполнении одних лишь элементарных арифметических действий (нахождение максимума и минимума функции конечного множества чисел). Поэтому кажется просто удивительным, что идея эта так долго ждала своего воплощения. Немедленное и широкое признание метода критического пути — лучшая оценка его значения. Леви, Томпсон и Уист в своем «Введении в метод критического пути» (гл. 20) дают элементарный обзор теории этого метода, иллюстрируя ее простыми примерами. Их обзор не носит специального характера и обращен к широкому кругу читателей, желающих получить основные представления о данной теории. Обозначая работы не стрелками (как Келли и Уокер), а кружками, они получают возможность избежать ряд трудностей технического и иллюстративного характера, связанных с введением фиктивных работ — необходимого элемента «стрелочной диаграммы» Келли и Уокера. Математически оба описания эквивалентны; любой из методов может быть признан более предпочтительным, исходя из субъективных соображений. Статья Леви, Томпсона и Уиста представляет собой ясное и технически точное описание одного из вариантов этой теории. 378
Хотя в литературе о методе критического пути и встречались утверждения о том, что критические работы (то есть работы с минимальным резервом времени) имеют наиболее важное значение, для тех, кто руководит реализацией проекта, это полностью справедливо лишь в том случае, когда фирма, осуществляющая проект, может распоряжаться неограниченными ресурсами. Если имеют место ограничения в рабочей силе и оборудовании, то вполне возможно, что некритические работы могут задержать завершение проекта просто потому, что не окажется в наличии ресурсов, необходимых для их окончания. В гл. 21 «Метод критического пути: планирование использования ресурсов и календарное распределение работ» Келли обращается к этой проблеме. После краткого изложения метода критического пути в варианте со стрелочной диаграммой Келли рассматривает различные модели, которые могут быть использованы для календарного планирования загрузки людей и оборудования выполнением работ по проекту с учетом ограниченности ресурсов. Такие модели предполагают использование соответствующих программ для электронно-вычислительных машин с целью непосредственного закрепления ресурсов за работами. Оценка различных вариантов этих моделей, утверждает Келли, в значительной мере дело «искусства». Эта глава, без сомнения, важна с точки зрения стимулирования дальнейшей работы над моделями, использующими метод критического пути. Такого рода усовершенствование метода критического пути имеет решающее значение для дальнейшего повышения его практической эффективности. Порядок предшествования, существующий между работами в проекте, создает то, что математики называют «отношением». В основе метода критического пути лежит отношение предшествования, складывающееся в некоторых парах работ. В «Математических основах метода критического пути» (гл. 22) Леви, Томпсон и Уист исследуют математические свойства этого отношения. Отношение непосредственного предшествования должно быть рефлексивным и к — интранзитивным (в главе дается определение этих терминов); свойства эти для математических отношений необычны. Данная глава представляет собой дальнейшее развитие предыдущей, вступительной статьи тех же авторов. Ими разработаны алгоритмы для проверки того, действительно ли в соответствии с исходными данными между работами в проекте образуются отношения непосредственного предшествования, обладающие желаемыми свойствами. В главе для каждого алгоритма предлагаются два варианта: один из них основан на алгебраических методах матричного исчисления (и имеет близкое отношение к результатам, полученным Гиффлером — см. гл. 4 настоящего сборника), в основе другого варианта алгоритма лежит теория графов. Этот последний вариант, вероятно, наиболее экономный с точки зрения использования запоминающих устройств вычислительной машины. Таким образом, три главы, представленные в этом разделе, отражают сложившееся состояние одной из важнейших проблем в литературе по вопросам календарного планирования и указывают на некоторые намечающиеся тенденции.
ГЛАВА 20 Введение в метод критического пути Ф. К. ЛЕВИ, Г. Л.'ТОМПСОН и ДЖ. Д. УИСТ1 Растущий ассортимент расчетных приемов, используемых для обоснования решений в сфере хозяйственного руководства, недавно пополнился «методом критического пути»— действенным, но в основе своей весьма простым методом анализа планирования и календарного распределения работ при выполнении больших, сложных проектов. По существу, этот метод дает возможность определить, во-первых, какие работы или операции из числа многих, составляющих проект, являются «критическими» по своему влиянию на общую календарную продолжительность выполнения проекта, и, во-вторых, каким образом построить наилучший календарный план проведения всех работ по данному проекту с тем, чтобы выдержать заданные сроки при минимальных затратах. С помощью этого метода могут быть подвергнуты исследованию самые различные типы проектов, что видно из следующего перечня его применений: 1. Строительство здания (или автострады, или нового завода). 2. Проектирование и изготовление головного образца нового изделия. 3. Планово-предупредительный ремонт оборудования на нефтеперерабатывающем заводе (или другие мероприятия по ремонту). 4. Установка и наладка вычислительной системы. 5. Научные исследования и технические проекты. 6. Календарное планирование при строительстве и ремонте судов. 7. Изготовление и монтаж крупного генератора (и другие операции по изготовлению единичных изделий). 8. Операции по подготовке ракеты к запуску. 1 Работают в Технологическом институте Карнеги. 380
1. ХАРАКТЕРИСТИКИ, НЕОБХОДИМЫЕ ДЛЯ АНАЛИЗА ПРОЕКТА МЕТОДОМ КРИТИЧЕСКОГО ПУТИ Каждый из этих проектов имеет ряд характеристик, существенных для анализа методом критического пути: 1. Проект состоит из точно определенного комплекса работ (или операций), завершение которых означает окончание проекта. 2. Работы могут начинаться и заканчиваться независимо одна от другой в пределах заданной технологической последовательности. (Это требование разграничивает отдельные этапы непрерывных процессов, таких, как рафинирование нефти, где «работы» или операции обязательно следуют одна за другой без всякого перерыва.) 3. Работы упорядочены, то есть должны выполняться в заданной технологической последовательности (например, устройство фундамента здания должно предшествовать возведению стен). 2. МЕТОД Идея метода критического пути очень проста, она может быть проиллюстрирована с помощью графического изображения проекта. Графическое изображение не представляет собой неотъемлемой части анализа; разработаны программы для электронно-вычислительных машин, позволяющие производить необходимые вычисления без обращения к графикам. Тем не менее график — ценное средство четкого визуального представления комплекса работ, составляющих проект, и их технологической последовательности. Прежде всего каждая работа, которая необходима для завершения проекта, записывается с указанием отличительного ее обозначения (обычно номера), времени, требуемого для ее выполнения, и перечня работ, обязательно предшествующих ее началу 1. После этого каждая работа изображается на графике в виде кружка, внутри которого указываются номер работы и время ее выполнения. Технологическая последовательность работ указывается стрелками, соединяющими каждую работу (кружок) с непосредственно следующими за ней работами. К этим последним направлены острия стрелок. Для удобства кружки всех работ, не имеющих им предшествующих, соединены с кружком, обозначенным «Начало»; точно так же все 1 Для удобства графического изображения и обнаружения определенных типов ошибок в исходных данных работы могут быть расположены в «технологической последовательности». Это означает, что ни одна работа не может попасть в список, пока не будут перечислены все непосредственно предшествующие (и, стало быть, все предшествующие) ей работы. Расположение в технологической последовательности невозможно, когда в данных о работах ошибочно допущено зацикливание (например, работа А предшествует В, В предшествует С, а С предшествует А). 381
кружки работ, за которыми никакие другие работы не следуют, соединены с кружком «Конец» г. График представляет собой символическое изображение с помощью стрелок некоторого числа различных путей от «Начала» к «Концу». Время, потребное для прохождения каждого из путей, есть сумма продолжительностей выполнения всех работ на этом пути. Критический путь (или пути) — это наиболее продолжительный (по времени) путь от «Начала» до «Конца», ему соответствует минимальное время, необходимое для завершения всего проекта в целом 2. По существу, критический путь —«узкое место» проекта. Уменьшить общую продолжительность осуществления проекта можно, только изыскав способы сокращения работ, лежащих на критическом пути; время, необходимое для выполнения некритических работ, не имеет значения с точки зрения продолжительности осуществления проекта в целом. Таким образом, нет никакой необходимости в часто практикуемом (и дорогостоящем) стремлении «поднажать» на всех работах ради сокращения общей длительности выполнения проекта. В больших проектах критическими бывает обычно примерно 10% работ. (Эта цифра, естественно, колеблется от проекта к проекту.) Конечно, если найден способ сокращения одной или нескольких критических работ, то тем самым будет не только уменьшена продолжительность осуществления проекта, но и изменена длина самого критического пути, так что некоторые некритические ранее работы становятся критическими. 1 «Начало» и «Конец» могут рассматриваться как фиктивные работы продолжительностью нуль единиц времени. 2 Упомянутый выше способ графического представления проекта в некоторых отношениях отличен от примененного Дж. Е. Келли и М. Р. Уокером, которые, вероятно, больше чем другие сделали на первом этапе для развития календарного планирования на основе метода критического- пути. Получившая широкое применение форма графического представления проекта, предложенная Келли и Уокером, прямо противоположна описанной выше: работы изображаются стрелками, а стрелки соединяются между собой с помощью кружков (или точек), которые обозначают технологическую последовательность работ. Таким образом, стрелки всех работ, непосредственно предшествующих данной, сходятся к кружку «в хвосте» обозначающей ее стрелки, а стрелки всех работ, непосредственно следующих за ней,, исходят из кружка в острие стрелки, соответствующей этой работе. В таком случае каждый кружок обозначает, по сути дела, событие: окончание всех работ, стрелки которых сходятся к данному кружку. Поскольку эти работы непосредственно и обязательно предшествуют началу всех работ, идущих от кружка, все они должны быть завершены прежде, чем может начаться любая из последующих работ. Если пользоваться формой Келли— Уокера,. часто приходится дополнять график проекта «фиктивными работами», чтобы точно отобразить технологическую последовательность работ. Метод, описанный выше авторами настоящей главы, позволяет избежать трудностей,, связанных с необходимостью (и сложностью) введения фиктивных работ,, он облегчает составление программ для вычислительной машины и кажется более простым для объяснения и применения. 382
3. ПРИМЕР. СТРОИТЕЛЬСТВО ЗДАНИЯ Более ясное представление о календарном планировании на основе метода критического пути и о процессе построения графика можно было бы получить с помощью простого и хорошо знакомого /?^Фундамент Слесарно-водопроводные ^—^^^^^оаботы 0 подвальных х Деревяниьшу^^^Упомещениях 1Л\каркас 1^4. JJepatpbh^ монтаж электротехнических / устройств сеть Обозначения: Шифр работы / Нормативная /Of продолжительность к?/ работы Рис. 62. График проекта строительства здания. примера. Проект строительства здания легко проанализировать, пользуясь приемами метода критического пути. Этот пример типичен для большого класса аналогичных практических приложений. 383
Шифр (номер) работы Описание работы Непосредственно предшествующие работы Нормальная длительность выполнения (в днях) а Ь С d е f g h I m n о P Я r s t и V Начало Вырыть котлован и засыпать основание Уложить бетонный фундамент . . . Установить деревянный каркас . . . Произвести кладку кирпича .... Установить канализационные трубы и смонтировать санитарно-техниче- ское оборудование в подвальных помещениях Перекрыть подвальный этаж .... Произвести предварительные работы по монтажу санитарно-технического оборудования Произвести предварительные работы по монтажу электропроводки . . . Смонтировать системы отопления и вентиляции Укрепить сухую штукатурку и оштукатурить помещения (включая просушивание) Уложить полы Смонтировать кухонное оборудование Произвести окончательный монтаж санитарно-технического оборудования Закончить плотничные работы . . . Закончить оборудование кровли и перекрыть стыки Укрепить водосточные желоба и трубы Оборудовать коллекторы для дождевых вод Покрыть полы лаком Произвести малярные работы . . . Закончить электротехнические работы Закончить нивелировку прилегающей территории Оборудовать тротуары и закончить планировку территории Конец а Ь с d d,g /, /, h k I I I e P с 0, t m, n t 1 2 3 2 1 1 2 3 1 v ?, u, w 3 2 4 10 3 1
Подрядчику может понадобиться более детальный анализ, мы же удовлетворимся перечнем важнейших работ (для каждой из них указаны также предполагаемая продолжительность выполнения и непосредственно предшествующие ей работы; см. стр. 385). Столбец «Непосредственно предшествующие работы» определяет технологическую последовательность выполнения работ и позволяет нам составить проект в графической форме (см. рис. 62). В каждом кружке указаны шифр работы (буква) и продолжительность ее выполнения (цифра). Следуя правилу, согласно которому каждый «допустимый» путь должен обязательно проходить в направлении, указанном стрелками, можно было бы перечислить 22 различных пути от «Начала» к «Концу» с длиной (по времени), колеблющейся от минимума в 14 дней (путь а — Ь — с — г — v — w — х) до максимума в 34 дня (путь а — b — с — d — / — k — / — п — t — s — х). Последний путь — критический, он определяет полную календарную продолжительность осуществления проекта и показывает, какие работы'являются критическими по их влиянию на эту продолжительность. Если подрядчик хочет закончить строительство дома быстрее, чем за 34 дня, для него было бы бесполезным сокращать продолжительность работ, не принадлежащих критическому пути. Ему может показаться, например, что ход строительства сдерживается кладкой кирпича (е), так как до ее завершения не может начаться выполнение целой серии работ (р — q — v — w). Однако усилия, направленные на то, чтобы форсировать окончание кирпичной кладки, были бы бесплодны, поскольку эта работа не принадлежит критическому пути и поэтому не имеет отношения к определению общей календарной продолжительности завершения проекта. 4. СОКРАЩЕНИЕ ДЛИНЫ КРИТИЧЕСКОГО ПУТИ Если бы подрядчик пользовался данным методом, он исследовал бы возможности рационализации именно на критическом пути. Может быть, он мог бы поручить работу d (сооружение каркаса) большему числу плотников, сократив время на ее выполнение с 4 дней до 2. Тогда критический путь несколько изменился бы и проходил уже через работы / и g вместо d. Заметим, что общая продолжительность выполнения проекта сократилась бы только на один день, хотя на работе d было сэкономлено 2 дня. Поэтому, внося изменения в критические работы, подрядчик должен не упускать из виду возможное перемещение критического пути. Сокращая длину критического пути, нужно учитывать как технические, так и экономические вопросы. Существует ли практическая возможность сократить время, необходимое для выполнения критических работ (поручая работу большему числу людей, вводя 25 Заказ № 195 385
сверхурочные, используя различное оборудование и т. д.)? Если да, то будут ли затраты на ускорение работы меньше экономии, достигаемой за счет сокращения продолжительности осуществления проекта в целом? Метод критического пути полезен тем, что он сразу же сосредоточивает внимание на тех работах, которые являются критическими, если говорить о продолжительности осуществления проекта; он дает возможность без особого труда определить влияние сокращения различных работ и позволяет оценить затраты на форсирование запланированных действий. Вспоминаются два примера эффективного использования этих свойств метода критического пути. Компания Дюпона, пионер использования метода критического пути в строительстве и при ремонтных работах, была озабочена остановкой на ремонт завода в Луисвилле, выпускающего полуфабрикат для производства неопрена. Проанализировав план- график ремонта с помощью метода критического пути, инженеры компании смогли сократить время вынужденного простоя со 125 до 93 часов, а в ходе дальнейших уточнений было намечено уменьшить общую продолжительность работ до 78 часов. В результате после ремонта завод дал в 1959 г. дополнительно около 1 млн. фунтов полуфабрикатов и перестал быть узким местом в технологическом процессе производства неопрена. ПЕРТ х — система планирования, тесно связанная с методом критического пути, получила широкое признание после того, как ее применение помогло сократить на два года время, намеченное первоначально для завершения программы разработки и изготовления в ВМС США опытного образца ракеты «Поларис». Выявив с помощью системы ПЕРТ наиболее длинные пути в обширном лабиринте работ, выполнение которых необходимо для создания ракеты, руководители программы полу- • чили возможность сконцентрировать свои усилия на тех операциях, которые оказывали решающее влияние на продолжительность реализации всей программы в целом. Однако даже применительно к нашему небольшому проекту строительства здания процесс перечисления и измерения длины каждого из путей, проходящих через лабиринт работ, утомителен. Ниже описан простой способ выявления критического пути с одновременным получением полезной информации о каждой из работ. 5. АЛГОРИТМ МЕТОДА КРИТИЧЕСКОГО ПУТИ Если задан срок или дата начала осуществления проекта (обозначим его через S), то существует ранний срок начала ES каждой из работ, который представляет собой самый ранний из возможных сроков начала ее выполнения при условии, что все непосредственно 1 В оригинале Program Evaluation and Review Technique —«техника оценки и пересмотра программ"».— Прим. перев. 386
предшествующие ей работы также начинаются в свой срок ES. И если длительность выполнения работы равна /, то по аналогии ранний срок окончания EF этой работы можно определить как сумму ? +1. С помощью графика проекта можно весьма просто вычислить сроки ES и EF следующим образом: 1) указывается значение величины 5 слева и справа от кружка, обозначающего «Начало»; 2) выбирается любая такая работа, для которой еще не указаны сроки ES и EFy но все непосредственно предшествующие ей работы эти сроки уже имеют; слева от кружка данной работы указывается наибольшее из чисел, стоящих справа от кружков работ, непосредственно ей предшествующих (это ранний срок ее начала); 3) к этому числу прибавляется продолжительность данной работы, и сумма указывается справа от кружка (ранний срок окончания работы); 4) перечисленные операции не прекращаются до тех пор, пока не будет достигнут «Конец». Таким образом, по окончании вычислений слева от кружков, соответствующих каждой из работ, будут стоять ранние сроки начала ES этих работ, а справа — ранние сроки их окончания EF. Число, стоящее справа от кружка последней работы «Конец», представляет собой ранний срок окончания F всего проекта в целом. 6. ПРИМЕР Проиллюстрируем эти вычисления на простом примере. Необходимо собрать узел из двух деталей А и В. Обе детали должны быть обработаны на токарном станке, деталь В должна пройти, Шифр работы а Ь С d е f g h Описание работы Начало Получить материал для детали А . . Получить материал для детали В . . Обработать деталь А на токарном станке Обработать деталь В на токарном станке Шлифовать деталь В Собрать узел из деталей А и В Конец Та Непосредственно предшествующие работы а а - Ь, с by с е d, f g б лица 1 Продолжительность 0 10 20 30 20 40 20 0 25* 387
кроме того, шлифовку. Перечень работ, которые должны быть выполнены, а также данные о продолжительности их (в минутах) и о работах, предшествующих каждой из них, приведены в табл. 1. График этого проекта показан на рис. 63.* Как и раньше, перед Начало Обозначения: Шитр (работы 'Нормативная продолжительность 20 ^ 50 100^0)F^100 Наболее \ Конец ранний Наиболее срок ранний начала срок работы окончания работы Рис. 63. Расчет наиболее раннего срока начала и наиболее раннего срока окончания для каждой работы. запятой стоит шифр работы, а после запятой — ее продолжительность. На графике указаны также сроки ES и EF для каждой работы при условии, что срок начала Stравен 0. Слева от кружков, обозначающих работы, стоят сроки ES, а справа EF. Заметим, что F = 100. 7. НАИБОЛЕЕ ПОЗДНИЕ СРОКИ НАЧАЛА И ОКОНЧАНИЯ РАБОТ Предположим теперь, что срок Т завершения проекта задан заранее. Для того^чтобы быть выполнимым, срок Т должен быть, разумеется, больше или равен Fy раннему|сроку окончания проекта. 388
Приняв далее, что Г > F, можно сформулировать понятие позднего срока окончания LF, то есть наиболее позднего срока, в который работа может быть закончена, не задерживая окончания проекта в целом сверх запланированного срока. Подобным же образом Начало 0;0(а.0H;0 Обозначения , Шифр работы .Нормативная 20i50(dt / Наиболее поздний срок начала работы Наиболее ранний срок начала работы продолжительность \50;80 Рабты Наиболее поздний срок окончания работы Наболее ранний срок окончания работы ^{(К0I00;100 Конец Рис. 64. Расчет наиболее позднего срока начала и наиболее позднего срока окончания для каждой работы. поздний срок начала LS работы определяется как LF — /, где t — продолжительность работы. Эти значения вычисляются для каждой работы способом, аналогичным указанному выше, с той лишь разницей, что проект просматривается от «Конца» к «Началу». Мы поступаем следующим образом: 1) указываем значение Т слева и справа от кружка, обозначающего «Конец»; 389
2) выбираем любую такую работу, для которой еще не указаны сроки LS и LF, но все непосредственно следующие за ней работы эти сроки уже имеют; справа от кружка данной работы указывается наименьшее из чисел, стоящих слева от кружков работ, непосредственно за ней следующих; 3) вычитаем из этого числа продолжительность данной работы и сумму указываем слева от ее кружка; 4) продолжаем эти операции до тех пор, пока не дойдем до кружка «Начало». По окончании вычислений справа от кружков, соответствующих каждой из работ, будут стоять поздние сроки окончания работ LF, а слева — поздние сроки начала работ LS. Число, стоящее справа от кружка «Начало», представляет собой наиболее поздний срок начала всего проекта в целом, обеспечивающий его завершение к запланированному сроку Т. На рис. 64 приведены результаты этих вычислений, на примере, взятом из табл. 1. Здесь Т = F = 100. Ранний (ES) и поздний (LS) сроки начала каждой работы указаны через точку с запятой слева от кружка, обозначающего работы, а ранний (EF) и поздний (LF) сроки ее выполнения — справа. 8. ПОНЯТИЕ О РЕЗЕРВЕ ВРЕМЕНИ Изучение рис. 64 показывает, что для одних работ ранний и поздний сроки начала их выполнения совпадают, для других — нет. Разность между ранним и поздним сроками начала работы (или между ранним и поздним сроками ее окончания) называется полным резервом времени (TS) этой работы. Полный резерв характеризует собой максимальное время, на которое может быть задержано начало выполнения работ по сравнению с ранним сроком ее начала, без отсрочки завершения проекта. Критическими выше были названы работы, принадлежащие самому длинному пути на графике проекта. Следовательно, критические работы оказывают непосредственное влияние на продолжительность осуществления проекта. Теперь можно установить связь между понятиями критического пути и резерва времени работы. 9. НАХОЖДЕНИЕ КРИТИЧЕСКОГО ПУТИ Если заданный срок Т равен раннему сроку окончания проекта в целом F, то полный резерв времени для всех критических работ равен нулю. Должен быть по крайней мере один путь от «Начала» к «Концу», состоящий только из критических работ, то есть критический путь. 390
Если Т больше F, то полный резерв времени критических работ будет равен (Т — F). Это значение минимально, для всех некритических работ полный резерв времени будет больше. Критический путь, как уже отмечалось, состоит только из критических работ, то есть из работ, имеющих наименьшее значение TS. На рис. 64 критический путь показан более жирными стрелками, соединяющими критические работы. В данном случае имеется только один критический путь, и все критические работы лежат на этом пути. (В других случаях критических путей может быть несколько.) Заметим, что Т = F, поэтому полный резерв времени критических работ равен нулю. Работа Ь имеет TS = 10, а для работы d—TS = 30. Выполнение каждой из этих работ в отдельности или обеих вместе могло бы быть задержано на это время, не вызывая задержки осуществления проекта в целом. 10. СВОБОДНЫЙ РЕЗЕРВ ВРЕМЕНИ Следует упомянуть еще об одном виде резерва времени. Свободный резерв FS — время, на которое может быть задержано выполнение работы без ущерба для раннего срока начала какой-либо другой работы. Работа с положительным значением полного резерва времени может иметь или не иметь свободный резерв, но последний никогда не превышает первого. Для целей проведения вычислений свободный резерв времени работы определяется как разность между ранним сроком окончания этой работы и самым ранним из ранних сроков начала непосредственно следующих за ней работ. Так на рис. 64 работа b имеет FS = 10, а работа d — FS = 30. Все другие работы, приведенные на рис. 64, имеют нулевой свободный резерв времени. 11. СМЫСЛ РЕЗЕРВА ВРЕМЕНИ Когда у какой-либо работы полный резерв времени равен нулю, плановый срок начала ее выполнения устанавливается автоматически (ранний срок начала равен позднему сроку начала); задержать начало выполнения работы против этого расчетного срока — значит задержать завершение проекта в целом. В то же время в отношении работ, имеющих резерв времени, составитель графика, назначая сроки начала их выполнения, обладает определенной свободой действий. Эта гибкость может быть с пользой применена для выравнивания во времени объемов планируемых работ. Пиковая нагрузка, образующаяся в отдельные дни в цехе (в других случаях — на станке или в проектной группе), может быть уменьшена путем сдвига начала работ, приходящихся на эти дни, на наиболее поздние сроки. Наличие резервов времени позволяет использовать такого рода приемы, не изменяя сроков завершения проекта. 391
Свободный резерв времени можно эффективно использовать на уровне оперативного руководства. Если работа имеет свободный Начало 0;3(а])H;3 Обозначения: Наиболее 'ранний срок начала работы Шифр работы Нормативная продолжительность b;7(c$6;9 рабмы f s \ ^-Наиболее поздний Паидолее \ срок окончания поздний \ ра6ты срок \ г начала Наиболее ранний срок работы окончания работы Рис. 65. График проекта со сроками начала и окончания работ. резерв времени, можно, например, предоставить мастеру производственного участка некоторую свободу в выборе сроков начала ее выполнения. Даже если он отложит работу на срок, равный свободному резерву времени (или меньше его), эта задержка не отразится на сроках начала и резервах времени последующих работ 392
(в отношении работ, не имеющих свободного резерва времени, это положение верным не является). Чтобы пояснить эти соображения, вернемся к нашему примеру строительства здания. 12. СНОВА О ПОДРЯДЧИКЕ На рис. 65 воспроизведен график работ по строительству здания. Слева от кружка каждой работы указаны сроки ES\ LS, справа — EF\ LF, Допустим, что строительство начинается в нулевой день и должно быть закончено на 37-й день. Полный резерв времени по каждой работе не указывается, так как он легко может быть получен как разность между парами чисел ES и LS или EF и LF. Но те работы, у которых имеется свободный резерв времени, на графике отмечены. Единственный критический путь показан более жирными стрелками. Полный резерв времени каждой из критических работ, принадлежащих этому пути, равен 3 дням. Ряд выводов может быть сделан непосредственно из самого графика. 1. Подрядчик может отложить начало строительства на три дня и все же закончит его к запланированному сроку (если не возникнет непредвиденных трудностей). Такая задержка сократила бы полный резерв времени каждой из работ на три дня, при этом для критических работ TS сократится до нуля. 2. Некоторые работы имеют свободный резерв времени. Так подрядчик мог бы задержать завершение предварительных работ по монтажу электропроводки на два дня, перекрытия подвального» этажа — на 1 день, предварительные работы по монтажу водо- проводно-канализационной сети — на 4 дня, установки коллекторов для дождевых вод — на 12 дней и т. д. по сравнению с ранним сроком окончания этих работ, не затрагивая последующих работ. 3. Ряд работ: е (кладка кирпича), р (покрытие крыши), q (водостоки), v (нивелировка площадки) и w (планировка территории) имеют довольно большой общий резерв времени — 11 дней. Подрядчик может пользоваться этими (и другими, имеющими резерв времени) работами для загрузки тех рабочих, которые не могут быть использованы по своей профессии на критических в данный момент работах. Маневрировать работами, имеющими резерв времени,, добиваясь снижения пиковой потребности в рабочих определенных профессий или в оборудовании,— это простой способ усреднения загрузки. Если бы подрядчик внес изменения, касающиеся одной или нескольких критических работ, все вычисления нужно была бы произвести заново. Ему это нетрудно сделать, но в больших проектах со сложными взаимосвязями технологических последовательностей работ выполнение вычислений вручную значительно более сложно и чревато ошибками. Поэтому были разработаны программы для вычисления с помощью электронно-вычислитель- зоз
пых машин значений ?5, LS, EF, LF, TS и FS для всех работ, входящих в состав проектов, при условии, что для каждой из них заданы нормативная продолжительность и перечень работ, непосредственно и обязательно предшествующих началу данной работы. 13. ВОПРОСЫ, СВЯЗАННЫЕ С ПОЛУЧЕНИЕМ ДАННЫХ Данные о продолжительности и технологической последовательности выполнения работ накапливаются обычно мастерами производственных участков, планировщиками и другими лицами, непосредственно связанными с выполнением проекта. В такого рода данных о работе цеха можно предположить наличие следую-' 1цих типов ошибок: 1. Оценка продолжительности работ может быть неверной. 2. Технологическая последовательность работ может содержать в себе «циклы», например работа А предшествует В, В предшествует С, а С предшествует А. 3. Перечень работ, обязательно предшествующих данной работе, может включать не только непосредственно предшествующие ей работы (например, работа А предшествует В, В предшествует С, а А и В предшествуют С). 4. Некоторые отношения последовательности могут быть не замечены. 5. Некоторые из перечисленных отношений последовательности могут быть ложными. Рассмотрим сначала ошибки первого типа. Точность оценки общей продолжительности осуществления проекта зависит, конечно, от точности данных о длительности работ. Однако метод критического пути ограничивает необходимость в тщательном изучении продолжительности всех работ (и связанные с этим затраты). Вместо этого можно поступить следующим образом. Задавшись приближенными оценками продолжительности работ, надо построить график проекта. После этого можно более тщательно проанализировать работы, принадлежащие критическому пути (а также работы, имеющие очень малый полный резерв времени, что свидетельствует о том, что они являются почти критическими), пересмотреть оценки их продолжительности и построить новый график по уточненным данным. Если при этом критический путь изменяется таким образом, что на нем оказываются работы, имеющие лишь приближенные оценки, в этом случае процесс повторяется. При анализе большого количества проектов было установлено, что критическими является лишь малая часть всех работ. Отсюда можно сделать вывод, что для достаточно точной оценки продолжительности осуществления проекта в целом необходимо тщательно изучить длительность сравнительно небольшого числа входящих в него работ. Поэтому 394
с помощью метода критического пути вопросы, связанные с ошибками первого типа, могут быть разрешены без особых затрат. Для обнаружения ошибок 2-го и 3-го типов с помощью ЭВМ разработан специальный алгоритм. Он обеспечивает по каждой работе систематический анализ комплекса операций, составляющих ее необходимую предпосылку, и исключение из этого комплекса всех операций, кроме тех, которые непосредственно предшествуют данной работе. Если в данных о той или иной работе имеется ошибка 2-го типа, подается сигнал «зацикливание» и соответствующий цикл работ записывается печатающим устройством. Ошибки 4-го и 5-го типов с помощью вычислительных методов обнаружены быть не могут. Поэтому проверять правильность перечисления предшествующих работе операций должен человек (или группа людей); 14. РАСЧЕТ ЗАТРАТ Если в сведениях о работах указаны затраты на их выполнение, то нетрудно рассчитать стоимость осуществления всего проекта. Если, например, работы выполняются бригадами и скорость их выполнения зависит от численности работников в бригадах, то, варьируя эту численность, можно укорачивать или удлинять продолжительность осуществления проекта. Можно отыскать и другие средства сокращения продолжительности выполнения работ; однако это сокращение всякий раз связано, видимо, с дополнительными затратами. Предположим, мы установили для каждой работы оценки «нормальной» и «минимальной» продолжительности и рассчитали затраты на выполнение этих работ в то и в другое время. Если мы , хотим сократить продолжительность осуществления проекта, можно принять для некоторых критических работ минимальную продолжительность и вычислить соответствующие прямые затраты. Таким способом можно рассчитать стоимость завершения проекта в целом при различной его продолжительности; при этом чем меньше будет общее календарное время реализации проекта, тем выше будут прямые затраты х. К прямым затратам должны быть прибавлены определенные издержки, величина которых прямо пропорциональна общей продолжительности осуществления проекта. Комбинация этих («постоянных») издержек и прямых затрат, представленная в виде функции продолжительности осуществления проекта на рис. 66, является, вероятно, типичной по своей форме. Минимум на кривой суммарных затрат (точка А) будет, видимо, располагаться левее минимума на кривой прямых затрат (точка В). Отсюда следует, что оптимальная продолжительность осуществления 1 Алгоритм проведения описанных выше расчетов — см. гл. 21 и 22 настоящего сборника.— Прим. перев. 395
проекта в какой-то мере короче, чем можно было бы заключить из анализов одних лишь прямых затрат. При анализе могут, конечно, приниматься во внимание и другие экономические факторы. Например, большая химическая компания начинает строительство завода для производства нового продукта. После того как были утверждены календарный план строительства и срок его окончания, важный потенциальный заказчик выразил Суммарные затраты / („постоянные" / плюс прямые) А В Продолжительность осущестдления проекта Рис. 66. готовность оплачивать новый продукт по повышенным ценам, если будет изыскана возможность поставить его раньше запланированного срока. Компания применяет метод критического пути для составления плана-графика строительства и определяет дополнительные затраты, связанные с «форсированным» завершением работ, принадлежащих критическому пути. Анализируя кривую зависимости между затратами на строительство и его продолжительностью, можно выбрать новую дату завершения работ, когда повышенные затраты будут компенсироваться дополнительным доходом, предложенным заказчиком. 15. ЗАКЛЮЧЕНИЕ Благодаря своим свойствам (и прежде всего благодаря очевидной логичности и удобству графического представления) метод критического пути является таким инструментом, который может получить широкое признание на всех уровнях руководства, когда речь идет о принятии решений *. Для того чтобы им пользоваться и понимать 1 А. Чарнс и В. В. Купер предложили матричную интерпретацию метода критического пути, связав его таким образом с методами линейного программирования, с характерным для них обилием литературы и широким распространением различных толкований и применений их в сфере хозяйственного руководства (см. их статью: A Network Interpretation and a Directed Sub-Dual Algorithm for Critical Path Scheduling, Journal oft Industrial Engineering A961), p. 213—219). 396
связанные с ним процедуры, не нужно быть специалистом высокой квалификации. График проекта помогает руководителю низового звена уяснить себе последовательность работ и необходимость приложения особых усилий для выполнения тех из них, которые являются критическими. Руководителю, связанному с повседневной деятельностью всех подразделений, оперативное регулирование производства с использованием метода критического пути позволяет измерять опережение (или отставание) по сравнению с плановыми сроками и при необходимости быстро принимать соответствующие меры. Методу критического пути по самой сути свойственна простота, он дает возможность сосредоточивать внимание на решающих участках больших проектов. Это идеальный инструмент для администратора, осуществляющего руководство на высшем уровне, на плечи которого ложится в конечном счете вся ответственность за общее планирование и координацию работ по осуществлению таких проектов с учетом целей, преследуемых компанией в целом.
ГЛАВА 21 Метод критического пути: распределение ресурсов и составление календарного плана работ ДЖ. Е. КЕЛЛИ 1 1. ВВЕДЕНИЕ В опубликованных ранее трудах о методе критического пути [5, 6] планирование и распределение календарных сроков выполнения работ рассматривалось с точки зрения методов, обеспечивающих скорейшее завершение выполнения проекта в целом. Вопросы, связанные с ограниченностью ресурсов, не ставились достаточно четко, за исключением немногих второстепенных по своей важности попыток. Несмотря на это, сотни людей, постоянно пользующихся этой методикой [1, 2, 3, 4, 7, 81, добились значительных успехов в работе по осуществлению проектов. Это объясняется прежде всего простотой идеи и способов реализации данного метода, а также тем, что он укрепляет дирциплинированность исполнителей, требуя от них значительно большей объективности, чем это когда-либо ранее было возможно. Метод критического пути позволил по-новому взглянуть на проект. Й как побочный результат было найдено решение многих задач, связанных с ограниченностью ресурсов. Однако это не означает, что в более подробном рассмотрении вопросов, связанных с ограниченностью ресурсов, нет необходимости. Хотя основной вариант метода критического пути обеспечивает построение только технологически допустимых планов и графиков, однако они не обязательно будут практичны со всех точек зрения. Некоторые календарные планы могут предъявлять требования на рабочую силу и оборудование, либо превышающие наличные ресурсы, либо резко колеблющиеся на протяжении всего срока осуществления проекта. Аналогично в соответствии с календарным планом могут потребоваться капиталовложения в неприемлемо Работает в «Мочли ассошиэйтс». 398
короткие сроки или могут быть связаны фонды, которым можно» было бы найти более выгодное применение. Поэтому необходим такой подход к планированию осуществления проекта, который учитывал бы не только методы распределения работ, но и наличие ресурсов. При анализе положения дел обнаруживаются два источника затруднений в вопросе о том, как должна быть сформулирована задача распределения ресурсов и как она .может быть решена. Математическая формулировка задачи распределения ресурсов представляет трудность в связи с отсутствием четкого критерия оптимальности их использования. Критическое изучение современной практики хозяйственного руководства выявляет тот факт, что и уровни наличия ресурсов и изменения этих уровней устанавливаются в значительной мере произвольно. Этот факт остается справедливым для любой организации. Иной раз смешиваются несовместимые, по-видимому, цели. По мере изменения внешних обстоятельств упор делается на различные цели. Такое положение возникает отчасти потому, что традиционные методы оценки могут лишь приблизительно отразить совокупность всех требований на протяжении всего времени осуществления проекта. Не удается точно определить, во что обходится дефицит и избыток ресурсов. Политика компании также увеличивает трудности, особенна в задаче управления рабочей силой. Даже в строительстве, где работа по своей природе носит временный характер, для предпринимателя желательно пользоваться репутацией обеспечивающего постоянную загрузку — и это в то время, когда лишь немногим рабочим может быть гарантирована работа продолжительностью в несколько месяцев. Это условие в большей мере играет решающую роль в организациях, использующих много инженерно-технических работников. Предприниматель в этих случаях острее ощущает как явные затраты на наем и увольнение персонала, так и неявный ущерб для его репутации и финансового положения, возникающий в связи с увольнениями. Поэтому руководство компании тщательно рассматривает вопросы недогрузки среднего технического и инженерного персонала или потребности в увеличении его численности. Такую тщательность можно считать похвальной, но сам образ действий слишком часто оказывается близоруким в свете требований на более продолжительный период. Во многих отношениях соображения, касающиеся рабочей силы, могут быть распространены и на вопросы использования оборудования, аппаратуры и денежных средств. Однако возникающие в этих случаях проблемы кажутся не столь сложными. Предположив, что математическая модель задачи распределения ресурсов сформулирована, мы тут же сталкиваемся с другой трудностью: не существует математического аппарата для решения этой 399
задачи в практически приемлемое время. По крайней мере те модели, которые мы рассматривали, реализации совершенно не поддаются. Однако трудность кроется, по-видимому, в самой задаче. Характер взаимодействия между а) ограничениями, накладываемыми на допустимую последовательность выполнения работ, б) потребностью в ресурсах и в) их наличием неизбежно приводит к множеству взаимно не связанных решений. Это свойство задачи сохраняет силу и в том случае, если допустить, что ресурсы рабочей силы и оборудования бесконечно делимы. Задачи, имеющие множество несвязанных решений, называются комбинаторными. Очень немногие из них могут быть решены (в том смысле, в каком это понимается в математике) в приемлемое время. Это не означает, однако, что не могут быть найдены полезные решения. Специально разработанные методы, основанные на интуитивных предположениях, особенно в сочетании с применением электронно-вычислительных машин для выполнения простых, но трудоемких операций, могут оказаться достаточно эффективными с точки зрения получения удовлетворительных решений. В силу присущих проблеме трудностей прямой подход к формулировке и решению задачи распределения ресурсов не представляется возможным, однако полезные результаты могут быть, видимо, получены с помощью косвенного подхода. Нам предстоит дать схематическую формулировку нашей задачи. (Та, которую мы выбрали, не единственно возможная.) Наша цель состоит в использовании этой модели для того, чтобы проверить, к чему приводят различные допущения, касающиеся проекта. Делается это следующим образом. При анализе проекта устанавливаются технология, состав бригад, продолжительность каждой из работ, наличие рабочей силы, оборудования, денежных средств и т. д. Эта информация вводится в электронно-вычислительную машину, которая, моделируя проект, составляет календарный план его выполнения и определяет кривую использования каждого вида ресурсов на протяжении всего времени осуществления проекта. Изучая выходные данные, можно решить вопрос о том, насколько они приемлемы и желательны. Если ответ отрицателен, можно изменить входные данные и провести моделирование еще раз. С помощью такого процесса последовательного приближения можно получить решение, которое будет удовлетворять всем технологическим требованиям и, кроме того, многим из неопределенных и неясных желаний руководства. Тот факт, что в ходе моделирования может быть получено лишь приближенное решение, не умаляет, как нам представляется, достоинств данного подхода ни с теоретической, ни с практической точек зрения. В следующих разделах будут рассмотрены более подробно различные аспекты проблемы и высказаны предположения относительно подхода к ним. 400
2. ОСНОВНЫЕ ПОНЯТИЯ Наиболее существенным в методе критического пути являются основные принципы представления проекта. Для всех проектов характерным является выполнение работ в некотором определенном заранее порядке. Так, например, в строительстве имеет место следующая последовательность работ: подготовить опалубку, залить бетон в фундамент, установить основания, поставить стальные конструкции и т. д., при ремонтных работах вслед за осмотром производятся разборка, ремонт, повторная сборка, испытание и т. д. Подобные последовательности работ обнаруживаются в проектах всех типов. Однако если рассматривать все работы, которые должны быть при этом выполнены, то видно, что в каждом проекте имеется целый ряд таких последовательностей. Между этими последовательностями имеют место сложные взаимодействия, одни работы выполняются последовательно, другие — параллельно. Отношения очередности работ могут быть выражены графически. Каждая работа или операция изображается стрелкой, направленной в сторону течения календарного времени. Взаимосвязь стрелок отражает установленную последовательность выполнения работ. (Некоторые практические правила построения графиков проектов даются в [5].) Узлы на графике проекта, то есть точки, в которых сходятся стрелки, называются событиями. Нетрудно заметить, что события в проекте образуют определенную упорядоченную сеть. В проекте имеется два особых события: исходное и завершающее, обладающие тем свойством, что исходное событие происходит раньше, а завершающее — позже любого другого события. Каждое событие обозначается неотрицательным целым числом — это его индекс. События индексируются таким образом, что если событие i предшествует событию /, то i < /. В частности, исходное событие индексируется 0, а завершающее — п (если в проекте имеется п+1 событий). Каждому событию / приурочено неотрицательное целое число tjt обозначающие время свершения события. В частности, полагаем 4> = 0. Если у хвоста стрелки располагается событие i, а у острия ее — событие /, то эта стрелка (и соответствующая работа) обозначается парой чисел (i> /). Каждой работе (i, j) приурочено неотрицательное число y-jj, обозначающее ее продолжительность. Предполагается, что работа (*', /) выполняется в интервале времени между свершением событий / и /. Из этого предположения следует, что относительно фиксированного времени начала осуществления проекта каждое событие имеет самый ранний срок осуществления. Обозначив самое раннее осуществление события i через #0) и применив метод индукции, можно 26 Заказ № 195 401
следующим образом вычислить значение tj0): {О при j — О max (tr+Уа) 1</<л. <i, J) 6 Р Точно так же относительно установленного времени завершения проекта каждое событие имеет самый поздний срок осуществления. Пусть t[l) будет обозначать самый поздний срок для события I. Если X — срок завершения проекта (где Я>40))> то {Я, при i = n, min № — уи) 0<i<n. (i, i) 6 P Теперь для каждой работы (i, /), входящей в состав проекта, можно вычислить следующие важные величины: самый ранний срок начала =/Г; самый ранний срок окончания = ^0) + z/o*; самый поздний срок начала == tjX) — ytj; самый поздний срок окончания = tf>\ максимум времени, в течение которого может выполняться данная работа = tfv — tf\ Всякий раз, когда продолжительность работы оказывается равной максимуму времени, в течение которого возможно ее выполнение, задержка в ее завершении повлечет за собой соответствующее запаздывание в завершении всего проекта. Такие работы называются критическими. Является ли работа критической, можно определить, вычислив ее полный резерв времени: Полный резерв времени = /J1) — 40> — уц. Работа будет критической в том и только в том случае, если ее полный резерв времени равен нулю. Критические работы будут входить в состав проекта только при условии, что X = 40)- В этом случае имеется по крайней мере одна непрерывная цепь критических работ от исходного события к завершающему, называемая критическим путем. Если полный резерв времени работы положителен, она называется некритической. Иногда сроки начала и окончания некритических работ могут быть до некоторой степени смещены, не оказывая влияния на сроки начала и окончания других работ или проекта в целом. Однако обычно любое смещение сроков выполнения одной из некритических работ вызывает необходимость изменения сроков начала и окончания во всей цепи некритических работ. Очень большое смещение может оказать влияние на сроки завершения всего 402
проекта. Точные характеристики любой из некритических работ могут быть получены на основе анализа графика проекта. Иногда полезно установить несколько уровней напряженности («критичности») работ. Так, например, можно отнести к первому уровню напряженности работы с полным резервом времени меньше 3 дней, ко второму — от 4 до 8 дней и т. д. Разбивка на уровни в некоторой мере произвольна с учетом, однако, внешних условий, в которых осуществляется проект, поставленной цели и используемых единиц времени. 3. МОДЕЛЬ Суть нашего подхода к планированию и календарному распределению ресурсов состоит в идеализированной трактовке задачи распределения ресурсов, заключающейся в следующем. Составим календарный план выполнения работ, предусмотренных проектом, таким образом, чтобы 1) вся работа выполнялась таким способом и в такой последовательности, которые предусмотрены планом; 2) ресурсы не превосходили предполагаемого их наличия; 3) продолжительность осуществления проекта была минимальной. Первое условие предполагает, что выполнение проекта планируется и данные собираются в соответствии с основным вариантом метода критического пути. Информация, необходимая для соблюдения условия 2, будет рассмотрена ниже. Условие 3 требует, чтобы был найден календарный план с наименьшей продолжительностью осуществления, удовлетворяющий условиям 1 и 2. Однако полное соблюдение условия 3 не является делом ни легким, ни необходимым с" практической точки зрения, хотя и представляет собой весьма интересную математическую проблему. Для большей части практических целей его можно заменить менее строгим условием, согласно которому продолжительность осуществления проекта должна находиться в приемлемой близости от минимума. Предоставим практикам решить вопрос о том, что считать приемлемым. Для решения указанной задачи применительно к менее строгой форме условия 3 были разработаны два класса алгоритмов (последовательный и параллельный). Оба они просты по своей идее и так построены, что с их помощью разрабатываются только такие календарные планы, которые удовлетворяют и ограничениям, накладываемым на последовательность выполнения работ, и предполагаемому наличию ресурсов. При этом в процессе построения календарного плана используются такие правила (сформулированные исходя из интуитивных соображений), благодаря которым вырабатываются большей частью планы с небольшой продолжительностью осуществления. 26* 403
4. ПОСЛЕДОВАТЕЛЬНЫЕ МЕТОДЫ 1 Исходные данные для решения задачи с помощью последовательных методов представляют собой перечень предусмотренных проектом работ, расположенных в порядке технологической последовательности. Порядок, удовлетворяющий этому правилу, достигается путем размещения работ в возрастающей последовательности значений второй из пары координат (i, /), с помощью которых представляются все работы. Предполагается, конечно, что события индексируются таким образом, что i < /. Это называется расположением согласно J-приоритету. При последовательном методе решения, вошедшие в перечень работы, просматриваются одно за другим и при этом включаются в календарный график. В процессе планирования прежде всего определяется самый ранний срок начала выполнения работ. Время начала выполнения первой в перечне работы принимается за нуль. В общем случае самый ранний срок начала выполнения работы равен самому позднему сроку окончания предшествующих ей работ. Перечень составлен таким образом, что к моменту, когда происходит планирование той или иной работы, все предшествующие ей работы уже включены в календарный график, так что самый ранний срок ее начала уже определен самым поздним из сроков окончания работ, изображаемых стрелками, сходящимися «к данному событию. Самый ранний срок начала работы (?, /) выбирается из сроков окончания работ, в выполнении которых состоит событие i. Зная самый ранний срок начала работы, мы пытаемся запланировать начало ее выполнения на этот срок. Если в это время необходимые ресурсы отсутствуют, начало работы откладывается до самого раннего из возможных сроков начала, то есть до того ближайшего времени, когда соответствующие ресурсы окажутся в наличии. Необходимо объяснить одно обстоятельство, связанное с установлением момента, когда наличие требуемых ресурсов делает возможным начало работы. Один из возможных подходов заключается в том, что работа начинается только тогда, когда имеются ресурсы, достаточные для непрерывного ее выполнения в запланированные сроки. Такой подход налагает нежелательные ограничения на возможность выполнения работ. Прежде всего большая часть работ по самой своей природе не требует непрерывного исполнения. Зачастую весьма удобно переключать людей с выполнения одной работы на другую и обратно. Многие работы, хотя они и необходимы для завершения проекта, могут рассматриваться как средство оперативной дозагрузки рабочей силы. Иметь возможность выполнять эти работы понемногу между делом явно выгодно. Кроме того, практически почти невозможно выполнять все работы, не прерывая Основные принципы его разработаны С. Бахманом и М. Уокером. 404
их, и все же закончить осуществление проекта в приемлемые сроки. Ограниченность ресурсов, изменчивость условий и влияние самой среды — все это вместе создает указанное ограничение. Поэтому мы предположим, по крайней мере для основного варианта последовательного метода, что работы могут быть произвольно расчленены на этапы или части продолжительностью в целое число единиц времени (скажем, дней). Отсюда следует, что самым ранним из возможных сроков начала работы является первый из дней после завершения всех предшествующих ей работ, когда наличие соответствующих ресурсов позволяет выполнять эту работу в течение хотя бы одного дня. Мы начнем работу в самый ранний срок и продолжаем планировать ее на протяжении последующих дней, прерывая ее при отсутствии ресурсов и откладывая выполнение оставшейся части работы до того момента, когда надлежащие ресурсы вновь становятся доступными. Естественно, если работа запланирована, то ресурсы, предназначенные для выполнения следующих за ней по порядку работ, уменьшаются на ту величину (по объему и номенклатуре), которая соответствует запланированной работе. Точно так же подходят ко всем остальным работам. Процесс планирования продолжается до тех пор, пока не будет исчерпан весь перечень. Когда все работы запланированы, фиксируются сроки начала и окончания, каждой отдельной части всех работ. Подобным же образом фиксируется использование каждого вида ресурсов на протяжении всего времени осуществления проекта. Существуют, конечно, определенные ограничения в практическом использовании описанной выше методики. Ряд важных случаев не был рассмотрен. Однако эта методика дает возможность построить основной алгоритм, который может быть дополнен другими правилами. Рассмотрим теперь некоторые из этих дополнений. 5. ДРУГИЕ ПОРЯДКИ ПЕРЕЧИСЛЕНИЯ РАБОТ Последовательный метод требует, чтобы работы, входящие в состав проекта, были перечислены в определенной последовательности. Один из способов составления такого перечня состоит в размещении работ в возрастающей последовательности значений второй из пары координат (t, /), с помощью которых представляются все работы. Нетрудно понять, что полученный таким путем перечень не обязательно будет единственно возможным. Например, если в перечне имеются работы (t, /) и (k> /), то, имея в виду алгоритм, безразлично, какая из них предшествует другой. Более того, обычно индексы событий в проекте могут быть назначены многими различными способами, и при этом будет сохранено то свойство, что событие, находящееся в хвосте стрелки, будет иметь меньший индекс, чем находящиеся у ее острия. В этом случае расположение работ 405
согласно /-приоритета даст различные перечни для различных порядков назначения индексов. Для заданного порядка назначения индексов событий в проекте различные перечни, построенные согласно /-приоритету, могут быть получены путем простого упорядочения последовательности работ в соответствии с определенным менее общим признаком. Так, мы могли бы рассортировать все работы (/, /) по первой из двух координат, с помощью которых представляются работы, а затем — по второй координате (при такой сортировке признак i был бы частным, а / — общим). В этом отношении была бы оправдана и такая сортировка, когда признак i был бы общим, а / — частным. Однако с точки зрения тех целей, для которых разрабатывается алгоритм, такие способы установления очередности работ кажутся, если основываться на интуитивных соображениях, неудовлетворительными. Можно обосновать желательность того, чтобы используемая очередность отражала каким-то образом относительную важность работ в проекте. Например, критические работы должны, вероятно, предшествовать некритическим. Поскольку мерой напряженности («критичности») работ является полный резерв времени, мы могли бы принять его за один из признаков группировки и расположить работы в такой последовательности, чтобы величина / была общим признаком, а величина полного резерва времени — частным. Для того чтобы произвести такого рода группировку, необходимы дополнительные расчеты, связанные с определением значений полного резерва времени. Можно найти интуитивные обоснования и для других принципов установления очередности. Можно расположить работы в перечне в соответствии с их стоимостью, продолжительностью, численностью персонала, потребного для выполнения каждой работы, некоторой субъективно установленной мерой важности и т. д. Можно обосновать даже случайную последовательность. Все эти признаки будут, конечно, частными, а общим признаком будет величина /. Основной эффект рассмотрения различных последовательностей работ в перечне обусловлен тем, что соответствующие этим последовательностям планы имеют различную продолжительность осуществления. Реализуя алгоритм несколько раз с использованием одних и тех же исходных данных, но различных последовательностей работ, можно с большой вероятностью достигнуть искомого минимума продолжительности осуществления плана. Такой метод практичен обычно только тогда, когда ресурсы строго ограничены. Любую из указанных выше последовательностей работ можно получить с помощью счетно-перфорационных машин (сортировки). Если мы устанавливаем очередность работ вне зависимости от индексов событий, но в порядке технологической последовательности, то для выполнения сортировки требуется электронно-вычислительная машина. 406
6. ПАРАЛЛЕЛЬНЫЙ МЕТОД В отличие от последовательного метода, при котором работы планируются одна за другой, при параллельном методе одновременно включается в календарный план несколько работ. При параллельном методе просчитываются последовательности взаимосвязанных работ. На момент времени t осуществления проекта некоторые работы уже закончены полностью или частично. Рассмотрим множество Р (t) работ, которые в момент времени t либо выполняются, либо могут быть начаты, поскольку предшествующие им работы уже закончены. Пусть на момент времени t запланировано начало выполнения некоторого подмножества работ Q (t) из Р (t), а остальные работы отложены. Использование ресурсов для работ, входящих в Q (/), не может превышать наличия ресурсов на протяжении времени от t до t + 1. Возможен случай, когда ни одна из работ в Р (f) не удовлетворяет ограничениям по наличию ресурсов. В этом случае Q (t) пусто и все работы из числа входящих в Р (t) должны быть отложены. Однако обычно имеется возможность выбрать несколько различных Q (/). Для того чтобы остановиться на одном из них, необходимо определенное правило принятия решений. После того как Q (t) определено, попытаемся запланировать эти работы на последующие дни начиная от момента времени t. Планирование продолжается до тех пор, пока наличие какого-либо ресурса не уменьшится ниже требуемого количества или пока не закончится одна какая-либо работа из Q (t). Если мы остановились в момент Т, то должны определить множества Р (Т) и Q (Т) и возобновить процесс календарного планирования. Этот процесс заканчивается после того, как в план будут включены все работы. Составление Q (t) возможно с помощью различных правил выбора решений. Критические работы получают приоритет при использовании следующего правила. Все работы в Р (/) располагаются в порядке возрастания полного резерва времени; затем все они просматриваются по очереди и из них отбираются для Q (t) такие работы, которые*не противоречат ограничениям, наложенным на ресурсы. Процесс отбора длится до тех пор, пока не будут проанализированы все работы, входящие в Р (t). Нет никаких оснований ожидать априори, что с помощью параллельного метода могут быть получены «лучшие» результаты, чем с помощью последовательного метода. Можно предположить, что, поскольку при параллельном методе на каждом шаге решения принимается во внимание большее количество информации, чем при последовательном, первый метод должен давать лучшие результаты. Однако эта надежда иллюзорна. Прежде всего почти невозможно дать определение, что понимается под «лучшим», не впадая в чистое теоретизирование. Кроме того, даже если принять какое- 407
либо определение, следует учесть, что характер процесса таков, что предположение, будто один метод всегда дает лучшие результаты, чем другой, не подтверждается. В этом случае будем считать, что один метод может иметь преимущество перед другим, выраженное в виде статистической закономерности. Чтобы определить, имеет ли место на самом деле такого рода преимущество, необходимо провести некоторые эксперименты. В данное время последовательные методы представляются нам более практичными, чем параллельные, в частности с точки зрения перспектив их использования. Поэтому мы не будем в данной статье останавливаться более на параллельном методе. Вместо этого рассмотрим различные факторы, которые могут быть включены в основной вариант последовательного метода. 7. НЕРАСЧЛЕНИМЫЕ РАБОТЫ Иногда невозможно или весьма нежелательно расчленять работы на отдельные этапы. Невозможно расчленить работы, связанные с осуществлением химических и некоторых физических процессов (например, схватывание бетона). Нежелательно расчленять работы, выполняемые на сложном крупногабаритном оборудовании. Как правило, не следует расчленять критические и некоторые «под- критические» работы. Чтобы оперировать нерасчленимыми работами, не меняя структуры нашего алгоритма, мы поступаем следующим образом. Пробуем запланировать работу в самый ранний срок ее начала. Это может быть невозможным из-за того, что в некоторые моменты времени на протяжении всего срока выполнения работы какого- либо необходимого ресурса не хватает. Тогда пробуем запланировать начало этой работы на день, следующий за тем, когда последний раз потребность в ресурсе превысила его наличие. Если теперь достаточные ресурсы имеются на все время выполнения работы, мы включаем ее в календарный план и переходим к следующей по порядку работе. В противоположном случае работа откладывается до тех пор, пока не удастся найти допустимый календарный план ее выполнения. Было бы неверным считать, что все работы могут быть разделены на две категории — расчленимые и нерасчленимые. Для ряда работ характерной является практическая необходимость выполнения некоторых их этапов в первую очередь, если они не выполняются непрерывно один за другим. Подобная ситуация может быть отражена путем представления такого рода работы с помощью нескольких последовательно расположенных стрелок. Каждая стрелка соответствует одному из последовательных этапов работы. Каждый этап, который не может быть расчленен, рассматривается как нерасчленимая работа. С остальными этапами оперируют, как с расчленимыми работами. 408
8. СРОКИ НАЧАЛА РАБОТЫ Возможность выбора в пределах Ограничений срока началаг выполнения работы иногда оказывается весьма полезной. Выбор может быть сделан путем сравнения желательного и самого раннего сроков начала выполнения работы. Тот из них, который имеет большее значение, и является тем моментом, когда мы начинаем искать самый ранний из допустимых 'сроков начала работы. 9. «ДОПУСК» 1 НА ПОТРЕБНОСТЬ В РАБОЧИХ ОПРЕДЕЛЕННЫХ ПРОФЕССИЙ Описанный выше алгоритм основного варианта последовательного метода предполагает, что фактическое использование рабочей силы по отдельным профессиям в любой момент не должно превышать установленного ее наличия. Это предположение представляется несколько искусственным по двум причинам: наличие ресурсов рабочей силы не бывает обычно известным абсолютно точно и часто устанавливается произвольно решением хозяйственного руководителя без необходимой увязки с фактической потребностью. Если рассматривать данный алгоритм как инструмент для количественного выражения использования наличных ресурсов, то желательно сделать это наличие, используемое в ходе вычислений, более эластичной величиной. Таким образом, можно избежать «плохого» решения, которое может иметь место в результате введения искусственного ограничения. Один из способов придания эластичности лимитированию наличных ресурсов заключается в том, чтобы установить лимит с некоторым «допуском». Так, мы можем установить, что на двадцатый день осуществления проекта численность котельщиков составит 15 человек. При этом может быть допущено использование 18 котельщиков — предполагаемое наличие плюс допуск. Однако использование более чем 18 человек исключается. Такой допуск позволяет найти выход из положения, когда требуются, например, 16 котельщиков, а фактически их имеется только 15, и поэтому какая-то работа должна быть отложена, хотя это и повлечет за собой задержку завершения всего проекта. Установленное наличие обычно представляет собой не реальный предел, а приблизительную оценку максимально допустимого уровня использования рабочей силы по отдельным профессиям, который руководители проекта считают желательным. Допуск может рассматриваться как такой предел допустимого использования рабочей силы сверх установленного наличия, с которым руко- 1 Thresholds —«порог». В данном случае применено в смысле tolerance — «допуск».— Прим. ред. 40$
водители работ могут согласиться, поскольку возражать против этого нет достаточных оснований. Или, если хотите, его можно рассматривать как резерв рабочей силы. Каждый раз, когда потребность в рабочей силе превышает установленное ее наличие, следует как-нибудь отметить ту работу, которая первой вызвала перегрузку. Не исключена возможность того, что, изменив место таких работ в календарном плане, можно этой перегрузки избежать. Конечно, все работы, для выполнения которых в этот день требуются рабочие данной профессии, способствуют образованию перегрузки. Поэтому может возникнуть вопрос, почему следует отмечать те работы, которые первыми вызывают перегрузку? Прежде всего потому, что это проще, чем просматривать от конца к началу все запланированные уже работы в поисках всех работ, способствующих перегрузке. Кроме того, выявление всех таких работ может дать больше информации, чем можно переработать, что повлечет за собой лишь путаницу. Во многих случаях это достаточное основание. Однако выявление всех работ, вызывающих ту или иную перегрузку, не может быть окончательно исключено как метод анализа. 10. ДОПУСК НА КОЛИЧЕСТВО РАБОЧИХ В ОДНОЙ БРИГАДЕ Так же как и в отношении наличия рабочих определенных профессий, принятые при планировании допущения о том, какое число людей будет занято выполнением той или иной работы, в некоторой мере произвольны. Например, для выполнения определенной работы планируется использовать бригаду из трех плотников и трех подсобных рабочих. Однако, если ко времени, когда должна начаться эта работа, в распоряжении бригадира имеются лишь два плотника или два подсобных рабочих, весьма вероятно, что он все равно приступит к работе с тем составом рабочей силы, который у него есть. Когда появится возможность использовать других рабочих, они будут дополнительно включены в состав бригады. Поэтому в процессе планирования мы попытаемся действовать примерно таким же образом, вместо того чтобы откладывать начало выполнения работы, если наличие рабочей силы не соответствует точной потребности в ней. И снова можно использовать допуск. Чтобы избежать трудностей, связанных с определением точного количественного и профессионального состава бригад, мы будем попросту основываться на допустимом проценте наличия рабочей силы. Если, например, приемлемым считается допуск в 20% и если для выполнения работы требуются пять такелажников, а фактически есть лишь четыре человека, работа может быть начата. Если же мы располагаем лишь тремя такелажниками, работу придется отложить. Если 410
б состав бригады входят рабочие более чем одной профессии, то для того, чтобы начать работу, нужно иметь не менее 80% требуемого числа рабочих каждой профессии. И если рабочих какой-либо профессии меньше, чем требуется по этому условию, работа откладывается . Конечно, можно установить более сложные условия использования допуска, приняв для каждой профессии или для каждой работы разную величину допуска, и основываться на различных правилах выбора решений. Однако общий принцип нашего исследования состоит в том, чтобы избегать усложнений, если только они существенно не дополняют полученных результатов. Остается вопрос, как определить срок окончания работы в том случае, когда она выполняется не в соответствии с первоначальным планом? Если планировалось выполнение работы тремя рабочими за 5 дней, а фактически мы располагаем лишь двумя рабочими, сколько времени будет продолжаться работа? В пределах введенных нами ограничений резонно, вероятно, допустить, что два человека могут сделать вдвое больше, чем один. Таким образом, два человека справятся с работой за 7,5 дней. Отражая потери, связанные с выполнением работы не по установленному плану, удобно иногда предварительно округлить полученный ответ до ближайшего большего целого числа используемых единиц времени. Тот же результат можно получить, вводя дополнительный коэффициент. Если в бригаду входят рабочие нескольких профессий, то возможны два простых альтернативных варианта определения продолжительности выполнения работы при неполном составе бригады. Самый легкий путь — суммировать численность используемых рабочих всех профессий и рассматривать работу так, как если бы она, как и в предыдущем случае, выполнялась рабочими одной профессии. Другой метод основан на понятии основной профессии. При выполнении многих работ, где требуется участие рабочих нескольких профессий, большая часть операций производится рабочими одной профессии, иначе говоря, выполнение работы зависит главным образом от участия именно этих рабочих. Такую профессию мы называем основной. Рабочие других профессий используются в помощь рабочим основной профессии. Поэтому продолжительность работы может быть поставлена в зависимость от того, сколько рабочих основной профессии могут принять участие в ее выполнении. Указанным простым правилом можно обычно пользоваться, если допуск не слишком мал. И, наконец, надо решить, как поступать, если выполнение работы или отдельной ее части, начатой при неполном составе бригады, временно прекращено из-за недостатка ресурсов. В любой конкретный момент времени при включении работы в календарный план известно, какое количество человеко-дней (или других подобных единиц) было затрачено рабочими основной профессии либо всей бригадой в целом. Известны также суммарное количество 411
человеко-дней, необходимое для выполнения работы и, кроме того, планируемый состав бригады и планируемая продолжительность работы. Допустим, что при всех расчетах за основу берутся данные об использовании рабочей силы по основной профессии или по всей бригаде в целом. Допустим, ранее уже было затрачено D человеко-дней (D < М) и в среднем планируется ежедневно использовать на этой работе Т человек. Если предположить, что всякий раз, когда это возможно, будет использоваться бригада запланированного состава, то продолжительность оставшейся части работы будет равна (М — D) IT дням, если только складывающиеся в дальнейшем условия не дадут оснований для каких-либо перемен. И снова, отражая потери, связанные с расчленением работы, рационально, по-видимому, округлить эту величину до ближайшего большего числа единиц времени, используемых в данном расчете. 11. ДОПУСК НА ОТСРОЧКУ НАЧАЛА РАБОТЫ Может случиться, что из-за недостатка ресурсов начало той или иной работы будет без конца откладываться. В частности, это весьма вероятно в отношении нерасчленимых работ. Поскольку ограничения ресурсов в некоторой мере произвольны, разумно, видимо, предусмотреть в алгоритме механизм, предотвращающий слишком длительную задержку начала выполнения работы. Результаты, полученные при использовании такого механизма, могут послужить необходимым аргументом в пользу увеличения запасов ресурсов. В соответствии с заданными выше правилами, если 80% планируемой потребности в рабочих превышает запланированную их численность плюс допуск на этот вид ресурсов, начало выполнения работы или отдельной части ее должно быть отложено до тех пор, пока запасы ресурса не достигнут необходимого уровня. Введем допуск N, который указывает, какую острочку начала работы мы считаем допустимой. Если обнаруживается, что начало работы будет отсрочено более чем на N дней, мы планируем ее выполнение в течение ytJ дней подряд начиная от самого раннего срока ее начала, независимо от того, насколько будет при этом превышено наличие ресурсов. В случае, если работа уже была ранее расчленена, мы рассматриваем оставшуюся ее часть как самостоятельную работу. Интересно, конечно, знать, по каким работам превышен допуск на отсрочку начала их выполнения. Поэтому такие работы соответствующим образом отмечаются. Размер используемого допуска на задержку начала работ может трактоваться по-разному. Он, вероятно, не должен намного превышать одной десятой части планируемой продолжительности осуществления проекта. 412
Существуют различные определения допуска на задержку начала работ. Этот допуск может быть не постоянной для Данного проекта величиной, а функцией какой-либо характеристики работы, например быть пропорциональным ее общему резерву времени. Далее, вместо того, чтобы считать этот допуск одинаковым для каждой части расчлененной работы, можно уменьшать его по мере выполнения работы. Или, например, сумма задержек по всем частям работы может быть ограничена общим допуском на отсрочку начала ее выполнения. 12. ОГРАНИЧЕНИЯ ПО ОБОРУДОВАНИЮ И ПЛОЩАДЯМ Часто случается, что две или более работы требуют для своего выполнения применения одной и той же единицы оборудования, скажем подъемного крана. Если некоторые из этих работ могут делаться параллельно, то складывается противоречивое положение. Либо нужно приобрести или взять в аренду еще одну единицу оборудования, либо начало какой-либо работы должно быть отсрочено, что может сопровождаться задержкой завершения всего проекта. Поэтому требуется учитывать наличие оборудования при планировании осуществления проекта, особенно такого, где используется дорогостоящее оборудование. Оборудование можно рассматривать точно так же, как и рабочую силу. Вид оборудования — это в некотором смысле профессия. Когда планируется тот или иной состав бригады для выполнения определенной работы, в него как особая профессия может быть включено и важнейшее оборудование. В этом случае вряд ли можно использовать какую-либо отличную от нуля величину допуска на использование той или иной профессии. Однако можно также принять во внимание оборудование при установлении допуска, относящегося к заявке на бригаду. Таким же образом, как к использованию рабочих определенной профессии, можно подойти и к применению производственных площадей. Если такие две или более работы, которые могут делаться параллельно, должны выполняться в одном и том же месте, следует позаботиться, чтобы бригады не мешали друг другу. Можно установить ограничения на величину рабочей зоны, так что при составлении плана работа будет откладываться, если имеющаяся площадь уже занята для выполнения другой, уже запланированной работы. 13. ОГРАНИЧЕНИЯ ФИНАНСОВОГО ХАРАКТЕРА Финансирование проекта представляет собой почти всегда вопрос первостепенной важности. Во многих ситуациях недостаточно знать лишь оценку суммарной стоимости реализации проекта. 413
Какие суммы потребуются для обеспечения выполнения работ в различные моменты времени на протяжении всего срока осуществления проекта — это тоже важные сведения. Располагая ими„ руководители могут планировать использование капитала таким образом, чтобы денежные средства не замораживались в одном проекте в то время, когда их не хватает для выполнения другого. Кроме того, важно заранее знать, какие меры должны быть приняты для увеличения капитала в случае необходимости. Многие вопросы, касающиеся финансирования проекта, могут быть решены при включении в рассматриваемый алгоритм денежных затрат. Однако не все виды затрат удобно учитывать таким образом. В основном мы ограничимся рассмотрением прямых затрат на рабочую силу. Затраты на материалы, оборудование, а также накладные расходы будут позже добавлены для полноты картины. В какой-то мере мы можем рассматривать денежные затраты как еще одну профессию. Если подходить к ним таким образом, мы будем иметь данные о ежедневном расходовании денежных ресурсов, ассигнованных на осуществление проектов. Однако обычно требуются сведения именно о накопленной сумме израсходованных средств. Именно на основании этих сведений руководители могут определять, сколько денежных средств необходимо для осуществления каждой фазы проекта, и регулировать темп их расходования. Таким образом, решая вопрос о включении работы в план, мы интересуемся тем, имеются ли необходимые для ее выполнения денежные средства. Если нет, то мы откладываем эту работу в соответствии с теми из рассмотренных ранее правил, которые применимы в данном случае. По мере включения работ в план, затраты на их выполнение суммируются. Кривая наличия денежных средств должна иметь некоторый допуск аналогично допуску на потребность в рабочих определенных профессий. Установление небольших приращений для кривой наличия денежных средств дает возможность регулировать в некоторой мере темп их расходования. 14. СУММАРНАЯ ПОТРЕБНОСТЬ В РАБОЧЕЙ СИЛЕ Зачастую желательно знать общее число рабочих, требующихся для осуществления проекта, вне зависимости от их профессионального состава. Это важно с точки зрения предвидения потребности в необходимом для этого вспомогательном оборудовании и в организационных мероприятиях. Планируемый приток рабочих может оказаться столь быстрым, что нужно будет принять меры для предотвращения чрезмерного высокого его темпа. Точно так же не следует слишком часто прибегать к увольнениям. Отсюда вытекает необходимость в определенном контроле за скоростью изменения 414
суммарной потребности в рабочей силе. Кроме того, большие пики на кривой, отображающей эту потребность, могут быть нежелательны. Лучше, как правило, поддерживать постоянный до некоторой степени уровень потребности в рабочей силе на протяжении всего срока осуществления проекта. Стабильный уровень наличия рабочей силы помогает компании поддержать свою репутацию организации, обеспечивающей постоянную занятость на все время выполнения проекта. Можно рассматривать суммарную потребность в рабочей силе как специфическую профессию и обращаться с ней соответствующим образом в процессе календарного планирования. 15. ПРИМЕНЕНИЕ МЕТОДИКИ Поскольку практическая задача использования ресурсов еще недостаточно хорошо определена, нельзя ожидать ни от одной из моделей исчерпывающих ответов, которые могли бы быть приняты без дополнительных вопросов. Это в особенности справедливо в отношении всех моделей, представляющих собой попытку описать человеческую деятельность. В них важным фактором является субъективный элемент, который столь сложно ввести в рамки теории. Предлагаемую в данной статье модель задачи использования ресурсов и алгоритм для ее «решения» можно рассматривать лишь как инструмент, позволяющий руководителям проекта точнее определить, что именно они собираются предпринять. Им может быть оказана помощь (чего не было раньше) в оценке различных ограничений, с которыми приходится сталкиваться в ходе реализации проекта, и в уяснении смысла этих ограничений. Эти замечания и все вышеизложенное подразумевают, что описываемая ниже процедура выполняется на стадии планирования реализации проекта или в том случае, когда изменившиеся условия требуют пересмотра установленного плана. Прежде всего проводится анализ в соответствии с основным вариантом метода критического пути: вычерчивается график проекта, собираются сведения о продолжительности работ и рассчитываются наиболее важные данные, необходимые для составления календарного плана. Этот первый шаг может, естественно, потребовать нескольких пробных попыток (графических представлений данных календарного плана с последующим расчетом продолжительности выполнения проекта и наоборот), прежде чем будут получены приемлемые исходные варианты последовательности работ и календарного графика. Теперь нужно составить себе представление о том, что означает собой исходная последовательность работ и календарный график с точки зрения потребности в ресурсах. Для этого при- 415
меним к данному проекту наш алгоритм календарного планирования и распределения ресурсов, допустив наличие неограниченных ресурсов всех видов, за исключением площадей, на которые накладываются некоторые ограничения. В итоге этих вычислений получаем данные о ежедневном использовании каждого вида ресурсов на протяжении всего срока осуществления проекта; ггри этом каждая работа начинается в самый ранний из возможных сроков. Результаты этих первых вычислений будут всегда указывать на нежелательные по разным причинам пики в потребности в рабочей силе — суммарной или по некоторым профессиям. Характер этих пиков и внешняя ситуация подсказывают те ограничения, которые должны быть наложены на возможность использования ресурсов. Так, например, результаты экспериментов могут показать, что максимальная, пиковая величина потребности в рабочих-котельщиках составляет 150 человек, в то время как фактическое их число в данном районе равно примерно 50. Еще 10 котельщиков могут быть привлечены из других мест. Нам придется изменить наличие котельщиков, приняв его равным 50 человекам с допуском или резервом рабочей силы в 10 человек. Мы с самого начала могли установить этот уровень. Но если бы пиковая потребность в рабочих-котельщиках не превышала 40 человек, в таком ограничении не было бы никакой необходимости. Практически целесообразнее сначала определить, что следует ограничивать, а что нет, а уж потом устанавливать те или иные ограничения. При анализе с помощью метода критического пути потребности в ресурсах, вытекающей из календарного плана, может оказаться, что выполнение некоторых некритических работ запланировано на периоды пик. В ряде случаев начало этих работ может быть -отсрочено до момента уменьшения загрузки и в результате будет снижена величина пиковой потребности в ресурсах. Введение в модель задержки начала некритических работ в сочетании с ограничением использования ресурсов является обычно довольно эффективным способом сглаживания пиков. При этом вероятность задержки в завершении проекта в целом ниже, чем при применении одних лишь ограничений по ресурсам. Ограничить длительность отсрочки этих работ можно, установив для них нормативные сроки начала выполнения. Случаи, когда нормативный срок для какой-либо работы превышает самый поздний срок ее начала, должны быть редки. Иначе проект будет неизбежно завершен с опозданием. После решения об изменении исходных данных рассчитывается новый календарный план. Этот план будет, по-видимому, «лучше» прежнего. Кривые использования ресурсов уже не будут иметь столь крутых пиков. Однако возможно, что в результате сложного взаимодействия между различными факторами нежелательный пик может образоваться на кривой загрузки рабочих той или иной профессии, или завершение проекта будет задержано слишком 416
надолго, или возникнет какая-либо другая проблема. Могут потребоваться изменения в принятых ранее предположениях относительно ограничений, накладываемых на ресурсы, способов и продолжительности выполнения работ, состава бригад и т. д., прежде чем можно будет предпринять новую попытку составления календарного плана по тому же проекту. Если завершение проекта недопустимо задерживается, можно при тех же ограничениях в отношении ресурсов поправить дело, установив другую очередность выполнения работ и просчитав задачу на машине заново. Мы уже рассматривали несколько способов назначения очередности работ. Обычно приемлемый план и календарный график могут быть получены лишь за несколько шагов решения. Если можно распространить на планируемый период накопленные к настоящему времени опытные данные, то практически достаточно не более пяти-шести попыток. По мере накопления опыта это число могло бы, вероятно, быть сокращено до трех или четырех, если каждый раз иметь дело с одним и тем же типом проектов. Хотя количество факторов, которые могут рассматриваться при анализе проектов, довольно велико, проект чувствителен лишь к небольшому их числу. Эти факторы обычно нетрудно обнаружить и рассмотреть. Кроме того, как мы ниже увидим, похоже, что продолжительность осуществления проектов весьма нечувствительна к большим изменениям в наличии многих из ресурсов. Мы все время предполагали, что алгоритм составления плана должен быть запрограммирован для электронно-вычислительной машины. Он слишком сложен, чтобы его можно было реализовать вручную. Процесс повторного использования вычислительной машины для расчета календарного плана в то время, когда человек анализирует его и изменяет исходные данные для следующего шага, может стать весьма эффективным, если дать возможность специалисту, анализирующему проект, работать на машине или возле нее и если иметь быстродействующее печатающее устройство. Пока специалист, анализирующий проект, не сочтет какой-либо определенный план приемлемым, его не интересуют все детализированные сведения о проекте. Вывод на печать самого календарного плана и кривых использования ресурсов скорее может запутать этого специалиста, чем ему помочь. Что ему действительно нужно — это кривые использования ресурсов, нанесенные на один график, так что можно рассматривать их во взаимной связи, а также весь проект как единое целое. Детали могут помочь решить, что именно следует предпринять после того, как из анализа кривых уже возникла идея. В состав выходных данных, предназначенных для специалиста, анализирующего проект, входит подготовленный на быстродействующем печатающем устройстве график, на котором изображены (если возможно, то наложенными одна на другую) кривые исполь- 27 Заказ № 195 417
зования небольшого числа различных ресурсов. В этом случае специалист может за несколько минут машинного времени получить представление о том, каков истинный смысл его предположений относительно проекта. 16. СТАТИСТИЧЕСКОЕ ОБОСНОВАНИЕ В отношении нашего метода распределения ресурсов и календарного планирования, так же как и в отношении любого другого метода, основанного на интуиции, уместен вопрос: «Насколько он хорош?» Практически единственный способ ответить на этот вопрос состоит в том, чтобы применить данный метод к нескольким реальным задачам и рассмотреть полученные результаты. Если они приемлемы, то, стало быть, методика обладает некоторыми достоинствами. Трудно при этом делать обобщения, выходящие за рамки такого вывода, хотя некоторые свойства задач данного класса могли бы свидетельствовать (в некотором интуитивном смысле) о том, что методика могла бы быть полезной для большинства задач того же класса. Некоторые характерные черты описанного метода распределения ресурсов и календарного планирования работ были запрограммированы для электронно-вычислительной машины IBM-650 и опробованы на ряде реальных проектов. Особенность программы состоит в том, что с ее помощью можно оперировать лишь трудовыми (или эквивалентными им) ресурсами. Для выполнения одной работы допускается использование рабочих четырех профессий, а для всего проекта в целом — девяти профессий. Можно вводить допуск на потребность в рабочих по профессиям и на отсрочку начала выполнения работ. Однако допуск на потребность в рабочих каждой из профессий должен быть постоянной величиной. Точно так же допуски на отсрочку начала выполнения должны быть одинаковы для всех работ. Для каждой работы может быть установлен предельный срок ее начала. Желательно было бы привести фактические данные о реализации одного из проектов, которые действительно планировались с применением такой программы на электронно-вычислительной машине. Таких проектов было несколько, и окончательные варианты календарных планов были доведены до исполнителей. Таким путем читатель мог бы лучше представить себе, какова практическая ценность данной методики и что можно ожидать от ее применения. Однако для того, чтобы дать содержательный пример, потребовалась бы отдельная глава. Здесь же достаточно будет сказать, что имеющийся опыт позволяет предсказать вероятное уменьшение пиковой суммарной потребности в рабочей силе на 35—50% по сравнению с планом, где предполагается неограниченное наличие ресурсов. Это уменьшение может быть, вероятно, 418
достигнуто за счет увеличения продолжительности осуществления проекта не более чем на 5%. Любое дальнейшее уменьшение пиковой суммарной потребности в рабочей силе привело бы к резкому увеличению продолжительности осуществления проекта. Есть и другой довод, подтверждающий уверенность в том, что данный метод распределения ресурсов и планирования должен быть, как правило, весьма эффективен. Он заключается в том, что для заданной продолжительности осуществления проекта существует очень большое число возможных календарных планов, из которых можно выбрать «наилучший». Ясно, что эффективность метода зависит от того, насколько свободно можем мы менять время начала и завершения работ. Таким образом можно было бы использовать средний полный резерв времени, приходящийся на одну работу, в качестве меры той свободы, с которой мы можем изменять календарный план осуществления проекта. Чем больше эта величина, тем большей свободой выбора мы располагаем. Для того чтобы можно было сравнивать между собой различные проекты, эта средняя должна быть, конечно, отнесена к соответствующему масштабу, скажем, выражена в процентах продолжительности выполнения проекта. Однако эта средняя не дает нам так много сведений о работах, составляющих проект, как распределение значений полного резерва времени. Свобода изменений в проекте с правосторонней асимметрией этого распределения меньше, чем в проекте с левосторонней асимметрией, хотя их средние могут быть равны. Мы вычислили распределения полного резерва времени для десяти проектов с числом работ в пределах от 80 до 1000. При этом вся продолжительность осуществления проекта была разбита на ряд равных интервалов. Для каждого интервала подсчитывается число работ, имеющих ту или иную величину полного резерва времени. После этого строится кумулятивное распределение работ. Чтобы объединить эти кумулятивные распределения, приводим их к общему основанию следующим образом: пусть ft (t) — число работ в /-м проекте, у которых общий резерв времени не превышает t. Пусть Dt — продолжительность осуществления, a Jt — общее число работ /-го проекта. Введем функцию ?*(р) = тах[-^|Ы0<р«/*], где0<р<1. Это выражение устанавливает, что не более 100р% работ в /-м проекте имеют полный резерв времени (выраженный в процентах продолжительности осуществления проекта), меньший чем gi (р). Мы табулировали, ряд средних значений gt для десяти выбранных проектов и сопроводили их максимальными и минимальными значениями. Анализ таблицы показывает, что резерв времени 27* 419
в проектах выше, чем можно было бы ожидать. Это дает дополнительную надежду, что наш метод окажется, как правило, эффективным. Данные эти таковы: 100р 10 20 30 40 50 60 70 80 90 100 Минимальное значение 8i (Р) 0+ 1 2 7 15 23 26 33 42 66 X Среднее значение gi (P) 6 12 20 26 37 38 43 51 61 94 Максимальное значение gap) 35 45 56 63 68 73 75 84 87 100
ГЛАВА 22 Математические основы метода критического пути Ф. К. ЛЕВИ, Г. Л. ТОМПСОН, ДЖ. Д. УИСТ1 1. ВВЕДЕНИЕ Метод критического пути, с помощью которого планируется реализация различных проектов, был введен в практику Келли, Уокером и др. [3, 4]. В последнее время он нашел широкое применение в промышленности. Математические свойства этого метода можно рассматривать с различных точек зрения [1, 2, 3, 5]. Цель настоящей статьи — исследовать свойственные ему математические отношения. Интересно отметить, что отношение непосредственного предшествования, устанавливающееся между работами в проекте, теоретически должно быть иррефлексивным и &-интранзитивным, что является противоположностью свойствам, которыми обычно обладают математические отношения (рефлексивность и транзитивность). Отсюда вытекает необходимость более широкого изучения формальных свойств математических отношений лицами, интересующимися наукой об управлении. С этой целью и написана настоящая глава. В разделе 2 раскрываются свойства отношений «предшествует» и «непосредственно предшествует» и соответствующих им обратных отношений — «следует» и «непосредственно следует». Далее, в разделе 3 рассматриваются вопросы анализа проекта методом критического пути. В разделе 4 алгебраические характеристики рассмотренных выше отношений излагаются в матричном представлении. И, наконец, в разделе 5 описаны алгоритмы проверки на иррефлексивность и &-интранзитивность. 2. ОТНОШЕНИЯ «НЕПОСРЕДСТВЕННО ПРЕДШЕСТВУЕТ», «НЕПОСРЕДСТВЕННО СЛЕДУЕТ» И «ПРЕДШЕСТВУЕТ» В этом разделе должны быть исследованы математические свойства указанных отношений, устанавливающихся между составляющими проект работами. 1 Работают в Технологическом институте Карнеги. 421
Пусть J =${а, by с, . . .} убудет множество работ, которые необходимо произвести для осуществления проекта. Обозначим через < отношение между работами а и Ь, входящими в J, когда Ь < а определено для некоторых пар работ а и Ь и которое читается следующим образом: «6 непосредственно предшествует а» или, что равносильно, «а непосредственно следует за Ь». Утверждение Ь < а означает, что работа Ъ должна быть закончена раньше, чем может быть начата работа а. Отсюда следует, что любая заданная работа может быть начата тогда и только тогда, когда все непосредственно предшествующие ей работы будут закончены. Проект определяется множеством J и отношениями <. Предположение 1. Отношение непосредственного предшествования иррефлексивно и &-интранзитивно при любом k> то есть а) а <а — ошибочно для всех работ а из J (иррефлексивность). б) Если а = at <С а2 < . . . С ah = 6, тогда а < b ошибочно для любой пары работ а и b при любом k > 2 (&-интран- зитивность). Обычное понятие интранзитивности соответствует приведенному выше определению при k = 3. В разделе 5 настоящей статьи будут разработаны тесты для установления того, удовлетворяет ли заданный перечень работ предположению 1. Определение. МножествоРа = {b\ b < а} есть множество работ, непосредственно предшествующих работе а. Точно так же множество Sa = {b\a < b} есть множество работ, непосредственно следующих за работой а. Теорема 1. Если предположение 1 верно, то множество Ра есть наименьшее подмножество таких работ в /, которые должны быть выполнены прежде, чем будет начата работа а. Точно так же Sa есть наименьшее подмножество таких работ в /, которые не могут быть начаты, пока не будет закончена работа а. Доказательство. Поскольку отношение < иррефлексивно, то а не является элементом Ра. Поэтому, когда все входящие в Ра работы будут закончены, может быть начата работа а. Теперь предположим, что вопреки этому утверждению работа а может быть начата прежде, чем будут получены сведения о завершении некоторой работы х из Ра. Поскольку х < а, это может быть только в том случае, если завершение работы х означает окончание какой-то другой работы b из Ра. Это значит, что должно иметь место отношение вида < для некоторой работы b из Ра. Но, поскольку х <t а, это противоречит предположению о fe-интранзитивности отношения <. Этим завершается доказательство первого утверждения. Другое утверждение доказывается аналогично. График G проекта представляет собой плоский граф с точками на плоскости, обозначающими работы, и направленными прямо- 422
линейными отрезками, соединяющими работы а и ft в том и только в том случае, когда а < Ь. Примеры графиков проектов приведены в [3, 5]. Путь на графике G есть множество вершин ах, а2, . . ., аП9 для которых имеет место следующее отношение непосредственного предшествования: 01 € а2 <... < ап. Цикл в G есть замкнутый путь вида at € а2 < ... < an-i < 0» = ^. График G проекта ацикличен в том и только в том случае, если он не содержит ни одного цикла. Из отношения <С может быть выведено другое отношение <С, сформулированное в следующем определении: Определение. а<Ь (читается: «а предшествует Ь» или, что равносильно, «Ь следует за а») тогда и только тогда, когда существует множество работ {си с2, - . ., сп}, где я>2, такое, что Другими словами, а предшествует Ь тогда и только тогда, когда на графике G проекта между ними существует путь. Заметим, что &-интранзитивность может быть сформулирована как «если а < Ь, то утверждение а < Ь — ошибочно». Предположение 2. Отношение предшествования асимметрично, то есть для всех а и b в У, если верно а < Ь, то b < а неверно. Примечание. Ясно, что если график G цикличен, то отношение < также иррефлексивно. В разделе 5 будут разработаны эффективные тесты для выявления того, действительно ли заданное множество работ и отношение непосредственного предшествования определяют собой асимметричное отношение предшествования. Определение. Транзитивное и асимметричное отношение называется отношением предпочтения. Теорема 2. Если предположение 2 верно, то отношение предшествования <С есть отношение предпочтения и график G ацикличен. Доказательство. Докажем сначала, что отношение < тран- зитивно. Пусть а < b и b < с. Тогда должны быть пути а = Ъ « d2 <... « dk = b, b = el<€e2€.^€eh = c. Но тогда ясно, что a = di < d2 < ... С dk = 6 = ^ « e2 « ... <ел = с есть путь от а до с, так что а<с Поскольку отношение < асимметрично (согласно предположению) и транзитивно (как только что было доказано), поэтому оно является отношением предпочтения. С другой стороны, если 423
отношение предшествования является отношением предпочтения, то оно, по определению, асимметрично. Предположим, что график G проекта содержит цикл вида а = Ь1 <&b2<...€bn = a, где п>2. Тогда, принимая b = bj A < / < п), получим, что а < b и b < a, что противоречит асимметрии отношения <С Следовательно, график G ацикличен. Лемма 1. График G проекта цикличен в том и только в том случае, если существует подмножество Q из множества У, такое, что Ра П Q Ф ф для всех а из Q. Доказательство. Если G содержит цикл, то пусть Q будет множеством работ, образующих цикл. Ясно, что в этом случае Q удовлетворяет требованию леммы. Пусть, наоборот, Q будет подмножеством из У, для которого наличие этого свойства установлено. Покажем, что G содержит цикл. Пусть at будет одним из элементов Q, пусть а2 будет одним из элементов Pai f] Q, a3 — один из элементов Ра2 О Q и т. д. Поскольку У, а следовательно, и Q состоят из конечного числа элементов, мы в конце концов должны будем выбрать какой-нибудь элемент, который уже был выбран ранее. Тогда получим at < аг €... < ап и в то же время ап = о,- для некоторого / < п. Следовательно, G содержит цикл. Определение. Упорядоченный перечень работ У* = [аь а2, . . . , ат] получается из множества т работ J = {а, Ь, . . .} путем перечисления их в определенном порядке. О работах в упорядоченном перечне J* будем говорить как о расположенных в технологической последовательности, если ни одна из работ не попадает в перечень до того, как в нем будут перечислены все предшествующие ей работы. Теорема 3. Предположение 2 верно в том и только в том случае, если можно перечислить составляющие J работы в виде перечня У* работ, расположенных в технологической последовательности. Доказательство. Пусть S0 будет множеством работ из У, которым никакие работы непосредственно не предшествуют. S0 должно быть непустым множеством, иначе по крайней мере одно подмножество из У обладало бы свойством, описанным в лемме 1, и график G был бы цикличен, что противоречит теореме 2. Пусть S4 будет подмножеством работ из У, у которых все непосредственно предшествующие им работы принадлежат 50; пусть 52 будет подмножеством работ из У, у которых все непосредственно предшествующие им работы принадлежат SoU*^ и т. д.; в общем случае пусть Sk будет подмножеством работ из У, у которых все предшествующие им работы принадлежат 50 U S4 U ... U Sk-t- Поскольку 424
J — конечное множество, этот процесс когда-нибудь остановится, скажем при k = л. Допустим теперь, что существует непустое подмножество Q из У, состоящее из элементов, не принадлежащих ни к одному из построенных таким образом множеств 50, . . ., Sn. Покажем, что в этом случае нарушается предположение 2. Каждый элемент а из Q должен обладать тем свойством, что Pa{]Q Ф фу так как иначе работа а была бы элементом одного из множеств 5д. Но тогда Q обладает свойством, описанным в лемме 1, и график G цикличен. Поскольку теорема 2 утверждает, что предположение 2 справедливо в том и только в том случае, если график G ацикличен, следовательно, Q должно быть пустым и J = S0[)Si\)...[)Sn. Теперь можно построить для J перечень работ У*, расположенных в технологической последовательности, перечислив сначала в любом порядке все элементы 50, затем в любом порядке все элементы Si и т. д., пока не будут перечислены все элементы Sn и, стало быть, все элементы У. Если, с другой стороны, входящие в J работы могут быть представлены в виде технологически упорядоченного перечня У* и если множества S0, Si, . . . , Sn и Q определяются так, как это было выше указано, то ясно, что Q — пустое множество и предположение 2 верно. 3. ВРЕМЯ ВЫПОЛНЕНИЯ РАБОТ, КРИТИЧЕСКИЕ РАБОТЫ, КРИТИЧЕСКИЕ ПУТИ Для выполнения каждой работы требуется определенное время. С учетом целей, которые мы поставили перед собой в этой статье, допустим, что время это известно с достоверностью. Обозначим через ta время, необходимое для выполнения работы а. Удобно (хотя и не обязательно) ввести две фиктивные работы — «Начало» и «Конец», обе с временем выполнения, равным нулю. «Начало» определяется как единственная работа, предшествующая всем тем работам в «/, которые не имеют предшествующих им работ в У, а «Конец»— как единственная работа, следующая за всеми теми работами в J, за которыми не следует ни одна работа в J. Эти две работы отличаются тем свойством, что они ограничивают с двух концов график проекта. «Начало» и «Конец» добавляются к множеству J. Предположим теперь, что в ходе осуществления проекта каждая работа начинается сразу после того, как заканчивается выполнение всех непосредственно предшествующих ей работ. В этом случае для каждой работы, входящей в проект, можно рассчитать ранний срок начала ES и ранний срок окончания EF. Опишем алгоритм для вычисления ES (а) и EF (а) для каждой работы в J. 425
Алгоритм Ci 1. Принять для «Начала» ES и EF равными нулю1. 2. Пусть а — любая работа, такая, что дйя всех работ из множества Ра сроки раннего окончания EF уже вычислены. Тогда вычислить ES(a)= Max ?/?(*), а также EF(a) = ES(a) + ta. 3. В конце концов будет вычислен ранний срок окончания F работы «Конец». Теорема 4. Если предположение 2 верно, тогда а) Алгоритм Ci дает единственные значения ранних сроков начала и окончания для всех работ в J. б) Для любой работы а в J ранний срок окончания EF (а) есть общее время выполнения работ, составляющих наиболее длинный путь от «Начала» до работы а включительно. в) Самый ранний срок завершения всех работ по проекту есть F. Доказательство. Так как предположение 2 верно, то работы могут быть перечислены в технологической последовательности. Докажем две первые части теоремы методом индукции, распространяя утверждения на k-й элемент перечня ak. Доказательство а. Первая работа в перечне — «Начало», для которой ранние сроки начала и окончания всегда принимаются равными нулю. Предположим теперь, что часть (а) теоремы справедлива для ai9 . . ., яа-i. Мы хотим показать, что она справедлива для ak. Так как все работы, предшествующие ak, уже вошли в перечень и имеют единственные значения ранних сроков окончания, их максимум, который в соответствии с алгоритмом должен быть выбран как ранний срок начала для а^ будет также единственным. Но тогда единственным будет и ранний срок окончания ak, так как он получается прибавлением времени выполнения работы ah к раннему сроку ее начала. Доказательство б. Очевидно, что это утверждение справедливо для первой работы—«Начало». Предположим, что оно справедливо для первых (k — 1) работ. Поскольку ранний срок начала аи равен максимальному из ранних сроков окончания предшествующих ей работ, то имеется путь от «Начала» до а&, длина которого равна раннему сроку начала а*. Так как для выполнения работы ад необходимо время tak то, следовательно, имеется путь длиной EF (аи) от «Начала» до момента окончания ад и этот путь — самый длинный из таких путей. 1 Можно было бы воспользоваться для ES и EF «Начала» другим значением вместо нуля (скажем, S). 426
Доказательство в. Поскольку «Конец» также входит в перечень работ, для него должно быть справедливо утверждение, касающееся пункта (б). Следовательно, работа «Конец» может быть закончена в момент времени F. Так как за работой «Конец» никакие другие работы не следуют, весь проект в целом также завершен. Для каждого проекта обычно имеется установленная или чем- либо обусловленная дата Г, к которой его выполнение должно быть завершено. Установленные сроки выполнимы только при условии, что T>F, ибо F — самый ранний срок завершения всех работ по проекту. Если установленный срок Т известен, то, идя от конца проекта к началу, можно вычислить наиболее поздние сроки окончания каждой работы при условии, что проект должен быть завершен не позднее установленной даты Т. Назовем эти сроки наиболее поздними сроками окончания работ LF. Отсюда можно вывести и наиболее поздний срок начала каждой работы LS. Опишем алгоритм вычисления этих сроков. Алгоритм С2 1. Принять для «Конца» и LS и LF равными Т. 2. Пусть а — любая работа, такая, что для всех работ из множества Sa сроки LS уже вычислены. Тогда следует вычислить LF(a)=mnLS(x), *zsa а также LS(a) = LF(a)-ta. 3. В конце концов будет вычислен поздний срок начала L работы «Начало». Далее будет показано, что величина L представляет собой резерв времени проекта (если S Ф О, то резерв времени для проекта равен L — 5). Теорема 5. Если предположение 2 верно, то алгоритм С2 дает единственные значения поздних сроков начала и окончания для всех работ в J. Доказательство. Детали здесь опущены, но доказательство аналогично доказательству теоремы 4 (а). Определение. Для любой работы а величина SL (а) = LS (a) - ?S» = LF (a) - EF (а) называется резервом времени (или просто резервом) работы а. Можно представить себе, что резерв работы а равен максимуму времени, на которое может быть отсрочено окончание работы а без неизбежной отсрочки завершения проекта в целом. Определение. Под критической работой понимается работа, имеющая минимальный резерв времени. Ясно, что в каждом проекте есть хотя бы одна критическая работа. 427
Лемма 2. Если предположение 2 верно, то а) Каждая критическая работа в У, за исключением «Начала» и «Конца», имеет по крайней мере одну критическую работу, предшествующую ей, и одну критическую работу, следующую за ней, б) «Начало» и «Конец»— критические работы. в) L = Т — F — минимальный резерв времени, то есть резерв времени всех критических работ. Доказательство: а) Допустим, что верно обратное и существует такая критическая работа а (отличная от «Начала»), у которой ни одна из предшествующих ей работ х не является критической. Тогда, поскольку а следует за х, должно быть справедливо, что LS{a)>LF(x). A) Кроме того, поскольку а — критическая работа, ах — некритическая работа, имеем LS (а) - ES (а) < LF (х) — EF (х). B) Комбинируя уравнения A) и B), получим LF (х) - ES (а) < LF (x) - EF (*), откуда следует, что ES(a)>EF(x) C) для всех х, предшествующих а. Однако поскольку, по определению, ES (а) равно максимальному из ранних сроков окончания предшествующих ей работ, то, следовательно, уравнение- 3 противоречит этому определению. Поэтому хотя бы одна из работ, предшествующих а, должна быть критической. Подобным же образом можно доказать, что хотя бы одна из работ, следующих за а, критическая. б) Пусть а — любая критическая работа в J. Хотя бы одна из следующих за ней работ критическая; выделим ее, пусть это будет а\. Теперь выберем критическую работу, следующую за аи пусть это будет а2, и т. д. В конце концов в качестве критической работы, следующей за некоторой другой работой, будет выбран «Конец», следовательно, «Конец»— критическая работа. Аналогично «Начало»— также критическая работа. в) Поскольку и «Начало» и «Конец»— критические работы, то, следовательно, L = Т — F — минимальный резерв времени по всем работам проекта. Теорема 6. Если предположение 2 верно, то а) Существует хотя бы один путь, называемый критическим путем от «Начала» к «Концу», у которого все принадлежащие ему работы критические. б) Все критические работы лежат на таком пути. в) Общее время выполнения всех работ для каждого критического пути равно F, и оно не меньше времени выполнения работ, лежащих на любом другом пути от «Начала» до «Конца». 428
Доказательство. Пусть а — любая критическая работа в «Л Тогда, как и при доказательстве леммы 26, выберем критическую работу аи следующую за а, и критическую работу Ьи предшествующую а, затем выберем критическую работу а2, следующую за аь и критическую работу Ь2, предшествующую Ьи и т. д. Будем продолжать, пока не выберем «Начало» и «Конец». Полученный результат представляет собой критический путь от «Начала» через а до «Конца». Тем самым доказаны первые два утверждения. Утверждение с есть просто повторение теоремы 4(в) по отношению к работе «Конец». 4. МАТРИЦЫ ПРЕДШЕСТВУЮЩИХ И ПОСЛЕДУЮЩИХ РАБОТ В этом разделе будут разработаны алгебраические методы для изучения отношений предшествования и последования. Будут даны алгебраические характеристики предположений 1 и 2 из раздела 2. В разделе 2 путь на графике G проекта был определен как множество k работ, удовлетворяющих условию а± < а2 < . . . < а*- Два пути считаются различными, если они отличаются один от другого набором принадлежащих им работ или их очередностью. Мы будем говорить, что длина такого пути равна k — 1. Предположим теперь, что наш проект состоит из упорядоченного множества J = [at, a2, . . . , ап] из п работ, включая работы ai —«Начало» и ап —«Конец». Дадим определение матрицы предшествующих и последующих работ проекта. Определение. Матрица предшествующих работ Р проекта есть матрица п х п с элементами Pijy определяемыми следующим образом: f 1, если аъ < aj 10, во всех других случаях. Матрица последующих работ S проекта может быть определена как транспонированная матрица Р. Так как Sij — рд, то, следовательно, {1, если uj < at 0, во всех других случаях. По определению, элементами матриц S и Р могут быть только 0 и 1. Мы сосредоточим внимание на изучении матрицы Рив конце раздела сделаем несколько замечаний, касающихся матрицы S. Поскольку Р — квадратная матрица, ее можно возводить в степень п. Обозначим через p\f элемент матрицы Рп. Теорема 7. Если pty = т > 0, то существуют т различных путей длиной k от щ до о,% 429
Доказательство, Докажем теорему методом индукции для степени k. Для k = 0 и k = 1 утверждение справедливо. Допустим, что оно справедливо для элементов матрицы Ph~x\ мы хотим доказать, что оно справедливо и для элементов матрицы Pk. Так как pii) = pii>Pu + pi2W+ • • • +рЯГ1)Рп*. D) Поскольку все члены этой суммы неотрицательны, то, стало быть, pij} положителен только в том случае, если один или более членов вида PuT^Phj положительны. А это возможно, только если p\h~i)>0 и phj > 0. Согласно индуктивному предположению, р\п* дает число различных путей длиной k — 1 от а% до аь, и, поскольку phj = 1, можно провести такое же число различных путей длины k от at до а/. Кроме того, если р(^1}> 0 и p(*m4)>0, где h ф т, проведенные таким образом пути различны. Следовательно, сумма из уравнения D) в точности равняется числу различных путей от at до О/. Вывод. Если имеется наиболее длинный путь, то есть путь, проходящий через наибольшее число вершин на графике G проекта, и если длина этого пути равна N, то PN ^0и рлг-и _. о. Теорема 7 справедлива независимо от того, верны ли предположения 1 и 2. В остальных теоремах рассматриваются следствия, вытекающие из этих предположений. Теорема 8. Предположение 1 может быть сформулировано следующим образом: а) Отношение предшествования < асимметрично в том и только в том случае, если ри = 1 подразумевает, что pjt = 0 или, что равносильно, наибольший элемент в P + S равен 1. б) Отношение предшествования < k интранзитивно при всех k в том и только в том случае, если ptj = 1 подразумевает, что р$ = О при всех k > 2. Доказательство, а) Если отношение < асимметрично, то at < обозначает, что утверждение о/ < а% ложно; следовательно, или ptj = 1 и Pjt = 0, или наоборот. б) Так как ptj = 1 означает, что существует путь длиной 1 от at до о/, и pffi > 0 означает, что существует по крайней мере один путь длиной k от at до aJt то, следовательно, fc-интранзитив- ность означает, что оба вида путей не могут быть допустимы одновременно. Обратное утверждение также справедливо. Результаты этой теоремы показывают, что, исследуя Р и ее степени, можно установить, не имеется ли излишних предшествующих работ в перечне того или иного проекта. Теорема 9. Предположение 2 верно в том и только в том случае, если PN+i= 0 для некоторых N. Доказательство. Если предположение 2 верно, то график проекта не содержит циклов. Следовательно, все пути должны 430
иметь конечную длину (поскольку число работ конечно); поэтому в соответствии с выводом из теоремы 7 для некоторого целого N имеем PN+l = 0. И обратно: если PN+* = 0 для некоторого N, то нет ни одного пути длиннее, чем N, и, следовательно, не может быть ни одного цикла в графике и предположение 2 верно. Определение. Если Р — квадратная матрица, то инверсия Неймана для матрицы (/ — Р) определяется следующим образом: (/-P)-i = 1 + Р + Р*+ ... +Рп+ ..., E) где ряд в правой части формулы обладает сходимостью. Лемма 3. Пусть Р — матрица с целочисленными элементами; тогда инверсия Неймана для матрицы (/ — Р) возможна в том и только в том случае, если Р^+* = 0 для некоторого N > 0. Доказательство. Бесконечный ряд в уравнении 5 может сходиться только в том случае, если с увеличением п Рп -»¦ 0. Однако поскольку Р и Рп имеют целочисленные элементы, то это возможно, только если PN+t = 0 для некоторого N. Это есть доказательство необходимости данного условия. Для доказательства его достаточности рассмотрим следующее равенство, которое может быть установлено методом индукции: (/-P)(/ + P + P2+...+Pn) = /-Pn+1. F) Из уравнения F) следует, что если PN+i = 0, то (/ — Р) существует и (/_Р)-1 = / + Р + Р2+...+Р*. Этим завершается доказательство теоремы. Теорема 10. Предположение 2 верно в том и только в том случае, если инверсия Неймана возможна и обратная матрица Q равняется Q = (/-P)-i = /+p + p2+...+PN G) (то есть в том и только в том случае, если график G проекта имеет путь наибольшей длины). Доказательство. Эти утверждения являются следствиями теорем 7 и 9 и леммы 3. Представляют интерес различные интерпретации элементов матрицы Q = I + Р + Р2 -{- ...+ PN. Ясно, что qu равно общему числу путей всех длин от аг до aj. Это позволяет нам дать еще одну характеристику предположения 1. Теорема 11. Предположение 1 верно в том и только в том случае, если ptj = 1 означает, что и q%i = 1. Доказательство. Если и рц = 1 и qtj = 1, то существует единственный путь, длина которого обязательно равна 1, от аг до aj. Отсюда следует, что отношение < как иррефлексивно, так и &-ин- транзитивно. Доказательство обратного утверждения аналогично. Существует тесная связь между результатами этого раздела и выводами из статьи Б. Гиффлера об алгебре календарного пла- 431
нирования [2]. Ибо если принять ри равным времени выполнения аи когда а% < aj9 и по-иному определить операции с матрицами, как это делает Гиффлер, то элементы Q будут представлять собой наиболее длинный путь от at до #г Эта методика может быть использована для вычислений по методу критического пути (см. раздел 3). S. КОНТРОЛЬ НАЛИЧИЯ ЦИКЛОВ И ИЗЛИШНИХ ПРЕДШЕСТВУЮЩИХ РАБОТ Результатам, полученным в предыДУЩем разделе, может сразу же быть придана форма, удобная для алгебраической проверки наличия циклов и излишних предшествующих работ в графике G проекта. Представим их в виде алгори™а- Допустим, нам задан перечень работ J = {а, 6, . . .} и для каждой из них — множество Ра непосредственно предшествующ*1* ей работ. Составим алгоритм Ri для проверки наличия циклов и излишних предшествующих работ. Алгоритм Ri 1. Составить матрицу предшествования Р. 2. Вычислить Q = (/ — Р)-\ если она существует. Если нет, то G содержит цикл и следует проверить исходные данные. (Инверсия Неймана (/ — Р)'1 может быть вычислена с помощью одного из обычных методов обращения матриц или с помощью различных итерационных методов, позволяющих быстро рассчитать частные суммы вида (/ + Р + Р + • • • + Р )•) 3. Если для некоторых i и / имеет место ри = 1 и qu> 1, тогда работа а/ имеет излишние предшествующие работы и следует проверить исходные данные. При такой проверке весьма полезно вычислять значения Рк. Исходя из результатов, полученных в разделе 2, можно построить другой набор алгоритмов для проверки наличия циклов и излишних предшествующих работ. Эти алгоритмы, вероятно, менее расточительны в отношении использования объема памяти вычислительной машины, чем матричные алгоритмы, которые были описаны выше. Ниже перечислены шаги такого алгоритма (R2). Алгоритм Рг 1. Перечислить работы в любом порядке. 2. Выбрать множество Р0 работ, не имеющих предшествующих (за исключением «Начала»). 3. Для i (i = 1, . . ., N) выбрать множество Pt работ, таких, у которых все предшествующие работы принадлежат Pt-i. Здесь N — наибольшее целое число, такое, что Pn непустое множество. 432
4. Если в J есть работы, не вошедшие ни в одно из множеств Р0, Ри . . . PNf то среди заданных работ имеются такие, которые образуют цикл, и исходные данные следует проверить. В противном случае — перейти к п. 5. 5. Для k (k = 2, . . ., N) рассмотреть все работы а, входящие в Рк- Если работе а предшествует работа Ь из Ри-и включить в число работ, предшествующих а, все работы, предшествующие 6. (В конце этого шага каждая работа будет иметь полный перечень предшествующих ей работ, и поэтому в перечне предшествующих работ излишек будет максимальным. Этот излишек устраняется на шестом шаге.) 6. Для h (h = 1, . . ., Лг) рассмотреть работу а, входящую в Рл. Если а предшествует некоторой работе b из Pk (где k > Л), то исключить из Ръ все работы, предшествующие а, то есть заменить Рь на Ръ — Ра- 7. В конце шага 6 останутся перечисленными лишь работы, непосредственно предшествующие всем заданным работам. Доказательства того, что алгоритм R2 обеспечивает контроль наличия циклов и устранение излишних предшествующих работ, основаны на материале раздела 2.
ПРИЛОЖЕНИЕ Система идей и основные понятия оптимизации календарных планов в сборнике Как указано во вступительной статье (стр. 5), в главах сборника читатель столкнется с рядом условных специфических понятий, появившихся в научно-технической литературе США за последние десять лет в связи с методами «исследования операций». Так как эти понятия в тексте не разъяснены и, с другой стороны, требуют истолкования применительно к практическим условиям советской промышленности, они рассмотрены в этом приложении, причем сначала в связи с общей схемой оптимизации календарных планов математическими методами, а затем в рамках отдельных тем сборника. Оптимизация календарных планов является одной из проблем «исследования операций» {1}, и к ней относится следующая сформулированная Э. Д. Эрроу и С. Карлином [13] * общая схема, определяющая связь центральных понятий, возникающих в этой области. На протяжении последнего десятилетия, по их мнению, возникло течение, именуемое «исследованием операций», или «наукой об управлении». Совокупность задач, относящихся к области управления производством, коммерческой, административной деятельности, получила общее наименование «проблематики решений». Для этих задач характерны четыре элемента: A. Модель, выражающая совокупность предполагаемых эмпирических зависимостей между переменными. Б. Подмножество переменных, значения которых выбирает фирма или организация, принимающая деловое решение. B. Целевая функция переменных, вошедших в модель, обладающая тем свойством, что возрастание ее значений соответствует улучшению в ходе дел с точки зрения фирмы. Г. Вычислительные методы, позволяющие исследовать изменения целевой функции в зависимости от выбора вариантов значений переменных, определяющих решение. «В идеале,— как пишут Эрроу и Карлин,— желателен вычислительный метод, который приводил бы к оптимальному решению, то есть к определению таких значений переменных, при которых целевая функция в рамках ограничений, заданных моделью, достигла бы максимума». Многочисленные задачи исследования операций вписываются в схему Эрроу — Карлина. Тем не менее эта схема не вполне устроит нас при попытке разобраться в понятиях и принципах, использованных в сборнике. Рассмотрим первое из понятий, использованных Эрроу и Карлином,—«модель» и именно, судя по определению, математическую модель, с которой все и начинается. Здесь полезно привести мнение профессора Колумбийского университета М. К- Старра, который в своем учебнике научного управления в промышленности, изданном в 1964 г. [24], пишет: «Модель является изображением действительности. Она строится таким образом, чтобы объяснить некоторые, но не все аспекты совокупности явлений в этой действительности. Причина, по которой применяется модель, 1 В фигурных скобках указан номер терминологических примечаний в конце приложения, в квадратных скобках — номера названий в библиографии на стр. 459. 434
заключается в том, что она всегда проще, чем фактическая ситуация в реальном мире. Она должна быть хорошим изображением тех измерений, которые имеют отношение к целям системы. В противном случае она не будет полезной и поэтому не будет применяться». И далее читаем: «Модели могут быть как конкретные, так и абстрактные. Они могут быть также как качественными, так и количественными. В первом из этих классов мы находим логические модели, и во втором — математические» (стр. 64). Казалось бы, такое определение не противоречит определению Эрроу — Карлина и лишь расширяет его. В действительности это далеко не так. Нельзя не согласиться со Старром, который выдвигает как критерий пригодности модели правильность отображения именно тех связей и зависимостей, которые имеют отношение к целям системы. Отсюда следует, что прежде чем заниматься моделью, надо формулировать эти цели или ту существенную величину, которая являлась бы «критерием оптимальности»— основой при формулировке «целевой функции» в терминологии Эрроу. Но, пытаясь строить модель в соответствии с целевой функцией и выбирая целевую функцию по модели, мы попадаем в порочный круг, и для того, чтобы разорвать его, существует единственный способ — надо определить прежде всего критерий оптимальности применительно к тем реальным производственным условиям, в которых возникает задача. Таким образом, все начинается не с модели, как у Эрроу и Карлина, а с определения и анализа типовых производственных условий, в которых возникает задача (первое звено). Лишь на основе экономического, организационного и технологического исследования системы можно формулировать критерий оптимальности (второе звено), и тогда уже доходит очередь до модели. Но здесь нам снова придется вернуться к этому действительно центральному понятию. На этот раз мы попытаемся выяснить, каким образом и откуда возникает математическая модель. Самоочевидно, что прежде, чем интерпретировать ход производства средствами той или иной математической теории, необходимо выделить в системе те ее элементы и связи, которые представляются необходимыми и достаточными, исходя из критерия оптимальности. Комплекс этих отобранных элементов и связей системы (в кибернетическом смысле) назовем «моделью производства». Она составляет своего рода прототип математической модели *, поэтому неизбежно ей предшествует, но сама всегда возникает внематематическим путем на основании в лучшем случае конкретно экономических организационных и технологических соображений и в худшем случае — на основании обманчивого «здравого смысла» или предвзято, как оправдание вновь разработанного метода оптимизации. Так или иначе, предшествующая «математической модели» «модель производства» есть третье неизбежное, хотя иногда неявное звено оптимизации производственных планов. Именно в этом звене осуществляется стык математического и организационно-технического (или экономического) подходов, так как модель производства должна не только удовлетворять упомянутому критерию Старра, но и связанному с математикой критерию в виде разрешимости задачи доступными средствами. Четвертым звеном является выбор математической теории и построение ее с помощью математической модели, в которой формулируется целевая функция, соответствующая критерию оптимальности (в частности, устанавливаются ее аргументы — переменные, которыми распоряжается предприятие по Эрроу — Карлину), определяются параметры и формулируется вся система связей между получающими количественное выражение элементами системы, ранее отобранными в «модель производства». Сюда же относится 1 Модели производства может соответствовать несколько математических. Вообще же предлагаемая здесь точка зрения на математическую модель сложилась в известной мере под впечатлением справок и соображений, которые мы находим в «Теории множеств» Н. Бурбаки (см. стр. 319 русского перевода [2]). 28* 435
непосредственно связанный с моделью выбор или разработка способа решения. Все это составляет четвертое звено, которое для краткости мы будем называть «математическими методами». Итак, в связи с оптимизацией календарного плана как комплексной организационно-экономической задачей, разрешаемой с привлечением математических методов, мы сталкиваемся с четырьмя основными понятиями: а) типовые организационно-производственные условия, б) критерий оптимальности, в) модель производства и г) математический метод. Мы займемся теперь вопросом — какой частный смысл вкладывается в сборнике в каждое из этих понятий, в каком отношении находится этот смысл к практическим производственным условиям и какие дополнительные понятия возникают в рамках отдельных тем сборника. Начнем с первой и главной темы сборника, с оптимизации последовательности обработки т изделий на п станках (различные варианты задачи Джонсона). Попытаемся ответить на вопрос, какие организационно-производственные условия были почвой, на которой возникла задача. Не следует придавать большого значения тому, что в каждой статье упоминается «цех единичного и мелкосерийного производства». Во-первых, здесь допущена неизбежная условность перевода, несколько сместившая смысл соответствующего американского термина {2}. По точному его смыслу речь идет о цехе, в котором работы на станках (обработка отдельных изделий, деталей или их партий) меняются в соответствии с очередными нарядами-заданиями, а изделия или их партии в полном составе передаются со станка на станок в соответствии с фиксированными последовательностями операций. Во-вторых, тот факт, что цех работает по нарядам в указанном выше смысле, еще не определяет реальных организационно-производственных условий, существенных для планирования. Например, в механическом цехе турбинного завода с единичным производством или завода электронно-вычислительных машин с мелкосерийным производством можно встретить станки, работающие по нарядам, и станки, загруженные всегда одинаковой работой или двумя-тремя периодически меняющимися работами. Здесь можно встретить также группы станков с параллельно последовательной обработкой партий деталей на них, и такой цех не является цехом, «работающим по нарядам» в указанном смысле. И в условиях массового производства, например на гигантском автомобильном заводе, вы встречаетесь с автоматно-токарным цехом, где обрабатываются настолько малотрудоемкие и малоценные многономенклатурные детали, что даже в условиях массового производства их партии все же появляются в цехе относительно редко и нет надобности и возможности устанавливать их регулярную периодичность. Такой цех работает по нарядам, как это предусматривается в сборнике. Итак, «цех, работающий по нарядам», названный в переводе «цехом единичного и мелкосерийного производства», может встретиться в самой различной обстановке, определяющей требования к внутрицеховому календарному планированию. Поэтому ссылки на единичное и мелкосерийное производство в главах сборника еще не определяют типовых организационно-производственных условий, для которых решается задача Джонсона, и этот вопрос в значительной мере остается открытым. Переходя, в связи с той же задачей Джонсона, ко второму из основных понятий оптимизации календарного плана — к критерию оптимальности, мы не находим в сборнике попыток определить его на основании анализа организационно-производственных условий, так как эти условия, как мы видели, четко не сформулированы. Тем не менее этот критерий установлен совершенно ясно, и им является календарная продолжительность выполнения плана {3}. Строго говоря, здесь речь идет не о календарном плане (графике) работы участка или цеха на определенный плановый период, а о календарном расписании обработки некоторой совокупности изделий с определенными технологическими маршрутами. Однако, приравняв нулю длительности не включенных в цеховой план операций (уже выполненных для входного и еще невыполненных для выходного незавершенного производства), это различие можно обойти. 436
На критерии в виде календарной длительности выполнения плана обработки заданных изделий необходимо остановиться подробнее, так как его чрезмерное восхваление в сборнике и в статьях, появившихся до сборника и после него, создает впечатление, что он является ключевым для всей проблемы, а целесообразность его применения не подлежит сомнению. Это обстоятельство может оказать очень плохую услугу в случае излишнего легковерия читателей сборника, так как в большинстве случаев, в частности в машиностроении, критерий Джонсона не только не полезен, но может привести к потерям и дезорганизации производства. Неспроста Мэн (стр. 225 сборника) пытается его реабилитировать в глазах экономиста, «которому,— как он пишет,— свойствен рефлекс смотреть косо на всякую минимизируемую величину, кроме издержек в долларах, и которому критерий Джонсона не доставит особенной радости». В защиту этого критерия Мэн выдвигает тот довод, что он коррелирует с расходами в долларах, так как, сокращая календарную длительность выполнения запланированных работ, можно получить следующие выгоды: 1. Снижение объема незавершенного производства. 2. Сокращение среднего срока поставки изделия заказчику. 3. Уменьшение простоев и тем самым увеличение мощности цеха. Для реальных производственных условий такого рода аргументация сомнительна. «Неоптимальные» (по Джонсону) последовательности обработки изделий приводят в действительности лишь к некоторому увеличению объема незавершенного производства, но не к простоям. Дело в том, что при правильном планировании простои, угрожающие снижением пропускной способности цеха, предотвращаются за счет переходящих заделов — межоперационных остатков незавершенного производства, заблаговременно создаваемых и постоянно поддерживаемых. Если же на последующих операциях имеется излишек фонда полезного времени оборудования и простои станков так или иначе неизбежны, их группируют опять-таки за счет заделов в целые смены или такие иные промежутки времени, при которых можно избежать простоев рабочих и затруднений при расстановке рабочих по станкам. В обоих рассмотренных случаях маневр незавершенным производством применительно к схеме Джонсона (стр. 34) принимает форму передвижки начала работ по второй операции вправо, причем вакуум, возникающий до начала обработки первого изделия на второй операции, заполняется второй операцией по межоперационному заделу. Таким образом, увеличение пропускной способности в данном случае к делу не относится. Но и снижение расходов на незавершенное производство при использовании критерия Джонсона гарантируется только тогда, когда все изделия имеют одинаковую стоимость. В противном случае может оказаться, что, обрабатывая, скажем, в первую очередь наиболее дорогие изделия, можно снизить средние остатки незавершенного производства в ценностном выражении больше, чем при оптимальной последовательности в соответствии с критерием Джонсона. Еще серьезнее обстоит дело с третьей «выгодой», доставляемой критерием Джонсона. Как подчеркивает сам Мэн, сроки выполнения заказов потребителей сокращаются в среднем. Ясно, что при последовательности запуска изделий в соответствии с критерием Джонсона, то есть по принципу «скорей все кончить», сроки выполнения отдельно взятых заказов ни в какой мере не будут соответствовать срочности этих заказов с точки зрения потребителей. Таким образом, сокращение среднего срока выполнения заказа имеет здесь такие же преимущества, как соответствие средних размеров готового платья средним размерам потре- 437
бителей при полном пренебрежении ростом и сложением каждого из них. Помимо затронутых выше соображений о выгодной последовательности выполнения работ, встречаются и другие, не менее важные. Например, нередко в реальных.условиях удается снизить зачастую очень высокую стоимость переналадок станков путем подборки такой последовательности изделий на каждом станке, при которой для последующих работ в максимальной степени была бы пригодна оснастка, инструмент и настройка станка для предыдущего изделия. Ясно, что критерий Джонсона устраняет такую возможность. Между тем здесь речь идет не только о сокращении все той же календарной длительности выполнения запланированных работ, но и об оплате наладчиков или станочных рабочих за время наладки и о цеховых расходах, необходимых при наладке. Надо добавить, что последовательность обработки в соответствии с критерием Джонсона, без особых ограничений в модели, о которых сказано в дальнейшем (стр. 439), может привести к чрезмерному росту незавершенного производства перед сборкой и к штурмовщине. Речь идет о единичном и мелкосерийном производстве машин и вообще изделий, состоящих из нескольких деталей. С планом по Джонсону здесь было бы невозможно приступить к сборке или совместной обработке деталей до тех пор, пока не выполнены все детали разных изделий, включенные в тот же план. А это означает увеличение незавершенного производства до объема продукции за весь плановый период и сверх того штурмовщину в конце каждого планового периода (скажем, месяца). В зависимости от заводских условий возможны и другие мотивы при выборе последовательности запуска изделий в обработку, более важные, чем небольшое увеличение межоперационных заделов, иногда возникающее при отказе от критерия Джонсона. Например, при выборе изделий к запуску иногда учитывают фактическую эксплуатационную точность станка, квалификацию рабочего, риск брака (необходимость резерва времени на исправления), габариты изделий (для высвобождения производственной площади и пр.). Как уже говорилось, производственные условия, на которые рассчитан критерий Джонсона («цех, работающий по нарядам»), очень неопределенны, но из сказанного ясно, что далеко не во всех цехах такого рода критерий применим. Когда и где он применим? По-видимому, он пригоден в том маловероятном случае, когда требуется форсировать выпуск какого-либо особо срочного изделия независимо от затрат. Тогда план «по Джонсону» можно составить только на детали такого изделия, а все остальные работы выполняются «в оставшееся время» независимо от потерь. Критерий здесь приобретает реальный смысл, но ничего общего с экономией затрат он не имеет. Что касается обычного хода производства, то формулировать условия его применимости надо с большой осторожностью в соответствии с конкретной обстановкой. Сомнения по поводу критерия в виде календарной длительности не должны обесценить в глазах читателя все те статьи, в которых он принят. Описанные там методы понадобятся при других критериях оптимальности и в условиях более четкой формулировки производственных условий. Переходя к третьему элементу оптимизации календарного плана, к модели, надо сказать, что применительно к критерию Джонсона она описывается в сборнике с помощью трех понятий: 1. Изделие {4}. Во всех случаях подразумевается либо один предмет, последовательно обрабатываемый на нескольких операциях, либо партия изделий (деталей), передаваемая с операции на операцию в полном составе. Таким образом, встречающийся в переводе термин «изделие» при описании моделей производства применяется в несколько обобщенном 438
ii условном смысле. То же слово в иных связях применяется в обычном смысле. 2. Станок (или операция или единица оборудования) {5}. Речь идет о рабочем месте, на которое попадает изделие в ходе выполнения последовательных операций. Оно обладает тем свойством, что на нем одновременно можно обрабатывать только одно изделие (одну партию). Например, сборочный стенд уже не входит в понятие «станок». Но печи в термическом цехе, ванны в цехе покрытий, верстаки и пр.— все это соответствовало бы понятию «станок» как элементу модели производства, если бы в них или на них одновременно обрабатывались только по одному предмету или партия. Изделия и станки в модели связаны последовательностью перехода данного изделия со станка на станок, что является третьим элементом модели. Обычно предполагается, что эта последовательность задана технологически и изменению не подлежит, но она может быть одинаковой для всех изделий (в статье Джонсона) или различаться для них, и это указывается в таблице последовательности станков {6}. Параметрами модели являются длительности обработки каждого изделия на каждом из станков. Эти данные принимаются как точные и неизменные в условиях задачи. Всегда подразумевается, что время переналадок входит в длительность обработки и не зависит от последовательности изделий на данном станке. В отличие от технологической последовательности станков для каждого из изделий организационная последовательность изделий для станков зависит только от планировщика, и ее оптимальный выбор и является существом дела. Однако в статье Стори А. Э. и Вагнера Г. М. предусматривается возможность ограничения в виде сроков готовности изделий в соответствии с договорами и т. д. Мы видели, что условием применимости предлагаемых методов оптимизации плана модель производства включает, помимо действительно часто встречающихся связей, еще и такое требование, как невозможность обработки нескольких изделий на одном станке (операции) одновременно или (что для данной модели имеет тот же смысл) жесткое закрепление деталей и операций за станками. Но как раз в условиях единичного и мелкосерийного производства (применяя этот термин в любом смысле) обычно имеется дублирующее оборудование с возможностью для мастера или диспетчера выбора обрабатываемых деталей для каждого из станков. Как и при каких условиях можно обойти это затруднение, в сборнике не указано, но ясно, что оно существенно ограничивает применимость модели. Четвертый элемент оптимизации планов — математические методы в связи с задачей Джонсона в сборнике представлены пятью способами: а) оригинальным методом Джонсона; б) полным перебором; в) выборочным методом со случайным ненаправленным отбором с применением процедуры Монте- Карло; г) то же с направленным отбором в соответствии с кибернетической схемой самообучающейся машины и д) целочисленным программированием. Метод Джонсона, получивший широкую известность и послуживший толчком к многочисленным попыткам того же рода, к сожалению, действительно пригоден только в отношении модели без ограничений по срокам готовности изделий и только в случае двух операций. Поэтому в настоящее время считают, что соответствующий алгоритм не имеет практического значения. Наши сомнения по поводу целесообразности работы над оптимизацией с критерием Джонсона мы высказали выше. Математические средства, введенные Джонсоном, элементарны и изложены с предельной четкостью. Целочисленному программированию в сборнике уделено много внимания и не напрасно, так как именно оно позволяет предусмотреть дополнительные ограничения в модели, выводя всю проблему из того тупика, в который она попала в связи с критерием оптимальности Джонсона. При переводе статей самого Гомори, основоположника целочисленного программирования, и статьи Стори и Вагнера, описывающих экспериментальное применение этого способа к оптимизации календарного плана, возлик вопрос о русской терминологии, 439
так как, несмотря на обилие изданий по линейному программированию, терминология здесь не унифицирована и не упорядочена. Мы подошли к решению этого вопроса утилитарно, приняв терминологию по наиболее полному руководству с наибольшим тиражом и с наиболее свежей датой издания. Этим руководством является книга Юдина Д. Б. и Гольштейна Е. Г. [12]. Но, к сожалению, в этом руководстве целочисленное программирование не изложено и вдобавок некоторые технические подробности при записи матрицы не совпадают с принятыми у Гомори. Поэтому для ознакомления с методом следует назвать еще книгу Зуховицкого С. И. и Авдеевой Л. И. [7], где имеются главы с подробным изложением результатов ранних работ Гомори, а запись матрицы совпадает с принятой в сборнике. Но особенно рекомендуется перевод книги Гейла Д. [6], где в популярной форме изложены основы целочисленного программирования и на стр. 167 дано подробное разъяснение термина «лексиграфически», применяемого Гомори и могущего вызвать некоторые затруднения у читателей, знакомых с этим термином лишь по обычным определениям в учебниках алгебры. Переходя от темы оптимизации оперативно-календарных планов (задачи Джонсона) к второй по месту в сборнике теме — оптимизации правил приоритетов, необходимо предварительно сделать несколько разъяснений по поводу самой постановки вопроса. Если говорить с производственной точки зрения, тема относится к области текущего распределения работ. Конвей и Максвелл довольно подробно останавливаются на этом понятии и исходят из того, что распределение работ {7} как организационная функция является заключительной стадией процесса календарного планирования производства. Она соответствует, по их мнению, окончательному решению, предшествующему непосредственному действию (запуску в производство того или иного изделия на освободившемся станке), когда производится «просмотр в последнюю минуту» накопившейся дополнительно информации. Предполагается* что правильно составленный календарный план должен обеспечить возможность использования этой «нарастающей информации» для корректирующих решений в ходе текущего распределения работ. Однако надо прямо сказать, что в основном правильное определение Конвея несколько более конкретно,, чем это соответствовало бы довольно разнообразным подходам к вопросу у авторов сборника. Только в редких случаях, рассматривая распределения работ, авторы сборника вспоминают, что оно является заключительной стадией планирования, и Конвей и Максвелл не являются здесь исключением. Читатель должен также учесть, что в сборнике распределение работ рассмотрено лишь для таких моделей производства, при которых эта функция реализуется частично и очень узко. По существу, она сведена к установлению очередности среди изделий, ожидающих обработки у данного станка. Особенность постановки вопроса в сборнике (кроме статей Рейница) заключается еще в том, что решения, принимаемые диспетчером, или мастером, или самим рабочим, осуществляющим функцию распределения работ в указанном смысле, подчинены «правилам приоритетов». Правило приоритетов — центральное понятие темы, и мы остановимся на нем подробнее. Правила приоритетов относятся к числу элементарных эвристических правил. Здесь, кроме тех разъяснений, которые даны во введении к американскому изданию сборника (стр. 17), можно сослаться еще на справку Старра [24]. Слово «эвристически» заимствовано у греков («эурискейн»— делать открытия; напомним известное выражение «эврика!»). Термин был применен в 1958 году Саймоном и Ньюлом [22] для обозначения определенного подхода к решению задач и принятию решений. ELoxhobhom & эвристических моделях используются логика и здравый смысл, накопленный в результате личного опыта. Сущность эвристического подхода заключается в том* что в задачу вводятся в готовом виде отобранные частные решения и способы* применяемые в повседневной практике, в результате чего задача упрощается. В рассматриваемых статьях сборника как раз и стоит вопрос об отборе простейших эвристических правил распределения работ. 440
«Приоритет» {10} в сборнике — это тот из различных количественных признаков каждого изделия, по которому определяется первоочередное изделие из числа ожидающих обработки в момент освобождения станка. Первоочередным является изделие с минимальным значением приоритета (если не оговорено противоположное). В широком смысле под приоритетом подразумевается преимущество изделия сравнительно с другими, ожидающими в очереди, причем это преимущество может определяться не только количественным признаком. Правило приоритетов {11} по сути дела фиксирует выбор «приоритета» как одного из совокупности количественных признаков изделия. Например, знаменитое «правило кратчайшей операции» сводится к тому, что таким признаком является длительность операции на данном станке. Но для диспетчера такое правило является инструкцией, которой он должен неизменно и всегда придерживаться, какая бы конкретная ситуация ни возникла в данный момент на данном станке. Например, если в цехе действует правило кратчайшей операции {12}, диспетчер (рабочий, мастер) обязан выбрать из числа ожидающих у станка изделие с наименьшей длительностью обработки, если даже он знает, что первоочередный запуск другого изделия предотвратит простой на каком-либо станке. Не исключается комбинация правил приоритетов, в частности и такая, при которой обрабатываются в первую очередь детали для предотвращения простоя на следующем станке, а если такой опасности нет, то вступает в силу другое правило приоритетов. Но уже вне рамок такой комбинации никакие решения диспетчера не допускаются. Здесь условность подхода, которая дает основание говорить, что распределение работ, рассматриваемое в сборнике, по сути является частью очень упрощенной модели производства. Это не снижает методической поучительности статей сборника, так как число возможных вариантов выбора правил приоритетов и их комбинаций практически не ограничено, а описанные методы исследования универсальны. Таков производственный смысл специфических понятий, введенных в связи с темой оптимизации правил приоритетов. Что касается общих понятий оптимизации производственных решений, то они конкретизированы для этой темы следующим образом. Типовые организационно-производственные условия, к которым относятся статьи, как правило, характеризуются тем же неопределенным термином «цех, работающий по нарядам» («единичное и мелкосерийное производство»), с которым мы уже столкнулись в связи с задачей Джонсона. Но в отдельных статьях мы встречаемся с далеко идущей конкретизацией производственных условий. Например, в статье Аллена указан типичный механический цех завода единичного и мелкосерийного производства, в статье Хоулта подчеркивается многономенклатурность производства и большое число единиц оборудования. Во избежание недоразумений надо еще отметить в этой связи условные наименования, примененные Конвеем и Максвеллом, а за ними и еще некоторыми авторами. Они различают цех с чисто единичным и мелкосерийным производством {13} и цех «поточный». Разница между ними заключается в том, что во втором случае технологические маршруты всех изделий одинаковы и с данного станка изделия передаются только на один и тот же станок. В первом случае технологические маршруты изделий различаются, причем так, что в среднем с данного станка на каждый из остальных станков передается одинаковое количество изделий. Но в «поточном цехе» изделия эти различные, и речь идет опять-таки о единичном производстве. Переходя к критерию оптимальности, мы находим у авторов, занимавшихся оптимизацией правил приоритетов, большое разнообразие вариантов (в отличие от критериев при оптимизации календарного плана, когда выбор был скован возможностями математического метода). В частности, мы встречаемся, и довольно часто, с уже известным нам критерием Джонсона — минимальной календарной длительностью выполнения запланированных работ. Хоулт (стр. 109) ориентируется на критерий оптимальности в виде 441
-«функции затрат» {14}, куда входят затраты на содержание незавершенного производства и «пеня» за опоздание поставок. Здесь следует условиться ю терминах «расходы или издержки на содержание запасов» и «пеня». Первый из них соответствует сумме затрат, зависящих от рбъема запасов, их цены и от некоторых физических и коммерческих их свойств. Обычно сюда входят процент на задолженные средства, складские расходы, при надобности — потери в связи с порчей, обветшанием при хранении и потери из-за устаревания моделей. Под «пеней» подразумевается не только пеня («штраф») в узком смысле, предусмотренная договорами за невыполнение обусловленных сроков поставки, но и вообще всякого рода потери, вызванные запозданием изготовления изделий сравнительно с нормативными датами. Например, речь идет о потерях при простоях станков или сборки при запаздывании заготовок или деталей, о возможном материальном ущербе из-за ухудшения репутации фирмы о чрезвычайных транспортных расходах при срочной доставке недостающих полуфабрикатов или товаров и т. д. Вместо термина «пеня» иногда применяется термин «потери из-за дефицита». В главе Рейница в функцию затрат сверх названных включена стоимость переналадок оборудования. В эти затраты иногда включают только расходы по настройке станка, иногда сверх того — конторские расходы по запуску нового изделия, иногда принимается в расчет возможная экономия в результате использования настроек, остающихся от предыдущих изделий (как у Рейница), иногда такая возможность не рассматривается. Наряду с названными распространенными критериями в сборнике описаны и такие, как средняя длительность производственного цикла (то есть промежуток календарного времени между запуском изделия в производство и его выпуском в готовом виде), а также среднее число изделий в производстве, средняя длительность ожидания в очередях, среднее опоздание выпуска изделия сравнительно с нормативными сроками. (Все эти критерии находим в главе Конвея и Максвелла). В статье Аллена встречаются совсем специальные критерии. Автор выбирает лучшее правило приоритетов применительно к условиям свертывания производства, и соответственно критериями эффективности выставлены процент использования рабочего времени и продолжительность ликвидационного промежутка (в течение которого завершается обработка всех изделий и рабочая сила полностью освобождается для иных применений). Здесь нет надобности останавливаться на каждом из этих критериев {хотя и не все они убедительны), так как в отличие от критерия Джонсона ни один из них не связан с принципиальной постановкой вопроса, а имеет более или менее ограниченное и обусловленное применение. Все критерии оптимальности в теме оптимизации правил распределения работ имеют одно кардинальное отличие. Это отличие заключается в том, что соответствующие им функции являются либо математическими ожидания* ми случайных переменных, либо функциями математических ожиданий. Здесь мы подходим к основной особенности темы, прежде всего связанной с моделями, применяемыми в ней. Рассмотрим теперь модель, построенную для оптимизации правил приоритетов. Если при оптимизации календарного плана речь идет всякий раз о кон* кретной совокупности работ, то при выборе на длительный срок оптимального правила распределения вопрос может стоять лишь об эффективности этого правила «в среднем» применительно к разнообразным последовательным состояниям производства (как системы), возникающим с постоянными вероятностями. Поэтому модель производства в данном случае должна быть вероятностной и динамической (многошаговой). Вероятностное свойство модели заключается в том, что ее параметры (в рассматриваемом случае — длительности обработки на станках и другие признаки изделий) являются случайными переменными. Это мы и находим во всех рассматриваемых главах. Что касается динамичности (многошаговости), то во всех статьях, кроме статьи Рейница, это свойство системы определяется непрекращающимся входным 442
потоком изделий, поступающих в цех, и последовательностями обработки на станках. В статье Рейница динамика производства как системы определяется матрицей вероятностей переходов из одного состояния в другое, в основе которой, однако, лежит все тот же входной поток. Если говорить о главах, в которых решается вопрос оценки правил приоритетов как эвристических правил распределения работ, то модель производства в них состоит как бы из двух частей —«постоянной» и «переменной». Постоянная часть включает входной поток деталей и технологические маршруты. По традиции теории массового обслуживания входной поток считают Пуассоновским. Предполагается, что длительности обработки изделий на отдельных станках подчинены неизменному закону распределения (обычно — показательное распределение, реже — по отчетным данным завода). Система принимается в установившемся состоянии (режиме), кроме главы Аллена, в которой как раз рассматривается свертывание производства. Технологические маршруты либо устанавливаются одинаковыми для всех изделий (так называемый «поточный цех»), либо определяются матрицей вероятностей переходов изделий со станка на станок. Основные понятия системы —«изделие» и «станок»— те же, что и при оптимизации календарного плана (см. выше). Переменной частью модели являются поочередно исследуемые правила приоритетов, снимающие неопределенность в постоянной части модели в тех случаях, когда несколько изделий ожидает обработки перед одним и тем же станком. В сборнике рассмотрено большое число правил приоритетов и их комбинаций, причем наименования их и мнемонические обозначения неустойчивы. В переводе сделано все, чтобы предотвратить возможность недоразумений — названия одинаковых правил унифицированы, мнемонические обозначения расшифрованы. Нам думается, что в главах сборника выбор правил приоритетов и их комбинаций для исследования далеко не всегда убедителен и далеко не со всеми выводами, особенно Конвея и Максвелла (кстати сказать, авторов многочисленных и интересных исследований в данной области), можно согласиться. Но здесь не место для дискуссии по вопросам, допускающим различные мнения. Что касается математического метода при выборе оптимального правила приоритетов, то в главе Рейница в основном использован математический аппарат, обычный в теории массового обслуживания. Здесь требуется от читателя относительно серьезная подготовка, в частности хорошее знакомство с теорией массового обслуживания. Для этой цели можно рекомендовать [5], [8], [11]. В работах по выбору правил приоритетов преимущественным способом решения вопроса является математическое моделирование с применением процедуры Монте-Карло. Математическое, вернее, статистическое моделирование является очень универсальным, современным и практичным способом приближенных вычислений, прокладывающим за последние годы все более широкую дорогу. В рамках этой статьи нет возможности и, пожалуй, надобности останавливаться на нем сколько-нибудь подробно. Читателей, которым потребуется первое ознакомление с ним, адресуем к сборнику [10] стр. 111 и к руководству [3]. Объем вычислительной работы при математическом (статистическом) моделировании зависит •от заданной точности искомых оценок и дисперсии входных распределений. Этот объем обычно выясняется в ходе эксперимента, но, во всяком случае, доступен даже не для очень современных электронно-вычислительных машин. На этом мы закончим справки по поводу наиболее существенных понятий, связанных с основными темами сборника, и добавим сюда несколько кратких замечаний по поводу остальных тем. В двух важных главах рассматривается уже упоминавшаяся очень старая задача на определение оптимальной так называемой «экономичной» партии запуска изделий в производство (см. вступительную статью, стр. 5) {15}. Но на этот раз вопрос усложнен тем, что в условия вводятся общие ограничения, связанные с выбором оптимальных вариантов производственных 443
решений в масштабе завода (а не только в рамках изделия данного наименования, как это делается при расчете оптимальной партии). Задача возникает в условиях массового и крупносерийного производства как в отношении деталей и полуфабрикатов, так ^и в отношении готовых изделий при условии возможности их хранения в 'запасе. Предполагается, что на каждом станке детали (изделия) обрабатываются партионно и потребление выпущенной партии готовых деталей или изделий протекает равномерно» со случайными колебаниями. Наиболее прозрачным случаем такого рода является партионная обработка деталей в механическом цехе завода массового машиностроения. Критерием оптимальности служит сумма затрат. В «классическом» случае расчета оптимальной партии она включает затраты на переналадку и на- содержание запасов (об этих понятиях сказано выше). Но в главе Вин- терса П. Р. (стр. 142) в нее входят: а) затраты на содержание запасов и б) пени; в главе Дзелинского Б. П., Бейкера К. Т., Мэна А. Сг— она состоит из затрат на переналадки, затрат на содержание запасов, потерь из-за дефицита (собственно, та же пеня), нормальной и сверхурочной заработной платы, расходов по приему и увольнению рабочих. В связи с критерием оптимальности в этой статье требуют пояснений два взаимосвязанных термина: «планируемый период» {16} и «дисконтированные затраты». Эти термины относятся к «теории решений» и в настоящее время в США истолковываются следующим образом. Длительность состоящего из нескольких «плановых периодов» «планируемого промежутка времени» указывает, «насколько далеко вперед думает и планирует лицо, принимающее решение», см. [24], стр. 133. Термин «дисконт» очень старый и означает, вообще говоря, скидку с суммы предстоящего платежа с учетом срока последнего (в связи с начислением процента на капитал). В современной теории решений [24] дисконт в основном предусматривается при сравнении между капиталовложениями, совершаемыми в настоящий момент времени, и потоком меньших платежей на протяжении некоторого периода (или соответственно денежных поступлений) с учетом процента на капитал. В сборнике приводятся формулы дисконта с приближенным выражением сложного процента с помощью показательной функции. В остальном смысл критерия оптимальности и его слагаемых достаточно ясен. Переходя к моделям в задачах по оптимизации партии запуска изделий в производство, следует сказать, что одна из них (рассматриваемая в обеих статьях) соответствует так называемой «двухбункерной» схеме хранения запасов. Предполагается, что партия деталей запускается в производство (вообще «повторяется заказ» на данное изделие) тогда, когда остаток запасов опускается до критического уровня, именуемого «точкой повторения заказов». Этот минимальный запас должен соответствовать потребности на «время отставания» фактической поставки заказанных изделий от момента заказа с добавлением «страховой надбавки» на покрытие случайных колебаний потребности или длительности времени отставания. Заказывается «оптимальная экономичная» партия {14}. Подробней с терминологией и основными идеями математической теории запасов можно ознакомиться по статьям в [10] и по руководству [4]. Вторая модель, исследованная в статье Дзелинского Б. П., Бейкера К. Т. и Мэна А. С, описана ими достаточно полно, но несколько слов надо сказать о возникшем там термине «подкомплект деталей» {18}. Это, собственно, не термин, а условное название, примененное в рамках отдельного исследования. Речь идет о совокупности деталей, образованной, во-первых, так* чтобы все они входили в комплект для определенного изделия, во-вторых, эти детали должны иметь совпадающие технологические маршруты. При этих условиях с такой совокупностью можно при планировании «обращаться» как с одной деталью. В обеих статьях на тему определения оптимальной партии в условиях общих ограничений математический аппарат очень несложен и не требует 444
никаких комментариев. Зато в статье Дзилинского и др. предлагаемый метод предполагает огромный объем вычислительной работы (задача решается линейным программированием), и для доведения этого объема до уровня выполнимых масштабов требуется такое упрощение условий задачи, которое, в сущности, выхолащивает ее существо. Прочие статьи сборника не требуют таких подробных справок, какими мы занимались до сих пор. Но в них встречаются два особых понятия, которые могут быть истолкованы превратно. Речь идет о «маргинальных затратах» (расходах) {19} и о «решении» с точки зрения научного управления. Возьмем понятие «маргинальные затраты» применительно к схеме Эрроу— Карлина [стр. 435]. Предположим, что в распоряжении лица, принимающего решение, имеется только одна переменная X, от которой зависят расходы У Рассмотрим вопрос о темпе изменения расходов У при заданном значении X = Х0. Если независимая переменная X целочисленна, то темп изменения расходов У характеризуется приращением их АУ при увеличении значения Х0 еще на одну единицу. Это приращение ДУ называется «маргинальными затратами» (расходами). Оно является, таким образом, суммой дополнительных расходов, возникающих из-за того, что независимая переменная X, находящаяся в распоряжении лица, принимающего решение, увеличивается еще на одну как бы последнюю, или «крайнюю» (marginal), единицу — крайнюю в ряду тех единиц, на которые перед этим последовательно увеличивалась переменная X, пока не достигла данного значения Х0. Если независимая переменная X непрерывна, маргинальным затратам соответствует первая производная расходов У по X. В американской литературе нередко можно встретить указание на особое свойство маргинальных затрат при оптимизации значения независимой переменной. Если «целевая функция» F (X) в схеме Эрроу — Карлина является суммой двух видов затрат У± и У2, причем затраты первого вида растут, а второго — падают при увеличении их общего целочисленного аргумента X и если при последовательном увеличении X достигается наконец такое его значение Х0, когда маргинальные затраты AFi и АУ2 равны по абсолютной величине, то именно при этом значении целевая функция F (X) минимальна, a Xq является оптимальным значением X. Иногда говорят, что при оптимальном значении независимой переменной X наступает «равновесие» маргинальных затрат. Описанное свойство маргинальных затрат приводит к способу определения оптимума путем отыскания условий «равновесия». Однако не следует думать, что здесь мы имеем дело с экономической «находкой» в связи с понятием маргинальных затрат. Обращаясь к случаю непрерывной независимой переменной X, мы немедленно обнаруживаем, что «равновесие маргинальных . dF(X) затрат»— это не что иное, как равенство нулю первой произвольной * ' суммарной функции затрат, а это, как известно, является условием ее экстремума и, следовательно, условием искомой оптимальности независимой переменной X. Таким образом, правило «равновесия» маргинальных затрат является не более, как арифметической интерпретацией факта, хорошо известного из анализа. Во многих статьях сборника, особенно в [1], встречается термин «принятие решения» с тем специфическим смыслом, который ему придается в исследовании операций или в науке об управлении. Нельзя сказать, что в сборнике этот термин всегда используется уместно и всегда вполне одинаково, тем не менее текст, в котором он встречается, станет ясней, если принять во внимание следующее: Пестрый конгломерат очень различных и применяемых по очень различным поводам методик, составляющий «исследование операций», довольно непрочно цементируется немногочисленными понятиями и идеями. Среди таких понятий первое место занимает «принятие решения». Собственно, существо «исследования операций» заключается именно в том, что вместо 445
интуитивных, глазомерных решений принимаются расчетные, объективна («научно») обоснованные решения. В узком смысле и формально понятие «принятие решения» определяется, как выбор между возможными «стратегиями». Стратегиями применительно- к промышленности именуются чаще всего варианты плана (Старр даже ставит знак равенства между стратегией и планом). Но стратегиями могут быть варианты конструкции, принципы построения плана, уровни цен и пр. Приведенное формальное определение «принятие решения» неполно, так как. это понятие является центром широко распространенной и модной системы идей, возникшей в рамках «исследования операций» и получившей название «теории принятия решений». С точки зрения этой теории «принятие решения»* приводит к выбору единственной из возможных стратегий, выраженных при помощи «контролируемых» (в смысле «управляемых») переменных. Решение принимается на основании информации трех видов: а) о состояниях объективных условий («состояниях природы»), определяемых неконтролируемыми? переменными, б) о результатах (отдаче), наблюдавшихся (предполагаемых! в случаях, когда данная стратегия применяется при определенном состояния объективных условий, в) предположения (прогноза) в отношении вероятностей состояний объективных условий. Решение принимается с помощью «критерия выбора», определяющего путь использования перечисленных выше оснований (информации) для выбора стратегии. Для выбора математических средств, привлекаемых для принятия решения, особое значение имеют вероятности состояний объективных условий. Если вообще возможно единственное состояние и, следовательно, его вероятность равна единице, мы имеем дело с решениями в определенных (детерминированных) условиях. Этому классу решений соответствуют такие математические средства, как линейное программирование, определение экстремумов средствами анализа и пр. Если возможны несколько состояний объективных условий с известными вероятностями, говорят о «решениях с риском» или о статистических решениях. В этом случае используется арсенал теории вероятностей и математической статистики, например вероятностная экстраполяция временных рядов, статистическое моделирование и др. Если возможны различные состояния объективных условий, но вероятности их не известны, налица «решение в условиях неопределенности», и применяется теория игр. С теорией принятия решений можно ознакомиться в [24] и др. В связи с затронутыми вопросами полезно привести здесь дельное замечание Старра: «Очень важно следующее предостережение. Мы можем применить линейное программирование или иную исследовательскую методику, предполагающую возможность единственного состояния объективных условий, лишь тогда, когда это предположение действительно правильно. Если существует распределение вероятностей, но игнорируется^ если математические ожидания величин принимаются как единственно возможные результаты применения стратегии, тогда следует ожидать большого» искажения системы. Нас не убеждает тот факт, что некоторые компании, не принимают во внимание этого предостережения. В действительности, если предположение о единственности состояния объективных условий неправильно, то примененные толковым планировщиком графики Гантта дадут лучший ответ, чем некоторые формальные математические методы. Если предположение о единственности возможного состояния системы притягивает, «срезая углы», игнорируя или проглядев дисперсивность, свойственную системе, полученные выводы внушают очень мало доверия». Осталось добавить несколько слов о последней части сборника, содержащей краткое изложение методики анализа сетевых графиков при планировании сложных неповторяющихся работ. Эта методика известна под различными обозначениями и в нескольких вариантах PERT, CPM, PRISM,. PEP, IMPACT, SCANS. Разница между вариантами несущественна и возникает в связи с особенностями области применения. Общая, обязательная: и основная часть всех этих вариантов заключается в центральной роли «кри- 446
тического пути», то есть той из числа возникающих обязательных последовательностей работ или мероприятий, для которой требуется наибольшее календарное время. Вот почему в настоящее время в США все разновидности сетевого графика иногда именуют СРМ — Critical path method «метод критического пути» (хотя более распространенным названием пока остается PERT). Сетевые графики не являются средством оптимизации плана, но ставят сходную задачу его некоторого улучшения в смысле сокращения календарной длительности выполнения, удешевления работ и повышения оборачиваемости вкладываемых средств. Распространенная методика сетевых графиков элементарна, и, вероятно, о ней не говорили бы как о существенном и оригинальном способе улучшения планов, если бы не то обстоятельство, что подавляющая громоздкость развернутого анализа особо сложных современных проектов не привела к необходимости в некоторой очень простой, но строгой системе сопоставлений, поддающейся программированию для ЭВМ. На русском языке насчитывается немало брошюр и статей по сетевому графику (но преимущественно типа ознакомительных обзоров или ведомственных инструкций). Поэтому главы сборника по сетевому графику для части читателей будут интересны только в деталях, но те, кто еще не знаком с этой методикой, найдут в сборнике ясное и краткое ее изложение. Так как вопрос достаточно прост и не связан с такими новыми понятиями, которые не разъяснялись бы тут же в сборнике, мы ограничимся сделанными замечаниями. В. ГоЛОВиНСКий:
ТЕРМИНОЛОГИЧЕСКИЕ ПРИМЕЧАНИЯ 1. Термин «исследование операций» (operations research) появился не ранее 1940 г. в связи с работами ученых разных специальностей, привлеченных в США и в Англии к вопросам организации снабжения вооруженных сил и к вопросам непосредственно стратегического характера в ходе второй мировой войны. Успех «исследования операций» в военном деле привел к распространению тех же методических принципов на задачи, возникающие в промышленности. Но, как пишет Старр в 1964 г. [24], «это была работа, которую на заре XX века начали Тейлор, Гантт и Гилбрет. Соответственно термин «исследованиеопераций», сточки зрения специалистов-производственников, в данном случае оказался неуместным и непригодным. Антипатия к этому термину привела к появлению нового обозначения того же понятия, а именно management science —«наука об управлении». 2. В оригинале job shop (job — наряд, задание, shop — цех). Ни в научной, ни в практической терминологии на русском языке нет термина, эквивалентного «цеху, работающему по нарядам». Следуя глоссарию Комитета стандартизации Американского общества инженеров-механиков в сборнике job shop переведен как «цех единичного и мелкосерийного производства». 3. Критерию, иногда именуемому «критерием Джонсона», соответствует несколько терминов, в частности (minimal) elapsed time; total schedule time; schedule completion time; schedule span. Все эти термины переведены как «календарная продолжительность выполнения плана». 4. Понятию «изделие» в смысле элемента модели в статьях сборника соответствуют разные термины: job в смысле работа или задание, task в смысле задание, item в смысле объект обработки, product — продукция определенного вида, commodity — товар и др. 5. Понятию «станок» в смысле элемента модели в статьях соответствуют machine — станок, facility—единица производственного оборудования, stage— стадия обработки, operation—операция. Всюду переведено «станок», или единица оборудования, кроме статьи Джонсона, где применен термин «операция», так как иначе потребовалось бы редакционное изменение текста. 6. Таблица последовательности станков в оригинале — facility ordering matrix. 7. Распределению работы в сборнике соответствуют термины: dispatching function; machine loading. 8. В оригинале last minute review. 9. В оригинале increasing information. 10. В оригинале priority. По поводу перевода этого термина возник ряд сомнений и разнотолкований. Сам Конвей в других статьях употребляет термин «приоритет» не только в смысле количественного признака, но любого признака, указывающего на положение изделия в очереди. С другой стороны, он оговаривается, что есть приоритеты с максимальным первоочередным значением. Наконец, английское слово priority в данном случае эквивалентно не русскому «приоритет», а русскому «порядок очередности» и следовало бы говорить об «индексе очередности» (так это и сделано в [10]). К сожалению, термин «приоритет» уже довольно широко распространен в советской периодике, с другой стороны, исправление непоследовательностей термино- 448
логии сборника завело бы нас слишком далеко. Поэтому мы оставили терминологию сборника без изменения и в переводе пользуемся термином «приоритет» и в количественном, и в общем смысле, надеясь, что читатель будет иметь в виду изложенные замечания. 11. Priority rule. «Правило приоритетов» в трактовке сборника обычно эквивалентно «дисциплине очереди» теории массового обслуживания, и эти термины нередко встречаются как синонимы. Здесь надо сказать, что в сборнике широко применяется терминология теории массового обслуживания, но, если не считать статьи Рейница и до некоторой степени статьи Джексона, все заимствования из этой теории на этом и кончаются. Мало того. Термины теории массового обслуживания частично применяются параллельно с производственными наименованиями, иногда граничащими с жаргоном. В результате читатель сталкивается с очень своеобразным смешением математической и производственной терминологии. Прежде всего возник вопрос — не следует ли скорректировать терминологию сборника, ориентируясь исключительно на традиции теории массового обслуживания? Мы решили этот вопрос отрицательно, так как в противном случае появились бы нелепые словосочетания и потребовалась бы редакционная переработка текста.Второй вопрос — какую русскую терминологию теории массового обслуживания следует положить в основу? Мы решили воспользоваться терминологией Хинчина — Гнеденко, использованной также в учебнике Вентцель [5], причем нами сделаны несущественные отступления, о которых сказано в примечаниях. Терминология в переводе руководства Кофмана и Крюона [8] несколько отличается от упомянутой и сама по себе не встречает возражений, но увеличивает число вариантов терминов. С другой стороны, первое знакомство с теорией массового обслуживания, вероятно, лучше всего начать с гл. 19 учебника Е. С. Вентцель уже потому, что эта глава опирается на изложенный рядом курс теории вероятностей (что для первого знакомства очень важно). Вот почему там, где в американском издании применялась терминология теории массового обслуживания, мы переводили ее в соответствии с этим руководством. В данной главе никакие разъяснения такого рода терминов не приводятся, а в затруднительных случаях читатель может прямо обратиться к книге Вентцель. 12. Правило кратчайшей операции shortest operation rule. 13. Pure job shop и flow shop. 14. Функция затрат — cost function. 15. «Оптимальная» или «экономичная партия» обозначается economic order quantity и сокращенно—EOQ. 16. Planning horizon. В нашем словоупотреблении такое понятие связано с перспективным планом, и, если выбирать наиболее близкий образ, соответствующий американскому «горизонту», следовало бы применить слово «перспектива». Поэтому, противопоставляя весь промежуток времени, охваченный планом, составляющим этот промежуток отдельным плановым периодам (planning period), мы не решились использовать на русском языке термин «горизонт» и ограничились условным термином для частного случая («планируемый промежуток»). 17. В оригинале «точке повторения заказа» соответствуют термины reorder point, trigger level, времени отставания поставки от заказа lead time, страховой надбавке safety stock allovance, buffer. 18. В оригинале — aggregate part. Из числа многочисленных вариантов перевода на русский язык был выбран «подкомплект деталей», так как он связан с наименьшим риском недоразумений. Конечно, необходимо иметь в виду условность принятого названия. 19. Маргинальные затраты — marginal costs. Встречающийся перевод «предельные затраты» неправилен и по общему смыслу и формально, вдобавок подвержен ложнотолкованиям в смысле «лимитированных расходов» или в духе апологетической «теории предельной полезности» в политической экономии. В. Головинский /4 29 Заказ № 195
Литература К введению 1. Bowman E. H., The Schedule Sequence Problem, Operations Research, 7, 1959, p. 621—624. 2. Fischer H. and Thompson G. L., Probabilistic Learning Combinations of Local Job-Shop Scheduling Rules, Ch. 5. 3. Gere W., A Heuristic Approach to Job-Shop Scheduling, Ph. D. Thesis, Carnegie Institute of' Technology, 1962. 4. G i f f 1 e r B. and Thompson G. L., Algorithms for Solving Production Scheduling Problems, Operations Research, 8, 1960, p. 487—503. 5. G i f f 1 e г В., T h о m p s о n G. L. and Van Ness V. Numerical Experience with the Linear and Monte-Carlo Algorithms for Solving Production Scheduling Problems, (ui. 3 данной книги). 6. H e 1 1 e r J. and Logemann G.,An Algorithm for ther|Construction and Evaluation of Feasible Schedules, Management Science, 8, 1962, p. 168— 183. 7. Heller J., Some Problems in Linear Graph Theory that Arise in the Analysis of the Sequence of Jobs Through Machines, AEC Research and Development Report NYO — 9487, 1960. 8. M a n n e A. S., On the Job-Shop Scheduling Problem, Operations Research, 8, 1960, p. 219—223. 9. S i s s о n R. L., Sequence Theory, Ch. 7 of Ackoff R. L. (ed.) Progress in Operations Research, Vol. 1, New York: John Wiley and Sons, Inc., 1961. 10. T h о m p s о n G. L., Recent Developments in the Job-Shop Scheduling Problem, Naeal Logistic Research Quarterly, 1960, p. 585—589. 11. Tonge F. M., Summary of a Heuristic Line Balancing Procedure, Management Science, 7, 1960, p. 21—39. 12. Wagner H. M., An Integer Linear-Programming Model for Machine Shop Scheduling, Naval Logistics Research Quarterly, 6, 1959, p. 131—140. К части I 1. J а с k s о n J. R., An Extension of Johnson's Results on Job Lot Scheduling, Naval Research Logistics Quarterly, 3, 1956, p. 201—203. 2. Johnson S. M., Discussion, Management Science, 5, 1959, p. 299—303. 3. Mitten L. G., Sequencing n Jobs on Two Machines with Arbitrary Time Lags, Management Science, 5, 1959, p. 293—298. 450
4, Morse P. M., Quenes, Inventories and Maintenance, New York, John Wiley and Sons, Inc., 1958. 5. S a a t у Т. L., Elements of Queuing Theory with Applications New York, McGraw-Hill Book Company, Inc., 1961. К главе З 1. G i f f 1 e r B. and Thompson G. L., Algorithms for Solving Production Scheduling Problems, Operations Research, 8, 1960, p. 487—503. 2. Fischer H. and Thompson G. L., Probabilistic Learning Combinations of Jocal Job-Shop Scheduling Rules (гл. 15 данной книги). К главе 4 1. G i f f 1 e г В., Mathematical Solution of Production Planning and Scheduling Problems, IBM ASDD Technical Report (October 1960). 2. G i f f 1 e г В., Production Control Formalizations Suitable for Electronic Data Processing, IBM Research Report RC-20 (May 1957). 3. G i f f 1 e г В., SIMPRO I: An IBM 704—7090 Simulation Program for Planning, Scheduling and Monitoring Production Systems, IBM ASDD Technical Report (December 1961). 4. К e 1 1 e у J. E. (младший), Critical-Path Planning and Scheduling: Mathematical Basis, Operations Research (May 1961). 5. G i f f 1 e r B. and Thompson G. L., Algorithms for Solving Production Scheduling Problems, Operations Research (July 1960). К главе 5 1. S i s s о n R. L., Methods of Sequencing in Job-Shops — A Review, Journal of the Operations Research Society of America, 7, 1, 1959. 2. Nelson R. T. An Empirical Study of Arrival, Service Time and Waiting Time Distributions of a Job-Shop Production Process, Management Sciences Research Project Research Report № 60, University of California, Los Angeles, 1959. 3. F r i e n d J. K., Two Studies in Airport Congestion, Operations Research, 9, 3, 1958. 4. Notes on Operations Research, Cambridge, Mass.: The Technology Press of Massachusetts Institute of Technology, Ch. 4, 1959. 5. Howard R. A., Dynamic Programming and Markov Processes, Cambridge, Mass.: The Technology Press of Massachusetts Institute of Technology, 1960. 6. Bellman R., Dynamic Programming Princeton, N.J.: Princeton University Press, 1957. 7. Feller W., An Introduction to Probability Theory and its Applications, 2nd ed. New York: John Wiley and Sons, Ch. II, Section 5, 1957 (есть русский перевод: В. Ф е л л е р, Введение в теорию вероятностей и ее приложение, Издательство «Мир», М., 1964). 8. Cramer H., Mathematical, Methods of Statistics, Princeton N. J.: Princeton University Press, Ch. XV, 1954. 29* 451
9. R e i n i t z R. C, An Integrated Job-Shop Scheduling Problem (Ph. D. thesis, Case Institute of Technology, Cleveland, Ohio, 1961), Ch. 5. К главе 6 1. Jackson J. R. Net works of Waiting Lines, Operations Research, 1957, p. 201—203. 2. С о n w а у R. W. and Network Dispatching by the Shortest-Operation Discipline, Operations Research, 10 (January — February 1962), p. 51 — 73 (гл. 17 данной книги). 3. Jackson J. R., Queues with Dynamic Priority Discipline, Management Science, 8 (October 1961), p. 18—34 (гл. 19 данной книги). К главе 8 1. Holt С. С, М о d i g 1 i a n i F., M u t h J. F. and S i m о n H. A., Planning Production, Inventories and Workforce, Englewood Cliffs, N.J.: Prentice-Hall, Inc., 1960. 2. W i n t e r s P. R., Inventory Control in a Multiple Warehouse .System, GSIA, Carnegie Institute of Technology, 1958. 3. S с h i 1 d A., On Inventory, Production and Eployment Scheduling, Management Science, January 1959. К главе 9 1. Manne A. S., Programming of Economic Lot Sizes, Management Science, 4, 2 1958, p. 115—135. 2. Brown R. G., Statistical Forecasting for Inventory Control, New York: McGraw-Hill Book Company, Inc., 1959. 3. В г о w n R. G., Exporential Smoothing for Predicting Demand, ORSA, November, 16, 1956, San Francisco, California. 4. L e v i t a n R. E., A Note on Professor Manne's 'Dominance' Theorem, Management Science, 5, 3, 1959, p. 332—334. 5. M a g e e J. F., Production Planning and Inventory Control, New York: McGraw-Hill Book Company, Inc., 1957. 6. W h i t i n Т., The Theory of Inventory Control, Princeton University Press, 1953. 7. В е а с h F. E., Economic Models New York: John Wiley and Sons, Inc., 1957. 8. В a u m о 1 W. J., Economic Dynamics, New York: The Macmillan Company, 1951. 9. SCROL, A Comprehensive Operating System for Linear Programming on the IBM, 704, C.E.I.R., Inc., 1200 Jefferson Davis Highway, Arlington, 2, Va. 10. V a z s о п у i A., Scientific Programming in Business and Industry, New York: John Wiley and Sons, Inc., 1958 (имеется русский перевод: В а ж о н ь и, Научное программирование в промышленности и торговле, Издательство иностранной литературы, М., 1963). 452
К главе 10 1. Charnes A. and Cooper W. W., Management Models and Industrial Applications of Linear Programming, Vol. I, New York: John Wiley and Sons, Inc., 1961. 2. С h u г с h m a n С W., А с k h о f f R. L. and A r n о f f E. L., Introduction to Operations Research, New York: John Wiley and Sons, Inc., 1958. 3. R e i n f e 1 d N. V. and V о g e 1 W. R., Mathematical Programming, Englewood Cliffs, N.J.: Prentice-Hall, Inc., 1958. (имеется русский перевод: Н. Рейнфельд, У. Фогель, Математическое программирование, Издательство иностранной литературы, М., 1960). К главе 11 1. Charnes A. and Cooper W. W., Management Models and Industrial Application of Linear Programming, New York: John Wiley and Sons, 1961. 2. Dale К. М., DynamicSchedulingof Generating Units in the Daily Dispatch of Load on an Electric Utility System (Master's thesis, University of Pittsburgh, July 1960). 3. О s t о v 1 о W. H. and others, Computer Selection of Generating Units to be Operated: Part 1, Economic Evaluation of, Small Computor, AIEE Publication CP-60—1398. К главе 12 1. Bowman E. H., The Schdule-Sequencing Problem Operations Research, 7, 1959, p. 621—624. 2. D a n t z i g G. B. et al., Solution of a Large-Scale Traveling-Salesman Problem, Operations Research, 2, 1954 p. 393—410. 3. D a n t z i g G. В., Upper Bounds, Secondary Constraints, and Block Triangularity in Linear Programming, Econometrica, April 1955. 4. G о m о г у R., Outline of an Algorithm for Integer Solutions to Linear Programs, Bulletin ol the American Mathematical Society, September 1958. 5. Heller J., Some Numerical Experiments for an M X J Flow Shop and Its Decision-Theoretical Aspects, Operations Research, 8, 1960, p. 178— 184. 6. J о h s о n S. M., Optimal Two and Three Stage Production Schedules and Setup Times Included, Naval Research Log. Quart. March 1954 (Гл. 2 данной книги). 7. Wagner H., An Integer Linear-Programming Model (for Machine Scheduling, Naval Res. Log. Quart., June 1959. К главе 13 1. G о m о г у R. E., Outline of an Algorithm for Integer Solutions to Linear Programs, Bulletin of, the American Mathematical Society, 64, 5, 1958 30 Заказ № 195 453
2. G о m о г у R. Е., An Algorithm for Integer Solutions to Linear Programs, Princeton-IBM Mathematics Research Project Technical Report №. 1, November 17, 1958. 3. D a n t z i g G. В., F о r d L. R. and F u 1 k.e r s о n D. R., A Primal- Dual Algorithm for Linear Programs, in Annals Study 38, Linear Inequalities and Related Systems, Kuhn and Tucker, eds., Princeton N.J., Princeton University Press, 1956. К главе 14 1. G о m о г у R. E., Outline of an Algorithm for Integer Solutions to Linear Programs, Bulletin of the American Mathematics Society, 64, 1958, p. 275—278. 2. G о m о г у R. E., Mixed Integer Programming Algorithm, unpublished RAND memorandum, RM 2597, 1960. 3. S i ss о n R. L., Sequencing Theory Ch. 7 in Progress in Operations Research, ed. by Ackoff R.L., N.Y., John Wiley and Sons, Inc., 196L 4. Wagner H. M., An Integer Programming Model for Machine Scheduling, Naval Research Logistics Quarterly, 6, 1959, p. 131—140. К главе 15 1. G i f f 1 e г В. and Thompson G. L., Algorithms for Solving Production Scheduling Problems, Operations Research, 8, 1960, p. 487—503. 2. G i f f 1 e г В., T h о m p s о n G. L. and Van Ness V., Numerical Experience with the Linear and Monte Carlo Algorithms for Solving Production Scheduling Problems, (Гл. З данной книги). 3. M u t h J., The Effect of Uncertainty in Job Times on Optimal Schedules, Ch. 18. (гл. 18 данной книги). К главе 16 1. Conway R. W., Johnson B.M. and Maxwell W. L., An Experimental Investigation of Priority Dispatching, Journal of. Industrial Engineering, May 1960. 2. H о 1 t C, Modigliani F., Muth J. F. and S i m о n H. A., Planning Production, Inventories and Work Force, Englewood Cliffs, N.J.: Prentice-Hall, Inc., 1960. 3. Morse P.M., Queues, Inventories, and Maintenance, New York: John Wiley and Sons, Inc., 1958. К главе 17 1. А с z e 1 M. A., The Effect of Introducing Priorities, Operations Research, 8, 1960, p. 730—733. 2. В a k e г С. Т. and D z i e 1 i n s k i B. P., Simulation of a Simplified Job-Shop, Management Science, 6, 1960, p. 311—323. 3. В а г г у J. Y., A priority Queuing Problem, Operations Research, 4, 1956, p. 385. 454
4. С о b h a m A., Priority Assignment in Waiting Line Problems, Operations Research, 2, 1954, p. 70—76. 5. С о n w а у R. W., Johnson B.M. and Maxwell W. L., A Queue Network Simulator for the Burroughs 220, Communications of the Assoc, for Computing Machinery, 2, № 12, 1959, p. 20—23. 6. С о n w а у R. W., Johnson В. М. and Maxwell W. L., An Experimental Investigation of Priority Dispatching, /. Indust. Eng., 11, 1960, p. 221—230. 7. J а с к s о n R. J., Some Problems in Queueing with Dynamic Priorities, Naval Res. Log. Quart, 7, 1960, p. 235—250. 8. J e с к s о n J. R., Networks of Waiting Lines, Operations Research, 5, 1957, p. 518—521. 9. Jackson J.R., Simulation of Queues with Dynamic Priorities, Research Report, 71, Management Science Research Project, UCLA, March 20, 1961. 10. К e s t e n H. and Runnenburg J. Th., Priority in Waiting Line Problems, Koninkl. Nederl. Akademie Van Wetenschappen, Proceedings, Series A, 60, № 3, 1957. 11. Little J. D. C, A Proof for the Queueing Formula L = XW, Operations. Research, 9, 1961, p. 383—387. 12. McNaughton R., Scheduling with Deadlines and Loss Functions*. Management Science, 6, 1959, p. 1—12. 13. P h i p p s Т. Е., Machine Repair as a Waiting-Line Problem, Operations Research, 4, 1956, p. 76—85. 14. S m i t h W. E., Various Optimizers for Single-Stage Production, Naval Res. Log. Quart., 3, 1956, p. 59—66. К главе 18 1. Johnson S. M., Optimal Two — and Three-Stage Production Schedules with Set-up Time Included, Naval Research Logistics Quarterly, 1, 1954, p. 61—68, (Гл. 2 данной книги). 2. T h e i 1 H., Economic Forecasts and Policy, North-Holland, Amsterdam, 1958. К части V 1. Kelley M. E. (младший) Walker M. R., Critical-Path Planning and Scheduling, and Proc. Eastern Joint Computer Conference, 1959, p. 160—173. 2. Malcolm D. G., Roseboom J.H.,Clark C.E.and Fazar W., Application of a Technique for Research and Development Program Evaluation, Operations Research, 7, 1959, p. 646—669. К главе 21 1. Anonymous, New Tool for Job Management — Perini Corp. Pioneers CPM, Engineering News Record, January, 26, 1961. 2. Anonymous, Faster-Phased Plan Speeds Plant Building, Chemical Week, August 26, 1961, p. 50—51. 30* 455
3. A s t r a c h a n, A., Better Plans Come from Study of Anatomy of an Engineering Job, Business Week, March 21, 1959, p. 60—66. 4. Christensen В. M., The Critical-Path Method, General Electric Computer Dept., Phoenix, Ariz, 1961. 5. Kelley James E. (младший), Critical-Path Planning and Scheduling: Mathematical Basis, Operations Research, Vol. 9, 1961, p 296—320. 6. Kelley James E. (младший) and Morgan R.Walker, Critical-Path Planning and Scheduling, Proc. Eastern Joint Computer Conference, Boston, December 1—3, 1959, p. 160—173. 7. Reeves Eric, Critical-Path Speeds Refinery Revamp, Canadian- Chemical Processing, October 1960. 8. S t e b e n M a j . E. S., Critical-Path Method as Used in the Canadian Army, Mauchly Associates, Inc., Fort Washinfiton, Pa., May 12, 1961. К главе 22 1. Charnes A., and Cooper W. W., A Network Interpretation and a Directed Sub-dual Algorithm for Critical-Path Scheduling, Journal of, Industrial Engineering, 1962, p. 213—219. 2. G i f f 1 e г В., Schedule Algebras and Their Use in Formulating General Systems Simulations (Гл. 4 данной книги). 3. К е 1 1 e у J. E. (младший), Critical-Path Planning and Scheduling: Mathematical Basis, Operations Research, 9, 1961, p. 296—320. 4. Kelley J. E. and W a 1 k e r M. R., Critical-Path Planning and Scheduling: an Introduction, Proc. Eastern Joint Computer Conference, 1959, p. 160—173. 5. L e v у F. K., Thompson G. L. and W i e s t J. D., Introduction to the Critical-Path Method (Гл. 20 данной книги). 6. Levy F. К., T h о m p s о n G. L. and W i e s t J. D., Multi-Ship, Multi- Shop Workload Smoothing Program, Naval Research Logistics Quarterly, 8, 1962, p. 37—44. К вступительной статье и приложению. 1. Б е л л м а н Р., Динамическое программирование, перев. с англ., Издательство иностранной литературы, М., 1960 г. 2. Бурбаки Н., Теория множеств, Перев. с фр., Издательство «Мир», М., 1965 г. 3. Бусленко Н. П., ГоленкоД. И., Соболь И. М., С р а- гович В. Г., Шрейдер Ю. А., Метод статистических испытаний (Монте-Карло). Издательство физико-математической литературы, М., 1962 г. 4. В а ж о н ь и А., Научное программирование в промышленности и торговле, перев. с англ., Издательство иностранной литературы, М., 1963 г. 5. В е н т ц е л ь Е. С, Теория вероятностей, Издательство физико-математической литературы, М., 1964 г. 6. Г е й л Д., Теория линейных экономических моделей, перев. с англ., Издательство иностранной литературы, М., 1963 г. 7. Зуховицкий С. И. и Авдеева Л. И., Линейное и выпуклое программирование. М., «Наука», 1964 г. 456
8. КофманА., Крюон Р., Массовое обслуживание. Теория и приложения, перев. с фр., Издательство «Мир», М., 1965 г. 9. Организация производства на промышленных предприятиях США. I том, перев. с англ., Издательство иностранной литературы, М., 1960 г. 10. Применение статистических методов в производстве (Сборник переводных статей), Госстатиздат, М., 1963 г. 11. Хинчин А. Я-, Работы по математической теории массового обслуживания, Издательство физико-математической литературы, М., 1963 г. 12. Ю д и н Д. Б., Голь штейн Е. Г., Задачи и методы линейного программирования, «Советское Радио», М., 1964 г. 13. А г г о w К. J., К а г 1 i n S., S с а г f H., Studies in the Mathematical Theory of Inventory and Production, Stanford University Press, 1958. 14. A v i I t z h a k В., Maxwell L. W., Mi Her L W., Queuing with Alternating Priorities, Operation Research, 13, 1965, p. 306-318. 15. D u d e k R. A., T e u t о n O. F., Development of M — Stage Decision Rule for Scheduling n Jobs through m Machines, Operations Research, 12, 1964, p. 471—497. 16. Eastman W. L.Evans S., J s а а с s J. M., Bounds for the Optimal Scheduling on n Jobs on m Processors, Management Science, II, 1964/65, p. 268—279. 17. Foster F. G., Batched Queuing Processes, Operations Research, 12, 1964 p. 441—449. 18. G a p p W., M a n e k a r P. S., Mitten L. G., Sequencing Operations to Minimize In — Process Inventory Costs, Management Science, 3, 1965, p. 476—484. 19. G i g 1 i о R. J., W a g n e r H. M., Approximate Solutions to the Three- Machine Sceduling Problem, Operations Research, 12, 1964, p. 305—324. 20. К а г u s h W., A Conterexample to a Proposed Algorithm for Optimal Sequencing of Jobs, Operations Research, 13, 1965, p. 323—325. 21. Maxwell W. L., Miller L. W., Queuing with Alternating priorities, Operations Research, 13, 1965, p. 306—318. 22. S i m о n H. A., N e w e 1 1 A., Heuristic Problem Solving the Next Advance in Operations research, Operations Research, 6, 1958. 23. S i s s о n R. L., Sequencing Theory, Progress in Operations Research, 1963, p. 291—326. 24. Starr M. K., Production Management. Systems and Synthesis Prentice- Hall, N. J., 1964.
Библиография А с к h о f f R. L., A r n о f f E. L., and Chruchman C. W., Progress in Operations Research, New York: John Wiley and Sons, Inc., 1961. А с z e 1 M. A., The Effect of Introducing Priorities, Operations Research, 8, A960), p. 730—733. А к e r s S. B. and Friedman, J. A Non-Numerical Approach to Production Scheduling Problems, Operations Research, 3 A955), p. 429—442. Allen M., The Efficient Utilization of Labor under Conditions of Fluctuating Demand, Ch. 16. Bachovzeff C. and Corrigan J.t Average Cost Method of Scheduling, Ch. 11. Baker C. T. and D z i e 1 i n s к i B. P., Simultaion of a Simplified Job-Shop Management Science, 6 A960), p. 311—323. Barry J. Y., A Priority Queuing Problem, Operations Research, 4 A956), p. 385. Bellman R., Dynamic Programming, Princeton, N.J.: Princeton University Press, 1957. В e 1 1 m a n^R., Some Mathematical Aspects of Scheduling Theory, Journal of, the Society of Industrial and Applied Mathematics 4, 3 (September 1956), p. 168—205. Bellman R. and Gross O., Some Combinatorial Problems Arising in the Theory of Multi Stage Processes, Journal oft the Society of Industrial and Applied Mathematics 2, 3 (September 1954). Bishop G. Т., On the Problem of Production Scheduling, Operations Research, 5, 1 (February 1957). Blake K. R. and Stopaklis W. S., Some Theoretical Results on the Job Shop Scheduling Problem, Report M 1533-1, United Aircraft Corp. Research Dept., East Hartford, Conn. (July 1, 1959). Bowman E. H., The Schedule-Sequencing Problem, Operations Research, 7 A959), p. 621—624. Bowman E. H., Production Scheduling by the Transportation Method of Linear Programming, Operations Research, 4, 1 (February 1956). Bowmen E. H., A New Theory About Managerial Decision-Making, Ch. 7. Brown R. G., Statistical Forecasting for Inventory Control, New York: McGraw-Hill Book Co., Inc., 1959. Canning R.G., Electronic Scheduling Machine Requirements. Management Sciences Research Project, Research Report № 29, University of California, Los Angeles A955). 458
Canning R. G., Production Control through Electronic Data Processing, Management Sciences Research Project, Research Report № 30, University of California, Los Angeles A957). Charnes A. and Cooper W. W., A Network Interpretation and a Directed Sub-Dual Algorithm for Critical-Path Scheduling, Journal of Industrial Engineering A962), p. 213—219. Charnes A., Management Models and Industrial Application of Linear Programming, New York John Wilay and Sons, Inc., 1961, 2 volumes. Churcham С W., А с к о f f R. L., and A r n о f f E. L., Introduction to Operations Research, New York:^John Wiley and Sons, 1957. Clark С. Е., The PERT Model for the Distribution of an Activity Time, Operations Research, 10 A962), p. 405—406. С о b h a m A., Priority Assignment in Waiting Line Problems, Operations Research, 2 A954), p. 70—76. Conway R. W., An Experimental Investigation of Priority Dispatching, Journal of Industrial Engineers, 11 A960), p. 221—230. Conway R. W., Some Problems of Digital Systems Simulation, Management Science, 6 A959), p. 92—110. Conway R.W., Johnson B. M. and M a x w e 1 1 W. L., A Queue Network Simulator for the Burroughs 220, Communications of Associations for Computing Machinery, 2, 12 A959), p. 20—23, Conway R. W. and W. L. Maxwell, Network Dispatching by the Shortestoperation Discipline, Operations Research, 10 A962), 57—73. Reprinted as Ch. 17. The Cornell Assembly Program (CAP) for the Burroughs 220, Department of Industrial and Engineering Administration, Cornell University, Ithaca, New York. Dantzig G. B.,A Machine Shop Scheduling Model, Management Science, 6, 2 (January 1960), p. 191—196. Dantzig G. В., On the Shortest Route through a Network, Management Science, 6, 2 (January 1960), p. 187—190. Doyle V., General Electric Simulation Test (Gest), General Electric Technical Information Series № D 591 SI5, Schenectady, New York (February 1959). D z i e 1 i n s к i В. Р., В а к е г С T. and M a n n e A. S., Simulation Tests of Lot-Size Programming, Chapter 9 of this volume. Fischer H. and Thompson G. L., Probabilistic Learning Combinations of Local Job-Shop Scheduling Rules, Ch. 15. Forrester J., Industrial Dynamics, New York: John Wiley and Sons, Inc., 1961. (имеется русский перевод: Дж. Форрестер, Основы кибернетики предприятия, Издательство «Прогресс» М., 1966). G i f f 1 е г В., Mathematical Solution of Production Planning and Scheduling Problems, IBM ASDD Technical Report (October 1960). G i f f 1 e г В., Production Control Formalizations Suitable for Electronic Data Processing, IBM Research Report RC-20 (May 1957). G i f f 1 e г В., Schedule Algebras and Their Use in Formulating General Systems Simulation, Ch. 4. 459
G i f f 1 е г В., SIMPRO I: An IBM 704—7090 Simulation Program for Planning Scheduling and Monitoring Production Systems, IBM ASDD Technical Report (December 1961). G i f f 1 e г В., Mathematical Solution of Explosion and Scheduling Problems, IBM Research Report RC-118 (June 18, 1959), 1ЁМ Research Center, Business Systems Research, Yorktown Heights, N.Y. G i f f 1 e r B. and Thompson G. L., Algorithms for Solving Production Scheduling Problems, Operations Research, 8, 4 (October — December 1960), p. 487—503. G i f f e г В., T h о m p s о n G. L., and Van Ness, Numerical Experience with the Linear and Monte Carlo Algorithms for Solving Production Scheduling Problems, Ch. 3. G о m о г у R. E., An Algorithm for Integer Solutions to Linear Programs, Princeton-IBM Mathematics Research Project, Technical Report № 1 (November 17 1958). Gomory R. F., All-Integer Integer Programming Algorithm, Ch. 13. G о m о г у R. E., Mixed Integer Programming Algorithm, unpublished RAND memorandum. Gomory R. E., Outline of an Algorithm for Integer Solutions to Linear Programs, Bulletin of the American Mathematics Society, 64 A958), p. 275—278. H e a 1 у, Т. L., Activity Subdivison and PERT Probability Statements (with discussion), Operations Research, 9 A961), p. 341—350. Held M. and К a r p R. M., A Dynamic Programming Approach to Sequencing Problems, Journal of the Society for Industrial and Applied Mathematics, 10 A962), p. 196—210. Heller J., and Logemann G., An Algorithm for the Construction and Evaluation of Possible Schedules, Management Science, 8 A962), p. 168—183. Heller J. and Logemann G., Some Numerical Experiments for an M X J Flow Shop and Its Decisiou-Theoretical Aspects, Operations Research, 8 A960), p. 178—184. Heller J. and Logemann G., Combinatorial, Probabilistic and Statistical Aspects of an M X J Scheduling Problem, Report NYO-2540, AEC Computing and Applied Mathematics Center, Institute of Mathematical Science, New York University, N.Y. (February 1, 1959). Holt С. С, Priority Rules for Minimizing the Cost of Queues in Machine Scheduling, Ch. 6. Holt C. C, Modigli ani F., M u t h J. .F and S i m о n H. A., Planning Production, Inventries and Work Force, Englewood Cliffs, N.J.: Printice-Hall, Inc., 1960. Howard R. A., Dynamic Programming and Markov Processes, Cambridge, Mass.: Press of Massachusetts Institute of Technology, 1960. H u Т. С, Parallel Sequencing and Assembly Line Problems, Operation Research, 9 A961), p. 841—848. Hunt G. C, Sequential Arrays of Waiting Lines, Operations Reseaprch, 4, 6 (Dec. 1956). 460
I s h 1 е г К. Н., Sharp R. M. and S t a 1 е у W. W., Optimization of a Total Production and Distribution System, Ch. 10. Jackson J. R., An Extension of Johnson's Results on Job Lot Scheduling,. Naval Research Logistics Quarterly, 3 A956), p. 201—203. Jackson J. R., Networks of Waiting Lines, Operations Research, 5 A957), p. 518—521. Jackson J. R., Simulation of Queues with Dynamic Priorities, Management Sciences Research Project, Research Report № 71, University of California, Los Angeles, March 20, 1961. Jackson J. R., Some Expected Transition Times in Simple Queues, Operations Research, 9, 2 (March—April, 1961), p. 277—279. Jackson J. R., Somes Problems in Queueing with Dynamic Priorities, Naval Research Logistics Quarterly, 7 A960), p. 235—250. Jackson J. R., Queues with Dynamic Priority Discipline, Management Science, 8 A961), 18—34. Reprinted as Ch. 19. Jackson J. R., Some Problems in Queueing with Dynamic Priorities,. Management Sciences Research Project, Research Report № 62, University of California, Los Angeles (November 1959). Jackson J. R., Machine Shop Simulation Using SWAC: A Progress Report,. Management Sciences Research Project, Discussion Paper № 67, University of California, Los Angeles (April 1958). Jackson J. R., Notes on Some Scheduling Problems, Management Sciences- Research Project, Research Report № 35, University of California, Los Angeles (October, 1954). Jackson J. R., Scheduling a Production Line to Minimize Maximum Tardiness, Management Sciences Research Project, Research Report № 43, University of California, Los Angeles A955). Jackson J. R., Simulation Research on Job-Shop Production, Naval Research Logistics Quarterly, 4, 4 (December 1957). Jackson J. R. and Kuratani Y., Production Scheduling Research: A Monte Carlo Approach, Management Sciences Research Project, Research Paper № 61, University of California, Los Angeles (May 1957). The Job Simulator: An IBM 704 Program, IBM Mathematics and Applications Department, International Business Machines Corporation, New York,. N.Y. A960). Johnson S. M., Discussion, Management Science, 5 A959), p. 299—303. Johnson S. M., «Optimal Two and Three Stage Production Schedules with. Setup Times Included, Naval Research Logistics Quarterly, 1 A954),. p. 61—68. К a r u s h W. and Moody L. A., Determination of Feasible Shipping: Schedules for a Job Shop, Operations Research, 6, 1 (February 1958). К a r u s h W. and V a z s о п у i A., Mathematical Programming and Service Scheduling, Management Science, 3, 2 (January 1957). К e 1 1 e у J. E., Critical-Path Planning and Scheduling: Mathematical Basis,. Operations Research, 9 A961), p. 296—320. К e 1 1 e у J. E., The Critical-Path Method: Resources Planning and Scheduling, Ch. 21. 461
К е 1 1 е у J.E., W а 1 k e r JrandM. R., Critical-Path Planning'and Scheduling, Proceedings of, the Eastern] Joint Computer Conference, Boston (December 1—3, 1959), p. 160—173. К e s t e n H. and Runnenburg J, Th., Priority in Waiting Line Problems, Koninkl Nederl Akcuiemie Van Wetenschappen, Proceedings, Series A, 60, 3 A957). Koenigsberg E., Production Lines and Internal Storage: A Review, Management Science 5, 4 (July 1959). Kuratani Yoshiro and Nelson R. Т., A Pre-Computational Report on Job-Shop Simulation Research, Management Sciences Research Project, University of California, Los Angeles (October 1959). Kuratani Y. and McKenney J. L., A Preliminary Report on Job- Shop Simulations Research, Management Sciences Research Project, Research Report № 65, University of California, Los Angeles (March 1958). L e v i t a n R. E., A Note on Professor Manne's Dominance Theorem, Manage- ment Science, 5, 3 (April 1959), p. 332—334. Levy F. K., T h о m p s о n G. L. and W e i s t J. D., Mathematical Basis for the Critical-Path Method, Ch. 22. Levy F. K., T h о m p s о n G. L. and W e i s t J. D., Introduction to the Critical-Path Method, Ch. 20. Levy F.K.Jhompson G. L. and W e i s t J. D., Multi-Ship, Multi- Shop Workload Smoothing Program, Naval Research Logistics Quarterly, 8 A962), p. 37—44. Little J. D. C, A Proof for the Queueing Formula L = KW, Operations Research, 9 A961), p. 383—387 JVl a g e e J. F., Production Planning and Inventory Control, New York: McGraw-Hill Book Co., Inc., 1957. JVl a 1 с о 1 m D. G., Bibliography on the Use of Simulation in Management Analysis, Operations Research, 8, 2 (March — April 1960). Malcolm D. G., Report of System Simulation Symposium, Baltimore, Md.: Waverly Press, 1957. Malcolm D. G., J. H. Roseboom, С. Е. Clark and W. F a z a r, Application of a Technique for Research and Development Program Evaluation, Operations Research, 7 A959), p. 646—669. Manne A. S., On the Job-Shop Scheduling Problem, Operations Research, 8, 2 (March — April 1960), 219—223. Reprinted as Ch. 12. JVl a n n e A. S., Programming of Economic Lot Sizes, Management Science, 4, 2 (January 1958), p. 115—135. JVl a x w e 1 1 W. L., Core II A Queue Network Simulator for the Burroughs 220, Cornell Production Control Research Committee, Discussion Paper № 17, Cornell University, Ithaca, New York (November 1960). JVlcNaughton R., Scheduling with Deadlines and Loss Functions, Management Science, 5 A959), p. 1—12. Mitten L. G., Sequencing n Jobs on Two Machines with Arbitrary Time Lags, Management Science, 5 A959), p. 293—298. 462
Mitten L. G., A Scheduling Problem, Journal of Industrial Engineering, 10 A959), p. 131—34. Morse P. M., Queues, Inventories and Maintenance, New York: John Wiley and Sons, Inc., 1958. Mu t h J. F., The Effect of Uncertainty in Job Times on Optimal Schedules, Ch. 18. Nelson R. Т., An Extension of Queueing Theory to a Series of Service Centers, Management Sciences Research Project, Research Report № 68, University of California, Los Angeles. (April 1958). Nelson R. Т., An Empirical Study of Arrival, Service Time and Waiting Time Distributions of a Job-Shop Production Process, Management Sciences Research Project, Research Report № 60, University of California, Los Angelos A959). Nelson R. Т., Priority Function Models for Job-Shop Scheduling, Management Sciences Research Project, Research Report JSfe 51, University of California, Los Angeles (February 1955). Notes on Operations Research, Cambridge, Mass.: Technology Press of Massachusetts Institute of Technology, 1959. P h i p p s Т. Е., Jr., Machine Repair as a Waiting-Line Problem, Operations Research, 4 A956), p. 76—85. Pounds W. F., The Scheduling Environment, Ch. 1. The Production Simulator, Westinghouse Corporation, East Pittsburgh Divi- son Pittsburgh, Pa. (July 1960). R e i n f e 1 d N. V. and W. R. V о g e 1, Mathematical Programming, Engle- wood Cliffs, N.J.: Prentice-Hall, Inc., 1958. (имеется русский перевод: H. Рейнфельд, У. Фогель, Математическое программирование, Издательство иностранной литературы, М., 1960). R e i n i t z R. С, An Integrated Job Shop Scheduling Problem (Ph. D. thesis, Case Institute of Technology, Cleveland, Ohio, 1961). R e i n i t z R. C, On the Job-Shop Scheduling Problem, Ch. 5. Riley V., Bibliography of Queueing Theory, Appendix A, p. 541—556, of McCloskey and Coppinger, Operations Research for Management, Vol. 2, Baltimore, Md: John Hookins Press, 1956. R о w e A. J., Applicability of Standard Data to Production Scheduling, Journal of Industrial Engineering, 6, 6 (November 1955). R о w e A. J., Sequential Decision Rules in Production Scheduling, General Electric Company (October 1958). Rowe A. J., Toward a Theory of Scheduling, Report 3P-61, Systems Development Corp., Santa Monica, Cal. (April 1 1959). Rowe A. J. and Jackson J. R., Research Problems in Production Routing and Scheduling, Research Report № 46, University of California, Los Angeles (October 1956). Salveson M. E., On a Quantative Method in Production Planning and Scheduling, Econometrica, 20, 9 (October 1952), p. 571—574. Salveson M. E., A Problem in Optimal Machine Loading, Management Science, 2, 3 (April 1956). Sandeman, J., Empirical Design of Priority Waiting Times for Jobbing Shop Control, Operations Research, 9 A961), p, 446—455. 463
S a a t у Т. L., Elements of Queueing Theory with Applications, New York: McGraw-Hill Book Co., Inc., 1961. Sasieni M. W., Y a s p a n A. and Friedman L., Operations Research: Methods and Problems, New York: John Wiley and Sons, Inc., 1959. S с h i 1 d A., On Inventory, Production and Employment Scheduling, Management Science (January 1959). SCROL. A Comprehensive Operating System for Linear Programming on the IBM-704,C.E.I.R., Inc., 1200 Jefferson Davis Highway, Arlington 2, Va. S h u b i к М., Bibliography on Simulation, Gaming, Artificial Intelligence and Allied Topics, Journal o? American Statistical Assocation, 55 (December 7, 1960, p. 292). S i s s о n R. L., Machine Shop Simulation Using SWAC: Part II of a Proposal, Management Sciences Recearch Project, Research Paper № 58 (May 1956). S i s s о n R. L., Method of Sequencing in Job-Shops — A Review, Journal oft the Operations Research Society of, America 7, 1 A959). S i s s о n R. L., Sequencing Theory, Chapter 7 in Progress in Operations Research, R.L. Ackoff, ed., New York: John Wiley and Sons, Inc., 1961. Smith W. E., Various Optimizers for Single-Stage Production, Naval Research Logistics Quarterly, 3 A956), p. 59—66. Smith W. E., Applications of a Posteriori Probability, Management Science Research Project, Research Report № 56. University of California, Los Angeles (September 1958). Solomon M. J., Use of Economic Lot Range in Scheduling Production, Management Science, 5, 4 (July 1959). Story A. E. and Wagner H. M., Computational Experience with Integer Programming for Job-Shop Scheduling, Ch. 14. Thomspon G. L., Recent Developments in the Job Shop Scheduling Problem, Naval Research Logistics Quarterly, 7, A960), p. 585—589. T о n g e F. M., Summary of a Heuristic Line Balancing Problem, Management Science, 7, 1 (October 1960), p. 21—39. V a z s о n у i A., Operations Research in Production Control: A Progress Report, Operations Research, 4, 1 (January 1956). V a z о п у i A., Scientific Programming in Business and Industry, New York: John Wiley and Sons, Inc., 1958. (имеется русский перевод: Важоньи, Научное программирование в промышленности и торговле, Издательство иностранной литературы, М., 1963). V о г i s W., Management of Production, New York: The Ronald Press Co., 1960. Wagner H. M., An Integer Linear-Programming Model for Machine Scheduling, Naval Research Logistics Quarterly, 6, 2 (June 1959). W h i t i n Т., The Theory of Inventory Control, Princeton, N.J.: Princeton University Press, 1953. Winters P. R., Inventory Control in a Multiple Warehouse System, Graduate School of Industrial Administration, Carnegie Institute of Technology A958). Winters P. R., Constrained Inventory Rules for Production Smoothing, Management Science, 9 A961), p. 470—481. Reprinted as Ch. 8. 464
Оглавление Вступительная статья 5 Предисловие 13 Введение 15 Часть I СТРУКТУРА ЗАДАЧ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Глава U Организационно-производственные условия календарного планирования (У. Ф. Паундс) 24 Глава 2. Оптимальные двух- и трехоперационные календарные планы производства с учетом подготовительно-заключительного времени (С. М. Джонсон) 33 Глава 3. Опыт вычислений с применением линейного алгоритма и алгоритма Монте-Карло для решения задач календарного планирования на производстве (Б. Гиффлер, Д. Томпсон, В. Ван-Нессе) 42 Глава 4. Алгебры календарного планирования и их применение при формулировке моделей общих систем (Б. Гиффлер) .... 62 Глава 5. Задача календарного планирования в цехе с единичным и мелкосерийным производством (Р. С. Рейниц) 84 Глава 6. Правила приоритетов, минимизирующие затраты из-за задержек изделий в очередях при календарном планировании станочных работ (Ч. С. Хоулт) 109 Часть II ПРОБЛЕМЫ ПЛАНИРОВАНИЯ В СВЯЗИ С РЕГУЛИРОВАНИЕМ ЗАПАСОВ Глава 7. Согласованность и оптимальность решений в управлении производством (Е. Г. Баумен) 125 Глава 8. Правила регулирования запасов с ограничениями в связи с выравниванием производства (П. Р. Винтере) 142 Глава 9. Экспериментальная проверка математическим моделированием методик расчета размеров партии (Б. П. Дзелин- ский, К. Т. Бейкер и А. С. Мэн) 157 Глава 10. Оптимизация системы производства и распределения (К. Г. Ишлер, Р. М. Шарп, В. В. Стейли (младший)) ... 193 465
Глава 11. Календарное планирование методом средних издержек (С. Баховцев, Дж. Корриган) 205 Часть III МОДЕЛИ ЦЕЛОЧИСЛЕННОГО ПРОГРАММИРОВАНИЯ ДЛЯ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ Глава 12. Задача календарного планирования для предприятий единичного и мелкосерийного производства (А. С. Мэн) . . 222 Глава 13. Полностью целочисленный алгоритм целочисленного программирования (Ральф Е. Гомори) * 227 Глава 14. Опыт применения целочисленного программирования при расчете календарного плана для предприятий единичного и мелкосерийного производства (А. Е. Стори, X. М. Вагнер) 241 Часть IV МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ ПРОЦЕДУР КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ И ЭФФЕКТИВНОСТЬ ПЛАНИРОВАНИЯ Глава 15. Комбинации локальных правил календарного планирования применительно к самонастраивающимся на вероятностной основе программам для электронно-вычислительной машины (Г. Фишер, Г. Л. Томпсон) 260 Глава 16. Эффективное использование рабочей силы в условиях меняющегося спроса (М. Аллен) 291 Глава 17. Календарное планирование в условиях сети очередей с дисциплиной по кратчайшей операции (Р. У. Конвей и У. Л. Максвелл) 321 Глава 18. Влияние случайного рассеяния оценок длительности работ на оптимальные календарные планы (Дж. Ф. Мут) .... 348 Глава 19. Очереди с динамическим правилом приоритета (Джемс Р. Джексон) 357 Часть V КАЛЕНДАРНОЕ ПЛАНИРОВАНИЕ СЛОЖНЫХ КОМПЛЕКСОВ ОПЕРАЦИЙ Глава 20. Введение в метод критического пути (Ф. К. Леви, Г. Л. Томпсон и Дж. Д. Уист) 380 Глава 2L Метод критического пути: распределение ресурсов и составление календарного плана работ (Дж. Е. Келли) 398 Глава 22. Математические основы метода критического пути (Ф. К. Леви, Г. Л. Томпсон, Дж. Д. Уист) 421 Приложение. Система идей и основные понятия оптимизации календарных планов в сборнике . . . , 434 Терминологические примечания 448 Литература Библиография
КАЛЕНДАРНОЕ ПЛАНИРОВАНИЕ Редактор Л. И. Латышев Переплет художника Г. Добер Художественный редактор Л. Ф. Шканов Технический редактор С. В. Приданцева Сдано в производство 21/1II 1966 г. Подписано к печати 21/VII 1966 г. Бумага 60 X 901/ie Нб/8 бум. л. 291/4 печ л. Уч.-изд. л. 28,68 Изд. № 8/вбЮ Цена 1 р. 99 к. Зак. 195 Издательство «Прогресс» Комитета по печати при Совете Министров СССР Москва Г-21, Зубовский бульвар, 21 Московская типография № 16 Главполиграфпрома Комитета по печати при Совете Министров СССР. Москва, Трехпрудный пер., 9