Варшавский В. И., Поспелов Д. А
Вид материала | Документы |
- Герберт Александер Саймон Исследователи ии: Лотфи Заде Исследователи ии: А. А ляпунов,, 9.34kb.
- «Как привлечь средства государственных институтов развития» Варшавский Владислав Римович, 48.54kb.
- Аннотация к научно-образовательному материалу, 114.81kb.
- 141. Поспелов В. И., Стальнов В. С. Содружественная аккомодация глаз при дисбинокулярной, 167.36kb.
- Тезисы докладов участников III международного конгресса «Россия и Польша: память империй, 1372.37kb.
- Д. А. Поспелов, Г. С. Осипов, 487.33kb.
- Варшавский А. С. Следы на дне, 1828.32kb.
- Рабочая программа учебной дисциплины Для направления 080100. 62 «Экономика» (программа, 562.39kb.
- Диспут с Пирром: прп. Максим Исповедник и христологические споры VII столетия / Отв, 73.89kb.
- Программа дисциплины: Имитационные модели для направления Прикладная математика и информатика, 120.53kb.
В очереди в магазине стоят пять человек, делающих приблизительно равными покупки. При этом их обслуживание продавцом занимает приблизительно равное время, скажем 6 мин на каждого. Дверь в торговый зал открывается, и входит молодой человек, пришедший купить сигареты. Его обслуживание занимает 30 с. Молодой человек, пришедший за сигаретами, становится в общую очередь. Посмотрим, как развертываются события, начиная с этого момента. Продавец начинает обслуживание первого стоящего в очереди клиента, и время его ожидания равно нулю. Второй клиент ждет 6 мин, третий— 12 мин, четвертый—18 мин, пятый—24 мин, и молодой человек, пришедший за сигаретами,— полчаса. Суммарное время, которое все покупатели провели в очереди, равно полутора часам, В среднем по
121
15 мин на человека. Запомним эту цифру. Теперь предположим, что молодой человек купил свои сигареты без очереди. Тогда он, вместо получасового стояния в очереди, не затратил никакого времени на ожидание. А последовательность времен ожидания людей, стоявших до его прихода в очереди, имеет вид 0,5; 6,5; 12,5; 18,5; 24,5 мин. При этом полное время ожидания равно 62,5 мин, а среднее время ожидания равно 10,4 мин, т. е. уменьшилось почти в полтора раза. Средняя длина очереди за рассматриваемый отрезок времени изменилась с 2,4 до 2.
Конечно, приведенное рассуждение лишь приблизительно отражает картину, так как в нашем примере поступление клиентов прекратилось с момента прихода молодого человека за сигаретами. Однако наш пример поясняет механизм, который обеспечивает снижение средней длины очереди и среднего времени ожидания обслуживания в том случае, когда быстро обслуживаемым клиентам в очереди назначается приоритет. Оказывается, что Остап Бендер был прав, требуя чтобы его пропустили без очереди, так как ему «только справку».
Заметим, однако, и это знает каждый, стоявший в очереди, что нет такой силы, которая может заставить человека, стоящего в очереди, захотеть пропустить без очереди другого, т. е. увеличить свое собственное время ожидания, даже, если он твердо знает, что это улучшит общие характеристики системы обслуживания.
Если трудно представить себе побудительные мотивы, которые могли бы сформировать систему приоритетов в очереди, то следует подумать, как такую систему могут навязать очереди каналы обслуживания. Для этого, однако, необходимо внести в правила взаимодействия клиентов и каналов право каналов назначать приоритеты или, что равнозначно, право выбирать из очереди клиентов га обслуживание.
Теперь из магазина мы перейдем в парикмахерскую, в которой работают несколько равноценных мастеров (система с несколькими равноценными каналами обслуживания). В парикмахерскую приходит несколько категорий клиентов, отличающихся друг от друга временем обслуживания — клиенты, желающие только побриться, клиенты, желающий сделать простую или фасонную стрижку, клиенты,
128
Желающие постричься, побриться и сделать массаж лица и т. п. Как мы уже отметили, для уменьшения средней длины очереди имеет смысл пропустить без очереди тех, кто обслуживается быстро. Если времена обслуживания клиентов известны заранее, то на этом основании в парикмахерской может быть вывешен список приоритетов, составленный по принципу «короче обслуживаешься — раньше обслуживаешься». В этой ситуации опять же заявление Остапа «мне только справку» может служить достаточным основанием для нарушения очереди (дополнительное заявление о не снятых калошах находится вне нашей модели). Список приоритетов может быть достаточно простым. Например, «бреем без очереди!»
Сложнее обстоит дело, когда времена обслуживания заранее неизвестны, могут быть случайными величинами и, вообще говоря, могут изменяться во времени. В этом случае мы должны формировать так называемые динамические приоритеты в процессе функционирования системы. В рамках интересующего нас подхода система приоритетов должна порождаться коллективным поведением каналов обслуживания.
Для организации коллективного поведения нам необходимо так сформулировать в этой задаче индивидуальные предпочтения, чтобы, добиваясь максимального удовлетворения индивидуальных потребностей для совокупности клиентов, достигать и требуемый общесистемный эффект. Как мы уже отмечали, трудно предложить правдоподобные критерии, делающие для клиента предпочтительным увеличение времени пребывания в очереди. А вот для канала обслуживания такие критерии можно предложить сравнительно легко.
Допустим (и это допущение достаточно естественно) , что парикмахер стремится к максимизации своего заработка. Тогда, если с точки зрения парикмахера клиент, обслуживаемый быстро, будет выгоднее клиента, обслуживаемого долго, то парикмахер будет изыскивать способы протащить такого клиента без очереди. Ситуация, в которой освободившийся парикмахер берет из очереди своего постоянного клиента, если последний ему достаточно выгоден, знакома многим. В ряде случаев такое действие вызывает возмущение очереди, но мы уже выше
123
Договорились узаконить право парикмахера иметь
любимчиков». Перед обращением за очередным клиентом паракмахер может объявить, например, что студентов он обслуживает вне очереди. Но, как мы уже отметили, клиент, обслуживаемый быстро, должен быть выгоден для парикмахера. Этого можно добиться, введя постоянную плату за обслуживание. Вообще говоря, постоянная плата за обслуживание может привести к росту времени обслуживания — «Раз уж я заплатил деньги, то почему бы не обслужиться по полному кругу»: поэтому можно, как в такси, ввести «плату за посадку», не зависящую от времени обслуживания.
Мы начали с того, что в качестве системы обслуживания могут выступать системы самой различной природы, а не только системы, в которых клиентами и каналами служат люди. В' качестве системы обслуживания могут выступать самые разнообразные технические системы: системы связи, вычислительные машины, транспортные системы (например, система транспортерных лент, питающих углем бункеры ТЭЦ) и многое другое. Поэтому, изучая поведение каналов и клиентов в таких системах, мы будем стремиться формализовать их поведение. Формализовать так, чтобы его можно было реализовать достаточно простыми техническими средствами. Такой подход, кроме всего прочего, поможет нам строить и изучать модели организации коллективного поведения в системах обслуживания. Если же в реальном мире локальные задачи будут решаться более тонкими и «разумными» средствами, то тем лучше для системы. Однако для наглядности изложения мы на некоторое время сохраним терминологию парикмахерской.
Разделим всех клиентов на несколько типов. Каждый тип клиентов требует времени обслуживания, лежащего в некотором своем интервале. Каждому типу клиентов присвоим номер, одинаковый для всех клиентов данного типа, и назовем его номером клиента. Все клиенты, независимо от их номера, вносят до поступления в канал обслуживания одну и ту же плату. Пусть эта плата состоит из К одинаковых монет, которые парикмахер кладет в копилку. После обслуживания, длившегося Т единиц времени, парикмахер вынимает из копилки Т монет. Если
124
К=<Т, то в копилке ничего не остается и клиент не фиксируется. Если же К > Т, то в копилке остается (К—Т) монет и парикмахер вешает на копилку номер клиента. Клиент, номер которого висит на копилке, в следующий раз имеет право на обслуживание без очереди. Если К равно среднему по всей системе времени обслуживания, то приоритет получат клиенты, длительность обслуживания которых меньше, чем среднее в системе. Если имеющий приоритет клиент вновь придет на обслуживание, внесенная им плата добавится к остатку, находящемуся в обозначенной его номером копилке. Таким образом, за достаточный для этого отрезок времени, все клиенты, время обслуживания которых меньше среднего, будут упорядочены по значениям содержимого копилок, т. е. по средним временам обслуживания, отнесенным к частотам обслуживания клиентов. Действительно, если клиенты типа А дают доход 1 руб и приходят 10 раз в день, то они безусловно выгоднее клиентов типа Б, дающих доход 100 руб., но приходящих 1 раз в месяц. Если все типы клиентов упорядочены и имеют свои номера приоритетов, то для оптимизации длины очереди клиенты типа Б все равно должны иметь приоритет ниже, чем у клиентов типа А, хотя эффект от такого упорядочивания и невелик.
Приведенный способ формирования приоритетов мало чем отличается от набора в процессе функционирования статистической информации о характеристиках клиентов и решения на этом основании задачи об оптимальной системе приоритетов. Нас такое решение задачи не должно удовлетворять. Во-первых, техническая сложность системы начинает зависеть от количества типов клиентов. Чем их больше, тем больше надо иметь копилок. Во-вторых, при такой постановке задача организации децентрализованного управления теряет содержательный смысл — на каждом канале обслуживания решается полная задача об оптимальной системе приоритетов. Попытаемся упростить систему и, быть может, тем самым выявить некоторые новые привлекательные черты ее поведения.
Ограничим число приоритетов на каждом канале. Пусть каждый парикмахер может иметь лишь ограниченное, весьма небольшое количество «любимчиков».
125
В простейшем случае—двух. Теперь парикмахеру достаточно иметь всего две копилки. Но тогда двое первых оказавшихся выгодными клиентов захватят приоритет на этом канале и, следовательно, формирование системы приоритетов прекратится. Для того чтобы избежать возможности попадания в такие тупиковые состояния, организуем конкуренцию клиентов на канале. Если на обслуживание поступает клиент, не имеющий приоритета по этому каналу, содержимое копилок сравнивается между , собой и копилка, имеющая меньший запас, очищается и начинается работа с новым клиентом. Здесь естественно возникает вопрос о необходимом числе копилок. Их, как видно, должно быть не менее двух, но и не более числа типов клиентов. Исследование поведения таких систем показало, что увеличение числа копилок сверх двух приводит к незначительным изменениям качества функционирования, несоизмеримым с затратами на усложнение системы управления.
При построении такой системы возникает еще один вопрос. Если копилка захвачена клиентом, имеющим сравнительно небольшое, но явно не минимальное среднее время обслуживания, и этот клиент сумеет накопить достаточно большую сумму в своей копилке, то очень мала вероятность того, что другие клиенты, используя оставшиеся копилки, сумеют превзойти его, хоть и медленно, но постоянно растущий запас. Если же, начиная с некоторого момента, клиент вообще перестал посещать парикмахерскую, то очень велика вероятность того, что на канале будет удерживаться приоритет несуществующего клиента и опять-таки функционирование системы будет блокировано. Конечно, все эти трудности можно устранить повышением «интеллектуального уровня» правил формирования приоритетов. Но это уже называется «пускаться во все тяжкие», а нас интересуют возможности формирования простейших правил взаимодействия и алгоритмов оптимизации. Отсюда не следует, что если нам встретился умный парикмахер, то он должен зарыть свой талант в землю. Простейшим выходом из создавшегося положения является ограничение объема копилки. Если копилка переполнится, то избыточные деньги сдаются в кассу. Оказывается, что введение такого ограничения улучшает
126
поведение системы в случае, когда характеристики клиентов изменяются во времени и что для каждой степени нестационарности системы, т. е. для каждого среднего времени между изменениями характеристик клиентов, существует оптимальная емкость копилки, при которой средняя длина очереди минимальна. При этом, чем чаще изменяются характеристики, тем меньше должна быть емкость копилки.
Здесь уместно вспомнить о существовании оптимальной глубины памяти целесообразных автоматов при их поведении в переключающихся случайных средах. Аналогия здесь полная. Действительно, чем меньше емкость копилок, тем выше способность системы к переучиванию, тем она подвижнее, лабильнее. Однако, чем меньше емкость копилок, тем труднее системе различать между собой выгодных клиентов, тем грубее она работает. Оптимальная емкость как раз и соответствует компромиссу между качеством решения и временем, необходимым для его нахождения.
Выработка приоритетов для каналов (причем разных для разных каналов) улучшает еще одно качество системы — количество переключении. Переключением мы называем переход от обслуживания клиентов одного типа к обслуживанию клиентов другого типа. Если подряд обслуживаются два клиента одного типа, то переключения не происходит. Легко понять, что если данный канал, и только он предоставляет приоритет некоторому типу клиентов, то подавляющее большинство клиентов такого типа поступает на обслуживание именно на этот канал, что уменьшает разнообразие типов клиентов на канале и, как следствие, снижает частоту переключении.
Что дает системе снижение числа переключении? Во-первых, переключение всегда связано с потерями. Это либо расходы на переналадку оборудования, либо, как в случае систем связи, источник дополнительных помех, либо дополнительная потеря времени.
Во-вторых, снижение числа переключении приводит к специализации канала обслуживания, что, как правило, приводит к снижению времени обслуживания приоритетных клиентов.
Здесь мы коснулись вопроса, который несколько расширяет нашу модель. Очевидны случаи, когда один и тот же клиент на разных каналах имеет
127
разное время обслуживания и различные времена обслуживания имеют разные клиенты на одном и том же канале. В этом случае перераспределение клиентов по каналам будет изменять не только среднюю длину очереди, но и пропускную способность системы.
§ 4.3. Как мастер распределяет наряды
Рассмотрим производственный участок, состоящий из нескольких полностью взаимозаменяемых рабочих мест. На каждом рабочем месте выполняется несколько операций, составляющих цикл выполнения наряда. Независимо от того, кем выполняется работа, рабочим нли бригадой рабочих, мы будем называть совокупность рабочего места и исполнителя (канал обслуживания) рабочим.
Процесс выполнения наряда (обслуживания клиента) состоит из последовательности разнотипных работ. Например, наряд определяет работу но изготовлению приспособления в инструментальном цехе. В последовательность работ входит фрезеровка, сверление, шлифовка, шабровка, сборка и т. п. Наряд характеризуется трудоемкостью каждой операции и ее сложностью. Трудоемкость операции определяется установленной для нее нормой времени, сложность — требуемым уровнем квалификации. На основании трудоемкости и сложности устанавливается расценка—плата за изготовление приспособления, т. е. за выполнение наряда.
Каждый рабочий имеет различные уровни квалификации для работ разных видов. Квалификация рабочего на данном виде работ характеризуется коэффициентом перевыполнения нормы по этому виду работ.
Нетрудно понять, что время выполнения всех работ но данному наряду различно для различных рабочих. Оно зависит, с одной стороны, от набора норм времени на различные операции и, с другой стороны, от набора коэффициентов перевыполнения норм на этих операциях. Очевидно также, что средняя производительность труда на участке зависит от распределения нарядов между рабочими. Она тем выше, чем больше относительная трудоемкость отдельных операций, выполняемых каждым рабочим, соответствует его индивидуальным возможностям.
128
Одна из задач мастера участка как раз и заключается в том, чтобы, зная индивидуальные особенности каждого рабочего и характеристики нарядов, составляющих плановое задание участку, организовать процесс производства, т. е. распределить наряды между рабочими. Опытный мастер, хорошо знакомый с возможностями рабочих своего участка, а также с возможностями и требованиями производства, успешно справляется с такого рода задачей.
Однако даже у самых опытных мастеров бывают ошибки. Они вызываются тем, что мастер в силу субъективных причин может недооценивать или переоценивать способности того или иного рабочего. Ему может быть свойствен определенный консерватизм, не позволяющий вовремя заметить рост квалификации у одного и ее падение у другого. Кроме того, единоличное принятие мастером решения может привести к трениям, связанным с появлением привилегированных и обиженных рабочих. Особенно это относится к случаям, когда в связи с несовершенством технического нормирования, отсутствием норм равной напряженности, недостатками в системе оплаты и т. д., существуют понятия «выгодной» и «невыгодной» работ. Так, например, из данных, взятых на реальном предприятии, с которыми мы сталкивались при изучении этой модели, следует, что один и тот же рабочий, работая над самыми «выгодными» деталями, может заработать за день 11,5руб., а занимаясь «невыгодной» работой—всего 1,5 руб. в день.
Снова заметим, что возникающая ситуация характерна для огромного числа чисто технических систем, однако рассмотрение «одушевленного» примера несколько упрощает и изложение, и чтение.
При рассмотрении систем оперативного внутрицехового управления можно поставить вопрос об исключении мастера из процедуры распределения работ и замене ее процедурой коллективного выбора работ рабочими. При этом с самого начала ясно, что решения типа организации аукциона работ или, что еще хуже, новгородского вече, неприемлемы для производственных условий по целому ряду причин.
Вообще говоря, если все параметры плана и квалификации рабочих известны заранее и не меняются в течение планового периода, то задачу об оптимальном
129
распределении работ между рабочими можно было бы решить известными математическими методами и заранее назначить исполнителей для всех нарядов. Трудности использования такого решения заключаются в том, что в течение планового периода наряды поступают на участок неравномерно. На процесс поступления нарядов влияет много неконтролируемых факторов. Производительность труда рабочего подвергается случайным колебаниям, зависящим от его настроения, состояния здоровья, усталости и т. п. Плановые задания могут изменяться внутри планового периода. В связи с этим предварительное жесткое распределение может привести к простою одних рабочих при наличии очереди к другим. Преодоление этих трудностей достигается за счет организации оперативного управления распределением потока нарядов по рабочим, что, в частности, может быть реализовано путем выработки системы динамических приоритетов при наличии общей очереди нарядов на выполнение работ.
На основании модели, рассмотренной в предыдущем параграфе, можно предложить правила взаимодействия рабочих, обеспечивающие децентрализованное распределение нарядов между ними.
Все наряды на выполнение работ разбиваются на группы. В каждую группу попадают работы, сходные по относительной трудоемкости на разных типах работ. Каждый рабочий с определенной периодичностью, например каждый день утром или каждый понедельник утром, может назвать один или два типа работ, которые он хотел бы выполнять. Такое объявление может быть и не периодическим, а делаться после выполнения очередного наряда. При обращении рабочего за очередным нарядом он получает объявленную им предпочтительную для него работу, если такой наряд имеется. Все наряды образуют очередь, в которой существует своя структура, определяемая важностью работ, критическими сроками их исполнения и т. п. Если в очереди нет объявленной рабочим работы, то он получает первый стоящий в очереди наряд.
Технические средства для реализации такой системы на участке состоят из ящика, в который складываются наряды по мере их поступления, и человека, который упорядочивает их в зависимости от
130
имеющихся требований и выдает рабочим в соответствии с описанным выше алгоритмом. Для улучшения качества функционирования системы обычно оказывается полезной некая дополнительная информация, для записи которой можно использовать обычную доску, где рабочие вывешивают для всеобщего обозрения номера своих приоритетных групп нарядов.
Естественно предположить, что в основу выбора приоритетных номеров ляжет предпочтительность соответствующих работ для каждого конкретного рабочего. Можно также допустить, что основой для формирования представлений о предпочтительности будет «выгодность» или «невыгодность» для данного рабочего тех или иных типов работ. Следует также предположить, что рост суммарной заработной платы в этом случае соответствует росту производительности труда.
При функционировании такой системы возникает опасность, что все рабочие назовут в качестве приоритетной одну и ту же самую «выгодную» работу и система приоритетов не даст ожидаемого эффекта. Заметим, однако, что чем большее число рабочих будет считать приоритетной одну и ту же работу, тем меньше будет ее средняя «выгодность» для каждого рабочего, так как тем реже она будет попадать к нему. Легко понять, что разумнее иметь каждый день лишние 2 руб., чем один раз в месяц 20 руб. Можно надеяться, что эту истину достаточно быстро поймут участники распределения. Можно надеяться, что в качестве приоритетных будут закрепляться не просто самые выгодные при единичном исполнении работы, а работы, наибольшая выгодность которых обеспечивается также и частотой их поступления к данному рабочему.
Приоритетное закрепление типов работ за рабочими, как и в модели приведенной в § 4.2, должно приводить к специализации рабочих на некоторых типах работ, что в свою очередь должно приводить к повышению производительности труда и пропускной способности участка, а также к увеличению предпочтительности приоритетных работ.
Внедрение такой системы организации оперативного распределения работ, как нетрудно понять, сопряжено с большим числом (в том числе психоло-
131
гических) трудностей. Эксперимент в реальной производственной системе до сих пор не проведен, хотя подготовка к нему проводилась в ряде мест, в том числе и на таллинском Электротехническом заводе им. М. И. Калинина. В ходе подготовки к эксперименту проводилось исследование системы распределения на модели.
Как была организована такая модель? В качестве исходных использовались данные по двум участкам завода «Красный Пролетарий» (Москва) и завода «Пневматика» (Ленинград). (22 детали и 3 рабочих, 47 деталей и 5 рабочих, 25 деталей и 12 рабочих.) На ЭВМ программным путем моделировался процесс поступления деталей и их обработки. Каждый раз, когда возникала необходимость выдачи нового наряда, машина через терминал обращалась с вопросом к оператору, располагавшему полной информацией о характеристиках нарядов и рабочих и имевшему опыт в распределении работ. Этот человек представлял в модели беспристрастного и хорошо информированного мастера. Таким образом было промоделировано и изучено функционирование участка в течение 500 ч. Затем процедура распределения была реализована как результат коллективного поведения. Каждый рабочий при этом моделировался двумя копилками типа, описанного в § 4.2. В результате моделирования 10 000 ч работы участка оказалось, что введение приоритетов увеличивает пропускную способность участка по сравнению с дисциплиной «первый пришел — первый обслужен» для реальных данных от 3 % до 7 % на различных участках. Заметим, что хорошо информированный беспристрастный мастер добивается в наших ситуациях практически тех же результатов, что и коллектив рабочих, моделируемый весьма примитивными локальными средствами принятия решений.