СПОСОБЫ И СЕРВЕРЫ ДЛЯ ГЕНЕРИРОВАНИЯ ПРОГНОЗНОЙ ОЦЕНКИ АЛГОРИТМОМ МАШИННОГО ОБУЧЕНИЯ Российский патент 2024 года по МПК G01C21/34 G06N5/02 

Описание патента на изобретение RU2831623C2

Область техники, к которой относится изобретение

[1] Настоящая технология относится к машинному обучению (ML, Machine Learning), в частности, к способам и серверам для генерирования прогнозной оценки алгоритмом машинного обучения (MLA, Machine Learning Algorithm).

Уровень техники

[2] Недавние разработки в области транспортных услуг привели к развитию различных онлайн-платформ, удовлетворяющих потребности пассажиров, связанные с поездками. В частности, транспортные платформы, предлагающие пассажирам услуги транспортных средств по запросу, стали популярным решением для удовлетворения постоянно растущего спроса на транспортные услуги. Такие онлайн-платформы управляются райдшеринговыми (ridesharing - совместные поездки) компаниями и предлагают своим пользователям поездки с использованием веб-сайта и/или мобильного приложения.

[3] Обычно пассажир инициирует запрос на поездку из пункта посадки в пункт высадки. Компьютерная система райдшеринговой платформы обрабатывает запрос на поездку и назначает подходящее транспортное средство для удовлетворения этого запроса. На распределение транспортного средства для запроса на поездку могут влиять разные факторы.

[4] Например, распределение может выполняться с учетом того, управлял ли водитель транспортным средством-кандидатом уже в течение продолжительного времени и устал ли он в настоящий момент времени. Это может негативно влиять на способность водителя к управлению и на удовлетворенность пассажира от поездки. В другом примере распределение может выполняться с учетом погодных и дорожных условий, которые могут быть благоприятными или неблагоприятными для водителя при управлении транспортным средством. Несмотря на то, что райдшеринговые компании прилагают значительные усилия для обеспечения безопасных и удобных транспортных услуг, в этой области могут потребоваться дальнейшие улучшения.

[5] В патенте US9927252 описана навигационная система для определения маршрутов с учетом соображений безопасности.

Раскрытие изобретения

[6] Целью настоящего изобретения является устранение по меньшей мере некоторых недостатков известных решений. Варианты осуществления настоящей технологии способны обеспечить и/или расширить арсенал подходов к способам достижения целей в настоящей технологии. Разработчики настоящей технологии обнаружили по меньшей мере одну техническую проблему, связанную с известными решениями.

[7] Райдшеринговые компании, например, такие как Uber™, Lyft™ и Yandex.Taxi™, управляют онлайн-системами, предназначенными для предоставления своим пользователям безопасных и удобных транспортных услуг. Райдшеринговая онлайн-система содержит алгоритм назначения для сопоставления пользователей с водителями на основе множества факторов. Эти факторы, среди прочего, включают в себя зависящие от водителя факторы, зависящие от пользователя факторы и зависящие от поездки факторы. Например, один из факторов, который может при этом учитываться, представляет собой время, требуемое водителю-кандидату для прибытия в пункт посадки пользователя. Благодаря использованию такого фактора может быть уменьшено время простоя водителей райдшеринговой платформы, в течение которого водители находятся на связи и доступны для приема запроса на поездку, но не сопоставлены алгоритмом назначения с каким-либо из них.

[8] Например, пользователь может инициировать запрос на поездку путем нажатия кнопки «вызов транспортного средства» («call a vehicle») мобильного приложения в интерфейсной части райдшеринговой платформы. В ответ сервер на бэкенде (в серверной части) райдшеринговой платформы может сгенерировать и обработать объект заказа.

[9] В некоторых вариантах осуществления изобретения объект заказа может быть воплощен и реализован в виде соответствующего конечного автомата (SM, State Machine), реализованного на бэкенде райдшеринговой платформы. В этих вариантах осуществления изобретения для перевода автомата SM объекта заказа из состояния «ожидание» в состояние «водитель назначен» бэкэнд (серверная часть) выполнен с возможностью (а) выбирать водителя-кандидата из пула доступных водителей, (б) отправлять выбранному водителю запрос на подтверждение для запроса на поездку и (в) получать от выбранного водителя подтверждающее уведомление, указывающее на то, что выбранный водитель принял запрос на поездку к исполнению.

[10] В некоторых вариантах осуществления изобретения, где процесс выбора водителя выполняется на бэкенде, запрос может быть сгенерирован и отправлен микросервису отслеживания, который реализован на бэкенде и предназначен для управления информацией о пуле водителей.

[11] Например, микросервису отслеживания может быть доступно большое количество данных о транспортных средствах водителей, таких как их цвет, марка, текущее местоположение и т.п. В другом примере микросервис отслеживания может содержать локальный географический указатель для водителей и может быть связан с сервисами маршрутизации, выполняемыми на бэкенде для построения маршрутов из пункта А в пункт Б (иногда также с назначением других промежуточных пунктов) для запроса на поездку.

[12] Получив запрос на поиск водителя-кандидата, микросервис отслеживания может определить множество факторов и использовать их для выбора водителя-кандидата. Множество факторов может содержать первый фактор, указывающий на время, необходимое транспортному средству для прибытия в пункт посадки. Множество факторов может содержать второй фактор, такой как значение, указывающее на уровень спроса в пункте посадки и/или в пункте высадки. Множество факторов может содержать третий фактор, такой как значение, указывающее на уровень опытности водителя.

[13] В некоторых вариантах осуществления изобретения микросервис отслеживания может группировать запросы на поездку и выполнять назначение водителей для группы запросов на поездку из соответствующего пула водителей-кандидатов, доступных в текущий момент времени для выполнения поездок. Предполагается, что множество микросервисов отслеживания могут быть реализованы на бэкенде и связаны с соответствующими пулами водителей-кандидатов без выхода за границы настоящей технологии.

[14] Разработчики настоящей технологии установили, что некоторые существующие райдшеринговые платформы часто преимущественно выбирают водителя, ближайшего к пункту посадки из запроса на поездку. Безотносительно какой-либо конкретной теории, разработчики разработали способы и серверы, позволяющие выбирать водителей для запросов на поездку так, чтобы дополнительно уменьшить количество дорожно-транспортных происшествий с участием выбранных водителей.

[15] В некоторых вариантах осуществления настоящей технологии сервер выполнен с возможностью генерирования оценки в соответствующих парах водитель-запрос для водителя (из пула доступных водителей) и полученного сервером запроса на поездку (из группы текущих запросов на поездку). Сервер может использовать эти оценки в качестве входных данных для алгоритма назначения с целью выбора подмножества пар водитель-запрос для назначения водителей-кандидатов текущим запросам на поездку. В некоторых вариантах осуществления изобретения выполняемый сервером алгоритм назначения может быть реализован подобно Венгерскому алгоритму. В общем случае Венгерский алгоритм предусматривает генерирование всех независимых наборов матрицы стоимости, расчет суммарной стоимости для каждого назначения и поиск среди всех назначений для нахождения независимого набора с минимальной суммой.

[16] В контексте настоящей технологии разработчики разработали способы и серверы для обучения алгоритма MLA определению по меньшей мере одного фактора из множества факторов, учитываемых алгоритмом назначения.

[17] В некоторых вариантах осуществления настоящей технологии обучающие данные для обучения алгоритма MLA могут быть сгенерированы сервером на основе данных предыстории, которые хранит онлайн-платформа. Например, сервер может обратиться к списку поездок, ранее выполненных водителями онлайн-платформы. Данные, связанные с ранее выполненной поездкой, могут содержать зависящую от маршрута информацию, зависящую от водителя информацию и временнýю информацию. Зависящая от маршрута информация может указывать на пункт посадки, пункт высадки, множество участков маршрута, количество дорожно-транспортных происшествий, которые произошли на соответствующих участках маршрута, и т.п. Зависящая от водителя информация может указывать на возраст водителя, количество лет опыта водителя, количество дорожно-транспортных происшествий, в которых водитель участвовал до согласия на ранее выполненную поездку, и т.п. Временнáя информация может указывать на события, которые произошли с момента времени, соответствующего согласию на ранее выполненную поездку, во время ранее выполненной поездки и после завершения ранее выполненной поездки.

[18] Предполагается, что сервер может генерировать обучающие наборы данных для соответствующих обучающих пар водитель-запрос. Обучающий набор данных может содержать обучающие входные данные и обучающую метку. Обучающие входные данные содержат оценку водителя, сгенерированную для водителя, и оценку маршрута, сгенерированную для соответствующей ранее выполненной поездки или маршрута. Например, оценка водителя может быть рассчитана на основе зависящей от водителя информации. В другом примере оценка маршрута может быть рассчитана на основе зависящей от маршрута информации. Обучающая метка может указывать на то, участвовал ли водитель из обучающей пары водитель-запрос в дорожно-транспортном происшествии в течение заранее заданного интервала времени после согласия с маршрутом из обучающей пары водитель-запрос и/или после момента времени посадки пользователя и инициирования соответствующего маршрута водителем.

[19] В некоторых вариантах осуществления изобретения заранее заданный интервал времени равен одному часу. Например, обучающая метка для обучающих входных данных может соответствовать первому значению, если водитель участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени, и второму значению, если водитель не участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени.

[20] Предполагается, что заранее заданный интервал времени может быть больше или меньше интервала времени, требуемого для фактического выполнения соответствующего маршрута. Например, если после завершения водителем соответствующего маршрута с его участием произошло дорожно-транспортное происшествие в течение заранее заданного интервала времени, то обучающая метка указывает на то, что водитель из пары водитель-запрос участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени. Можно сказать, что в некоторых вариантах осуществления изобретения заранее заданный интервал не зависит от длины маршрута для конкретного маршрута и/или от времени, фактически требуемого для выполнения конкретного маршрута.

[21] В некоторых вариантах осуществления изобретения предполагается, что использование зависящей от интервала обучающей метки может быть полезным на этапе обучения алгоритма MLA. Разработчики настоящей технологии установили, что если обучающая метка указывает на участие водителя в дорожно-транспортном происшествии при выполнении соответствующего маршрута (т.е. без заранее заданного ограничения по времени, такого как один час), то короткие маршруты, требующие меньше времени для выполнения, будут иметь приоритет перед длинными маршрутами, поскольку вероятность участия в дорожно-транспортных происшествиях на длинных маршрутах больше, чем на коротких маршрутах.

[22] В других вариантах осуществления изобретения алгоритм MLA может применяться на этапе использования с целью генерирования оценок для всех возможных пар (а) запросов на поездку из текущей группы запросов на поездку и (б) водителей-кандидатов из пула доступных в данный момент времени водителей. Следует отметить, что алгоритму назначения, выбирающему пару, например, такому как Венгерский алгоритм, могут потребоваться входные данные на основе пар для анализа соответствующих пар и для выбора наиболее подходящих пар.

[23] Следует отметить, что оценки на основе пар, сгенерированные алгоритмом MLA, могут представлять собой один из многих факторов, учитываемых алгоритмом назначения. Это означает, что алгоритму назначения могут быть предоставлены другие входные данные на основе пар, например, время назначения для пары водитель-запрос. В результате наряду с учетом того, насколько быстро водитель из пары может прибыть в пункт посадки, связанный с маршрутом из пары, алгоритм назначения также может учитывать вероятность дорожно-транспортного происшествия с участием водителя в течение заранее заданного интервала времени, если водитель из пары согласится с маршрутом из пары.

[24] Согласно первому аспекту настоящей технологии реализован способ генерирования прогнозной оценки алгоритмом MLA, выполняемым сервером, обеспечивающим цифровой транспортный сервис и соединенным со множеством электронных устройств, связанных с соответствующими пользователями и соответствующими водителями цифрового транспортного сервиса. Способ выполняется сервером и включает в себя: получение сервером данных о маршруте, связанных со множеством маршрутов, запрошенных пользователями цифрового транспортного сервиса; генерирование сервером множества оценок маршрута для множества маршрутов на основе данных о маршруте, при этом оценка маршрута указывает на степень безопасности маршрута из множества маршрутов; получение сервером данных о водителе, связанных со множеством водителей цифрового транспортного сервиса; генерирование сервером множества оценок водителя для множества водителей на основе данных о водителе, при этом оценка водителя указывает на манеру вождения соответствующего водителя из множества водителей; для пары, содержащей маршрут и водителя: генерирование сервером, использующим алгоритм MLA, прогнозной оценки, указывающей на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута; назначение на основе прогнозной оценки сервером, использующим алгоритм назначения, маршрута для водителя с целью предоставления транспортных услуг пользователю.

[25] В некоторых вариантах осуществления способа генерирование оценки маршрута включает в себя определение сервером отношения количества дорожно-транспортных происшествий на маршруте к длине маршрута.

[26] В некоторых вариантах осуществления способа генерирование оценки водителя включает в себя генерирование сервером, использующим модель водителя, оценки водителя на основе информации о поведении водителя и данных профиля водителя.

[27] В некоторых вариантах осуществления способа он дополнительно включает в себя определение сервером значения времени назначения для пары, а назначение дополнительно основывается на значении времени назначения.

[28] В некоторых вариантах осуществления способа алгоритм MLA представляет собой модель логистической регрессии.

[29] В некоторых вариантах осуществления способа алгоритм MLA представляет собой модель попарного ранжирования.

[30] В некоторых вариантах осуществления способа алгоритм назначения представляет собой Венгерский алгоритм.

[31] Согласно второму аспекту настоящей технологии реализован способ назначения водителя для запроса на поездку, выполняемый сервером, обеспечивающим цифровой транспортный сервис и соединенным со множеством электронных устройств, связанных с соответствующими пользователями и соответствующими водителями цифрового транспортного сервиса. Способ включает в себя: получение сервером данных о маршруте, связанных со множеством запрошенных пользователями цифрового транспортного сервиса маршрутов, при этом маршрут из множества маршрутов связан с соответствующим запросом на поездку; генерирование сервером множества оценок маршрута для множества маршрутов на основе данных о маршруте, при этом оценка маршрута указывает на степень безопасности маршрута из множества маршрутов; получение сервером данных о водителе, связанных со множеством водителей цифрового транспортного сервиса; генерирование сервером множества оценок водителя для множества водителей на основе данных о водителе, при этом оценка водителя указывает на манеру вождения соответствующего водителя из множества водителей; для пары, содержащей маршрут и водителя: генерирование сервером, использующим алгоритм MLA, прогнозной оценки, указывающей на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута; назначение на основе прогнозной оценки сервером, использующим алгоритм назначения, маршрута для водителя с целью предоставления транспортных услуг пользователю; и отправка сервером запроса на подтверждение водителю для принятия маршрута к исполнению.

[32] Согласно третьему аспекту настоящей технологии реализован сервер для генерирования прогнозной оценки алгоритмом MLA, выполняемым сервером, обеспечивающим цифровой транспортный сервис и соединенным со множеством электронных устройств, связанных с соответствующими пользователями и соответствующими водителями цифрового транспортного сервиса. Сервер выполнен с возможностью: получать данные о маршруте, связанные со множеством маршрутов, запрошенных пользователями цифрового транспортного сервиса; генерировать множество оценок маршрута для множества маршрутов на основе данных о маршруте, при этом оценка маршрута указывает на степень безопасности маршрута из множества маршрутов; получать данные о водителе, связанные со множеством водителей цифрового транспортного сервиса; генерировать множество оценок водителя для множества водителей на основе данных о водителе, при этом оценка водителя указывает на манеру вождения соответствующего водителя из множества водителей; для пары, содержащей маршрут и водителя: генерировать с использованием алгоритма MLA прогнозную оценку, указывающую на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута; назначать на основе прогнозной оценки с использованием алгоритма назначения маршрут для водителя с целью предоставления транспортных услуг пользователю.

[33] В некоторых вариантах осуществления сервера способность сервера генерировать оценку маршрута включает в себя его способность определять отношение количества дорожно-транспортных происшествий на маршруте к длине маршрута.

[34] В некоторых вариантах осуществления сервера способность сервера генерировать оценку водителя включает в себя его способность генерировать оценку водителя с использованием модели водителя на основе информации о поведении водителя и данных профиля водителя.

[35] В некоторых вариантах осуществления сервера он дополнительно выполнен с возможностью определения значения времени назначения для пары, а назначение дополнительно основано на значении времени назначения.

[36] В некоторых вариантах осуществления сервера алгоритм MLA представляет собой модель логистической регрессии.

[37] В некоторых вариантах осуществления сервера алгоритм MLA представляет собой модель попарного ранжирования.

[38] В некоторых вариантах осуществления сервера алгоритм назначения представляет собой Венгерский алгоритм.

[39] В контексте настоящего описания термин «сервер» означает компьютерную программу, выполняемую соответствующими аппаратными средствами и способную принимать запросы (например, от клиентских устройств) через сеть и выполнять эти запросы или инициировать их выполнение. Аппаратные средства могут быть реализованы в виде одного физического компьютера или одной компьютерной системы, что не существенно для настоящей технологии. В данном контексте выражение «сервер» не означает, что каждая задача (например, принятая команда или запрос) или некоторая определенная задача принимается, выполняется или запускается одним и тем же сервером (т.е. одними и теми же программными и/или аппаратными средствами). Это выражение означает, что любое количество программных средств или аппаратных средств может принимать, отправлять, выполнять или запускать выполнение любой задачи или запроса либо результатов любых задач или запросов. Все эти программные и аппаратные средства могут представлять собой один сервер или несколько серверов, причем оба эти случая подразумеваются в выражении «по меньшей мере один сервер».

[40] В контексте настоящего описания термин «электронное устройство» означает любое компьютерное аппаратное средство, способное выполнять программы, подходящие для решения поставленной задачи. В контексте настоящего описания термин «электронное устройство» подразумевает, что устройство может функционировать в качестве сервера для других электронных устройств и клиентских устройств, тем не менее, это не обязательно для настоящей технологии. Таким образом, некоторые (не имеющие ограничительного характера) примеры электронных устройств включают в себя персональные компьютеры (настольные, ноутбуки, нетбуки и т.п.), смартфоны и планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Должно быть понятно, что в данном контексте тот факт, что устройство функционирует в качестве электронного устройства, не означает, что оно не может функционировать в качестве сервера для других электронных устройств. Использование выражения «электронное устройство» не исключает использования нескольких клиентских устройств для приема, назначения, выполнения или инициирования выполнения любой задачи или запроса либо результатов любых задач или запросов, либо шагов любого описанного здесь способа.

[41] В контексте настоящего описания термин «клиентское устройство» означает любое компьютерное аппаратное средство, способное выполнять программы, подходящие для решения поставленной задачи. В контексте настоящего описания термин «клиентское устройство» в общем случае связан с пользователем клиентского устройства. Таким образом, некоторые (не имеющие ограничительного характера) примеры клиентских устройств включают в себя персональные компьютеры (настольные, ноутбуки, нетбуки и т.п.), смартфоны и планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует отметить, что в данном контексте устройство, функционирующее как клиентское устройство, также может функционировать как сервер для других клиентских устройств. Использование выражения «клиентское устройство» не исключает использования нескольких клиентских устройств для приема, назначения, выполнения или инициирования выполнения любой задачи или запроса либо результатов любых задач или запросов, либо шагов любого описанного здесь способа.

[42] В контексте настоящего описания выражение «информация» включает в себя информацию любого рода или вида, допускающую хранение в базе данных. Таким образом, информация включает в себя аудиовизуальные произведения (изображения, фильмы, звукозаписи, презентации и т.д.), данные (данные о местоположении, числовые данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, электронные таблицы и т.д., но не ограничивается ими.

[43] В контексте настоящего описания выражение «программный компонент» включает в себя обозначение программного обеспечения (подходящего для определенных аппаратных средств), необходимого и достаточного для выполнения указанной определенной функции или нескольких функций.

[44] В контексте настоящего описания выражение «носитель компьютерной информации» (также называется «носителем информации») означает носители любого рода и вида, включая оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), диски (CD-ROM, DVD, гибкие диски, жесткие диски и т.д.), USB-накопители, твердотельные накопители, накопители на магнитных лентах и т.д. Для генерирования носителя компьютерной информации может объединяться множество элементов, включая два или более элементов носителя информации одного вида и/или два или более элементов носителя информации различных видов.

[45] В контексте настоящего описания термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных или компьютерных аппаратных средств для хранения этих данных, их применения или обеспечения их использования иным способом. База данных может располагаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо база данных может располагаться в отдельных аппаратных средствах, таких как специализированный сервер или множество серверов.

[46] В контексте настоящего описания числительные «первый» «второй», «третий» и т.д. используются лишь для указания различия между существительными, к которым они относятся, но не для описания каких-либо определенных взаимосвязей между этими существительными. Например, должно быть понятно, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо определенного порядка, типа, хронологии, иерархии или классификации, в данном случае, серверов, а также что их использование (само по себе) не подразумевает наличие «второго сервера» в любой ситуации. Кроме того, как встречается в данном описании в другом контексте, ссылка на «первый» элемент и «второй» элемент не исключает того, что эти два элемента в действительности могут быть одним и тем же элементом. Таким образом, например, в некоторых случаях «первый» сервер и «второй» сервер могут представлять собой одни и те же компоненты программных средств и/или элементы аппаратных средств, а в других случаях - различные компоненты программных средств и/или элементы аппаратных средств.

[47] Каждый вариант осуществления настоящей технологии относится к по меньшей мере одной из вышеупомянутых целей и/или одному из вышеупомянутых аспектов, но не обязательно ко всем ним. Должно быть понятно, что некоторые аспекты настоящей технологии, связанные с попыткой достижения вышеупомянутой цели, могут не соответствовать этой цели и/или могут соответствовать другим целям, явным образом здесь не упомянутым.

[48] Дополнительные и/или альтернативные признаки, аспекты и преимущества вариантов осуществления настоящей технологии содержатся в дальнейшем описании, на приложенных чертежах и в формуле изобретения.

Краткое описание чертежей

[49] Эти и другие признаки, аспекты и преимущества настоящей технологии поясняются в дальнейшем описании, в приложенной формуле изобретения и на следующих чертежах.

[50] На фиг. 1 приведена схема системы для назначения водителей пользователям цифрового транспортного сервиса согласно некоторым вариантам осуществления настоящей технологии.

[51] На фиг. 2 представлена структура данных, хранящихся в хранилище данных системы, представленной на фиг. 1, согласно некоторым вариантам осуществления настоящей технологии.

[52] На фиг. 3 представлен цикл назначения в реальном масштабе времени, выполняемый системой, представленной на фиг. 1, согласно некоторым вариантам осуществления настоящей технологии.

[53] На фиг. 4 представлена одна итерация этапа обучения алгоритма MLA, используемого системой, представленной на фиг. 1, согласно некоторым вариантам осуществления настоящей технологии.

[54] На фиг. 5 представлена одна итерация этапа использования алгоритма MLA, представленного на фиг. 4, согласно некоторым вариантам осуществления настоящей технологии.

[55] На фиг. 6 приведена блок-схема способа, выполняемого сервером системы, представленной на фиг. 1, согласно некоторым вариантам осуществления настоящей технологии.

Осуществление изобретения

[56] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Очевидно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.

[57] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалистам в данной области должно быть понятно, что другие варианты осуществления настоящей технологии могут быть значительно сложнее.

[58] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.

[59] Более того, описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры, предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть понятно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих основы настоящей технологии. Также должно быть очевидно, что любые блок-схемы, схемы процессов, диаграммы изменения состояния, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены на машиночитаемом физическом носителе информации и могут выполняться компьютером или процессором, независимо от того, показан такой компьютер или процессор явно или нет.

[60] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также аппаратных средств, способных выполнять соответствующее программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором и/или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать, помимо прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и/или энергонезависимое запоминающее устройство. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.

[61] Программные модули или просто модули, реализация которых предполагается в виде программных средств, могут быть представлены здесь как любое сочетание элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми.

[62] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящей технологии.

[63] На фиг. 1 приведено схематическое представление системы согласно некоторым вариантам осуществления настоящей технологии. Система содержит множество 106 устройств пассажиров, связанных со множеством пользователей-пассажиров. Например, множество 106 устройств пассажиров содержит устройство 104 пассажира, связанное с пользователем-пассажиром 102. Система содержит множество 112 устройств водителей, связанных со множеством водителей и соответствующих транспортных средств. Например, множество 112 устройств водителей содержит устройство 108 водителя, связанное с водителем 114 и транспортным средством 110.

[64] Система содержит сервер 130 и хранилище 140 данных, связанное с сервером 130. Сервер 130 может использовать данные, хранящимися в хранилище 140 данных, для реализации транспортного электронного сервиса 150. Сервер 130 связан со множеством 106 устройств пассажиров и со множеством 112 устройств водителей через сеть 120 связи. Сервер 130 может получать информацию 180 от множества 106 устройств пассажиров и информацию 182 от множества 112 устройств водителей. Сервер 130 может использовать множество 170 алгоритмов для обработки информации 180 и 182 и/или информации, доступной в хранилище 140 данных. Сервер 130 может отправлять информацию 184 множеству 106 устройств пассажиров и информацию 186 множеству 112 устройств водителей. Содержимое информации 180, 182, 184 и 186 описано ниже.

[65] Устройство 104 пассажира и/или устройство 108 водителя содержит различные аппаратные элементы, включая один или несколько одно- или многоядерных процессоров, твердотельный накопитель, память, которая может представлять собой ОЗУ или память другого вида. Связь между различными элементами устройства 104 пассажира и/или устройства 108 водителя может осуществляться через одну или несколько внутренних и/или внешних шин (не показаны), таких как шина PCI, шина USB, шина FireWire стандарта IEEE 1394, шина SCSI, шина Serial-ATA и т.д., с которыми различные аппаратные элементы соединены электронными средствами. Согласно вариантам осуществления настоящей технологии, в твердотельном накопителе хранятся программные команды, пригодные для загрузки в память и выполнения процессором с целью выполнения программных приложений. Например, программные команды могут входить в состав программного приложения, выполняемого процессором. Следует отметить, что устройство 104 пассажира и/или устройство 108 водителя могут содержать дополнительные и/или необязательные элементы, такие как модуль сетевой связи для связи через сеть 120 связи с другими электронными устройствами и/или серверами и т.п.

Устройство пассажира

[66] Устройство 104 пассажира может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций для инициирования запросов на поездку. Устройство 104 пассажира может использоваться пассажиром 102 для инициирования запроса на поездку с целью заказа транспортного средства для поездки из пункта посадки в пункт высадки. Устройство 104 пассажира может выполнять программное приложение, связанное с сервером 130 и позволяющее пассажиру 102 инициировать запрос на поездку. Устройство 104 пассажира с использованием программного приложения может отображать различные интерфейсы заказа и уведомления, формируемые сервером 130. Например, устройство 104 пассажира может отображать интерфейс заказа, позволяющий пассажиру 102 предоставлять информацию о поездке и разрешения, требуемые для инициирования запроса на поездку. Устройство 104 пассажира также может передавать запрос на поездку серверу 130 через сеть 120 связи. Пассажир 102 может использовать устройство 104 пассажира для просмотра информации о распределении, полученной от сервера 130. Информация о распределении уведомляет пассажира 102 о транспортном средстве, назначенном для этого запроса на поездку. В качестве примеров устройства 104 пассажира можно привести персональный компьютер, ноутбук, смартфон, планшетный компьютер и т.д.

[67] В некоторых вариантах осуществления изобретения сервер 130 может отображать интерфейс заказа на дисплее устройства 104 пассажира с использованием программного приложения, выполняемого в устройстве 104 пассажира. Благодаря интерфейсу заказа пассажир 102 может инициировать запрос на поездку.

[68] В некоторых вариантах осуществления изобретения интерфейс заказа может представлять пассажиру 102 географическую карту и первый набор доступных для выбора опций. Первый набор доступных для выбора опций может содержать текстовые окна, навигационный курсор, кнопку «ехать сейчас» («ride now»), кнопку «ехать позже» («ride later»), кнопку определения текущего местоположения, шкалу расстояний и т.п. Пассажир 102 может использовать текстовые окна для ввода адресов пунктов посадки и высадки в текстовом формате. Навигационный курсор может перемещаться по географической карте путем сенсорного ввода информации пассажиром 102 на устройстве 104 пассажира и может использоваться для указания пунктов посадки и высадки на географической карте. Кнопку «ехать сейчас» пассажир 102 может активировать, когда он желает инициировать запрос на поездку для планирования поездки в текущий момент времени. Кнопку «ехать позже» пассажир 102 может активировать, когда он желает инициировать запрос на поездку для планирования поездки в конкретный момент времени в будущем. Активированная кнопка определения текущего местоположения может перемещать навигационный курсор в текущее местоположение устройства 104 пассажира. Пассажир 102 может использовать шкалу расстояний для увеличения или уменьшения географической карты. Пассажир 102 может выбирать в интерфейсе заказа дополнительные опции, например, такие как детское сиденье, без выхода за границы настоящей технологии.

Устройство водителя

[69] Устройство 108 водителя может содержать подходящую логику, схемотехнические решения интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять программное приложение, размещенное на сервере 130. В одном варианте осуществления изобретения, когда сервер 130 назначает транспортное средство 110 и водителя 114 для запроса на поездку пассажира 102, устройство 108 водителя может получать информацию о распределении от сервера 130. На основе информации о распределении устройство 108 водителя может отображать навигационный интерфейс, чтобы направлять водителя 114 в пункт посадки для посадки пассажира 102 в транспортное средство 110. Навигационный интерфейс дополнительно может представлять маршрут между пунктом посадки и пунктом высадки, чтобы направлять водителя 114 из пункта посадки в пункт высадки для высадки пассажира 102. Устройство 108 водителя дополнительно может отслеживать текущее местоположение транспортного средства 110 и передавать информацию об отслеженном текущем местоположении серверу 130. Устройство 108 водителя дополнительно может передавать данные датчика от одного или нескольких датчиков (не показаны) транспортного средства 110 серверу 130 приложений. В качестве примеров одного или нескольких датчиков можно привести акселерометр, одометр, датчик трафика, датчик системы глобального позиционирования (GPS, Global Positioning System), датчик температуры, камеры и т.п.

[70] В некоторых вариантах осуществления изобретения сервер 130 может отображать интерфейс уведомлений на дисплее устройства 108 водителя с использованием программного приложения, выполняемого в устройстве 108 водителя. Благодаря интерфейсу уведомлений водитель 114 может просматривать сообщение, содержащее информацию о поездке, когда сервер 130 назначает водителя 114 для запроса на поездку, инициированного пассажиром 102.

[71] В некоторых вариантах осуществления изобретения информация о поездке может содержать имя пассажира, количество заказанных мест, пункт посадки, пункт высадки, время посадки, предполагаемое время высадки, плату за поездку и т.п. Интерфейс уведомлений дополнительно может содержать навигационную карту, отображающую пункт посадки, пункт высадки и предполагаемый маршрут из пункта посадки в пункт высадки. Интерфейс уведомлений дополнительно может содержать множество доступных для выбора водителем 114 опций, таких как «подтвердить заказ» («confirm booking») и «отклонить заказ» («reject booking»). Опцию «подтвердить заказ» водитель 114 может выбрать, когда он желает подтвердить запрос на поездку. Опцию «отклонить заказ» водитель 114 может выбрать, когда он желает отклонить запрос на поездку. При выборе опции «отклонить заказ» водителем 114 сервер 130 может назначить другое транспортное средство для запроса на поездку.

Сеть связи

[72] В некоторых вариантах осуществления настоящей технологии сеть 120 связи представляет собой сеть Интернет. В альтернативных не имеющих ограничительного характера вариантах осуществления изобретения сеть 120 связи может быть реализована в виде любой подходящей локальной сети (LAN, Local Area Network), глобальной сети (WAN, Wide Area Network), частной сети связи и т.п. Очевидно, что варианты осуществления сети 120 связи приведены лишь в иллюстративных целях. Реализация линий связи (отдельно не обозначены) между устройством 104 пассажира и/или устройством 108 водителя с одной стороны и сетью 120 связи с другой стороны зависит, среди прочего, от реализации устройства 104 пассажира и/или устройства 108 водителя. Лишь в качестве не имеющего ограничительного характера примера, в тех не имеющих ограничительного характера вариантах осуществления настоящей технологии, где устройство 104 пассажира и/или устройство 108 водителя реализовано в виде устройства беспроводной связи, такого как смартфон или навигационное устройство, линия связи может быть реализована в виде беспроводной линии связи. Примеры беспроводных линий связи включают в себя канал сети связи 3G, канал сети связи 4G и т.д. В сети 120 связи также может использоваться беспроводное соединение с сервером 130.

Хранилище данных

[73] На фиг. 2 приведено схематическое представление хранилища 140 данных. В некоторых вариантах осуществления изобретения хранилище 140 данных связано с сервером 130. В других вариантах осуществления изобретения хранилище 140 данных может быть связано с устройством 104 пассажира и/или с устройством 108 водителя и/или с другим процессором, соединенным с сетью 120 связи.

[74] Хранилище 140 данных способно хранить информацию, извлеченную, определенную и/или сгенерированную сервером 130 и/или устройством 104 пассажира и/или устройством 108 водителя. В общем случае хранилище 140 данных может получать данные, сгенерированные во время работы сервером 130 и/или устройством 104 пассажира и/или устройством 108 водителя, для их временного и/или постоянного хранения и может предоставлять сохраненные данные для их использования серверу 130 и/или устройству 104 пассажира и/или устройству 108 водителя. Предполагается, что хранилище 140 данных может быть разделено на несколько распределенных хранилищ данных, например, для реализации отказоустойчивой системы хранения данных, без выхода за границы настоящей технологии.

[75] Следует отметить, что в по меньшей мере некоторых вариантах осуществления настоящей технологии в хранилище 140 данных может храниться база данных. В общем случае в хранилище 140 данных может храниться организованная коллекция данных. Небольшие базы данных могут храниться в файловой системе, а большие базы данных размещаются в вычислительных кластерах или в облачном хранилище данных. Структура базы данных может, среди прочего, зависеть от различных технологий и практических соображений, включая моделирование данных, эффективное представление и хранение данных, языки запросов, безопасность и защиту конфиденциальных данных, а также проблемы распределенных вычислений, включая одновременный доступ и отказоустойчивость.

[76] В некоторых не имеющих ограничительного характера вариантах осуществления изобретения в хранилище 140 данных хранятся данные 210 о пользователе, данные 220 о водителе, данные 230 карты и обучающие данные 240 (см. фиг. 2). Данные 210 о пользователе содержат зависящую от пользователя информацию, связанную со множеством пользователей-пассажиров онлайн-платформы. Данные 220 о водителе содержат зависящую от водителя информацию, связанную со множеством пользователей-водителей онлайн-платформы. Данные 230 карты содержат зависящую от карты информацию, связанную с географическим регионом, в котором работает онлайн-платформа. Обучающие данные 240 содержат информацию, указывающую на множество обучающих наборов данных, которые сервер 130 может использовать для обучения одного или нескольких алгоритмов MLA. Содержимое данных 210 о пользователе, данных 220 о водителе, данных 230 карты и обучающих данных 240 описано ниже.

Сервер

[77] Сервер 130 может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций (например, выполнение хранящихся в памяти программ, процедур, сценариев и т.п.) для назначения транспортного средства. На сервере 130 может быть размещено программное приложение (например, мобильное приложение или веб-приложение), которое может выполняться в устройстве 104 пассажира. Сервер 130 может принимать запрос на поездку от устройства 104 пассажира через сеть 120 связи. На основе запроса на поездку сервер 130 может выбирать и назначать подходящее транспортное средство (например, транспортное средство 110) для запроса на поездку. Сервер 130 дополнительно может передавать информацию о распределении устройству 104 пассажира для уведомления пассажира 102 о распределении транспортного средства. Сервер 130, среди прочего, может быть реализован с использованием различных веб-технологий, таких как веб-фреймворк Java, фреймворк .NET, фреймворк PHP (Hypertext Preprocessor, препроцессор гипертекста) или любой другой фреймворк для веб-приложений. В качестве примеров сервера 130 можно привести персональный компьютер, ноутбук, сетевые или вычислительные системы и т.д.

[78] Сервер 130 может быть реализован в виде традиционного компьютерного сервера и может содержать процессор и память. В одном не имеющем ограничительного характера примере сервер 130 реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™, но он также может быть реализован с использованием любых других подходящих аппаратных средств, прикладного программного обеспечения и/или встроенного программного обеспечения либо их сочетания. В представленных не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер представляет собой один сервер. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии (не показаны) функции сервера 130 могут быть распределены между несколькими серверами.

[79] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии устройство 104 пассажира и/или устройство 108 водителя может быть связано с сервером 130 для получения одного или нескольких обновлений. Обновления могут представлять собой обновления программного обеспечения, обновления карт, обновления маршрутов, обновления данных о погоде и т.д. В некоторых вариантах осуществления настоящей технологии устройство 104 пассажира и/или устройство 108 водителя также могут отправлять серверу 130 некоторые рабочие данные, такие как пройденные маршруты, данные о дорожном движении, рабочие характеристики и т.д.

[80] Сервер 130 может выполнять множество 170 алгоритмов для реализации транспортного сервиса 150. В некоторых вариантах осуществления изобретения благодаря множеству 170 алгоритмов сервер 130 может выполнять множество функций, включая обнаружение транспортного средства, интеллектуальный анализ данных, размещение транспортных средств, назначение, связь, администрирование и хранение данных и т.д.

[81] В некоторых вариантах осуществления настоящей технологии процессор сервера 130 может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций для назначения транспортного средства. Например, процессор может управлять обнаружением транспортных средств для запроса на поездку с использованием модуля обнаружения транспортных средств сервера 130 и получать требуемую информацию из хранилища 140 данных с использованием модуля интеллектуального анализа данных сервера 130. Процессор также может управлять (а) размещением транспортных средств с использованием модуля размещения транспортных средств сервера 130 и (б) отображением интерфейсов заказа и/или уведомлений на устройстве 104 пассажира и/или на устройстве 108 водителя с использованием модуля уведомлений сервера 130. Процессор также может управлять выбором и назначением водителей для запроса на поездку с использованием модуля назначения сервера 130.

[82] Предполагается, что процессор может выдавать команды в модуль обнаружения транспортных средств, модуль интеллектуального анализа данных, модуль размещения транспортных средств, модуль уведомлений и модуль назначения для выполнения соответствующих операций независимо друг от друга либо совместно друг с другом. В качестве примеров процессора можно привести процессор на основе заказной схемы (ASIC), процессор с сокращенным набором команд (RISC), процессор с полным набором команд (CISC), программируемую логическую матрицу (FPGA) и т.д. Для специалиста в данной области техники должно быть понятно, что процессор совместим с несколькими операционными системами.

[83] В некоторых вариантах осуществления настоящей технологии память сервера 130 может содержать подходящую логику, схемотехнические решения, интерфейсы и/или коды, выполняемые аппаратными средствами, способные хранить одну или несколько команд, выполняемых процессором, модулем обнаружения транспортных средств, модулем интеллектуального анализа данных, модулем размещения транспортных средств, модулем уведомлений и модулем назначения. В памяти могут временно храниться история поездок, история вождения, информация о пассажире, информация о водителе и/или информация о транспортном средстве, полученные с сервера 130. В памяти также может храниться запрос на поездку, инициированный пассажиром 102. В качестве примеров памяти можно привести ОЗУ, ПЗУ, программируемое ПЗУ (ППЗУ), стираемое программируемое ПЗУ (СППЗУ) и т.д.

[84] В некоторых вариантах осуществления настоящей технологии модуль обнаружения транспортных средств может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций обнаружения транспортного средства. В не имеющем ограничительного характера примере модуль обнаружения транспортных средств может обнаруживать доступных водителей или транспортные средства, находящиеся в пределах порогового расстояния от пункта посадки (например, от первого пункта «A»), указанного в запросе на поездку. Доступные транспортные средства могут быть обнаружены на основе соответствующих текущих местоположений, полученных от устройства 108 водителя (и/или от встроенного в транспортное средство устройства). Модуль обнаружения транспортных средств, в числе прочего, может быть реализован с использованием одного или нескольких процессоров, таких как процессор на основе схемы ASIC, RISC-процессор, CISC-процессор и/или матрица FPGA.

[85] В некоторых вариантах осуществления настоящей технологии модуль интеллектуального анализа данных (data mining) может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций интеллектуального анализа данных. Например, модуль интеллектуального анализа данных может получать историю поездок и историю вождения из хранилища 140 данных на основе запроса на поездку и сохранять историю поездок и историю вождения в памяти сервера 130 и/или в хранилище 140 данных. Модуль интеллектуального анализа данных также может получать информацию о пассажире, информацию о водителе и/или информацию о транспортном средстве из хранилища 140 данных на основе запроса на поездку и сохранять информацию о пассажире, информацию о водителе и/или информацию о транспортном средстве в памяти. Модуль интеллектуального анализа данных может получать данные датчика от устройства 108 водителя и/или от встроенного в транспортное средство устройства, связанного с транспортным средством 110. Модуль интеллектуального анализа данных также может получать текущее состояние текущей поездки и сохранять текущее состояние в памяти. Модуль интеллектуального анализа данных может быть реализован с использованием одного или нескольких процессоров, таких как процессор на основе схемы ASIC, RISC-процессор, CISC-процессор, матрица FPGA и т.д.

[86] В некоторых вариантах осуществления настоящей технологии модуль уведомлений может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций для отображения интерфейсов заказа и уведомлений на устройстве 104 пассажира и на устройстве 108 водителя. Например, модуль уведомлений может отображать интерфейсы заказа и интерфейсы уведомлений на устройстве 104 пассажира с использованием программного приложения, выполняемого в устройстве 104 пассажира. Интерфейсы заказа и интерфейсы уведомлений могут представлять собой графические интерфейсы пользователя (GUI, Graphical User Interface), благодаря которым пассажир 102 может взаимодействовать с сервером 130 для инициирования запроса на поездку. Модуль уведомлений может быть реализован с использованием одного или нескольких процессоров, таких как процессор на основе схемы ASIC, RISC-процессор, CISC-процессор, матрица FPGA и т.д.

[87] В некоторых вариантах осуществления настоящей технологии модуль назначения может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций для выбора и назначения транспортного средства. Например, модуль назначения может выбирать и назначать водителя 114 для запроса на поездку пассажира 102 на основе множества факторов. Модуль назначения может быть реализован с использованием одного или нескольких процессоров, таких как процессор на основе схемы ASIC, RISC-процессор, CISC-процессор, матрица FPGA и т.д.

[88] В некоторых вариантах осуществления настоящей технологии трансивер может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие через сеть 120 связи отправлять данные различным серверам или устройствам, таким как устройство 104 пассажира, устройство 108 водителя, хранилище 140 данных и т.п. (или принимать данные от них). В качестве примеров трансиверов можно привести антенну, радиочастотный трансивер, беспроводной трансивер, трансивер Bluetooth и т.д. Трансивер может осуществлять связь с использованием различных протоколов проводной и беспроводной связи, таких как протокол управления передачей/интернет-протокол (TCP/IP, Transmission Control Protocol/Internet Protocol), протокол пользовательских дейтаграмм (UDP, User Datagram Protocol), протокол связи «Долгосрочное развитие» (LTE, Long Term Evolution) или любого их сочетания.

[89] В некоторых вариантах осуществления изобретения сервер 130 может содержать подходящую логику, схемотехнические решения, интерфейсы и/или код, выполняемый аппаратными средствами, позволяющие выполнять одну или несколько операций администрирования и хранения данных. Например, сервер 130 баз данных может администрировать и сохранять данные истории поездок пассажиров (например, пассажира 102), которые осуществляли поездки в одном или нескольких транспортных средствах, размещаемых поставщиком транспортных услуг, и данные истории вождения водителей (например, водителя 114), управляющих различными транспортными средствами, размещаемыми поставщиком транспортных услуг. История поездок пассажира 102 может указывать на данные поездок, выполненных ранее пассажиром 102 в транспортных средствах, размещаемых поставщиком транспортных услуг. Данные поездок, выполненных пассажиром 102, могут содержать предыдущие пункты посадки и высадки, частоту поездок между предыдущими пунктами посадки и высадки, предпочтения пассажира 102 относительно транспортных средств одного или нескольких видов (например, автономных, с ручным управлением, самоуправляемых) и т.п. История вождения водителя 114 может указывать на данные поездок, назначенных ранее водителю 114 сервером 130. Данные поездок, назначенных водителю 114, могут содержать предыдущие пункты посадки и высадки, продолжительность каждой поездки, рабочие часы водителя 114 или любые другие данные о поездках. История поездок и история вождения могут быть сохранены сервером 130 в хранилище 140 данных.

[90] В других вариантах осуществления изобретения сервер 130 дополнительно может администрировать и хранить информацию о пассажире в отношении пассажиров (например, в отношении пассажира 102), информацию о водителе в отношении водителей (например, в отношении водителя 114) и информацию о транспортном средстве в отношении транспортных средств (например, в отношении транспортного средства 110), размещаемых поставщиком транспортных услуг. Информация о пассажире в отношении пассажира 102 может содержать по меньшей мере имя, контактный номер телефона, адрес электронной почты или другую информацию, относящуюся к пассажиру 102. Информация о водителе в отношении водителя 114 может содержать имя, контактный номер телефона, адрес электронной почты, удостоверение личности, номинальный режим вождения и/или другую информацию, относящуюся к водителю 114. В одном примере, где водитель 114 владеет транспортным средством 110, размещаемым поставщиком транспортных услуг, информация о водителе для водителя 114 может дополнительно содержать номер транспортного средства для транспортного средства 110. Информация о транспортном средстве для транспортного средства 110 может содержать регистрационные номера, цвета, модели и/или другую информацию, относящуюся к транспортному средству 110.

Процедура назначения

[91] На фиг. 3 приведено схематическое представление цикла назначения в реальном масштабе времени. Можно предположить, что сервер 130 в течение интервала 302 времени получает группу 320 запросов. Группа 320 запросов содержит первый запрос 321 и второй запрос 322. Сервер 130 выполнен с возможностью сопоставления запросов из группы 320 запросов с доступными водителями из пула водителей. Как показано, сервер 130 может сопоставить запросы из группы 320 запросов с водителями из группы 310 водителей. Группа 310 водителей содержит первого водителя 311, второго водителя 312 и третьего водителя 313. Предполагается, что сервер 130 может заранее выбирать из пула водителей тех водителей, которые должны быть включены в группу 310 водителей, например, на основе географической близости и т.п.

[92] Сервер 130 может использовать алгоритм 300 назначения для определения того, какой запрос из группы 320 запросов должен быть назначен для какого водителя из группы 310 водителей. С этой целью алгоритм 300 назначения может назначать запрос для водителей на основе множества 330 факторов (критериев).

[93] Можно сказать, что в некоторых вариантах осуществления настоящей технологии алгоритм 300 назначения выполнен с возможностью получения входных данных для всех возможных пар запрос-водитель и выдачи данных, указывающих на назначенные пары запрос-водитель, определенные на основе множества 330 факторов. Предполагается, что алгоритм 300 назначения может быть реализован в виде Венгерского алгоритма без выхода за границы настоящей технологии.

[94] В представленном на фиг. 3 не имеющем ограничительного характера примере сервер 130 может определить первую пару 340 назначения, содержащую первого водителя 311 и первый запрос 321, и вторую пару 350 назначения, содержащую второго водителя 312 и второй запрос 322. Сервер 130 также может определить третьего водителя 313 как неназначенного водителя для текущего цикла назначения в реальном масштабе времени.

[95] Как более подробно описано ниже, разработчики разработали способы и системы, позволяющие уменьшить общее количество дорожно-транспортных происшествий с участием назначенных водителей. В некоторых вариантах осуществления настоящей технологии реализованы способ и сервер для обучения и/или использования алгоритма MLA для прогнозирования по меньшей мере одного фактора из множества 330 факторов, позволяющего сопоставлять более рискованные запросы с более надежными водителями и/или менее рискованные запросы с менее надежными водителями. Также можно сказать, что маршруты или запросы с оценками маршрута, указывающими на низкую безопасность, с большей вероятностью сопоставляются с водителями с оценками водителя, указывающими на высокую надежность.

Алгоритм MLA

[96] В общем случае алгоритмы MLA способны обучаться и осуществлять прогнозирование на основе данных. Алгоритмы MLA обычно используются для первоначального построения модели на основе обучающих входных данных, чтобы затем на основе данных выполнять прогнозы или принимать решения, выраженные в виде выходных данных, вместо исполнения статических машиночитаемых команд. Алгоритмы MLA обычно используются в качестве моделей оценивания, моделей ранжирования, моделей классификации и т.п.

[97] Алгоритмы MLA могут иметь различные структуры и топологии, предназначенные, среди прочего, для решения конкретных задач. Некоторые алгоритмы MLA могут быть реализованы в виде нейронных сетей (NN, Neural Network). В общем случае сеть NN состоит из взаимосвязанных групп искусственных нейронов, обрабатывающих информацию с использованием коннекционного подхода к вычислениям. Сети NN используются для моделирования сложных взаимосвязей между входными и выходными данными (без фактической информации об этих взаимосвязях) или для поиска закономерностей в данных. Сети NN сначала адаптируются на этапе обучения, когда они обеспечиваются известным набором входных данных и информацией для адаптации сети NN с целью генерирования надлежащих выходных данных (для ситуации, в отношении которой выполняется попытка моделирования). На этапе обучения сеть NN адаптируется к изучаемой ситуации и изменяет свою структуру так, чтобы быть способной обеспечивать адекватные предсказанные выходные данные для входных данных в новой ситуации (на основе того, что было выучено). Таким образом, вместо попытки определения сложных статистических распределений или математических алгоритмов для данной ситуации сеть NN пытается предоставить «интуитивный» ответ на основе «восприятия» этой ситуации. Сети NN широко используются во многих случаях, где важно получать выходные данные на основе входных данных, и менее важна или вовсе не важна информация о том, как получаются выходные данные. Например, сети NN широко используются для оптимизации распределения веб-трафика между серверами, а также при оценке данных, обработке данных, включая фильтрацию, кластеризацию, векторизацию и т.п.

[98] В некоторых вариантах осуществления настоящей технологии сервер 130 может применять алгоритм MLA, использующий библиотеку CatBoost в сочетании со способом логистической регрессии. В целом, библиотека CatBoost представляет собой библиотеку открытого программного обеспечения, которая разработана компанией Yandex™ и обеспечивает фреймворк для градиентного бустинга, который, среди прочего, пытается определять категориальные признаки с использованием альтернативы на основе перестановок, в отличие от других классических алгоритмов.

[99] На фиг. 4 представлена одна итерация обучения алгоритма 400 MLA прогнозированию оценок для соответствующих пар запрос-водитель. Сервер 130 выполнен с возможностью генерирования обучающих входных данных 410 для обучающей пары запрос-водитель. Обучающие входные данные 410 содержат оценку 412 водителя, связанную с обучающим водителем из обучающей пары запрос-водитель, и оценку 414 маршрута, связанную с обучающим запросом и маршрутом из обучающей пары запрос-водитель. Данные для генерирования обучающих входных данных 410 могут быть получены сервером 130 из хранилища 140 данных.

[100] Сервер 130 выполнен с возможностью генерирования оценки 412 водителя на основе зависящей от водителя информации. Оценка 412 водителя может указывать на манеру вождения водителя. В некоторых вариантах осуществления изобретения сервер 130 может использовать модель водителя для генерирования оценки 412 водителя на основе поведенческих данных о водителе и данных профиля водителя. Предполагается, что для генерирования оценки 412 водителя моделью водителя может использоваться история дорожно-транспортных происшествий водителя.

[101] В некоторых вариантах осуществления настоящей технологии зависящие от водителя признаки могут указывать на по меньшей мере часть из следующего: количество лет стажа вождения; наличие заранее заданного уровня опыта вождения; пользовательские рейтинги, связанные с предыдущими поездками, выполненными водителем; стиль вождения водителя, определенный на основе данных о транспортном средстве (например, от акселерометра); параметр, указывающий на то, как часто водитель превышает допустимую скорость; сигналы других пользователей, указывающие на опасное вождение; возраст транспортного средства, управляемого водителем.

[102] Сервер 130 выполнен с возможностью генерирования оценки 414 маршрута на основе зависящей от маршрута информации. В некоторых вариантах осуществления изобретения сервер 130 может определять отношение количества дорожно-транспортных происшествий на маршруте к длине маршрута. Сервер 130 также может определять такие отношения для соответствующих участков маршрута и генерировать оценку 414 маршрута в виде сочетания таких оценок участков.

[103] Сервер 130 выполнен с возможностью генерировать метку 420 для обучающих входных данных 410. Данные для генерирования метки 420 могут быть получены сервером 130 из хранилища 140 данных. Метка указывает на то, участвовал ли водитель из обучающей пары запрос-водитель в дорожно-транспортном происшествии в течение заранее заданного интервала времени после инициирования маршрута из обучающей пары запрос-водитель.

[104] В некоторых вариантах осуществления изобретения заранее заданный интервал времени равен одному часу. Например, метка 420 для обучающих входных данных 410 может соответствовать первому значению, если обучающий водитель участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени, и второму значению, если обучающий водитель не участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени.

[105] Предполагается, что заранее заданный интервал времени может быть больше или меньше интервала времени, требуемого для фактического выполнения обучающего маршрута. Например, если после завершения обучающим водителем обучающего маршрута с его участием произошло дорожно-транспортное происшествие в течение заранее заданного интервала времени, то обучающая метка указывает на то, что водитель из пары водитель-запрос участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени. Можно сказать, что в некоторых вариантах осуществления изобретения заранее заданный интервал не зависит от длины маршрута для конкретного маршрута и/или от времени, которое фактически требуется для выполнения конкретного маршрута.

[106] В некоторых вариантах осуществления изобретения предполагается, что использование зависящей от интервала обучающей метки может быть полезным на этапе обучения алгоритма 400 MLA. Разработчики настоящей технологии установили, что если обучающая метка указывает на участие водителя в дорожно-транспортном происшествии при выполнении соответствующего маршрута, то короткие маршруты, требующие меньше времени для выполнения, будут иметь приоритет перед длинными маршрутами, поскольку вероятность участия в дорожно-транспортных происшествиях на длинных маршрутах больше, чем на коротких маршрутах.

[107] Алгоритм 400 MLA выполнен с возможностью генерировать обучающую прогнозную оценку 450 на основе обучающих входных данных 410. Сервер 130 может сравнивать обучающую прогнозную оценку 450 с меткой 420. Сервер 130 может использовать сравнение для обучения алгоритма 400 MLA формированию оценок для пар запрос-водитель этапа использования в циклах назначения в реальном масштабе времени.

[108] Вкратце, в некоторых вариантах осуществления настоящей технологии обучающие данные для обучения алгоритма 400 MLA могут быть сформированы сервером на 130 основе данных, полученных из хранилища 140 данных. Например, сервер 130 может определить список ранее выполненных водителями онлайн-платформы запросов (и соответствующих маршрутов). Для обучающей пары запрос-водитель сервер 130 может сгенерировать оценку водителя и оценку маршрута на основе данных, полученных из хранилища 140 данных. В некоторых вариантах осуществления изобретения оценка маршрута может быть определена в виде сочетания зависящих от маршрута признаков, а оценка водителя может быть определена в виде сочетания зависящих от водителя признаков. В других вариантах осуществления изобретения сервер 130 может использовать зависящие от водителя признаки и модель водителя для генерирования оценки водителя, а зависящие от маршрута признаки и модель маршрута - для генерирования оценки маршрута. Сервер 130 может сгенерировать метку на основе временнóй информации, связанной с обучающей парой запрос-водитель. Например, сервер 130 может сгенерировать первое значение для метки, если водитель участвовал в дорожно-транспортном происшествии в течение заранее заданного интервала времени после инициирования запроса. Следует отметить, что заранее заданный интервал времени может начинаться (а) в момент времени, когда сервер 130 получает от устройства водителя подтверждающее уведомление, указывающее на согласие водителя с маршрутом, и/или (б) в момент времени, когда сервер 130 получает указание на факт посадки пассажира в соответствующем пункте посадки. Таким образом, алгоритм MLA обучается прогнозированию для пары запрос-водитель (маршрут-водитель) прогнозной оценки, указывающей на вероятность участия водителя с данной оценкой в дорожно-транспортном происшествии в течение заранее заданного интервала времени после инициирования запроса, содержащего маршрут с оценкой маршрута.

[109] В некоторых вариантах осуществления изобретения предполагается, что использование зависящей от интервала обучающей метки может быть полезным на этапе обучения алгоритма MLA. Разработчики настоящей технологии установили, что если обучающая метка указывает на участие водителя в дорожно-транспортном происшествии при выполнении соответствующего маршрута (т.е. без заранее заданного ограничения по времени, такого как один час), то короткие маршруты, требующие меньше времени для выполнения, будут иметь приоритет перед длинными маршрутами, поскольку вероятность участия в дорожно-транспортных происшествиях на длинных маршрутах больше, чем на коротких маршрутах.

[110] На фиг. 5 представлена одна итерация этапа использования алгоритма 400 MLA. Сервер 130 выполнен с возможностью генерирования текущей пары-кандидата 510 запрос-водитель, содержащей запрос или маршрут из группы 320 запросов (см. фиг. 3) и водителя из группы 310 водителей (см. фиг. 3). Сервер 130 выполнен с возможностью генерирования оценки 512 водителя в отношении водителя подобно тому, как сервер 130 формирует оценку 412 водителя во время обучения, и генерирования оценки 514 маршрута в отношении маршрута подобно тому, как сервер 130 формирует оценку 414 маршрута во время обучения.

[111] Оценка 512 водителя и оценка 514 маршрута вводятся в обученный алгоритм 400 MLA, способный генерировать прогнозную оценку 550 этапа использования для соответствующей пары запрос-водитель этапа использования. Сервер 130 может использовать прогнозную оценку 550 в качестве части множества 330 факторов (см. фиг. 3), на основе которого алгоритм 300 назначения назначает целевые пары запрос-водитель.

[112] Можно предположить, что в группе 310 водителей наиболее надежным водителем является первый водитель, менее надежным водителем является третий водитель, а второй водитель располагается между наиболее надежным водителем и менее надежным водителем. Также можно предположить, что в группе 320 запросов наиболее безопасный маршрут связан со вторым запросом 322, а менее безопасный маршрут связан с первым запросом 321. В этом случае сервер 130 может сгенерироватьмножество факторов для всех возможных пар запрос-водитель и выбрать первую пару 340 запрос-водитель, содержащую наиболее надежного водителя и менее безопасный маршрут, и вторую пару 350 запрос-водитель, содержащую менее надежного водителя и наиболее безопасный маршрут. Предполагается, что сервер 130 может определить второго водителя 313 как несопоставленного водителя. Сервер 130 может обеспечить доступность несопоставленного водителя для следующего цикла назначения в реальном масштабе времени.

[113] Вкратце, в некоторых вариантах осуществления настоящей технологии алгоритм 300 назначения выполнен с возможностью анализа всех потенциальных пар запрос-водитель для текущей группы запросов и текущей группы водителей. Следует отметить, что алгоритм 300 назначения оптимизируется на основе множества факторов для определения подлежащих назначению пар запрос-водитель из числа всех потенциальных пар запрос-водитель. Предполагается, что в некоторых вариантах осуществления изобретения в дополнение к оптимизации алгоритма 300 назначения с целью уменьшения времени назначения водителей для пассажиров алгоритм 300 назначения также оптимизируется для уменьшения общего количества дорожно-транспортных происшествий с участием водителей на основе зависящих от пары прогнозируемых оценок, формируемых алгоритмом 400 MLA.

[114] На фиг. 6 приведена блок-схема способа 600, выполняемого сервером 130, представленным на фиг. 1. Далее подробно описаны различные шаги способа 600.

Шаг 602: получение сервером данных о маршруте, связанных со множеством маршрутов, запрошенных пользователями цифрового транспортного сервиса.

[115] Способ 600 начинается с шага 602, на котором сервер 130 получает данные о маршруте, связанные со множеством маршрутов, запрошенных пользователями цифрового транспортного сервиса. Данные о маршруте могут быть получены из хранилища 140 данных. Данные о маршруте могут быть определены на основе группы запросов на поездку, находящихся в данный момент времени в очереди на отправку. Следует отметить, что запрос на поездку может быть связан с одним или несколькими маршрутами.

Шаг 604: генерирование сервером множества оценок маршрута для множества маршрутов на основе данных о маршруте, при этом оценка маршрута указывает на степень безопасности маршрута из множества маршрутов.

[116] Способ 600 продолжается на шаге 604, на котором сервер 130 формирует множество оценок маршрута для множества маршрутов на основе данных о маршруте. Оценка маршрута, например, оценка 514 маршрута, указывает на степень безопасности соответствующего маршрута из множества маршрутов.

[117] Например, сервер 130 выполнен с возможностью генерирования оценки 414 маршрута на основе зависящей от маршрута информации. В некоторых вариантах осуществления изобретения сервер 130 может определять отношение количества дорожно-транспортных происшествий на маршруте к длине маршрута. Сервер 130 также может определять такие отношения для соответствующих участков маршрута и генерировать оценку 414 маршрута в виде сочетания таких оценок участков.

Шаг 606: получение сервером данных о водителе, связанных со множеством водителей цифрового транспортного сервиса.

[118] Способ 600 продолжается на шаге 606, на котором сервер 130 получает данные о водителе, связанные со множеством водителей для поездок, запрошенных пользователями цифрового транспортного сервиса. Данные о водителе могут быть получены из хранилища 140 данных. Данные о водителе могут быть определены на основе группы водителей, доступных в цифровом транспортном сервисе.

Шаг 608: генерирование сервером множества оценок водителя для множества водителей на основе данных о водителе, при этом оценка водителя указывает на манеру вождения водителя из множества водителей.

[119] Способ 600 продолжается на шаге 608, на котором сервер 130 формирует множество оценок водителя для множества водителей на основе данных о водителе. Оценка водителя, например, оценка 512 водителя, указывает на манеру вождения соответствующего водителя из множества водителей.

[120] Например, сервер 130 выполнен с возможностью генерирования оценки 412 водителя на основе зависящей от водителя информации. Оценка 412 водителя может указывать на манеру вождения водителя. В некоторых вариантах осуществления изобретения сервер 130 может использовать модель водителя для генерирования оценки 412 водителя на основе поведенческих данных о водителе и данных профиля водителя. Предполагается, что для генерирования оценки 412 водителя моделью водителя может использоваться история дорожно-транспортных происшествий водителя.

Шаг 610: для пары, содержащей маршрут и водителя - генерирование сервером, использующим алгоритм MLA, прогнозной оценки, указывающей на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута.

[121] Способ 600 продолжается на шаге 610, на котором сервер 130 формирует прогнозную оценку для пары маршрут-водитель. Например, сервер 130 может использовать алгоритм 400 MLA для генерирования прогнозной оценки 550 для пары 510. Прогнозируемая оценка 550 указывает на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута. В некоторых вариантах осуществления изобретения алгоритм MLA может представлять собой модель логистической регрессии. В других вариантах осуществления изобретения алгоритм MLA может представлять собой модель попарного ранжирования.

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

[122] Способ 600 продолжается на шаге 612, на котором сервер 130 назначает маршрут для водителя на основе прогнозной оценки. Например, прогнозируемая оценка 550 может использоваться среди других оценок в качестве входных данных для алгоритма назначения для соответствующей пары запрос-водитель. Алгоритм назначения может получать в качестве входных данных множество оценок для всех (или для некоторых) возможных пар водителей из группы водителей и запросов из группы запросов. В некоторых вариантах осуществления изобретения алгоритм назначения может представлять собой Венгерский алгоритм. В других вариантах осуществления изобретения алгоритм назначения может получать для обработки входные данные на основе пар.

[123] Очевидно, что не все упомянутые в данном описании технические эффекты должны присутствовать в каждом варианте осуществления настоящей технологии.

[124] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. Предшествующее описание приведено лишь в иллюстративных целях, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.

Похожие патенты RU2831623C2

название год авторы номер документа
НАВИГАТОР ДЛЯ ОБЩЕСТВЕННОГО ТРАНСПОРТА 2013
  • Бик Рой
  • Эрец Нир
  • Эврон Ярон
RU2595551C1
СПОСОБ И СИСТЕМА ДЛЯ ФОРМИРОВАНИЯ ТРАЕКТОРИИ ДЛЯ БЕСПИЛОТНОГО АВТОМОБИЛЯ (SDC) 2019
  • Отлига Виктор Игоревич
RU2750243C2
СПОСОБ И СИСТЕМА ДЛЯ ОБУЧЕНИЯ АЛГОРИТМА МАШИННОГО ОБУЧЕНИЯ ПРОГНОЗИРОВАНАНИЮ ОЦЕНКИ ВИДИМОСТИ 2022
  • Стебелев Максим Ильич
  • Ворожцов Артем Викторович
  • Калинин Павел Владимирович
RU2814079C1
Способ и устройство управления беспилотным автомобилем 2021
  • Яскевич Сергей
  • Федоров Евгений
RU2805539C2
Способ и сервер для определения обучающего набора для обучения алгоритма машинного обучения (MLA) 2020
  • Дорогуш Анна Вероника Юрьевна
  • Алипов Вячеслав Вячеславович
  • Кручинин Дмитрий Андреевич
  • Оганесян Дмитрий Алексеевич
RU2817726C2
СПОСОБ И СИСТЕМА ГЕНЕРИРОВАНИЯ ПРИЗНАКА ДЛЯ РАНЖИРОВАНИЯ ДОКУМЕНТА 2018
  • Сафронов Александр Валерьевич
  • Завьялов Василий Владимирович
RU2733481C2
СИСТЕМЫ И СПОСОБЫ ОПРЕДЕЛЕНИЯ ПОТЕНЦИАЛЬНОГО ЗЛОНАМЕРЕННОГО СОБЫТИЯ 2018
  • Ван, Синь
  • Фэн, Пэнчэн
  • Ли, Сяотан
  • Чжань, Вэньши
  • Чжан, Шаофэй
  • Цзян, Юэ
RU2768512C1
СПОСОБ И СИСТЕМА ПОСТРОЕНИЯ ПОИСКОВОГО ИНДЕКСА С ИСПОЛЬЗОВАНИЕМ АЛГОРИТМА МАШИННОГО ОБУЧЕНИЯ 2018
  • Филонов Егор Андреевич
  • Коростелев Иван Владимирович
  • Акулов Ярослав Викторович
RU2720954C1
СПОСОБЫ И ПРОЦЕССОРЫ ДЛЯ УПРАВЛЕНИЯ РУЛЕНИЕМ БЕСПИЛОТНЫМ АВТОМОБИЛЕМ 2019
  • Волчек Андрей Юрьевич
RU2751734C2
СПОСОБ И СИСТЕМА ДЛЯ ОПРЕДЕЛЕНИЯ РЕЗУЛЬТАТА ДЛЯ ЗАДАЧИ, ВЫПОЛНЯЕМОЙ В КРАУДСОРСИНГОВОЙ СРЕДЕ 2019
  • Друца Алексей Валерьевич
RU2744038C2

Иллюстрации к изобретению RU 2 831 623 C2

Реферат патента 2024 года СПОСОБЫ И СЕРВЕРЫ ДЛЯ ГЕНЕРИРОВАНИЯ ПРОГНОЗНОЙ ОЦЕНКИ АЛГОРИТМОМ МАШИННОГО ОБУЧЕНИЯ

Изобретение относится к способу и серверу для назначения маршрута для водителя на основе прогнозной оценки, генерируемой алгоритмом машинного обучения (MLA). Техническим результатом является уменьшение количества дорожно-транспортных происшествий с участием выбранных водителей. Способ назначения маршрута для водителя на основе прогнозной оценки, генерируемой MLA, включает в себя: получение данных о маршруте; генерирование множества оценок маршрута для множества маршрутов на основе данных о маршруте; получение данных о водителе; генерирование множества оценок водителя для множества водителей на основе данных о водителе; генерирование для пары маршрут-водитель алгоритмом MLA прогнозной оценки, указывающей на вероятность участия водителя в дорожно-транспортном происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута; назначение маршрута для водителя, и передачу на устройство водителя. 2 н. и 6 з.п. ф-лы, 6 ил.

Формула изобретения RU 2 831 623 C2

1. Способ назначения маршрута для водителя на основе прогнозной оценки, генерируемой алгоритмом машинного обучения (MLA), реализуемым сервером, обеспечивающим цифровой транспортный сервис, при этом сервер выполнен с возможностью электронной связи со множеством электронных устройств, связанных с пользователями и с водителями цифрового транспортного сервиса, при этом способ выполняется сервером и включает в себя:

- получение (602) сервером данных о маршруте, связанных со множеством маршрутов, запрошенных пользователями цифрового транспортного сервиса;

- генерирование (604) сервером множества оценок маршрута для множества маршрутов на основе данных о маршруте, при этом оценка маршрута указывает на степень безопасности маршрута из множества маршрутов;

- получение (606) сервером данных о водителе, связанных со множеством водителей цифрового транспортного сервиса;

- генерирование (608) сервером множества оценок водителей для множества водителей на основе данных о водителе, при этом оценка водителя указывает на манеру вождения водителя из множества водителей;

для пары, содержащей маршрут и водителя:

- генерирование (610) сервером, использующим алгоритм MLA, прогнозной оценки, указывающей на вероятность участия водителя в дорожно-транспортом происшествии на маршруте в течение заранее заданного интервала времени после инициирования маршрута;

- назначение (612) на основе прогнозной оценки сервером, использующим алгоритм назначения, маршрута для водителя, и передачу на устройство (108) водителя назначенного маршрута, подлежащего выполнению с целью предоставления транспортных услуг пользователю.

2. Способ по п. 1, отличающийся тем, что генерирование оценки маршрута включает в себя определение сервером отношения количества дорожно-транспортных происшествий на маршруте к длине маршрута.

3. Способ по п. 1, отличающийся тем, что генерирование оценки водителя включает в себя генерирование сервером, использующим модель водителя, оценки водителя на основе информации о поведении водителя и данных профиля водителя.

4. Способ по п. 1, отличающийся тем, что он дополнительно включает в себя определение сервером значения времени назначения для соответствующей пары, а назначение дополнительно основывается на значении времени назначения.

5. Способ по п. 1, отличающийся тем, что алгоритм MLA представляет собой модель логистической регрессии.

6. Способ по п. 1, отличающийся тем, что алгоритм MLA представляет собой модель попарного ранжирования.

7. Способ по п. 1, отличающийся тем, что алгоритм назначения представляет собой Венгерский алгоритм.

8. Сервер для назначения маршрута для водителя на основе прогнозной оценки, генерируемой алгоритмом машинного обучения (MLA), реализуемым сервером, обеспечивающим цифровой транспортный сервис и коммуникативно связанным со множеством электронных устройств, связанных с пользователями и водителями цифрового транспортного сервиса, при этом сервер выполнен с возможностью осуществления способа по любому из пп. 1-7.

Документы, цитированные в отчете о поиске Патент 2024 года RU2831623C2

US 9927252 B1, 27.03.2018
US 11335200 B2, 17.05.2022
US 9898759 B2, 20.02.2018
УСТРОЙСТВО ОЦЕНКИ КАЧЕСТВА ВОЖДЕНИЯ АВТОМОБИЛЯ 2005
  • Музыря Никита Игоревич
  • Минаков Андрей Леонидович
  • Амасьян Андроник Петрович
  • Раков Андрей Феофанович
RU2308385C2
СИСТЕМА И СПОСОБ ДЛЯ ЗАКАЗА ТРАНСПОРТНОГО СРЕДСТВА 2014
  • Смирин Шахар
RU2696323C2
СПОСОБ И СИСТЕМА ДЛЯ ИНДИВИДУАЛИЗИРОВАННЫХ УСЛУГ ПО ТРЕБОВАНИЮ 2017
  • Ван Кевин Суньлинь
RU2754066C2

RU 2 831 623 C2

Авторы

Гладких Екатерина Анатольевна

Шульчевский Дмитрий Игоревич

Даты

2024-12-11Публикация

2022-09-05Подача