Контроллер, способ управления и программа



Контроллер, способ управления и программа
Контроллер, способ управления и программа
Контроллер, способ управления и программа
Контроллер, способ управления и программа
Контроллер, способ управления и программа
Контроллер, способ управления и программа
G08B1/00 - Сигнальные устройства или устройства вызова; командные телеграфные аппараты; системы тревожной сигнализации (сигнальные устройства на транспортных средствах B60Q, B62D 41/00; железнодорожные сигнальные системы или устройства B61L; на велосипедах B62J 3/00, B62J 6/00; сейфы или несгораемые шкафы, оборудованные устройствами сигнализации E05G; сигнальные устройства и системы тревожной сигнализации в шахтах E21F 17/18; измерительные датчики см. в соответствующих подклассах G01; системы управления дорожным движением G08G; визуальные индикаторные средства G09; звуковые сигнальные устройства G10; радиотехнические устройства вызова или системы вызова с использованием

Владельцы патента RU 2694747:

ГУГЛ ИНК. (US)

Изобретение относится к способам и вычислительным системам уведомления пользователя о его/ее будущем действии. Технический результат заключается в возможности сберегать энергию и использовать меньше мощности аккумуляторных батарей. Такой результат достигается за счет предсказания, посредством вычислительной системы, будущего действия, которое должно быть совершено пользователем вычислительного устройства, при этом будущее действие включает в себя прибытие в первое местоположение к будущему времени; определения, на основе контекстной информации, связанной с вычислительным устройством, текущего действия, совершаемого пользователем, при этом текущее действие включает в себя поиск информации, относящейся ко второму местоположению, которое отличается от первого местоположения; определения на основе текущего действия степени правдоподобия того, сможет ли пользователь совершить будущее действие; предсказания, на основе степени правдоподобия, что пользователь не сможет совершить будущее действие; и отправки на вычислительное устройство информации, указывающей, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие. 3 н. и 6 з.п. ф-лы, 5 ил.

 

УРОВЕНЬ ТЕХНИКИ

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

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

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

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

ПЕРЕЧЕНЬ ФИГУР ЧЕРТЕЖЕЙ

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

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

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

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

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

ПОДРОБНОЕ ОПИСАНИЕ

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

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

[0013] На Фиг. 1 приведена концептуальная схема, иллюстрирующая систему 100 в качестве примера системы для предсказания того, сможет ли пользователь вычислительного устройства 110 совершить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия. Система 100 включает в себя информационную серверную систему (ʺISSʺ) 160, сообщающуюся с вычислительным устройством 110 через сеть 130. ISS 160 может обнаруживать ожидаемые действия (например, вероятные пункты назначения), связанные с пользователем вычислительного устройства 110, и затем наблюдать поведение пользователя и вычислительного устройства 110 (например, использование сервиса определения местоположения) и вмешиваться путем предупреждения вычислительного устройства 110, когда ISS 160 считает, что, скорее всего, наблюдается ошибка в поведении. ISS 160 может использовать модель для предсказания пункта назначения пользователя вычислительного устройства 110 и наблюдать фактическое поведение пользователя с использованием сервиса отслеживания местоположения или истории местоположений. ISS 160 может сравнивать наблюдаемое поведение с ожидаемым поведением, и если ISS 160 определяет, что пользователь не предпринимает действий, которые приведут к ожидаемому поведению, ISS 160 может уведомить вычислительное устройство 110, чтобы предупредить пользователя о том, что он или она, возможно, делают ошибку, которая может воспрепятствовать выполнению пользователем ожидаемого действия.

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

[0015] Каждое из ISS 160 и вычислительного устройства 110 может быть в рабочем состоянии подключено к сети 130 с использованием соответственных сетевых линий связи. Линии связи, подключающие вычислительное устройство 110 и ISS 160 к сети 130, могут представлять собой Ethernet, ATM или другие типы сетевых соединений, и такие соединения могут быть беспроводными и/или проводными соединениями.

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

[0017] Вычислительное устройство 110 включает в себя устройство пользовательского интерфейса (UID) 112 и модуль 120 пользовательского интерфейса (UI). Кроме того, вычислительное устройство 110 включает в себя модуль 122 уведомления. Модули 120-122 могут выполнять описываемые операции с использованием программного обеспечения, аппаратных средств, встроенного программного обеспечения (firmware) или сочетания аппаратных средств, программного обеспечения и встроенного программного обеспечения, находящихся и/или исполняющихся в соответственном вычислительном устройстве 110. Вычислительное устройство 110 может исполнять модули 120-122 с помощью множественных процессоров или множественных устройств. Вычислительное устройство 110 может исполнять модули 120-122 в качестве виртуальных машин, исполняющихся на базовых аппаратных средствах. Модули 120-122 могут исполняться в качестве одного или более сервисов операционной системы или вычислительной платформы. Модули 120-122 могут исполняться в качестве одной или более исполняемых программ на прикладном уровне вычислительной платформы.

[0018] UID 112 вычислительного устройства 110 может функционировать в качестве устройства вывода и/или ввода для вычислительного устройства 110. UID 112 может быть реализовано с использованием разнообразных технологий. Например, UID 112 может функционировать в качестве устройства ввода с использованием экранов ввода, чувствительных к присутствию, таких как резистивные сенсорные экраны, сенсорные экраны, основывающиеся на поверхностных акустических волнах, емкостные сенсорные экраны, проекционные емкостные сенсорные экраны, экраны, чувствительные к нажатию, сенсорные экраны, основывающиеся на распознавании акустических импульсов, или другая технология чувствительных к присутствию дисплеев. Кроме того, UID 112 может включать в себя технологии микрофонов, технологии инфракрасных датчиков или любые другие технологии устройств ввода для использования при приеме пользовательского ввода.

[0019] UID 112 может функционировать в качестве устройства вывода (например, дисплея) с использованием каких-либо одного или более дисплейных устройств, таких как жидкокристаллические дисплеи (LCD), растровые дисплей, дисплеи на основе светоизлучающих диодов (LED), дисплеи на основе органических светоизлучающих диодов (OLED), электронные чернила (e-ink) или подобные монохромные или цветные дисплеи, приспособленные для вывода видимой информации для пользователя вычислительного устройства 110. Помимо этого, UID 112 может включать в себя технологии громкоговорителей, технологии тактильной обратной связи или другие технологии устройств вывода для использования при выводе информации пользователю.

[0020] Каждый UID 112 может включать в себя соответственные дисплеи, чувствительные к присутствию, которые могут принимать тактильный ввод от пользователя вычислительного устройства 110. UID 112 может принимать указания тактильного ввода посредством обнаружения одного или более жестов со стороны пользователя (например, пользователь касается или указывает на одно или более мест в UID 112 с помощью пальца или пера-стилуса). UID 112 может представлять пользователю вывод, например, на соответственных чувствительных к присутствию дисплеях. UID 112 может представлять выходные данные в виде графического пользовательского интерфейса (например, пользовательского интерфейса 114), который может быть ассоциирован с функциональными возможностями, предоставляемыми вычислительным устройством 110. Например, UID 112 может представлять разнообразные пользовательские интерфейсы (например, пользовательский интерфейс 114), относящиеся к поисковым функциям, предоставляемым модулем 122 уведомления, или другим функциональным возможностям вычислительных платформ, операционных систем и/или сервисов, исполняющихся в или доступных с вычислительного устройства 110 (например, приложений обмена электронными сообщениями, приложениями Интернет-браузера, операционных систем мобильных или настольных устройств и т.п.).

[0021] Модуль 120 UI может управлять пользовательскими взаимодействиями с UID 112 и другими компонентами вычислительного устройства 110. Модуль 120 UI может предписывать UID 112 выводить пользовательский интерфейс, такой как пользовательский интерфейс 114 (или другие иллюстративные пользовательские интерфейсы) для отображения, по мере того как пользователь вычислительного устройства 110 просматривает выходные данные и/или подает ввод в UID 112. Модуль 120 UI и UID 112 могут получать одно или более указаний ввода от пользователя, когда пользователь взаимодействует с пользовательским интерфейсом, в разные моменты времени и когда пользователь и вычислительное устройство 110 находятся в разных местоположениях. Модуль 120 UI и UID 112 могут интерпретировать вводы, обнаруженные на UID 112, и могут ретранслировать информацию о вводах, обнаруженных на UID 112, в одну или более ассоциированных платформ, операционных систем, приложений и/или сервисов, исполняющихся на вычислительном устройстве 110, чтобы, например, обеспечить выполнение функций вычислительным устройством 110.

[0022] Модуль 120 UI может принимать информацию и инструкции от одной или более ассоциированных платформ, операционных систем, приложений и/или сервисов, исполняющихся на вычислительном устройстве 110 и/или одной или более вычислительных системах, таких как ISS 160. Кроме того, модуль 120 UI может выступать в роли промежуточного звена между одной или более ассоциированными платформами, операционными системами, приложениями и/или сервисами, исполняющимися на вычислительном устройстве 110, и разнообразными устройствами вывода из состава вычислительного устройства 110 (например, громкоговорителями, LED индикаторами, звуковыми или электростатическими тактильными устройствами вывода и т.п.) для формирования выходных данных (например, графики, вспышки света, звука, тактильного отклика и т.д.) с помощью вычислительного устройства 110.

[0023] В примере по Фиг. 1, пользовательский интерфейс 114 представляет собой графический пользовательский интерфейс, ассоциированный с сервисом предсказания, который обеспечивается со стороны ISS 160 и доступ к которому осуществляется вычислительным устройством 110. Как описывается более подробно ниже, пользовательский интерфейс 114 включает в себя графическую информацию (например, текст), представляющую собой информацию, которую ISS 160 предсказывает и которая может потребоваться пользователю вычислительного устройства 110 в текущее время, чтобы выполнять будущее задание или чтобы, по меньшей мере, избежать ошибки при совершении текущего действия, которое препятствует выполнению пользователем будущего задания. Пользовательский интерфейс 114 может включать в себя различные другие типы графических индикаций, такие как визуальные обозначения предсказанной информации, которая может понадобиться пользователю вычислительного устройства 110 для выполнения будущего задания или, по меньшей мере, во избежание сделать ошибку при совершении текущего действия, которое препятствует выполнению пользователем будущего задания. Модуль 120 UI может предписать UID 112 выводить пользовательский интерфейс 114 на основе данных, которые модуль 120 UI принимает через сеть 130 от ISS 160. Модуль 120 UI может принимать графическую информацию (например, текстовые данные, данные изображений и т.д.) для представления пользовательского интерфейса 114 в качестве входных данных из ISS 160 наряду с инструкциями из ISS 160 для представления графической информации в пределах пользовательского интерфейса 114 на UID 112.

[0024] Модуль 122 уведомления выполняет функции, относящиеся к управлению уведомлениями, для вычислительного устройства 110. Модуль 122 уведомления может принимать данные уведомлений от приложений и сервисов, исполняющихся на вычислительном устройстве 110, а также данные, связанные с уведомлениями, из ISS 160 и, в качестве реакции, может выдавать индикацию информации, содержащейся в данных уведомлений, для представления на UID 112. Модуль 122 уведомления может принимать данные уведомлений от сервиса предсказания, который обеспечивается со стороны ISS 160 и к которому вычислительное устройство 110 осуществляет доступ. Сервис предсказания может посылать данные уведомлений в модуль 122 уведомления, которые включают в себя информацию о корректирующем действии, которое пользователь вычислительного устройства 110 мог бы предпринять, чтобы скорректировать текущее действие пользователя и гарантировать, что пользователь совершит будущее действие. Модуль 122 уведомления может выдавать информацию об этом корректирующем действии в модуль 120 UI для представления на UID 112 (например, в качестве пользовательского интерфейса 114).

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

[0026] ISS 160 представляет собой любую подходящую удаленную вычислительную систему, такую как один или более настольных компьютеров, компьютеров-ноутбуков, мейнфреймов, серверов, систем облачных вычислений и т.п., выполненных с возможностью посылать и принимать информацию как в сеть, такую как сеть 130, так и из нее. ISS 160 вмещает (или, по меньшей мере, предоставляет доступ к) как поисковую систему для поиска информации, так и систему предсказания для предсказания того, сможет ли пользователь вычислительного устройства 110, для конкретного контекста, совершить будущее действие.

[0027] Вычислительное устройство 110 может сообщаться с ISS 160 через сеть 130 для доступа к поисковой системе и системе предсказания, предоставляемым ISS 160. В некоторых примерах, ISS 160 представляет собой систему облачных вычислений, которая предоставляет сервисы поиска и предсказания через сеть 130 одному или более вычислительным устройствам 110, которые осуществляют доступ к сервисам поиска и предсказания посредством доступа к облаку, предоставляемому со стороны ISS 160.

[0028] В примере по Фиг. 1, ISS 160 включает в себя модуль 162 контекста и модуль 164 предсказания. Совместно, модули 162 и 164 обеспечивают сервис предсказания, доступный вычислительному устройству 110 и другим вычислительным устройствам, подсоединенным к сети 130, для приема полезной информации которую ISS 160 предсказывает в качестве той, что будет представлять интерес для пользователя. Модули 162 и 164 могут выполнять операции для построения модели пользовательского поведения для предсказания того, когда пользователь вычислительного устройства 110 может делать ошибку (например, отклоняясь от ожидаемого поведения), которая потенциально может иметь большое влияние на его жизнь.

[0029] Модули 162 и 164 могут выполнять описываемые операции с использованием программного обеспечения, аппаратных средств, встроенного программного обеспечения или сочетания программного обеспечения, аппаратных средств и встроенного программного обеспечения, находящихся и/или исполняющихся в ISS 160. ISS 160 может исполнять модули 162 и 164 с помощью множественных процессоров или множественных устройств. ISS 160 может исполнять модули 162 и 164 в качестве виртуальных машин, исполняющихся на базовых аппаратных средствах. Модули 162 и 164 могут исполняться в качестве одного или более сервисов операционной системы или вычислительной платформы. Модули 162 и 164 могут исполняться в качестве одной или более исполняемых программ на прикладном уровне вычислительной платформы.

[0030] Термин ʺконтекстная информацияʺ, в том виде как он используется по всему настоящему раскрытию, используется для описания информации, которая может использоваться вычислительной системой и/или вычислительным устройством, такими как информационная серверная система 160 и вычислительное устройство 110, для задания одной или более физических и/или виртуальных характеристик окружения, ассоциированных с вычислительными устройствами и/или пользователями вычислительных устройств, в дополнение к одному или более наблюдаемым физическим или виртуальным действиям, совершаемым пользователями вычислительных устройств в конкретное время. Иными словами, контекстная информация представляет собой любые данные, которые могут использоваться вычислительным устройством и/или вычислительной системой, чтобы определить ʺпользовательский контекстʺ, показывающий обстоятельства, которые образуют виртуальное и/или физическое восприятие, которое пользователь имеет в конкретном месте в конкретное время.

[0031] Примеры контекстной информации включают в себя прошлые, текущие и будущие физические местонахождения, степени движения, величины изменения, связанного с движением, погодные условия, условия дорожного движения, шаблоны передвижения, шаблоны движения, использование приложений, календарную информацию, историю покупок, историю просмотра Интернета и т.п. В некоторых примерах контекстная информация может включать в себя информацию с датчиков, полученную одним или более датчиками (например, гироскопами, акселерометрами, датчиками близости) из состава вычислительных устройств, таких как вычислительное устройство 110, информацию радиопередачи, полученную с одного или более блоков связи и/или радиостанций (например, Глобальной системы определения местоположения (GPS), сотовых, Wi-Fi) из состава вычислительных устройств, информации, полученной одним или более устройствами ввода (например, камерами, микрофонами, клавиатурами, сенсорными панелями, мышами) из состава вычислительных устройств, и информацию идентификаторов сетей/устройств (например, имя сети, адрес Интернет-протокола устройства). В некоторых примерах контекстная информация может включать в себя коммуникационную информацию, такую как информация, извлеченная из сообщений электронной почты, текстовых сообщений, сообщений голосовой почты или голосовых бесед, календарных записей, списков задач, информации, связанной с социальными сетями, и любой другой информации о пользователе или вычислительном устройстве, которое может поддерживать определение пользовательского контекста.

[0032] Модуль 162 контекста может анализировать контекстную информацию, связанную с вычислительным устройством 110, для определения контекста вычислительного устройства 110. Контекст вычислительного устройства 110 может описывать одну или более характеристик, связанных с пользователем вычислительного устройства 110 и его или ее физическим и/или виртуальным окружением в различных местонахождениях и в разное время. Например, модуль 162 контекста может определять, как часть контекста вычислительного устройства 110, физическое местоположение, связанное с вычислительным устройством 110 в конкретное время, основываясь на контекстной информации, ассоциированной с вычислительным устройством 110 с этого конкретного времени. По мере того, как контекстная информация меняется (например, на основе информации с датчиков, показывающей перемещение со временем), модуль 162 контекста может обновлять физическое местоположение в определенном контексте вычислительного устройства 110.

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

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

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

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

[0037] Модуль 162 контекста может использовать истории прошлых местоположений совместно с модулем 164 предсказания, и модуль 164 предсказания может использовать истории прошлых местоположений для более качественного предсказания, логического вывода или подтверждения текущего действия, совершаемого пользователем в конкретное время. Модуль 162 контекста может отвечать на запрос от модуля 164 предсказания из состава ISS 160 касаемо текущего контекста, ассоциированного с вычислительным устройством 110, и/или будущего контекста, ассоциированного с вычислительным устройством 110, посредством вывода данных в модуль 164 предсказания, который задает текущий или будущий контекст вычислительного устройства 110.

[0038] Модуль 164 предсказания изучает и предсказывает текущие и будущие действия пользователей вычислительных устройств, таких как вычислительное устройство 110, для различных контекстов. Модуль 164 предсказания может предсказывать, на основе текущего контекста, принятого от модуля 162 контекста, что делает пользователь для текущего контекста, и предсказывать, на основе будущего контекста, принятого от модуля 162 контекста, что будет делать пользователь для будущего контекста.

[0039] В качестве части сервиса предсказания, доступ к которому осуществляется вычислительным устройством 110, модуль 164 предсказания может автоматически выдавать данные уведомления или другую информацию в модуль 122 уведомления из состава вычислительного устройства 110 для предупреждения пользователя о коррекции, которую пользователь мог бы предпринять по отношению к текущему действию в качестве пути гарантировать то, что будущее действие будет совершено. Говоря по-другому, модуль 164 предсказания может определять, приведет ли текущее действие, выполняемое пользователем в текущем контексте, с большей или меньшей вероятностью к тому, что пользователь сможет выполнить будущее действие в будущем контексте.

[0040] Модуль 164 предсказания описывается более подробно отношении дополнительных фигур. Вкратце, модуль 164 предсказания может выполнять одну или более технологий машинного обучения для изучения и моделирования действий, которые пользователи вычислительного устройства 110 и прочих вычислительных устройств в типичном случае совершают для различных контекстов. Через изучение и моделирование действий для различных контекстов, модуль 164 предсказания может генерировать одно или более правил для предсказания действий, которые пользователь вычислительного устройства 110 совершает для конкретного контекста.

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

[0042] Кроме того, посредством изучения и моделирования действий для различных контекстов модуль 164 предсказания может генерировать одно или более дополнительных правил для предсказания того, приведут ли или нет текущие действия, которые совершаются пользователем вычислительного устройства 110 для текущего контекста, к тому, что пользователь вычислительного устройства 110 успешно выполнит будущее действие в будущем контексте. Эти одно или более дополнительных правил могут выдавать степень правдоподобия (например, оценку, вероятность, величину и т.п.), показывающую, будет ли пользователь, выполняя текущее действие, по-прежнему способен успешно выполнить будущее действие. Модуль 164 предсказания может сравнивать степень правдоподобия, выдаваемую из одного или более дополнительных правил, с одним или более порогами, и если степень правдоподобия удовлетворяет порогу, указывающему, что пользователь не сможет выполнить будущее действие, модуль 164 предсказания может выдавать данные уведомления для предупреждения пользователя о его или ее потенциальной неудаче или будущей ошибке.

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

[0044] Рассмотрим примерный сценарий, в котором пользователь вычислительного устройства 110 планирует вылететь из Лондона в Цюрих в ранние утренние часы в конкретный день. Электронный календарь или подтверждающее сообщение электронной почты, принятое вычислительным устройством 110, может показывать, что рейс запланирован на вылет в 7:10 утра. При худшем развитии событий, пользователь может по неосторожности отключить свой будильник утром в день вылета и встать лишь слишком поздно для отправления в аэропорт, чтобы успеть на рейс. Вместо того, чтобы позволить пользователю проспать и потенциально опоздать на рейс, ISS 160, в соответствии с технологиями настоящего раскрытия, может предсказать, что пользователь заснул после срабатывания его будильника в день полета и автоматически послать данные уведомления на вычислительное устройство 110, чтобы предписать вычислительному устройству 110 предупредить пользователя и разбудить пользователя вовремя, чтобы успеть на рейс.

[0045] При работе, например, чтобы предупредить пользователя вычислительного устройства 110 проснуться вовремя, дабы успеть на рейс в календаре вычислительного устройства 110, ISS 160 может предсказать будущие действия, которые должны быть предприняты пользователем вычислительного устройства 110. Например, модуль 164 предсказания может периодически или время от времени запрашивать модуль 162 контекста на предмет будущего контекста вычислительного устройства 110. В ответ на запрос из модуля 164 предсказания, модуль 162 контекста может определять, основываясь на контекстной информации, принятой от вычислительного устройства 110 (например, календарной информации, коммуникационной информации или другой контекстной информации, как описано выше), будущий контекст вычислительного устройства 110 и посылать этот будущий контекст в модуль 164 предсказания.

[0046] Основываясь на будущем контексте, принятом от модуля 162 контекста, модуль 164 предсказания может логически выводить, используя систему машинного обучения или другую основывающуюся на правилах систему, будущее действие, которое может быть совершено пользователем, исходя из данного будущего контекста. Например, в качестве реакции на прием будущего контекста, который показывает, что пользователь вычислительного устройства 110 будет в аэропорту к 6:00 утра, чтобы успеть на рейс, который вылетает в 7:10 утра, система машинного обучения или другая основывающаяся на правилах система из состава модуля 164 предсказания может предсказать, что пользователь вычислительного устройства 110 отправится в аэропорт в 5:30 утра, чтобы совершить тридцатиминутную поездку до аэропорта.

[0047] ISS 160 может определять, основываясь на контекстной информации, ассоциированной с вычислительным устройством 110, текущее действие, совершаемое пользователем, и на основе текущего действия определять степень правдоподобия того, что пользователь сможет совершить будущее действие. Например, исходя из того, что модуль 164 предсказания может ожидать, что пользователь вычислительного устройства 110 начнет поездку в аэропорт к 5:30AM, модуль 164 предсказания может запросить модуль 162 контекста в 5:00 утра касаемо информации о текущем контексте вычислительного устройства 110, чтобы определить, не выбивается ли пользователь из графика для выполнения ожидаемого действие начать передвижение в аэропорт вовремя, чтобы успеть на рейс. Текущий контекст, определенный модулем 162 контекста, может указывать отсутствие движения, связанного с вычислительным устройством 110, в местоположении, соответствующем дому пользователя, и может сымитировать для модуля 164 предсказания шаблоны движения (или его отсутствия), что пользователь может спать.

[0048] ISS 160 может определять, основываясь на текущем действии, степень правдоподобия (например, вероятность, оценку, двоичное значение и т.д.) того, сможет ли пользователь совершить будущее действие. В продолжение вышеприведенного примера, модуль 164 предсказания может ввести текущее действие (например, спит), будущее действие (например, отправление в аэропорт в 5:30 утра), текущий контекст и будущий контекст в одно или более правил для предсказания того, приведет ли или нет текущее действие, которое предпринимает пользователь вычислительного устройства 110 для текущего контекста, к тому, что пользователь вычислительного устройства 110 успешно выполнит будущее действие в будущем контексте.

[0049] ISS 160 может предсказать, основываясь на степени правдоподобия, что пользователь не сможет совершить будущее действие, и, в качестве реакции на это, послать на вычислительное устройство 110 информацию, указывающую, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие. Например, модуль 164 предсказания может сравнивать степень правдоподобия, выдаваемую из одного или более дополнительных правил, с одним или более порогами. Если степень правдоподобия удовлетворяет порогу (например, если одно или более правил дают пользователю шанс больше 50% отправиться в аэропорт вовремя, если он или она сейчас спит), модуль 164 предсказания может воздержаться от выдачи данных уведомления в вычислительное устройство 110. Напротив, если степень правдоподобия удовлетворяет порогу (например, если одно или более правил дают пользователю шанс меньше 50% отправиться в аэропорт вовремя, если он или она сейчас спит), модуль 164 предсказания может выдать данные уведомления для предупреждения пользователя о его или ее потенциальной неудаче или будущей ошибке. Модуль 164 предсказания может изучать и подстраивать пороги, используемые системами машинного обучения и основывающимися на правилах системами, с течением времени, чтобы повысить шансы уведомления пользователя о том, что она или она, возможно, делает ошибку.

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

[0051] Данные уведомления, которые вычислительное устройство 110 выдает в качестве реакции на определение степени правдоподобия, указывающие, что пользователь не сможет выполнить будущее действие, могут, после их приема вычислительным устройством 110, предписать вычислительному устройству 110 громко звонить или издавать тревожный сигнал для пробуждения пользователя. В некоторых примерах, вычислительное устройство 110 может обеспечить включение света, телевизора или другой формы уведомления, чтобы разбудить пользователя. В некоторых примерах, данные уведомления могут обеспечить выдачу модулем 122 уведомления, через модуль 120 UI, графического пользовательского интерфейса на UID 112, чтобы уведомить пользователя проснуться для выезда вовремя. Иными словами, ISS 160 может послать данные уведомления в вычислительное устройство 110, с тем чтобы когда у пользователя вычислительного устройства 110 рейс рано утром и пользователю не удалось начать движение в сторону аэропорта, вычислительное устройство 110 заблаговременно предупреждает пользователя (например, путем создания звукового предупреждения), сигнализируя пользователю до тех пор, пока вычислительное устройство не обнаружит, что он или она взаимодействовали с вычислительным устройством 110 (например, в качестве указания на то, что пользователь услышал, увидел или почувствовал предупреждение).

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

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

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

[0055] Фиг. 2 - это блок-схема, иллюстрирующая информационную серверную систему (ISS) 260 в качестве примера вычислительной системы, сконфигурированной для предсказания того, сможет ли пользователь вычислительного устройства 110 по Фиг. 1 совершить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия. ISS 260 есть более детальный пример ISS 160 по Фиг. 1 и описывается ниже в контексте системы 100 по Фиг. 1. Фиг. 2 иллюстрирует лишь один конкретный пример ISS 260, и многие другие примеры ISS 260 могут быть использованы в других случаях и могу включать в себя поднабор компонентов, включенных в иллюстративную ISS 260 или могут включать в себя дополнительные компоненты, не показанные на Фиг. 2.

[0056] ISS 260 обеспечивает вычислительному устройству 110 тракт, через который вычислительное устройство, такое как вычислительное устройство 110, может осуществлять доступ к сервису для приема информации, которую ISS 260 автоматически предсказывает для содействия пользователю вычислительного устройства в корректировке текущего действия, с тем чтобы гарантировать, что пользователь выполнит будущее действие и избежит совершения ошибки. Как показано в примере по Фиг. 2, ISS 260 включает в себя один или более процессоров 270, один или более блоков 272 связи и одно или более запоминающих устройств 274. Запоминающие устройства 274 из состава ISS 260 включают в себя модуль 262 контекста и модуль 264 предсказания. В составе модуля 264 предсказания запоминающие устройства 274 включают в себя модуль 268 обучения. Модули 262 и 264 включают в себя, по меньшей мере, те же, если не большие, функциональные возможности, как, соответственно, модули 162 и 164 по Фиг. 1.

[0057] Запоминающие устройства 274 из состава ISS 260 дополнительно включают в себя хранилище 270A данных пользовательской информации, хранилище 270B данных истории контекстов и хранилище 27°C данных правил действий (в совокупности, ʺхранилища данных 270ʺ). Коммуникационные каналы 276 могут соединять между собой все из компонентов 270, 272 и 274 для межкомпонентной связи (физически, коммуникационно и/или функционально). В некоторых примерах, коммуникационные каналы 276 могут включать в себя системную шину, сетевое соединение, структуру данных межпроцессного взаимодействия или любой другой метод для обмена данными.

[0058] Один или более блоков 272 связи из состава ISS 260 могут сообщаться с внешними вычислительными устройствами, такими как вычислительное устройство 110 по Фиг. 1, посредством передачи и/или приема сетевых сигналов в одной или более сетях, таких как сеть 130 по Фиг. 1. Например, ISS 260 может использовать блок 272 связи для передачи и/или приема радиосигналов через сеть 130, чтобы обмениваться информацией с вычислительным устройством 110. Примеры блока 272 связи включают в себя плату сетевого интерфейса (например, такую как Ethernet-карта), оптический приемопередатчик, радиочастотный приемопередатчик, GPS приемник или устройство любого другого типа, которое может посылать и/или принимать информацию. Другие примеры блоков 272 связи могут включать в себя коротковолновые радиостанции, сотовые радиостанции с возможностью обмена данными, радиостанции беспроводной сети Ethernet, а также контроллеры универсальной последовательной шины (USB).

[0059] Запоминающие устройства 274 могут хранить информацию для обработки во время работы ISS 260 (например, ISS 260 может сохранять данные, к которым осуществлен доступ модулями 262, 264 и 268 во время исполнения в ISS 260). В некоторых примерах, запоминающие устройства 274 представляют собой временную память, что означает, что основной целью запоминающих устройств 274 не является долгосрочное хранение. Запоминающие устройства 274 в ISS 260 могут быть сконфигурированы для краткосрочного хранения информации в качестве энергозависимой памяти и, следовательно, не оставляют в себе сохраненное содержимое при отключении питания. Примеры энергозависимой памяти включают в себя оперативную память (RAM), динамическую оперативную память (DRAM), статическую оперативную память (SRAM) и другие формы энергозависимой памяти, известные в технике.

[0060] Запоминающие устройства 274, в некоторых примерах, также включают в себя один или более машиночитаемых носителей информации. Запоминающие устройства 274 могут быть приспособлены для хранения больших объемов информации, чем энергозависимая память. Запоминающие устройства 274 могут быть дополнительно приспособлены для долгосрочного хранения информации в качестве энергонезависимого хранилища информации и оставлять в себе информацию после циклов включения/выключения питания. Примеры энергонезависимой памяти включают в себя магнитные жесткие диски, оптические диски, дискеты, флэш-память или формы электрически программируемой памяти (EPROM) или электрически перепрограммируемой памяти (EEPROM). Запоминающие устройства 274 могут хранить инструкции программ и/или данные, связанные с модулями 262, 264 и 268.

[0061] Один или более процессоров 270 могут реализовывать функциональность и/или исполнять инструкции в ISS 260. Например, процессоры 270 в ISS 260 могут принимать и исполнять инструкции, хранящиеся в запоминающих устройствах 274, которыми осуществляются функции модулей 262, 264 и 268. Эти инструкции, исполняемые процессорами 270, могут предписывать ISS 260 сохранять информацию внутри запоминающих устройств 274 во время исполнения программ. Процессоры 270 могут исполнять инструкции модулей 262, 264 и 268, чтобы предсказывать то, сможет ли пользователь вычислительного устройства совершить будущее действие, для различных контекстов, исходя из предшествующих действий других пользователей других вычислительных устройств, для тех же самых контекстов, и автоматически подавать информацию на основе предсказания в другие вычислительные устройства. То есть, модули 262, 264 и 268 могут приводиться в действие процессорами 270 для выполнения различных действий или функций ISS 270, которые описываются здесь.

[0062] Информация, хранящаяся в хранилищах 270 данных, допускает поиск и/или категоризацию. Например, один или более модулей 262, 264 и 268 могут обеспечивать ввод, запрашивающий информацию из одного или более хранилищ 270 данных, и, в ответ на этот ввод, принимать информацию, хранящуюся в хранилищах 270 данных. Информационная серверная система 260 может обеспечивать доступ к информации, хранящейся в хранилищах 270 данных, в качестве облачного сервиса доступа к данным, вычислительным устройствам, подсоединенным к сети 130, таким как вычислительное устройство 110. Когда в хранилищах 270 данных содержится информация, относящаяся к отдельным пользователям, или когда такая информация является обобщенной по множеству пользователей, вся информация персональной идентификации, такая как имя, адрес, телефонный номер и/или адрес электронной почты, обеспечивающая обратную привязку данной информации к отдельным людям, может быть удалена до сохранения в информационной серверной системе 260. Информационная серверная система 260 может дополнительно шифровать информацию, хранящуюся в хранилищах 270 данных, для предотвращения доступа к любой информации, хранящейся в них. Помимо этого, информационная серверная система 260 может лишь сохранять информацию, относящуюся к пользователям вычислительных устройств, если эти пользователи дали четкое согласие на такой сбор информации. Информационная серверная система 260 может дополнительно обеспечивать пользователям возможности аннулировать согласие, в каковом случае информационная серверная система 260 может перестать собирать или иным образом сохранять информацию, ассоциированную с таким конкретным пользователем.

[0063] Хранилище 270A данных представляет собой любой подходящий носитель информации для хранения информации, относящейся к пользователю вычислительного устройства, такого как вычислительное устройство 110 по Фиг. 1, в отношении которой можно выполнять поиск. Хранилища 270A и 27°C данных пользовательской информации могут, в основном, обслуживаться модулем 264 предсказания и могут быть частью хранилища 270B данных контекстной истории, которое, в общем, обслуживается модулем 262 контекста, или отдельными от него. Хранилище 270A данных пользовательской информации может включать в себя одну или более допускающих поиск баз данных или структур данных, в которые организованы различные типы информации, ассоциированной с отдельными пользователями вычислительных устройств, таких как вычислительное устройство 110 по Фиг. 1. В некоторых примерах, хранилище 270A данных пользовательской информации включает в себя информацию, относящуюся к истории пользовательских поисков, сообщения электронной почты, текстовые сообщения, голосовые сообщения, информацию социальных сетей, фотографии, данные приложений, информацию об использовании приложений, историю покупок и любую или всю из прочей информации, относящейся к пользователю и взаимодействию пользователя с вычислительным устройством, таким как вычислительное устройство 110. В отношении пользовательской информации, хранящейся в хранилище 270A данных, можно осуществлять поиск. Например, модуль 262 контекста может подавать конкретные дату и/или время суток в качестве входных данных в хранилище 270A данных и принимать в качестве выходных данных порции пользовательской информации, связанной с этими входными данными. Например, модуль 262 контекста может подавать в качестве входных данных конкретный день и принимать информацию о рейсе, указанном в сообщении электронной почты о подтверждении бронирования пользователя электронного устройства 110. Либо, в качестве еще одного примера, модуль 262 контекста может принимать указание в виде запроса по ключевому слову (например, строку символов) и выдавать назначенную встречу, покупку, которые связаны с ключевым словом.

[0064] Хранилище 270B данных представляет собой любой подходящий носитель информации для хранения историй контекстов, в отношении которых можно осуществлять поиск и которые включают в себя контекстную информацию (например, местоположения, времена суток, информацию о погоде, информацию о дорожном движении, навигационную информацию, информацию о состоянии устройства, информацию о пользователе и т.д.), организованную по дате и времени. Хранилище 270B данных может включать в себя истории прошлых контекстов и/или истории будущих контекстов. Информационная серверная система 260, а именно модуль 262 контекста, может собирать контекстную информацию, ассоциированную с вычислительными устройствами, такими как вычислительное устройство 110, и сохранять собранную контекстную информацию в хранилище 270B данных. Модуль 262 контекста может полагаться на информацию, хранящуюся в хранилище 270B данных истории контекстов, для определения контекста пользователя или вычислительного устройства, такого как вычислительное устройство 110.

[0065] Хранилище 27°C данных может хранить правила (например, системы машинного обучения) для предсказания действий, которые могут совершаться пользователями вычислительных устройств для разнообразных контекстов. Хранилище 27°C данных может принимать в качестве входных данных контекст и выдавать в качестве выходных данных предсказанное действие, совершаемое пользователем в этом контексте. В хранилище 27°C данных могут дополнительно храниться прочие правила для определения степеней правдоподобия, показывающих то, сможет ли пользователь вычислительного устройства, выполняя текущее действие для текущего контекста, выполнить будущее ʺожидаемоеʺ действие для будущего контекста. Хранилище 27°C данных может принимать в качестве входных данных текущее действие и будущее действие и выдавать степень правдоподобия, показывающую, сможет ли пользователь выполнить будущее действие, если продолжать выполнять текущее действие.

[0066] Хранилище 27°C данных заданий и потребностей включает в себя одно или более прежде разработанных правил, на которые полагается модуль 264 предсказания потребностей для предсказания задания или действия, которые, скорее всего, должны быть выполнены пользователем вычислительного устройства для текущего контекста, а также информацию, которая может потребоваться пользователю для выполнения задания. Например, в хранилище 27°C данных могут храниться правила системы машинного обучения или искусственного интеллекта модуля 264 предсказания потребностей. Система машинного обучения или искусственного интеллекта модуля 264 предсказания потребностей может обращаться к правилам хранилища 27°C данных для логического вывода заданий и потребностей, связанных с пользователями вычислительного устройства 110, для конкретного контекста.

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

[0068] Модуль 268 обучения может генерировать правила действий, сохраняемые в хранилище 27°C данных. Например, модуль 264 предсказания может изначально принимать контексты от модуля 162 контекста и подавать эти контексты в качестве входных данных в модуль 268 обучения. Модуль 268 обучения может создавать модели пользовательских действий и с течением времени обучать или улучшать эти модели, чтобы лучше изучить и быть способным предсказывать и генерировать правила для логического вывода действий пользователей для заданных контекстов. После генерирования, выполненного модулем 268 обучения, модуль 264 предсказания может запрашивать модуль 262 контекста на предмет указания текущего или будущего контекста вычислительного устройства 110. Модуль 264 предсказания может подавать принятую от модуля 262 контекста информацию о текущих или будущих контекстах вычислительного устройства 110 в качестве вводов в эти модели и, в качестве реакции на это, может принимать в качестве выходных данных указание (например, данные), указывающее одно или более заданий, действий или других физических или виртуальных актов, которые пользователь физически выполняет для конкретного контекста.

[0069] Модуль 268 обучения из состава модуля 264 предсказания может генерировать правила, сохраняемые в хранилище 27°C данных, для предсказания и определения степеней правдоподобия, ассоциированных с заданиями, выполняемыми пользователями для определенных контекстов. Например, система машинного обучения или искусственного интеллекта модуля 268 обучения может анализировать контекстную информацию, полученную модулем 262 контекста и сохраненную в хранилище 270B данных, и выявлять корреляции с пользовательской информацией, хранящейся в хранилище 270A данных. Типы систем машинного обучения, используемые модулем 268 обучения, включают в себя байесовы сети, нейронные сети и другие типы моделей искусственного интеллекта. Например, модуль 268 обучения может выработать таблицу со строкой для каждого вычислительного устройства 110 или группы вычислительных устройств, которые совместно используют аналогичные контексты и у которых имеются пользователи, которые выполняли схожие действия в аналогичных контекстах. Основываясь на корреляциях между контекстной информацией и действиями, модуль 268 обучения может выработать правила для предсказания будущих действий или текущих действий, выполняемых пользователями вычислительных устройств для конкретных контекстов.

[0070] В работе, ISS 260 может предсказывать будущие действия, которые должны быть совершены пользователем вычислительного устройства, такие как посещение мероприятия в будущее время. Например, модуль 264 предсказания может запросить модуль 262 контекста на предмет обновления в отношении предсказанного местоположения или ожидаемого контекста вычислительного устройства 110 на следующий день, следующий час, следующую неделю и т.д. Модуль 264 предсказания может вводить будущий контекст в хранилище 27°C данных правил действий и принимать в качестве выходных данных указание того, что пользователь вычислительного устройства 110 посетит оперное мероприятие, кинофильм, митинг или другую назначенную встречу или мероприятие на следующий день (например, воскресенье).

[0071] ISS 260 может определять, основываясь на контекстной информации, связанной с вычислительным устройством, текущее действие, осуществляемое пользователем. Например, время от времени модуль 264 предсказания может запрашивать модуль 262 контекста на предмет текущего контекста вычислительного устройства 110 и определять с использованием одного или более из правил, хранящихся в хранилище 27°C данных правил действий, является ли текущее действие, выполняемое в текущем контексте, скорее всего совместимым со способностью пользователя выполнить будущее действие по посещению оперы, кинофильма, митинга или другой назначенной встречи на следующий день, либо конфликтующим с ней. Модуль 264 предсказания может вводить текущий контекст в хранилище 27°C данных правил действий и принимать в качестве выходных данных указание того, что пользователь вычислительного устройства 110 совершает подготовительное действие в приготовлении к посещению мероприятия в будущее время, двигаясь в или прибыв в местную химчистку, и делать логический вывод, что пользователь скорее всего завозит вещи в химчистку для мероприятия на следующий день.

[0072] ISS 260 может определять на основе текущего действия степень правдоподобия того, сможет ли пользователь совершить будущее действие. Например, модуль 264 предсказания может вводить текущий контекст, ранее определенный будущий контекст, текущее действие и ожидаемое или будущее действие в хранилище 27°C данных правил действий и принимать указание степени правдоподобия касаемо того, сможет ли пользователь завезти в химчистку вещи, которые нужны ему или ей для посещения мероприятия на следующий день, и по-прежнему быть способным посетить мероприятие на следующий день. Хранилище 27°C данных правил действий может понижать, и затем выдавать, степень правдоподобия в качестве реакции на определение того, что подготовительное действие не может быть завершено в пределах порогового времени до будущего времени. Например, хранилище 27°C данных правил действий может выдавать низкую степень правдоподобия (например, вероятность ниже 50%), поскольку химчистка закрыта на следующий день, и, следовательно, пользователь не сможет забрать свои почищенные вещи для мероприятия.

[0073] ISS 260 может предсказывать, основываясь на степени правдоподобия, что пользователь не сможет совершить будущее действие, и посылает в вычислительное устройство 110 информацию, указывающую, что текущее действие, осуществляемое пользователем, приведет к тому, что пользователь не сможет осуществлять будущее действие. Например, исходя из низкой степени правдоподобия, модуль 264 предсказания может генерировать данные уведомления, которые ISS 260 может послать в вычислительное устройство 110, чтобы предупредить пользователя о том, что он или она, возможно, делает неизбежную ошибку, оставляя вещи в химчистке для мероприятия на следующий день, поскольку химчистка, в которой он или она находится, закрыта в день мероприятия.

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

[0075] На Фиг. 3 приведена концептуальная схема, показывающая иллюстративной навигационный сценарий для иллюстративной вычислительной системы, такой как информационная серверная система 260 по Фиг. 2, для предсказания того, сможет ли пользователь вычислительного устройства, такого как вычислительное устройство 110 по Фиг. 1, совершить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия. Фиг. 3 описывается ниже в рамках контекста системы 100 по Фиг. 1, где вычислительное устройство 310 является примером вычислительного устройства 110 по Фиг. 1.

[0076]В примере по Фиг. 3, модуль 162 контекста из состава ISS 160 может определять, что вычислительное устройство 310 находится в текущем местоположении 301 в текущее время и что будущий контекст вычислительного устройства 310 помещает вычислительное устройство 310 в будущее местоположение 303 в будущее время (например, тремя часами позже от текущего времени). На Фиг. 3 показаны пути 304A, 304B, 304C и 304D, из которых пользователь вычислительного устройства 310 мог бы выбирать для путешествия из местоположения 301 в 303.

[0077] Путь 304A составляет приблизительно 4 единицы расстояния в длину, и он занял бы у пользователя вычислительного устройства 310 примерно два часа времени поездки для путешествия из местоположения 301 в 303. Путь 304A пересекается с местоположением 302A. Путь 304B составляет приблизительно 5 единиц расстояния в длину, и он занял бы у пользователя вычислительного устройства 310 примерно два с половиной часа времени поездки для путешествия из местоположения 301 в 303. Путь 304B пересекается с местоположением 302B. Путь 304C составляет приблизительно 6 единиц расстояния в длину, и он занял бы у пользователя вычислительного устройства 310 примерно три часа времени поездки для путешествия из местоположения 301 в 303. Путь 304C пересекается с местоположением 302C. Путь 304D также пересекается с местоположением 302C. В то же время, путь 304D составляет приблизительно 8 единиц расстояния в длину, и он занял бы у пользователя вычислительного устройства 310 примерно четыре часа времени поездки для путешествия из местоположения 301 в 303.

[0078] В одном примере, модуль 162 контекста из состава ISS 160 может обнаруживать перемещение, связанное с вычислительным устройством 310, когда вычислительное устройство 310 движется вдоль траектории пути 304A в направлении местоположения 302A, и посылать обновленный текущий контекст, ассоциированный с вычислительным устройством 310, в модуль 164 предсказания. Модуль 164 предсказания может определять степень правдоподобия того, сможет ли пользователь вычислительного устройства 310, передвигаясь в направлении местоположения 302A в текущее время, прибыть в местоположение 303 к будущему времени. Например, модуль 164 предсказания может определять оценочное время прибытия для прибытия пользователя вычислительного устройства 310 в будущее местоположение 303 после передвижения из местоположения 301 в местоположение 302B. Модуль 164 предсказания может повысить степень правдоподобия в качестве реакции на определение того, что оценочное время прибытия находится в пределах порогового времени (например, в пределах допуска приемлемого прибытия в местоположение 303, для того чтобы пользователю прибыть вовремя) по отношению к будущему времени. Например, модуль 164 предсказания может определять, что, выбрав путь 304A через местоположение 302A, пользователь вычислительного устройства 310 с наибольшей определенностью прибудет в местоположение 303 все еще вовремя.

[0079] В еще одном примере, модуль 162 контекста из состава ISS 160 может обнаруживать перемещение, связанное с вычислительным устройством 310, когда вычислительное устройство 310 движется вдоль траектории пути 304B в направлении местоположения 302B и посылать обновленный текущий контекст, ассоциированный с вычислительным устройством 310, в модуль 164 предсказания. Даже несмотря на то, что модуль 164 предсказания может определить, что вычислительное устройство 310 движется по траектории прочь от местоположения 303 в текущее время, модуль 164 предсказания может воздерживаться от предупреждения вычислительного устройства 310 о потенциальной ошибке до тех пор, пока модуль 164 предсказания не определит степень уверенности в том, сможет ли пользователь, передвигаясь вдоль пути 304B в направлении местоположения 302B в текущее время, прибыть в местоположение 303 ко времени прибытия. Модуль 164 предсказания может повысить степень правдоподобия в качестве реакции на определение того, что оценочное время прибытия находится в пределах порогового времени (например, меньше его) по отношению к будущему времени. Например, модуль 164 предсказания может определять, что даже выбрав путь 304B через местоположение 302B, пользователь вычислительного устройства 310 определенно прибудет в местоположение 303 все еще вовремя.

[0080] В другом примере, модуль 162 контекста из состава ISS 160 может обнаруживать перемещение, связанное с вычислительным устройством 310, когда вычислительное устройство 310 движется вдоль траектории пути 304D в направлении местоположения 302C, и посылать обновленный текущий контекст, ассоциированный с вычислительным устройством 310, в модуль 164 предсказания. Модуль 164 предсказания может определять степень правдоподобия того, сможет ли пользователь вычислительного устройства 310, передвигаясь в направлении местоположения 302C в текущее время, прибыть в местоположение 303 к будущему времени. Например, модуль 164 предсказания может определять оценочное время прибытия для прибытия пользователя вычислительного устройства 310 в будущее местоположение 303 после передвижения из местоположения 301 в местоположение 302C, оставаясь при этом на траектории пути 304D. Модуль 164 предсказания может понизить степень правдоподобия в качестве реакции на определение того, что оценочное время прибытия не находится в пределах порогового времени (например, за пределами допуска приемлемого прибытия в местоположение 303, для того чтобы пользователю прибыть вовремя) по отношению к будущему времени. Например, модуль 164 предсказания может определять, что, выбрав путь 304D через местоположение 302C, пользователь вычислительного устройства 310 с наибольшей определенностью не прибудет в местоположение 303 вовремя. В качестве реакции на определение того, что пользователь вычислительного устройства 310 скорее всего не прибудет вовремя, модуль 164 предсказания может посылать в вычислительное устройство 310 информацию для предупреждения пользователя о потенциальной ошибке продолжать передвигаться вдоль пути 304D.

[0081] В дополнение к предупреждению пользователя о его или ее потенциальной ошибке, модуль 164 предсказания может определять корректирующее действие, которое пользователь может предпринять для повышения степени правдоподобия того, сможет ли пользователь совершить будущее действие, и включать указание корректирующего действия в информацию, указывающую, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие. Иными словами, вместо того, чтобы просто предписывать вычислительному устройству 310 выдавать акустическое предупреждение для уведомления пользователя об ошибке продолжать передвигаться по пути 304D, модуль 164 предсказания может посылать информацию для предупреждения пользователя вычислительного устройства о том, что посредством смены направления и выбора пути 304C пользователь может все еще смочь прибыть в местоположение 303 к будущему времени.

[0082] На Фиг. 4 приведена алгоритмическая блок-схема, показывающая иллюстративные операции 410-420, выполняемые иллюстративной вычислительной системой, сконфигурированной для предсказания того, сможет ли пользователь вычислительного устройства совершить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия. Фиг. 4 описывается ниже в контексте системы 100 по Фиг. 1. Например, ISS 160 может выполнять операции 410-420 для предсказания того, сможет ли пользователь вычислительного устройства 110 совершить будущее действие, и подавать в вычислительное устройство 110 информацию для предупреждения пользователя о том, предсказано ли то, что пользователь сможет осуществить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия.

[0083] Как показано на Фиг. 4, в работе, ISS 160 может предсказать будущее действие, которое должно быть совершено пользователем вычислительного устройства 110 (410). Например, модуль 162 контекста из состава ISS 160 может принимать ассоциированную с вычислительным устройством 110 контекстную информацию, указывающую, что пользователь вычислительного устройства 110 в типичном случае смотрит программу по расписанию, и сгенерировать будущий контекст, который задает, что пользователь вычислительного устройства 110 смотрит будущую трансляцию программы по расписанию. Модуль 164 предсказания может принимать указание будущего контекста и предсказать, что пользователь будет смотреть программу по расписанию в будущее время.

[0084] ISS 160 может определять, основываясь на контекстной информации, ассоциированной с вычислительным устройством 110, текущее действие, совершаемое пользователем (412). Например, модуль 162 контекста может принимать через сеть 130 данные, показывающие, что пользователь вычислительного устройства 110 использует вычислительное устройство 110 для прохождения через web-браузер или некую другую форму графического пользовательского интерфейса для абонирования основывающейся на оплате за просмотр (PPV) трансляции спортивного мероприятия, запланированного на то же самое будущее время, что и программа по расписанию, и сгенерировать ассоциированный с вычислительным устройством 110 текущий контекст, который задает, что пользователь просматривает графический пользовательский интерфейс. Модуль 164 предсказания может принимать указание текущего контекста и предсказать, что пользователь приобретает или абонирует PPV-трансляцию на будущее время.

[0085] ISS 160 может определять, основываясь на текущем действии, степень правдоподобия того, сможет ли пользователь совершить будущее действие (414). Например, модуль 164 предсказания может вводить будущее действие просмотра программы по расписанию и текущее действие приобретения PPV-трансляции в одно или более правил системы машинного обучения и принимать в качестве выходных данных указание степени правдоподобия того, сможет ли пользователь, приобретая PPV-программу, с большей или меньшей вероятностью посмотреть программу по расписанию, которую он или она обычно смотрит. Степень правдоподобия может быть низкой (например, 10%), поскольку PPV-программа может наложиться на время начала или начаться до времени окончания программы по расписанию.

[0086] ISS 160 может определять, удовлетворяет ли степень правдоподобия порогу (416). Модуль 164 предсказания может определять, что степень правдоподобия недостаточно высока (например, выше 90%), чтобы указывать, что пользователь сможет выполнить будущее действие, если он или она будет продолжать выполнять текущее действие.

[0087] ISS 160 может предсказывать, основываясь на степени правдоподобия, что пользователь не сможет совершить будущее действие (418). В качестве реакции на определение того, что степень правдоподобия недостаточно высока (например, больше 90%), модуль 164 предсказания может определять, что пользователь не сможет посмотреть программу по расписанию.

[88] ISS 160 может посылать в вычислительное устройство 110 информацию, показывающую, что текущее действие, предпринимаемое пользователем, приведет к тому, что пользователь не сможет осуществить будущее действие (420). Например, до того, как пользователь завершит приобретение PPV-программы, вычислительное устройство 110 может принять от модуля 164 предсказания информацию, показывающую, что приобретение PPV-программы может конфликтовать с возможностью просмотра программы по расписанию, и выдать предупреждение, информирующее об этом, на UID 112.

[0089] Существуют многочисленные другие примеры ISS 160, предсказывающей, является ли текущее действие пользователя вычислительного устройства 110 совместимым с будущим действием пользователя. К примеру, ISS 160 может определять, что пользователь взаимодействует с вычислительным устройством 110 для приобретения билетов на одно мероприятие, которое наложится на и помешает посещению другого мероприятия, на которое пользователь уже купил билеты, и предписывать вычислительному устройству 110 предупредить пользователя о потенциальной ошибке. ISS 160 может быть осведомлена более, чем просто о времени начала и времени окончания мероприятий для определения потенциальных конфликтов. Например, правила модуля 164 предсказания могут узнавать из предыдущих наблюдений других пользователей других вычислительных устройств, что даже несмотря на то, что время начала мероприятия назначено на конкретное время, рассаживание на зарезервированные места на мероприятии начинается за пятнадцать минут до фактического времени начала, и если посетители не будут на мероприятии на пятнадцать минут раньше, зарезервированные места будут предоставляться другим пришедшим на мероприятие. Так что, даже если официальные времена начала и окончания двух мероприятий не налагаются, ISS 160 может предупреждать пользователя вычислительного устройства 110 о потенциальном конфликте при бронировании билетов на эти два мероприятия, если время окончания более раннего мероприятия налагается на ʺнеофициальноеʺ время начала (например, время рассадки на зарезервированные места) мероприятия.

[0090] На Фиг. 5 приведена концептуальная схема, показывающая иллюстративную временную шкалу 500 для иллюстративной вычислительной системы, такой как ISS 160 по Фиг. 1 или ISS 260 по Фиг. 2, для предсказания того, сможет ли пользователь вычислительного устройства, такого как вычислительное устройство 110 по Фиг. 1, совершить будущее действие, в соответствии с одним или более аспектами настоящего раскрытия. Фиг. 5 описывается ниже в контексте Фиг. 1-4.

[0091] Иллюстративная временная шкала по Фиг. 5 следует нижеследующему сценарию, который имеет место между моментами времени tS и tF. Пользователь вычислительного устройства 110 может собираться лететь из города Лондон в город Нью-Йорк. Как и во многих регионах мегаполисов, в городе Лондон более одного международного аэропорта. Хотя в типичном случае пользователь вылетает из аэропорта B, в примере по Фиг. 5 пользователь в момент времени tS принимает по электронной почте подтверждение касаемо забронированного им или ею рейса, который вылетает из аэропорта A.

[0092] Временная шкала 500 разделена на раннюю стадию планирования между моментами времени tS и t1, позднюю стадию планирования между моментами времени t1 и t2 и стадию исполнения между моментами времени t2 и tF. Во время ранней и поздней стадий планирования, ISS 160 может просматривать контекстную информацию, которая не обязательно включает в себя информацию движения, на предмет будущих действий, чтобы предсказывать, когда пользователь может делать что-то, что могло бы воспрепятствовать выполнению такого будущего действия.

[0093] Например, как показано на временной шкале 500, в момент времени tF модуль 162 контекста может записывать в историю будущих контекстов, связанную с пользователем вычислительного устройства 110, запланированный вылет рейса из аэропорта A. В течение ранней стадии планирования временной шкалы 500, пользователь вычислительного устройства 110 может вводить запрос поиска навигационных направлений в аэропорт B и позднее может начать движение в направлении аэропорта B. Поскольку ранняя стадия планирования в достаточной мере удалена во времени от стадии исполнения, ISS 160 может определить низкую степень правдоподобия того, что пользователь, выполняя поиск касаемо аэропорта B или передвигаясь в направлении аэропорта B, мог бы тем самым сделать ошибку, которая не дала бы пользователю успеть на самолет в аэропорту A. ISS 160 может воздержаться от выдачи предупреждения, указывающего какой-либо потенциальный конфликт между текущим действием пользователя и ожидаемым действием.

[0094] В течение поздней стадии планирования временной шкалы 500, пользователь вычислительного устройства 110 может вводить запрос поиска навигационных направлений в аэропорт B и позднее может начать движение в направлении аэропорта B. Поскольку поздняя стадия планирования ближе во времени к стадии исполнения, ISS 160 может трактовать некоторые действия как те, которые, скорее всего, служат препятствием для будущего действия по вылету из аэропорта A. Например, ISS 160 может принимать контекстную информацию, показывающую, что пользователь осуществляет поиск навигационных направлений для аэропорта B, и в этот раз, в качестве реакции на поисковый запрос, конфликтующий с ожидаемым маршрутом или пунктом назначения, соответствующим аэропорту A, ISS 160 может определить высокую степень правдоподобия того, что пользователь, выполняя поиск касаемо аэропорта B или передвигаясь в направлении аэропорта B, может тем самым сделать ошибку, которая не даст пользователю успеть на самолет в аэропорту A. ISS 160 может выдать предупреждение, указывающее потенциальный конфликт между текущими действиями пользователя по поиску направлений в аэропорт B, тогда как его или ее ожидаемым местонахождением в не слишком далеком будущем является аэропорт A.

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

[0096] В течение стадии исполнения, ISS 160 может в большей мере полагаться на (или давать больший вес) перемещению вычислительного устройства 110 для логического вывода того, может ли пользователь делать ошибку, которая могла бы предотвратить совершение пользователем ожидаемого действия, чем на другие типы контекстной информации. ISS 160 может определять, основываясь на контекстной информации, ассоциированной с вычислительным устройством 110, что вычислительное устройство 110 движется по траектории по направлению к аэропорту B. ISS 160 может сравнивать текущую траекторию вычислительного устройства 110 с местоположениями аэропорта A, аэропорта B и другими потенциальными местоположениями, соответствующими ошибкам, типично совершаемым другими пользователями в случае аэропортов A и B. В качестве реакции на определение того, что путь вычислительного устройства 110 является ближайшим к аэропорту B и, наиболее вероятно, пересекается с ним (например, аэропорт B является тем же самым типом местоположения, что и будущее местоположение, ассоциированное с будущим действием), ISS 160 может предсказывать, что пользователь вычислительного устройства 110 движется в аэропорт B. В качестве реакции на определение того, что пользователь вычислительного устройства 110 движется в аэропорт B, в момент времени, когда пользователь, как ожидается, будет ехать в направлении аэропорта A, чтобы успеть на рейс, ISS 160 может послать в вычислительное устройство 110 данные, инициирующие выдачу вычислительным устройством 110 звукового предупреждения или выдачу некоего другого тактильного, визуального или слышимого предупреждения, указывающего, что пользователь потенциально движется не в тот аэропорт.

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

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

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

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

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

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

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

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

[0105] Положение 5. Способ согласно положению 4, в котором первое местоположение и второе местоположение являются разными местоположениями транспортного сервиса конкретного типа.

[0106] Положение 6. Способ согласно любому из положений 4-5, в котором первое местоположение и второе местоположение являются разными соответственными офисами единой коммерческой организации.

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

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

[0109] Положение 9. Вычислительная система, содержащая: по меньшей мере один процессор; и по меньшей мере один модуль, приводимый в действие по меньшей мере одним процессором, чтобы: предсказывать будущее действие, которое должно быть совершено пользователем вычислительного устройства; определять на основе контекстной информации, связанной с вычислительным устройством, текущее действие, совершаемое пользователем; определять на основе текущего действия степень правдоподобия того, сможет ли пользователь совершить будущее действие; предсказывать на основе степени правдоподобия, что пользователь не сможет совершить будущее действие; и посылать на вычислительное устройство информацию, указывающую, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие.

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

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

[0112] Положение 12. Вычислительная система согласно любому из положений 9-11, при этом: будущее действие включает в себя прибытие в первое местоположение к будущему времени; текущее действие включает в себя поиск информации, относящейся ко второму местоположению, которое отличается от первого местоположения; и по меньшей мере один модуль дополнительно приводится в действие по меньшей мере одним процессором, чтобы определять степень правдоподобия того, сможет ли пользователь совершить будущее действие, посредством, по меньшей мере, уменьшения степени правдоподобия в качестве реакции на определение того, что второе местоположение является местоположением того же самого типа, что и первое местоположение.

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

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

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

[0116] Положение 16. Машиночитаемый носитель информации согласно положению 15, в котором инструкции при их исполнении предписывают по меньшей мере одному процессору вычислительной системы: определять корректирующее действие, которое пользователь может предпринять, чтобы повысить степень правдоподобия того, сможет ли пользователь совершить будущее действие, при этом информация, указывающая, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие, включает в себя указание этого корректирующего действия.

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

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

[0119] Положение 19. Машиночитаемый носитель согласно любому из положений 15-18, при этом: будущее действие включает в себя отправление в первое местоположение к будущему времени; текущее действие включает в себя сон в текущее время; и инструкции при их исполнении предписывают по меньшей мере одному процессору вычислительной системы определять степень правдоподобия того, сможет ли пользователь совершить будущее действие, посредством, по меньшей мере, уменьшения степени правдоподобия в качестве реакции на определение того, что текущее время находится в пределах порогового времени относительно будущего времени.

[0120] Положение 20. Машиночитаемый носитель согласно любому из положений 15-19, при этом: будущее действие включает в себя посещение мероприятия в будущее время; текущее действие включает в себя выполнение подготовительного действия в приготовлении к посещению мероприятия в будущее время; и инструкции при их исполнении предписывают по меньшей мере одному процессору вычислительной системы определять степень правдоподобия того, сможет ли пользователь совершить будущее действие, посредством, по меньшей мере, уменьшения степени правдоподобия в качестве реакции на определение того, что подготовительное действие не может быть завершено в пределах порогового времени относительно будущего времени.

[0121] Положение 21. Вычислительная система согласно положению 9, содержащая средства для выполнения любого из способов согласно положениям 1-8.

[0122] Положение 22. Машиночитаемый носитель согласно положению 15, содержащий дополнительные инструкции, которые при их исполнении предписывают по меньшей мере одному процессору вычислительной системы выполнять любой из способов согласно положениям 1-8.

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

[0124] В качестве примера, а не ограничения, такие машиночитаемые носители информации могут представлять собой RAM, ROM, EEPROM, CD-ROM или другое оптическое дисковое хранилище, магнитное дисковое хранилище или другие магнитные запоминающие устройства, флэш-память или любой другой носитель информации, который может быть использован для хранения требующегося программного кода в форме инструкций или структур данных и к которому компьютер может осуществлять доступ. Кроме того, любое соединение надлежащим образом может именоваться машиночитаемой средой. Например, если инструкции передаются с web-сайта, сервер или любой другой удаленный источник, используя коаксиальный кабель, волоконно-оптический кабель, витую пару, цифровую абонентскую линию (DSL) или беспроводные технологии, такие как инфракрасные, радио и микроволновые, тогда эти коаксиальный кабель, волоконно-оптический кабель, витая пара, DSL или беспроводные технологии, такие как инфракрасные, радио и микроволновые, охватываются определением среды. Следует, в то же время, понимать, что машиночитаемые среды и носители информации не включают в себя соединения, несущие волны, сигналы или другие временные среды, но вместо этого направлены на невременные материальные носители информации. Диск, в том смысле, как он используется здесь, включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой многофункциональный диск (DVD), дискету и диск Blu-ray, при этом диски обычно воспроизводят данные и магнитным образом, и оптическим образом с помощью лазеров. Комбинации вышеперечисленного также должны охватываться понятием ʺмашиночитаемая средаʺ.

[0125] Инструкции могут исполняться одним или более процессорами, такими как устройства цифровой обработки сигналов (DSP), микропроцессоры общего назначения, специализированные интегральные схемы (ASIC), программируемые пользователем вентильные матрицы (FPGA) или другие эквивалентные интегрированные или дискретные логические схемы. Соответственно, понятие ʺпроцессор,ʺ в том смысле как оно используется здесь, относится к любой из вышеперечисленных конструкций или к любой другой конструкции, подходящей для реализации описанных здесь технологий. Кроме того, согласно некоторым аспектам, описанные здесь функциональные возможности могут предоставляться в специализированных модулях аппаратного и/или программного обеспечения. Также, предложенные технологии могут быть полностью реализованы в одной или более схемах или логических элементах.

[0126] Технологии согласно настоящему раскрытию могут быть реализованы в широком разнообразии устройств и аппаратуры, включая беспроводной телефон, интегральную схему (IC) или набор интегральных схем (например, чипсет). Различные компоненты, модули или блоки описываются в данном раскрытии, чтобы подчеркнуть функциональные аспекты устройств, сконфигурированных для выполнения раскрытых технологий, но не обязательно требуют реализацию посредством разных аппаратных блоков. Напротив, как сказано выше, различные блоки могут объединяться в аппаратном блоке или предоставляться как совокупность совместно работающих аппаратных блоков, включая один или более процессоров, как описано выше, в сочетании с подходящим программным и/или встроенным программным обеспечением.

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

1. Способ уведомления пользователя о его/её будущем действии, содержащий этапы, на которых:

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

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

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

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

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

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

3. Способ по п.1, в котором:

текущее действие включает в себя передвижение из текущего местоположения во второе местоположение, которое отличается от первого местоположения; и

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

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

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

4. Способ по п.1, в котором:

первое местоположение и второе местоположение являются разными местоположениями транспортного сервиса конкретного типа или

первое местоположение и второе местоположение являются разными соответственными офисами единой коммерческой организации.

5. Вычислительная система, выполненная с возможностью уведомления пользователя о его/её будущем действии, при этом вычислительная система содержит:

по меньшей мере один процессор и

по меньшей мере один модуль, приводимый в действие по меньшей мере одним процессором, чтобы:

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

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

определять на основе текущего действия степень правдоподобия того, сможет ли пользователь совершить будущее действие, каковое определение содержит, по меньшей мере, уменьшение степени правдоподобия в качестве реакции на определение того, что второе местоположение является местоположением того же самого типа, что и первое местоположение;

предсказывать на основе степени правдоподобия, что пользователь не сможет совершить будущее действие; и

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

6. Вычислительная система по п.5, в которой по меньшей мере один модуль дополнительно приводится в действие по меньшей мере одним процессором, чтобы: определять корректирующее действие, которое пользователь может предпринять, чтобы повысить степень правдоподобия того, сможет ли пользователь совершить будущее действие, при этом информация, указывающая, что текущее действие, совершаемое пользователем, приведет к тому, что пользователь не сможет совершить будущее действие, включает в себя указание этого корректирующего действия.

7. Вычислительная система по п.5, при этом:

текущее действие включает в себя передвижение из текущего местоположения во второе местоположение, которое отличается от первого местоположения; и

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

8. Вычислительная система по п.5, при этом:

первое местоположение и второе местоположение являются разными местоположениями транспортного сервиса конкретного типа или

первое местоположение и второе местоположение являются разными соответственными офисами единой коммерческой организации.

9. Вычислительная система, выполненная с возможностью уведомления пользователя о его/её будущем действии, при этом вычислительная система содержит средства для выполнения любого из способов по пп.1-4.



 

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

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

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

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

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

Изобретение относится к области связи. Технический результат изобретения заключается в обеспечении надежного канала HBC для любых местоположений устройств на теле пользователя и сверхнизком энергопотреблении модуля HBC.

УПРАВЛЕНИЕ ЛОКАЦИОННЫМИ СЕРВИСАМИ ДЛЯ МОБИЛЬНЫХ УСТРОЙСТВ. .

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

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

Изобретение относится к способам охранного мониторинга местности и может быть использовано в случаях сигнализационного контроля развилки дороги одним линейным радиоволновым средством обнаружения (СО).

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности и скорости обнаружения сетевых атак в магистральных сетях.

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

Группа изобретений относится к области машинного обучения и может быть использована для оценки обучающих объектов. Техническим результатом является повышение эффективности алгоритма машинного обучения при экономии вычислительных ресурсов.

Группа изобретений относится к области машинного обучения и может быть использована для оценки обучающих объектов. Техническим результатом является повышение эффективности алгоритма машинного обучения при экономии вычислительных ресурсов.

Изобретение относится к извлечению информации из текстов на естественных языках. Техническим результатом является повышение точности сентиментного анализа текстов на естественном языке, осуществляемого на уровне аспектов текстов.

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

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

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

Изобретение относится к способу и устройству построения базы знаний. Технический результат заключается в повышении скорости построения базы знаний.

Группа изобретений относится к здравоохранению, а также наукометрическим способам и системам анализа данных о научно-исследовательских проектах с целью выявления перспективного проекта или направления исследования в предметной области «биомедицина» по максимальному количеству набранных баллов по оцениваемым критериям и построения рейтинга для нескольких оцениваемых проектов или направлений исследований по возрастанию или убыванию упомянутых баллов.

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