pub struct GreedyBisectionPhiEngine { /* private fields */ }Expand description
Greedy bisection Φ approximation.
Starts from the Fiedler-based spectral partition and greedily swaps elements between sets A and B to minimize information loss. Each swap is accepted only if it reduces Φ. Converges to a local minimum.
Complexity: O(n³) — at most n passes of n element swaps.
Implementations§
Trait Implementations§
Source§impl Default for GreedyBisectionPhiEngine
impl Default for GreedyBisectionPhiEngine
Source§impl PhiEngine for GreedyBisectionPhiEngine
impl PhiEngine for GreedyBisectionPhiEngine
Source§fn compute_phi(
&self,
tpm: &TransitionMatrix,
state: Option<usize>,
budget: &ComputeBudget,
) -> Result<PhiResult, ConsciousnessError>
fn compute_phi( &self, tpm: &TransitionMatrix, state: Option<usize>, budget: &ComputeBudget, ) -> Result<PhiResult, ConsciousnessError>
Compute Φ for the given transition probability matrix. Read more
Source§fn algorithm(&self) -> PhiAlgorithm
fn algorithm(&self) -> PhiAlgorithm
Return the algorithm identifier.
Source§fn estimate_cost(&self, n: usize) -> u64
fn estimate_cost(&self, n: usize) -> u64
Estimate computational cost without performing the computation.
Auto Trait Implementations§
impl Freeze for GreedyBisectionPhiEngine
impl RefUnwindSafe for GreedyBisectionPhiEngine
impl Send for GreedyBisectionPhiEngine
impl Sync for GreedyBisectionPhiEngine
impl Unpin for GreedyBisectionPhiEngine
impl UnsafeUnpin for GreedyBisectionPhiEngine
impl UnwindSafe for GreedyBisectionPhiEngine
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more