/
RomashkaHH
/
neuroProject
Обзор
Документация
Войти
/
RomashkaHH
/
neuroProject
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
core/network.py
42 строки
1 KB
RomashkaHEHE
fix: neuron doesn't reset when activated
01 ноя 2025, 23:12
01 ноя 2025, 23:12
0bf3fd2
Код
Авторство
О чём код?
from .neuron import * class Network: def __init__(self): self.resettable: set[Neuron] = set() self.neurons: set[Neuron] = set() self.sensors: set[Sensor] = set() self.muscles: set[Muscle] = set() self.zero_sensor = Sensor() self.zero_sensor.value = 1 self.sensors.add(self.zero_sensor) def calculate(self): neurons_to_be_checked: set[Neuron] = set() for neuron in self.resettable: neuron.value = 0 for sensor in self.sensors: if sensor.resting: sensor.resting -= 1 if sensor.value and not sensor.resting: sensor.resting = sensor.rest_time for outgoing in sensor.outgoing: outgoing.value += 1 for neuron in self.neurons: if neuron.resting: neuron.resting -= 1 if neuron.value >= neuron.limit and not neuron.resting: neurons_to_be_checked.add(neuron) while len(neurons_to_be_checked) > 0: neuron = neurons_to_be_checked.pop() if neuron.value >= neuron.limit and not neuron.resting: neuron.value = 0 neuron.resting = neuron.rest_time for outgoing in neuron.outgoing: outgoing.value += 1 if outgoing is Neuron: neurons_to_be_checked.add(outgoing)