tilorn Опубликовано 1 декабря, 2009 Поделиться Опубликовано 1 декабря, 2009 Зачем мне ехать 130км' date=' чтобы сэкономить 35 мин времени???????????[/quote'] Если у Вас вдруг есть запасная жизнь - экономьте бензин. Я же предпочту эти лишние 35 минут провести с девушкой, родными, близкими или просто чтением книги, или еще сделаю кучу важных и не очень дел. Еще раз повторюсь - время конечно. и очень быстро конечно. Ссылка на сообщение Поделиться на другие сайты
dimdim Опубликовано 1 декабря, 2009 Поделиться Опубликовано 1 декабря, 2009 Вот видите, tilorn, даже в этом топике видно, что предпочтения у людей разные. Более того, они еще и меняться могут от поездки к поездке. Именно поэтому оптимальным вариантом была бы возможность выбора. Ссылка на сообщение Поделиться на другие сайты
artemacis Опубликовано 6 декабря, 2009 Поделиться Опубликовано 6 декабря, 2009 Сделайте пожалуйста еще один вариант расчета маршрута - "Экономичный". Поясню на примере что я хочу: При проезде через город - время 60 минут' date=' расстояние 40 км, при проезде через КАД - время 59 минут, расстояние 90 км. Есстественно с учетом пробок СГ пошлет по второму маршруту. Но я готов потратить на 1 минуту больше времени, но сэкономить 50 км. Мои предложения по реализации: использовать при расчете "экономичного" маршрута формулу по усредненному расходу бензина в зависимости от скорости, времини и расстояния. Либо позволить пользователю вводить разницу во времени между разными вариантами маршрута - т.е. если разница менее 10 минут - СГ посылает по более короткому маршруту, если более - СГ посылает по более быстрому.[/quote'] ну скажем я выбираю КАД. Там я еду, а не стою и нажимаю тормоз всего 5 раз (5 светофоров), а не 27 раз, как если бы ехал через город. и, как не странно - расход у меня при этом получается меньше, чем если ехать по городу. вот. а, ещё колодки тормозные не изнашиваются так быстро ) Ссылка на сообщение Поделиться на другие сайты
iprokator Опубликовано 18 января, 2011 Поделиться Опубликовано 18 января, 2011 Есть простое решение, которое устроит каждого: Построение маршрутов в системе в той, или иной мере сводится к нахождению кротчайшего пути на взвешенном направленном графе. Не будем вдаваться в детали построения этого графа, но если говорить про видимую часть, то все сводится к следующей задаче. Для графа заданны две величины - это скорость движения (реальная или статистическая) и длинна этого ребра. Вес равен времени, т.е. длине поделенной на скорость. Дальше ищется минимум (или аппроксимация с нужной достоверностью). Т.е. m = S / t Введем параметр A, который позволит нам строить среднее между кратчайшим и оптимальным. m = A * S + (1 - A) * (S / t) В итоге при A в [0,1] мы получаем переход от чисто оптимального маршрута к чисто кратчайшему. Скорее всего придется делать не линейный ползунок, но в остальном решение дается по этой формуле. (тут даже все остальные довески разве что придется масштабировать введя для первого члена целевой функции параметр G): m = G * A * S + (1 - A) * (S / t) - и всё, что делалось для времени будет работать и на расстояние. PS: В связи с тем, что мой основной логин мне сейчас стал недоступен, то приходится дискутировать тут (если что - я prokator, который Прокатор Илья Сергеевич). Верните меня назад по e-mail, который для рассылки бета версий =( Ссылка на сообщение Поделиться на другие сайты
iprokator Опубликовано 19 января, 2011 Поделиться Опубликовано 19 января, 2011 Извините за скорость обозначенную буквой t =) Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения