Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МодСистЛЕКЦ / Рекурствные функции.doc
Скачиваний:
17
Добавлен:
17.04.2015
Размер:
129.54 Кб
Скачать

Классификация экспериментов

При классификации экспериментов часто применяют следующие признаки:

  • структура эксперимента;

  • стадия научных исследований, на которой проводят эксперимент;

  • постановка задачи;

  • способ проведения эксперимента.

Данный набор признаков не является единственным.

На первом уровне классификации рассматривают качественные и количественные эксперименты. Целью качественного эксперимента является установление факта существования явления. Количественный - предназначен для установления количественных значений параметров объекта и связей между ними.

На следующем уровне эксперименты подразделяют по их структуре: натурные, модельные и модельно-кибернетические. В модельных экспериментах объектом исследования служат не сами объекты, а их модели. Когда говорят о модельно-кибернетическом эксперименте, то имеют в виду, что объект изучается с помощью нго модели на ЭВМ.

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

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

На этом уровне целесообразно выделить следующие классы.

  1. Эксперименты по нахождению модели объекта исследования при наличии неоднородностей разного вида.

  2. Эксперименты по нахождению модели объекта исследования при взаимосвязанных входных параметрах.

  3. Эксперименты по нахождению модели объекта исследования при наличии у него свойства сохранять последействие.

  4. Эксперименты по нахождению модели объекта исследования при выяснении механизма явлений.

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

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

  7. Эксперименты по нахождению модели объекта исследования, описывающей степень влияния входных параметров на выходные.

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

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

К последнему уровню классификации относят пассивные и активные эксперименты. Данные классы определяют уровень автоматизации осуществления эксперимента.

Эволюционное моделирование

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

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

Эволюционное моделирование определяют как воспроизведение процесса естественной эволюции с помощью специальных компьютерных программ.

В эволюционном моделировании выделяют следующие направления:

  • генетические алгоритмы;

  • классифицирующие системы;

  • генетическое программирование;

  • эволюционное программирование;

  • эволюционные стратегии.

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

  • поиск осуществляется одновременно из нескольких точек, а не из одной точки пространства допустимых решений как в традиционных алгоритмах;

  • при поиске оптимального решения используются значения целевой функции, а не ее приращения;

  • вместо самих параметров системы используются их коды;

  • выполняется одновременный анализ разных подмножеств пространства решений.

В эволюционном моделировании пользуются терминами, принятыми, в генетике. Так, решение называют хромосомой, а набор решений – популяцией, оператор модификации решения – мутацией, оператор рекомбинации рекомбинацией, кроссинговером.

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

  1. Формируется исходный набор допустимых решений (популяция). При этом начальной точке отсчета поколений приписывается значение нуль: t 0 = 0.

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

  3. Время жизни популяции увеличивается на шаг: t = t0 +1. Из исходной популяции выбираются две хромосомы для кроссинговера. Отбор осуществляется случайным образом с учетом жизнеспособности хромосом.

  4. Формируется генотип потомка. Формирование производится путем операции кроссинговера над выбранными хромосомами.

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

  6. В текущей популяции выбирают случайным образом хромосому и заменяют ее на полученный потомком.

  7. Определяют приспособленность нового потомка и среднюю приспособленность полученной популяции.

  8. Проверяется условие окончания поиска решения. Таким условием может быть заданное число шагов или достижение оптимального значения целевой функции. Если условие выполнено, то поиск искомого решения прекращается.

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

Приведем пример практического применения изложенного алгоритма.

В качестве целевой функции примем функцию f(x) = x 2 .

Требуется найти значение аргумента, при котором целевая функция достигает своего максимального значения. Область изменения переменной х ограничим натуральным рядом на отрезке [1,31].

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

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

Представим в виде таблицы характеристики популяции.

Номер хромо-сомы

Код хромо-сомы

Значение перемен-ной х

Значение целевой функции

Нормированное значение fi(x)/sum f(x).

Ожидаемое количество копий хромосом в новом поколении

Реальное количество копий хромосом в новом поколении

1

01101

13

169

0.14

0.56

1

2

11000

24

576

0.49

1.96

2

3

01000

8

64

0.06

0.24

0

4

10011

19

361

0.31

1.24

1

Сумма знач целевой функции 1170 1.00 4.00 1

Среднее знач целевой функции 293 0.25 1.00 1

Максимальное значение

целевой функции 576 0.49 1.97 2

Сформируем новую популяцию. С этой целью выполним операции репродукции и кроссинговера

Определим ожидаемое количество копий i-ой хромосомы после операции репродукции по формуле N = nPi (n – общее число хромосом).

Вероятность попадания i-ой хромосомы в новую популяцию вычисляется по формуле

P i = fi(x)/sum f(x).

Здесь fi(x) – значение целевой функции i-ой хромосомы в популяции;

sum f(x) – суммарное значение целевой функции всех хромосом в популяции;

Число копий хромосом, переходящих в новое поколение, равно

Q = fi(x)/f ср (x),

где fср(x) – среднее значение целевой функции.

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

Номер хромосомы

Популяция после репродукции

Выбранные пары хромосом

Точка кроссинговера

Популяция после кроссинговера

Значение переменной х

Значение целевой функции

1

01101

1-2

4

01100

12

144

2

11000

1-2

4

11001

25

625

3

11000

3-4

2

11011

27

729

4

10011

3-4

2

10000

16

256

Суммарное значение целевой функции – 1754

Среднее значение целевой функции – 439

Максимальное значение целевой функции – 729

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

Анализ полученных результаов показывает, что новая популяция значительно лучше предыдущей. Чтобы еще более приблизиться к оптимальному значению целевой функции, имеет смысл выполнить оператор мутации. Оператор мутации выполним в два этапа. Сначала выберем хромосому, доставляющую наибольшее значение целевой функции и определим случайным образом в ней гены для перестановки. В нашем случае это будет третья хромосома: - 11011. Применим операцию мутации к 3-ей и 4-ой позициям. Получим новую хромосому - 11101. Снова выполним оператор мутации. На этот раз поменяем местами 4-ый и 5-ый ген.

Найдем значение целевой функции для данной хромосомы. Оно равно 900. Итак, мы получили вполне удовлетворительное решение.

Как показывает практика применения ГА, при длине хромосомы порядка 200 появляются трудности в осуществлении операции мутации, поскольку становится затруднительным перебор возможных вариантов перестановок генов.