コンテンツにスキップ

Rule Agents Modules

対象: pca.rule_agents

Purpose

rule-based teacher と ported notebook agents を repository 内で扱う。self-play bootstrap では rule-pool policy として使い、teacher policy target や policy weight を JSONL に残す。

Modules

Module Role Implementation Details
pca.rule_agents.base base types rule agent assignment や score entry の dataclass/protocol を置く。
pca.rule_agents.generic generic agent 汎用 heuristic fallback agent。
pca.rule_agents.heuristics heuristic library board/action/deck compatibility 評価の細かい helper 群。
pca.rule_agents.policy policy adapter rule agent を PolicyDecision を返す callable に変換し、teacher metadata を付与する。
pca.rule_agents.ported ported base notebook 由来 agent を package 化するための base class。
pca.rule_agents.registry registry YAML registry から agent spec、class path、deck csv、compatibility metadata を読み込む。
pca.rule_agents.agents.* concrete agents deck/strategy 別 agent。各 package は Agent を export する。

Public API

API Usage
RuleAgentRegistry YAML registry を読み、agent spec を解決する。
load_rule_agent_registry(path) registry file を読む。
rule_pool_policy_factory(...) deck に対応する rule agent policy を作る。
GenericAdvancedHeuristicAgent fallback teacher。
PortedRuleAgent ported agent base。

Usage

PYTHONPATH=src uv run python -m pca.training.selfplay \
  --policy rule-pool \
  --rule-agent-config configs/rule_agents.yaml \
  --rule-deck-dir decks/rule_agents

Notes

  • teacher quality は decision.meta から teacher_policy_weight に反映される。
  • 新規 agent を追加したら registry と module docs の両方を更新する。