Использование агрегативного генетического алгоритма для составления расписания

УДК 004.655.3

ИСПОЛЬЗОВАНИЕ АГРЕГАТИВНОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ СОСТАВЛЕНИЯ РАСПИСАНИЯ

А. А. Коробкин

На основе теории генетических алгоритмах в рассмотрение принята предметная область планирования расписания учебных занятий. Разработан агрегативный генетический алгоритм, позволяющий проектировать наиболее оптимальный вариант расписания занятий

Ключевые слова: генетический алгоритм, кроссинговер, селекция, мутация, популяция

Составление расписания учебных занятий является одной из важнейших задач управления учебным процессом. Расписание занятий представляет собой пространственновременной график их проведения с «привязкой» к конкретным учебным группам и дисциплинам обучения. В данной статье будет описано применение генетического алгоритма для решения поставленной задачи.

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

a) Множество обучающихся групп в.

b) Множество аудиторий А.

c) Множество дисциплин Б.

ё) Множество преподавателей Р.

е) Множество учебных пар Т (временных интервалов

проведения занятий).

Между вышеперечисленными

множествами объектов существуют связи, отражающие организационную структуру образовательной системы, задачей которой является реализация учебного процесса. Исходя из этого, теоретико-множественную модель расписания можно представить в виде функции Я, отображающей декартово произведение множеств на множество нулей и единиц {0,1}:

Я : в х А х Б х Р х Т ^ {0,1} .

Если в указанной группе проводятся в занятия в аудитории А по дисциплине Б,

Коробкин Александр Александрович - ВГПУ, соискатель, тел. 89204022884

преподавателем Р, во время учебной пары Т , то функция принимает значение равное 1, в противном случае - 0.

Эффективность работы генетического алгоритма во многом определяется способом представления варьируемых параметров

оптимизационной задачи и выбором

генетических операторов. Здесь следует

заметить, что определение структуры особей и хромосом, их числа зависит от специфики рассматриваемой задачи, от количества

варьируемых параметров решаемой

оптимизационной задачи. Так, каждая

отдельная особь генетического алгоритма может состоять из одной хромосомы или же представлять собой набор определенного количества хромосом. При этом каждая особь является одним из возможных решений

оптимизационной задачи.

Учитывая связь между объектами

«группы» и «дисциплины» на основе учебного плана мы можем образовать новую структуру, которую назовём «занятие». «Занятие»

представляет собой агрегированный объект. При составлении расписания мы будем иметь дело с множеством блоков занятий, назовём его 2. Каждый элемент этого множества

определяет дисциплину, по которой требуется провести занятие у конкретной учебной группы. При решении задачи составления

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

соответствует номеру блока занятия, так, ъ - й ген и в первой, во второй и в третьей хромосоме характеризует блок занятия ъ из множества 2.

Хромосома аудиторий

Схематическое изображение хромосом

Информационным наполнением первой хромосомы являются аудитории, используемые в учебном процессе, второй хромосомы - время проведения занятий (пары), третьей -преподаватели, ведущие этот блок занятий.

Таким образом, каждая из них состоит всего из трех хромосом вместо шести, как это имеет место при непосредственном использовании генетических алгоритмов. При этом каждая особь (вариант расписания) будет содержать в себе все необходимые блоки занятий с присвоенными им номерами аудиторий, установленными номерами пар (учебных единиц времени) и номерами преподавателей и тем самым однозначно определять место, время и преподавателя, проводящего занятие.

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

Следующим этапом алгоритма будет селекция. Оператор отбора является важнейшим фактором, влияющим на эффективность генетического алгоритма. В

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

особям популяции, автоматически без изменений перенося их в следующее поколение, что способствует постепенному накоплению более качественных вариантов расписаний (особей) в процессе многократного выполнения всего алгоритма.

Далее применяется одноточечное

скрещивание «кроссинговер». Кроссинговер особей в предлагаемом нами агрегативном генетическом алгоритме происходит по

следующей схеме: случайным образом из числа наиболее приспособленных выбираются две особи. Далее для каждой пары отобранных особей случайным образом разыгрываются позиции гена (локус) Ь1 и Ь2 и производится обмен участками генетического кода между соответствующими хромосомами родительских особей.

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

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

"направленная" мутация генов особи. Оператор " направленной" мутации заключается в следующем: последовательно просматриваются гены первой и второй хромосомы и как только обнаруживаются такие фрагменты расписания, для которых не выполняются ограничения (например, присутствуют пересечения),

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

Предлагаемая "направленная" мутация

позволяет внести дополнительное

многообразие в популяцию особей, способствует ускорению сходимости

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

При решении задачи составления расписания учебных занятий каждая такая особь генетического алгоритма будет

представлять собой готовый вариант

расписания занятий. Совокупность всех особей (вариантов расписаний) является множеством возможных решений данной задачи.

Алгоритм заканчивает свою работу, когда некоторый процент особей

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

приспособленности наиболее "лучшего" индивидуума оказывается незначительным, то работу алгоритма можно завершить. И в первом, и во втором случае в качестве решения задачи принимается особь популяции, которая в большей степени, чем все остальные особи будет удовлетворять требованиям,

предъявляемым к расписанию учебных занятий в вузе (обладать наименьшим значением функции приспособленности).

На последнем этапе происходит выбор наилучшей особи среди всех допустимых решений.

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

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

Литература

1. Гладков Л.А., Курейчик В.В., Курейчик В,М. Генетические алгоритмы / Под ред. В.М. Курейчика. - 2-е изд., испрю и доп. - М.:ФИЗМАТЛИТ, 2006. - 320 с. -¡БВЫ 5-9221- 0510-8.

2. Емельянов В.В. Теория и практика эволюционного моделирования/В.В, Емельянов, В.В. Курейчик, В.М. Курейчик. -М :Физматлит, 2003г. - 431с.

3. Рутковская Д. Неяронные сети, генетические алгоритмы и нечеткие системы / Д.Рутковская, М.Пилиньский, Л.Рутковский. - М : Горячая линия -Телеком, 2006 г. - 452 с.

Воронежский государственный педагогический университет

USE OF AGGREGATE GENETIC ALGORITHM FOR SCHEDULE DRAWING UP

A.A. Korobkin

On the basis of the theory genetic algorithms in consideration the subject domain of planning of the schedule of studies is accepted. The aggregate genetic algorithm is developed, allowing to project the optimal variant of a lesson schedule

Key words: genetic algorithm, кроссинговер, selection, a mutation, population

187