Комментарии 23
Обычно достаточно при постройке новых дорожек посмотреть где люди натоптали тропинку.
+6
>>… условных параметров “торопливость” и “стойкость”, которые для каждого человека, разумеется, разные.
Эти параметры, кстати, меняются у одного человека, в зависимости от разных обстоятельств.
Например, когда я был студентом, для меня было «комфортным» перепрыгнуть через турникет. А сейчас всегда плачу.
Да и такие мелкие детали как одетая обувь могут влиять — в туфлях человек может пройти по тратуару, а в гриндерах срежет уголок.
Эти параметры, кстати, меняются у одного человека, в зависимости от разных обстоятельств.
Например, когда я был студентом, для меня было «комфортным» перепрыгнуть через турникет. А сейчас всегда плачу.
Да и такие мелкие детали как одетая обувь могут влиять — в туфлях человек может пройти по тратуару, а в гриндерах срежет уголок.
+1
В городах БАМа в некоторых сначала кали основные тротуары, а потом асфальтировали протоптанные дорожки
+1
Это вариант. Однако часто некомфортный для людей. Попробуйте пройти просто так по пустырю где-нибудь в районе новостроек, там лужи и ямы такие, что лучше пожалеть прохожих и все спроектировать заранее.
0
Для меня было бы НЕкомфортным пройти между двумя собаками — на время попадаешь в тиски.
+4
Для людей с низкой толерантностью (которым не подходит условно зеленая зона) этот вариант моделируется — можно обойти обоих собак по большой дуге не заходя в центр.
0
Там рисунок немного сбивает с толку. Собаки такие огромные, что кажется, вмиг догонят и разорвут. Учитывая их размер, я бы шел по дуге вне квадрата :-) Но если принять, что «зелененькое» это комфортная зона независимо от размера собак, то все ок.
0
Глупый вопрос возник.
А нельзя ли это все описать, используя банальную оптику?
Где разные уровни комфортности определяют коэффициент преломления, а уровень торопливости — длину волны.
По крайней мере, при взгляде на рисунок с пересечением дороги эта ассоциация возникает самым очевидным образом.
А нельзя ли это все описать, используя банальную оптику?
Где разные уровни комфортности определяют коэффициент преломления, а уровень торопливости — длину волны.
По крайней мере, при взгляде на рисунок с пересечением дороги эта ассоциация возникает самым очевидным образом.
+1
Даже более глобально — используя принцип наименьшего действия.
Из него же и оптика вся выводится в теор. физике.
Там и математика внятная, и никаких спекуляций с «длиной волны пешехода» не понадобится. Лагранжиан ввести, и дальше оставить комп решать задачу по любым граничным условиям — геометрия тропинок, препятствия, количество проходимцев мимо дорожек в месяц…
(А то сейчас нифига не понятно, как строить эту функцию комфорта. К примеру, почему на рисунке 6 фронты функции круглые, хотя газон квадратный.)
Из него же и оптика вся выводится в теор. физике.
Там и математика внятная, и никаких спекуляций с «длиной волны пешехода» не понадобится. Лагранжиан ввести, и дальше оставить комп решать задачу по любым граничным условиям — геометрия тропинок, препятствия, количество проходимцев мимо дорожек в месяц…
(А то сейчас нифига не понятно, как строить эту функцию комфорта. К примеру, почему на рисунке 6 фронты функции круглые, хотя газон квадратный.)
0
С дорогой не совсем, как мне кажется, верный пример — там надо чуть изменить модель. Обычно человек подходит к дороге, начинает пересекать ей под прямым углом, стремясь поскорее её перейти и оказать в комфортной зоне, но по мере приближения к противоположному краю начинает забирать в нужную сторону, так как по мере приближения к краю дороги торопливость начинает влиять на траекторию всё больше, чем меньше осталось пройти по некомфортной области. То есть, на мой взгляд, имеет место факт влияния вектора направления движения.
+2
ИМХО, задача распадается на две.
1) Моделирование поведения пешехода. Это, по-моему, задача поиска пути на взвешенном графе.
Граф — прямоугольная решётка, задающая местность, вес — «комфортность» (собака и центр автобана — минимум, ровный асфальт — максимум). Связи — как минимум с 8 соседними узлами. Если сделать шаг решётки 10-20см, это будет неплохо моделировать пешехода на улицах.
Задача решается довольно просто волновым алгоритмом (поэтому решение и похоже на оптику и принцип наименьшего действия, это цифровой вариант наименьшего действия).
Чтобы определить все необходимые дорожки, нужно запускать такой алгоритм для всех возможных маршрутов (например, автостоянка — дом, дом — сосед, сосед — автостоянка, дом — магазин и т.д.) сначала без готовых дорожек — моделируем пешеходов на газоне.
Нужно не забыть про особые случае — велосипедисты, старики с палочками, инвалиды на калясках, матери с детьми в колясках, женщины на высоких каблуках, школьники (перепрыгнуть через небольшой заборчик) и т.д.
2) Определение что и как асфальтировать.
Для этого запускаем «эволюцию» системы — каждый маршрут модифицирует граф — пешеход вытаптывает тропинку на газоне и т.п. Маршруты начнут объединяться, склеиваться и т.д. (люди скорее пойдут по вытоптанной тропинке, чем в метре от неё по свежей траве).
Когда картина устаканится, можно начать моделировать асфальтирование тропинок — менять веса графа на асфальт (совсем комфортные) по выбранным маршрутам и проверять, не меняют ли люди маршруты. Если удалось добиться замены всех вытоптанных тропинок на асфальтированные — задача решена. Потом ещё можно проверить, не стали ли какие-то фрагменты асфальта бесполезными.
1) Моделирование поведения пешехода. Это, по-моему, задача поиска пути на взвешенном графе.
Граф — прямоугольная решётка, задающая местность, вес — «комфортность» (собака и центр автобана — минимум, ровный асфальт — максимум). Связи — как минимум с 8 соседними узлами. Если сделать шаг решётки 10-20см, это будет неплохо моделировать пешехода на улицах.
Задача решается довольно просто волновым алгоритмом (поэтому решение и похоже на оптику и принцип наименьшего действия, это цифровой вариант наименьшего действия).
Чтобы определить все необходимые дорожки, нужно запускать такой алгоритм для всех возможных маршрутов (например, автостоянка — дом, дом — сосед, сосед — автостоянка, дом — магазин и т.д.) сначала без готовых дорожек — моделируем пешеходов на газоне.
Нужно не забыть про особые случае — велосипедисты, старики с палочками, инвалиды на калясках, матери с детьми в колясках, женщины на высоких каблуках, школьники (перепрыгнуть через небольшой заборчик) и т.д.
2) Определение что и как асфальтировать.
Для этого запускаем «эволюцию» системы — каждый маршрут модифицирует граф — пешеход вытаптывает тропинку на газоне и т.п. Маршруты начнут объединяться, склеиваться и т.д. (люди скорее пойдут по вытоптанной тропинке, чем в метре от неё по свежей траве).
Когда картина устаканится, можно начать моделировать асфальтирование тропинок — менять веса графа на асфальт (совсем комфортные) по выбранным маршрутам и проверять, не меняют ли люди маршруты. Если удалось добиться замены всех вытоптанных тропинок на асфальтированные — задача решена. Потом ещё можно проверить, не стали ли какие-то фрагменты асфальта бесполезными.
0
Ссылка на статью habr.com/ru/post/257563 должна быть здесь. Там программируют поиск дорожек
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как не вытоптать дорожки в парке