Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Топ:
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Интересное:
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Дисциплины:
2017-09-30 | 674 |
5.00
из
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
При решении логических или оптимизационных задач пространство поиска часто представляется в виде графа – упорядоченной пары непустых множеств вершин (узлов) и ребер (дуг). Одной из разновидностей графа является дерево – связный ациклический граф. Связность означает наличие путей между любой парой вершин, ацикличность – отсутствие циклов.
Ниже рассматриваются некоторые популярные методы поиска решений с использованием графов. Процедура поиска этих методов заключается в обходе дерева и исследовании его узлов (проверке частичных или полных решений) на предмет удовлетворения условиям задачи и/или оптимальности.
1. Метод перебора с возвратами (решение логических задач)
Наиболее известным и часто используемым, в том числе и на бытовом уровне, способом решения задач является метод перебора с возвратами, называемый также методом проб и ошибок. При научном подходе использование метода позволяет найти точное решение задачи.
Рис. 27. Обход дерева при поиске решения: – направление поиска для узлов, решение в которых удовлетворяет условиям; – направление поиска для узлов, решение в которых не удовлетворяет условиям; – маршрут обхода узлов;
Все пространство поиска можно представить в виде дерева, узлами которого являются частичные или итоговые решения задачи (необязательно верные). По мере поиска решения, удовлетворяющего условиям (требованиям, ограничениям), постепенно строится это дерево (выполняется обход узлов). Если в листьях (узлах последнего уровня) решение удовлетворяет требуемым условиям, то оно и есть результат поиска. В общем случае решений может быть несколько (см. рис. 27 узлы 4 и 5). Если при обходе дерева попадается узел, решение в котором не удовлетворяет (противоречит) условиям задачи, тогда выполняется возврат к предыдущему узлу верхнего уровня и продолжается поиск в альтернативном направлении. В частном случае обход дерева может быть прерван при нахождении первого верного решения.
Такой способ поиска решения при обходе дерева сверху вниз слева направо называется поиском в глубину. Он используется в языке программирования Пролог при автоматическом поиске ответа на вопрос.
Ограничением использования метода является монотонность выводов. То есть если в каком-либо узле проверяемое условие ложно, то в узле следующего уровня оно не может стать истинным и наоборот. Очевидно, что при большом количестве проверяемых условий и направлений поиска данный метод малоэффективен.
|
2. Метод частичного перебора (точный метод решения оптимизационных задач) [3].
При решении оптимизационных задач широко используются методы математического программирования. Одним из них является метод частичного (неявного) перебора, называемый также методом ветвей и границ. При обходе дерева (рис. 28) в узлах помимо проверки допустимости (соответствия ограничениям) считается и проверяется значение выбранного критерия (целевой функции). Если значение этого критерия (при минимизации целевой функции) в текущем узле больше, чем значение, полученное в ранее пройденном и удовлетворяющем всем условиям узле, то дальнейший поиск из текущего узла не ведется (так как значение критерия в узлах ветвей, исходящих из него, не будет лучше).
Рис. 28. Обход дерева при поиске решения методом частичного перебора (Кп – значение критерия в промежуточном узле; Ки – значение критерия в узле, соответствующем полному набору ограничений)
Оптимальным решением в рассмотренном примере является решение в узле 5. Поиск решения из узла 7 не выполнялся, так как решения в узлах 8 и 9 дадут заведомо худший результат по сравнению с решением в узле 5.
Ограничением использования этого метода является как монотонность выводов, так и монотонность критерия (целевой функции). То есть значение критерия в узле, из которого ведется поиск, не может быть больше значения критерия в нижележащих узлах. В случаях, когда надо максимизировать целевую функцию, считают величину, обратную критерию 1/К.
3. Алгоритм А* (эвристический метод решения оптимизационных задач) [1].
Эвристический алгоритм (метод) – алгоритм, не гарантирующий нахождения точного или оптимального решения поставленной задачи, но дающий достаточно хороший результат в большинстве случаев.
|
Эвристические алгоритмы используются в тех случаях, когда точные методы не позволяют найти решение задачи за приемлемое время. Одним из таких методов является алгоритм А*.
В нем для всех узлов, удовлетворяющих ограничениям и в которые можно попасть из корневого узла, вычисляется значение критерия. Дальнейший процесс поиска выполняется только из узла, в котором значение критерия максимально (минимально), остальные ветви поиска не рассматриваются (рис. 29).
Рис. 29. Поиск решения с помощью алгоритма А*
Недостатком данного алгоритма является возможный пропуск оптимального решения (см. рис. 29 узел 10), но найденное итоговое решение очень часто является оптимальным или, по крайней мере, достаточно хорошим (эффективным).
В табл. 8 приведена сравнительная характеристика рассмотренных выше методов решения оптимизационных задач.
Таблица 8
|
|
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!