ФОРМИРОВАНИЕ КАРТ ЧАСТНЫХ МЕСТ С ИСПОЛЬЗОВАНИЕМ ДАТЧИКОВ МОБИЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ УСТРОЙСТВ
CREATING MAPS OF PRIVATE SPACES USING SENSORS OF MOBILE COMPUTING DEVICES

Предпосылки создания изобретения
Пользователи компьютеров могут использовать ряд общедоступных онлайновых служб для составления карты общедоступных мест. Тем не менее, современные онлайновые службы составления карт основываются на трудоемком сборе данных в нескольких местоположениях с помощью централизованной службы. Кроме того, адаптация к изменениям в общедоступных местах, требующая обновления существующих карт, часто сложна без координации между третьим лицом и централизованной службой для выполнения таких задач, как физическое панорамирование общедоступных мест с помощью датчиков, создание записей о любых изменениях и передача изменений централизованной службе, чтобы существующие карты могли быть исправлены. Различные варианты осуществления настоящего изобретения были выполнены с учетом этих и прочих соображений.
Сущность изобретения
За краткое изложение сущности изобретения предоставлено для ознакомления в упрощенном виде с подборкой концепций, которые дополнительно описаны ниже в подробном описании. Данное краткое изложение сущности изобретения не предназначено ни для установления ключевых признаков или существенных признаков заявленного изобретения так, ни для использования в качестве средства при определении объема заявленного изобретения.
Предоставлены варианты осуществления для формирования карт частных мест, используя датчики мобильного вычислительного устройства. Данные датчиков могут быть приняты от одного или более мобильных вычислительных устройств для определения цифровой подписи, описывающей частное место. Данные планирования также могут быть приняты от одного или более мобильных устройств. Данные планирования могут описывать местоположение, связанное с частным местом, для которого будет составлена карта. Затем может быть сформирована цифровая карта частного места из цифровой подписи и местоположения, связанного с частным местом в данных планирования.
Эти и прочие признаки и преимущества станут очевидными из прочтения нижеследующего подробного описания и просмотра связанных с ним чертежей. Следует понимать, что как предшествующее общее описание, так и нижеследующее подробное описание являются лишь пояснительными и не ограничивают заявленное изобретение.
Краткое описание чертежей
Фигура 1 является структурной схемой, иллюстрирующей сетевую архитектуру для формирования карт частных мест, используя датчики мобильных вычислительных устройств, в соответствии с различными вариантами осуществления;
Фигура 2 является структурной схемой, иллюстрирующей компоненты цифровой карты, сформированной для частного места, используя датчики мобильных вычислительных устройств, в соответствии с различными вариантами осуществления;
Фигура 3 является структурной схемой, иллюстрирующей серверную вычислительную среду, которая может использоваться для формирования карт частных мест, используя датчики мобильных вычислительных устройств, в соответствии с различными вариантами осуществления;
Фигура 4 является логической блок-схемой, иллюстрирующей процедуру для сбора данных датчика для использования при формировании карт частных мест, в соответствии с различными вариантами осуществления; и
Фигура 5 является логической блок-схемой, иллюстрирующей процедуру для обработки данных датчика и формирования карт частных мест, в соответствии с различными вариантами осуществления.
Подробное описание
Предоставлены варианты осуществления для формирования карт частных мест с использованием датчиков мобильного вычислительного устройства. Данные датчиков могут быть приняты от одного или более мобильных вычислительных устройств для определения цифровой подписи, описывающей частное место. Данные планирования также могут быть приняты от одного или более мобильных устройств. Данные планирования могут описывать местоположение, связанное с частным местом, для которого будет составлена карта. Затем может быть сформирована цифровая карта частного места из цифровой подписи и местоположения, связанного с частным местом в данных планирования.
В нижеследующем подробном описании делаются ссылки на сопроводительные чертежи, которые образуют его часть и которые показаны в качестве иллюстраций конкретных вариантов осуществления или примеров. На прилагаемых чертежах идентичные цифровые обозначения представляют аналогичные элементы на протяжении нескольких фигур. Эти варианты осуществления могут быть объединены, могут быть использованы другие варианты осуществления, и могут быть выполнены структурные изменения, не отступая от сущности и объема настоящего изобретения. Вследствие этого, нижеследующее подробное описание не должно рассматриваться в ограничительном смысле, и объем настоящего изобретения определяется прилагаемой формулой изобретения и ее эквивалентами.
Теперь обращаясь к чертежам, на которых одинаковые цифровые обозначения представляют подобные элементы на нескольких фигурах, будут описаны различные аспекты настоящего изобретения. Фигура 1 является структурной схемой, иллюстрирующей сетевую архитектуру для формирования карт частных мест, используя датчики мобильного вычислительного устройства, в соответствии с различными вариантами осуществления. Сетевая архитектура включает в себя мобильные вычислительные устройства 2A-2C, которые могут осуществлять связь с клиентскими вычислительными устройствами 6A-6B и сервером 70 через сеть 4. В соответствии с различными вариантами осуществления, сеть 4 может быть выполнена в виде локальной сети или глобальной сети (например, Интернет).
Мобильные вычислительные устройства 2A-2C могут включать в себя датчики 40A-40C и данные 42A-42С планирования, соответственно. В соответствии с различными вариантами осуществления, мобильное вычислительное устройство 2 может быть выполнено в виде мобильного телефона, смартфона («интеллектуального телефона»), планшетного компьютера или компьютера класса лэптоп, который выполнен с возможностью исполнения одной или более прикладных программ. Как известно специалистам в данной области техники, смартфон может быть выполнен в виде мобильного телефона с функциональными возможностями компьютера и/или который выполнен с возможностью исполнения программного обеспечения операционной системы для обеспечения стандартизованного интерфейса и платформы для разработчиков приложений.
Датчики 40A-40C (которые могут быть в составе или соединены с) мобильных вычислительных устройств 2A-2C могут быть выполнены с возможностью измерения/обнаружения данных некоторого количества типов, связанных с мобильными вычислительными устройствами 2A-2C, включая, но не в ограничительном смысле, высоту над уровнем моря, местоположение, силу сигнала, ориентацию и силу. Датчики 40A-40C также могут быть выполнены с возможностью обнаружения присутствия беспроводной сети (например, «Wi-Fi» сети), Wi-Fi точки доступа или других мобильных вычислительных устройств (например, через беспроводную технологию BLUETOOTH), фактически не создавая сеть или соединение с устройством). Таким образом, в соответствии с вариантом осуществления, датчики 40A-40С, которые должны быть известны специалистам в данной области техники, могут включать в себя высотомер, GPS, устройство интерфейса беспроводной сети (для обнаружения силы сигнала и для обнаружения и организации соединения с другими беспроводными сетями/устройствами), гироскоп и датчик усилия. Как будет здесь более подробно описано в отношении фигур 4-5, датчики 40A-40С могут использоваться для создания «цифровой подписи» для составления карты частного места (например, конференц-зала в офисном здании) в соответствии с различными вариантами осуществления. Следует понимать, в соответствии с вариантом осуществлении, что датчики 40A-40С не обязательно могут быть физически соединены с мобильными вычислительными устройствами 2A-2C, а могут быть соединены беспроводным образом для обмена данными. Например, датчики 40A-40C могут быть выполнены в виде обеспечивающих себя энергией из окружающей среды (например, фотогальванических) датчиков, которые могут быть прикреплены к стене и которые могут осуществлять широковещательную передачу данных измерения (например, информацию местоположения), используя любую из ряда технологий маломощной беспроводной связи, известных специалистам в данной области техники. Например, датчики 40A-40С могут использовать беспроводную технологию BLUETOOTH комплекта протоколов маломощной связи, основанных на спецификации ZIGBEE.
В соответствии с вариантом осуществления, данные 42A-42C планирования могут содержать основанную на местоположении информацию, приведенную в соответствующих расписаниях пользователей, ассоциированных с мобильными вычислительными устройствами 2A-2C. В частности, данные 42A-42C планирования могут содержать данные местоположения, составленные службой планирования на сервере 70. Например, данные 42A-42C планирования могут идентифицировать собрание в 3 часа после полудня в конференц-зале «J офисного здания, для пользователей мобильных вычислительных устройств 2A-2C. В соответствии с вариантом осуществления, данные местоположения в данных 42A-42C планирования могут передаваться в полезной нагрузке по каналу связи от мобильных вычислительных устройств 2A-2C на сервер 70. В соответствии с вариантом осуществления, канал связи может быть реализован по протоколу EXCHANGE ACTIVESYNC, разработанный MICROSOFT CORPORATION, Редмонд, штат Вашингтон. Как будет более подробно описано ниже в отношении фигур 4-5, данные местоположения в данных 42A-42C планирования могут быть использованы, в сочетании с данными, измеренными датчиками 40A-40C, для формирования карт частных мест. Следует понимать, что формирование карт, как здесь определено, включает в себя расширение публично доступных карт с помощью информации о частных местах. В соответствии с вариантом осуществления, публично доступные карты могут быть предоставлены онлайновой web-службой, такой как web-служба составления карт (карты рафирования) BING MAPS от MICROSOFT CORPORATION, Редмонд, штат Вашингтон. Следует иметь в виду, что общедоступные карты и службы составления карт от других поставщиков также могут быть использованы в соответствии с различными описываемыми здесь вариантами осуществления. Следует понимать, в соответствии с различными вариантами осуществления, что «частные места» могут включать в себя, но не в ограничительном смысле, различные местоположения, включая отдельные офисы и залы для проведения собраний (например, конференц-залы и аудитории) в здании или зданиях, которые находятся на территории коммерческого предприятия, на которую общественность (т.е. общественные компании составления карт) не имеют физического доступа и/или доступа к наименованиям различных находящихся на ней местоположений.
Клиентские вычислительные устройства 6A-6B могут включать в себя датчики 40D-40E и данные 42D-42E планирования, соответственно, которые могут быть аналогичны датчикам 40A-40С и данным 42A-42C планирования в мобильных вычислительных устройствах 2A-2C (рассмотренных выше). В соответствии с различными вариантами осуществления, клиентские вычислительные устройства 2 могут быть выполнены в виде настольного компьютера или рабочей станции, который выполнен с возможностью исполнения одной или более прикладных программ. В соответствии с различными вариантами осуществления, клиентские вычислительные устройства 6A-6B также могут использоваться в качестве вводов данных датчика совместно с, и аналогичным образом как, мобильные вычислительные устройства 2A-2C, применительно к составлению карт частных мест.
Сервер 70 может содержать приложение 72 службы составления карт и планирования и базу 74 данных карт. В соответствии с различными вариантами осуществления, сервер 70 может обеспечивать как службу частного составления карт, так и службу частного планирования для планирования и составления карт частных местоположений, связанных с пользователями мобильных вычислительных устройств 2A-2C и клиентских вычислительных устройств 6A-6B. Следует понимать, что служба частного составления карт и служба частного планирования могут быть выполнены в виде единой объединенной службы или, в качестве альтернативы, в виде двух отдельных служб. Таким образом, следует иметь в виду, что сервер 70 может представлять службы, которые размещаются на нескольких серверах или других комплексных компьютерных системах. В соответствии с вариантом осуществления, приложение 72 службы составления карт и планирования может быть выполнено с возможностью формирования карт частных мест, используя данные датчика, собранные от мобильных датчиков 40A-40C (и опционально датчиков 40D-40E), как впрочем, и данные 42A-42C планирования (и опционально данные 42D-42E планирования). В частности, и как будет более подробно описано ниже в отношении фигур 4-5, приложение 72 службы составления карт и планирования может быть выполнено с возможностью сбора данных датчиков и местоположения от мобильных вычислительных устройств 2A-2C (и, в необязательном порядке, вычислительных устройств 6A-6B) и выполнения статистического анализа для назначения наименований местоположения (и их электронного определения) с достоверностью выше среднего уровня. Кроме того, приложение 72 службы составления карт и планирования может быть выполнено с возможностью использования большого количества соединенных мобильных устройств для получения «коллективного» именования частных мест посредством использования статистики (т.е. плотности информации в заданный момент времени и в течение периода времени) для определения фактического именования частных мест. В соответствии с вариантом осуществления, приложение 72 службы составления карт и планирования может быть выполнено в виде серверного приложения для организации групповой работы, такого как приложение для организации групповой работы EXCHANGE SERVER от MICROSOFT CORPORATION, Редмонд, штат Вашингтон. Следует иметь в виду, что другие серверные приложения для организации групповой работы от других производителей могут быть использованы в соответствии с различными описываемыми здесь вариантами осуществления. База 74 данных карт может хранить карты 76, 78 и 80. Карты 76, 78 и 80 могут представлять собой цифровые карты частных мест, сформированные приложением 72 службы составления карт и планирования с использованием принятых данных датчиков, собранных с мобильных датчиков 40A-40C (и опционально датчиков 40D-40E), и данных местоположения, принятых из данных 42A-42C планирования (и, в необязательном порядке, данных 42D-42E планирования). Следует понимать, что карты 76, 78 и 80 могут содержать публично доступные карты (такие как те, что предоставляются онлайновой службой составления карт), которые «снабжены метками» или расширены данными датчиков и данными местоположения частного места, которые определены приложением 72 службы составления карт и планирования. Таким образом, как рассмотрено выше, «формирование» цифровых карт частных мест может включать в себя расширение или добавление меток на публично доступные карты с информацией частного места (т.е. собранных данных датчиков и местоположения от мобильных вычислительных устройств 2A-2C (и, в необязательном порядке вычислительных устройств 6A-6B)). Кроме того следует понимать, что расширенные или с добавленными метками общедоступные карты не могут обратным образом не использоваться совместно с онлайновой службой составления карт, от которой они были получены, или могут не быть иным образом сделаны общедоступными, тем самым гарантируя их конфиденциальность.
Фигура 2 является структурной схемой, иллюстрирующей компоненты цифровой карты 76, сформированной приложением 72 службы составления карт и планирования, для частного места, используя датчики мобильного вычислительного устройства, в соответствии с различными вариантами осуществления. Карта 76 включает в себя данные 82 датчиков, которые могут представлять собой цифровую подпись частного места. Данные 82 датчиков могут включать в себя данные, собранные от датчиков 40A-40C в мобильных вычислительных устройствах 2A-2C, связанных с наименованием одного местоположения, идентифицированного в качестве данных 84 местоположения, которые в свою очередь могут быть собраны из данных 42A-42C планирования. Данные 84 местоположения могут включать в себя наименование для частного места, для которого составлена карта, и могут быть получены из информации, которая содержится в данных 42A-42C планирования (например, наименование конференц-зала для запланированного собрания) или из псевдонимов или других разговорных слов для частного места, которые могут использоваться пользователями мобильных вычислительных устройств 2A-2C.
Примерная рабочая среда
Теперь обращаясь к фигуре 3, нижеследующее описание предназначено для представления краткого, общего описания приемлемой вычислительной среды, в которой могут быть реализованы различные иллюстративные варианты осуществления. Несмотря на то, что различные варианты осуществления будут описаны в общем контексте программных модулей, которые исполняются в сочетании с программными модулями, которые выполняются на основе операционной системы на вычислительном устройстве, специалисты в соответствующей области поймут, что различные варианты осуществления также могут быть реализованы в сочетании с другими типами компьютерных систем и программных модулей.
Как правило, программные модули включают в себя процедуры, программы, компоненты, структуры данных и прочие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Более того, специалистам в данной области техники следует иметь в виду, что различные варианты осуществления могут быть воплощены на практике при помощи ряда конфигураций компьютерной системы, включая переносные устройства, многопроцессорные системы, основанную на микропроцессоре или программируемую бытовую электронику, миникомпьютеры, компьютеры класса мэйнфрейм и подобное. Различные варианты осуществления также могут быть воплощены на практике в распределенных вычислительных средах, в которых задачи выполняются удаленными устройствами обработки данных, которые связаны через сеть связи. В распределенной вычислительной среде программные модули могут размещаться как на локальных, так и удаленных запоминающих устройствах.
Фигура 3 показывает сервер 70, который может включать в себя компьютер, выполненный с возможностью исполнения одной или более прикладных программ. Сервер 70 включает в себя, по меньшей мере, один центральный блок 8 обработки данных (CPU), системную память 12, включающую в себя оперативное запоминающее устройство 18 (RAM) и постоянное запоминающее устройство 20 (ROM), и системную шину 10, которая соединяет память с CPU 8. Базовая система ввода/вывода, содержащая базовые процедуры, которые помогают переносить информацию между элементами в компьютере, как, например, во время запуска, хранится в ROM 20.
Сервер 70 дополнительно может включать в себя запоминающее устройство 14 большой емкости для хранения операционной системы 32, приложения 72 службы составления карт и планирования и базы 74 данных карт (включающей в себя карты 76, 78 и 80). В соответствии с различными вариантами осуществления, операционная система 32 может быть приемлемой для управления работой сетевого компьютера, такой как операционные системы WINDOWS от MICROSOFT CORPORATION, Редмонд, штат Вашингтон. Запоминающее устройство 14 большой емкости соединено с CPU 8 посредством контролера запоминающего устройства большой емкости (не показан), соединенного с шиной 10. Запоминающее устройство 14 большой емкости и связанные с ним машиночитаемые носители информации обеспечивают энергонезависимое хранилище для сервера 70. Используемое здесь понятие «машиночитаемый носитель информации» может включать в себя компьютерные носители данных. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители информации, реализованные любым способом или по любой технологии для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули и прочие данные. Компьютерные носители данных могут включать в себя, но не в ограничительном смысле, RAM, ROM, электрически стираемое постоянное запоминающее устройство (EEPROM), флэш-память или другую технологию памяти, CD-ROM, цифровые универсальные диски (DVD) или другое оптическое запоминающее устройство, магнитные кассеты, магнитную ленту, запоминающее устройство на магнитном диске или другие магнитные запоминающие устройства, либо любой другой носитель, который может быть использован для хранения информации, и доступ к которому может осуществляться со стороны сервера 70. Любые такие компьютерные носители данных могут быть частью сервера 70.
Используемое здесь понятие «машиночитаемый носитель» информации также может включать в себя среды связи. Среды связи могут воплощать машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другой механизм транспортировки, и включают в себя любые среды доставки информации. Понятие «модулированный сигнал данных» может описывать сигнал, который обладает одной или более характеристиками, которые задаются или меняются таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, среды связи могут включать в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные (RF), инфракрасные и другие беспроводные среды.
В соответствии с различными вариантами осуществления изобретения, сервер 70 может работать в сетевой среде, используя логические соединения с удаленными компьютерами через сеть 4. Сервер 70 может соединяться с сетью 4 посредством блока 16 сетевого интерфейса, соединенного с шиной 10. Следует иметь в виду, что блок 16 сетевого интерфейса также может использоваться для соединения с другими типами сетей и удаленных вычислительных систем. Сервер 70 также может включать в себя контроллер 22 ввода/вывода для приема и обработки ввода от некоторого количества типов средств ввода, включая клавиатуру, манипулятор типа мышь, перо, стилус, палец и/или другие средства (не показаны). Аналогичным образом, контроллер 22 ввода/вывода может обеспечивать вывод на устройство 85 отображения, как впрочем, и принтер или другой тип устройства вывода (не показано). Следует иметь в виду, что мобильные вычислительные устройства 2A-2C и клиентские вычислительные устройства 6A-6B, показанные на фигуре 1, могут включать в себя многие из традиционных компонентов, показанных и рассмотренных выше в отношении сервера 70. В соответствии с различными вариантами осуществления, мобильные вычислительные устройства 2A-2C также могут включать в себя дополнительные традиционные компоненты (не показаны), такие как беспроводное радио, источник питания (например, съемную или несъемную батарею), совокупность различных датчиков и часы реального времени.
Фигура 4 является логической блок-схемой, иллюстрирующей процедуру 400 сбора данных датчиков для использования при формировании карт частных мест, в соответствии с различными вариантами осуществления. При прочтении представленного здесь рассмотрения процедуры следует иметь в виду, что логические операции различных вариантов осуществления настоящего изобретения могут быть реализованы (1) в качестве последовательности реализуемых компьютером действий или программных модулей, исполняемых в вычислительной системе, и/или (2) в качестве взаимосвязанных схем машинной логики или схемных модулей в вычислительной системе. Реализация является вопросом выбора, который зависит от требований к производительности вычислительной системы, реализующей изобретение. Соответственно, логические операции, иллюстрируемые на фигурах 4-5 и образующие различные описываемые здесь варианты осуществления, именуются по-разному, а именно как: операции, структурные устройства, действия или модули. Специалисту в данной области техники будет понятно, что эти операции, структурные устройства, действия и модули могут быть реализованы в программном обеспечении, во встроенном программном обеспечении (firmware), в специализированной цифровой логике или в любом их сочетании, не отклоняясь от сущности и объема настоящего изобретения, определяемого изложенной здесь формулой изобретения.
Процедура 400 начинается с операции 405, где приложение 72 составления карт и планирования (здесь и далее именуемое как «приложение 72»), исполняемое на сервере 70, принимает данные датчиков мобильных устройств, чтобы определить цифровую подпись. В частности, приложение 72 может принять данные датчиков, измеряемые датчиками в одном или более мобильных вычислительных устройствах 2A-2C, для определения цифровой подписи, описывающей частное место. В соответствии с вариантом осуществления, данные датчиков (как впрочем, и данные местоположения) могут всегда отправляться с мобильных вычислительных устройств 2A-2C на сервер 70 как данные датчиков, обнаруженные датчиками 40A-40C. В качестве альтернативы, данные датчиков (как впрочем, и данные местоположения) могут отправляться только после того, как приложение 72 запрашивает пользователей мобильных вычислительных устройств 2A-2C. В качестве альтернативы, данные датчиков (как впрочем, и данные местоположения) могут отправляться через соответствующие интервалы, как определено приложением 72. Более того, приложение 72 также может требовать разовое согласие пользователя на отправку данных датчиков (как впрочем, и данных местоположения) с мобильных вычислительных устройств (2A-2C) на сервер 70 для всех последующих взаимодействий, запрашивать подтверждение пользователей перед каждым запросом на отправку данных датчиков (как впрочем, и данных местоположения) и требовать от пользователя инициирование отправки данных датчиков (как впрочем, и данных местоположения) на сервер 70. Следует иметь в виду, что соображения конфиденциальности и законности в различных географических местоположениях могут служить основанием для определения сбора данных датчика (как впрочем, и данных местоположения) приложением 72. Кроме того следует иметь в виду, что в соответствии с вариантом осуществления, сбор данных датчика и местоположения приложением 72 может быть ограничен по времени часами работы компании и дополнительно ограничен по географии, чтобы находиться в границах территории компании.
От операции 405, процедура 400 переходит к операции 410, где приложение 72 определяет, соотносятся ли принятые данные датчиков с известным пользователем. В частности, приложение 72 может определить, соответствуют ли принятые данные датчиков пользователю одного из мобильных вычислительных устройств 2A, 2B или 2C, чье присутствие в сети распознано сервером 70. Если на операции 410 приложение 72 определяет, что принятые данные датчиков могут быть соотнесены с известным пользователем, тогда процедура 400 переходит к операции 415. Тем не менее, если на операции 410 приложение 72 определяет, что принятые данные датчиков не могут быть соотнесены с известным пользователем, тогда процедура 400 ответвляется к операции 430.
На операции 415 приложение 72 определяет, могут ли принятые данные датчиков быть соотнесены с данными пользователя. Например, приложение 72 может сравнить принятые данные датчиков от мобильного вычислительного устройства 2A с данными датчиков, ранее принятыми от пользователей мобильных вычислительных устройств 2B и 2C, чтобы определить, имеют ли все три устройства одинаковую цифровую подпись. Цифровая подпись может быть основана на силе сигнала Wi-Fi точки доступа, данных высотомера, данных GPS, силе сигнала мобильного оператора и т.д., как определяется датчиками 40A-40C. Если, на операции 415 приложение 72 определяет, что принятые данные датчиков могут быть соотнесены с данными пользователя, тогда процедура 400 переходит к операции 420. Тем не менее, если на операции 415 приложение 72 определяет, что принятые данные датчиков не могут быть соотнесены с данными пользователя, тогда процедура 400 ответвляется к операции 430.
На операции 420 приложение 72 принимает данные местоположения из данных планирования, связанных с мобильным вычислительным устройство, от которого были приняты данные датчиков. Например, приложение 72 может принять данные 42A планирования от мобильного вычислительного устройства 2A, чья цифровая подпись была ранее определена на основании данных 40A датчиков.
От операции 420 процедура 400 переходит к операции 425, где приложение 72 обрабатывает данные датчиков и планирования, чтобы сформировать цифровую карту. В частности, приложение 72 может построить цифровую карту частного места (например, конференц-зала), описанного цифровой подписью, которая определена из данных датчиков, и названного в качестве местоположения в данных планирования. Как рассмотрено выше в отношении фигуры 1, цифровые карты могут храниться в базе данных карт, такой как база 74 данных карт. После операции 425, затем процедура 400 завершается.
На операции 430 приложение 72 определяет, являются ли принятые данные датчиков релевантными. Например, если данные датчиков были приняты от пользователя в 3 часа 10 минут после полудня и дополнительно может быть определено приложением 72 из данных планирования, связанных с тем же самым пользователем, что у пользователя собрание в конференц-зале «J с 3 часов после полудня до 4 часов после полудня, тогда приложение 72 может определить, что данные датчика являются релевантными по отношению к местоположению конференц-зала J. Если на операции 430 приложение 72 определяет, что принятые данные датчиков являются релевантными, тогда процедура возвращается к операции 425. Тем не менее, если на операции 430 приложение 72 определяет, что принятые данные датчиков не являются релевантными, тогда процедура 400 переходит к операции 435, где принятые данные датчиков игнорируются. После операции 435, затем процедура 400 завершается.
Фигура 5 является логической блок-схемой, иллюстрирующей процедуру 500 обработки данных датчиков и формирования карт частных мест, в соответствии с различными вариантами осуществления. Процедура 500 начинается с операции 505, где приложение 72, исполняемое на сервере 70, определяет, являются ли данные датчиков, принятые от одного или более из мобильных вычислительных устройств 2A-2C, полностью новыми данными. В частности, приложение 72 может быть выполнено с возможностью определения того, совпадают ли принятые данные датчиков (т.е. цифровая подпись) с цифровой подписью для карты, которая хранится в базе 74 данных карт. Если на операции 505 приложение 72 определяет, что принятые данные датчиков являются полностью новыми данными, тогда процедура 500 переходит к операции 510. Тем не менее, если на операции 505, приложение 72 определяет, что принятые данные датчиков не являются полностью новыми данными, тогда процедура 500 ответвляется к операции 515.
На операции 510 приложение 72, после определения того, что принятые данные датчиков являются полностью новыми данными, создает и сохраняет запись для новых данных датчиков в базе 74 данных карт. В частности, приложение 72 может определить из данных планирования, связанных с мобильным вычислительным устройством, от которого были принятые новые данные датчиков, наименование местоположения для связывания с новыми данными датчиков. Например, если новые данные датчиков были собраны от мобильного вычислительного устройства 2A в 3 часа после полудня и данные планирования, связанные с мобильным вычислительным устройством 2A, указывают на то, что пользователь находится в «Аудитории Стивенса» в здании «K», на рабочем месте пользователя, тогда приложение 72 может создать новую запись для вышеупомянутого местоположения (т.е. «Аудитория Стивенса») и сохранить принятые данные датчиков, описывающие данное местоположение в здание «K», с наименованием местоположения «Аудитория Стивенса». После операции 510, затем процедура 500 завершается.
На операции 515 приложение 72, после определения того, что принятые данные датчиков не являются полностью новыми данными, может определить, могут ли принятые данные датчиков быть соотнесены с текущим местоположением, по меньшей мере, частично связанным с принятыми данными датчиков. Например, принятые данные датчиков могут включать в себя дополненные GPS данные датчиков, измеренные мобильным вычислительным устройство, которое имеет датчик, усиленный GPS, для измерения относительных усилий, действующих на устройство, для определения изменения высоты и перемещения внутри здания. В дополнение, принятые данные датчиков также могут включать в себя данные, идентичные данным датчиков, измеренным другими мобильными вычислительными устройствами, которые в настоящий момент располагаются в том же самом местоположении, что и мобильное вычислительное устройство, которое имеет дополненный датчик. Если на операции 515 приложение 72 определяет, что принятые данные датчиков могут быть соотнесены с текущим местоположением, тогда процедура 500 переходит к операции 520. Тем не менее, если на операции 515 приложение 72 определяет, что принятые данные датчиков не могут быть соотнесены с текущим местоположением, тогда процедура 500 ответвляется к операции 525.
На операции 520, приложение 72, после определения того, что принятые данные датчиков могут быть соотнесены с текущим местоположением, дополняет данные для текущего местоположения. В частности, приложение 72 может дополнить текущее местоположение и сохраненный набор данных датчиков для местоположения дополненными данными датчиков (например, дополненными GPS данными датчиков), рассмотренными выше в отношении операции 515. Следует иметь в виду, что в соответствии с вариантом осуществления, может существовать возможность использования большого количества измерений датчиков для уменьшения ошибки, которая может быть связана с дополненными данными датчика (такими как оцененными GPS измерениями), и тем самым увеличения точности фактического основывающегося на GPS-определения местонахождения местоположения, а также его высоты над уровнем моря. Таким образом, с течением времени, определение заданного местоположения будет продолжать становиться лучше. После операции 520, затем процедура 500 завершается.
На операции 525 приложение 72, после определения того, что принятые данные датчиков не могут быть соотнесены с текущим местоположением, определяет, совпадают ли данные датчиков с другим местоположением. В частности, приложение 72 может быть выполнено с возможностью обнаружения «выброса» данных, при котором принятые данные датчиков определяются как нерелевантные для текущего местоположения. Например, приложение 72 может определить из данных 42A-42C планирования для мобильных вычислительных устройств 2A-2C, что они указывают, что для пользователей этих устройств запланировано присутствие на собрании в конференц-зале «J» в 3 часа 10 минут после полудня, но также может определить, что данные датчиков для мобильного вычислительного устройства 2B указывают на то, что мобильное вычислительное устройство находится в другом местоположении (таком как офис пользователя) в запланированное время собрания. Таким образом, принятые данные датчиков от мобильного вычислительного устройства 2B не похожи на принятые данные датчиков от вычислительных устройств 2A и 2С и являются нерелевантными для цифрового определения конференц-зала «J». Тем не менее, принятые данные датчиков от мобильного вычислительного устройства 2B могут соотноситься с другим местоположением, которое хранится в базе 74 данных карт, таким как офис пользователя. Если, на операции 525, приложение 72 определяет, что принятые данные датчиков не совпадают с другим местоположением, тогда процедура 500 ответвляется к операции 535.
На операции 530 приложение 72, после определения того, что принятые данные датчиков совпадают с другим местоположением, дополняет данные для другого местоположения и может дополнительно запросить обратную связь от пользователя мобильного вычислительного устройства, от которого были приняты данные датчиков. Например, приложение 72 может дополнить другое местоположение, связанное с пользователем мобильного вычислительного устройства 2B, описанное на операции 525 (выше), и сохраненный набор данных датчиков для местоположения дополненными данными датчика, соответствующими офису пользователя. Следует понимать, что в соответствии с вариантом осуществления, приложение 72 также может быть выполнено с возможностью подтверждения цифровой подписи посредством фактического запроса обратной связи у пользователя с тем, чтобы подтвердить информацию. Например, приложение 72 может отправить сообщение, запрашивающее пользователя мобильного вычислительного устройства 2B, у которого в соответствии с данными 42B планирования запланировано присутствие в конференц-зале «J» в 3 часа 10 минут после полудня, что он в настоящий момент присутствует на собрании в вышеупомянутом конференц-зале (несмотря на принятые противоположные данные датчиков). После операции 530, затем процедура 500 завершается.
На операции 535 приложение 72, после определения того, что принятые данные датчиков не совпадают с другим местоположением, определяет, являются ли принятые данные датчиков релевантными. В частности, приложение 72 может определить, что принятые данные датчиков соответствуют набору данных датчиков, который хранится в базе 74 данных карт, но что данные местоположения (извлеченные из данных планирования пользователя), связанные с принятыми данными датчиков, не хранятся в базе 74 данных карт. Если на операции 535, приложение 72 определяет, что принятые данные датчиков являются релевантными, тогда процедура 500 возвращается к операции 510. В соответствии с вариантом осуществления, принятые данные датчиков могут быть определены как релевантные, если данные местоположения включают в себя информацию, которая относится к конференц-залу или офису, связанным с местом работы. Следует иметь в виду, что вышеупомянутая ситуация может произойти, когда происходит изменение места, используемого сотрудниками компании. Например, недавно был проведен проект модернизации по переделке конференц-зала «J» (и других смежных залов) для создания новой аудитории. Приложение 72, которое еще не было обновлено, не будет непосредственно знать, что конференц-зала более не существует, но со временем определит из данных планирования, что площадь, определяемая данными датчиков как конференц-зал «J», теперь именуется как «Аудитория Ньютона». Если на операции 535 приложение 72 определяет, что принятые данные датчиков являются нерелевантными, тогда процедура 500 переходит к операции 540.
На операции 540 приложение 72, после определения того, что принятые данные датчиков являются нерелевантными, может проигнорировать принятые данные датчиков. Например, приложение 72 может определить, что принятые данные датчиков соответствуют набору данных датчиков в базе 74 данных карт, но что данные планирования пользователя указывают на то, что пользователь находится в отпуске или вне офиса. Данная ситуация может произойти, например, когда пользователь находится на рабочем месте его/ее компании, однако лишь посещая коллегу в выходной день. После операции 540, затем процедура 500 завершается.
Следует понимать, что в соответствии с другим вариантом осуществления приложение 72 может быть выполнено с возможностью, в ответ на прием дополненных данных датчиков (например, GPS) для частного места, активно опрашивать пользователя мобильного вычислительного устройства, которое предоставляет дополненные данные датчиков, и дополнительно помечать частное место с помощью более точного местоположения с тем, чтобы улучшить навигацию по зданию, и т.д. В соответствии с другим вариантом осуществления, пользователи мобильных вычислительных устройств 2A-2C и клиентских вычислительных устройств 6A-6C могут иметь возможность удаления данных датчиков и/или планирования, собранных с этих устройств приложением 72, с тем чтобы выполнить требования закона и конфиденциальности, которые могут существовать в географической области пользователя. В соответствии с другим вариантом осуществления, приложение 72 может быть выполнено с возможностью автоматического удаления записей из базы 74 данных карт, к которым не осуществлялся доступ, которые не были дополнены или иным образом обновлены после того, как истек предварительно определенный период времени.
Несмотря на то, что изобретение было описано в связи с различными иллюстративными вариантами осуществления, специалисты в данной области техники будут понимать, что в отношении него может быть выполнено множество модификаций в рамках объема, определяемого нижеследующей формулой изобретения. Соответственно, это не означает, что объем настоящего изобретения каким-либо образом ограничивается вышеприведенным описанием, а вместо этого целиком определяется посредством обращения к нижеследующей формуле изобретения.