УДК 004.023

МОДИФИЦИРОВАННЫЙ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ ФОРМИРОВАНИЯ ГРАФИКА ПРОХОЖДЕНИЯ ЛЕЧЕБНО-ОЗДОРОВИТЕЛЬНЫХ ПРОЦЕДУР

Задорожная Е.Г.*, Савкова Е.О.*, Кожбакова А.А.**
* Донецкий национальный технический университет
кафедра автоматизированных систем управления
** Федеральное государственное автономное образовательное учреждение высшего образования «Севастопольский государственный университет»
E-mail: ekaterina.zadorozhnaya.95@gmail.com
ФГБОУ ВО «Донецкий национальный технический университет»
г. Донецк, Российская Федерация

Аннотация

Задорожная Е.Г., Савкова Е.О., Кожбакова А.А. Модифицированный генетический алгоритм формирования графика прохождения лечебно-оздоровительных процедур. Разработан алгоритм, особенностью которого является использование двух взаимосвязанных хромосом. Рассмотрены модифицированные процедуры скрещивания и мутации, адаптированные для работы с предложенными структурированными объектами генетической оптимизации.

Ключевые слова

ГЕНЕТИЧЕСКИЙ АЛГОРИТМ, ОПТИМИЗАЦИЯ, РАСПИСАНИЕ, ЛЕЧЕБНО-ОЗДОРОВИТЕЛЬНЫЕ ПРОЦЕДУРЫ, ХРОМОСОМЫ, КРОССИНГОВЕР, МУТАЦИЯ

MODIFIED GENETIC ALGORITHM FOR CREATION OF THE SCHEDULE FOR THE PASSING OF HEALTH-RELATED PROCEDURES

Zadorozhnaya K.G., Savkova H.O., Kozhbakova A.A.
«Donetsk National Technical University», Donetsk, Russian Federation

Abstract

Zadorozhnaya K.G., Savkova H.O., Kozhbakova A.A. Modified genetic algorithm for creation of the schedule for the passing of health-related procedures. The algorithm which feature is use of two interconnected chromosomes is developed. Modified crossing and mutation procedures adapted to work with the proposed structured objects of genetic optimization are considered.

Keywords

genetic algorithm, optimization, schedule, health-related procedures, chromosomes, crossover, mutation

Введение

Для разработки соответствующего заданным требованиям алгоритма формирования графика прохождения лечебно-оздоровительных процедур были рассмотрены различные методы решения задач календарного планирования, в том числе и метаэвристики, которые хорошо себя показали при решении оптимизационных, комбинаторных, а также других видов задач. Алгоритм метаэвристик основан на случайном поиске возможных решений задачи, оптимальных или близких к оптимальным, пока не будет выполнено некое условие или достигнуто заданное число итераций.

В результате анализа было выявлено, что ни один из методов в классическом представлении не может покрыть все аспекты разрабатываемой предметной области. Однако, генетический алгоритм является более гибким в процессе поиска решения, поскольку использует несколько точек поискового пространства [1]. Для решения поставленной задачи предложено использовать модифицированный генетический алгоритм, который позволит получать оптимальные решения с учетом особенностей и специфики работы лечебно-оздоровительных учреждений.

Представление особи

В разрабатываемом модифицированном генетическом алгоритме подразумевается, что особь является возможным вариантом графика прохождения лечебно-оздоровительных процедур для выбранного пациента pi.

Каждая особь представлена в виде двух взаимосвязанных хромосом, где информация 1-ой – оборудование, отведенное на проведение назначенных процедур, а 2-ой – сеансы (промежутки времени), за которые процедуры будут проведены пациенту (рисунок 1) [2]. Также в данной задаче можно использовать особь, состоящую из трех хромосом, где 3-я содержит информацию о специалистах, предоставляющих процедуры. Однако для упрощения алгоритма данная информация будет учитываться в назначениях aps.

В предлагаемом генетическом алгоритме не требуется кодирования генов хромосом в виде нулей и единиц как это принято в существующих генетических алгоритмах. Гены 1-ой хромосомы содержат информацию об оборудовании из множества Eq = {eqz}, где z ∊ [1, Neq]. При этом каждое оборудование предназначено для определённой процедуры или вида процедур. Поэтому оборудование (eqznum, eqztype) характеризуется номером eqznum и типом проводимых процедур eqztype. Гены 2-ой хромосомы содержат информацию о промежутках времени из множества временных интервалов T = {tk}, где k ∊ [1, Nt]. Каждый временной интервал (tkdate, tktime) характеризуется двумя параметрами: tkdate – дата проведения лечебно-оздоровительной процедуры (номер дня), tktime – время (номер временного интервала в течение дня).

Структура особи
Рисунок 1 – Структура особи

Для структурирования необходимых данных возникла необходимость в множестве назначения Ap = {aps}, где s ∊ [1, f]. Данное множество содержит блочную информацию о назначенных процедурах procj пациенту pi, и специалистах, которые будут их проводить.

В обеих хромосомах одинаковое количество генов f, равное количеству назначенных процедур пациенту. Следовательно, s гену 1-ой хромосомы соответствует оборудование (из числа допустимых), выбранное для предоставления процедуры, а s гену 2-ой хромосомы – время её проведения [2].

Этапы модифицированного генетического алгоритма

Разработанный модифицированный генетический алгоритм для решения задачи формирования оптимального графика прохождения лечебно-оздоровительных процедур можно представить следующей последовательностью действий:

  1. Установка параметров эволюции. Инициализация начальной популяции для одного пациента. Формирование каждой особи происходит следующим образом. Для каждого гена 1-ой и 2-ой хромосомы, соответствующей назначению aps для pi пациента, задаются некоторые значения: для 1-ой - номер оборудования из допустимых для проведения назначенной процедуры, для 2-ой – номер свободного интервала времени. Описанный процесс продолжается до момента достижения численности популяции, определяемой в начале алгоритма при установке параметров эволюции.
  2. Селекция особей. Оценка всех особей, входящих в популяцию, отбор наиболее приспособленных особей, имеющих более предпочтительные значения функции пригодности по сравнению с остальными особями [3]. Оператор отбора является важнейшим фактором, влияющим на эффективность генетического алгоритма, поскольку неудачный выбор метода селекции может привести к сужению области поиска и к потере наиболее приспособленных особей популяции.
  3. Для предотвращения потери лучших особей в качестве метода отбора предлагается использовать турнирную селекцию, дополненную принципом элитарной стратегии [4], которая заключается в защите наилучших особей на последующих итерациях. Из предыдущей популяции выбирается Q отдельных особей (число Q имеет фиксированное числовое значение), имеющих максимальное значение функции пригодности (1) [3].

    Функцией пригодности в данном случае является целевая функция, представленная в виде суммы значений критериев потери качества К для всех назначенных процедур пациенту pi. Требуется найти такое решение, которое минимизирует значение целевой функции:

    F = ∑p=1N Kp → min,

    (1)

    где Kp – значение критерия потери качества для одной из назначенных процедур пациенту.

    При этом Kp вычисляется по формуле:

    K = f(eqz, tk) = ∑q=1M cq × koefq(eqz, tk),

    (2)

    где koefq − значение коэффициента штрафа за невыполнение q−го частного критерия;
    cq − оценка, определяющая степень невыполнения q−го частного критерия;
    eqz – оборудование;
    tk − временной интервал [4].

  4. Создание потомков выбранных пар родителей – выполнение оператора кроссинговера. Для каждой пары отобранных особей случайным образом выбираются позиции гена G1 и G2 и производится обмен участками генетического кода между соответствующими хромосомами родительских особей. Первая часть одного родителя копируется в первого потомка. Во вторую часть потомка копируются гены второго родителя. Если такие гены уже встречаются в потомке, то они пропускаются, а оставшуюся часть потомка дополняют генами первого родителя [5].
Схема скрещивания двух особей
Рисунок 2 – Схема скрещивания двух особей
  1. Мутация новых особей. Мутация играет достаточно важную роль в работе генетического алгоритма: вносит дополнительное разнообразие в текущую популяцию и тем самым расширяет пространство поиска оптимального решения [3].
Схема мутации особи
Рисунок 3 – Схема мутации особи

В результате мутации s-му 1-ой хромосомы будет присвоен номер оборудования, из допустимого набора оборудований, предназначенных для проведения данной процедуры, а для s-го гена 2-ой хромосомы будет выбрано любое свободное значение временного интервала для данного оборудования (рисунок 3).

  1. Проверка значений функции конфликтов. Если этот ген не равен нулю, значит в хромосоме или одинаковым временным интервалам соответствуют разные процедуры, или одному оборудованию соответствуют разные процедуры, или одно оборудование соответствует одинаковым временным интервалам. Такое расписание содержит конфликт, который обязательно должен быть разрешен. В этом случае следует заменить номер оборудования или временного интервала на свободный (рисунок 4).
Проверка значения функции конфликтов
Рисунок 4 – Проверка значения функции конфликтов

Ген «конфликтов» позволяет сократить время проведения вычислительного эксперимента, что непосредственно ускоряет процесс сходимости алгоритма и получения оптимального решения [3].

  1. Расширение популяции новыми порожденными особями. Оператор отбора выполняет функции фильтрующего инструмента, который выделяет в составе популяции особи, имеющие низкое значение функции пригодности. Выделенные найденные слабые особи удаляются из популяции, происходит сокращение расширенной популяции до исходного размера [3].
  2. Обнаружена сходимость или достигнуто максимальное количество итераций. В результате применения операторов селекции, кроссинговера и мутации формируется популяция потомков, которая заменяет родительскую популяцию, после чего выполняется проверка сходимости алгоритма.

Если критерий останова алгоритма выполнен, то выбор лучшей особи в конечной популяции – результат работы алгоритма. Иначе переходим на шаг 2 (селекция особей) и выполняем алгоритм до тех пор, пока не выполнится критерий останова. В качестве решения выбирается особь, которая в наибольшей степени удовлетворяет всем требованиям и ограничениям разрабатываемой предметной области [2].

Существует также менее ресурсозатратный вариант решения. Упрощение происходит на уровне формирования особи. Поскольку каждая процедура procj, назначенная пациенту pi может предоставляться с определённой периодичностью (каждый день, раз в 2-3 дня и т. д.), то оптимально будет определить оборудование и интервал времени для 1-ой процедуры каждого вида, а потом занимать полученные интервалы с указанной периодичностью. Эффективность обоих вариантов будет рассмотрена экспериментальным путем.

Выводы

В рамках данной статьи был детально описан разрабатываемый модифицированный генетический алгоритм формирования оптимального графика прохождения лечебно-оздоровительных процедур. В качестве объектов генетической оптимизации было предложено использовать особи, состоящие из двух хромосом, связанных между собой генами, которые характеризуют блоки назначений процедур.

Также были предложены модифицированные процедуры скрещивания, мутации, проверки значений функции конфликтов, специально адаптированные для работы с предложенными структурированными объектами генетической оптимизации. Это позволяет существенно упростить учет ограничений, вызванных особенностями разрабатываемой предметной области.

В результате была сформирована теоретическая база для реализации модифицированного генетического алгоритма. Целесообразно проводить исследования по оптимизации и улучшению разрабатываемого алгоритма для получения более удовлетворяющих результатов.

Литература

1. Задорожная Е.Г., Савкова Е.О. Метаэвристические алгоритмы формирования оптимального графика прохождения лечебно-оздоровительных процедур // Информатика, управляющие системы, математическое и компьютерное моделирование (ИУСМКМ – 2017) / Материалы VIII международной научно-технической конференции - Донецк: ДонНТУ, 2017 г. - с. 270-275.
2. Кабальной Ю.С., Шехтман Л.И., Низамова Г.Ф., Земченкова Н.А. Композиционный генетический алгоритм составления расписания учебных занятий // Вестник УГАТУ / Научные статьи и доклады / Информационные технологии - Уфа: УГАТУ, 2006 г. - Том 7, № 2 (15). - с. 99–107.
3. И.Ф. Астахова, А.М. Фирас Составление расписания учебных занятий на основе генетического алгоритма // Вестник ВГУ / Системный анализ и информационные технологии - Воронеж: ВГУ, 2013 г., - № 2, с. 93-99.
4. Назимова Г.Ф. Математическое и программное обеспечение составления расписаний учебных занятий на основе агрегативных генетических алгоритмов // Автореферат дис. к.т.н. - Уфа 2006 г. – с. 20.
5. Сиделев А.А., Крушель Е.Г. Методы и алгоритмы оперативного управления учебным процессом в профессиональных образовательных организациях // Волгоград, 2018 г.- с. 171