УДК 621.3.049.771.14
Б.К. Лебедев, О.Б. Лебедев
ГИБРИДНЫЙ БИОИНСПИРИРОВАННЫЙ АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ СИМВОЛЬНОЙ РЕГРЕССИИ*
Рассматривается задача символьной регрессии, заключающаяся в нахождении математического выражения в символьной форме, аппроксимирующего зависимость между конечным набором значений независимых переменных и соответствующими значениями зависимых переменных. Критерием качества приближения (целевой функции) является среднеквадратичная ошибка: сумма квадратов разности значений модели и зависимой переменной для всех значений независимой переменной в качестве аргумента. Символьная регрессия — метод построения регрессионных моделей путем перебора различных произвольных суперпозиций функций из некоторого заданного набора. Предлагается гибридный алгоритм для решения задачи символьной регрессии. Используется традиционное представление алгебраической формулы в виде синтаксического дерева. Листовые узлы соответствуют переменным или числовым константам, а не листовые узлы содержат операцию, которая выполняется над дочерними узлами. В процессе синтеза алгебраической формулы решаются две задачи. Первая задача заключается в построении структуры дерева с безымянными вершинами. Вторая задача заключается в конкретизации значений вершин дерева. Листовые узлы сопоставляются с терминальным множеством, а нелистовые узлы сопоставляются с функциональным множеством. Первая задача решается методами муравьиной колонии. Для решения второй задачи используется генетический алгоритм. Оценка формулы вычисляется после решения обеих задач — построения муравьем дерева с безымянными вершинами и последующей идентификацией вершин с помощью генетического алгоритма Разработана структура графа поиска решений G=(X,U). При больших размерностях временные показатели разработанного алгоритма превосходят показатели сравниваемых алгоритмов при лучших значениях целевой функции. Экспериментальная временная сложность алгоритма на одной итерации при фиксированных значениях управляющих параметров составляет O(nlgn), где n - мощность терминального множества.
Символьная регрессия; синтаксическое дерево; терминальное множество; функциональное множество; муравьиная колония; генетический поиск; гибридный алгоритм.
B.K. Lebedev, O.B. Lebedev
HYBRID BIOINSPIRED ALGORITHM FOR SOLVING SYMBOLIC REGRESSION PROBLEM
The problem of symbolic regression is to find mathematical expressions in symbolic form, approximating the relationship between the finite set of values of the independent variables and the corresponding values of the dependent variables. The criterion of quality approach (objective function) is the mean square error: the sum of the squares of the difference between the model and the values of the dependent variable for all values of the independent variable as an argument. Symbolic regression — method of constructing regression models by trying different superpositions of arbitrary functions from a given set. The paper is offered hybrid algorithm for solving symbolic regression. Use the traditional idea of an algebraic formula in the form of syntax tree. Leaf nodes correspond to variables or numeric constants rather than leaf nodes contain the operation that is performed on the child nodes. A distinctive feature of the process tree representation as a linear recording is preclude loss plurality of terminal elements, but the model can be an arbitrary function of the superposition of a set. In the process of synthesis of algebraic formula two problems are solved. The first task is to build a tree structure with anonymous tips. The second task is to specify
* Исследование выполнено за счет гранта Российского научного фонда (проект № 14-11-00242) в Южном федеральном университете.
the values of the tree tops. Leaf nodes are compared with the terminal set, a non-leaf nodes are matched with a functional set. The first problem is solved by ant colony. To solve the second problem is used a genetic algorithm. The rating formula is calculated after solving both problems - the construction of an ant tree unnamed peak and subsequent identification of vertices using ant colony The structure of the graph to find solutions G = (X, U). It is possible to create a solution space in which organized the search process based on the simulation of adaptive behavior of an ant colony. Formulated the necessary conditions under which the built in G route is represented as a legitimate expression D, is a solution of a symbolic regression. Developed heuristic of ant behavior when ant moving in graph to find solutions. For large dimension of time parameters of the algorithm outperformed compared algorithms for the best value of the objective function. Experimental time complexity of the algorithm on a single iteration for fixed values of the control parameters is O (nlgn), where n - the power terminal set.
Symbolic regression; syntax tree; terminal set; functional set; ant colony; genetic search; hybrid algorithm.
Введение. Одной из центральных проблем машинного обучения и интеллектуального анализа данных является проблема построения адекватных моделей регрессии и классификации при решении задач прогнозирования [1, 2]. В большинстве численных методов идентификации для аппроксимации экспериментальных (статистических) данных используются регрессионные модели [3, 4]. Задача заключается в построении математического выражения W, задаваемого примерами пар (x1, y1), (x2, y2),..., (xn, yn), где x, и yt - входные и выходные записи. Регрессия - это оценка функциональной зависимости условного среднего значения результативного признака Y от факторных признаковX= (x1 ,x2 ,...,xn), т.е. регрессия - это некоторая усредненная количественная зависимость между выходными и входными переменными Y=W(X). Критерием качества приближения (целевой функции) обычно является среднеквадратичная ошибка: сумма квадратов разности значений модели и зависимой переменной для всех значений независимой переменной в качестве аргумента.
В регрессионном анализе задача регрессии решается путем выбора функциональной формы и последующим нахождением ее численных коэффициентов (любым подходящим методом). Например, линейная - (y = a0 + a1 x), квадратичная -y = a0 + a1 x + a2 x2, полиномиальная регрессия и др. [5]. На первом этапе регрессионного анализа данные наблюдений или эксперимента представляют графически. Зависимость между переменными Х и Y изображают точками на координатной плоскости (х, y) и соединяют их ломаной линией. Этот ломаный график называется эмпирической линией регрессии Y по X По виду эмпирической линии регрессии делают предположение о виде (форме) зависимости переменной Y от Х. В простейшем случае предполагают линейную зависимость. Очевидно, что качество аппроксимации при данном подходе напрямую зависит от выбора конкретной параметрической модели [6, 7] .
Задача символьной регрессии заключается в нахождении математического выражения в символьной форме, аппроксимирующего зависимость между конечным набором значений независимых переменных и соответствующими значениями зависимых переменных. Таким образом, символьная регрессия дает нам не только вычислительную процедуру, но и формулу (символьное математическое выражение). Символьная регрессия - метод построения регрессионных моделей путем перебора различных произвольных суперпозиций функций из некоторого заданного набора. Суперпозиция функций при этом называется «программой», а построение таких суперпозиций осуществляется эволюционными стохастическими оптимизационными алгоритмами [8-10]. Подобные алгоритмы являются переборными и требуют значительных вычислительных ресурсов [6-11]. Формулы составляются из переменных, констант и функций, которые связаны некоторыми синтак-
сическими правилами. Поэтому необходимо определить терминальное множество, содержащее константы и переменные, и функциональное множество, которое состоит, прежде всего, из операторов и необходимых элементарных функций. Терминальное множество включает в себя: 1) внешние входы в программу; 2) используемые в программе константы; 3) функции, которые не имеют аргументов. Существуют два подхода к выбору констант. При первом подходе множество числовых констант выбирается для всей популяции и не меняется при поиске решения. При втором - случайно генерированные (обычно из заданного диапазона) константы могут мутировать.
В настоящее время наиболее распространенными структурами для представления математических выражений являются: древовидное представление; линейная структура; графоподобная структура [4, 5].
Достаточно удобным вариантом представления алгебраических формул является синтаксическое дерево [11]. Листовые узлы соответствуют переменным или числовым константам, а нелистовые узлы содержат операцию, которая выполняется над дочерними узлами. Стоит заметить, что для каждого синтаксического дерева существует бесконечное количество семантически эквивалентных деревьев. Все дело в коэффициентах. Коэффициенты каждого дерева оптимизируются методами генетического поиска.
Большинство разработанных алгоритмов символьной регрессии базируется на методе генетического программирования [12] и использовании для представления математических выражений древовидных структур. Данному подходу присущи существенные недостатки [8-14]. Во-первых, достаточно сложными являются принципы кодирования хромосом. Во-вторых, используются хромосомы разной длины, что значительно усложняет операцию кроссинговера. В-третьих, и это наиболее существенный недостаток - проблема избыточного разрастания деревьев. Для решения этой проблемы используют два подхода. Первый связан с ограничением максимальной глубины дерева [10, 14]. Использование для этого различных отсечек может привести к потери оптимальных решений. Второй подход связан с использованием правил трансформации деревьев [1]. С помощью этих правил производятся эквивалентные преобразования структуры деревьев, их упрощение, но при этом функциональные свойства остаются без изменений. Использование таких правил приводит к значительному росту трудоемкости алгоритма. В связи с этим создание нового математического подхода для решения задачи последовательного выбора регрессионных моделей является актуальным
Исходя из вышеизложенного, представляет интерес разработка и применение новых поисковых алгоритмов для решения задачи символьной регрессии на базе эффективных метаэвристик. Результатом непрекращающегося поиска наиболее эффективных методов стало использование бионических методов и алгоритмов интеллектуальной оптимизации, базирующихся на моделировании коллективного интеллекта [15-21]. К таким методам можно отнести и муравьиные алгоритмы (Ant Colony Optimization - ACO) [17-21]. Основу поведения муравьиной колонии составляет самоорганизация, обеспечивающая достижения общих целей колонии на основе низкоуровневого взаимодействия
В работе рассматривается гибридный алгоритм для решения задачи символьной регрессии. Используется традиционное представление алгебраической формулы в виде синтаксического дерева. Листовые узлы соответствуют переменным или числовым константам, а не листовые узлы содержат операцию, которая выполняется над дочерними узлами.
В процессе синтеза алгебраической формулы решаются две задачи. Первая задача заключается в построении структуры дерева с безымянными вершинами. Вторая задача заключается в конкретизации значений вершин дерева. Листовые узлы сопоставляются с терминальным множеством, а нелистовые узлы сопостав-
ляются с функциональным множеством. Первая задача решается методами муравьиной колонии. Для решения второй задачи используется генетический алгоритм. Оценка формулы вычисляется после решения обеих задач - построения муравьем дерева с безымянными вершинами и последующей идентификацией вершин с помощью генетического алгоритма
1. Постановка задачи. Обозначим как у, значение выходной записи, получаемой с помощью выражения W. Для оценки математического выражения W введем критерий
F=!\y, - у, Т. (1)
Для решения задачи символьной регрессии необходимо выполнить следующие подготовительные шаги, а именно определить:
♦ терминальное множество;
♦ функциональное множество;
♦ функцию пригодности;
♦ параметры, контролирующие работу алгоритма;
♦ критерий остановки.
На первом этапе определяется множество термов, из которых будет строиться решение. В задаче символьной регрессии терминальное множество T содержит набор переменных x,, i = 1, N, где N - размерность поставленной задач), и набор констант Cj, j = 1, К.
На втором этапе пользователь метода должен определить множество Ф-функций, которые будут использованы для построения решений. Пользователь должен априори предполагать некоторую комбинацию функций, которые могли бы содержаться в решении задачи. Функциональное множество может содержать:
♦ арифметические операции ( +, -, х, ^ );
♦ математические функции (Sin, Cos, Exp, Log и т.д.);
♦ булевы операции (а, ц —);
♦ специальные предопределенные функции (Automatically Defined Functions).
Необходимо учитывать то обстоятельство, что заданное универсальное множество C=FuT должно удовлетворять условию замкнутости. Например, для исключения деления на нуль вводят «защищенное деление», которое возвращает единицу, когда знаменатель равен нулю.
На третьем этапе для оценки уравнения символьной регрессии задается целевая функция, вычисляемая по заданной обучающей выборке.
С одной стороны, терминальное и функциональное множества должны быть достаточно большими для представления потенциального решения. С другой стороны не следует сильно без необходимости расширять функциональное множество, поскольку при этом резко возрастает пространство поиска решений.
2. Описание дерева. Рассмотрим структуру выражения для описания бинарного дерева с безымянными вершинами. Введём алфавит А={о, •}. Структуру дерева можно задать, используя на базе алфавита A польское выражение для бинарного дерева, где знак о соответствует листьям дерева (термам), а знак • соответствует внутренним вершинам дерева (функциям) [11]. Польское выражения для дерева, представленного на рис. 1, имеет следующий вид:
о о • о о • • о • .
Процесс восстановления дерева по польскому выражению достаточно прост. Последовательно слева направо просматривается польское выражение и отыскиваются буквы типа •, соответствующие внутренним (нелистовым) вершинам дере-
ва. Каждая такая вершина объединяет два ближайших образованных на предыдущих шагах подграфа, расположенных в польской записи слева от знака •. Проиллюстрируем процесс свертки с помощью скобок: [{(о о «)(о о •)• }о •].
Рис. 1. Пример дерева
Отметим основные свойства польского выражения, для выполнения которых необходимо, чтобы записи соответствовало дерево [11]. Обозначим через п число элементов польского выражения типа о, а через m - число элементов типа •. Пронумеруем позиции между знаками о, как показано ниже.
о о 1 о 2 о 3 о 4 ••• о т .
Условия (свойства) легитимности польского выражения.
1. Для дерева всегда выполняется равенство п = т + 1.
2. Если в польском выражении провести справа от знака • сечение, то слева от сечения число знаков X больше числа знаков • по крайней мере на единицу.
3. Первый знак • в польском выражении (при просмотре слева направо) может появиться только после двух знаков оо.
4. Максимальное число знаков •, которое может появиться в позиции, равно номеру позиции.
Если польское выражение соответствует вышеперечисленным свойствам, то ему соответствует дерево. Назовем польское выражение Я, построенное на базе алфавита А={о, •}, легитимным, если оно удовлетворяет вышеперечисленным условиям. Таким образом, легитимное выражение Я является символьным представлением дерева. Различные решения получаются путём комбинирования взаимным расположением элементов алфавита А={о, •}, удовлетворяющим условиям легитимности. В работе пространство решений представляется множеством легитимных выражений Я. Поиск решения сводится к поиску такого легитимного выражения Я, которое оптимизирует показатель качества (критерий).
3. Построение муравьем дерева с безымянными вершинами. Для того чтобы построить муравьиный алгоритм для решения какой-либо задачи, нужно представить задачу в виде набора компонент: в первую очередь сформировать граф поиска решений и определить эвристику поведения муравья. Задача формулируется как задача поиска минимального по стоимости маршрута на графе поиска решений (ГПР) [17].
В работе задача синтеза дерева сводится к задаче формирования соответствующего польского выражения. Предварительно формируется заготовка в виде вектора Я=о о 1 о 2 о 3 о 4 ... о ш с пронумерованными позициями. Задача формирования соответствующего польского выражения заключается в назначении ш элементов типа • в позиции заготовки Я с соблюдением рассмотренных выше свойств польского выражения (1-4). Поиск решения сводится к поиску такого легитимного польского выражения Е и соответствующего ему дерева В0, которое после идентификации вершин дерева В0 с помощью ГА оптимизирует показатель качества (критерий).
Поиск решений осуществляется на графе поиска решений О=(Х, V). Базовая структура ГПР формируется следующим образом. Вершины множества X размещены в узлах решетки размером т хт . Множество вершин графа О разбито на т стадий Х1. Каждая стадия Х1 представляет собой столбец из т-1+1 вершин. Вершины ха стадии Х1 пронумерованы снизу вверх. / - номер вершины в стадии / (множестве X/). Ребра графа О=(Х, V) ориентированные и связывают вершины соседних стадий Х1 и Х/+1 по следующему правилу. Вершина х/еХ/ связана со всеми такими вершинами х^+1 еХ/+1, что ¡<1. В общем случае ГПР представляется совокупностью из т стадий (по числу элементов типа •) и начальной вершины О (рис. 2).
Задача каждого муравья ак найти в графе О маршрут Мк из вершины О до вершины х1т стадии Хт . В маршрут входят по одной вершине из каждой стадии. Если вершина хц вошла в состав маршрута Мк, то это значит, что в /-ю позицию заготовки Я включается элемент типа •. В стадиях, начиная со второй, содержатся свободные вершины. Поскольку свободные вершины не могут входить в маршрут, то они исключаются из графа поиска решений.
Пример. Необходимо синтезировать дерево с размерами п=6, ш=5. Формируется заготовка в виде вектора Я = о о 1_ о 2 о 3 о 4 о 5. На рис. 3 представлен граф поиска решений и найденный на нем муравьем ак маршрут. В соответствии с найденным маршрутом польское выражение имеет вид Е = о о • о о •• о • о Дерево, построенное по полученному польскому выражению, представлено на рис. 4.
В общем случае поиск решения задачи синтеза дерева осуществляется коллективом муравьев Л={ак \к=1,2,.,ЫЯ}. На каждой итерации муравьиного алгоритма каждый муравей ак строит свое конкретное решение задачи синтеза дерева. Решением является маршрут Мк в графе О=(Х,Ц), включающий т вершин, принадлежащих множествам Х1 - Хт, построенный в соответствии с условиями 1-4. В этом случае построенный маршрут Мк представляется в виде легитимного вектора Ек. По вектору Ек строится дерево дерев Бк 0 с безымянными вершинами, на базе которого строится математическое выражение Q.
Моделирование поведения колонии муравьёв в задаче построения дерева связано с распределением феромона на ребрах графа О. На начальном этапе на всех ребрах графа О откладывается одинаковое (небольшое) количество феромона где v=\V\. Параметр £ задается априори. Процесс поиска решений итерационный. Каждая итерация / включает три этапа.
Л/ Х.2 лз X 4
Рис. 2. Граф поиска решений
х, х2 хъ х>
Рис. 3. Маршрут, построенный муравьем на графе поиска решений
Рис. 4. Дерево со структурой, соответствующей записи D = о о во о в*о во в
На первом этапе каждый муравей находит решение (строит маршрут, который интерпретируется как дерево с последующей идентификацией вершин методами генетического поиска), рассчитывается оценка решения. На втором этапе каждый муравей на ребрах построенного им маршрута откладывает феромон, в количестве, соответствующем оценке решения. На третьем этапе осуществляется испарения феромона на ребрах ГПР. В работе используется циклический (ant-cycle) метод муравьиных систем. В этом случае ферромон откладывается агентом на ребрах после полного формирования решения. На первом этапе каждой итерации каждый k-й муравей формирует на ГПР свой собственный маршрут Mk. Процесс построения маршрута Mk пошаговый. На каждом шаге l выбирается вершина из множества Xl. Пусть выполнено 1-1шагов, а xel-l - последняя вершина частично построенного за (l-l) шагов маршрута Mk. xe,l-leXl-l. На шаге l агент применяет вероятностное правило выбора следующей вершины из стадии Xl для включения ее в формируемый маршрут Mk. Для этого формируется множество вершин Yk(l) cX, таких, что каждая из вершин хц eYk(l) может быть добавлена в формируемый маршрутMk с соблюдением условий 1-4.
Агент просматривает все вершины xileYk(l). Для каждой вершины xileYk(l) рассчитывается параметр ка - суммарный уровень феромона на ребре графа G, связывающего последнюю вершину маршрута xel-l eXl-l с вершиной xil eYk(l) cXl,
Вероятность Pil включения вершины x^eY^l^ формируемый маршрут Mk определяется следующим соотношением:
Ра=ка / £^ , (i I x,ieYk(l)). (2)
i
Агент с вероятностью Pil выбирает одну из вершин, которая включается в маршрут Mk.
После построения агентом маршрута на базе заготовки R формируется польское выражение Ek., в соответствии с которым строится дерево с безымянными вершинами D°k.
Математическое выражение Qk, для которого рассчитывается оценка Fk, формируется после идентификации вершин построенного муравьем ak дерева D°k методами генетического поиска. Алгоритм идентификации дерева D°k рассматривается ниже.
На втором этапе итерации каждый муравей откладывает феромон на рёбрах построенного маршрута. Количество феромона Ak, откладываемое муравьем ak на каждом ребре построенного маршрута Mk, определяется следующим образом:
Ak= Я / Fk . (3)
Параметр Я задается априори. Fk - целевая функция для решения Qk,, полученного муравьем ak на t-й итерации. Чем меньше Fk тем больше феромона откладывается на ребрах построенного маршрута и, следовательно, тем больше вероятность выбора этих ребер при построении маршрутов на следующей итерации.
Обозначим как фф) суммарное количество феромона, отложенного на дуге (1,]) всеми муравьями на 1-й итерации. После того, как каждый агент сформировал решение и отложил феромон, на третьем этапе происходит общее испарение феромона на ребрах графа О в соответствии с формулой (4).
д() =(д(-1) + фМ (1-р), (4)
где д() - уровень феромона на ребре (1,]), р - коэффициент обновления.
После выполнения всех действий на итерации находится агент с лучшим решением, которое запоминается. Далее осуществляется переход на следующую итерацию.
Временная сложность этого алгоритма зависит от времени жизни колонии t (число итераций), количества вершин графа п и числа муравьев т и определяется
как О^*п2*т).
4. Принцип гибридизации. Метаэвристика муравьиного алгоритма основывается на комбинации двух техник: общая схема строится на базовом методе, в которую включается та или иная встроенная процедура. Важным аспектом есть то, что встроенная процедура - это в большинстве случаев самостоятельный алгоритм решения той же задачи, что и метаэвристический метод в целом. Базовый метод заключается в реализации итерационной процедуры поиска лучшего решения, на основе механизмов адаптивного поведения муравьиной колонии. Основу встроенной процедуры составляет конструктивный алгоритм построения муравьем некоторой конкретной интерпретации решения. В оптимизации муравьиными колониями [8] конструктивный блок - деятельность искусственных муравьев играет ключевую роль. Классификация гибридных метаэвристик детально рассмотрена в работе [14].
Методами генетического поиска производится идентификация безымянных вершин каждого построенного муравьем ак дерева Б0к. Для этого формируется структура хромосомы, состоящая из трех частей. Значения генов первой части соответствуют элементам функционального множества (функциям и правилам). Значения генов второй и третьей частей части соответствуют элементам терминального множества (переменным и константам). Отметим, что функциональное и терминальное множества формируются на подготовительном этапе, причем для констант задаются границы возможных значений. Алгоритмы символьной регрессии на основе гибридизации методов муравьиной колонии и генетического поиска формулируются следующим образом.
Алгоритм поведения муравьиной колонии
1. Производится предварительный анализ задачи символьной регрессии. Формируются функциональное и терминальное множества. Для констант задаются границы возможных значений.
2. В соответствии с исходными данными формируются заготовка Я для польского выражения и граф поиска решений О, на ребрах которого отложено начальное количество феромона.
3. Задается: число итераций - ЫТ; число муравьев, формирующих независимо друг от друга решения на одной итерации - ЫЯ.
4. t=1. (/- номер итерации).
5. к=1. (к- номер агента).
6. (Алгоритм муравья). Муравей ак строит на графе поиска решений О маршрут Мк из вершины О до вершины х1т стадии Хт.
7. В соответствии с построенным маршрутом Мк и заготовкой Я строится польское выражение Ек , по которому строится дерево В0к с безымянными вершинами.
8. (Алгоритм идентификации вершин). Методом генетического поиска производится идентификация вершин дерева О0к (т.е. построение дерева Б'к).
9. По дереву с идентифицированными вершинами D'k строится математическое выражение Qk, для которого находится значение целевой функции Fk.
10. Если k< NR, то k=k +l и переход к пункту 6, иначе переход к пункту 11.
11. k=l.
12. Муравей ak откладывает на каждом ребре построенного им маршрута Mk в графе поиска решений G ферромон в количестве
Ak= Я / Fk.
13. Если k< NR, то k= k +l и переход к пункту 14, иначе переход к пункту 15.
14. На третьем этапе итерации t происходит общее испарение феромона на всех ребрах графа G в соответствии с формулой
8() =(Sij(t-l) + 9l](t)) (l-p), где p - коэффициент обновления.
15. Находится агент ak с лучшей оценкой Fопт решения, полученного после выполнения t итераций, которое запоминается.
16. Если t< NT, то t= t +l и переход к пункту 6, иначе переход к пункту 17.
17. Конец работы алгоритма.
Рассмотрим теперь конструктивный алгоритм построения муравьем маршрута Mk(t) в графе поиска решений G из вершины O до вершины xlm стадии Xm
Алгоритм муравья
1. Муравей помещается в вершину О графа поиска решений.
2. END=O. (END - последняя вершина, вошедшая в формируемый маршрутMk).
3. l=l. (l - номер шага).
4. Формируется множество вершин ГПР - Yk(l)cXl, таких, что каждая из вершин xil eYk(l) может быть добавлена в формируемый маршрут Mk с соблюдением условий 1-4.
5. Для каждой вершины xileYk(l/)рассчитывается параметр kil - суммарный уровень феромона на ребре графа G, связывающего последнюю вершину END маршрута Mk с вершиной xil eYk(l) cXl,
6. Вероятность Pil включения вершины xueY^l^ формируемый маршрут Mk определяется следующим соотношением
Ри =ки / £ к , (i I xaeYk(l)).
i
7. Случайным образом, в соответствии с распределением вероятностей, рассчитанным в пункте 5, выбирается вершина xil, которая включается в конец маршрута Mk.. END= xil.
8. Если l< m, то l= l +l и переход к пункту 3, иначе переход к пункту 8.
9. В соответствии с построенным маршрутом Mk. на заготовке R строится польское выражение Ek.
10. В соответствии с польским выражением Ek строится дерево Dk с безымянными вершинами.
11. Конец работы алгоритма.
Как уже указывалось выше, идентификация вершин дерева осуществляется методами генетического поиска. Структура хромосомы имеет вид: H={giIi=1,2,..., nl, (nl+1),... , n2, (n2+1), ..., n3}. Гены в локусах с 1 по nl , предназначены для записи элементов функционального множества, гены в локусах (nl+1),... , n2, предназначены для записи переменных, гены в локусах (n2+1), ..., n3, предназначены для записи констант.
На структуру хромосомы в зависимости от постановки задачи могут налагаться ограничения. Первое связано с тем, что все гены должны иметь отличное друг от друга значение. Это порождает проблему легитимности хромосом, образующихся после выполнения генетических операторов кроссинговера и мутации. Для выполнения этого ограничения должны использоваться специальные операторы крос-синговера и мутации либо специальные методы кодирования.
Второе связано с расширением пространства поиска за счет увеличения числа комбинаций генов. С этой целью увеличиваются метрические параметры хромосомы п1, п2, п3 и допускается использование повторяющихся генов в пределах каждой из трех областей хромосомы. Пусть у синтезированного муравьем дерева v1, v2, v3 - количество вершин, соответствующих функциональному множеству, множеству переменных и множеству констант. Идентификация дерева по выбранной хромосоме производится следующим способом. Для идентификации вершин функционального множества используются гены хромосомы, расположенные в локусах с 1 по v1. Для идентификации вершин множества переменных используются гены, расположенные в локусах с (п1+1) по (п1+1^^2). Для идентификации вершин множества констант используются гены, расположенные в локусах с (п2+1) по (п2+1+ v3). Отметим, что п1 > v1, п2 > v1, п3 > v3.
Для выполнения идентификации вершин требуется выполнить следующие подготовительные шаги.
1. В соответствии с заданными составами функционального и терминального множеств формируется структура хромосомы Н=^\'=1,2,..., п1, (п+1),... , п2, (п2+1), ..., п3}. В соответствии с постановкой определяются метрические параметры хромосомы п1, п2, п3, v1, v2, v3 и задаются ограничения.
2. В соответствии с постановкой задачи идентификации осуществляется выбор операторов кроссинговера и мутации.
3. Задается размер начальной популяции.
Алгоритм идентификации вершин дерева
1. Генерируется начальная популяция П хромосом, структура которых сформирована на подготовительном этапе.
2. На базе построенного муравьем ак дерева Б0к и популяции хромосом П формируется множество формул 0к. Для каждой формулы екевк подсчитывается оценка Ьк.
3. Задается: число итераций генетического алгоритма - N0.
4. t=1. ^ - номер итерации).
5. На популяции хромосом П выполняются операции кроссинговера и мутации и формируется множество новых хромосом П*.
6. На базе построенного муравьем ак дерева Б0к и популяции хромосом П
формируется множество формул в*к. Для каждой формулы е'ке в*к. подсчитывать*
ется оценка Ь к
7. Популяции П и П объединяются, По = П V П .
8. Производится редукция популяции По до размеров популяции П.
9. Если ^ N0, то t= t +1 и переход к пункту 5, иначе переход к пункту 10.
10. Выбирается решение Б к с лучшей оценкой.
11. Конец работы алгоритма.
5. Экспериментальные исследования. Для оценки эффективности предлагаемого гибридного биоинспирированного алгоритма (ГБА) был проведен ряд численных экспериментов. Результаты экспериментов ГБА сравнивались с экспериментальными результатами работы метода стандартного генетического про-
граммирования (МСГП) и метода гибридного генетического программирования (МГГП) [10]. В качестве общего для всех задач критерия останова использовалось условие достижения уровня относительной ошибки моделирования либо выполнение заданного максимального числа вычислений функции пригодности. Эффективность методов оценивалась по критерию надежности, который определялся как отношение числа запусков, в которых была достигнута заданная точность аппроксимации исходных данных, к общему числу запусков [10]. При этом максимальное число вычислений функции пригодности не должно превышать заданное в критерии останова. Статистика для получения оценок надежности набиралась по 50 запускам каждого из рассмотренных методов. Значимость в различиях результатов алгоритмов проверялась методами ANOVA. Проверка выполнялась при уровне значимости а=0,05.0писание тестовых задач приведено в табл 1. В табл. 2 представлены результаты сравнительного исследования эффективности, полученные для рассматриваемых алгоритмов на тестовых задачах. Жирным шрифтом выделен метод, победивший на тестовой задаче, т.е. статистически значимо превосходящий по надежности конкурирующий метод. Разработанный гибридный биоинспириро-ванный алгоритм оказался эффективнее методов стандартного и гибридного генетического программирования.
Таблица 1
№ задачи Моделируемая функция Интервал варьирования переменных Функциональное множество Объем выборки
1 у = sin (х) хе[—3; 4] (+.-Х.Л 100
2 у = х2 + 2х + 3 хе[—3; 4] (+.-Х.Л 100
3 у = х2 + х| х1,х2е[-4; 4] {+.-Х,/} 200
4 Функция Растригина у = ОДх2 + 0Дх| —4 cos(0,8x1) - 4 cos (0,8^) + 8 х1,х2е[—3; 3] r+,-,x,/, cos,} 1 sin, Vx, exp J 200
5 у = х2 sin(х,) + xf sin (х2) х1,х2е[-4; 4] f+,-,x,/, eos,] sin, Vx, exp 200
6 Функция Розенброка у = 100(х7 - х,2)2 - (1 - х,)2 х1,х2е[-2;2] {+.-X,/} 200
7 у = X2 + ххх2 + xf х^[-4; 4], i = 1,3 {+.-X,/} 300
Таблица 2
Тестовая задача 1 2 3 4 5 6 7
МСГП 0.6 0.9 0.5 0.45 0.95 0.6 0.45
МГГП 0.9 1 0.9 О.95 1 0.95 0.85
ГБА О.95 1 О.95 О.95 1 0.95 0.9
Заключение. В работе рассматриваются новые принципы решения задачи множественной нелинейной символьной регрессии на основе моделей адаптивного поведения биологических систем. Рассмотрены бионические алгоритмы порождения допустимых существенно нелинейных суперпозиций. Предложен муравьиный алгоритм, порождающий все возможные суперпозиции заданной сложности за конечное число шагов. Сформулированный гибридный алгоритм решает некоторые типичные проблемы предложенных ранее методов генетического программирования. Для компактного представления решения задачи символьной регрессии
используется модифицированная польская запись. Архитектура задачи символьной регрессии представлена в виде набора компонент муравьиного алгоритма и генетического поиска. Разработана структура графа поиска решений G=(X, U). Это позволило создать пространство решений, в рамках которого организован поисковый процесс, базирующийся на моделировании адаптивного поведения муравьиной колонии. Сформулированы необходимые условия, при выполнении которых построенный в графе G маршрут представляется в виде легитимного выражения D, являющегося решением задачи символьной регрессии. Разработаны эвристики поведения муравья при перемещениях в графе поиска решений. Отличительной особенностью способов представления деревьев в виде линейной записи является то, что они исключают возможность потери элементов терминального множества, но при этом модель может быть произвольной суперпозицией функций из некоторого набора. Эксперименты показали, что представленный биоинспирированный алгоритм, базирующийся на гибридизации методов муравьиной колонии и генетического поиска, строит более простые модели и более точные в сравнении с алгоритмами на основе принципов генетического программирования.
При больших размерностях временные показатели разработанного алгоритма превосходят показатели сравниваемых алгоритмов при лучших значениях целевой функции.
Экспериментальная временная сложность алгоритма на одной итерации при фиксированных значениях управляющих параметров составляет O(nlgn), а временная сложность существующих алгоритмов [3-15] - O(n2), где n - мощность терминального множества.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Ian H. Witten, Eibe Frank and Mark A. Hall Data Mining: Practical Machine Learning Tools and Techniques. - 3rd Edition. - Morgan Kaufmann, 2011.
2. Sammut C., Webb G.I. Symbolic regression // Encyclopedia of Machine Learning. - Berlin: Springer, 2010.
3. Барсегян А.А., Куприянов М.С., Степаненко В.В., Холод И.И. Методы и модели анализа данных: OLAP и Data Mining. - СПб.: БХВ-Петербург, 2004. - 336 c.
4. Радченко С.Г. Методология регрессионного анализа: Монография. - К.: Корнийчук, 2011. - 376 c.
5. Дрейпер Н., Смит Г. Прикладной регрессионный анализ. - М.: Вильямс, 2007. - 912 c.
6. Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. - М.: ВЦ РАН, 2010. - 60 c.
7. Zelinka I., Oplatkova Z., Nolle L. Analytic programming and symbolic regression by means of arbitrary evolutionary algorithms // Int. J. Simulation Syst. Sci. Technol. - 2005. - Vol. 6, No. 9. - P. 44-56.
8. Лебедев Б.К., Лебедев В.Б. Эволюционная процедура обучения при распознавании образов // Известия ТРТУ. - 2004. - № 8 (43). - С. 83-88.
9. Рудой Г.И., Стрижов В.В. Алгоритмы индуктивного порождения суперпозиций для аппроксимации измеряемых данных // Информатика и её применения. - 2013. - Т. 7.
- Вып. 1. - С. 44-53.
10. Бухтояров В.В., Семенкин Е.С. Разработка и исследование гибридного метода генетического программирования // Программные продукты и системы. - 2010. - № 3. - С. 34-38.
11. Kureichik V.M., Lebedev B.K. and Lebedev V.B. VLSI Floorplanning Based on the Integration of Adaptive Search Models // Journal of Computer and Systems Sciences International.
- 2013. - Vol. 52, No. 1. - P. 80-96. ISSN 1064 2307.
12. Koza, J.R. Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Springer. 2005.
13. Lebedev B.K. and. Lebedev V.B. Synthesis of Mathematical Expressions by Methods of Genetic Search // Proceedings of the International Scientific Conferences "Intelligent Systems (IEEE AIS'06)"and "Intelligent CAD's (CAD- 2006)". Scientific publication in 3 vol. Vol. 3. - M.: Physmathlit, 2006. - P. 29-34.
14. Barmpalexis P.,Kachrimanis K., Tsakonas A., Georgarakis E. Symbolic regression via genetic programming in the optimization of a controlled release pharmaceutical formulation // Chemometrics and Intelligent Laboratory Systems. - 2011. - Vol. 107, No. 1. - P. 75-82.
15. Colin G. Johnson. Artificial Immune Systems Programming for Symbolic Regression // Genetic Programming: 6th European Conference. - 2003. - P. 345-353. - ISBN=3-540- 00971-X.
16. Ушаков С.А. Использование распределенных искусственных иммунных систем для решения задачи символьной регрессии // Инноватика. Научный электронный журнал.
- 2014. - № 1. Свидетельство о регистрации ЭЛ № ФС 77-5722.
17. Лебедев О.Б. Модели адаптивного поведения муравьиной колонии в задачах проектирования. - Таганрог: Изд-во ЮФУ, 2013. - 199 c.
18. Лебедев Б.К., Лебедев В.Б. Оптимизация методом кристаллизации россыпи альтернатив (КРА) // Известия ЮФУ. Технические науки. - 2013. - № 7 (144). - С. 11-17.
19. Лебедев Б.К., Лебедев О.Б. Моделирование адаптивного поведения муравьиной колонии при поиске решений, интерпретируемых деревьями // Известия ЮФУ. Технические науки. - 2012. - № 7 (132). - С. 27-35.
20. Лебедев В.Б., Лебедев О.Б. Роевой интеллект на основе интеграции моделей адаптивного поведения муравьиной и пчелиной колоний // Известия ЮФУ. Технические науки.
- 2013. - № 7 (144). - С. 41-47.
21. Kureichik V.M., Lebedev B.K., Lebedev O.B. A hybrid partitioning algorithm based on natural mechansms of decision making // Scientific and Technical Information Processing. - 2012.
- № 39 (6). - P. 317-327.
REFERENCES
1. Ian H. Witten, Eibe Frank and Mark A. Hall Data Mining: Practical Machine Learning Tools and Techniques. 3rd Edition. Morgan Kaufmann, 2011.
2. Sammut C., Webb G.I. Symbolic regression, Encyclopedia of Machine Learning. Berlin: Springer, 2010.
3. Barsegyan A.A., Kupriyanov M.S., Stepanenko V.V., Kholod I.I. Metody i modeli analiza dannykh: OLAP i Data Mining [Methods and models of data analysis: OLAP and Data Mining]. St. Peterburg: BKhV-Peterburg, 2004, 336 p.
4. Radchenko S.G. Metodologiya regressionnogo analiza: Monografiya [Methodology regression analysis: Monograph]. K.: Korniychuk, 2011, 376 p.
5. Dreyper N., Smit G. Prikladnoy regressionnyy analiz [Applied regression analysis]. Moscow: Vil'yams, 2007, 912 p.
6. Strizhov V.V., Krymova E.A. Metody vybora regressionnykh modeley [Methods selection of regression models]. Moscow: VTs RAN, 2010, 60 p.
7. Zelinka I., Oplatkova Z., Nolle L. Analytic programming and symbolic regression by means of arbitrary evolutionary algorithms, Int. J. Simulation Syst. Sci. Technol., 2005, Vol. 6, No. 9, pp. 44-56.
8. Lebedev B.K., Lebedev V.B. Evolyutsionnaya protsedura obucheniya pri raspoznavanii obrazov [Evolutionary procedure learning in pattern recognition], Izvestiya TRTU [Izvestiya TSURe], 2004, No. 8 (43), pp. 83-88.
9. Rudoy G.I., Strizhov V.V.Algoritmy induktivnogo porozhdeniya superpozitsiy dlya approksimatsii izmeryaemykh dannykh [Algorithms for inductive generation of superpositions for approximation of the measured data], Informatika i ee primeneniya [Informatics and Applications], 2013, Vol. 7, Issue 1, pp. 44-53.
10. Bukhtoyarov V.V., Semenkin E.S. Razrabotka i issledovanie gibridnogo metoda genetiche-skogo programmirovaniya [Research and development of hybrid method of genetic programming], Programmnyeprodukty i sistemy [Software products and systems], 2010, No. 3, pp. 34-38.
11. Kureichik V.M., Lebedev B.K. and Lebedev V.B. VLSI Floorplanning Based on the Integration of Adaptive Search Models, Journal of Computer and Systems Sciences International, 2013, Vol. 52, No. 1, pp. 80-96. ISSN 1064 2307.
12. Koza, J.R. Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Springer. 2005.
13. Lebedev B.K. and. Lebedev V.B. Synthesis of Mathematical Expressions by Methods of Genetic Search, Proceedings of the International Scientific Conferences "Intelligent Systems (IEEE AIS'06)"and "Intelligent CAD's (CAD- 2006)". Scientific publication in 3 vol. Vol. 3. Moscow: Physmathlit, 2006, pp. 29-34.
14. Barmpalexis P.,Kachrimanis K., Tsakonas A., Georgarakis E. Symbolic regression via genetic programming in the optimization of a controlled release pharmaceutical formulation, Chemometrics and Intelligent Laboratory Systems, 2011, Vol. 107, No. 1, pp. 75-82.
15. Colin G. Johnson. Artificial Immune Systems Programming for Symbolic Regression, Genetic Programming: 6th European Conference, 2003, pp. 345-353. ISBN=3-540- 00971-X.
16. Ushakov S.A. Ispol'zovanie raspredelennykh iskusstvennykh immunnykh sistem dlya re-sheniya zadachi simvol'noy regressii [The use of distributed artificial immune system for solving symbolic regression], Innovatika. Nauchnyy elektronnyy zhurnal [Innovation. Scientific electronic journal], 2014, No. 1. Certificate of registration EL № FS 77-5722.
17. Lebedev O.B. Modeli adaptivnogo povedeniya murav'inoy kolonii v zadachakh proektirovaniya [Models of adaptive behavior, ant colony in the task of designing]. Taganrog: Izd-vo YuFU, 2013, 199 p.
18. Lebedev B.K., Lebedev V.B. Optimizatsiya metodom kristallizatsii rossypi al'ternativ (KRA) [Optimization by the crystallization of alternatives field (CAF) method], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2013, No. 7 (144), pp. 11-17.
19. Lebedev B.K., Lebedev O.B. Modelirovanie adaptivnogo povedeniya murav'inoy kolonii pri poiske resheniy, interpretiruemykh derev'yami [Modelling of an ant colony adaptive behaviour by search of the decisions interpreted by trees], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2012, No. 7 (132), pp. 27-35.
20. Lebedev V.B., Lebedev O.B. Roevoy intellekt na osnove integratsii modeley adaptivnogo povedeniya murav'inoy i pchelinoy koloniy [Swarm intelligence on the basis of the adaptive behaviour models integration of the ant and beer colonies], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2013, No. 7 (144), pp. 41-47.
21. Kureichik V.M., Lebedev B.K., Lebedev O.B. A hybrid partitioning algorithm based on natural mechansms of decision making, Scientific and Technical Information Processing, 2012, No. 39 (6), pp. 317-327.
Статью рекомендовал к опубликованию д.т.н., профессор Ю.А. Гатчин.
Лебедев Борис Константинович - Южный федеральный университет; e-mail: lebedev.b.k@gmail.com; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 89282897933; кафедра систем автоматизированного проектирования; профессор.
Лебедев Олег Борисович - e -mail: oblebedev@sfedu.ru; тел.: 89085135512; кафедра систем автоматизированного проектирования; доцент.
Lebedev Boris Konstantinovich - Southern Federal University; e-mail: lebedev.b.k@gmail.com; 44, Nekrasovsky, Taganrog, 347928, Russia; phone: +79282897933; the department of computer aided design; professor.
Lebedev Oleg Borisovich - e-mail: oblebedev@sfedu.ru; phone: +79085135512; the department of computer aided design; associate professor.
УДК 004.822
В.В. Бова, Д.В. Заруба, В.В. Курейчик
ЭВОЛЮЦИОННЫЙ ПОДХОД К РЕШЕНИЮ ЗАДАЧИ ИНТЕГРАЦИИ
ОНТОЛОГИЙ*
В настоящее время интеграция данных и знаний является одной из наиболее важных задач обеспечения интероперабельности информационных систем на структурном и семантическом уровне. Рассматривается технология интеграции онтологий, предполагающая проведение автоматического сопоставления понятий интегрируемых онтологий с помощью составной семантической метрики (названий и значений понятий или их контекстов), множеств атрибутов и их
* Работа выполнена при поддержке Министерства образования и науки РФ. Проект № 8.823.2014.