Jump to content
GPS навигатор СитиГИД
Sign in to follow this  
niber

И снова про статистику

Recommended Posts

Как программист по образованию, с опытом работы и имеющий свою компанию, работающую в области IT и имеющую не мало собственных разработок и собственный отдел программирования
Ну, признаю, у меня короче Wink

Share this post


Link to post
Share on other sites

На самом деле, требуется решить всего одну проблему - снизить количество ложных уводов в сторону дуг, не имеющих актуального покрытия. Для решения этой задачи не нужно таких сложностей. Требуется всего-то лишь ввести интегральную оценку загруженности города, передать ее клиенту, а там, при расчете маршрута, применить ее к скоростным индексам непокрытых дуг. То есть, если средняя скорость города упала в два раза, то нет оснований предполагать, что падение скорости на непокрытых улицах меньше. И если на шоссе движение со скоростью 20, а по параллельной улице теперь, при скоростном индексе 30 и интегральном коэффициенте 0.5 - 15, следовательно туда смысла уводить нет. То есть, это реализация большего притягивания к разведанным маршрутам. Зато если там кто-то проедет вдруг 40, то смысл резко появляется. Да, неточно, но пробка вообще событие вероятностное. Зато переделки на полчаса и результат на 70% достигнут.

А когда все дуги покрыты пробкоинформацией, CG работает великолепно, убеждался в этом неоднократно в час пик, в снегопад и т.д. Лично меня больше всего сейчас напрягают именно уводы в неизвестность.

Share this post


Link to post
Share on other sites

Индекс Шпрота не канает. Даже когда вечером весь город стоит, почти все дороги в центр летят. Причем достаточно часто они не "прорисованы" зеленым. При таком "индексном" замедлении всех непокрытых улиц, получится что программа будет вести неоптимальными маршрутами.

Share this post


Link to post
Share on other sites

Плевать. Кому надо против пробок - и так проедет, да и уводить его особо некуда будет, если все индексы снижены пропорционально.Все равно Каширка будет выглядеть привлекательнее ул. Москворечье.

Share this post


Link to post
Share on other sites

Плевать. Кому надо против пробок - и так проедет' date=' да и уводить его особо некуда будет, если все индексы снижены пропорционально.Все равно Каширка будет выглядеть привлекательнее ул. Москворечье.
[/quote']

Если на параллельной улице будут хрюшки 80, а на прямом пути - пусто, еще как будет уводить.

И если забить на то, что в таком случае маршруты будут прокладываться неверно, то в чем тогда выигрыш? Мы и сейчас ездим как сами знаем, а не как навигатор скажет. Если мы так и продолжим ездить, то ради чего весь сыр-бор?

Share this post


Link to post
Share on other sites

Если на параллельной улице будут хрюшки 80, а на прямом пути - пусто, еще как будет уводить.

И если забить на то, что в таком случае маршруты будут прокладываться неверно, то в чем тогда выигрыш? Мы и сейчас ездим как сами знаем, а не как навигатор скажет. Если мы так и продолжим ездить, то ради чего весь сыр-бор?

Если на параллельной улице будет 80 - это прекрасно. С удовольствием туда поеду. Задача не в том, чтобы провести кратчайшим маршрутом, задача в том, чтобы маршрут был проложен _надежно_, с минимальными _незапланированными_ потерями времени.

Тем более, если шоссе просматривается далеко вперед и видно, что пробок на нем нет, то маловероятно, чтобы кто-то с него съехал. И это не ошибка навигации - это максимальное использование известных данных. Поймите, задача не стоит проложить 100% оптимальный маршрут - такого не бывает и статистика тоже не даст 100% результата, как бы разработчики не извращались. Нужен просто надежный маршрут, без подлянок в виде неизвестной пробки.

Share this post


Link to post
Share on other sites

Например?

 

Можно использовать среднеквадратичную аппроксимацию. Аргумент - время, значение - индекс. И если заметить, что в принципе пробки развиваются синусоидально(2 пика - утром и вечером), то на весь день хватит степеней 4-5 полинома, чтобы описать развитие индекса вполне детально. В то же время не будет такого жёсткого перехода от одного времени к другому. Вычисление индекса будет занимать мизерное время. Особенно, если хранить степени времени в какой-нибудь таблице. А уж 5 раз умножить - это не вопрос же.

 

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

Share this post


Link to post
Share on other sites

 
А объясните мне' date=' пжлста, чем среда по скоростным индексам сильно будет отличаться от четверга? или от вторника? А зимой так и от пятницы не будет отличаться. Вот в понедельник - да...утром грузовиков поменьше зимой, а дачников побольше летом, но на индексы это катастрофически не виляет. Вообщем, не вижу смысла для будней хранить разные индексы. Сильной разницы нет.
[/quote']

Среда может отличаться от четверга снегопадом, пятница может оказаться нерабочим днем, во вторник неожиданно приедет Обама со своей свитой, а в субботу перекроют МКАД из-за велогонки. И пробочная картина во всех этих случаях может кардинально отличаться от понедельника, когда ничего особенного не произошло.

То есть, тупо модифицировать индексы по заранее известной функции - это совсем глупо.

Share this post


Link to post
Share on other sites

[

... 

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

В будни пробки на мостах, а в выходные около торговых центров.

Это грубый пример, но как-то так. Разница между выходными и буднями разительна. В выходные до 11-12 город вообще пустой.

Share this post


Link to post
Share on other sites

Если на параллельной улице будет 80 - это прекрасно. С удовольствием туда поеду. Задача не в том' date=' чтобы провести кратчайшим маршрутом, задача в том, чтобы маршрут был проложен _надежно_, с минимальными _незапланированными_ потерями времени.[/quote']

Ну представьте себе что мы едем от м. Митино до м. Белорусская. При этом на Звенигородке прорисованы хрюшки 80, а на Волоколамке-Ленинградке - нет. При этом обе дороги свободны. Зачем объезжать несуществующую пробку только потому что весь город в противоположном направлении стоит?


Вот именно. И индекс шпрота заставит нас объезжать несуществующие пробки не помогая объезжать существующие неотмеченные пробки (не всегда, конечно, но все же).

Share this post


Link to post
Share on other sites

Можно использовать среднеквадратичную аппроксимацию. Аргумент - время' date=' значение - индекс. И если заметить, что в принципе пробки развиваются синусоидально(2 пика - утром и вечером), то на весь день хватит степеней 4-5 полинома, чтобы описать развитие индекса вполне детально. В то же время не будет такого жёсткого перехода от одного времени к другому. Вычисление индекса будет занимать мизерное время. Особенно, если хранить степени времени в какой-нибудь таблице. А уж 5 раз умножить - это не вопрос же.[/quote']

Осталось "только" подобрать коэффициенты для домножения, и ГЛАВНОЕ - все-таки разделить направления потоков по ребрам. За одно дополнительные вычисления повысят системные требования программы. На одном ребре нужна одна функция, а на другом - совсем другая.

 

К чему этот вопрос?

Пробочная картина ОЧЕНЬ сильно отличается в будни и в выходные. На мой взгляд необходимо различать 6 типов дней:

первый будний день (читай понедельник)

средний будний день (читай вторник-четверг)

последний будний день (читай пятница)

первый выходной день (читай суббота)

последний выходной день (читай воскресенье)

средний выходной день (в праздники бывает)

 

 

Share this post


Link to post
Share on other sites

Вот именно. И индекс шпрота заставит нас объезжать несуществующие пробки не помогая объезжать существующие неотмеченные пробки (не всегда' date=' конечно, но все же).
[/quote']

Я, конечно, уважаю теоретиков, особенно, крупных, но я практик:). И знаю, что объезд "несуществующей пробки"(хотя, это не объезд несуществующей пробки, а обеспечение надежности маршрута) с потерей трех минут меня напряжет гораздо меньше, чем втыкание в необозначенную пробку минут этак на тридцать, при попытке объезда гораздо меньшей. Я лично постоянно попадаю в такую ситуацию на Больших Каменщиках-Воронцовке.

Поэтому грамотно реализованный индекс Шпрота лично для меня (а равно и для остальных трезво мыслящих людей) это гораздо лучше гипотетической панацеи в виде какой-то статистики, которая неизвестно как собрана и как применяется. Собственно, если нравится статистика, так пользуйтесь ПГС. Если мне не изменяет мой склероз, с ПГС у Вас что-то тоже не сложилось? Wink

Share this post


Link to post
Share on other sites

Осталось "только" подобрать коэффициенты для домножения, и ГЛАВНОЕ - все-таки разделить направления потоков по ребрам. За одно дополнительные вычисления повысят системные требования программы. На одном ребре нужна одна функция, а на другом - совсем другая.

 

Чем подбор коэффициентов отличается от сбора дифференциальной статистики? Коэффициенты - это лишь способ хранения или скорее даже передачи пользователю информации. А функции на рёбрах будут отличаться только этими коэффициентами, а при хранении степеней времени для функции 5го порядка это будет составлять 5 умножений и 5 сложений. А вообще хватит и 4го порядка, ибо она имеет при себе 2 горба.

 

 

Я не спросил про разницу будней и выходных, а спросил про разницу будней друг между другом. И ИМХО по характеру(!!!) поведения пробки не будут особо отличаться в эти дни(всё зависит, правда, от времени года). У каждого сейчас, конечно, появится целый том примеров, как вот как-то там не было пробки, а вот в другой будний день была. Тогда в этом случае и статистику бессмысленно обсуждать.

А вообще к чему нужна статистика за 3 миллиарда лет, чтобы узнать какое примерно сейчас движение на той или иной дороге в будень? Для будней достаточно недели или 2х(а того и меньше). Как говорится: 1 раз - случайность, 2 раза - совпадение, 3 раза - статистика. За это время статистика покроет любые закрытые на ремонт или открытые с него дороги.

Вот представьте, что вы поехали на работу новой дорогой и это сэкономило для вас полчаса. И так в течение ещё 3х дней поездили. Куда вы поедете на 4ый?

А вот дорога, которой вы всегда ездили и теперь там закрыли частично на ремонт мост, стала занимать на полчаса больше. Статистика, собранная за 3 тысячи лет не покажет ничего дельного, а собранная за неделю уже через 3 дня покажет уже более или менее адекватную картину.

Share this post


Link to post
Share on other sites

Статистика, собранная за 3 тысячи лет не покажет ничего дельного, а собранная за неделю уже через 3 дня покажет уже более или менее адекватную картину.

Обсуждалось уже. Дабы не устраивать флуд - воспользуйтесь поиском.

Я писал о том, как это необходимо учитывать.

 

Share this post


Link to post
Share on other sites

...так никто же не предлагает использовать статистику as is. Ввести веса и делать разумно-небольшие отклонения от "нормального" значения в зав-ти от времени суток и дня недели. Опять же' date=' очень плавно, интерполировав полученные результаты... [/quote'] Так! Ведь это уже не статистика! Т.е. собрали статистические данные, а затем "подправили" статистику по своему разумению. Посчитали результаты голосования и подправили в пользу "правильного" кандидата. Надо бы тогда разделить обсуждение. Либо говорить про статистику as is, либо обсуждать субъективные алгоритмы учета изменения дор. обстановки во времени (которые могут быть совсем не хуже, чем "голая" статистика, но это - другое). Статистика - это, все-таки, математика. Мне так ка-а-этся (с).

Share this post


Link to post
Share on other sites

А нельзя ли объединить все одинаковые темы?

Мне кажется было бы удобнее.Wink

 

Это только быстронайденые, а если еще поискать.....

Share this post


Link to post
Share on other sites

А нельзя ли объединить все одинаковые темы?

Мне кажется было бы удобнее.Wink
Просто именно эта тема настолько разрослась, что в одной ветке уже не освоить.

Share this post


Link to post
Share on other sites

То есть, если средняя скорость города упала в два раза, то нет оснований предполагать, что падение скорости на непокрытых улицах меньше.

Есть. Вот как раз вчера меня СГ замечательно водил по узеньким абсолютно пустым улочкам, в то время, как вокруг всё стояло. В Москве сейчас много водителей из других городов, эти улочки им не нужны, да и не знают они, куда по ним можно добраться. Я тоже по некоторым из них вчера проехал первый раз в жизни.

Share this post


Link to post
Share on other sites

Корректировать скоростные индексы рассылкой корректур несколько раз в день? Это же надо корректуры на всю карту слать! Очень много получится.

Пробки каждые 3 минуты приходят, на всю карту, и ничего. А индексы менять нужно гораздо реже.

Пользовательской корректурой можно править скорость потоков раздельно, а приходящей с сервера - только в обе стороны одновременно? Странно.

Share this post


Link to post
Share on other sites

Пробки каждые 3 минуты приходят, на всю карту, и ничего. А индексы менять нужно гораздо реже.

 

Пробки приходят не на все ребра, а только на те, на которые есть, причем только новые по сравнению с прошлым удачным сеансом загрузки пробок.

Share this post


Link to post
Share on other sites

Вот приведу отчетик об одной из многочисленных поездок:

8.26 старт у метро Большевиков финиш Всеволожск.
         СГ пишет 41мин значит приедем в 9.07.
Но я не хочу ехать каким-то новым маршрутом, поэтому еду обычным.
8.27 время меняется, но это так и должно быть, вроде как.
8.32 предлагается объезд по узким улочкам с кучей светофоров.
         игнорирую, еду по своему маршруту, как всегда.
8.33 время опять меняется, но и маршрут продолжает строить
         с кучей поворотов и светофоров.
8.34 продолжаю упорно ехать прямо на Колтушское шоссе, но нет,
        мало того, что маршрут предлагается по Коммуны, где светофороы
       через каждые 300 метров,
        так мы еще  и не можем проехать прямо - как же без заезда в карман.
8.35 СГ не теряет надежды и оптимизма, что я съехав с виадука, развернусь
        и поеду по Коммуне. Но я не ведусь на эту хитрость.
8.36 СГ понял, что деваться некуда и кладет маршрут по шоссе. Ура!
8.39 Рано радуемся, есть еще один маршрут к Финишу. И лежит он через
         левый поворот на загруженом утреннем шоссе, с последующим
        выездом на это же шоссе, только под знак "уступи" и поворотом
        налево. При этом, как видно из СШ 9.00, 8.43, данных о скорости
        проезда там нет. Да и не разгонишься там, т.к. имеется несколько
       поворотов под90гр и убитая дорога.
        (отметил красными стрелками)
8.43 Теперь уже точно сворачивать некуда, хотя пару раз меня
        пытались по Всеволожску покатать(не сегодня). Расчетное время прибытия
       9.03
9.06 Вот и финиш. Приехали на 1минуту раньше, чем планировалось
        изначально.

Разумеется вы скажете, время в СГ очень приблизительный показатель,
но у меня почти всегда совпадает.
По поводу, что надо было стартовать на двух одинаковых машинах,
тогда это было бы показательно - ЕРУНДА.
Маршруты проложенные этим утром заведомо проигрышные.
Говорю так, потому что знаю дорожную обстановку в этих районах.
Возможно, на момент построения маршрута там куда меня хотел отправить СГ
и не было пробок, но пока я до туда доехал - они бы обязательно появились.

В этом один из основных недостатков. Подтверждено пробками по расписанию.
СГ продолжает строить маршрут к мосту(перезду), пока его не разведут(закроют),
не учитывая время доезда.

Возвращаясь к статистике на ребрах в определенное время.
Дело полезное, как показал тест пробочных сервисов.
Но если СГ не будет учитывать время доезда до ребра, тогда
статистика превратится в ненужню фичу.
В момент выезда при наличии статданных несложно рассчитать время проезда
каждого ребра и уже исходя из времени прибытия к каждой точке корректировать
маршрут.
Если в голове у водителей это получается делать, так почему же этого не может
сделать программа? Вопрос, видимо, риторический получился.
Ну и закончу на этом. Извиняйте за длинный текст, но что-то накопилось с утра.

 

20091225_120553_2009_12_25_08_2.JPG

Share this post


Link to post
Share on other sites

Рождественская фантазия на тему пробок и не только...

Уведет нас СГ от текущей пробки и создаст новую, но только из своих клиентов. И сложится такая смешная ситуация: в одной пробке сидят клиенты СГ, в другой - НН, в третьей - АС. И все смеются друг над другом LOL Еще хуже, если все окажуться в одной общей пробке. А дальше-то что? Cry Может приподнимемся над частными решениями и отдадимся на сопровождение его величеству СЕРВЕРУ (режим "Серверное управление"). Пускай он за всех нас думает, голова у него железная. Мы будем следовать ЕГО указаниям, а СГ будет передавать ЕМУ сведения о текущей скорости, о целевых точках, об отклонениях от расчетного маршрута и тыр-пыр. СГ будет получать от СЕРВЕРА корректировки маршрута и плевать нам на интернет-трафик мобильного телефона, который намного дешевле бензина. Думаю 50-80тыс клиентов ОН переварит. А как вы думаете, переварит? Естественно в пиковые часы в безнадежных городских кишках СЕРВЕР врядли поможет (вернемся в режим "Автономное управление" или ваще отключим пробочный сервис)...

Тем временем наши Власти, засучив рукава, строят мощную сеть цементно-бетонных дорог ( потому что больше не хотят зарывать бабки в трухлявый асфальт!), убирают снег и грязь, наносят адекватную разметку, ставят светофоры, увеличивают штрафы за нарушения ПДД и, наконец, обязуют всех включать ближний свет при движении...

С католическим Рождеством Вас, Уважаемые! И пусть минует Вас страховай случай и инспектор ГИБДД!!!

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×