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

УДК 681.325 DOI 10.18522/2311-3103-2016-7-7488

Б.К. Лебедев, О.Б. Лебедев, Е.М. Лебедева

МУРАВЬИНЫЙ АЛГОРИТМ ПОСТРОЕНИЯ БИНАРНОГО ДЕРЕВА

РЕШЕНИЙ*

Рассматривается задача классификации, заключающаяся в нахождении моделей или функций, которые описывают и различают классы для того, чтобы иметь возможность предсказывать класс произвольного заданного объекта с известными атрибутами, но неизвестной меткой класса. Полученная модель основывается на анализе обучающей выборки, то есть множества объектов, чья метка класса известна. Для решения задач классификации используется метод, основанный на построении дерева решений. Дерево решений (ДР) - это дерево, в котором каждой внутренней вершине поставлен в соответствие некоторый атрибут, каждая ветвь, выходящая из данной вершины, соответствует одному из возможных значений атрибута, а каждому листу дерева сопоставлен конкретный класс или набор вероятностей классов. Для того чтобы классифицировать новый объект, необходимо двигаться по дереву сверху вниз, начиная с корня. При этом на каждом внутреннем узле дерева выбирается та ветвь, которая соответствует фактическому значению соответствующего атрибута. Добравшись до листа дерева, получаем тот класс, которому принадлежит объект согласно классифицирующему правилу. В работе исследуется дихотомические классификационные модели формируемые алгоритмом построения бинарного дерева решений. Каждый узел дерева при разбиении имеет только двух потомков. В работе рассматривается муравьиный алгоритм построения дерева решений, основанный на использовании эффективной оценочной функции для выбора атрибута. Общее правило для выбора атрибута можно сформулировать следующим образом: выбранный атрибут разбивает множество так, чтобы получаемые в итоге подмножества состояли из объектов, принадлежащих к одному классу, или были максимально приближены к этому. В общем случае поиск решения задачи построения ДР осуществляется коллективом муравьев Z={ zk \k=1,2, ...,l}. На каждой итерации муравьиного алгоритма каждый муравей zk строит свое конкретное решение задачи построения ДР, представляемое маршрутом Mk в графе G=(X,U). В работе используется циклический (ant-cycle) метод муравьиных систем. В этом случае ферромон откладывается агентами на ребрах и вершинах после полного формирования решений. На первом этапе каждой итерации каждый k-й муравей формирует свой собственный маршрут Mk. Процесс построения маршрута Mk агентом zk пошаговый двухтактный. На каждом шаге t агент zk применяет вероятностные правила выбора следующей вершины (атрибута) и ребра (значения атрибута) для их включения в формируемый маршрут Mk(t). В памяти агента хранится информация: число выполненных шагов - t; маршрут Mk(t) , построенный за t шагов; вершина xj (атрибут A) выбранная и включенная в маршрут Mk(t) на шаге t; значение Aj атрибута Aj (вершины x), выбранное на шаге t. На втором этапе все муравьи откладывают феромон. На третьем этапе осуществляется испарение феромона. Поиск решения задачи выполняется на полном ориентированном графе решений G(X,U), где X={xt \ i=1,2,...,n} множество вершин соответствует множеству атрибутов А, U - множество бинарных ребер полного графа, соответствующих значениям атрибутов. Каждая пара вершин (xj, xk) связана двумя ориентированными бинарными ребрами. Одно бинарное ребро выходит из xj и входит в xh другое наоборот выходит из xk и входит в xj. Для всех k бинарное ребро uik, выходящее из данной вершины х, используется для моделирования двух значений атрибута Aj. Каждое бинарное ребро может находиться в одном из двух состояний, соответствующих двум значениям атрибута. Состояние ребра uik, связывающего пару вершин (xj, ху), фиксируется с помощью параметра Vjk. Если Vjk =1, то ребро ujk находится в состоянии соответствующем первому значению A1j, атрибута Aj. Если Vjk =2, то ребро ujk находится в состоянии соответствующем второму значению атрибута Aj. Если Vjk =0, то ребро не входит в состав маршрута. Для учета оценки состояния ребра ujk (количества отложенного феромона), вво-

*

Работа выполнена при финансовой поддержке гранта РФФИ №15-01-05297.

дится два счетчика H1ik и H2ik. Решение задачи построения ДР представляется в виде кода - некоторого маршрута Mk, включающего вершины и «бинарные» ребра с выбранными состояниями на графе решений G(X, U). Для того чтобы получить ДР нужна процедура декодирования. ДР формируется последовательно в соответствии с построенным маршрутом M, начиная с первоначального ввода безымянной вершины. На каждом шаге t декодирования в маршруте M выбирается очередная пара - вершина xt и выходящее из нее ребро uik, для которого фиксируется значение параметра Vik. Вершине xt соответствуют атрибут At . Если Vik =1, то ребру uik соответствует первое значение A1i атрибута Ai. Если Vik =2, то ребру uik соответствует второе значение Л2, атрибута Л. Временная сложность этого алгоритма зависит от времени жизни колонии l (число итераций), количества вершин графа n и числа муравьев m, и определяется как O(l*n2*m).

Распознавание образов; классификация; дерево решений; муравьиная колония; граф поиска решений; маршрут.

B.K. Lebedev, O.B. Lebedev, E.M. Lebedeva ANT ALGORITHMS BUILD A BINARY DECISION TREE

The paper deals with the classification task is to find models or features that describe and distinguish classes in order to be able to predict the class of any given object with known attributes, but an unknown class label. The resulting model is based on a training sample analysis, ie a set of objects whose class label is known for. To solve the problems of classification method based on the construction of a decision tree. The decision tree (DR) - the tree in which each internal vertex there corresponds an attribute, each branch coming out of this summit, corresponds to one of the possible values of the attribute, and each tree leaf is associated a specific class or set of classes of probability. To classify a new object, it is necessary to move the tree top down starting at the root. At each internal node of the tree is selected the branch, which corresponds to the actual value of the corresponding attribute. Reaching the tree leaf, we get the class to which the object belongs according to the classifying rule. We study the dichotomous classification model generated by the algorithm of constructing a binary decision tree. Each node of the tree in the division has only two children. This paper considers the ant algorithm for constructing decision tree based on the use of an effective evaluation function to select an attribute. A general rule for selecting an attribute can be summarized as follows: The selected attribute splits the set so that the result obtained in the subset composed of objects belonging to the same class, or were as close as possible to it. In general, the search for solutions to the problem of constructing the DR team made ants Z = {zk | k = 1,2, ..., l}. At each iteration of the algorithm, each ant zk ant builds his particular solution to the problem of constructing DT Mk route represented in the graph G = (X, U). We use the cyclic (ant-cycle) method of ant systems. In this case, the agents pheromones deposited on the edges and vertices after the complete formation of solutions. In the first phase of each iteration of each k-th ant creates its own route Mk. The process of building the route Mk by agent zk are incremental push-pull. At each step t the agent zk uses probabilistic rules for selecting the next vertex (attribute) and edges (the attribute value) to be included in the generated route Mk (t). The memory stores the information agent: number of executed steps - t; Mk(t)route, built in t steps; vertex xi (attribute A) selected and included in the route Mk (t) at step t; Ai value of attribute Ai (vertex x), selected at step t. At the second stage, all the ants lay pheromone. In the third step, the pheromone evaporation. Search for solution of the problem is carried out on a complete solutions-oriented graph G (X, U), where X = {xt | i = 1,2, ..., n} are the set of vertices corresponds to a set of attributes A, U - set of binary edges of a complete graph, the corresponding attribute values. Each pair of vertices (xi, xk) is associated with two binary oriented edges. One binary edge exits from xi and enters to xk, another opposite exits from xk and enters to xi. For all k the binary edge uik, emanating from this node x, used to simulate two attribute values Ai. Each binary edge may be in one of two states, corresponding to two values of the attribute. Status of edge uik, connecting a pair of vertices (x, xk), is secured by Vikparameter. If Vik = 1, then uik edge is at the respective first value A1i of attribute Ai. IfVik = 2, then uik edge is at a second value corresponding to attribute Ai. If Vik = 0, then the edge is not included in the route. To account for the assessment of the state of the edges uik (the amount of deferred pheromone), introduced two counters H1ik and H2ik. The decision task of building the DT is represented as a code - a route Mk, including the vertices and "bi-

nary" edges with selected states in the decision graph G (X, U). To obtain the required DT decoding procedure. DT is formed sequentially in accordance with the built route M, from the initial input unnamed peaks. At each step t of route M decoding chosen another couple - vertice xi and edge uik which coming out of her, for which the fixed value of the parameter Vik. If Vik = 1, the edge uik corresponds to the first value A1i of attribute Ai. IfVik = 2, the edge uik corresponds to the second value A2t of attribute Ai.The time complexity of this algorithm depends on the lifetime of colonies l (number of iterations) and the number n of the graph and the vertices of ants m, and is defined as O (l * n2 * m).

Pattern recognition; classification; decision tree; ant colony; making the search graph

route.

Введение. Технологии Интеллектуального Анализа Данных (Data Mining) -одна из активно развивающихся областей информационных технологий, предназначенной для выявления полезных знаний из баз данных различной природы [1]. Классификация - это процесс нахождения моделей или функций, которые описывают и различают классы для того, чтобы иметь возможность предсказывать класс произвольного заданного объекта с известными атрибутами, но неизвестной меткой класса. Полученная модель основывается на анализе обучающей выборки, то есть множества объектов, чья метка класса известна [1-4]. Деревья решений -один из методов автоматического анализа данных, успешно применяемый для решения задач классификации и регрессии [5].

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

Наибольшее распространение получили дихотомические классификационные модели формируемые алгоритмом построения бинарного дерева решений [8-14]. Каждый узел дерева при разбиении имеет только двух потомков. Рассмотрим пример построения деревьев решений.

Пусть задана обучающая выборка P={pk | k=1,2,...,nk} - (табл. 1). Каждый пример описывается следующим наборомA={Aili=1,2,...,ni} (атрибутов):A1 - Тип автомобиля; A2 - Тип топлива; A3 - КПП; A4- Мощность. Число классов - 2 (1 и 2). Каждый атрибут Ai имеет два значения A1i, A2i (см. табл. 1).

В табл. 1 приведена обучающая выборка, включающая 7 примеров.

Таблица 1

№ Л]. Тип автомобиля Л2. Тип топлива Л3. Коробка передач A4. Мощность Класс

1 Л]]. седан Л]2.дизель Л]3. механика A'4. 200 2

2 Л]]. седан. Л]2. дизель Л]3. механика A24. 150 1

3 Л]]. седан Л]2. дизель Л23. автомат A24. 150 1

4 Л2]. кроссовер Л]2. дизель Л23. автомат A24. 150 1

5 Л2]. кроссовер Л22. бензин Л23. автомат A24. 150 2

6 Л2]. кроссовер Л]2.дизель Л23. автомат A14. 200 1

7 Л]]. седан Л22. бензин Л]3. механика A14.200 2

8 Л2]. кроссовер Л22. бензин Л]3. механика A24. 150 ?

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

Рис. 1. Классификатор класса автомобиля

Использование дерева принятия решений для поиска ответа на интересующий нас вопрос сводится к тому, чтобы пройтись по дереву сверху вниз и определить, в какой из листьев попадает интересующая нас ситуация. Для получения ответа на вопрос - относится предъявленный объект к 1-му классу? - необходимо задать 4 вопроса в заданной последовательности.

Алгоритмом построения бинарного дерева решений решаются задачи классификации и регрессии.

Обучение дерева решений относится к классу обучения с учителем, то есть обучающая и тестовая выборки содержат классифицированный набор примеров. Для построения дерева на каждом внутреннем узле необходимо найти такое условие (проверку), которое бы разбивало множество, ассоциированное с этим узлом на подмножества. В качестве такой проверки должен быть выбран один из атрибутов. Общее правило для выбора атрибута можно сформулировать следующим образом: выбранный атрибут должен разбить множество так, чтобы получаемые в итоге подмножества состояли из объектов, принадлежащих к одному классу, или были максимально приближены к этому, т.е. количество объектов из других классов ("примесей") в каждом из этих множеств было как можно меньше [8-15].

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

1 И

построения деревьев решений, этот метод известен еще под названием разделения и захвата (divide and conquer). Очевидно, что при использовании данной методики, построение дерева решений происходит сверху вниз.

Очень часто алгоритмы построения деревьев решений дают сложные деревья, которые "переполнены данными", имеют много узлов и ветвей. Такие "ветвистые" деревья очень трудно понять. К тому же ветвистое дерево, имеющее много узлов, разбивает обучающее множество на все большее количество подмножеств, состоящих из все меньшего количества объектов. Гораздо предпочтительнее иметь дерево, состоящее из малого количества узлов, которым бы соответствовало большое количество объектов из обучающей выборки. И тут возникает вопрос: а не построить ли все возможные варианты деревьев, соответствующие обучающему множеству, и из них выбрать дерево с наименьшей глубиной? К сожалению, это задача является NP-полной, это было показано Л. Хайфилем (L. Hyafill) и Р. Риве-стом (R. Rivest), и, как известно, этот класс задач не имеет эффективных методов решения [14].

В течение последних лет были предложены различные подходы к решению проблемы классификации. Большинство из известных алгоритмов являются "жадными алгоритмами". На каждом шаге жадный алгоритм должен выбирать тот атрибут, для которого прирост информации максимален. На сегодняшний день существует значительное число алгоритмов, реализующих деревья решений CART, C4.5, NewId, ITrulc. CHAID, CN2 и т.д. [14, 15]. Но наибольшее распространение и популярность получили следующие два: CART, C4.5 [14]. Оценочная функция основана на идее уменьшения неопределенности в узле. Если один раз был выбран атрибут, и по нему было произведено разбиение на подмножества, то алгоритм не может вернуться назад и выбрать другой атрибут, который дал бы лучшее разбиение. И поэтому на этапе построения нельзя сказать даст ли выбранный атрибут, в конечном итоге, оптимальное разбиение. Главным образом это алгоритмы, основанные на эвристиках, обеспечивающих получение приемлемого результата за полиномиальное время. Тем не менее, возросшие сложность решаемых задач и требования к качеству решения делают актуальной разработку новых более эффективных методов.

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

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

Под точностью (распознавания) дерева решений понимается отношение правильно классифицированных объектов при обучении к общему количеству объектов из обучающего множества, а под ошибкой - количество неправильно классифицированных [3, 4].

Множество примеров Т,, соответствующих атрибуту Л. разбивается в соответствии с двумя значениями атрибута Л, на два подмножества T1. и T2, таким образом, что в подмножество T1ieТi входят примеры с 1-м значением Л\ атрибута, а в подмножество Т2{еТ{ входят примеры со 2-м значением A2i атрибута, T1i uT2j = Т..

Введем обозначения:

Б/ - число примеров в обучающей выборке (ОВ) с признаком (атрибутом) А Б, - число примеров в обучающей выборке (ОВ) со значением атрибута А,

+ Б"= Б,.

Допустим, есть узел на дереве, соответствующий атрибуту А,-. Для нашего примера (см. табл. 1) значения параметров Б, и Б, представлены в табл. 2.

Таблица 2

Б, Б11 Б21 Б2 Б12 Б?3 Бз Б1з Б з б4 Б14 Б 4

7 4 3 7 5 2 7 3 4 7 3 4

Б1, - число примеров в обучающей выборке со значением А-1, атрибута, относящихся к классу 1.

Б2 , - число примеров в обучающей выборке со значением А, атрибута, относящихся к классу 2.

Б1 г + Б2г=Зг. ^ ^

Для нашего примера (см. табл. 1) значения параметров Б1, и Б22, представлены в табл. 3.

Таблица 3

Я11 Я21 Я12 Я22 Я23 3*4 Я24

Э11, 8211 Я12, 822, 3112 8212 3122 3222 Э113 Э213 Э123 822з Б114 Э214 3124 3224

2 2 2 1 4 1 0 2 1 2 3 1 1 2 3 1

Введем параметры Е1, и Е2, - характеризующие степень количественного соотношения объектов разных классов в подмножествах Т1, и Т2,.

Е1, - разница между числом Б11 примеров подмножества Т1,, относящихся к классу 1, и числом Б21, примеров, относящихся к классу 2.

Е2-разница между числом Б12i примеров подмножества Т2,, относящихся к классу 1, и числом Б22, примеров относящихся к классу 2.

^=1 Б11 - Б21 |, Е2= Б12г - Б2|. .

Назовем показатели Е1,, Е2, показателями контрастности значений А, атрибута А,. Введем оценочную функцию

Е= Е\ + Е2, .

Чем больше значение функции Е,, тем в большей степени атрибут А, контрастен и обладает свойством разбиения на классы. Если для разбиения множества примеров Т выбран атрибут А,, то для дальнейшего разбиения (ветвления) выбирается то подмножество Т1, или Т2,, у которого больше Е1, или Е2,. Для нашего примера значения Е1,, Е2, , Е, имеют вид:

Таблица 4

Е11 Е21 Е 2 Е2 Е1з Ез Ез Е14 Е4 Г4

0 1 1 3 2 5 1 2 3 1 2 3

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

Выбор атрибута и его значения осуществляется за два такта. На первом такте выбирается атрибут А,, у которого оценочная функция Е, имеет лучшее значение. На втором такте выбирается то значение атрибута,у которого характеристика значения атрибута {Е\ или Е2,) имеет большее значение. На первом шаге, на первом такте выбирается и объявляется "висячей" вершина - корень дерева, у которой оценочная функция, имеет лучшее значение. Этой вершине соответствует исходное множество примеров (в нашем случае - 7). Для нашего примера в качестве корневой вершины выбирается атрибут "Тип топлива" для которого оценочная функция максимальна Е2=5 (см. табл. 4). Выбранный атрибут "Тип топлива " имеет два значения: "дизель" и "бензин", которым соответствуют два ребра и вводятся две вершины, смежные этим ребрам.

Вершины с однозначным разбиением на классы (в нашем случае это вершина смежная ребру со значением атрибута - "бензин", (рис. 2)) объявляется листом и дальнейшему ветвлению не подлежит. Остальные вершины остаются в ранге "висячих" и являются претендентами для дальнейшего разбиения с помощью еще не использованных атрибутов.

На втором такте для дальнейшего ветвления выбирается вершина, смежная ребру со значением атрибута - "дизель", так как Е12 =3, Е22=2. а Е12 >Е22.

В табл. 5 приведено множество примеров Т'2, соответствующих значению "дизель" атрибута А2..

Таблица 5

№ А1. Тип автомобиля А2. Тип топлива А 3. Коробка передач A4. Мощность Класс

1 А11. седан А12.дизель А13. механика A14. 200 2

2 А11. седан. А12. дизель А13. механика A24. 150 1

3 А11. седан А12. дизель А23. автомат A24. 150 1

4 А21. кроссовер А12. дизель А23. автомат A24. 150 1

6 А21. кроссовер А12.дизель А23. автомат A1,. 200 1

Просматриваются характеристики (параметры - Е, , Е1,, Е2,) всех не подвергавшихся ветвлению вершин (атрибутов) (см. табл. 5).

Рассчитаем значения параметров Б, Б, Б13и Е1, F2i , Е, - для множества примеров приведенных в табл. 5. Б1= Б2= Б3= Б4=5. (см. табл. 6-8).

Таблица 6

Si S1! S2! S3 S!3 S2 3 S4 S1, S2,

5 3 2 5 2 3 5 2 3

Таблица 7

S1! S21 S13 S2 3 S1, S2 4

S11, S211 S121 S221 S113 S213 S123 S223 S114 S214 S124 S222

2 1 1 1 1 1 3 0 1 1 3 0

Таблица 8

F11 F21 Fi F13 F23 F3 F14 F24 F4

1 0 1 0 3 3 0 3 3

На первом такте второго шага для дальнейшего ветвления среди атрибутов "Тип автомобиля", "КПП" и "Мощность" выбирается атрибут "Мощность", у которого оценочная функция в случае его применения к рассматриваемой "висячей" вершине, имеет лучшее значение, Е4=3. Выбранный атрибут "Мощность" имеет два значения: "200" и "150", которым соответствуют два ребра и вводятся две вершины, смежные этим ребрам. Вершины с однозначным разбиением на классы (в нашем

случае это вершина смежная ребру со значением атрибута - "150", (рис. 2)) объявляется листом и дальнейшему ветвлению не подлежит.

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

Таблица 9

№ А1. Тип А2. Тип А3. Коробка А4. Мощность Класс

автомобиля топлива передач

1 А11. седан А12.дизель А13. механика А14. 200 2

6 А21. кроссовер А12.дизель А23. автомат А14. 200 1

Рассчитаем значения параметров F2i , Fi - для множества

примеров приведенных в табл. 8. Б1= 32= 33= 34=2. (см. табл. 10-12).

Таблица 10

31 #1 Б21 3з #3 32з

2 1 1 2 1 1

Таблица 11

#1 Б21 Б1з 32з

Б111 Б211 Б121 Б221 Б113 Б213 Б123 Б223

0 1 1 0 0 1 1 0

Таблица 12

Fll F21 Р1 Flз F23 Рз

1 1 2 1 1 2

На третьем шаге в качестве выбранной для дальнейшего ветвления висячей вершины среди атрибутов "Тип автомобиля" и "КПП" выбирается атрибут "Тип автомобиля", у которого оценочная функция в случае его применения к рассматриваемой "висячей" вершине, имеет лучшее значение, F1=2.

Рис. 2. Оптимальный классификатор класса автомобиля

Выбранный атрибут "Тип автомобиля" имеет два значения: "седан" и " кроссовер", которым соответствуют два ребра и вводятся две вершины, смежные этим ребрам. Поскольку эти вершины имеют однозначное разбиение на классы, каждая из них объявляется листом и дальнейшему ветвлению не подлежит. Окончательно построенное дерево решений представлено на рис. 2.

Муравьиный алгоритм построения дерева решений. Для того чтобы построить муравьиный алгоритм для решения какой-либо задачи, нужно представить задачу в виде набора компонент: в первую очередь сформировать граф поиска решений и определить эвристику поведения муравья [16-20].

Поиск решения задачи выполняется на полном ориентированном графе решений 0(Х,V), гдеХ={х, | 1=1,2,...,п} множество вершин соответствует множеству атрибутов А, и - множество бинарных ребер полного графа, соответствующих значениям атрибутов (рис. 3). Каждая пара вершин (х, хк) связана двумя ориентированными бинарными ребрами. Одно бинарное ребро выходит из х, и входит в хк, другое наоборот выходит из хк и входит в х. Для всех к бинарное ребро ик, выходящее из данной вершины х,, используется для моделирования двух значений атрибута А,. Каждое бинарное ребро может находиться в одном из двух состояний, соответствующих двум значениям атрибута. Состояние ребра ик, связывающего пару вершин (х, хк), фиксируется с помощью параметра Ук. Если Ук =1, то ребро ик находится в состоянии соответствующем первому значению А1,, атрибута А,. Если Ук =2, то ребро ик находится в состоянии соответствующем второму значению атрибута А,. Если Ук =0, то ребро не входит в состав маршрута. Для учета оценки состояния ребра ик (количества отложенного феромона), вводится два счетчика И1к и И2к. Решение задачи построения ДР представляется в виде кода -некоторого маршрута Мк, включающего вершины и «бинарные» ребра с выбранными состояниями на графе решений 0(Х, V).

Рис. 3. Граф поиска решений

Для того чтобы получить дерево принятия решений нужна процедура декодирования. Дерево принятия решений формируется последовательно в соответствии с построенным маршрутом М, начиная с первоначального ввода безымянной вершины. На каждом шаге / декодирования в маршруте М выбирается очередная пара - вершина х{ и выходящее из нее ребро ик, для которого фиксируется значение параметра Ук. Вершине х{ соответствуют атрибут Ai . Если Ук =1, то ребру ик соответствует первое значение А\ атрибута А,. Если Ук =2, то ребру ик соответствует второе значение А2, атрибута А,.

Пример. Пусть на графе 0(Х,и) (рис. 3) в соответствии с предъявленным набором атрибутов объекта построен для классификации объекта маршрут М= х2, и24; х4, и41'; х1, и12 ; Ь. Маршрут завершается листом - Ь. При этом были определены параметры: У24=1, У41=1, У12=2.На первом шаге выбирается пара х2, и24; и определяется, что У24= 1. Вершине х2 соответствует атрибут А2, имеющий два значения А12 и

А22. Ребру и24 со значением параметра У24=1, соответствует значение атрибутаЛ12. Дальнейшему ветвлению подвергается ребро, соответствующее значению атрибута А12. Участок ДР после учета первой пары имеет вид, представленный на рис. 4.

Рис. 4. Участок ДР после учета первой пары

На втором шаге выбирается пара x4, u41; и определяется, что V41=1. Вершине x4 соответствует атрибут A4, имеющий два значения A'4 и A24. Ребру u41 со значением параметра V41=1, соответствует значение атрибута A14. Дальнейшему ветвлению подвергается ребро, соответствующее значению атрибута A14. Участок ДР после учета второй пары имеет вид, представленный на рис. 5.

На третьем шаге выбирается пара x1, u12; и определяется, что V12=2. Вершине x1 соответствует атрибут A1, имеющий два значения A11 и A21. Ребру u12 со значением параметра V12=1, соответствует значение атрибута A21. Дальнейшему ветвлению подвергается ребро, соответствующее значению атрибута A14. ДР после учета третьей пары имеет вид, представленный на рис. 2. Поскольку "висячии" вершины отсутствуют, процесс ветвления завершается.

Процесс построения дерева. В общем случае поиск решения задачи построения ДР осуществляется коллективом муравьев Z={ zk \k=1,2,... ,l}. На каждой итерации муравьиного алгоритма каждый муравей zk строит свое конкретное решение задачи построения ДР, представляемое маршрутом Mk в графе G=

[16]. В работе используется циклический (ant-cycle) метод муравьиных систем

[17]. В этом случае ферромон откладывается агентами на ребрах и вершинах после полного формирования решений. На первом этапе каждой итерации каждый k-й муравей формирует свой собственный маршрут Mk. На втором этапе все муравьи откладывают феромон. На третьем этапе осуществляется испарение феромона.

Рис. 5. Участок ДР после учета второй пары

Для равномерного распределения муравьев и создания равных стартовых условий при выборе начальных вершин у формируемых муравьями маршрутов, используется стартовая вершина Б, связанная ориентированными ребрами со всеми вершинами множества X (см. рис. 3). Каждый муравей начинает построение маршрута с вершины Б.

В качестве исходных данных служит обучающая выборка (см. табл. 1). Процесс построения маршрута Мк агентом zk пошаговый двухтактный. На каждом шаге t агент zk применяет вероятностные правила выбора следующей вершины (атрибута) и ребра (значения атрибута) для их включения в формируемый маршрут Мк(^). В памяти агента хранится информация: число выполненных шагов - ^ маршрут Мк(^) , построенный за t шагов; вершина xi (атрибут А) выбранная и включенная в маршрут Мк(^) на шаге ^ значение Ай атрибута Ai (вершины XI), выбранное на шаге 1 На первом такте шага 0+1) формируется множество Хк^+1)с X таких вершин xj е Хк^+1), которые еще не вошли в состав строящегося маршрута и каждая из них может быть добавлена в формируемый маршрут. Другими словами множество Хк^+1) соответствует множеству А^+1) атрибутов еще не входивших в состав строящегося дерева решений. Агент просматривает все вершины xjеXk(t+1). Для каждой вершины xjеXk(t+1) рассчитывается параметр с]к - суммарный уровень размещенного на ней феромона. В соответствии с выражениями (1-4) для вершины хреХк(1+1) рассчитываются показатели качества Е1]к(1+1), Е2]к(1+1)), Е]к(1+1) ,

Определяется стоимость Ирк вершины хре Хк(1+1).

Н]к= ас}к+ ^0+1), где а, в - управляющие параметры, которые подбираются экспериментально.

Вероятность Ррк включения вершины хреХф+1) в формируемый маршрут Мк(1+1) определяется следующим соотношением

P^k=k^k / £

Агент с вероятностью Ррк выбирает одну из вершин хк, которая включается в маршрут Мк((+1).

После выбора (на шаге /+1) вершины (атрибута) хр в маршрут Мк^+1) включается бинарное ребро ир, связывающее выбранную на шаге / вершину х, с вершиной хк. Параметру У,к бинарного ребра и,к присваивается номер варианта выбранного значения атрибута А.

На втором такте шага 1+1 осуществляется выбор значения А^р атрибута (вершины хк). Для каждого значения Afi (Г=1,2)выбранного атрибута хр определяется его стоимость

gljk =^цк+чЕк$+1),

§2рк =^2]к+ГЕ2]к&+1),

где ц, у - управляющие параметры, которые подбираются экспериментально, ё1рк - количество феромона, накопленного в счетчике Нк1, ё2рк - количество феромона, накопленного в счетчике Нк2. Вероятность Р1рк включения в маршрут 1-го значения выбранного атрибута

Р1]к= gljk / gljk + g2jk. Вероятность Р2,к включения в маршрут 2-го значения выбранного атрибута

Р2рк= g2jk / g1ik + g2jk. Рр + Р2рк=1.

Агент в соответствии с заданным распределением с вероятностей выбирает значение Ар атрибута Ар.

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

Целевая функция имеет вид

Ок

где к1, к2 - коэффициенты важности; ЬМ -число вершин, входящих в маршрут Мк; БМ - число ребер в дереве решений.

На втором этапе итерации, каждый муравей 2к откладывает феромон на соответствующих вершинах и рёбрах построенного маршрута.

Количество феромона тк(1), откладываемое муравьем 2к на каждой вершине и ребре построенного маршрутаМк, определяется следующим образом:

5 Тк

где I - номер итерации, 8 - коэффициент отложения, Qi - базовое количество феромона, откладываемое муравьем на ребрах маршрута Мк, Ок(1) - целевая функция для решения, полученного муравьем 2к на 1-й итерации. Чем меньше Ок(1), тем больше феромона откладывается на ребрах построенного маршрута и, следовательно, тем больше вероятность выбора этих ребер при построении маршрутов на следующей итерации.

Сначала феромон откладывается на всех вершинах построенного маршрута Мк. Затем последовательно просматриваются, начиная с первой, вершины маршрута. Пусть рассматривается вершина х, (атрибут А,). Определяется значение А^ атрибута А,. Количество феромона в счетчике И^, соответствующем значению А^ атрибута Ai каждого бинарного ребра, смежного вершине х, увеличивается на величину тк(1).

После того, как каждый агент сформировал решение и отложил феромон на графе поиска решений, на третьем этапе происходит общее испарение феромона на ребрах и вершинах полного графа О в соответствии с нижеприведенной формулой.

8,к = 8,к

где р - коэффициент обновления.

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

Временная сложность этого алгоритма зависит от времени жизни колонии I (число итераций), количества вершин графа п и числа муравьев т, и определяется

как 0(1*п2*т).

Алгоритм построения ДР на основе метода муравьиной колонии формулируется следующим образом [16-20].

1. В соответствии с исходными данными формируется граф поиска решений О.

2. Определяются число агентов и вершины, в которые они помещаются.

3. Задается значение параметра Qiи число итераций - N

4. На всех вершинах и бинарных ребрах графа О откладывается начальное количество феромона. 1=1.

5. На первом этапе 1-й итерации на ГПР О каждым агентом 2к находится маршрут М().

6. Для каждого маршрута Мк(1), строится соответствующее дерево решений.

7. Для каждого решения задачи построения дерева решений находится значение целевой функции ¥к(1).

8. На вершинах и ребрах каждого найденного маршрута Мк(1) в графе О откладывается феромон. Количество феромона, откладываемого каждым агентом, пропорционально ¥к(1).

9. Выполняется процедура испарения феромона на ребрах графа О.

lG. Выбор лучшего решения, полученного на протяжении всех выполненных итераций.

ll. Если все итерации выполнены, то конец работы алгоритма, в противном

случае, переход к пункту 5 для выполнения очередной итерации. Заключение. На основе сравнительного анализа существующих подходов и методов для решения задачи классификации использованы мультиагентные методы интеллектуальной оптимизации, базирующиеся на моделировании адаптивного поведения муравьиной колонии. Разработана модель пространства поиска решений в виде полного ориентированного графа поиска решений. Отличительная особенность разработанной модели заключается в том, что в графе поиска решений использованы бинарные ребра и введена функция состояния ребра. Это позволяет осуществлять комбинирование набором, направлением, выбранным состоянием ребра при построении маршрута на графе поиска решений. Интеграция эвристик с механизмами муравьиной колонии позволило синтезировать эффективную оценочную функцию, основанную на идее уменьшения неопределенности в узле. В работе предлагается муравьиный алгоритм построения дерева решений в соответствии со стратегией поиска в глубину, основанный на использовании эффективной оценочной функции для выбора атрибута.

Для анализа точности получаемых решений был синтезирован ряд примеров с априори известным оптимальным значением целевой функции. Исследованию подвергались примеры, у которых обучающая выборка содержала до 1000 примеров. Сравнение с известными алгоритмам [l4] показало, что при меньшем времени работы у полученных с помощью разработанного алгоритма решений значения целевой функции лучше (меньше) в среднем на 6 %. Вероятность получения оптимального решения составила 0.9.

Временная сложность алгоритма (ВСА), полученная экспериментальным путем, лежит в пределах О(п2)-О(п3).

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Han J., Kamber M. Data mining: Concepts and Techniques. - Morgan Kaufmann Publishers, 2GGl.

2. Ian H. Witten, Eibe Frank and Mark Л. Hall Data Mining: Practical Machine Learning Tools and Techniques. - 3rd Edition. - Morgan Kaufmann, 2Gll.

3. Журавлев Ю.И., Рязанов B.B., Сенько О.В. Распознавание. Математические методы. Программная система. Практические применения. - М.: Фазис, 2006. - 159 с.

4. Шлезингер М., Главач В. Десять лекций по статистическому и структурному распознаванию. - Киев: Наукова думка, 2004. - 545 с.

5. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. - Springer, 2GGl. COMPACT - Comparative Package for Clustering Assessment. A free Matlab package, 2GG6.

6. Berkhin P. Survey of Clustering Data Mining Techniques, Accrue Software, 2GG2.

I. Радченко С.Г. Методология регрессионного анализа: монография. - К.: Корнийчук, 2Gll. - 376 c.

8. Бериков В.С., Лбов Г.С. Современные тенденции в кластерном анализе // Всероссийский конкурсный отбор обзорно-аналитических статей по приоритетному направлению «Информационно-телекоммуникационные системы», 2008. - 26 с.

9. Барсегян A.A., Куприянов М.С., Степаненко В.В., Холод И.И. Методы и модели анализа данных: OLAP и Data Mining. - СПб.: БХВ-Петербург, 2004. - 336 c.

lG. ЛебедевБ.К., ЛебедевВ.Б. Эволюционная процедура обучения при распознавании образов // Известия ТРТУ. - 2GG4. - № 8 (43). - С. 83-88.

II. KonarЛ. Artificial intelligence and soft computing: behavioral and cognitive modeling of the human brain. - CRC Press LLC. - Boca Raton,Florida, 2GGG.

l2. Курейчик В.М., Лебедев Б.К., Лебедев О.Б. Поисковая адаптация: теория и практика. - М.: Физматлит, 2006. - 272 с.

13. ЛебедевБ.К., Лебедев О.Б. Моделирование адаптивного поведения муравьиной колонии при поиске решений, интерпретируемых деревьями // Известия ЮФУ. Технические науки. - 2012. - № 7 (132). - С. 27-35.

14. Курейчик В.В., Курейчик В.М., Гладков Л.А., Сороколетов П.В. Бионспирированные методы в оптимизации. - М.: Физмалит, 2009. - 384 с.

15. Курейчик В.М., Лебедев Б.К., Лебедев О.Б. Разбиение на основе моделирования адаптивного поведения биологических систем // Нейрокомпьютеры: разработка, применение. - 2010. - № 2. - С. 28-34.

16. Лебедев В.Б., Лебедев О.Б. Роевой интеллект на основе интеграции моделей адаптивного поведения муравьиной и пчелиной колоний // Известия ЮФУ. Технические науки. - 2013. - № 7 (144). - С. 41-47.

17. Лебедев О.Б. Модели адаптивного поведения муравьиной колонии в задачах проектирования. - Таганрог: Изд-во ЮФУ, 2013.

18. DorigoM. andStutzle T. Ant Colony Optimization. MIT Press, Cambridge, MA, 2004.

19. Лебедев Б.К., Лебедев О.Б., Лебедева Е.М. Решение однородной распределительной задачи на основе моделей адаптивного поведения муравьиной колонии // Вестник РГУПС. - 2016. - № 2 (62). - С. 71-77.

20. Engelbrecht A.P. Fundamentals of Computational Swarm Intelligence. John Wiley & Sons, Chichester, UK, 2005.

REFERENCES

1. Han J., Kamber M. Data mining: Concepts and Techniques. Morgan Kaufmann Publishers, 2001.

2. Ian H. Witten, Eibe Frank and Mark A. Hall Data Mining: Practical Machine Learning Tools and Techniques. 3rd Edition. Morgan Kaufmann, 2011.

3. Zhuravlev Yu.I., Ryazanov V.V., Sen'ko O.V.Raspoznavanie. Matematicheskie metody. Programmnaya sistema. Prakticheskie primeneniya [Recognition. Mathematical methods. Software system. Practical application]. Moscow: Fazis, 2006, 159 p.

4. Shlezinger M., Glavach V. Desyat' lektsiy po statisticheskomu i strukturnomu raspoznavaniyu [Ten lectures on statistical and structural recognition]. Kiev: Naukova dumka, 2004, 545 p.

5. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. Springer, 2001. COMPACT - Comparative Package for Clustering Assessment. A free Matlab package, 2006.

6. Berkhin P. Survey of Clustering Data Mining Techniques, Accrue Software, 2002.

7. Radchenko S.G. Metodologiya regressionnogo analiza: monografiya [Methodology regression analysis: monograph]. Kiev: Korniychuk, 2011, 376 p.

8. Berikov V.S., Lbov G.S. Sovremennye tendentsii v klasternom analize [Modern trends in cluster analysis], Vserossiyskiy konkursnyy otbor obzorno-analiticheskikh statey po prioritetnomu napravleniyu «Informatsionno-telekommunikatsionnye sistemy», 2008 [all-Russian competitive selection of survey and analytical articles on priority direction "Information-telecommunication systems", 2008], 26 p.

9. 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. Petersburg: BKhV-Peterburg, 2004, 336 p.

10. Lebedev B.K., Lebedev V.B. Evolyutsionnaya protsedura obucheniya pri raspoznavanii obrazov [The evolutionary procedure learning for image recognition], Izvestiya TRTU [Izvestiya TSURE], 2004, No. 8 (43), pp. 83-88.

11. Konar A. Artificial intelligence and soft computing: behavioral and cognitive modeling of the human brain. CRC Press LLC. Boca Raton, Florida, 2000.

12. Kureychik V.M., Lebedev B.K., Lebedev O.B. Poiskovaya adaptatsiya: teoriya i praktika [Search adaptation: theory and practice]. Moscow: Fizmatlit, 2006, 272 p.

13. 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.

14. Kureychik V.V., Kureychik V.M., Gladkov L.A., Sorokoletov P.V. Bionspirirovannye metody v optimizatsii [Inspirowanie methods in optimization]. Moscow: Fizmalit, 2009, 384 p.

15. Kureychik V.M., Lebedev B.K., Lebedev O.B. Razbienie na osnove modelirovaniya adaptivnogo povedeniya biologicheskikh sistem [Partitioning based on simulation of adaptive behavior of biological systems], Neyrokomp'yutery: razrabotka, primenenie [Neurocomputers: development, application], 2010, No. 2, pp. 28-34.

16. 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.

17. Lebedev O.B. Modeli adaptivnogo povedeniya murav'inoy kolonii v zadachakh proektirovaniya [Models of adaptive behaviour of ant colony in task design]. Taganrog: Izd-vo YuFU, 2013.

18. DorigoM. andStutzle T. Ant Colony Optimization. MIT Press, Cambridge, MA, 2004.

19. Lebedev B.K., Lebedev O.B., Lebedeva E.M. Reshenie odnorodnoy raspredelitel'noy zadachi na osnove modeley adaptivnogo povedeniya murav'inoy kolonii [The solution of the homogeneous distribution of tasks based on models of adaptive behavior ant colony], Vestnik RGUPS [Bulletin of the Rostov state transport University], 2016, No. 2 (62), pp. 71-77.

20. Engelbrecht A.P. Fundamentals of Computational Swarm Intelligence. John Wiley & Sons, Chichester, UK, 2005.

Статью рекомендовал к опубликованию д.т.н., профессор А.Г. Коробейников.

Лебедев Борис Константинович - Южный федеральный университет; e-mail: lebedev.b.k@gmail.com; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 89282897933; кафедра систем автоматизированного проектирования; профессор.

Лебедев Олег Борисович - e-mail: lebedev.ob@mail.ru; тел.: 89085135512; кафедра систем автоматизированного проектирования; доцент.

Лебедева Елена Михайловна - e-mail: lebedev.ob@mail.ru; тел.: 89081702418; кафедра систем автоматизированного проектирования; аспирант.

Lebedev Boris Konstantinovich - Southern Federal University; e-mail: lebedev.b.k@gmail.com; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +79282897933; the department of computer aided design; professor.

Lebedev Oleg Borisovich - e-mail: lebedev.ob@mail.ru; phone: +79085135512; the department of computer aided design; associate professor.

Lebedeva Elena Mikhaylovna - e-mail: lebedev.ob@mail.ru; phone: +79081702418; the department of computer aided design; postgraduate student.