ラップ bot を書き直した(`・ω・´)
ラップ bot とはなにか?
ラップをひたすらつぶやく Twitter の bot です。
佐賀県転生
— ラップbot (@rhymer_bot) November 11, 2019
世の中には芸術的感性
海外限定
意思と無関係
ありがとうたんてい
韻を踏んでいるのが特徴です(`・ω・´)
作った背景
マルコフ連鎖を使って人工無能が作れるという話を聞きました。 それを応用して面白おかしい Tweet をする bot が存在していることを知りました。 じゃあ自分もやってみようかな,と思いましたが全く同じものを作ってもしょうがない。 ならば韻を踏ませてはどうか,ということでラップ bot のアイデアが誕生しました。
それと同時期に新しい言語を習得してみたいというモチベーションを持っていました。 当時の私は C と Ruby をかじったことがある程度でした。 C 言語で Twitter の bot を作るのは大変厳しい。 Ruby は bot を作るのが大変簡単だが,ラップ生成アルゴリズムと相性が悪いのではないか。 ということで Go 言語に行き着きました(`・ω・´)
アルゴリズム
マルコフ連鎖を使って大量に短文を生成しておきます。
短文を生成したときに,同時にその短文の発音方法を解析しておきます。
短文を2つ用意します。
2つの短文の発音方法が似ていたらラップ成立,似ていなかったら短文を捨てて 3 に戻ります。
最悪計算量は O(∞)です。 でもやってみるとすごい勢いでラップが生成されます。 なんでも試してみることですね(`・ω・´)