УДК 519.711
ИСПОЛЬЗОВАНИЕ МЕТОДОВ ЭВОЛЮЦИОННОЙ БИОКИБЕРНЕТИКИ ПРИ ПРОЕКТИРОВАНИИ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
ЧАЛЫЙ С.Ф._______________________________
Рассматривается задача проектирования и развития распределенных информационных систем с использованием методов эволюционного моделирования. Предлагается подход к проектированию сложных распределенных систем на основе применения генетического алгоритма и генетического программирования.
1. Эволюционная биокибернетика
Эволюционная биокибернетика охватывает спектр задач, связанных с моделированием процессов возникновения живых организмов и использованием полученных знаний при разработке технических систем. Она включает два основных направле-ния[1]:
— эволюционная нейрокибернетика,
— эволюционное моделирование.
Эволюционная нейрокибернетика изучает эволюцию интеллектуальных свойств биологических организмов.
Эволюционное моделирование рассматривает вопросы моделирования общих закономерностей эволюции, модели возникновения молекулярно-генетических информационных систем, эволюционные модели искусственной жизни и прикладные эволюционные модели.
Среди этих направлений целесообразно выделить прикладное эволюционное моделирование, которое занимается оптимизацией практически важных для человек систем на основании принципов биологической эволюции.
В области прикладного эволюционного моделирования работали ряд авторов. В 1966 году Л. Фогель, А. Оуэне и М.Уолш [3] предложили схему эволюции логических автоматов. В 1975 году Дж. Холланд [4] в своей книге “Адаптация в естественных и искусственных системах” предложил генетический алгоритм. В середине 70-х годов немецкие ученые И.Рехенберг, Г.П.Швефель разрабатывали эволюционные стратегии. В результате этих работ были сформулированы основные эволюционные алгоритмы.
Эволюционный алгоритм представляет собой оптимизационный метод, основанный на эволюции популяции “особей”. Каждая особь содержит набор генов и характеризуется приспособленностью — многомерной функцией ее генов. В процессе моде-
лирования эволюции выполняется максимизация функции приспособленности с помощью многократного выполнения операций отбора, рекомбинации (“кроссинговера”) и мутации геномов особей. На каждом шаге эволюции происходит отбор большинства (но не всех) особей с высоким значением функции приспособленности и, таким образом, в целом качество популяции особей на каждом шаге возрастает.
Существуют следующие основные эволюционные алгоритмы:
— генетический алгоритм,
— эволюционное программирование,
— эволюционная стратегия,
— системы классификации,
— генетическое программирование.
Генетический алгоритм используется при решении задач многокритериальной оптимизации функций дискретных переменных (в частности, при решении задачи составления расписаний). Генетический алгоритм основан на представлении каждой особи в популяции в виде хромосомы, описываемой строкой символов. Генетический алгоритм выполняет операции отбора, рекомбинации и мутации хромосом особей.
Эволюционное программирование и эволюционная стратегия являются стохастическими стратегиями оптимизации, аналогичными генетическому алгоритму, которые, однако, используют лишь мутацию в процессе эволюции и, следовательно, не накладывают никаких ограничений на представление хромосом. Они применяются при оптимизации непрерывных функций.
Система классификации ранжирует поступившие на ее вход данные, причем классификатор представляет собой эволюционирующую популяцию особей. В системах классификации обычно употребляется генетический алгоритм.
Генетическое программирование ориентировано на использование эволюционных методов при программировании. Популяция особей в данном случае содержит программы, описываемые в виде древовидной структуры. В генетическом программировании применяется только операция кроссинговера (скрещивания хромосом). Методы генетического программирования были разработаны в конце 80-х — начале 90-х годов Дж. Коза.
Основные особенности работы эволюционных алгоритмов целесообразно рассмотреть на примере генетического алгоритма, содержащего все основные генетические операции.
2. Генетический алгоритм
Генетический алгоритм описывает эволюцию некоторой популяции индивидуумов. Каждый индивидуум характеризуется своей хромосомой Sk, которая определяет индивидуальную пригодность f(Sk); к = 1,..., n; n — размер популяции. Хромосома
136
РИ, 2000, № 4
описывается строкой символов Sk = (Sk1, Sk2,--,SkN),T^e N - длина строки. В соответствии с данным подходом символы Sk1 мотут интерпретироваться как тены хромосомы Sk [2].
Процесс эволюции описывается последовательностью поколений. В каждом поколении отбираются индивидуумы с наибольшим значением функции приспособленности. Далее хромосомы выбранных индивидуумов перекрещиваются и подвертаются мутациям.
Генетический алгоритм включает в себя следующую последовательность шатов (популяция в t-поколении определяется как {Sk(t)}):
0. Создается начальная популяция {Sk(0)}.
1. Выполняется оценка пригодностиf(Sk) каждой личности Sk в популяции {Sk(t)}.
2. Проверяется достижение критерия сходимости, например:
— достижение определенной оценки приспособленности,
—достижение заданного количества итераций Т.
При достижении указанного критерия работа алгоритма завершается.
3. Осуществляется отбор индивидуумов Sk сотлас-но значению их функции приспособленности/^).
4. Формируется новое поколение {Sk(t+1)} на основе рекомбинации хромосом отобранных особей.
5. Сформированное поколение {Sk(t+1)} подверта-ется мутации из-за случайной перестановки тенов.
6. Повторяются шати 1-5 для t = 0, 1, 2, ..., до достижения заданного критерия сходимости.
Существуют варианты конкретизации генетического алгоритма, которые отличаются в методах выбора, рекомбинации, хромосомного представления.
Традиционный теистический алгоритм работает на двоичной строке фиксированной длины (N= const) и предполатает использование следующих принципов:
— отбор особей для новой популяции пропорционально значению функции пригодности,
— скрещивание в одной точке,
— мутации в одной точке.
Отбор особей для новой популяции пропорционально значению функции пригодности означает, что в течение шата 3 родители Sk индивидуумов новой популяции выбираются с вероятностью, которая пропорциональна значению их функции пригодности /(Sk). Другим примером выбора является ранжирование: определенное количество наилучших индивидуумов популяции {Sk(t)} используется в качестве родителей нового поколения.
Скрещивание и мутация в одной точке происходит аналотично биолотический эволюции: если у нас
есть два родителя Sj = (Sn, S12,...,S1N) и S2 = (S21,
522.. .., S2N), их дети - (SЛ,..., S1m, S2,m+1,...,S2N) и (S21,..., S2m, Si,m+i,...,SiN); т.е. начало и окончание хромосомы взято от разных родителей. Аналотично выполняется скрещивание для двух и более точек. Такое скрещивание инотда дополняется инверсиями последовательности символов в хромосоме. Инотда используется однородная рекомбинация, при которой символы хромосомы первого создаваемого индивидуума взяты из родителей (S1 или S2) произвольно для любой символьной позиции. Второй создаваемый индивидуум получает символы разности; например, S1 и S2 мотут иметь следующие хромосомы: (S11., S22, S13, S14,...,S2N) и (S21, S12, S23,
524.. ...51N).
Таким образом, генетический алгоритм отражает общие принципы генетической эволюции и реализует эвристический метод оптимизации, ориентированный на решение комбинаторных задач при отсутствии полной априорной информации о решаемой проблеме в терминах решаемой задачи. При этом символьная строка—хромосома применяется для кодирования значений оптимизируемых параметров.
Основные проблемы, возникающие при использовании генетического алгоритма для решения практических задач, состоят в рациональном выборе функции приспособленности и хромосом, описывающих особи популяции.
3. Использование эволюционных методов при разработке информационных систем
Эволюционные алгоритмы обладают рядом характеристик, обеспечивающих их применимость при решении задач проектирования и развития распределенных информационных систем:
— одновременный поиск решений задачи во мно-тих точках по всему пространству поиска,
— поиск решения задачи по единому алгоритму независимо от физического смысла решаемой задачи,
— сочетание случайных изменений (мутаций и рекомбинаций) тенов на каждом шате эволюции.
Исходя из указанных особенностей, целесообразно выделить следующие направления использования эволюционных методов при разработке распределенных информационных систем:
— создание и развитие информационного обеспечения системы на основе метода генетического протраммирования,
— создание и развитие распределенной конфиту-рации аппаратных средств на основе генетического алгоритма,
— создание и развитие распределенной конфиту-рации протраммных средств на основе метода генетического протраммирования,
— классификация решаемых информационной системой задач с формализацией функции приспособленности.
РИ, 2000, № 4
137
Направление создания и развития информационного обеспечения системы предполагает выделение в ней элементарных информационных структур, формирование хромосом из наборов таких структур и, наконец, отбор таких вариантов информационного обеспечения, которые наилучшим образом удовлетворяют предъявляемым пользователем требованиям.
Направление создания и развития распределенной конфигурации аппаратных средств подразумевает, что каждый их элемент описывается отдельным геном, а каждый вариант конфигурации — хромосомой особи. Функция приспособленности должна выражать один глобальный критерий — максимальное удовлетворение потребностей пользователей информационной системы.
В соответствии с третьим направлением программное обеспечение информационной системы должно строиться на основе базового набора объектов—так называемого терминального набора, и базового набора операций над элементами терминального набора—т.е. функционального набора. Для каждой программы создается геном на основе элементов терминального и функционального множеств, над которым в дальнейшем многократно выполняется операция кроссинговера с целью найти варианты программы с более высоким значением функции приспособленности.
Направление классификации решаемых информационной системой задач должно обеспечивать решение важной проблемы — формализацию функции приспособленности на основе противоречивых требований, выдвигаемых пользователем. Данная проблема изначально плохо формализуема. Следовательно, эволюционное создание функции при-
УДК 681.32:519.713
ДОРОГИ С РЕЗЕРВУАРНОЙ СТРУКТУРОЙ
ЕВДОКИМОВ А.А., САМОЙЛЕНКО Н.И.__________
Рассматривается новый подход к водоотведению дождевых стоков, основанный на сооружении автомобильных дорог с резервуарной структурой. Приводятся основные преимущества и недостатки дорог, связанные с их сооружением и эксплуатацией. Дается экономическая оценка технологии строительства дорог с резервуарной структурой.
В настоящее время появились новые подходы к решению проблем, связанных с отведением дождевых стоков [1,2]. Один из таких подходов сводится к проектированию дорог и площадей с резервуарной структурой [3] .
В дождевом водоотведении дорожные покрытия с резервуарной структурой предназначены для снижения максимального объёма стекаемого потока за счёт временного хранения дождевых вод в полотне этих покрытий. Их можно рассматривать как подземные водохранилища. Как следствие, это позволяет уменьшить объем водного потока.
138
способленности является наиболее рациональным путем ее решения.
Следует отметить, что при использовании методов эволюционного программирования в разработке и развитии информационных систем целесообразно применять многоуровневый, иерархический подход. При таком подходе выполняется моделирование эволюции каждой системы нижнего уровня. Результаты такого моделирования образуют гены систем следующего уровня, и процесс эволюции повторяется уже на более высоком витке.
Предложенный подход обеспечивает возможность автоматизации проектирования и сопровождения распределенных информационных систем. Однако его эффективность во многом зависит от полноты начального множества возможных вариантов конфигурации информационного, аппаратного и программного обеспечения создаваемой системы.
Литература: 1. Redko V.G. Applied Evolutionary Modeling.htpp://pespmc 1.vub.ac.be/cgi-bin/ APPEVMOD.htm, 1999. 2. Redko V.G. Genetic Algorithms.htpp://pespmc 1.vub.ac.be/cgi-bin/ GENETALG.htm, 1999. 3. FogelL.J, OwensA.J. & Walsh M.J. Artificial Intelligence through Simulated Evolution, New York: Wiley. 1966. 4. Holland J.H. Adaptation in Natural and Artificial systems, Ann Arbor, MI: The University of Michigan Press. 2nd edn. (1992) Boston, MA: MIT Press. 1975.
Поступила в редколлегию 22.09.2000
Рецензент: д-р техн. наук, проф. Левыкин В.М.
Чалый Сергей Федорович, канд. техн. наук, доцент кафедры искусственного интеллекта ХТУРЭ. Научные интересы: эволюционное моделирование. Адрес: Украина, 61166, Харьков, пр.Ленина,14, тел. 40-93-35.
Дороги с резервуарной структурой могут также уменьшать объемы воды, проходящие транзитом в сетях, за счет просачивания в грунтовое основание дороги. Поверхности дренажных покрытий должны быть аналогичны натуральным проницаемым грунтам, которые находятся под покрытием, позволяя таким образом приближаться к естественному водообороту.
Их гидравлическое действие обеспечивается за счет:
а) мгновенной пропитки полотна дороги при проникновении в него дождевой воды. Это проникновение может быть распределенным (проницаемые покрытия, как дренажные асфальтобетоны или пористые мостовые) или локализованным (непроницаемые покрытия с зарешеченными отверстиями или со сливными воронками, соединенными с дренажом, обеспечивающие распределение воды в материале покрытия);
б) временного накапливания воды. Накопление происходит внутри полотна дороги в пустотах материала покрытия;
в) медленного отвода воды. Отвод накопленной воды может быть распределенным (прямое проникновение в грунтовое основание дороги), локализо-
РИ, 2000, № 4