← Natrag
AI

Raft u roju: Koordinacija agenata bez središnjeg orkestratora

Damir Radulić· 19. srpnja 2026.· 2 min čitanja· 26 pregleda
Raft u roju: Koordinacija agenata bez središnjeg orkestratora
🎧 Poslušaj članak

Uvod u problem središnjeg orkestratora

U tradicionalnim distribuiranim sustavima, središnji orkestrator često predstavlja jedinstvenu točku otkaza i usko grlo performansi. Kada agenti u roju trebaju uskladiti svoje akcije, oslanjanje na jedan centar može dovesti do kašnjenja i potpunog zastoja u slučaju njegovog kvara. Raft protokol, poznat po svojoj jednostavnosti i pouzdanosti, nudi elegantno rješenje za postizanje konsenzusa bez potrebe za centralnim autoritetom.

Prilagodba Raft protokola za roj agenata

Raft se tradicionalno koristi za replikaciju loga u klasterima poslužitelja, ali njegova načela mogu se primijeniti i na koordinaciju agenata. Ključni koncepti uključuju izbor vođe (leader election), replikaciju loga (log replication) i izvršavanje state machinea (state machine execution). U kontekstu roja, svaki agent djeluje kao čvor koji sudjeluje u konsenzusu.

Primjer koda: Izbor vođe

Sljedeći Python kod ilustrira osnovni mehanizam izbora vođe u Raftu. Svaki agent započinje kao sljedbenik (follower) i pokreće izbore ako ne primi heartbeat od vođe unutar zadanog vremenskog okvira.

  • Agent.init(): Postavlja početno stanje kao follower s nasumičnim timeoutom.
  • Agent.start_election(): Povećava term, glasa za sebe i šalje zahtjeve za glasove drugim agentima.
  • Agent.handle_vote_request(): Provjerava term i daje glas ako je zahtjev valjan.
class Agent:
    def __init__(self, id):
        self.id = id
        self.state = 'follower'
        self.current_term = 0
        self.voted_for = None
        self.timeout = random.uniform(150, 300)  # ms

    def start_election(self):
        self.current_term += 1
        self.state = 'candidate'
        self.voted_for = self.id
        # šalji RequestVote RPC svim agentima

Replikacija loga i state machine

Nakon izbora vođe, sve promjene stanja prolaze kroz vođu. Vođa dodaje zapis u svoj log i šalje ga sljedbenicima putem AppendEntries RPC. Kada većina potvrdi, zapis se smatra commited i izvršava se na state machineu. Ovaj mehanizam osigurava da svi agenti imaju konzistentan prikaz stanja, čak i ako neki od njih privremeno otkažu.

Prednosti i izazovi

Primjena Rafta u roju agenata donosi nekoliko prednosti: eliminacija jedinstvene točke otkaza, skalabilnost i tolerancija na kvarove. Međutim, postoje i izazovi poput povećane latencije zbog komunikacije i složenosti upravljanja promjenjivim članstvom u roju. Unatoč tome, Raft pruža robusnu osnovu za decentraliziranu koordinaciju.

Raftkoordinacija agenataroj agenatadistribuirani sustavikonsenzus

Zanima vas ovakva AI tehnologija?

RiNET gradi sovereign AI rjesenja za javni sektor i poduzeca - od civic intelligence do automatizacije nabave.

Kontaktirajte nas →
0 komentara

Komentari