Expand description
Exploration Operator - Mutation と Selection のペア
§設計思想
Mutation(Map展開ロジック)と Selection(ノード選択ロジック)は アルゴリズム的にセットである。
- Discover フェーズで発見した結果を Selection の統計に反映
- その統計が次の Selection に影響
Operator はこの連携を担保する。
§責務
| コンポーネント | 責務 |
|---|---|
| MutationLogic | 「結果をどう Map に反映するか」 |
| SelectionLogic | 「次にどの Node を選ぶか」(selection モジュール) |
| Operator | M と Sel の連携、共有状態(stats)の管理 |
| Space | Map + Operator を保持、API 提供 |
§使用例
ⓘ
use swarm_engine_core::exploration::{
Operator, RulesBasedMutation,
selection::{Ucb1, Fifo},
};
// 静的型付け Operator
let operator = Operator::new(
RulesBasedMutation::new(),
Ucb1::new(1.41),
rules,
);
// 動的 Selection の Operator
let operator = Operator::new(
RulesBasedMutation::new(),
AnySelection::from_kind(SelectionKind::Ucb1, 1.41),
rules,
);Structs§
- Operator
- Mutation と Selection を組み合わせた Operator
- Rules
Based Mutation - Rules ベースの基本 Mutation
Traits§
- Mutation
Logic - Map 展開ロジック
Type Aliases§
- Configurable
Operator - 動的に Selection を切り替え可能な Operator
- Fifo
Operator - FIFO Operator(FIFO選択 + RulesBasedMutation)
- Ucb1
Operator - UCB1 Operator