テキストアドベンチャーゲームにおけるLLMの評価:新たなアプローチ

2025-08-12

この記事では、テキストアドベンチャーゲームにおける大規模言語モデル(LLM)の能力を評価する新しい方法を提案します。このアプローチは、ターン制限とゲーム内の成果を設定し、LLMがこれらの制約内でどれだけ進歩できるかを測定します。テキストアドベンチャーゲームの高い自由度と分岐を考慮すると、この方法は絶対的なパフォーマンススコアを提供するのではなく、異なるLLM間の相対的な比較を提供することを目的としています。LLMは一連の成果目標と、それらを達成するための限られたターン数が与えられます。最終スコアは、達成された成果の数に基づきます。強力なLLMであっても、ターン制限内ですべての分岐を探索するのは困難であるため、スコアは絶対的なゲームスキルではなく、相対的な能力を反映しています。

続きを読む
AI

テキストアドベンチャーゲーム開発:スコープと詳細のバランス

2025-07-07

テキストアドベンチャーゲームの開発では、スコープの管理が非常に重要です。著者は、自分の経験を元に、当初は野心的すぎた目標から徐々に規模を縮小し、最終的にゲームを完成させた過程を語っています。この記事では、テキストアドベンチャーゲームデザインにおける「広さ」と「詳細さ」の2つの側面、そしてそれらのトレードオフについて考察しています。著者は、詳細にこだわったLockoutと、広範囲をカバーしたThe Plot of the Phantomを比較し、それぞれのスタイルの長所と短所を分析しています。現代のプレイヤーは、詳細な体験を好む傾向があります。最後に、著者はテキストアドベンチャーゲーム開発のコストと時間、そして楽しいゲームを作るためのスコープ管理の重要性について結論づけています。

続きを読む
ゲーム

モナドを用いたFizzBuzz:関数型アプローチ

2025-05-26

この記事では、モナドを用いたFizzBuzzアルゴリズムの関数型プログラミングアプローチを紹介します。核心となるアイデアは、ガードシーケンスパターンを利用して、数値が3、5、7で割り切れるかどうかを判定し、それぞれ「fizz」、「buzz」、「zork」を生成すること、または割り切れない場合はNothingを返すことです。最後に、`mconcat`で結果を結合し、`fromMaybe`でNothing値を処理することで、正しいFizzBuzz出力が得られます。このエレガントなソリューションは、関数型プログラミングの威力を示しています。

続きを読む
開発

アドベントカレンダー:状態遷移パーサーによる問題解決

2025-04-09

アドベントカレンダーの最新の謎解きは、`do()`と`don't()`命令を解釈する必要があります。これらの命令は、`mul`命令の合計への寄与を有効または無効にします。正規表現はこの状態を処理するのが苦手です。なぜなら、正規表現は状態を持たない正規言語を認識するからです。著者は、パーサーベースのソリューションを使用し、状態変換器に昇格させることで、状態を持つパーサーを作成しました。このパーサーは`do()`、`don't()`、`mul`命令を効率的に処理し、約1MBの入力を0.12秒で処理します。これは正規表現ベースのアプローチよりも大幅に優れています。

続きを読む

Haskell:意外な手続き型言語?

2025-01-19

この記事では、Haskellに関する一般的な誤解に異議を唱え、手続き型言語としてのHaskellの優れた点を主張しています。Haskellにおける副作用の一級市民としての取り扱い、`do`ブロックの内部メカニズム、`pure`、`fmap`、`liftA2`などの関数を使用した副作用操作について詳しく説明しています。また、副作用の集合を扱う`sequenceA`、`traverse`関数、それらの機能による効率的なメタプログラミングについても示しています。複雑な例を通して、Haskellが状態管理やキャッシングにおいて他の言語よりも優れている点を示し、それらの言語の制約を対比しています。さらに、より良い制御とストリーミング結果を得るための`State`モナドなどの高度な概念についても探求しています。

続きを読む
開発

ケリー基準:保険に関する意思決定への数学的アプローチ

2024-12-21

この記事では、ケリー基準を使用して保険に関する合理的な意思決定を行う方法を探ります。著者は保険に関する一般的な誤解を解き、それが哲学的な問題ではなく数学的な問題であると主張しています。中心となる考え方は、保険が大きな富の減少を防ぎ、複利効果の成長を加速させるということです。保険の価値(V)を計算するための式が提示され、現在の資産、保険料、事故の確率、コストなどが考慮されます。オートバイ保険とヘリコプター保険の例を用いて計算と免責金の影響が説明され、保険会社がどのように利益を上げるか、そしてコストの相対性についても説明されています。

続きを読む
その他 保険