Skip to main content

Module operator

Module operator 

Source
Expand description

Exploration Operator - Mutation と Selection のペア

§設計思想

Mutation(Map展開ロジック)と Selection(ノード選択ロジック)は アルゴリズム的にセットである。

  • Discover フェーズで発見した結果を Selection の統計に反映
  • その統計が次の Selection に影響

Operator はこの連携を担保する。

§責務

コンポーネント責務
MutationLogic「結果をどう Map に反映するか」
SelectionLogic「次にどの Node を選ぶか」(selection モジュール)
OperatorM と Sel の連携、共有状態(stats)の管理
SpaceMap + 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
RulesBasedMutation
Rules ベースの基本 Mutation

Traits§

MutationLogic
Map 展開ロジック

Type Aliases§

ConfigurableOperator
動的に Selection を切り替え可能な Operator
FifoOperator
FIFO Operator(FIFO選択 + RulesBasedMutation)
Ucb1Operator
UCB1 Operator