Националь ная ассоциация ученых (НАУ) # 57, 20 20 35
ОПТИМИЗАЦИЯ РАСЧЁТА БАЛАНСОВ ПРЕДПРИЯТИЙ ГОРНОДОБЫВАЮЩЕЙ
ПРОМЫШЛЕННОСТИ
Миловидова Анна Александровна
Старший преподав атель кафедры САУ института САУ
Государственный университет "Дубна"
Порымов Иван Евгеньевич
бакалавр
Государственный университет "Дубна "
OPTIMIZATION OF BALANCE SHEET CALCULATIONS FOR MINING INDUSTRY
Milovidova Anna Aleksandrovna
Senior Lecturer
Dubna State University
Porymov Ivan
Bachelors degree
Dubna state university
DOI: 10.31618/nas.2413 -5291.2020.1.57.256
АННОТАЦИЯ
Данная статья посвящена описанию способов сокращения в ремени для расчёта балансов ключевых
документов по опи санию деятельности предприятий горноперерабатывающей промышлен ности. Это
позволит сэкономить временные и материальные ресурсы компании. Автором предлагается несколько
способов ускорения расчёта, среди н их: распрямление переносов продуктов, различные варианты
сор тировки продуктов, выделение приоритетных групп.
ABSTRAC T
This article describes ways to reduce the time needed to calculate the balances of key documents describing
the activities of mining compa nies. This will save the company's time and material resources. The author suggests
several ways to speed up the cal culation, among them: straightening product transfers, various options for sorting
products, highlighting priority groups.
Ключевые слова: гороноперерабатывающая промышленность; оптимизация; пр ограммирование.
Keywords: mining industry; optimization; programming.
ВВЕДЕНИЕ
Основным документом, отражающим
результаты деятельности по планированию работы
предприятий горноперерабат ывающей
промышлен ности, является б аланс. Его структу ра
включает в себя названия используемой и
производимой продукции, а также их массы в
статьях прихода и расхода. Продукты состоят друг
с другом в отношениях "зависимых" и "входных".
Первый вид отношений п одразумевает, что
продукты должны пересчитаться посл е изменения
массы данного, второй указывает на то, что расчёт
данного продукта будет произведён на основе масс
других. Продукты неразрывно связаны с
технологическими переделами, где они были
произведены и ли куда были отпр авлены на новый
этап производства.
Все эти зависимости могут быть реализованы
с помощью рекурсивного метода по расчёту масс
продуктов и их компонентов, участвующих в
составлении балансов. Однако, рекурсивные
алгоритмы требуют большого кол ичества ресурсов
(особенно, если п ринять во внимание количество
продуктов, исчисляемое десятками тысяч), что
приводит к возрастанию длительности расчёта
балансов. О способах сокращения этого времени на
примере программной реализации на языке C# и
пойдёт ре чь в данной стать е.
ОПТИМИЗАЦИЯ РАСЧЁТА БАЛАНСОВ
Яд ром расчётного модуля является
рекурсивный метод Evaluate() . Перед
непосредственным запуском процедуры
происходит сортировка продуктов в зависимости
от количества зависимых значений (в исходной
версии).
Прежде чем достичь пункта назначен ия часть
продуктов проходит через несколько переделов,
что естественно отражается на количестве
пересчётов, а, следовательно, и на длительности
расчёта. Поэтому была реализована процедура по
«распрямлению» переделов – findS tartProduct .
Есл и в ходное значение переносимого
про дукта в свою очередь имеет входное значение,
то будет вызван метод по определению
первоначального передела (см. рис. 1).
Если «родительский» продукт не равен
найденному, то нужно изменить связи продуктов .
Для сохранения точности расчёта, при перенесении
продукта больше одного раза, удаляется ссылка на
данный продукт у продукта с промежуточного
передела и, при необходимости перезаписывается
процент переноса (отдельные значения переходят
не полностью).
36 Национальная ассоциация ученых (НАУ) # 57, 20 20
Рисунок 1. Вызов метода findStartProduct
Метод по определению исходного передела
является рекурсивным, его код представлен на
рисунке 2.
Рисунок 2. Код метода findStartProduct
Проведение тестирования
продемонстрировало целесообразность
использовани я данной процедур ы.
Затем было решено пересмотреть сортировку
продуктов, ранее производившуюся только по
количеству зависимых значений, в неё было
добавлено второе звено – сортировка
получившейся последовательности продуктов по
количеству входных продукто в. Таким образом,
наиболее востреб ованные из них оказывались на
поверхно сти списка. Это принесло свои плоды.
Записи файлов логирования свидетельствовали о
сокращении времени расчёта. С уммарно на
балансах с 2021 по 2027 год было сокращено
полминуты (31 секу нда). Точность ра счёта иногда
теря лась, но за допустимые пределы – 15 то нн – не
выходила.
Следующий этап был посвящён анализу
отношений между продуктами и назначению
приоритетов. Перв оначально все продукты
получали одинаковый приоритет – 20, он
сохранится для продуктов, н е имеющих зависим ых,
часть из них, примерно 2%, считает ся рассчитанной
на момент добавления в список.
В конечном итоге представляющие
наибольшую важность продукты сход ятся на один
суммарный передел. Логично было предположить,
что установка высокого приорит ета (22) конечным
продуктам и тем, что имеют длинную це почку
зависимостей (из двух и более звеньев), позволит
запустить в первую очередь нужные цепочки
пересчётов. Про дукт, названный «Невязка»,
который рассчитывается как разница между
масс ами прихода и рас хода, используетс я только
для проверок и в расчёте друг их продуктов не
участвует. Он получил самый низкий приоритет –
0. С извлечениями и никем не требуемыми
продуктам и расхода схожая ситуация, их пересчёт,
как зависимых, вызывался всякий раз после
изменен ия массы главного по отношению к ним
продукта, невзирая на их невостребованность.
Значения продуктов данной категории
рассчитываются в самом конце принудительно, то
есть не в главном рекурсивном методе, а за его
пределами. Для этого был ор ганизован цикл по
пересчёту таких значений (рисунок 3).
Националь ная ассоциация ученых (НАУ) # 57, 20 20 37
Рис. 3. Расчёт продуктов с самым низким приоритетом
Продукты, имеющие единственное з вено в
цепочке зависимых значений, получали приоритет,
равный 5.
Определение количества звеньев было
возложен о на процедуру checkDependentVal , код
которой представлен на рисунке 4. Она вызывается
от каждого продукта, хранящегося в списке values
и если кол ичество зависимых значений у
зависимых значений данного продукта больше
одного, то процедура вернёт 0, в ином случае 1.
Ри сунок 4. Код метода checkDependentVals
Назначение приоритетов происходило в
процедуре setPriotet . Её код на рисунке 5.
38 Национальная ассоциация ученых (НАУ) # 57, 20 20
Рисунок 5. Код метода setPriotet
Затем были совершены реформы в других
частях кода. Сортировка обогатилась треть им
звеном – идущи е п о убыванию приоритеты
продуктов.
Расширение вариантов расчёта
спровоцировало новое изменений интерфейсной
части, в книгу балансовой модели потребовалось
добавить comboBox со следующими элементами:
исходная версия, оптимизация, оптимиза ция +
приоритеты. Эт и варианты различаются способом
сортировки продуктов и условиями прерывания
расчёта, распрямление переделов распространяется
только на два последних.
Также было установлено, что выход из метода
Evaluate после завершения расчётов всех пр одуктов
почти ник огд а не срабатывал, обычно прерывание
происходило из -за превышения количества
итераций, поэтому была создано условие, которое
завершало расчёт в случае отсутствия изменений в
количестве рассчитанных продуктов на
протяжении пяти итераций по дряд (см. рис. 6) .
Рисунок 6. Дополнительное условие прерывания расчёта
После этого первая часть метода расчёта
приобрела вид, закреплённый на рисунке 7.
Националь ная ассоциация ученых (НАУ) # 57, 20 20 39
Рисунок 7. Считывание способа расчёта
Как было сказано ранее, важность имеет не
только уск орение расчёта, н о и сохранение
точности. Предыдущие версии способов выделения
групп продуктов с помощью приоритетов не
подходили именно из -за проблем с точностью,
описанная здесь полн остью удовлетворяет
заявленным требованиям.
Файлы логирования свидетельс твуют о
суммарном ускорении расчёта балансов 2021 -2027
годов по сравнению с исходной версией на 51 -53
секунды, по сравнению с предыдущим вариантом
оптимизации на 21 -22 секунды. Длитель ность
расчётов балансов разных лет в каждой из
описанных версий расчёта представлены на
рисунке 8.
Рисунок 8. Длительности расчётов балансов для конфигурации 1
Далее были проведены расчёты на другой
конфигурацияи (см. рис. 9).
Рисунок 9. Длительности расчётов балансов для конфигурации 2
40 Национальная ассоциация ученых (НАУ) # 57, 20 20
ЗАКЛЮЧЕНИЕ
Данная работа де монстрирует
заре комендовавшие себя способы оптимизации
расчёта балансов предприятий
горноперерабатывающей промышленности. Среди
них распрямление переносов продуктов, изменение
способов сортировки, а также создание групп
продуктов в зависимости от их приори тета.
СПИСОК ЛИ ТЕРАТУРЫ
1. Рабочий проект Балансовая м одель:
Техническое задание на балансовую модель по
цветным, драгоценным металлам и сере ЗФ ОАО
«ГМК «Норильский никель» 2010 г.
2. Кайтмазов Н. Г. Производство металлов за
Полярным кругом. Технологиче ское пособие —
Но рильск, 2006.
3. Металлоторг – режим до ступа к изд.:
http://www.metaltrade.ru/abc/b/balans.htm
УДК 658.512
УПОРЯДОЧЕНИЯ РАБОТ НА ТЕХНОЛОГИЧЕСКОЙ ЛИНИИ ПРИ НАЛИЧИИ
ПЕРЕНАЛАДОК ОБОРУДОВАНИЯ
Сошников А.В.
Санкт -Петербургский государстве нный университет
промышленных технологий и дизайна
RATIONAL ORDERING OF WORK ON THE PRODUCTION LINE IN THE PRESENCE OF
EQUIPMENT CHANGEOVERS
Soshnikov A.V.
St. Petersburg state University
industrial technology and design
DOI: 10.31618/nas.2413 -5291.2020.1.57.260
АННОТАЦИЯ
Рассмотрена задача в ыбора рациональной о чередности выполнения работ в технологических
комплексах с последовательной структурой, широко распространенных в различных отраслях
промы шленности. Постановка задачи отличается учетом переналадок машин, входящих в л инию, при
смене выпо лняемых работ. Предл ожена многокритериальная модель задачи. Предложен подход и
конкретные методы поиска рациональных вариантов упорядочения работ при запуске их на линию.
Подход базируется на использовании принципов систематической эври стики, позволяющих г енерировать
ограниче нное и управляемое с учетом производственных условий количество вариантов, среди которых,
как предполагается, имеются и рациональные (прак тически приемлемые) варианты.
ABSTARCT
The method of rational ordering of wo rk on the production line in the presence of equipment changeovers
The problem of choosing a rational sequence of work in technological complexes with a consistent structure,
wide spread in various industries, is considered. The problem statement differs ta king into account cha ngeovers of
the cars entering the line, at change of the performed works. A multicriteria model of the problem is proposed.
The approach and specific methods of search of rational variants of ordering of works at their start on the lin e are
offered. The ap proach is based on the use of the principles of systematic heuristics, which allow to generate a
limited and manageable number of options, taking into account the production conditions, among which there are
supposed to be rational (pr actically acceptable) options.
Ключевые слова : технологические линии, переналадки машин, очередность выполнения работ,
многокритериальная модель, эвристические методы, Парето -опт имальные решения
Keywords : process lines, machine changeovers, sequence of wo rk, multi -criteria model, heuris tic methods,
Pareto -optimal solutions .
Задача поиска оптимального или
субоптимального порядка выполнения заданного
множества работ на технологиче ской линии при
одинаковых маршрутах их движения подробно
изучена в теории расписаний, и для нее имеются
разли чные алгоритмы, в основном построенные на
эвристич еских правилах назначения приоритетов
[2],[3].
Критерием качества расписания часто
выступает общ ее время выполнения работ. В
традиционной постано вке не учи тываются
возможные переналадки машин при смене
вып олняемых на них работ. Среди
производственных стру ктур часто встречаются
комплексы машин, формально не связанных в
единую линию, работающих автоном но, но по
отношению к объекту обработки представляющие
цепо чки операций, выполняемых последовательно.
Перенал адки отдельных машин при смене работ
достаточно ча сто имеют место на практике. В этом
случае в такой технологической системе
правомерно ставить зад ачу выбора очередности
выполнения работ, при которой прибли жаются к
своим наилучшим или нормативным значениям
такие показатели как общее время выполнения
работ , затраты на переналадки как отдельных