топ 5 уток акинатор
Интернет-гений? Я бы так не сказала. Чем менее популярен ваш персонаж, тем меньше шансов, что гений «прочтёт ваши мысли»
«Акинатор» — компьютерная интернет-игра, разработанная двумя французскими программистами в 2007 году. Игрок должен загадать любого персонажа, а Джинн Акинатор — главный персонаж игры — должен его отгадать.
Загадывать можно абсолютно любого героя, причём совсем необязательно из фильмов или книг. Акинатор неплохо угадывает и реально известных людей среди актёров, певцов, исторических личностей и видеоблоггеров.
Таким образом и напрашивается вывод: нет никакой магии и чтения мыслей; чем известнее твой персонаж, тем скорее его отгадает Акинатор.
Вы загадываете персонажа, а Акинатор попытается его отгадать, задавая вопросы, на которые даётся ответ «Да» или «Нет». Есть ещё варианты ответов «Я не знаю», «Возможно», «Не совсем».
И всё в таком духе. Дальше круг поиска сужается, и вопросы идут более конкретные. Например:
Так, например, Акинатор с первого раза отгадал у меня богиню Цетрион из игры Mortal Kombat 11.
Очень часто бывает так, что, если вы задумали редкого персонажа, перед вердиктом Акинатора придётся в принудительном порядке посмотреть рекламный видеоролик длительностью в 30 секунд. В противном случае покупайте себе премиум-аккаунт и радуйтесь приложению, в котором нет рекламы.
— требует работающего интернета, без него играть не получится;
+ не требует регистрации;
От меня четыре звезды. А игру/приложение рекомендую.
Как акинатор угадывает? На чем основан принцип его распознавания?
Sergey Litvinov дал ссылку на исчерпывающее описание общей сути алгоритма.
Если же вы хотели получить ответ простыми словами, то можно ответить так.
Но это уже детали. А общий принцип таков: каждый раз после вашего ответа у Акинатора «в голове» остаётся список персонажей, которые соответствуют вашим ответам. И каждый раз он старается задать вопрос, который вычеркнет наибольшее число вариантов, пока не останется один вариант.
В реальности алгоритм Акинатора гораздо масштабнее и хитрее описанного. Он учитывает разные нюансы, в том числе, насколько я заметил, он учитывает тренды (например, допустим, персонажей из сериалов чаще загадывают после того, как закончилась очередная серия). Если много других людей незадолго перед вами вдруг загадали какого-то персонажа, высока вероятность, что и вы тоже решили его загадать. Он даже подстраивается под ваши личные интересы. Если вы, например, любите задавать вопросы о вымышленных персонажах (как мой племянник), Акинатор будет ожидать этого и в следующий раз.
Может казаться чудом, что Акинатор за 20 вопросов часто умудряется отгадать вашего персонажа, ведь он, вроде, и вопросов никаких особых не задал. Однако математика нам говорит, что если бы на каждом из 20 вопросов удавалось подобрать такой вопрос, чтобы ответ всегда отсеивал половину вариантов (как вопрос «женщина ли она»?), то 20 вопросов было бы достаточно, чтобы правильно отличать больше миллиона разных персонажей. А 40 вопросов было бы достаточно, чтобы отличить свыше триллиона (!) персонажей. Акинатор спроектирован так, чтобы как можно лучше находить нужные вопросы, и у него это весьма хорошо получается.
Всем Приветик!
Игрушку Акинатор многие, наверное, слышали уже. Многие играли. Ну а есть такие, кто не слышал? есть? Тогда сейчас расскажу, что это такое))
Эту игрушку-развлекушку я нашла года 3 или 4 назад. Поиграла пару раз и забыла.
Можно загадать как реального человека, так и вымышленного. И он его непременно отгадает, конечно, если ваш загаданный человек-персонаж есть в базе данных)))
Для начала нужно написать свой возраст. Так и не поняла зачем.
Я вот решила проверить его на самом легком и загадала великого Александра Сергеевича Пушкина. Отгадает ли Акинатор поэта за 10 вопросов?
Вуаля! 9 вопросов наводящих и никакого волшебства! Даже можно сказать, что Акинатор отгадал Александра Сергеевича за 8 вопросов, т.к. на 9 он задает напрямую и упоминает Пушкина.
С Великим Поэтом он справился на ура! А как обстоят дела с современным персонажем из мультика?
Я загадала Энди Ларкина из мульсериала «Что с Энди», который шел на канале Джетикс. (очень классный мульт, даже сейчас скачала все серии через интернет, рекомендую)
Акинатору потребовалась около 40 вопросов, чтобы его угадать полностью.
Но в середине своего «допроса» он выдал неправильного персонажа
Конечно же я нажала кнопку и нет и потребовала, чтобы он отгадал того, кого я загадала.
Во время вопросов у Акинатора менялись мимика и жесты. Под конец он уже весь покраснел и закипал как чайник)))
Дальше я загадала Аллу Пугачеву, чтобы проверить как он знает современных знаменитых людей.
На отгадку певицы у Акинатора ушло ровнехонько 10 вопросов.
А чебурашку он отгадал вообще за 5!
В конце нам предлагают добавить свой вопрос, поменять фото персонажа и др) А так же пишут, сколько всего раз этот персонаж был загадан.
На сайте есть история Акинатора, много рекламы, которая мне не мешает. И есть возможность скачать это приложение на ваш смартфон.
В целом, эта игрушка тупо для убивания времени и то, в неё мне быстро надоело играть. Скачивать на смартфон я это не собираюсь, т.к. лучше поиграю в другую более интересную игру.
Этаигрушка подойдет для детей и надолго займет вашего ребенка. Т.к. в его возрасте это будет действительно волшебство и он будет недоумевать, как Акинатор всё отгадывает)) А те, кто постарше поймут, что это просто ловкость мысли и никакого мошенничества)))
Как только я поиграла в эту игру, я уже поняла, что я играла в неё в детстве вместе с мамой.
Мы тоже загадывали персонажа, я или мама была Акинатором и путем наводящих вопросов отгадывали)) Было намного интереснее играть в эту игру «из головы», без компа, смартфона. Чисто живое общение. Я считаю это намного полезнее и интереснее, чем тупо ребенка усадить за комп и включить ему этого Акинатора. Играя с ребенком воображаемого Акинатора, вы проведете с ним больше времени, больше узнаете его, может быть научите правильно говорить если ваш малыш произносит какие-либо слова неправильно.
Есть множество вариации этой игры и для молодежной подвыпившей компании.
Оставить точно такие же правила, но разнообразить. К примеру, ограничить количество возможных вопросов, например, до 10. И если ваш друг-подруга не отгадали вашего персонажа за 10 вопросов, то выбывают из игры, или выполняют желание. Можно придумать множество «наказаний». Так же каждому игроку можно налепить цветные стикеры на лоб и написать на стикере загаданного персонажа. Чтобы было все по честному и никто не мухлевал))
Акинатор я рекомендую чисто для «офисного планктона», когда реально делать уже нечего.
Игры Акинатор
Бесплатно играть в онлайн игры «Акинатор» на русском языке можно на любой операционной системе – Windows, BlackBerry 10, iOS, Android и проч. Несмотря на то, что в 2017 забавной игрушке исполнилось ровно 10 лет, популярность ее до сих пор растет.
Акинатор
Историю про джина Akinator придумали в 2007 году два французских программиста – Джефф Дел и Арно Мегре. Задумывалась она друзьями, как веселый розыгрыш. Парни и предположить не могли, что всего через год простенькая однопользовательская игра «The genie Akinator» превратит их в весьма обеспеченных и известных людей. И если сначала играть в Акинатор могли только те, кто знает французский, сегодня онлайн игра переведена на 15 других языков. Это важно, поскольку игровой процесс построен на возможности задавать вопросы и отвечать на них. Самые востребованные языки интерфейса:
Знакомьтесь: мистер Всезнайка
Как играть
От игрока требуется загадать персонажа. Им может стать литературный, кинематографический герой, реально существующая личность, животное или птица. Кто угодно: актер, певец, космонавт, президент, серийный убийца, твоя любимая бабушка и домашний котенок.
Затем Акинатор задает наводящие вопросы. Они могут быть самыми разными. На каждый предусмотрено пять вариантов ответа:
Отвечать требуется честно. Для этого кликай мышкой на подходящий вариант и переходи к следующему вопросу. Всего их может быть задано 40. Иногда хитрый джин угадывает персонажа раньше срока. Как ему это удается – уму непостижимо. Со стороны выглядит как полная фантастика. Неудивительно, что пользователи из сил выбиваются, пытаясь посадить мага в лужу. Попробуй, возможно, тебе повезет больше других. Если задать вопрос, на который Акинатор не сможет отгадать ответ, на экране откроется окно, через которое его можно будет внести в базу игры.
Акинатор и математика
Функциональные требования
Алгоритмы
Если бы не прощение ошибок, добиться желаемого можно было бы довольно просто. Например, можно было бы хранить дерево ответов на вопросы, в котором внутренние вершины соответствовали бы вопросам, а листы — ответам. Процесс игры тогда выглядел бы как спуск от корня к одному из листов. Тем не менее, с прощением ошибок этот алгоритм справляться не будет. Да и вопросы балансировки дерева возникают.
В каком-то смысле дерево — это очень «механистический», «машинный» способ игры, крайне неустойчивый к малейшим неточностям. Нам же нужно играть так, как стал бы играть рациональный человек. Тем, кто более-менее знаком с теорией вероятности, должно быть известно, что у нее существует так называемая Байесовская интерпретация, а также основанный на ней Байесовский подход. В основе этого подхода лежит описание знаний с помощью распределений случайных величин с последующим преобразованием априорных знаний в апостериорные на основе наблюдений при помощи знаменитой формулы Байеса. Более того, такой подход является единственным обобщением классической алгебры логики на случай неопределенности (об этом можно прочитать, например, тут). Это наводит многих ученых на мысль, что Байесовский подход является эталоном рационального мышления. Что же, нам только этого и нужно. Попробуем применить его к нашей задаче.
Байесовская модель
Итак, вспоминаем формулу Байеса: P(A|B) = P(B|A)P(A)/P(B). А теперь словами. Пусть нам нужно оценить вероятность того, что произошло событие A, при условии, что событие B точно произошло (то есть мы его гарантированно пронаблюдали; именно поэтому B часто называют наблюдением). По формуле Байеса эта вероятность пропорциональна произведению двух других. Первая из них, P(B|A), называется правдоподобием и показывает, с какой вероятностью событие B происходит при условии, что произошло A. Второй множитель, P(A), — это так называемая априорная вероятность события A, то есть вероятность, что оно в принципе произойдет (вне зависимости от B). По сути, эта вероятность отражает информацию, которую мы знали об A до того, как узнали о том, что произошло B. В знаменателе формулы также присутствует величина P(B), которая в данном случае просто играет роль нормировочного коэффициента и может быть проигнорирована.
Априорную вероятность P(Ai) можно рассматривать как частный случай P(Ai|B) при k=0. Иначе говоря, это вероятность, что игрок загадал объект i при условии, что вопросов задано не было, и мы вообще ничего не знаем. С одной стороны, можно было бы дать всем объектам равные P(Ai), т.к. это честно. С другой стороны, Барака Обаму наверняка будут загадывать намного чаще, чем Холдена Колфилда. Поэтому при прочих равных (то есть когда мы не можем различить объекты), следует выбирать именно Обаму. Следовательно, естественной оценкой P(Ai) будет отношение числа игр, когда был загадан X, к общему их числу.
Правдоподобие P(B|Ai) тоже получает удобную интерпретацию. Только прежде нужно воспользоваться одним небольшим трюком — предположить условную независимость ответов на вопросы при условии Ai (несколько грубое, но очень удобное для нас упрощение). В переводе на русский это значит, что по предположению вероятность P(B|Ai) может быть записана в виде произведения (по j) вероятностей P(Bj|Ai), где Bj — событие вида «На вопрос Qj был дан ответ Aj». P(Bj|Ai) в этом случае будет отношением числа раз, когда при загаданном объекте i на вопрос Qj был дан ответ Aj к числу раз, когда при загаданном объекте i в принципе был задан вопрос Qj. В целях избежания нулевых и неопределенных вероятностей предлагаю дополнительно считать, что изначально на каждый из вопросов каждый из вариантов ответов был дан по разу. То есть в случае, если вопрос Qj еще ни разу не задавался об объекте i, P(Bj|Ai) будет равно 1/Nj, где Nj — число вариантов ответа на вопрос Qj (я, к слову, использовал для всех вопросов одни и те же 4 варианта ответа: «да», «нет», «не знаю» и «вопрос не имеет смысла»).
Подведем промежуточный итог. Мы нашли простую формулу, которая отображает набор пар вопрос/ответ и некоторую сущность в вероятность, что при данных ответах на вопросы была загадана именно эта сущность. Пересчитав эту вероятность для всех объектов в нашей базе данных после ответа на новый вопрос можно видеть, какие из них больше похожи на загаданный объект на настоящий момент. Более того, обучение нашей модели реализуется довольно просто: нужно просто для каждой сущности в базе хранить информацию о том, какие вопросы про нее задавались и сколько ответов каждого из типов дали пользователи. После каждой игры эту информацию можно обновлять, основываясь на ответах пользователя. Также, для учета «популярности» персоны в базе нужно хранить число раз, которое персона была загадана.
Выбор вопросов, информация и энтропия
Ну что же, осталось только понять, какие вопросы лучше задавать. Естественно, задавать нужно те вопросы, которые дают больше информации. Но разве мы можем как-то эту информацию измерить? Оказывается, что да. Для этого можно воспользоваться понятием информационной энтропии. Если говорить грубо, но понятно, то информационная энтропия — это такая характеристика распределения случайной величины (измеряемая, как и информация, в битах), которая показывает, насколько мы не уверены в том, какое значение эта случайная величина примет. Например, если случайная величина принимает значение 1 с вероятностью 0.99, и значение 0 — с вероятностью 0.01, то энтропия такого распределения будет очень близка к нулю. Если же случайная величина принимает, к примеру, значения 0 и 1 с равными вероятностями 0.5 (орел или решка), то энтропия такой случайной величины будет равна 1 биту (это как раз то количество информации, которое мы должны получить, чтобы устранить неопределенность).
Ладно, давайте выбирать каждый раз тот вопрос, ответ на который сильнее всего уменьшит энтропию распределения P(Ai|B), которое как раз и отвечает за наши знания о том, кого загадал игрок. Тут сразу возникает еще одна проблема: вообще говоря, разные ответы на один и тот же вопрос могут уменьшать энтропию по разному. Что же делать? Предлагается находить тот вопрос, для которого ожидаемое уменьшение энтропии будет максимальным. Ожидаемое уменьшение энтропии показывает, насколько «в среднем» уменьшится энтропия, если мы зададим некоторый вопрос. Чтобы не писать здесь еще несколько абзацев текста, приведу формулу, по которой эту величину можно посчитать. Желающие без труда поймут, почему она имеет такой вид. Итак, нужно каждый раз задавать такой вопрос j, для которого величина H[P(Ai|B, )]P( ) +… + H[P(Ai|B, )]P( ) минимальна. Через H[P] тут обозначена энтропия распределения вероятности P, а через » » — событие «на вопрос Qj дан ответ Ans». Величину P( ) можно легко найти по формуле полной вероятности, просуммировав ее, обусловленную по всем известным объектам. То есть P( ) = sum(i) P( |Ai) P(Ai|B).
Оказывается, что такой подход позволяет очень быстро отбрасывать нерелевантные вопросы, сосредотачиваясь на самом главном. В каком-то смысле этот метод является обобщением метода «деления пополам» в вероятностной постановке. Посмотреть, как все это работает вместе, можно на видео ниже.