Skip to content
View mattferrin's full-sized avatar

Block or report mattferrin

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mattferrin/README.md

Common Components

graph TD;
    subgraph "Utility Score Management"
        UpdateUtilityScores["Update Point Utility Scores:
        1. Increment Evader Point Score
        2. Increment Pursuer Point Score
        Note: All point scores halved globally on time interval"]
    end
Loading

Common Statistical Definitions

graph TD;
    subgraph "Adaptive Statistical Threshold Check (ASTC)"
        direction TB
        Input[/"Input Value"/]
        Sensitivity[/"Sensitivity k"/]
        ThresholdCheck{"Value > μ + kσ?"}
        Formula["where:
        μ = EMA of all values
        σ = EMA(values > μ) - EMA(values < μ)"]
        
        ThresholdCheck --- Formula
        Yes[/"Yes"/]
        No[/"No"/]
        
        Input --> ThresholdCheck
        Sensitivity --> ThresholdCheck
        ThresholdCheck -->|Yes| Yes
        ThresholdCheck -->|No| No
    end
Loading

Token Instance Flow

graph LR;
    ExternalSources["External Token Sources"]

    subgraph "Token Instance Properties"
        direction TB
        Triggerable["Triggerable"]
        NonTriggerable["Non-Triggerable"]
        Suppressible["Suppressible"]
        NonSuppressible["Non-Suppressible"]
    end

    ExternalSources --> Triggerable & NonTriggerable
    Triggerable & NonTriggerable --> Suppressible & NonSuppressible

    Ingestion["Token Ingestion Point"]
    
    Suppressible --> Ingestion
    NonSuppressible --> Ingestion
Loading

Token Instance Ingestion and Type Creation

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateToken["Create New Token Type"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateToken

        subgraph "Sphere Surface Points"
            SphereCreate["Random Point Generation"]
            NewPursuerPoint["Single Pursuer Point"]
            NewEvaderPoint["Single Evader Point"]
            
            CreateToken -->|Generate| SphereCreate
            SphereCreate -->|Place| NewPursuerPoint
            SphereCreate -->|Place| NewEvaderPoint

            CreateCrossEvaderEMA["Create Cross-Type Evader EMA Point"]
            SetCrossEvaderLocation["Set Location = Evader Point"]
            CreateCrossPursuerEMA["Create Cross-Type Pursuer EMA Point"]
            SetCrossPursuerLocation["Set Location = Pursuer Point"]
            CreateTypeEvaderEMA["Create Type-Specific Evader EMA Point"]
            SetTypeEvaderLocation["Set Location = Evader Point"]
            CreateTypePursuerEMA["Create Type-Specific Pursuer EMA Point"]
            SetTypePursuerLocation["Set Location = Pursuer Point"]

            NewEvaderPoint --> CreateCrossEvaderEMA
            CreateCrossEvaderEMA --> SetCrossEvaderLocation
            NewPursuerPoint --> CreateCrossPursuerEMA
            CreateCrossPursuerEMA --> SetCrossPursuerLocation
            NewEvaderPoint --> CreateTypeEvaderEMA
            CreateTypeEvaderEMA --> SetTypeEvaderLocation
            NewPursuerPoint --> CreateTypePursuerEMA
            CreateTypePursuerEMA --> SetTypePursuerLocation
        end

        CrossTypeDB[(Cross-Type Database)]
        TypeSpecificDB[(Type-Specific Database)]
        
        NewPursuerPoint -->|Store| TypeSpecificDB
        NewEvaderPoint -->|Store| TypeSpecificDB
        SetCrossEvaderLocation -->|Store| CrossTypeDB
        SetCrossPursuerLocation -->|Store| CrossTypeDB
        SetTypeEvaderLocation -->|Store| TypeSpecificDB
        SetTypePursuerLocation -->|Store| TypeSpecificDB
    end

    ExternalSources --> TokenCheck
Loading

Cross-Type EMA Updates

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        
        CreateProcess["Create Process"]
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess

        subgraph "Cross-Type EMA Updates"
            UpdateCrossEvaderEMA["Update Cross-Type Evader EMA Point"]
            SetCrossEvaderLocation["Set Location = (α × Previous Location) + (1-α × Evader Point)"]
            UpdateCrossPursuerEMA["Update Cross-Type Pursuer EMA Point"]
            SetCrossPursuerLocation["Set Location = (α × Previous Location) + (1-α × Pursuer Point)"]

            UpdateProcess --> UpdateCrossEvaderEMA & UpdateCrossPursuerEMA
            
            UpdateCrossEvaderEMA --> SetCrossEvaderLocation
            UpdateCrossPursuerEMA --> SetCrossPursuerLocation
        end

        subgraph "Other Updates"
            TypeSpecificERA["Type-Specific EMA Updates"]
            PursuerEvader["Pursuer Evader Point Updates"]
            
            UpdateProcess --> TypeSpecificERA
            UpdateProcess --> PursuerEvader
        end

        CrossTypeDB[(Cross-Type Database)]
        TypeSpecificDB[(Type-Specific Database)]
        
        SetCrossEvaderLocation -->|Store| CrossTypeDB
        SetCrossPursuerLocation -->|Store| CrossTypeDB
        TypeSpecificERA -->|Store| TypeSpecificDB
        PursuerEvader -->|Store| TypeSpecificDB
    end

    ExternalSources --> TokenCheck
Loading

Type-Specific EMA Updates

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        
        CreateProcess["Create Process"]
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess

        subgraph "Type-Specific EMA Updates"
            UpdateTypeEvaderEMA["Update Type-Specific Evader EMA Point"]
            SetTypeEvaderLocation["Set Location = (α × Previous Location) + (1-α × Evader Point)"]
            UpdateTypePursuerEMA["Update Type-Specific Pursuer EMA Point"]
            SetTypePursuerLocation["Set Location = (α × Previous Location) + (1-α × Pursuer Point)"]

            UpdateProcess --> UpdateTypeEvaderEMA & UpdateTypePursuerEMA
            
            UpdateTypeEvaderEMA --> SetTypeEvaderLocation
            UpdateTypePursuerEMA --> SetTypePursuerLocation
        end

        subgraph "Other Updates"
            CrossTypeERA["Cross-Type EMA Updates"]
            PursuerEvader["Pursuer Evader Point Updates"]
            UpdateProcess --> CrossTypeERA
            UpdateProcess --> PursuerEvader
        end

        CrossTypeDB[(Cross-Type Database)]
        TypeSpecificDB[(Type-Specific Database)]
        
        CrossTypeERA -->|Store| CrossTypeDB
        SetTypeEvaderLocation -->|Store| TypeSpecificDB
        SetTypePursuerLocation -->|Store| TypeSpecificDB
        PursuerEvader -->|Store| TypeSpecificDB
    end

    ExternalSources --> TokenCheck
Loading

Pursuer and Evader Point Updates

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateProcess["Create Process"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess

        subgraph "Point Updates"
            subgraph "Pursuer Point"
                UpdatePursuerPoint["Update Pursuer Point"]
                SetPursuerLocation["Set Location = Sum of:
                1. Move Towards Cross-Type Evader EMA Point by Ratio r
                2. Move Away from Type-Specific Evader EMA Point (inversely proportional to distance)"]
                UpdatePursuerPoint --> SetPursuerLocation
            end

            subgraph "Evader Point"
                UpdateEvaderPoint["Update Evader Point"]
                SetEvaderLocation["Set Location = Sum of:
                1. Move Away from Cross-Type Pursuer EMA Point by Ratio r
                2. Move Away from Type-Specific Pursuer EMA Point (inversely proportional to distance)"]
                UpdateEvaderPoint --> SetEvaderLocation
            end

            UpdateProcess --> UpdatePursuerPoint & UpdateEvaderPoint
        end

        subgraph "Other Updates"
            CrossTypeEMA["Cross-Type EMA Updates"]
            TypeSpecificEMA["Type-Specific EMA Updates"]
            
            UpdateProcess --> CrossTypeEMA & TypeSpecificEMA
        end

        TypeSpecificDB[(Type-Specific Database)]
        CrossTypeDB[(Cross-Type Database)]
        
        SetPursuerLocation -->|Store| TypeSpecificDB
        SetEvaderLocation -->|Store| TypeSpecificDB
        CrossTypeEMA -->|Store| CrossTypeDB
        TypeSpecificEMA -->|Store| TypeSpecificDB
    end

    ExternalSources --> TokenCheck
Loading

Internal Token Formation Process

graph TD;
    ExternalSources["External Token Sources"]
    InternalSources["Internal Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateProcess["Create Process"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess
    end

    subgraph "Token Formation Control"
        GetPursuerPoint["Get Pursuer Point"]
        FindNearestEvader["Find Nearest Different-Type Evader Point"]
        ComplexityCheck{"Adaptive Statistical Threshold Check (ASTC)
        Input: Complexity (Bits/TimeSpan)"}
        FormToken["Form Higher-Order Token from Evader and Pursuer Token Types"]
        
        UpdateProcess --> GetPursuerPoint
        GetPursuerPoint --> FindNearestEvader
        FindNearestEvader --> ComplexityCheck
        ComplexityCheck -->|Exceeds| FormToken
    end

    UpdateUtilityScores["Utility Score Management"]
    TokenInstanceControl --> UpdateUtilityScores
    TokenInstanceControl["Token Instance Control"]
    FormToken --> UpdateUtilityScores

    TypeSpecificDB[(Type-Specific Database)]
    
    ExternalSources --> TokenCheck
    InternalSources --> TokenCheck
    FindNearestEvader -->|Query| TypeSpecificDB
    GetPursuerPoint -->|Query| TypeSpecificDB
    FormToken -->|Feed Back| InternalSources
Loading

Desirability and Undesirability Update Process

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateProcess["Create Process"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess
    end

    subgraph "Desirability Score Updates"
        GetPursuerPoint["Get Pursuer Point"]
        FindNearestEvader["Find Nearest Different-Type Evader Point"]
        DesirabilityCheck{"Desirability?"}
        ControlState{"Control State?"}
        
        UpdateProcess --> GetPursuerPoint
        GetPursuerPoint --> FindNearestEvader
        FindNearestEvader --> DesirabilityCheck & ControlState
        
        SelectScores["Select Score Type to Update:
        • Suppressed Desirability
        • Uncontrolled Desirability
        • Triggered Desirability
        • Suppressed Undesirability
        • Uncontrolled Undesirability
        • Triggered Undesirability"]
        
        DesirabilityCheck -->|Desirable| SelectScores
        DesirabilityCheck -->|Undesirable| SelectScores
        ControlState -->|Suppressed| SelectScores
        ControlState -->|Uncontrolled| SelectScores  
        ControlState -->|Triggered| SelectScores
        
        UpdatePursuerTypeScore["Update Pursuer Type Score:
        1. Decay Current Score
        2. Add New Signal"]
        
        UpdateEvaderTypeScore["Update Evader Type Score:
        1. Decay Current Evader Score
        2. Decay Updated Pursuer Score
        3. Add Both Decayed Scores"]
        
        SelectScores --> UpdatePursuerTypeScore
        UpdatePursuerTypeScore --> UpdateEvaderTypeScore
    end

    TypeSpecificDB[(Type-Specific Database)]
    
    ExternalSources --> TokenCheck
    GetPursuerPoint -->|"Query Token Type<br/>(Point + Scores)"| TypeSpecificDB
    FindNearestEvader -->|"Query Token Type<br/>(Point + Scores)"| TypeSpecificDB
    UpdatePursuerTypeScore -->|Store Token Type| TypeSpecificDB
    UpdateEvaderTypeScore -->|Store Token Type| TypeSpecificDB
Loading

External Token Triggering and Suppression Process

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateProcess["Create Process"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess
    end

    subgraph "Token Instance Control"
        GetEvaderPoint["Get Evader Point"]
        FindNearestPursuer["Find Nearest Different-Type Pursuer Point"]
        UndesirabilityCheck{"ASTC on Uncontrolled Undesirability
        AND
        Suppressed Undesirability < Uncontrolled Undesirability"}
        
        DesirabilityCheck{"ASTC on Uncontrolled Desirability
        AND
        Triggered Desirability > Uncontrolled Desirability"}
        SuppressToken["Suppress Token Instance Type of Pursuer"]
        TriggerToken["Trigger Token Instance Type of Pursuer"]

        UpdateProcess --> GetEvaderPoint
        GetEvaderPoint --> FindNearestPursuer
        FindNearestPursuer --> UndesirabilityCheck
        UndesirabilityCheck -->|Yes| SuppressToken
        UndesirabilityCheck -->|No| DesirabilityCheck
        DesirabilityCheck -->|Yes| TriggerToken
    end

    UpdateUtilityScores["Utility Score Management"]
    InternalFormation["Internal Token Formation Process"] --> UpdateUtilityScores
    SuppressToken --> UpdateUtilityScores
    TriggerToken --> UpdateUtilityScores

    TypeSpecificDB[(Type-Specific Database)]
    
    ExternalSources --> TokenCheck
    GetEvaderPoint -->|Query| TypeSpecificDB
    FindNearestPursuer -->|Query| TypeSpecificDB
    SuppressToken -->|Feedback| ExternalSources
    TriggerToken -->|Feedback| ExternalSources
Loading

Point Management Process

graph TD;
    ExternalSources["External Token Sources"]
    
    subgraph "Token Ingestion Point"
        TokenCheck{{"Token Type Exists?"}}
        UpdateProcess["Update Process"]
        CreateProcess["Create Process"]
        
        TokenCheck -->|Yes| UpdateProcess
        TokenCheck -->|No| CreateProcess
    end

    subgraph "Point Management"
        FindLowestUtility["Find Point with Lowest Utility Score for Token Type"]
        
        CreateNewPoint["Create New Point:
        1. Get EMA Point Location for Same Token Type and Point Type
        2. Project Through Sphere Center to Opposite Side"]
        
        DeletePoint["Delete Single Point with Lowest Utility"]

        UtilityCheck{"High Adaptive Statistical Threshold Check (ASTC)
        Input: Utility
        k: k₁ ∈ (0,1) for creation"}
        
        LowUtilityCheck{"Low Adaptive Statistical Threshold Check (ASTC)
        Input: Utility
        k: k₂ ∈ (0,1) for deletion
        Note: k₂ < k₁"}

        UpdateProcess --> FindLowestUtility
        FindLowestUtility --> UtilityCheck
        UtilityCheck -->|Yes| CreateNewPoint
        UtilityCheck -->|No| LowUtilityCheck
        LowUtilityCheck -->|Yes| DeletePoint
    end

    TypeSpecificDB[(Type-Specific Database)]
    
    ExternalSources --> TokenCheck
    FindLowestUtility -->|Query| TypeSpecificDB
    CreateNewPoint -->|Store| TypeSpecificDB
    DeletePoint -->|Remove| TypeSpecificDB
Loading

Popular repositories Loading

  1. folder-structure-lint folder-structure-lint Public

    Improve folder structure by only allowing safe-listed file paths

    TypeScript 8 1

  2. graphiql graphiql Public

    Forked from graphql/graphiql

    An in-browser IDE for exploring GraphQL.

    JavaScript 4 5

  3. suggest-test suggest-test Public

    A clover.xml parser to suggest the next unit test to write

    TypeScript 1

  4. inverse-pairs inverse-pairs Public

    Rust 1

  5. material-ui-build material-ui-build Public

    Forked from mui/material-ui

    React Components that Implement Google's Material Design.

    JavaScript

  6. carbon-ui carbon-ui Public

    Forked from tuckerconnelly/carbon-ui

    React Native Material Design library for all platforms

    JavaScript