Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Алгоритм выхода из лабиринта.

307
14 января 2010 года
Artem_3A
863 / / 11.04.2008
Доброго времени суток.
Есть следующая задача, требуется найти выход из лабиринта. Структура лабиринта и его размер не известны. В данной ситуации могут быть применимы алгоритмы Тремо и Правой(Левой) руки. Алгоритм Правой(Левой) руки не устраивает, так как не всегда гарантирует выход из лабиринта, мои старания для его модификации не обеспечили 100% гарантии выхода. Алгоритм Тремо не очень нравиться, так как не известен размер лабиринта.
Есть ли еще алгоритмы обеспечивающие 100% выход из лабиринта, при условии, что его структура не известна?(разумеется в случае, если выход существует) так же буду благодарен за ссылки на литературу, статьи, исходники и прочую информацию.
5
14 января 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Artem_3A
Есть ли еще алгоритмы обеспечивающие 100% выход из лабиринта, при условии, что его структура не известна?


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

397
14 января 2010 года
SergPas
527 / / 03.02.2007
Цитата: Artem_3A

Есть ли еще алгоритмы обеспечивающие 100% выход из лабиринта, при условии, что его структура не известна?(разумеется в случае, если выход существует) так же буду благодарен за ссылки на литературу, статьи, исходники и прочую информацию.


Есть, например, рекурсивный обход и алгоритм волновой трассировки. Оба алгоритма описаны в книге Мозговой М. Занимательное программирование.
Я давным давно кодил. Вот исходники: labyrinth.zip
P.S. Да простит меня уважаемый kot_ за то, что слил исходники на фолдер тчк ру.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог