Как стать автором
Обновить
27
0
Отправить сообщение

Настройка и создание приложения для публикации в Facebook timeline

Время на прочтение10 мин
Количество просмотров21K
В данной статье я хочу описать, как создать минимальное приложение, которое что-то опубликует в timeline, а так же рассказать про трудности, которые могут возникнуть на этом пути.
Прежде всего, стоит сказать, что в данный момент facebook timeline находится в beta и доступна только разработчикам, поэтому первое, что необходимо сделать, это активировать timeline для своего аккаунта. На эту тему написано множество инструкций, вот например www.makeuseof.com/tag/enable-facebooks-timeline-profile.
После выполнения всех действий из инструкции, и подождав несколько минут, кликните по своему имени, вместо стены должен открыться долгожданный timeline.

Шаг 1. Настраиваем facebook приложение


Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии2

Premium Developer Program for Asha — Аттракцион ограниченной щедрости от Nokia

Время на прочтение2 мин
Количество просмотров7.2K
Каких-то два года назад разработчики, успевшие зарегистрироваться в Nokia Launchpad получали безвозмездно и без всяких условий Lumia 800. Те времена прошли, nokia не торт, новые бонусы уже не такие привлекательные, но всё же, предложение не без плюсов.
Я не знаю, почему информация об этой программе не публиковалась в собственном хабра-блоге Nokia — возможно из-за ожидания волны негатива, связанной с «несолидностью» премий…
Итак, Premium Developer Program for Asha.
Читать дальше →
Всего голосов 19: ↑13 и ↓6+7
Комментарии4

Игры с физикой благодаря HTML5 и JS. Программист симулирует движение ткани

Время на прочтение1 мин
Количество просмотров74K
Программист, именующий себя Stuffit, опубликовал исходный код на портале Codepen. Код симулирует физику ткани. Использует HTML5, Canvas, CSS и JavaScript, приблизительно 300 строчек кода. Ткань без текстуры, простая сетка, но демонстрационным целям служит отлично.



Есть возможность испытать код прямо на Codepen
Если потянуть мышкой очень сильно, полотно может и порваться. Впечатляет простота кода, которому для работы нужен только браузер. Дает представление о том, в каком направлении будут развиваться веб-игры. Staffit уже создал несколько подобных игрушек.

Перевод с чешского источника
Всего голосов 136: ↑127 и ↓9+118
Комментарии43

Полнотекстовый поиск в MongoDB

Время на прочтение7 мин
Количество просмотров63K
В данной статье будет рассмотрена одна из новых возможностей MongoDB версии 2.4 — полнотекстовый поиск. Большая часть этой статьи будет вольным переводом документации, которая, к слову, очень подробная, но разрозненная. Здесь все будет собрано вместе. Так как этого для полноценной статьи мне показалось мало, я решил сравнить МонгоДБ с другой популярной программой для текстового поиска — Sphinx. Мое сравнение будет очень поверхностным, так как со Сфинксом я раньше не работал. Создам таблицу с 16 000 000 записей и посмотрю, кто быстрее.

image

Читать дальше →
Всего голосов 64: ↑57 и ↓7+50
Комментарии28

Веб-сервисы играют в покер

Время на прочтение7 мин
Количество просмотров12K
imageЗдравствуй, Хабр.

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

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

Изначальная идея проекта принадлежит моему другу (он не с Хабра). Первый раз она прозвучала примерно так:
Я считаю, что нет ничего дурного в том, чтобы боты играли в покер-румах. Хотя, может быть, честнее было бы организовать специальный покерный клуб, где роботы играли бы только друг с другом. Вот я бы с удовольствием написал такого бота. А ты?
Не помню, что я ответил. Мне интереснее было именно сделать такой сервис. Challenge accepted ;)
Читать дальше →
Всего голосов 95: ↑90 и ↓5+85
Комментарии51

ИИ для игры в сёги (японские шахматы)

Время на прочтение7 мин
Количество просмотров32K
Есть одна старинная японская игра сёги. Иногда её называют японскими шахматами. Не буду спорить, что-то общее у этих игр есть, но сёги намного сложнее. Впервые я узнал об этой игре из комментария на Хабре, где утверждалось, что это одна из сложнейших игр, и лучшие компьютерные программы по-прежнему не могут победить сильнейших игроков-людей. Конечно, я заинтересовался и начал играть. За год я достиг некоторых успехов и даже занял второе место среди новичков на официальном турнире. Учитывая мою любовь к программированию, следующий шаг был очевиден — написать свой ИИ. Об этом и пойдёт рассказ ниже.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии18

Построение ИИ для игры в японские шахматы сёги

Время на прочтение11 мин
Количество просмотров25K
Не так давно я уже писал небольшой пост о разработке ИИ для игры в т.н. мини-сёги, но опрос показал, что хабрасообществу будет интересен и более полный пост о разработке. Кому интересно, прошу под кат.
Читать далее...
Всего голосов 46: ↑44 и ↓2+42
Комментарии9

Кулинарный путеводитель по архитектурам AI

Время на прочтение21 мин
Количество просмотров53K
image

Мне постоянно приходится слышать от студентов и начинающих гейм-дизайнеров – да, честно говоря, и от бывалых программистов тоже – один и тот же вопрос, который звучит примерно так: “Какую архитектуру AI мне выбрать для своего проекта?”. Этим вопросом пестрят форумы, его можно услышать на конференции разработчиков игр GDC, и, конечно же, его не один раз вспоминают во время пре-продакшна создатели любой игры – от AAA-класса до инди. Я работаю консультантом по игровому AI, поэтому я постоянно слышу ее от своих клиентов.

Обычно, самый лучший ответ на этот вопрос – «Когда как». Вот только подобный ответ мало кого устраивает, поэтому после него мне приходится устраивать самый настоящий допрос.
Читать дальше →
Всего голосов 83: ↑76 и ↓7+69
Комментарии6

Искусственный интеллект как совокупность вопросов

Время на прочтение4 мин
Количество просмотров76K
image
Когда мы рассуждаем о сильном искусственном интеллекте, то мы понимаем, что это не изолированный вопрос, не вещь в себе, а вопрос ответ на который подразумевает объяснение всех явлений, которые связаны с мышлением человека. То есть, ответив на вопрос о природе интеллекта, мы неизбежно должны будем ответить на такие вопросы как:

  • Что есть информация?
  • Как мозг представляет знания?
  • Что такое язык?
  • Какова роль языка в мышлении?
  • Как совершаются поступки?
  • Как осуществляется планирование?
  • Какова природа фантазий и воспоминаний?
  • Что такое мотивация?
  • Какова природа эмоций?
  • Откуда берется многообразие эмоциональных оценок?
  • Что есть смысл?
  • Как рождается мысль и какова ее природа?
  • Что такое внимание?
  • Что есть любовь?
  • Что есть гармония и красота?

Читать дальше →
Всего голосов 57: ↑39 и ↓18+21
Комментарии55

Бот для игры в камень, ножницы, бумага

Время на прочтение4 мин
Количество просмотров16K

Теория


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

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

  1. 0 — колодец(камень)
  2. 1 — ножницы
  3. 2 — бумага

Предположим, что игра ведется достаточно долго, чтобы можно было собрать статистику, но не так долго, чтобы человек начал изменять свое поведение, раскусив алгоритм предсказания. Имеем последовательность пар чисел: (0, 1) (0, 2) (2, 2) (2, 0)..., где первое число показал бот, второе — человек. Чтобы определить победителя в паре, сравним числа. (0 — 1) % 3 = 2, значит человек проиграл, (0 — 2) % 3 = 1, значит человек победил, (2 — 2) % 3 = 0, ничья. Обозначим n — длина последовательности чисел из пар. Число возможных последовательностей равно 3^n. При n = 5 получится 243 варианта, что много больше 32 для двух вариантов выбора. Ясно что получить все варианты в течение одной игры маловероятно, поэтому усовершенствуем гадалку. Не каждый выбор человек делает опираясь на все n элементов последовательности чисел, некоторые ее элементы он игнорирует. Назовем такие элементы пустыми.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии9

Построение нейронных сетей в php используя FANN, пример реализации

Время на прочтение5 мин
Количество просмотров82K
Передо мной предстала задача анализа большого количества информации и выявления закономерностей. И первое, что пришло в голову — построить математическую модель с помощью нейронной сети.

Поскольку данные для анализа формируются в php и мне этот язык сейчас ближе всего, то искалась библиотека с интерфейсом для php. В связи с этим мне порекомендовали FANN (Fast Artificial Neural Network) — открытое программное обеспечение для построения сетей. У этого решения есть апи для 15 языков, так что почти каждый сможет выбрать что-то для себя.

Пример. Распознавание языка текста на странице

Для примера возьмем задачу легкую, но недалекую от нашей реальности и от серьезных задач. Допустим есть 1000 документов, на 3-х разных языках. Пусть это будут французский, английский и польский. Наша задача научить нейронную сеть распознавать язык документа. Для этого мы используем самый простой частотный механизм. Но тем не менее его результаты неплохи. Его суть в том, что у каждого языка с разной частотой в тексте встречаются одни и те же символы. Мы подготавливаем 3 больших куска текста для каждого из языков (английский, французкий, польский), посчитаем для каждого символа частоты. Эти данные мы передадим в нейронную сеть, с указанием какой набор частот принадлежит каждому из языков. Дальше нейронная сеть все сделает сама.
Читать дальше →
Всего голосов 36: ↑32 и ↓4+28
Комментарии19

Способы передвижения компьютерных персонажей (часть 3)

Время на прочтение4 мин
Количество просмотров26K
Это заключительная часть серии статей, описывающих перемещения компьютерных персонажей. Я расскажу о смешанных видах передвижений, которые сочетают в себе векторные и плиточные методы, небольшая оптимизация плиточных перемещений и ускорение просчетов добавлением сетки к векторам. А так же поведу общее сравнение всех описанных методов в виде таблицы.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии13

Способы передвижения компьютерных персонажей (часть 2)

Время на прочтение5 мин
Количество просмотров45K
В предыдущей статье я рассказал о видах передвижений и перемещений в плиточном мире. Сегодня расскажу подробней о векторных способах. Как и в прошлый раз расскажу теорию, объясню суть и покажу пример реализации перемещений на языке C++.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии18

Способы передвижения компьютерных персонажей (Часть 1)

Время на прочтение6 мин
Количество просмотров63K
Все, кто начинал заниматься реализацией игрового искусственного интеллекта, наверняка сталкивались с проблемой реализации движений своих персонажей. Дело в том, что поведение и в реальном мире в большей степени определяет интеллектуальность того или иного существа. Даже люди друг друга зачастую оценивают по поведению (что немного неверно). Эта статья рассчитана на тех, кто только приступает к реализации своего первого игрового ИИ. Я расскажу о видах перемещений, их преимуществах и недостатках, а также покажу на примере как можно реализовать тот или иной способ на языке C++. Замечания и критика, а так же свои точки зрения приветствуются.
Читать дальше →
Всего голосов 77: ↑67 и ↓10+57
Комментарии14

Искусственный интеллект. Моделируем спасательную операцию

Время на прочтение5 мин
Количество просмотров13K
Возможно заголовок слишком кричащий, муза по заголовкам меня покинула. И, да, здесь не будет японских роботов и сюжета фильмов где эти же роботы захватывают мир. Но здесь будет искусственный интеллект (ИИ), так как ИИ можно считать присутствующим, если при принятии решения используется оценочная функция. А она будет в нашем алгоритме поиска пути. И, да, это будет моделирования спасательной операции, заключаться будет в том, что команде спасателей нужно обойти всё здания (все комнаты), найти там людей (который по задумке автора сами спастись не могут) и вывести их из здания. Реализовано все будет на JavaScipt, Canvas, и немного PHP для работы с базой. Думал сначала сделать статью в стиле своей последней, то есть обсуждаем именно JavaScript, но не хочу повторятся, так что здесь скорее всего пройдемся по архитектуре самой программы (да, зразу скажу, если может кто очень ждет вторую часть змейки, она в процессе, в комментариях по этому поводу ничего нового не скажу). С бюрократией вроде бы все, приступим.
Читать дальше →
Всего голосов 18: ↑13 и ↓5+8
Комментарии5

Physics Snake. С нуля. Часть первая

Время на прочтение12 мин
Количество просмотров20K
Статья с тэгом «обучающий материал». С нуля, поэтому будем писать свой не сложный (для начала) физический движок и сразу же не сложную игру (я выбрал змейку) на нем. Но статья скорее будет не об этом, так как это не такое уж и сложное задание, а о том, как это все будет на JavaScript, причем с максимально красивым (правильным) кодом (жду, что все что можно сделать еще лучше вы опишите в комментариях). «А в ответ полетели спелые помидоры..». Начнем.
(кто дочитал аж до сюда, держите печеньки, управления стрелками влево-вправо):
вот что будет: в части один
и это же (dev-mode)
Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии18

О сортировке контента на основе оценок пользователей

Время на прочтение4 мин
Количество просмотров17K
Написать этот пост меня привлекла эта статья. Многие ее помнят по вот этой картинке.
image
Статья затрагивает правильную тему, однако с точки зрения математики и здравого смысла она в корне не верна.
Читать дальше →
Всего голосов 133: ↑117 и ↓16+101
Комментарии62

Как правильно сортировать контент на основе оценок пользователей

Время на прочтение5 мин
Количество просмотров91K


В оригинале название звучит как «How Not To Sort By Average Rating». Я подумал, что дословный перевод «Как не сортировать по усреднённому рейтингу» будет малопонятен и хуже отражает содержание статьи.

Постановка проблемы


Вы занимаетесь веб программированием. У вас есть пользователи, которые оценивают контент на вашем сайте. Вы хотите разместить высоко оцененный контент наверху, а низко оцененный — внизу. Для этого на основе пользовательских оценок вам нужно вычислить некий «рейтинг».

Неправильное решение №1

Рейтинг= (Число положительных оценок) - (Число отрицательных оценок)

Читать дальше →
Всего голосов 458: ↑423 и ↓35+388
Комментарии134
12 ...
8

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность