Bobojy00/moonbit_factory_graph/src/optimizer does not have a README file

    BufferTuningRecommendation

    pub(all) struct BufferTuningRecommendation {
    buffer_id : String
    upstream_station_id : String
    downstream_station_id : String
    current_capacity : Double
    recommended_capacity : Double
    rationale : String
    } derive(Eq,
    Debug
    )

    EnergySchedulePlan

    pub(all) struct EnergySchedulePlan {
    startup_sequence : Array[StartupSequenceStep]
    total_installed_power_kw : Double
    peak_shaved_startup_power_kw : Double
    } derive(Eq,
    Debug
    )

    FailoverRoutePlan

    pub(all) struct FailoverRoutePlan {
    failed_node_id : String
    alternate_route_found : Bool
    suggested_bypass_path : Array[String]
    derated_capacity_units_per_hour : Double
    action_summary : String
    } derive(Eq,
    Debug
    )

    LineBalancePlan

    pub(all) struct LineBalancePlan {
    recommendations : Array[RebalanceRecommendation]
    current_smoothness_index : Double
    projected_smoothness_index : Double
    projected_throughput_increase_percent : Double
    } derive(Eq,
    Debug
    )

    RebalanceRecommendation

    pub(all) struct RebalanceRecommendation {
    station_id : String
    current_cycle_time : Double
    target_takt_time : Double
    suggested_action : String
    suggested_parallel_count : Int
    } derive(Eq,
    Debug
    )

    StartupSequenceStep

    pub(all) struct StartupSequenceStep {
    step_index : Int
    machine_ids : Array[String]
    step_power_kw : Double
    delay_after_sec : Double
    } derive(Eq,
    Debug
    )

    optimize_buffer_capacities

    optimize_line_balance

    plan_staggered_energy_startup

    synthesize_failover_routing

    fn synthesize_failover_routing(graph :
    FactoryGraph
    , failed_node_id : String, source_id : String, target_id : String) -> FailoverRoutePlan