Математическое моделирование
П.В. ЮДИН
Применение метода динамического программирования для решения задачи календарного планирования производственной программы птицеводческого предприятия
Разработана дискретная экономико-математическая модель календарного планирования производственно-технологической программы птицеводческого предприятия с целевой функцией, которая включает параметры, учитывающие цикличность производства и характеризующие интенсивность производственного процесса. Предложен метод решения полученной задачи календарного планирования на основе динамического программирования.
Процесс загрузки оборудования птицеводческого предприятия носит циклический характер, но длина периода эксплуатации производственной линии (срок продуктивного использования птицы) не является величиной постоянной для каждого цикла производства и зависит от уровня яйценоскости, сохранности птицы и стоимости кормовых ресурсов. Для установления длительности производственного цикла каждой производственной линии нормативные сроки использования птицы следует корректировать как в сторону их увеличения, так и в сторону сокращения. При составлении календарных планов развития предприятия необходимо учитывать влияние внешних факторов (сезонные изменения рыночных цен на компоненты кормосмеси и цен реализации яйца) на оптимальные сроки использования поголовья кур-несушек промышленного стада, на структуру кадрового состава предприятия, на объем и структуру затрат предприятия в целом. При этом решение задачи нахождения оптимальных сроков эксплуатации птицы необходимо осуществлять отдельно для каждой производственной линии, поскольку формирование промышленного стада кур-несушек по корпусам происходит не единовременно, а с определенным временным интервалом, обеспечивающим ритмичность производства готовой продукции и равномерность загрузки мощностей вспомогательных цехов в течение года.
Обоснованная система расчетов календарно-плановых нормативов (срок эксплуатации поголовья, срок перевода ремонтного молодняка в цех промышленного стада кур-несушек и др.) служит необходимой предпосылкой для разработки реальных календарных планов работы цехов на всех стадиях производственного процесса и достижения более высокого конечного экономического результата.
Рассматривается птицеводческое предприятие замкнутого цикла, в распоряжении которого имеются следующие производственные мощности: птичники для содержания кур-несушек родительского стада, инкубаторий, птичники для содержания ремонтного молодняка промышленного стада и птичники промышленной зоны для содержания кур-несушек промышленного стада.
Для сокращения размерности разработанной модели календарного планирования производства осуществляется декомпозиция объекта моделирования путем рассмотрения каждой отдельной единицы производственных фондов основного производства как независимого объекта моделирования. Этот метод может быть применим в силу того, что функционирование каждого отдельного зала для содержания кур-несушек промышленного стада и ремонтного молодняка осуществляется абсолютно независимо друг от друга. Такой подход упрощает нахождение оптимального календарного плана замены кур-несушек для конкретной производственной линии и соответствующее планирование технологических процессов вспомогательного производства.
Планирование технологического цикла использования зоны промышленного стада кур-несушек будем начинать с этапа профилактического ремонта производственных помещений, продолжительность которого обозначим константой Ь0'. Горизонт планирования рассматриваемой задачи обозначим переменной Ьш, задавать его значение будем в соответствующих единицах принятого в рамках модели дискрета времени (например, одна неделя, один месяц). В пределах горизонта планирования каждому технологическому циклу присвоим порядковый номер
] (]).
В рамках экономико-математической модели (ЭММ) задачи можем разбить жизненный цикл технологической линии на произвольное количество ¡(7=0, т) временных этапов, в том числе с неравномерной длительностью Ь/ каждого этапа, с тем условием, что присвоенная принятым временным этапам длительность будет одинакова у соответствующих этапов для всех последующих циклов используемой технологической линии.
Поставим в соответствие каждому этапу в пределах одного технологического цикла значение целочисленной переменной состояния zJ¡ . Переменная состояния zJ¡ принимает два значения: «ноль» или «единица». Значение «1» выступает в качестве характеристики того, что данный этап технологического цикла должен планироваться к выполнению в соответствующий период, а значение «0» - не должен планироваться к выполнению по причине его экономической нецелесообразности. При 74
этом необходимо соблюдать условие последовательности смены состояний этапов технологического цикла: если значение переменной состояния zJм на этапе 1+1 равно нулю, то этот этап не планируем (т.е. в конце этапа 1 осуществляем забой птицы), тогда следующим должен быть запланирован нулевой этап z0 технологического цикла (ремонт помещений и их заселение ремонтным молодняком).
Обозначим искомый план Ъ множеством целочисленных переменных z=&■}}.
т
Введем функцию управления YJ(г0,zJl,...,zJt,...,zJm)zJ¡ , значение
1=0
которой обозначает количество запланированных к выполнению этапов для каждого технологического цикла использования производственных помещений для содержания промышленного поголовья кур-несушек в пределах горизонта планирования.
Зная длительность Ь} каждого этапа, можем определить общую
т
продолжительность одного цикла, равную ^ Ь/ • zii , либо всех тех-
1=0
нологических циклов в совокупности в пределах горизонта планирования. Обозначим общую продолжительность п циклов технологического
п п т п
процесса через Д^ z}Ь0 или Д^ .
}=1 :=1 1=1 :=1 При формировании производственной программы предприятия пользуются следующими базовыми функционально-задаваемыми величинами:
• е ) - функция яйценоскости промышленного стада на 1-м
т
этапе }-го цикла в момент времени =^Ь/ • z/ в зависимости от сроков
1=0
использования птицы в рамках технологического цикла;
• 5 )- функция сохранности птицы на протяжении ее жизненного цикла (выращивание ремонтного молодняка, промышленная эксплуатация);
• т ) - функция потребления кормов птицей по этапам периода ее выращивания и промышленного использования.
Обозначим переменной q0 количество суточного молодняка, полученного на выращивание зоной ремонтного молодняка, тогда количество птицы }-го производственного цикла в момент времени равно
qo • )
. Зная среднее количество птицы за период Ь}, ее среднюю яй-
100%
ценоскость в этот период и длительность периода Ь} в днях, можем определить валовой выпуск яиц за период Ь}, равный:
т/ : др(^)+))(е(,:)+е(У 1)) _
V . (г )=--количество дней (Ь),
яичоК ' ' 4400%
где количество дней (Ь/) - функция, которая определяет количество дней в периоде Ь/ в соответствии с принятой в модели в начале вычислительного процесса длиной дискрета времени.
Так же можем определить выпуск мяса птицы в случае забоя кур-несушек в периоде Ь/ :
у ) = д„( )+1)). м
МЯСоУ 7 ' г* 1 ААО/ головы '
2'100 %
где Мголовы - константа, обозначающая среднюю массу одной тушки в убойном весе.
Валовой объем выручки а/ от реализации продукции в 7-м периоде можем рассчитать по формуле
а7 (/7 ) = Уяйцо (/7 ) 'ряйцо 7 ' ^7 + Умясо (/7 ) 'Р'мясо 7 (1 — ^7 ).
Постоянные издержки предприятия по этапам технологического цикла описываются константой С7 - объемом постоянных затрат, приходящихся на рассматриваемую технологическую линию на протяжении этапа. Объем затрат в виде потребляемой кормосмеси занимает основную долю в структуре себестоимости продукции (до 80%). Обозначим расходы предприятия на содержание производственной линии на 7-м этапе /го цикла следующей функцией:
)=д>(*('/)+)+т^))' г+ + с 7 7 4'100% 7 7,
где г- стоимость 1 кг кормосмеси на 7-м этапе /-го цикла.
Заселение производственных помещений для содержания кур-несушек промышленного стада ремонтным молодняком будем осуществлять с переносом потока денежных средств, накопленного технологическим циклом к этому моменту времени (затраты на выращивание молодняка, содержание персонала, на профилактический ремонт залов для содержания ремонтного молодняка).
Запишем ЭММ:
. Г0, птица не живет в 7-м периоде /-го цикла _ _
ZJ¡ =\ ,7 = 0,т;/=\,п; (1)
[1, птица живет в 7-мпериоде /-го цикла
т
, г/, ...,Л, ...,гт) = 2/ (2)
2+>2+1,7=0, т-1;/=1, п; (3)
2+ > 2{+х, /=1, п-1; (4)
А/ < Ьш; (5)
п п т
А/1 = 2 20 Ь + Ц ь/2/; (6)
/=1 /=1 7=1
А/, = Ь -А/,; (7)
2 пл 1 ' V /
0
п т Д+
Щ)- // ^/Н^-^) ^ шах, (8)
:=1 ¿=0
где L - максимальный объем валовой прибыли, полученный за период планированияЬш ;
Z - искомый план, множество целочисленных переменных
z={z:};
а} - валовая выручка от реализации продукции в 1-м периоде }-го
технологического цикла, зависящая от функции яйценоскости курицы-несушки и от функции сохранности поголовья птицы;
- объем затрат на содержание поголовья птицы, понесенных в 1-м
периоде -го технологического цикла;
Дt2 - экономия времени в результате оптимизации производственного процесса с помощью оптимизационной модели (см. рисунок);
Д^ - общая продолжительность п циклов производственного процесса;
Ь0 - продолжительность технологического перерыва между выселением и заселением производственного помещения для содержания кур-несушек промышленного стада;
Ь: - продолжительность 1-го периода }-го технологического цикла.
Решением задачи в данном случае будут являться план Z - множество переменных z1 и вектор значений функции управления Y , указы-
1 }
вающий срок эксплуатации птицы для каждого цикла ее использования в течение периода планирования Ьш .
Ограничение (3) задает логически последовательную смену этапов технологического цикла. Например, переход птицы в возрастную группу «15 месяцев» может наступить только по окончании эксплуатации последней в возрастной группе «14 месяцев», а по окончании этапа забоя птицы следует этап инкубации и выращивания ремонтного молодняка. Ограничение (4) задает последовательную смену технологических циклов, не допуская нерегламентированных перерывов (пропуски технологических циклов) в работе производственных мощностей, и необходимо для корректного решения задачи методом нелинейного программирования с помощью большинства пакетов прикладных программ. Ограничение (5) определяет горизонт планирования производственного процесса.
Задавая комбинации сроков жизни птицы по периодам, мы получим различные планы, каждому из которых будут соответствовать определенные показатели прибыли, рентабельности, выручки от реализации и т.п.
Процедура поиска оптимального решения приводит к высвобождению из производственного процесса (см. рисунок), состоящего из нескольких технологических циклов, периода времени Д^ = Ьш - Д^ .
Сделаем предположение, что за период времени, равный Дt2, система будет функционировать со средней эффективностью, достигнутой за общее время длительности всех планируемых технологических циклов
. В силу этого предположения целевая функция L была модифицирована к виду (8) путем умножения валовой прибыли, полученной за ] цикЛ Аt 2
лов производственного процесса, на сумму (И--).
А/1
График сдвига производственных циклов в пределах горизонта планирования в зависимости от их оптимальной длительности
Наиболее гибкие возможности решения ЭММ задачи оптимального календарно-объемного планирования предоставляет метод динамического программирования (ДП), поскольку зачастую необходимо учитывать изменение параметров деятельности птицефабрики в режиме реального времени.
На основании постановки ЭММ задачи календарно-объемного планирования необходимо осуществить определенное число циклов эксплуатации и замены технологической линии в течение некоторого периода времени Ьш продолжительностью h периодов. То есть процесс оптимизации разбит на h шагов длительностью, соответствующей принятой в модели единице времени, например один месяц или один год. Технологическая линия с течением времени имеет тенденцию сокращать отдачу валовой прибыли г(т)=а(т) - _Дт) (где т - возраст технологической линии) в единицу времени. При этом есть возможность в начале любого месяца зоны неопределенности принятия управленческого решения о замене производственной линии осуществить такую замену, понеся соответствующие затраты на выращивание ремонтного молодняка птицы и профилактический ремонт производственных помещений. Требуется найти оптимальный план замены оборудования, с тем чтобы суммарная прибыль за h месяцев планирования была максимальной.
В соответствии с принципами динамического программирования процесс нахождения оптимальных параметров системы обладает тем свойством, что каким бы ни было решение, принятое на последнем шаге, и состояние процесса перед последним шагом, предыдущие решения
должны определять оптимальное относительно этого состояния поведение. В более общей форме это свойство описывается рекуррентным уравнением Беллмана1, связывающим функцию Беллмана на каждом шаге с функцией Беллмана, вычисленной на предыдущем шаге:
Ьк ^) = шах [тк хк ) + Ьк+1 (У (t, хк ))},
где t - переменная состояния системы на к-м шаге;
хк - переменная управления на к-м шаге приносит результат гк^, хк ) и переводит систему в некоторое новое состояние { хк ).
Для каждого возможного состояния на к-м шаге среди всех возможных управлений выбирается оптимальное управление х^ такое, чтобы результат, который достигается за шаги с к-го по ^й, оказался оптимальным.
Пусть Ьк ^) - максимальная прибыль, получаемая за периоды времени от к до h при условии, что в начале к-го периода имеется механизм ^летнего возраста.
Для решения поставленной ЭММ задачи запишем уравнение Белл-мана в терминах рассматриваемой задачи:
|а(^-/^) +.^+1^+1), если эксплуатировать пром. стадо кур-несушек 1 Ьк (t)=шах^
[а(0)-/(0)+Lk+l(1), если заменить пром. стадо кур-несушек )
где t - переменная состояния модели на к-м шаге ^ = 0, ..., tmax);
a(t) - валовая выручка от эксплуатации производственной линии в
г
возрасте ^^ ^Ь/ на к-м шаге;
1=0
ДО - затраты на обслуживание поголовья птицы (затраты на содержание птицы, зарплата обслуживающего персонала и т.д.) в этапе t на к-м шаге;
а(0) - валовая выручка в нулевом состоянии технологического цикла (период запуска системы);
А(0) - стоимость замены промышленного стада (содержание родительского стада кур-несушек, инкубация яиц, выращивание молодняка) в нулевом состоянии технологического цикла;
Ьк{() - максимальная прибыль, получаемая за периоды от к до h.
Переменной управления является логическая переменная хк, которая на к-м шаге принимает значение «С» - сохранить производственную линию или «З» - заменить производственную линию. Применяя то или иное управление хк, мы переводим производственную систему в некоторое новое состояние.
На первом этапе решения задачи, который называется условной оптимизацией, отыскиваем функцию Беллмана и оптимальные управления для всех возможных состояний на каждом шаге, начиная с последнего. Для каждого варианта управления валовая прибыль вычисляется как сумма двух слагаемых - непосредственного результата управления и
1 Беллман Р. Динамическое программирование: Пер. с англ. М.: ИЛ, 1960. 400 с.
79
его последствий. На последнем, ^м, шаге (£=^первом шаге в последовательности решения задачи) найти оптимальное управление х'к и значение функции Беллмана Ь^) можем следующим образом - это максимально возможная прибыль только за последний, ^й, шаг (месяц, в зависимости от принятой единицы времени), т.е.:
Зная эту функцию, можно рассчитать Ьь_1(^), затем ) и так далее вплоть до Ь1 ^) . Функция Ь ^ехода) представляет собой максимально возможную прибыль за весь период Ьш, т.е. с 1-го по ^й шаг.
На этапе безусловной оптимизации формируется оптимальный календарный план проведения технологических операций (сроки забоя птицы, перевода птицы в промышленную зону, сроки вывода суточного молодняка и т.д.) в заданной перспективе Ьш .
Далее необходимо построить модель задачи динамического программирования (ДП) в виде граф-схемы принятия управленческого решения. Решение задачи осуществляется путем построения вспомогательных расчетных таблиц для каждого шага модели ДП. Определив на первом шаге решения задачи максимальную прибыль, полученную в заданном задачей горизонте планирования Ьш, начинаем поиск оптимального календарного плана замены производственной линии алгоритмом прямой прогонки решения ЭММ задачи ДП.
Серия экспериментов с различными входными значениями параметров яйценоскости, сохранности и падежа птицы показали работоспособность модели. Полученные результаты в виде различных вариантов календарного плана подтвердили предположение о зависимости сроков эксплуатации поголовья птицы от заданных характеристик яйценоскости, сохранности, структуры постоянных издержек предприятия и цены реализации готовой продукции. Решения ЭММ задачи планирования, предлагаемые разработанной моделью ДП, отличаются амплитудой колебания сроков эксплуатации производственной линии в различных вариантах планов.
В целях дальнейшего приближения разрабатываемой модели к реальному экономическому объекту возникла необходимость усложнения модели путем учета в расчетах сезонных колебаний закупочной цены кормосмеси. Абсолютные значения цен на зерновые были освобождены от влияния инфляционной составляющей. Осуществив введение в модель сезонных колебаний цен на кормовые составляющие, доля которых в структуре себестоимости может достигать 80%, был получен нетривиальный результат решения ЭММ задачи составления оптимального ка-лендарно-объемного плана.
В результате построения оптимального плана сроки замены производственной линии на протяжении нескольких циклов ее эксплуатации имеют неравномерный характер: в зависимости от исходных параметров
^) = тах-
а(1) - / (^), если эксплуатировать пром. стадо кур-несушек а(0) - / (0), если заменить пром. стадо кур-несушек
модели сроки замены линии по циклам могут иметь пилообразный характер с колебаниями по амплитуде длительности использования.
Таким образом, решение задачи календарного планирования оптимальной производственной программы методом динамического программирования дает не только численное значение критерия оптимизации (объема валовой прибыли), но и предлагает руководителю оптимальный сценарий развития производственной линии в виде календарного плана работ, выполнение которого способно привести к максимально возможному по эффективности результату.
Многомерный случай решения ЭММ задачи планирования кален-дарно-объемного плана для предприятия, имеющего несколько производственных линий, реализуется расчетом календарно-объемного плана для каждой линии.
Для установления длины производственного цикла каждой производственной линии нормативные сроки использования птицы следует корректировать либо в сторону увеличения, либо в сторону сокращения, предварительно осуществив соответствующие экономико-математические расчеты. При составлении тактических планов развития предприятия, как и при составлении календарных планов, необходимо учитывать влияние внешних факторов (таких как сезонное изменение рыночных цен компонентов кормосмеси и цен реализации яиц) на оптимальные сроки использования поголовья кур-несушек промышленного стада, на структуру кадрового состава предприятия, на объем и структуру затрат предприятия в целом.
Повышение эффективности хозяйствования предприятия путем принятия обоснованных управленческих решений возможно осуществить с внедрением в практику управления предприятием предлагаемых методов календарного планирования производственно-экономической программы.
© Юдин П.В., 2004 г.
81