Скрещивание или кроссинговер в разных алгоритмах определяется поразному. Данный метод зависит от представления данных и специфики задачи. Главное требование — чтобы потомки имели возможность унаследовать черты обоих родителей, «смешав» их каким-либо способом.
Следующий оператор - мутация. Она необходима для поддержания разнообразия в популяциях. Без данного этапа некоторые гены, начиная с определенного шага могут уйти из обращения, а результаты сходиться не к глобальному, а к некоторому локальному решению. Как правило, вероятность мутации равна примерно 1%.
Следует отметить, что наибольшую эффективность (особенно в сравнении с точными методами) генетические алгоритмы будут показывать на задачах с большими размерностями.
Таким образом, генетические алгоритмы не гарантируют нахождения оптимального решения за полиномиальное время, однако обладают хорошими временными показателями, позволяя найти достаточно хорошее решение быстрее других известных детерминированных или эвристических методов. Близость решения к оптимальному будет определяться качеством разработанных методов селекции, скрещивания и мутации.
В данной статье было проведено исследование задачи о рюкзаке и возможных областях ее применения. Были проанализированы точные и приближенные методы решения данной задачи. Эмпирически было установлено, что одним из целесообразных методов решения задачи (особенно, больших размерностей) являются генетические алгоритмы. Особенно данный выбор актуален для задач больших размерностей.
Литература
1.Гладков Л. А. Генетические алгоритмы/ Л. А. Гладков, В. В. Курейчик, В. А. Курейчик/ под ред. В. М. Курейчика. – М.: ФИЗМАТЛИТ,
2010. – 368 с.
2.Струченков В. И. Дискретная оптимизация. Модели, методы, алгоритмы решения прикладных задач [Электронный ресурс]/ Струченков В. И.— Электрон. текстовые данные.— Москва: СОЛОН-ПРЕСС, 2016.— 192 c.—
Режим доступа: http://www.iprbookshop.ru/53817.html.— ЭБС «IPRbooks».
3.Пантелеев А. В. Методы оптимизации [Электронный ресурс]: учебное пособие/ Пантелеев А. В., Летова Т. А.— Электрон. текстовые данные.
—Москва: Логос, 2011.— 424 c.— Режим доступа: http://www.iprbookshop.ru/9093.html.— ЭБС «IPRbooks».
Воронежский государственный технический университет
105
УДК 519.876.5
Е. Ю. Бозюкова, С. А. Олейникова
ОСОБЕННОСТИ ИМИТАЦИОННОЙ МОДЕЛИ ДИСПЕТЧЕРСКОГО УПРАВЛЕНИЯ ШАХТНЫМ ТРАНСПОРТОМ
Объектом исследования в данной работе является шахтный транспорт как сложный комплекс сооружений и устройств, задача которого заключается в приёме и перемещении различных видов грузов и людей. Также необходимо обратить особое внимание на реализацию безопасного движения вагонеток, соответствие графику движения (предполагается на данном уровне реализации, что расписание составлено корректно и эффективно).
Стоит отметить, что на процесс добывания полезных ископаемых влияет много внешних факторов, которые могут внести свои коррективы в работу всех сфер промышленности. Учитывая этот факт, под оптимизацией и автоматизацией подразумевается эффективное управление движением транспортных средств с целью предотвращения их столкновения и обеспечения безопасности движения.
Несмотря на то, что задачи данной работы, отчасти были решены сторонними компаниями, требуется разработать собственное программное средство, которое будет охватывать в полной мере весь функционал диспетчерского управления и контроля.
1. Постановка задачи и ее особенности
В рамках данной работы будет освещаться задача диспетчерского управления шахтным транспортом в горнодобывающей промышленности.
Пусть рассматриваемая условная шахта оснащена одноколейными транспортными сетями, состоящими из конечных пересекающихся между собой маршрутов. Такую транспортную систему можно представить в виде графа.
Необходимо реализовать непрерывный контроль за безопасным движением всех вагонеток, а в случае возникновения возможной аварийной ситуации требуется сформировать соответствующие сигналы диспетчеру. Также требуется следить за движением транспорта по заданному графику, в случае несоответствия (ускорения/запоздания) потребуется оперативное решение.
2. Имитационная модель агента «транспортное средство»
Значимой особенностью поставленной задачи является то, что необходимо регулировать движение транспортных средств таким образом, чтобы не возникало аварийных ситуаций. Для того, чтобы сделать это возможным, необходимо, чтобы каждое транспортное средство
106
взаимодействовало с остальными во время движения по специально выделенному маршруту.
Следовательно, подход, который будет использоваться при реализации такой подсистемы будет основываться на многоагентных системах, где каждое ТС – агент.
Немаловажно заметить, что каждый агент должен контролировать график своего движения и быть мобильным в случае изменения различных факторов. Таких как скорость движения, время погрузки/выгрузки и т.д.
В связи с тем, что маршруты разных ТС могут пересекаться или частично совпадать, были добавлены дополнительные контрольные точки перед пересечением, что позволит существенно увеличить безопасность движения. В случае приближения к контрольным точкам, агенты обмениваются сигналами, в зависимости от которых одно транспортное средство останавливается, а другое продолжает движение.
Таким образом, агент – «Транспортное средство» должен выдавать два вида информации:
-о приближении к точке начала-окончания очередного отрезка;
-о «захвате» некоторого отрезка и, как следствие, невозможности его использования до освобождения остальными транспортными средствами. Исходя из этого, обобщенная модель для отдельного агента - «транспортное средство» будет выглядеть следующим образом (рис. 1).
Без ограничения общности, представим фрагмент функционирования агента «Транспортное средство» на небольшом сегменте транспортной сети, представленном на рис. 1.
Рис. 1. Фрагмент моделируемой транспортной сети
На данном рисунке общий сегмент пути обозначен точками B1 и B2. В этом случае для каждого агента при подходе к данным точкам будет проверяться доступность сегмента, и, в случае доступности – осуществляться его захват.
Фрагмент модели для агента, маршрут которого проходит по отрезкам
[A1, A2]; [B1,B2] и [D1,D2], представлен на рис.2.
107
Рис. 2. Фрагмент модели для агента, движущегося по маршруту A1-D2
Агент создается в момент, соответствующий началу движения данного транспортного средства, заданного в расписании. Далее осуществляется движение, согласно заданному маршруту. Без наличия общих сегментов пути и других агентов была бы возможность организации движения сразу от начальной точки А1 до конечной – D2 (а затем - обратно). Однако, в связи с общими сегментами, движение каждый раз осуществляется до текущей контрольной точки. Далее проверяется незанятость данного сегмента маршрута, и лишь только после этого выполняется его захват и имитируется движение по нему.После окончания движения по общему сегменту (пересечения другой контрольной точки) – ресурс освобождается. Работа (Work) и разгрузка (Razgr) происходят в соответствии с временными характеристиками, указанными в базе данных. Далее в блоке «EndofSm» осуществляется проверка – является ли данное время конечным для данного транспортного средства или необходимо работать далее. В соответствии с этим, происходит или удаление данного агента или возврат на следующий шаг цикла для повторного движения.
Модель агента «транспортное средство» была реализована с помощью, встроенной в AnyLogic железнодорожной библиотеки [1, 2]. Представим результат работы модели для трех агентов, первый из который движется по маршруту A1-D2; второй – по маршруту A1-E2; третий – по маршруту С1 – Е2 (рис.3).
На данном рисунке видно, что агент 2 в настоящее время движется по общему сегменту; агент 3 ожидает возможности движения по нему у контрольной точки, а агент 1 только подходит к общему сегменту. Как только агент 2 освободит сегмент, его захватит агент 3 (поскольку он пришел раньше), а после освобождения он будет захвачен агентом 1 и т.д.
Рассмотрим особенности диспетчерского управления движением транспорта. В частности, интересен случай, когда по каким-либо причинам два агента попали на общий сегмент. В этом случае диспетчер должен подать
108
сигнал об остановке движения каждому из агентов. В данном фрагменте модели это регулируется семафорами, которые загораются красным цветом в случае невозможности движения.
Рис. 3. Результат работы модели
Получив данный сигнал, агент – транспортное средство должен немедленно остановиться. Программно это реализуется изменением текущей скорости агента с помощью метода setSpeed() агента «Транспортное средство» (установкой данного значения в 0) [3].
Целью работы являлась модели, имитирующей функционирование агентов «Транспортное средство» для подземных шахт и особенности диспетчерского управления этим движением. Был рассмотрен фрагмент реализации безопасного движения шахтного транспорта в среде AnyLogic при помощи мультиагентного подхода, а также особенностям диспетчерского управления в случае, если по каким-либо причинам два агента оказались на общем сегменте пути.
Литература
1.Боев В. Д. Концептуальное проектирование систем в AnyLogic и GPSS World [Электронный ресурс]/ Боев В. Д.— Электрон. текстовые данные.— Москва: Интернет-Университет Информационных Технологий (ИНТУИТ),
2016.— 542 c.— Режим доступа: http://www.iprbookshop.ru/73656.html.— ЭБС «IPRbooks».
2.Карпов Ю. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. – СПб.: БХВ – Петербург, 2005. – 400 с.
3.Borshchev A. The Big Book of Simulation Modeling. Multimethod
Modeling with AnyLogic 6 [Электронный ресурс]. – Режим доступа: https://www.anylogic.ru/resources/books/big-book-of-simulation-modeling/.
Воронежский государственный технический университет
109