ビヘイビアモデルを用いたスーパーマリオの自律テスト

✍️ OpenClawRadar📅 公開日: February 20, 2026🔗 Source
ビヘイビアモデルを用いたスーパーマリオの自律テスト
Ad

この記事では、スーパーマリオブラザーズで使用される自律テスト手法について、行動モデルアプローチを採用して掘り下げています。これは、人間の介入なしに自律的なプレイとレベルクリアを完璧にすることを目指す継続中のシリーズの続編です。主な焦点は、突然変異ベースの入力ジェネレーターを使用することにあり、入力データのビットを反転させて多様なシナリオを作成し、ゲームの応答をテストすることで、従来のテストでは見過ごされがちなエッジケースを明らかにします。

以下は手法からのコードスニペットです:

import mario
import random

def generate_input(starting_byte, flip_probability, input_length): input = [] next_byte = starting_byte for _ in range(input_length): for j in range(8): if random.random() < flip_probability: next_byte ^= (1 << j) input.append(next_byte) return input

このアプローチは、現実的なゲームプレイを模倣するように設計されており、プレイヤーが「右移動」を押し続けながら「ジャンプ」をタップするのと同様に、特定のキーを複数のフレームにわたって押し続けることを可能にします。入力シーケンスで表される経路のコレクションが維持され、ゲームを通じて最適なコースを見つけるために選択的に再生されます。単純な適応度関数はx軸位置が最も高い経路を優先しますが、行き止まりの可能性があるため、さまざまなスコアを持つ多様な経路のセットを探索して包括的なテストを確保します。

この手法は、ゲーム開発に関わる開発者やテスト自動化に興味のある人々にとって特に有用であり、複雑な状態空間の効率的な探索に関する洞察を提供します。

📖 完全なソースを読む: HN AI Agents

Ad

👀 See Also

非プログラマーがClaude CodeとAPIで完全な見込み客開拓スタックを構築
Use Cases

非プログラマーがClaude CodeとAPIで完全な見込み客開拓スタックを構築

コーディング経験ゼロのRedditユーザーが、Claude Code、企業・人材検索のCrustdata、連絡先エンリッチメントのFullEnrich、送信ツールのInstantlyを使って、週末で完全なアウトバウンド営業システムを構築しました。

OpenClawRadar
AIエージェントのためのメッシュアーキテクチャ:クライアント分離とプロジェクト間連携
Use Cases

AIエージェントのためのメッシュアーキテクチャ:クライアント分離とプロジェクト間連携

マイクロエージェンシーを運営する開発者が、各クライアントに特化したAIエージェントを割り当て、それらがマークダウンファイルを介して通信するメッシュアーキテクチャについて説明しています。この仕組みにより、44のプロジェクトと14の組織にわたって、ドメイン知識の活用、プロジェクト間の調整、クライアント間の分離が実現されています。

OpenClawRadar
エンタープライズ向けOpenClaw導入:SaaS企業からの教訓
Use Cases

エンタープライズ向けOpenClaw導入:SaaS企業からの教訓

約1,100社の企業向けにエンタープライズSaaSを展開し、約60,000人の同時ユーザーを抱えるソフトウェア企業が、OpenClawの本番環境導入経験を共有しました。カスタムセキュリティラッパー、1,400のAPI統合、CI/CDパイプライン統合を含む実装内容と、エンタープライズデータ処理における制限事項について言及しています。

OpenClawRadar
開発者が1日でClaudeコードを使用して3D GitHub都市ビジュアライゼーションを作成
Use Cases

開発者が1日でClaudeコードを使用して3D GitHub都市ビジュアライゼーションを作成

ある開発者がGit Cityを作成しました。これはGitHubユーザーがピクセルアートの建物として表示される3Dビジュアライゼーションです。プロジェクトはClaude Codeを100%使用してVS Codeで構築され、手動でのコーディングは一切なく、最初のバージョンは1日で完成しました。

OpenClawRadar