SubNeuroHeuristicUnitModel

Full Name

neuroptimiser.core.models.SubNeuroHeuristicUnitModel

Description

class SubNeuroHeuristicUnitModel[source]

Bases: AbstractSubProcessModel

Sub-process model for NeuroHeuristicUnit

This model implements the sub-process structure of a NeuroHeuristicUnit, which includes a spiking core, a selector for position evaluation, and handlers for spiking signals and positions. It connects these components to form a complete perturbation-based nheuristic process.

See also

neuroptimiser.core.processes.NeuroHeuristicUnit

Process that implements a NeuroHeuristicUnit for perturbation-based nheuristics.

neuroptimiser.core.processes.TwoDimSpikingCore

Process that implements a two-dimensional spiking core for perturbation-based nheuristics.

neuroptimiser.core.processes.Selector

Process that selects the best position based on a fitness function.

neuroptimiser.core.processes.SpikingHandler

Process that handles spiking signals in the NeuroHeuristicUnit.

neuroptimiser.core.processes.PositionSender

Process that sends the position of the agent in the NeuroHeuristicUnit.

neuroptimiser.core.processes.PositionReceiver

Process that receives the positions of neighbouring agents in the NeuroHeuristicUnit.

__init__(proc: NeuroHeuristicUnit)[source]

Builds sub Process structure of the Process.

Parameters:
  • proc (NeuroHeuristicUnit) – The process to build the sub-process structure for.

  • proc.proc_params (dict) –

    A dictionary containing the parameters for the process model. It must include:
    • agent_id: int, identifier of the agent

    • num_dimensions: int, number of dimensions in the problem space

    • num_agents: int, number of agents in the system

    • num_neighbours: int, number of neighbouring agents (default: 0)

    • spiking_core: str, type of spiking core to use (default: “TwoDimSpikingCore”)

    • function: callable, function to evaluate the fitness of a position

    • core_params: dict, parameters for the spiking core

    • selector_params: dict, parameters for the selector

implements_process

alias of NeuroHeuristicUnit

implements_protocol

alias of LoihiProtocol