Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИИС - Лекции.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.6 Mб
Скачать

2.3.2. Методы поиска решений в пространстве состояний

Общие сведения о методах поиска решений в пространстве состояний

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

Можно выделить три основных типа методов по­иска оптимальных решений:

  • методы, основанные на математических вычислениях,

  • перечислительные методы,

  • методы, использующие элемент случайности.

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

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

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

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

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

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

Реализация поиска решений на основе смены состояний

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

Поиск конечного состояния выполняется автоматически на основе реализованной в ИИС стратегии поиска, которая:

  • реализует возможность выбора;

  • позволяет выполнять шаги от начального состояния к новым состояниям, более или менее близким к цели.

Рис. 2.5. Поиск в ИИС

Таким образом, реализованные в ИИС стратегии поиска отыскивают цель, «шагая» от одного состояния системы к другому. При этом они обеспечивают распознавание ситуации, когда они находят цель или попадают в тупик.

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

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

Система, построенная на основе знаний об этой карте дорог, должна поработать с картой и спланировать наше путешествие, например из города «А» в город «F».

При решении представленной задачи компьютер преобразует исходную карту и представит ее в виде дерева поиска, которое без учета циклов будет иметь вид рис. 2.7.

Рис. 2.6. Карта дорог

Дерево поиска показывает все возможные варианты выбора при движении из «А» (начальное состояние), а также и все варианты выбора в каждом из промежуточных пунктов (состояний). Место, откуда начинается поиск, находится в вершине дерева поиска. Все дороги, начинаясь в «А», либо приводят в тупик, либо заканчиваются в «F».

Рис. 2.7. Дерево поиска

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

Рассмотрим пример, который заставит нас думать как компьютер. Мы находимся в темной комнате, на стене которой дерево поиска, а у нас фонарик, который освещает всего два соседних пункта. Нам известно, где расположена вершина дерева, откуда надо начать поиск. Как наиболее эффективно перемещать луч фонарика, чтобы найти маршрут до «F»? При отсутствии какой-либо дополнительной информации компьютер для поиска использует стратегию «грубой силы». При этом программа поиска осуществляет поиск цели, идя от состояния к состоянию, и систематически исследуя все возможные пути.

Для определения каждого последующего шага применяется некая простая механическая стратегия, которая имеет две разновидности: поиск в глубину и поиск в ширину.