カテゴリー
技術 未分類

賞金付きクイズアプリの答えを求めるbot

HQ というオンラインクイズの iPhone アプリがあり、アメリカで流行しつつあるそうです。

一日2回開催される、12問のトリビアクイズに全問正解すると、その回の賞金を正解者で山分けできる、というサービスで、アプリに登場する司会者に特徴があり、家族・友人・同僚などを巻き込みやすい形になっているのが広まっている秘密のようです。

そんなクイズアプリに対して、前記事のようなプログラムによる解法をデモしたのが、トビー・メラーさんんのこちらのブログ記事

デモ動画はこちら。02:00 前後から、アプリの出題(画面右側)に対して、画面中央に開いたコンソールが、3択の回答を表示しています(小さくて見づらいので、キャプションで強調表示されていますが)。

回答が提案されるプロセスは以下の通り

  1. iPhone のアプリ画面を QuickTime で MacBook に映す
  2. Automator で問題と回答3択のスクリーンショットを撮る
  3. Google Vision API でテキスト化
  4. Googleカスタム検索API で、”問題文”や”問題文” AND 回答候補 を検索
  5. 検索結果の先頭9個の抜粋文に、回答語が出てくる回数をカウント
  6. 抜粋に回答が出ない場合は、URLを開いてページ全文から回答語をカウント

この単純な方法で、7秒以内に正答を得ることができているそうです。

なお、実際のゲームでこういったプログラムを使うのは、HQ アプリの利用規約に触れるということで、メラー氏は録画したゲーム画面を使って、こういったことが可能だ、という検証のみを行ったということです。

HQ アプリの方でも、不正な参加者を無くすべく、画像を保存するユーザーを弾いたりと対策を実施しているようですが、なんとなればiPhone の画面を別のカメラで撮影したっていいわけです。大なり小なり賞金が出る、という時点で、検証ではなく本気でこういう解法を使ってくるユーザーが出るのは避けられなさそうに思います。

[アプリid:1232278996] 指定されたアプリケーションが見つかりませんでした。削除されたのかもしれません Embed iPhone/iPad App
カテゴリー
工作

賞金の出る4択クイズゲームを隠しカメラとOCRで解くプロジェクト

イギリスのパブなどに置いてあるゲーム機に、クイズを解き続けることで勝ち進み、最後は賞金が出るものがあるそうです。

GitHub に公開されたこちらのリポジトリでは、そのトリビアクイズ機を解いてしまう支援ツールが公開されています。

こちらのアニメーションgif でプレイしている様子が見られますが、質問文と、4択の回答が表示されて、時間内に正答をタッチすると次の問題へ行けるんですね。

https://github.com/tensor8/hacking_slot_machines

こちらの動画に、ドラマか何かの中で出てくる、この手のゲームで遊んでいるシーンがあります。

Github上の解説によると、

  • カメラ内蔵のボタンで撮った画面の画像を Raspberry Pi へ送信
  • 画面の傾きを補正、OpenCV で問題・4つの回答のボックスを切り出す
  • Google Tesseract で文字を抽出
  • 得られた文字を[問題・回答]のデータから総当たり検索
  • espeak で音声合成した結果を隠しイヤホンに送る

という作りで、画面に映った問題の答えがイヤホンで聴こえてくる仕組みを実現しているそうです。

上にあるように、すべての問題と回答のデータはある前提で、これはゲーム機のROMからごく簡単な暗号化されたデータが取れていて、Pythonスクリプトで逆変換しています。

最初は問題文だけの検索で済ませるつもりだったそうですが、問題文の認識精度が完全ではなく、回答(20個のうち正答含めた4つがランダムに選ばれる)もあわせ、読み取りに間違いがある前提で単語間距離が小さいものを検索することで質問を特定しているとのこと。

当初は Raspberry Pi だけでこの処理を完結させるつもりだったそうですが、それだと回答が出てくるのに30秒掛かって間に合わないため、バックパックに入れたノートパソコンに画像を飛ばして、イヤホンへの音声合成もそこでやっているということ。Raspberry Pi はあまり関係なかった

やってる内容が内容なので、Hacker News のコメント欄では法律やモラルの問題を指摘する声も多く出ています。ボタンの穴から写す隠しカメラや、小型コンピュータであるラズパイ、バックパックに隠したPCなどの道具だてから、隠れてやるつもりがあるのも明らかですし。

Hacker News に紹介した id:jamesough が本当の作者なのかは確認できてませんが(作者である風にコメントで答えてはいます)、コードの更新日が2年前なので、これを実際に使ってたとしても前のことなのでしょうね。

アメリカのカジノでは、こういった本人の努力や知識で結果が変わるギャンブル機は無いそう。規則で許されていないようです。また、イギリスではこの手の Skill with prize (スキルで賞金)ゲームはギャンブルの範疇には入らないそうで、そのためパブ・映画館・ショッピングモールなどに自由に置くことができるのだとか。

この手の知識を問うゲーム機、特に賞金が出るものは、最初は簡単に答えられるものの、勝ち進めば進むほど問題の難度が上がり、またとても人間が答えられなさそうな問題も出るようになっているそうです。しかし、こんな風に機械による支援を受けた人間なら解ける、となってしまうと、賞金を出すビジネスモデルではもう立ちいかなくなってしまうでしょうね。

via Hacker News

カテゴリー
工作

スマートフォン上の反射神経型リズムゲームを解かせる電子工作

Mihai Cosmin さんが作ったのは、iPhone 上のリズムゲームを解く専用ロボット。

遊ばせているゲームは、Don’t step on the white block というスマートフォンゲームですね。

スクロールしてくる白い部分を避けて、黒いところをタイミングを合わせてタッチすると点数になる、というよくあるリズムゲーム。

スマートフォン自身の耐久テスト・出荷テストや、ソフトウェアのテスト用にタップするロボットは既に存在していますが、それらは精度も高ければ価格も個人で買うようなものではないでしょう。

この動画中では、Arduinoとリレー、竹ひご、スポンジなど安価な材料だけで作られたロボットがゲームを遊んでいます。動画の後半では、ゲームスピードを300%, 600%と上げていきますが、機械は苦ともせずついていってます。

類似の他のリズムゲームなども、あらかたこのような機械で解けそうですね。

普通の人ではなかなか解けないように難易度を上げていって、先を見るためには有料アイテムを買ってくださいね、というビジネスモデルのゲームも多いと思いますが、こういう機械が簡単に使えるようになったら、それらのゲームの多くは意味が無くなってしまうかもしれません。動画は2014年のものなので、実はそういうプレイヤーがネットのバーチャルな競技場の向こうに既にいるのかも。

[アプリid:852759213] 指定されたアプリケーションが見つかりませんでした。削除されたのかもしれません Embed iPhone/iPad App