Qual è il vantaggio di progettare algoritmi distribuiti deterministici?


10

Gli algoritmi distribuiti resistenti agli errori possono essere deterministici o probabilistici. Prendi ad esempio il problema del consenso.

  • Paxos è deterministico nel senso che, dato il presupposto che fa, funziona sempre .

  • In constrast, il consenso randomizzato funziona con una data probabilità.

Qual è il vantaggio di progettare e utilizzare un algoritmo deterministico?

Le ipotesi su cui si basano gli algoritmi deterministici hanno anche una probabilità di mantenere la realtà (quella che viene chiamata la loro copertura dell'assunzione ). Quindi, c'è sempre una probabilità che un algoritmo deterministico non funzioni nella realtà.


Paxos / wikipedia, famiglia di protocolli
vzn

1
Puoi essere un po 'più specifico con il tuo commento?
danyhow,

1
È bene notare che la randomizzazione viene generalmente utilizzata per le proprietà di vivacità e non per quelle di sicurezza. Le proprietà di sicurezza sono sempre valide, tuttavia esiste la possibilità che l'algoritmo non venga chiuso (che generalmente diminuisce con il passare del tempo).
Kaveh,

Risposte:


10

Risponderò a questo dal punto di vista degli algoritmi di grafi distribuiti ( algoritmi distribuiti che risolvono un problema di grafi relativo alla struttura della rete di comunicazione).

Ecco alcuni motivi non ovvi per la progettazione di algoritmi distribuiti deterministici in questa impostazione:

  • Subroutine in algoritmi randomizzati . A pag. 12–13 di queste diapositive , Elkin delinea una tecnica di progettazione di algoritmi in cui è possibile utilizzare un algoritmo distribuito deterministico veloce come subroutine al fine di costruire un algoritmo distribuito randomizzato veloce . È interessante notare che non è possibile utilizzare un tipico algoritmo randomizzato come subroutine nello stesso contesto (la probabilità di errore sarebbe troppo alta).

  • Tolleranza ai guasti . Esiste una traduzione meccanica che consente di convertire un algoritmo distribuito deterministico veloce in un algoritmo distribuito auto stabilizzante rapido (vedere ad esempio la Sezione 2.4 di questo sondaggio ). Una conversione simile non è nota per gli algoritmi randomizzati (e penso che sia improbabile che esista nel caso generale).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.