Google Web APIs ABA Games

たほいやお題自動生成

for Java thiy ver. 0.1 (c) 長 健太(ABA."Saba")

イースト、XML Webサービスを利用した開発者向け辞書検索サービスを開始(INTERNET Watch)

SOAPで辞書が叩けるようになりました。ある単語をこのサービスに突っ込むと、 その意味が返ってきます。普通なら、このサービスを利用して、Webページ上の 単語の意味を自動的に表示するサービスなんかを作るんでしょうが、 そんなもん作ってもあんまり面白くないので、こんなの作りました。

たほいやお題生成プログラム

たほいや、覚えてますか。

忘れた人、知らん人は 知的言葉遊びゲーム「たほいや」 をご覧ください。たほいやは、おおざっぱに言うと、

  1. 親が辞書からマイナーな単語を選び、ひらがなでお題として出す
  2. 4人くらいの子が、その意味をそれぞれ適当にでっちあげ、紙に書く
  3. 親は正しい意味を紙に書く
  4. 親と子の書いた紙を混ぜ、親がそれを読み上げる。子はどれが正しい意味なのか予想する

というゲームです。このゲームで肝なところは、

です。で、後者はいまんところコンピュータで自動生成するのはあまりにきついので、 前者をサポートするプログラムを作りましょう。こんなアルゴリズムにしてみました。

作り方
  1. XML Webサービス対応三省堂デイリーコンサイス体験版 を使って、適当な単語とその意味を取り出す

    このサービスは、本来、ある単語を渡すと、その単語の意味を返すというものですが、 ちょっと工夫すると、辞書内の単語をランダムに取り出すことができます。 その方法は、

    こうすると、辞書からほぼランダムに単語とその意味が取り出せます。

  2. その単語をGoogle Web APIsにつっこみ、 検索ヒット数をチェック

    これが Webサービス連携というやつだ! どうだ!

    うそです。すみません。2つのWebサービスを続けて呼び出しているだけです。 で、こうするとその単語がWeb上のどんくらいのページ上に存在するかが分かるのです。

  3. ヒット数が1000未満だったら、単語のひらがなと意味を表示

    1000という数字は適当。とにかくあんまりWeb上に転がってない単語なら、マイナーな 単語じゃないかなーと思って表示します。ちなみに、Googleにつっこむ時はちゃんと 漢字で書かれた単語をつっこんで、表示するときだけひらがなにしてます。

作成例

たとえばこんな結果が出る。

ぞっきぼん      安売りされる本
いちぜんめし    茶わんに盛りきりの飯
れいそう        アンコールにこたえてする演奏
ひらけごま      あかないものをあけようとするときに唱える呪文
かみつぶて      ぶつけるために硬く丸めた紙
けいじょう      警察官が,犯罪を防ぐため交通機関に乗って警戒すること
はまなっとう    納豆の一
たいちょうかく  2直線が交差してできる,向かいあった角
こうてい        書物の字句などを比べ合わせて正しい形に定めること
つうげん        通り言葉

もともとの辞書の単語数がそれほど多くない(7万語)のもあって、精度はよくない。 あと、たほいやの重要ルールである、「同音異義語禁止」というのをまったく考慮していないので、 その辺は人手でなんとかしないといけない。

どうみても本当の意味が明らかなのが出てきてしまうのも問題だなあ。 意味の部分に、元の単語に含まれる文字が出現する場合を除くとかすると、 少しはましになるかもしれない。

いくつかの結果から、使えそうなのをピックアップすると、

ぎそうかん  体を虫がはうようなむずむずした感じ
ももだち    はかまの両わきのあいた部分をぬいとめた所
くみやぐ    布団や丹前などをそろえて1組にした夜具
しおりど    竹や木の枝で作った簡単な戸
くすんごぶ  あいくち

こんくらいかなあ。生成される10個の候補のうち、1つ2つは使えるという程度。

とりあえず辞書の増強を希望。広辞苑なみに23万語とかないと、たほいやにはきついや。

ダウンロード

以下からダウンロードできます。 動作させるには、Java2が必要です。

ご意見、ご感想

ご意見、ご感想は、 cs8k-cyu@asahi-net.or.jp までお願いします。

Google Web APIsで遊ぼうへ