Читать «Цифровой журнал «Компьютерра» № 153» онлайн - страница 3

Коллектив авторов

Google Now внимательно следит за пользователем, а затем использует полученные знания, чтобы самостоятельно подбирать полезную ему информацию. Когда пользователь отправляется в путь, система заранее предупреждает о пробках на маршруте, который он часто использует в такое время, сама отыскивает результаты спортивных матчей, если замечает интерес к тому или иному виду спорта или команде, и сама напоминает о событиях ещё нескольких типов. Пока что функциональность Google Now оставляет желать лучшего, но в Google планируют значительно расширить её. Чуть ли не каждое подразделение компании готовит собственный модуль, и остается лишь разобраться с ранжированием результатов. Это, впрочем, в Google тоже отлично умеют делать.

Всё это созвучно изначальной идее Шилита «предсказывать действия людей на основании ситуации». Google Now уже умеет извлекать данные из истории запросов к поисковой системе, а в будущем начнёт анализировать и письма из Gmail, календарь, данные о социальных связях из Google+ и так далее.

Проблемы — фундаментальные и не очень

Миниатюризация электроники, распространение GPS и беспроводной связи устранили большинство препятствий, мешавших разработке контекстозависимых устройств и приложений. Но главное, чего не было во времена ParcTab, — это обширные базы данных, которые существуют сегодня. Google, Yelp или Foursquare могут без труда сказать, где находится ближайшая, например, аптека, а в будущем, вероятно, такие сервисы будут знать и о том, какие в этой аптеке есть лекарства.

Важное подспорье для электронных помощников — социальные сети. Они хранят бесценные архивы наших личных данных, знают всё о наших социальных связях и даже о наших предпочтениях. Представим простую жизненную ситуацию: один пользователь хочет пригласить в кино другого, но нужно определиться с деталями: когда и куда идти? Какой фильм смотреть? Не проблема: система, которой известны вкусы обоих пользователей, расположение кинотеатров и их программа, легко может выдать рекомендации, отсортированные в порядке потенциальной полезности.

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

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