El algoritmo Brooks-Iyengar o algoritmo FuseCPA o algoritmo híbrido Brooks-Iyengar [1] es un algoritmo distribuido que mejora tanto la precisión como la exactitud de las mediciones de intervalo tomadas por una red de sensores distribuidos , incluso en presencia de sensores defectuosos. [2] La red de sensores hace esto intercambiando el valor medido y el valor de precisión en cada nodo con todos los demás nodos, y calcula el rango de precisión y un valor medido para toda la red a partir de todos los valores recopilados. Incluso si algunos de los datos de algunos de los sensores son defectuosos, la red de sensores no funcionará mal. El algoritmo es tolerante a fallos y distribuido. También podría utilizarse como método de fusión de sensores. La precisión y exactitud de este algoritmo se demostraron en 2016. [3]
El algoritmo híbrido Brooks-Iyengar para el control distribuido en presencia de datos ruidosos combina el acuerdo bizantino con la fusión de sensores . Cierra la brecha entre la fusión de sensores y la tolerancia a fallas bizantinas. [4] Este algoritmo fundamental unificó estos campos dispares por primera vez. Esencialmente, combina el algoritmo de Dolev [5] para una concordancia aproximada con el algoritmo de convergencia rápida (FCA) de Mahaney y Schneider. El algoritmo asume N elementos de procesamiento (PE), t de los cuales son defectuosos y pueden comportarse de manera maliciosa. Toma como entrada valores reales con inexactitud o ruido inherentes (que pueden ser desconocidos), o un valor real con incertidumbre definida a priori, o un intervalo. La salida del algoritmo es un valor real con una precisión especificada explícitamente. El algoritmo se ejecuta en O ( N log N ) donde N es el número de PE. Es posible modificar este algoritmo para que corresponda al algoritmo de convergencia de Crusader (CCA), [6] sin embargo, el requisito de ancho de banda también aumentará. El algoritmo tiene aplicaciones en control distribuido , confiabilidad del software , computación de alto rendimiento , etc. [7]
El algoritmo de Brooks-Iyengar se ejecuta en cada elemento de procesamiento (PE) de una red de sensores distribuidos. Cada PE intercambia su intervalo medido con todos los demás PE de la red. La medida "fusionada" es un promedio ponderado de los puntos medios de las regiones encontradas. [8] Los pasos concretos del algoritmo de Brooks-Iyengar se muestran en esta sección. Cada PE realiza el algoritmo por separado:
Aporte:
La medida enviada por PE k a PE i es un intervalo cerrado ,
Producción:
La salida de PE i incluye una estimación puntual y una estimación de intervalo
Ejemplo:
Considere un ejemplo de 5 PE, en el que PE 5 ( ) envía valores incorrectos a otros PE y todos intercambian los valores.
Los valores recibidos por se encuentran en la siguiente Tabla.
Dibujamos un diagrama de región ponderada (WRD) de estos intervalos, luego podemos determinar para PE 1 según el algoritmo:
que consta de intervalos donde se cruzan al menos 4 (= = 5−1) mediciones. La salida de PE 1 es igual a
y la estimación del intervalo es
De manera similar, podríamos obtener todos los insumos y resultados de los 5 PE:
Problema bizantino de 1982: [5] El problema general bizantino [9] como una extensión del problema de los dos generales podría verse como un problema binario.
Consenso aproximado de 1983: [10] El método elimina algunos valores del conjunto formado por escalares para tolerar entradas defectuosas.
Consenso inexacto de 1985: [7] El método también utiliza escalar como entrada.
1996 Algoritmo de Brooks-Iyengar: [1] El método se basa en intervalos.
Consenso de vectores bizantinos de 2013: [11] El método utiliza vectores como entrada.
Acuerdo multidimensional de 2013: [12] El método también utiliza vectores como entrada, mientras que la medida de la distancia es diferente.
Podríamos utilizar el consenso aproximado (basado en escalares), el algoritmo de Brooks-Iyengar (basado en intervalos) y el consenso vectorial bizantino (basado en vectores) para tratar con entradas de intervalo, y el artículo [3] demostró que el algoritmo de Brooks-Iyengar es el mejor. aquí.
El algoritmo de Brooks-Iyengar es un trabajo fundamental y un hito importante en la detección distribuida, y podría usarse como una solución tolerante a fallas para muchos escenarios de redundancia. [13] Además, es fácil de implementar e integrar en cualquier sistema de red. [14]
En 1996, el algoritmo se utilizó en MINIX para proporcionar mayor exactitud y precisión, lo que llevó al desarrollo de la primera versión de RT-Linux.
En 2000, el algoritmo también fue fundamental para el programa de seguimiento distribuido del programa DARPA SensIT. Las lecturas acústicas, sísmicas y de detección de movimiento de múltiples sensores se combinan y se introducen en un sistema de seguimiento distribuido. Además, se utilizó para combinar alimentaciones de sensores heterogéneos en la aplicación realizada por BBN Technologies, BAE Systems, Penn State Applied Research Lab (ARL) y USC/ISI.
El Grupo Thales, un fabricante de defensa del Reino Unido, utilizó este trabajo en su Laboratorio de Análisis Operacional Global. Se aplica a los programas de Raytheon donde muchos sistemas necesitan extraer datos confiables de una red de sensores no confiables, lo que exime la creciente inversión en mejorar la confiabilidad de los sensores. Además, la investigación para desarrollar este algoritmo da como resultado las herramientas utilizadas por la Marina de los EE. UU. en su software de concienciación del dominio marítimo.
En educación, el algoritmo de Brooks-Iyengar se ha utilizado ampliamente en clases de enseñanza como la Universidad de Wisconsin, Purdue, Georgia Tech, la Universidad de Clemson, la Universidad de Maryland, etc.
Además del ámbito de las redes de sensores, también podrían beneficiarse otros campos como la arquitectura activada por tiempo, la seguridad de los sistemas ciberfísicos, la fusión de datos, la convergencia de robots, la informática de alto rendimiento, la fiabilidad del software/hardware y el aprendizaje conjunto en sistemas de inteligencia artificial. del algoritmo de Brooks-Iyengar.
Los inventores del algoritmo Brooks Iyengar El Dr. Brooks y el Dr. SS Iyengar recibieron el prestigioso premio Test of Time de 25 años por su investigación pionera y el alto impacto del algoritmo Brooks-Iyengar. La investigación de alto impacto y cómo este trabajo ha influido en numerosos programas y productos comerciales del gobierno de EE. UU.