Московский государственный университет путей сообщения
Опубликован: 06.09.2012 | Доступ: свободный | Студентов: 1233 / 168 | Оценка: 5.00 / 5.00 | Длительность: 35:22:00
Специальности: Разработчик аппаратуры
Лекция 29:

Сокращение диагностической информации при помощи масок

< Лекция 28 || Лекция 29: 12 || Лекция 30 >

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

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

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

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

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

Остановимся на определении структуры хромосомы, используемой в рассматриваемых нами ПГА для поиска единой маски.

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

Хромосому, представляющую маску h, будем представлять в виде битовой последовательности \eta(h) длины m|\tau|:


\eta(h)=\eta_1(h)\eta_2(h)\ldots\eta_{m|\tau|}(h)
( 29.1)

Здесь m - количество выходов устройства, \tau - применяемый тест.

Для каждой точки проверки i:j из маски h значение \eta_s(h) в (4.1), где s=m(i-1)+j, полагается равным 1. Все остальные разряды в \eta(h) полагаются равными нулю.

Объемом маски будем считать величину


|h|\stackrel{def}{=}\sum\limits_{i=1}^{m|\tau|}{\eta_i(h)}

Назовем маску h полной, если \eta_i(h)=1 для всех i=1,\ldots,m|\tau|. Введем в рассмотрение величину

V(h)=\cfrac{|h|}{m|\tau|} ( 29.2)

которая равна доле объема h от объема полной маски.

Таким образом, среди всех битовых строк длины m|\tau| ПГА будет отыскивать такую, которая обеспечивает экстремум целевой функции и о которой будет сказано ниже. В теории ГА эту функцию называют фитнес-функцией.

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

\rho_1=\cfrac{1}{|s|}\sum\limits_s{|S_j|^2},

где S- множество состояний ЦУ, S_j- список подозреваемых неисправностей. Обозначим через \rho_2(h) значение ожидаемой глубины диагностирования с использованием ДИ, порожденной маской h.

Теперь обратимся к задаче минимизации ДИ. Для ее решения с применением ПГА будем использовать следующую фитнес-функцию:


d_1(\eta(h))=C\cdot(\rho_2(h)-1)+V(h) ( 29.3)

где C - достаточно большая константа.

Поясним содержательный смысл функции (29.3). Ее значение естественно трактовать как оценку трудоемкости поиска неисправности в ЦУ, которая очевидно будет складываться из величины, пропорциональной средней длине СПН (первое слагаемое) и величины, пропорциональной размеру пространства поиска для определения неисправности, присутствующей в тестируемом ДУ. Множитель C в (29.3) введен для того, чтобы обеспечить заданную глубину диагностирования \mu_0. Исходя из содержательного смысла фитнес-функции (29.3), искомым решением рассматриваемой задачи будет такая маска, которая доставит минимум упомянутой функции.

Соображения, аналогичные только что приведенным, применительно к задаче оптимизации ДИ приводит к следующей фитнес-функции:

	
d_2(\eta(h))=C_1\cdot(\rho_2(h)-1)+C_2\cdot|V(h)-Z| ( 29.4)

где C_1 и C_2 - достаточно большие константы.

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

Можно упростить вид последней фитнес-функции если ограничить пространство поиска маски только лишь масками заданного объема Z. Тогда в качестве фитнес-функции можно принять функцию

d_3(\eta(h))=\rho_2(h) ( 29.5)

Упрощение фитнес-функции влечет за собой изменение в операторах кроссовера и мутации таким образом, чтобы в результате выполнения этих операторов получались особи объема Z.

Содержательный смысл минимизации функции d_3 очевиден - при постоянном объеме маски проводится минимизация ожидаемой глубины диагностирования.

Решение задачи минимизации ДИ с помощью индивидуальных масок можно осуществить двумя способами. Первый из них заключается в разработке ГА для поиска индивидуальной маски одного конкретного технического состояния ДУ, второй - в разработке ГА для одномоментного поиска множества индивидуальных масок всей рассматриваемой совокупности технических состояний ДУ.

Для обоих способов решения задачи структура хромосомы, представляющая одну индивидуальную маску, останется в виде, представленном соотношением (29.1). В случае первого генетического алгоритма, так же как и в случае поиска единой маски, хромосома представляет одну маску - битовую последовательность из m|\tau| разрядов. Во втором генетическом алгоритме хромосома должна соответствовать сразу всему множеству индивидуальных масок H=\{h_0,h_1,\ldots,h_{|F|}\}, которую можно представить битовой последовательностью H(H) из m|\tau|(|F|+1) разрядов


H(H)=\eta(h_0)\eta(h_1)\ldots\eta(h_{|F|})
( 29.6)

где \eta(h_i) определены соотношением (29.1), F- множество рассматриваемых неисправностей.

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

Рассмотрим сначала первый способ решения задачи минимизации ДИ.

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

Введем в рассмотрение функцию \rho_6(i,h), возвращающую число технических состояний, неотличимых от состояния s_i при использовании ДИ, отфильтрованной с помощью маски h.

Теперь можем определить фитнес-функцию для генетического алгоритма поиска индивидуальной маски, соответствующей техническому состоянию s_i:

d_4(\eta(h))=C\cdot(\rho_6(i,h)-1)+V(h) ( 29.7)

Как видно из сравнения (29.3) и (29.7), функция d_4 отличается от функции d_1 только применением \rho_6(i,h) вместо \rho_2(h).

Для второго способа решения задачи минимизации построим ГА, аналогичный тому, что был построен для поиска единой маски. Обобщим этот алгоритм для использования набора масок H вместо одной единой маски h.

Сначала введем в рассмотрение, по аналогии с (29.2), величину

V(H)=\cfrac{1}{m|\tau|(|F|+1)}\sum\limits_{h\in H}{|h|}

Данная величина определяет долю объема ДИ, отфильтровываемой с помощью набора масок H из общего объема ДИ.

Обозначим \rho_2(H) значение ожидаемой глубины диагностирования при использовании ДИ, порожденной набором индивидуальных масок H.

В таком случае, по аналогии с (29.3), используя битовые последовательности H(H) вместо \eta(h), можно определить фитнес-функцию для решения с применением ПГА задачи минимизации:


d_5(H(H))=C\cdot(\rho_2(H)-1)+V(H) ( 29.8)

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


d_6(H(H))=C_1\cdot(\rho_2(H)-1)+C_2\cdot|V(H)-Z| ( 29.9)

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

d_7(H(H))= \rho_2(H) ( 29.10)

Из построения функций d_4, d_5, d_6 и d_7 ясно, что решением исследуемых задач будут те хромосомы, которые доставляют минимум этим функциям.

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

На втором этапе ПГА, связанном с подбором (селекцией) особей для скрещивания, были опробованы различные методы: турнирный отбор, отбор отсечением, пропорциональный отбор, а также отбор линейным и экспоненциальным ранжированием, описанные, например, в [9].

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

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

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

Наконец, в качестве условий окончания процесса работы сконструированных простых ГА использовался критерий достижения заданного предельного числа этапов эволюции (длины жизненного цикла популяции).

Материал, представленный выше, помимо упомянутых в этой лекции работах, базируется также на статье [10].

Ключевые термины:

Маска для диагностической информации - шаблон, накладываемый на строки полной диагностической информации, позволяющий отфильтровывать из реакций проверяемого ЦУ на тест только заранее определенные в ДИ позиции .

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

Краткие итоги:

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

Вопросы и упражнения

  1. Дайте определение маски для ДИ.
  2. Чем отличается единая маска для ДИ от индивидуальной?
  3. Пусть ДИ, заданная в виде СПР, представлена табл. 27.5.Используя маску h = \{1:1, 2:2, 3:1,3, 4:1,2\}, постройте СПР_h.
  4. Сформулируйте все модификации задач сокращения ДИ с помощью масок.
  5. Перечислите все этапы простого генетического алгоритма.
  6. Каково представление маски в виде хромосомы и что за величина принимается в качестве объема маски?
  7. Приведите формулу фитнес-функции для задачи минимизацииДИ и поясните ее содержательный смысл.
  8. Приведите формулу фитнес-функции для задачи оптимизации ДИ с использованием единой маски и поясните ее содержательный смысл.
  9. Приведите формулу фитнес-функции при поиске индивидуальной маски для для заданного технического состояния ЦУ.
  10. Приведите формулы фитнес-функций для задач минимизации и оптимизации ДИ, отфильтрованной с использованием набора масок H.
< Лекция 28 || Лекция 29: 12 || Лекция 30 >
Дмитрий Медведевских
Дмитрий Медведевских

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