Имя: Пароль:
IT
 
Кто первый пройдёт лабиринт?
🠗 (Волшебник 25.09.2014 11:57)
,
0 1Сергей
 
25.09.14
11:43
http://savepic.ru/5902036.png

тому респект и уважуха :)

Необходимо нарисовать путь от входа в лабиринт (слева посредине) до выхода (справа посредине). Или наоборот, не важно

ЗЫ
Нужен алгоритм прохождения лабиринта
1 Ёпрст
 
25.09.14
11:44
(0) а еще помельче нет картинки ?
А то очень всё крупное, в монитор не влазиет
2 1Сергей
 
25.09.14
11:44
(1) открой в паинте и увелич
3 Лодырь
 
25.09.14
11:45
(0) Открыть в любом графическом редакторе и сделать заливку.
4 Лодырь
 
25.09.14
11:46
Работы на 30 сек. Неинтересно.
5 1Сергей
 
25.09.14
11:46
(3) ага, умный? попробуй-попробуй
6 DmitriyDI
 
25.09.14
11:46
(1) ))))))))))))))) (3) очень хитро))))
7 1Сергей
 
25.09.14
11:48
Забегая вперёд, могу сказать, что можно пройти из любой точки в любую другую точку лабиринта, и только одним путём.
8 Лодырь
 
25.09.14
11:49
(5) Попробовал. http://screencast.com/t/YBjlfwRpq
Видишь. Обошел весь лабиринт и пришел к выходу.
9 13_Mult
 
25.09.14
11:52
(7) Не может такого быть
10 13_Mult
 
25.09.14
11:53
(9) Что получается что во всем лабиринте всего один путь, через весь лабиринт?
11 YurAnt
 
25.09.14
11:56
(0) теоретически, (в привязке к реальной ситуации) если изначальная точка не является оторванной от общей конструкции лабиринта - можно выйти из любого лабиринта прикоснувшись рукой к стене и не разрывая связь двигаться вперед.
Т.е. если реализовать технически данный алгоритм то робот выберется (возможно не за кратчайшее время - но то что выберется 100%)
12 1Сергей
 
25.09.14
11:56
(10) это получается, что нет закольцованных проходов
13 1Сергей
 
25.09.14
11:57
(11) об этом говорили в той ветке, да
14 Нуф-Нуф Третий
 
25.09.14
11:58
(12) что такое закольцованный переход?
15 Нуф-Нуф Третий
 
25.09.14
11:59
имхо правило левой руки выведет из любого лабиринта
16 YurAnt
 
25.09.14
11:59
(12) именно это и имел ввиду)
(13) извиняюсь, не глянул ссылку)
17 Aleksey
 
25.09.14
12:00
(15) нет не из любой. Пробовал я вольштейне досовском - неработает
18 1Сергей
 
25.09.14
12:02
(15) если ты начинаешь с краю. Но, если ты начинаешь где-то внутри лабиринта, и там могут быть закольцованности, то фиг
19 Нуф-Нуф Третий
 
25.09.14
12:03
(18) приведи пример закольцованности? не понимаю термин
20 Aleksey
 
25.09.14
12:03
Если у лабиринта нет отдельно стоящих стенок, то есть нет замкнутых маршрутов, по которым можно возвращаться в исходную точку, то такой лабиринт называют односвязным и его всегда можно обойти полностью, применив правило одной руки

Если же лабиринт содержит отдельно стоящие стенки, то, применяя правило одной, не всегда можно пройти все коридоры и тупики. Лабиринты с отдельно стоящими стенками и с замкнутыми маршрутами называются многосвязными.

Многосвязные лабиринты можно разделить на две группы: без петли вокруг цели (замкнутый маршрут не проходит вокруг цели) и с замкнутой петлей вокруг цели (цель можно обойти по замкнутому маршруту).
(с) http://faqlife.ru/advice/383
21 Aleksey
 
25.09.14
12:04
(19) Выход в середине, но внешние стенки не соприкасаются с внутренними, т.е. грубо говоря ты пройдешь лабиринт по кругу, но внутрь не попадёшь
22 1Сергей
 
25.09.14
12:04
вот сгенерил вариант попроще и увеличил.
http://savepic.ru/5941992.png
23 Aleksey
 
25.09.14
12:05
или наоборот ты в центре, ходишь по кругу, но на внешний периметр, согласно твоему правилу, ты не попадаешь
24 1Сергей
 
25.09.14
12:06
25 Нуф-Нуф Третий
 
25.09.14
12:09
(24) т.е. грубо говоря в нутри лабиринта есть какая-то замкнутая стена и оказавшись возле нее - ты будешь ходить вдоль нее кругами?
26 Ёпрст
 
25.09.14
12:09
(24) он же тупиковый, что тот, что этот..
27 Ёпрст
 
25.09.14
12:10
блин, мне лень алгоритм писать.
28 13_Mult
 
25.09.14
12:11
29 1Сергей
 
25.09.14
12:11
(26) это просто пример закольцованности. в (0) нет их
30 Aleksey
 
25.09.14
12:11
31 Aleksey
 
25.09.14
12:12
32 Aleksey
 
25.09.14
12:14
ну или более сложный вариант
http://www.myrobot.ru/articles/images/logo/micromouse_maze.gif
33 Нуф-Нуф Третий
 
25.09.14
12:16
понял
34 Нуф-Нуф Третий
 
25.09.14
12:17
тогда достаточно логировать пройденные точки. и если робот видит перед собой точку, где уже был - то вносится корректировка в алкоритм (нужно его развернуть) - и дальше снова по этому же правилу, как он и двигался
35 Ёпрст
 
25.09.14
12:20
Ну, волновым алгоритмом всё находится, можно даже на 1с-ине переписать.. и показывать, в мокселе, к примеру, преобразовав картинку в моксель попиксельно.
36 Domovoi
 
25.09.14
12:36
37 Domovoi
 
25.09.14
12:39
(0)А можно в лабиринте из 0 проходы пошире сделать?
38 1Сергей
 
25.09.14
12:39
39 1Сергей
 
25.09.14
12:40
(37) в смысле?

(36) не то скопировал
40 Domovoi
 
25.09.14
12:42
41 1Сергей
 
25.09.14
12:42
42 Domovoi
 
25.09.14
12:42
(39)Нут ам проходы шириной в пиксель, нужно очень аккуратно карандашом водить, можно чтоб проходы были шириной в несколько пикселей как в 22?
43 1Сергей
 
25.09.14
12:43
(42) аа... это доработать надо
44 1Сергей
 
25.09.14
12:44
(40) респект и уважуха!
45 1Сергей
 
25.09.14
12:55
переделал немного алгоритм. проходы стали чётче
http://savepic.ru/5898991.png
46 Нуф-Нуф Третий
 
25.09.14
14:34
а есть такой лабиринт в формате
010101
001010

?
47 Нуф-Нуф Третий
 
25.09.14
14:35
не знаю как картинку распарсить, чтобы в коде обрабатывать
48 1Сергей
 
25.09.14
14:55
(47) ты в одинеске что-ли делаешь? :)
49 Нуф-Нуф Третий
 
25.09.14
15:22
(48) ну да))) больше ни в чем не умею)
50 Domovoi
 
25.09.14
15:59
(48)Даешь текстовый файл, где стенки отмечены символом?! :)
51 Domovoi
 
25.09.14
16:00
+(50)Только тогда стенки и проходы желательно размером в 1 символ.
52 Domovoi
 
26.09.14
02:01
(45)нет выхода из лабиринта - не честно
53 Domovoi
 
26.09.14
02:22
54 Torquader
 
26.09.14
20:46
(31) А в чём проблема - заходишь в лабиринт и выходишь через вход как в том анекдоте про Штирлица.
55 13_Mult
 
08.10.14
08:06
Вот я тоже заморочился этой штуковиной (убил на это день).
Бот проходит примерно за 3 сек.
http://saveimg.ru/show-image.php?id=5f40af8b19733fa7382abca215f4f775
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.