13 ВЫБОР ОПТИМАЛЬНОГО МНОЖЕСТВА БЕЗЫЗБЫТОЧНЫХ ТЕСТОВ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО ПОИСКА С НИШИНГОМ1 Ю.Р.Цой2, А.Е. Янковская3 политехнический университет, 634050, Томск, пр. Ленина, 30, 8(3822)44-33-95, [email protected] 3 Томский государственный архитектурно-строительный университет, 634003, Томск, пл. Соляная, 2, 8(3822)65-33-51, [email protected] 2 Томский Рассматривается задача выбора оптимального подмножества безызбыточных безусловных диагностических тестов с использованием эволюционного подхода. Для повышения качества результатов и обеспечения параллельного поиска предлагается использование нишинга (niching). На основе полученных результатов экспериментов сделан вывод о большей перспективности использовании генетического алгоритма без нишинга и генетического алгоритма с перенаселением перед генетическим алгоритмом с разделением приспособленности для решения поставленной задачи. Введение Постановка задачи Выбор «хороших» безызбыточных диагностических тестов является одним из наиболее важных при принятии решений в интеллектуальных системах, поскольку от свойств используемых тестов существенно зависит качество получаемых решений. Однако, этот выбор не всегда приводит к оптимальному решению, поскольку общее количество признаков в выбранном множестве тестов, может быть слишком большим, также как временные и стоимостные затраты или ущерб (риск) [9], наносимый в результате выявления значений признаков исследуемого объекта, например, при решении геоэкологических (биомедицинских) задач. Впервые критерии оптимальности и актуальная задача поиска оптимального подмножества безызбыточных безусловных диагностических тестов (ББДТ) поставлена в статье [2]. В статье [8] сформулированы критерии оптимальности, а в статье [1] предложено три алгоритма, обеспечивающие выполнение этих критериев: логикокомбинаторный, алгоритм на основе метода анализа иерархии и генетический алгоритм (ГА). Кратко сформулируем рассматриваемую задачу. Пусть T {tij : i 1,..., n, j 1,..., m} – матрица ББДТ, n – количество ББДТ, m – количество характеристических признаков. Ti соответствует i-му ББДТ (i-я строка матрицы T ). Обозначим через z {z j : j 1,..., m} – множество характеристических признаков, причем tij 1 z j Ti . Для каждого признака zj зададим весовой коэффициент wj и коэффициенты стоимости wj и ущерба (риска) wj [9]. Далее для краткости будем использовать термины «вес», «стоимость» и «ущерб» признака вместо соответственно «весовой коэффициент», «коэффициент стоимости» и «коэффициент ущерба». Для данной матрицы T с заданными весами, стоимостью и ущербами признаков, необходимо выделить такую подматрицу T0 , содержащую n0 строк, чтобы соответствующее ей множество тестов N0 обеспечивало выполнение следующих критериев в порядке их следования [1]: 1. В выбранном множестве тестов N0 мощ- Работа выполнена при поддержке грантов РФФИ, проект № 07-01-00452, и РГНФ, проект № 06-06-12603В. 1 14 ности n0 должно содержаться максимальное число псевдообязательных признаков. 2. Выбранное множество тестов N0 должно содержать минимальное общее число признаков. 3. Выбранное множество тестов N0 должно иметь максимальный суммарный вес. 4. Множество выбранных тестов N0 должно иметь наименьшую суммарную стоимость. 5. Множество выбранных тестов N0 должно иметь наименьший суммарный ущерб. Генетический алгоритм Для решения поставленной задачи предлагается использовать ГА [6], представляющий итерационный вероятностный эвристический алгоритм поиска. Отличительной особенностью ГА является одновременная работа со множеством точек (популяцией) из пространства потенциальных решений. Для решения рассматриваемой задачи каждое возможное решение представлено бинарной хромосомой (строкой) длины n, каждый i-й символ которой кодирует включение i-го диагностического теста в итоговое подмножество. Отметим, что при использовании выбранного способа кодирования решений необходимо добавить дополнительное ограничение для регуляции количества единичных разрядов в хромосоме. Поэтому в первой стадии в начале эволюционного поиска на определенное количество поколений будет затрачено на поиск решений-кандидатов, соответствующих подмножеству ББДТ мощностью n0 . Поиск решений, удовлетворяющих сформулированным выше критериям оптимальности, может быть осуществлен только после первой стадии. В связи с этим время поиска решения увеличится, что отрицательно влияет на результат работы ГА. Для преодоления этого недостатка предлагается инициализация бинарных хромосом, содержащих ровно n0 единичных разрядов. Будем вычислять приспособленность k-й особи f k c хромосомой h путем оценки качества соответствующей подматрицы T(h) в соответствии с выражением [9]: 5 f k vk eh( k ) 100U (h) n0 , 2 k 1 f min , где vk – весовой коэффициент k-го критерия, соответствующий его значимости; U (ψ ) – количество единичных разрядов в бинарной строке ψ ; eh(k ) – функция штрафа за невыполнение k-го критерия: m U c T0 (h) eh(1) , m U T (h) eh( 2) d 0 , m S (T) SW (T0 (h)) eh(3) W , SW (T) S T (h) eh( 4 ) W 0 , SW (T) S T (h) eh( 5) W 0 , SW (T) где SW (Ψ), SW (Ψ) и SW (Ψ) – соответственно суммарный вес, стоимость и ущерб по всем тестам множества, соответствующего матрице Ψ; U c ( Ψ) U ψ i i и U d (Ψ) U ψi – соответственно количеi ство единичных разрядов в конъюнкции и дизъюнкции по всем строкам бинарной матрицы Ψ . Для того чтобы учесть приоритеты выше сформулированных критериев, будем уменьшать вес штрафов с ростом номера штрафа k. Для экспериментов будем использовать следующие значения весов штрафов: v1 40 , v2 30 , v3 15 , v4 10 , v5 5 . Отметим, что выбор значений штрафов зависит от рассматриваемой прикладной задачи. Нишинг Для повышения качества результатов работы ГА предлагается использование нишинга [4, 5], для которого характерно сохранение в одной популяции как можно большего количества недоминируемых (несравнимых) решений, соответствующих различным точкам на границе Парето, что дает возможность организовать параллельный поиск нескольких решений, в отличии от 15 ГА без нишинга, в котором вся популяция сходится к одному решению. Наиболее известны следующие разновидности нишинга: 1. Разделение приспособленности (fitness sharing) [5], при котором приспособленность хромосомы пересчитывается в зависимости от количества схожих с ней хромосом (в соответствии с выбранной метрикой) в данной популяции и их приспособленности. Размер группы схожих хромосом зависит от характеристик экстремума, и чем больше группа, тем меньше приспособленность хромосом, принадлежащих этой группе. Это способствует появлению в популяции небольших групп хромосом, таких что, близость хромосом внутри группы будет значительно больше чем между хромосомами из различных групп. 2. «Перенаселение» (crowding) [4]. При использовании данной разновидности нишинга хромосомы-потомки замещают в популяции только наиболее близкие к ним хромосомы, что препятствует сходимости популяции к одному единственному решению. Перенаселение используется на этапе формирования популяции следующего поколения (для следующей итерации ГА) Для ГА с разделением приспособленности будем использовать следующую формулу для пересчета значений приспособленности особей перед этапом селекции [5]: fk , f k sd (i, k ) i 1 d / , d , s (d ) d , 0, где f k – новое значение приспособленности k-й особи; d (i, k ) – расстояние по Хэммингу между хромосомами i-й и k-й особей; – параметр, определяющий «порог» сходства двух особей; – численный параметр. В данном исследовании будем использовать значения 3 , 1. В качестве стратегии перенаселения будем рассматривать детерминированное перенаселение (deterministic crowding) [7], которое является вариантом традиционного перенаселения, и отличается тем, что при нем формируются фиксированные родительские пары и потомок (после мутации) заме няет наиболее схожую с ним родительскую особь только в том случае, если приспособленность потомка выше приспособленности родителя, в противном случае место потомка занимает его родитель. Особенностью детерминированного перенаселения является отсутствие необходимости в использовании этапа селекции особей, т.к. селекция производится на этапе формирования популяции следующего поколения. Результаты экспериментов Для проведения экспериментов сгенерирована псевдослучайная матрица безызбыточных тестов T размерностью 1000х50. После удаления поглощающих строк количество строк в матрице T уменьшилось до 998. Мощность подмножества ББДТ, которое необходимо сформировать из матрицы T , равно n0 = 300. Будем сравнивать результаты работы простого ГА (ПГА) с бинарным турнирным отбором, ПГА с разделением приспособленности (ПГАРП) и ПГА с детерминированным перенаселением (ПГАДП) для 1000 поколений генетического поиска. Для всех рассматриваемых вариантов ГА будем оценивать наилучшую и среднюю приспособленность в популяции после последнего поколения, а также время работы в зависимости от размера популяции (N = 20, 50, 100, 200 особей) и оператора кроссинговера (1- и 2-точечный и однородный). Все результаты будем усреднять по 100 запускам. Результаты экспериментов для 2-точечного оператора кроссинговера представлены в табл. 1-3. Табл. 1. Лучшая приспособленность после последнего поколения N ПГА ПГАРП ПГАДП 20 84,7558 84,8755 84,8669 50 84,6821 84,7849 84,8532 100 84,6309 84,7145 84,8512 200 84,5897 84,6597 84,8439 По результатам экспериментов значения лучшей приспособленности для ПГАРП и ПГАДП при N = 50 отличаются статистически незначимо по t-тесту с уров- 16 нем значимости 0,01 (выделено курсивом в табл. 1). Также незначимо отличаются значения средней приспособленности для ПГА и ПГАРП для N = 20. Табл. 2. Средняя приспособленность после последнего поколения N ПГА ПГАРП ПГАДП 20 317,758 361,879 84,9075 50 371,868 466,892 84,9073 100 482,189 581,805 84,9083 200 592,911 730,339 84,9075 Табл. 3. Время работы алгоритмов в секундах N ПГА ПГАРП ПГАДП 20 7,61671 11,2153 9,17005 50 20,046 40,3959 23,9578 100 39,3112 122,233 48,3965 200 78,5838 346,664 93,9831 Из данных табл. 1 видно, что значения лучшей приспособленности в конце генетического поиска для ПГА превосходят аналогичные результаты для ПГАРП и ПГАДП, т.к. без использования нишинга поиск концентрируется преимущественно на одном локальном экстремуме. При этом лучшая приспособленность для ПГАРП лучше таковой для ПГАДП, что объясняется тем, что к концу генетического поиска популяция в ПГАРП также сходится к одному решению, что способствует более интенсивному улучшению качества этого решения, однако результаты для ПГАРП оказываются не лучше результатов ПГА. Таким образом, применительно к рассматриваемой проблеме выбора оптимального подмножества ББДТ использование разделения приспособленности c 3 не дает желаемого результата ни с точки зрения качества конечного решения, ни с точки зрения разнообразия результатов за счет параллельного поиска нескольких альтернативных решений. Также отметим большое время работы ПГАРП (табл. 3), значительно превосходящее время работы ПГА и ПГАДП, ввиду дополнительных вычислительных затрат, связанных с попарным сравнением хромосом в популяции. Значения лучшей приспособленности для ПГАДП оказываются лучше или сопо- ставимы с результатами ПГАРП только для популяции небольшого размера, и во всех случаях уступают значениям лучшей приспособленности ПГА. При этом по значению средней приспособленности ПГАДП значительно превосходит ПГА и ПГАРП благодаря используемой стратегии формирования популяции следующего поколения. Разнообразие популяции последнего поколения в ПГАДП весьма велико и в отличие от результатов ПГА и ПГАРП в популяции присутствуют хромосомы, соответствующие нескольким экстремумам. По времени работы ПГАДП уступает ПГА, однако разница незначительна, и, так же как и для ПГА, время работы ПГАДП линейно зависит от используемого размера популяции. Весьма интересно, что средняя приспособленность для ПГАДП остается неизменной при использовании различного размера популяции. При этом для ПГА и ПГАРП средняя приспособленность ухудшается c ростом популяции, вероятно, ввиду появления большего числа особей с низкой приспособленностью. В силу ограничения размера публикации не представляется возможным привести результаты для сравниваемых алгоритмов с использованием 1-точечного и однородного операторов кроссинговера. Однако необходимо отметить, что эти результаты и выводы по ним аналогичны результатам и выводам для случая использования 2точечного кроссинговера. Заключение В данной работе представлены первые результаты исследования применения ГА с нишингом для решения проблемы выбора оптимального подмножества ББДТ. Полученные результаты исследования для использованной сгенерированной матрицы тестов позволяют сделать вывод о большей перспективности применения ПГА и ПГАДП по сравнению с ПГАРП для решения поставленной задачи. Отметим, что к настоящему времени помимо использованных при постановке задачи пяти критериев оптимизации введен новый, шестой критерий – критерий информативности входящих в выбранное 17 подмножество тестов признаков. В будущем планируется дополнить результаты исследований ГА с использованием этого нового критерия. Также планируется включение программного модуля, реализующего ГА в интеллектуальное инструментальное средство ИМСЛОГ [3]. Список литературы 1. Колесникова С.И., Можейко В.И., Цой Ю.Р., Янковская А.Е. Алгоритмы выбора оптимального множества безызбыточных диагностических тестов в интеллектуальных системах поддержки принятия решений // Первая международная конференция “Системный анализ и информационные технологии” САИТ-2005 (12-16 сентября 2005г., Переславль-Залесский, Россия): Труды конференции. В 2 т. Т.1. – М.: КомКнига, 2005. – С. 256-262. 2. Янковская А.Е. Построение логических тестов с заданными свойствами и логико-комбинаторное распознавание на них // Интеллектуализация обработки информации (ИОИ-2002). Тезисы докладов международной научной конференции. – Симферополь, 2002. – С. 100-102. 3. Янковская А.Е., Гедике А.И., Аметов Р.В. Конструирование прикладных интеллектуальных систем на базе инструментального средства ИМСЛОГ-2002 // Новые информационные технологии в исследовании сложных структур. Вестник Томского государственного университета. Приложение. № 1(II). Сентябрь 2002. Доклады IV Всероссийской конференции с международным участием. – Томск, 2002. – С. 185-190. 4. De Jong K. An analysis of the behavior of a class of genetic adaptive systems. PhD thesis. – University of Michigan, Ann Arbor, 1975. 5. Goldberg D.E., Richardson J. Genetic Algorithms with sharing for multimodal optimization // Proc. of the Second Int. Conf. on Genetic Algorithms, 1987. – P. 41-49. 6. Holland J.H. Adaptation in Natural and Artificial Systems. The University of Michigan Press, 1975. 7. Mahfoud S.W. Crowding and preselection revisited // Parallel Problem Solving From Nature, vol 2 / R. Manner, В. Manderick (Eds.). - Amsterdam: Elsevier, 1992. Pp 27-36. 8. Yankovskaya A.E., Mozheiko V.I. Optimization of a set of tests selection satisfying the criteria prescribed // 7th International Conference on Pattern Recognition and Image Analysis: New Information Technologies (PRIA-7-2004). Conference Proceedings. Vol. I. – St. Petersburg: SPbETU 2004. – Pp.145-148. 9. Yankovskaya A. E, Tsoy Y.R. Optimization of a set of tests selection satisfying the criteria prescribed using compensatory genetic algorithm // Proceedings of IEEE East-West Design & Test Workshop (EWDTW’05) Odessa, Ukraine, September 15-19, 2005 – Kharkov: SPD FL Stepanov V.V. – P. 123126.