Waiting
Login processing...

Trial ends in Request Full Access Tell Your Colleague About Jove
Click here for the English version

Engineering

Enrutamiento de red de sensores de eficiencia energética a gran escala mediante una unidad de procesador cuántico

Published: September 8, 2023 doi: 10.3791/64930

Summary

Este estudio proporciona un método para utilizar una unidad de procesador cuántico para calcular las rutas de varias dinámicas de tráfico que funcionan para superar los métodos clásicos en la literatura para maximizar la vida útil de la red.

Abstract

El método de conservación de energía de la red de sensores, que es un híbrido de uso de una computadora clásica y un procesador cuántico, ha demostrado funcionar mejor que el algoritmo heurístico que utiliza una computadora clásica. En este manuscrito se presenta y justifica el contexto técnico de la importancia del método. A continuación, los pasos experimentales se demuestran en una secuencia operativa con ilustraciones si alguna vez es necesario. El método ha sido validado por resultados positivos en un conjunto de muestras de topologías de red generado aleatoriamente. Los exitosos resultados experimentales de este método han proporcionado un mejor enfoque para los problemas de maximización de la vida útil de la red de sensores y han demostrado que el procesador cuántico de última generación actual ha sido capaz de resolver grandes problemas prácticos de ingeniería con méritos que anulan los métodos actuales en la literatura. En otras palabras, la ventaja cuántica puede ser explotada al máximo. Ha pasado de la etapa de prueba de concepto a prueba de viabilidad.

Introduction

La conservación de la energía en las redes de sensores ha sido un tema muy crítico en el diseño1. Los métodos clásicos normalmente abordan el problema utilizando un enfoque ad hoc 2,3,4,5,6. Dicho esto, estos métodos emulan los nodos sensores como activos inteligentes gestionados individualmente que también podrían cooperar para servir tanto a los intereses del individuo como a los de la comunidad. Debido al entorno volátil en el que trabajan los sensores, en algunos trabajos se introducen algoritmos aleatorios para captar las incertidumbres ambientales, mientras que en otros, se toma prestada la biointeligencia para idear algoritmos heurísticos que podrían lograr resultados aceptables de sentido común7. Para ilustrar aún más, para esos algoritmos aleatorios, por un lado, las incertidumbres ambientales podrían no ser tan aleatorias como la secuencia aleatoria generada por una CPU clásica, por otro lado, incluso si las incertidumbres ambientales son absolutamente aleatorias, no podrían ser capturadas por el simulador de proceso aleatorio generado por la CPU clásica; Para esos algoritmos de biointeligencia, en primer lugar, no se ha derivado un análisis matemático riguroso para hacer que una prueba conceptual funcione, en segundo lugar, la convergencia a la verdad o el límite de tolerancia al error solo se puede configurar dada una verdad fundamentada informada, aunque una cantidad significativa de trabajos en la literatura han demostrado hasta cierto punto que estos algoritmos heurísticos funcionan. Por un lado, estos algoritmos se analizan (no se simulan) contra escenarios de casos de uso bien definidos, se detienen en ciertos criterios que aún vale la pena considerar en futuras investigaciones, por otro, como se dijo antes, la mayoría de los algoritmos no han sido validados contra la simulación de software que se puede implementar más fácilmente en los microprocesadores que hacen que un sensor sea8.

No consideramos el aprendizaje automático (ML) aquí porque necesita emplear análisis de datos, lo que requiere un volumen relativamente grande de potencia computacional que no es portátil en dispositivossensores.

Para abordar las preocupaciones mencionadas anteriormente, proporcionamos un algoritmo cuántico híbrido. El algoritmo es híbrido en el sentido de que el mecanismo de selección de encabezado de clúster se implementa utilizando un algoritmo aleatorio clásico durante los cálculos de enrutamiento realizados con un procesador cuántico una vez que se configura la topología de red. El método se justifica de la siguiente manera: (1) Como se discutió en el primer párrafo con respecto a las incertidumbres ambientales, no queremos esforzarnos más en aplicar un generador de secuencias cuánticas para capturar la dinámica ambiental porque podría ser históricamente rastreable. La dinámica ambiental que puede ser históricamente rastreable ha sido justificada por varios trabajos de investigación de aprendizaje automático en ciencia de redes. Para la etapa actual, nos quedamos con el enfoque clásico. (2) El método exacto que se basa en el análisis matemático abstracto garantiza llegar a la verdad fundamental. Hasta ahora, la física experimental cuántica ha sido sofisticadamente apoyada por las matemáticas físicas. Además, han existido aplicaciones algorítmicas como el algoritmo Shor10 para probar esta teoría redondeada.

A continuación se proporciona una cantidad adecuada de bibliografía para la comparación. El protocolo HEESR propuesto11 tiene méritos demostrables en los resultados, pero los autores han especificado bien los parámetros de configuración de la simulación, por ejemplo, la función de distribución aleatoria exacta de la posición del nodo, la justificación adecuada del porcentaje de cabeza del clúster p (0,2%) y el parámetro de escalado para la distribución del nivel de energía (1-2 julios) entre los nodos a_i. Prohibió al autor seguir adelante con la duplicación de los experimentos y la realización de la comparación. El mecanismo de enrutamiento de potencia12 emplea el método de ajuste de curvas para aproximar funciones continuas convergentes a partir de conjuntos de datos discretos obtenidos de un espacio muestral no especificado para determinar los determinantes que afectan el proceso de decisión del enrutamiento óptimo de la red. El método de ajuste de curva13 requiere información previa sobre la topología de la red. Es posible que las circunstancias reales no tengan información previa fácilmente disponible. Incluso cuando existe información previa, es posible que la topología de red no sea lo suficientemente regular como para poder asignarse a curvas de ajuste que puedan facilitar el cálculo derivable. Siguiendo la misma lógica, el protocoloDORAF 14 no ha justificado cómo y por qué tomar prestada la función de Boltzmann y la función logística para aproximar los determinantes de la red. Ismail et al.15 han proporcionado una referencia sólida para futuros esfuerzos de investigación sobre el diseño de protocolos de enrutamiento energéticamente eficientes en la red submarina.

Subscription Required. Please recommend JoVE to your librarian.

Protocol

1. Configuración de Dwave Ocean Environment

  1. Descargue e instale las herramientas oceánicas desde el enlace: https://docs.ocean.dwavesys.com/en/stable/overview/install.html
    1. En el terminal, escriba python -m venv ocean.
    2. En el terminal, escriba . ocean/bin/activate, como se muestra en la Figura 1.
    3. En el terminal, escriba git clone https://github.com/dwavesystems/dwave-ocean-sdk.git
      A continuación, escriba cd dwave-ocean-sdk, como se muestra en la figura 2.
      A continuación, escriba python setup.py install

Figure 1
Figura 1: Activación del entorno virtual oceánico. El paquete Ocean, como D-wave API integrado, proporciona una experiencia de usuario nublada a través de la propia computadora del usuario a la premisa de la máquina D-wave. Haga clic aquí para ver una versión más grande de esta figura.

Figure 2
Figura 2: Instalación del SDK de Ocean. El paquete Ocean proporciona los kits de herramientas necesarios para los desarrolladores, incluida una práctica instalación de Cplex. Haga clic aquí para ver una versión más grande de esta figura.

2. Instalación de la interfaz API de Cplex Python

  1. Descarga e instala Cplex: https://pypi.org/project/cplex/
    1. En el terminal, escriba pip install cplex.

3. Parámetros de configuración del experimento

  1. Configure los parámetros de configuración del experimento mencionados en la Tabla 1 mediante la notación de programación de Python en el script, como se muestra en la Figura complementaria 1. Una vez que se ejecuta y ejecuta el script, el lenguaje subyacente procesará para almacenar las variables en la RAM. Se adjunta una captura de pantalla de los códigos de Python donde se asignan los valores de los parámetros respectivamente (Figura complementaria 1).
d0 87.7085 m
E 50 * 1 x 10-09 julios
epson_fs 1 * 10-12 * 10 julios
epson_mp 0.0013 * 1 * 10-12 julios
Tamaño del paquete 4000 bits

Tabla 1: Parámetros del modelo energético y configuración del tamaño del paquete.

Figura complementaria 1: Guión 1. Secuencia de comandos para configurar los parámetros del experimento. Haga clic aquí para descargar este archivo.

4. Scripts de Python

  1. Prepare los scripts de Python para generar 198 posiciones 2D de nodos de sensores que se dispersan por igual en seis sectores que dividen el área circular con un radio de 50 m.
    NOTA: El gráfico circular está segmentado en 6 sectores. En cada sector, la posición de cada nodo se trata con dos variables correspondientes. Uno es el ángulo y el otro es el radio. Asigne valores tanto al ángulo como al radio mediante un generador de distribución aleatoria uniforme. El procedimiento detallado se muestra en la Figura Suplementaria 2 y en la Figura Suplementaria 3.
  2. Dentro de cada sector, asegúrese de que los 33 nodos del sensor estén dispersos aleatoriamente por una distribución normal. Guarde las posiciones 2D en archivos de texto por cada sector bajo la regla ortográfica del nombre como 'posdata'+sector_no+'.txt' (Figura 3 y Figura 4).
    1. Segmente el área circular con un radio de 50 m en seis sectores. Los valores angulares iniciales para estos seis sectores hacen que el vector A= [60,120,180,240,300,360].
      1. Supongamos que el índice del sector es i, establezca la longitud del polo para elj-ésimo nodo del sensor como l_{i,j}=50*random.random()
      2. Supongamos que el índice del sector es i, establezca el valor angular para elj-ésimo nodo sensor como ang_{i,j}=(60*random.random() + A_i - 60) * 2 * pi / 360
      3. Establezca las coordenadas cartesianas delj-ésimo nodo sensor en el i-ésimo sector como
        x_{i,j}=l_{i,j}*cos(ang_{i,j})
        y_{i,j}=l_{i,j}*sin(ang_{i,j})

Figura complementaria 2: Guión 2. Script para configurar las dos ubicaciones de posición de dimensión para cada nodo por sector. Haga clic aquí para descargar este archivo.

Figura complementaria 3: Guión 3. Script para configurar los valores de posición de cada nodo dentro de 1 sector. Haga clic aquí para descargar este archivo.

Figure 3
Figura 3: Posiciones de nodo generadas y almacenadas separadas en 6 archivos, cada uno correspondiente a un sector. Las ubicaciones de posición bidimensionales se guardan en 6 archivos posdata+'idx'. Cada uno presenta un sector. Haga clic aquí para ver una versión más grande de esta figura.

Figure 4
Figura 4: Posiciones de los nodos almacenadas en el sector 0. Las posiciones están en dos dimensiones y se generan utilizando un generador aleatorio uniforme. La primera columna son las ubicaciones horizontales y la segunda columna son las ubicaciones verticales. Haga clic aquí para ver una versión más grande de esta figura.

5. Preparación de los niveles iniciales de energía

  1. Prepare los niveles de energía iniciales para los 198 nodos sensores. Asigne la mitad de ellos con energía inicial a 0,5 J y la otra mitad con energía inicial a 1 J. Cree una matriz para almacenar el nivel de energía de cada nodo y use un bucle para asignar a las celdas secuenciadas en números pares el valor 1 y a las secuenciadas en números impares el valor de 0,5. En la figura complementaria 4 se muestran los códigos de Python y el resultado se muestra en la figura 5.

Figura complementaria 4: Guión 4. Script para asignar la mitad de la energía del nodo de 1 julio y los otros 0,5 julios. Haga clic aquí para descargar este archivo.

Figure 5
Figura 5: Energy_buffer asignación inicial. A la mitad de los nodos se les asigna una energía de 1 julio, mientras que a las otras mitades se les asigna 0,5 julios. Haga clic aquí para ver una versión más grande de esta figura.

6. Preparación Advanced_Leach script de algoritmo (Figura 6 y Figura 7)

  1. Prepare un script funcional en el que se seleccione el encabezado del clúster y se forme el clúster.
    NOTA: El clúster se selecciona mediante un bucle con la condición de que el número de cabezas de clúster seleccionadas sea menor que el número total de nodos dividido por 6. La condición es asegurarse de que, dentro de cada clúster, la cantidad de nodo de origen sea igual o inferior a 6. Dentro del bucle, a cada nodo se le asigna un número aleatorio entre [0,1]. Aquellos que son más pequeños que un número de criterios determinado se convierten en el encabezado del clúster, mientras que otros se convierten en los nodos de origen. El procedimiento detallado se muestra en la Figura 5 suplementaria. A continuación, dado un grupo fijo de cabezas de clúster, el resto de los nodos de origen seleccionan sus cabezas de clúster dentro de la distancia más corta, dado que la cabeza de clúster aún no ha alojado más de 6 nodos de origen. El procedimiento detallado se muestra en la Figura 6 suplementaria.
    1. Establezca T_n=P/(1-P*(count%(1/P)))), donde P = 0,2 (la tasa proporcional del número de cabezas de clúster al tamaño total de la red) y el recuento es la cantidad de transmisión redondeada hasta la fecha.
    2. Para cada nodo sensor, obtenga un número aleatorio entre [0,1] threshold_rm = random.random()
      1. Si threshold_rm es inferior a T_n, seleccione este nodo de sensor como cabezal del clúster.
    3. Para cada uno de los nodos no cluster_head, seleccione el nodo de sensor de cabezal de clúster más cercano a él como su encabezado de clúster. Dado un grupo fijo de cabezas de clúster, el resto de los nodos de origen seleccionan sus cabezas de clúster dentro de la distancia más corta, dado que la cabeza de clúster aún no ha alojado más de 6 nodos de origen. El procedimiento detallado se muestra en la Figura 6 suplementaria.
  2. Prepare las líneas de comandos para calcular el proceso de agotamiento de energía en toda la red para esta ronda. Para cada ejecución del algoritmo que complete un lote de entregas de los paquetes desde los nodos de origen hasta el receptor, la matriz de almacenamiento de energía preparada se actualizará para que se reduzcan los valores celda por celda. El consumo de energía a lo largo de la ruta será la suma del consumo de energía por ruta de nodo a nodo, que se calcula de acuerdo con un modelo energético1. El procedimiento detallado se muestra en la Figura complementaria 7.
  3. Calcule las métricas de ronda de transmisión requeridas.
    NOTA: Por cada ejecución del algoritmo para completar un lote de entrega de paquetes, se actualiza la matriz de energía, se cuenta la cantidad de ejecución y el número de nodos drenados. Si el valor es mayor o igual que 1, entonces FND (matriz del primer nodo) es igual a la cantidad de ejecución actual. Si el valor es mayor o igual a la mitad de la cantidad del nodo, entonces HND(matriz de la mitad del nodo) es igual a la cantidad de ejecución actual. Si el valor es igual a la cantidad total del nodo, AND(all node die) es igual a la cantidad de ejecución actual. El procedimiento detallado se muestra en la Figura 8 suplementaria.

Figure 6
Figura 6: Matriz de cabecera de clúster. Los números de secuencia de los nodos que se han seleccionado para ser los encabezados del clúster. Haga clic aquí para ver una versión más grande de esta figura.

Figure 7
Figura 7: Matriz de índice de encabezado de clúster. Como hay seis sectores, cada uno con 33 nodos sensores, en la matriz de índice de encabezado de clúster, el número indica el número de secuencia del encabezado de clúster al que pertenece el nodo sensor correspondiente. El índice de posición de la matriz corresponde al número de secuencia de cada nodo sensor. Para el nodo sensor que se selecciona como cabezal de clúster, el número asignado a su ranura en la matriz es el número de secuencia de sí mismo. Haga clic aquí para ver una versión más grande de esta figura.

Figura complementaria 5: Guión 5. Script para seleccionar el encabezado del clúster. Haga clic aquí para descargar este archivo.

Figura complementaria 6: Guión 6. Script para asignar nodos de origen a clústeres. Haga clic aquí para descargar este archivo.

Figura complementaria 7: Guión 7. Script para actualizar el búfer de energía para todos los nodos de origen a través de la reducción de la cantidad de energía consumida a través de la transmisión. Haga clic aquí para descargar este archivo.

Figura complementaria 8: Guión 8. Script para calcular la cantidad de redondeos hasta los que muere el primer nodo y la mitad de los nodos. Haga clic aquí para descargar este archivo.

7. Preparación del script de algoritmo cuántico híbrido

  1. Prepare un script funcional en el que se seleccione el encabezado del clúster y se forme el encabezado del clúster.
    1. Como el tamaño máximo del clúster es 6 en este experimento1, asegúrese de que la cantidad de cabezas de clúster no sea inferior a current_valid_node_amount/6, el procedimiento de selección se ejecutará en bucle hasta que se cumpla este criterio.
      NOTA: Si current_valid_node_amount no es mayor que 6, estos nodos válidos forman un solo agrupamiento.
    2. Para cada uno de los nodos no cluster_head_valid, calcule la distancia del mismo a cada uno de los cabezales de clúster seleccionados y asígnele el cabezal de clúster cuyo tamaño de clúster no haya superado 6 donde el valor de distancia sea el más pequeño.
      NOTA: En la Figura 8, se calculan todas las distancias de los nodos no cluster_head_valid a la cabeza de clúster seleccionada 24, y toda la cabeza de clúster seleccionada se muestra en la Figura 9. En la figura 10 se muestran todos los nodos asignados a su cabecera de clúster correspondiente, y en la figura 11 se muestra la agrupación de los nodos miembros de cada clúster en una matriz vectorial.
  2. Prepare el script de subfunción, donde se forma el problema de optimización de enrutamiento por clúster y se envía a la API de D-wave (Figura 12). Las rutas de enrutamiento se calculan clúster por clúster.
  3. Usando el script de Python, calcule el proceso de agotamiento de energía en toda la red para evaluar cuantitativamente el algoritmo por vida útil de la red en términos del número de rondas de transmisión.
    NOTA: Para cada ejecución del algoritmo que complete un lote de entregas de los paquetes desde los nodos de origen hasta el receptor, la matriz de almacenamiento de energía preparada se actualizará para tener valores reducidos celda por celda. El consumo de energía a lo largo de la ruta será la suma del consumo de energía por ruta de nodo a nodo, calculado de acuerdo con un modelo energético1. El procedimiento detallado se muestra en la Figura complementaria 7.
  4. Usando el script de Python, registre el momento en que se drena el primer nodo y cuando se drena la mitad de los nodos. El procedimiento detallado se muestra en la Figura 8 suplementaria.

Figure 8
Figura 8: Matriz toClusterHeadDistance para nodos no cluster_head con índice 24. La primera columna es la distancia y la segunda columna es el número de índice de la cabeza del clúster Haga clic aquí para ver una versión más grande de esta figura.

Figure 9
Figura 9: CHID_buff matriz. Números de secuencia de los nodos de sensor que se seleccionan como cabezales de clúster. Haga clic aquí para ver una versión más grande de esta figura.

Figure 10
Figura 10 CHIdx_buff matriz. Se asignó el número de secuencia de los nodos de sensor de cabeza de clúster a cada nodo de sensor correspondiente. Haga clic aquí para ver una versión más grande de esta figura.

Figure 11
Figura 11: CH_BUFF matriz. Grupo de clústeres por nodos de sensor de cabeza de clúster correspondientes a la matriz CHID_buff. Cada grupo de clústeres consta de 0 o más de 0 nodos de sensores. Cada matriz de grupos de clústeres muestra los números de secuencia de los nodos de sensores que se encuentran en ella. Haga clic aquí para ver una versión más grande de esta figura.

Figure 12
Figura 12: Cálculo de la ruta de enrutamiento por sector. Para cada sector, se calculan las rutas de enrutamiento para todos los nodos de origen. Haga clic aquí para ver una versión más grande de esta figura.

Subscription Required. Please recommend JoVE to your librarian.

Representative Results

Los resultados de una muestra de ejecución se muestran en la Tabla 2, la Tabla 3 y la Tabla 4. Los conjuntos de datos detallados de los tres lotes de datos están disponibles en la carpeta Datos suplementarios 1 .

Conjunto de datos 1
198 nodos en un área circular con un radio de 50 m Algoritmo cuántico híbrido Algoritmo Advanced_Leach
FND 1442 727
HND 2499 1921

Tabla 2: Lote 1 de resultados del experimento.

Conjunto de datos 2
198 nodos en un área circular con un radio de 50 m Algoritmo cuántico híbrido Algoritmo Advanced_Leach
FND 757 1463
HND 1925 2500

Tabla 3: Lote 2 de resultados del experimento.

Conjunto de datos 3
198 nodos en un área circular con un radio de 50 m Algoritmo cuántico híbrido Algoritmo Advanced_Leach
FND 790 1461
HND 1888 2500

Tabla 4: Lote 3 de resultados del experimento.

Se seleccionan tres métricas con las definiciones4 de la siguiente manera:
FND - matriz del primer nodo. El número de transmisiones redondeadas hacia arriba a las que se drena la energía del primer nodo sensor;
HND - troquel de medio nodo. El número de transmisiones se redondea hacia arriba al que se drena la mitad de la energía de los nodos sensores;
LND - matriz del último nodo. El número de transmisiones se redondea hacia arriba al que toda la red de sensores está muerta.

A partir de los resultados, podemos ver que el algoritmo cuántico híbrido tiene más eficiencia que el algoritmo advanced_leach.

En la Figura 13 y la Figura 14, respectivamente, se muestran otros resultados de la complejidad temporal del método propuesto y del gráfico de cumplimiento.

Figure 13
Figura 13: Complejidad temporal del algoritmo cuántico híbrido. Tiempo en unidad de segundo empleado en ejecutar un ciclo de HQA en varios tamaños de red. Haga clic aquí para ver una versión más grande de esta figura.

Figure 14
Figura 14: Resultados del algoritmo Hybrid Quantum que cumple con el algoritmo Advanced Leach. FND y HND o HQA y ALA comparten un patrón de forma de trama similar. Haga clic aquí para ver una versión más grande de esta figura.

Datos suplementarios 1: Conjunto de datos de los tres lotes de experimentos realizados en este estudio. Haga clic aquí para descargar este archivo.

Subscription Required. Please recommend JoVE to your librarian.

Discussion

El procesador cuántico comercial de última generación actual se puede utilizar en problemas computacionales de cualquier topología de red1. La aplicación del procesador cuántico no está limitada por el número de qbits físicos que cualquiera de los procesadores cuánticos ha podido implementar.

En el diseño de prolongación de la vida útil de la red de sensores, los resultados muestran un avance en el método para lograr una vida útil de la red aún más larga mediante el uso de un procesador cuántico. Los resultados implican que la ventaja cuántica está lista para ser explotada comercialmente tanto en el sector público como en el privado.

Por sus implicaciones de gestión, Quantum Advantage puede ser el próximo hito para allanar un camino prometedor para la prosperidad sostenible de alta tecnología en un futuro próximo. La alta tecnología actual, en términos de estrategia de aprendizaje y/o inteligencia artificial (IA), requiere en cualquier método el impulso de poder para procesar/mantener los datos. Desde una perspectiva de alto nivel de Green Globe, no se destaca como un buen candidato16. El aprendizaje automático y la inteligencia artificial, aunque hacen que la computación sea más eficiente desde el punto de vista económico, no proporciona una solución analítica de causa raíz, ya que la computación eficiente se compensa con instalaciones computacionales de alta potencia. Por lo tanto, están fundamentalmente limitados por la computadora de alto rendimiento (HPC). La computación cuántica, que revoluciona el paradigma de la computación, ha demostrado ser eficaz para calcular más rápido que las computadoras heredadas en múltiples aplicaciones de prueba práctica17,18. El ML asistido por cuántica, en lo que respecta al autor, es PML (aprendizaje automático probabilístico). El algoritmo ML (lenguaje de programación de alto y bajo nivel) se ejecuta en un dispositivo informático que puede ser un ordenador clásico o un ordenador cuántico. Dado el mismo algoritmo de ML de las líneas de comandos ejecutables n, supongamos que f_cc(n) indica el consumo en computación para computadoras clásicas y f_qc(n) indica el consumo en computación para computadoras cuánticas. f_cc(n) es una suma ponderada del consumo computacional de alpha_i ejecutables de computadora clásica para las n líneas de comandos. f_qc(n) es una suma igualmente ponderada del consumo computacional de alpha_j ejecutables de computadoras cuánticas para las mismas n líneas de comandos. Los pesos permanecen sin cambios, ya que las líneas de comandos de ML de nivel superior son igualmente las mismas. En pocas palabras, este trabajo y el trabajo anterior1 han demostrado que alpha_j siempre es menor que alpha_i por lo que f_qc(n) es siempre menor que f_cc(n).

Con respecto a las implicaciones académicas, los procesadores/instalaciones informáticas previamente establecidos se utilizan convencionalmente para ayudar a los investigadores a pensar/generar/desarrollar sus ideas y planes. La computación cuántica indica que el enfoque metodológico de los investigadores espera una evolución épica. Podría ser disruptivo, pero optimista. A partir de ahora, los investigadores que no estén acostumbrados al diseño/análisis teórico de algoritmos deben trabajar mano a mano para idear/generar algoritmos cuánticos que resuelvan su tema de investigación. La mayoría de los algoritmos cuánticos para la investigación práctica no están disponibles. En una frase, los dispositivos informáticos de los investigadores cambiaron. La configuración del entorno virtual y la API de QPU dependen completamente de una conexión a Internet satisfactoria.

Las limitaciones del estudio incluyen: (i) No se ha considerado la capacidad de enlace1. Se ignora la tasa de pérdida de paquetes. Los trabajos futuros considerarán el protocolo de red de sensores subyacente para formular adecuadamente el problema considerando tanto el consumo de energía como el control de pérdidas (ya sea con un esquema de retransmisión o no). ii) Se supone que la topología de la red se conoce de antemano. Las posiciones de los nodos son fijas. (iii) El tiempo requerido para ejecutar el algoritmo cuántico híbrido por ronda es más largo que el algoritmo de lixiviación avanzada, pero con mayor precisión. (iv) El algoritmo no pudo funcionar sin conexión.

Subscription Required. Please recommend JoVE to your librarian.

Disclosures

Ninguno

Acknowledgments

El trabajo cuenta con el apoyo del Consejo de Investigación de Ingeniería y Ciencias Físicas del Reino Unido (EPSRC) número de subvención EP/W032643/1.

Materials

Name Company Catalog Number Comments
Dell Laptop Dell N/A
Ubuntu 18.04.6 LTS Canonical Ltd 18.04.6 LTS
Python3.8 Python Software Foundation 3.8.0
Dwave QPU Dwave https://docs.ocean.dwavesys.com/en/stable/overview/install.html

DOWNLOAD MATERIALS LIST

References

  1. Chen, J., Date, P., Chancellor, N., Atiquazzaman, M., Cormac, S. Controller-based energy-aware wireless sensor network routing using quantum algorithms. IEEE Transactions on Quantum Engineering. 3, 1-12 (2022).
  2. Lin, H., Uster, H. Exact and heuristic algorithms for data-gathering cluster-based wireless sensor network design problem. IEEE/ACM Transactions on Networking. 22 (3), 903-916 (2014).
  3. Zhou, Y., Wang, N., Xiang, W. Clustering hierarchy protocol in wireless sensor networks using an improved PSO algorithm. IEEE Access. 5, 2241-2253 (2017).
  4. How long is the lifetime of a wireless sensor network. Seah, W. K. G., Mak, N. H. 2009 International Conference on Advanced Information Networking and Applications, Bradford, UK, , 763-770 (2009).
  5. Salahud din, M., Rehman, M. A. U., Ullah, R., Park, C., Kim, B. S. Towards network lifetime enhancement of resource constrained IoT devices in heterogeneous wireless sensor networks Sensors. 20, 4156 (2020).
  6. Wu, W., Xiong, N., Wu, C. Improved clustering algorithm based on energy consumption in wireless sensor networks. IET Network. 6 (3), 7-53 (2017).
  7. Kumar, N., Kumar, V., Ali, T., Ayaz, M. Prolong network lifetime in the wireless sensor networks: An improved approach. Arabian Journal for Science and Engineering. 46, 3631-3651 (2021).
  8. Faris, H., Aljarah, I., Al-Betar, M. A., Mirjalili, S. Grey wolf optimizer: A review of recent variants and applications. Neural Computing and Applications. 30, 413-435 (2018).
  9. Kaur, J., Arifkhan, M., Iftikhar, M., Imran, M., Haq, A. Machine learning techniques for 5G and beyond. IEEEAccess. 9, 23472-23488 (2021).
  10. Shor, P. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAMJournalonComputing. 26 (5), 1484-1509 (1997).
  11. Qabouche, H., Sahel, A., Badri, A. Hybrid energy efficient static routing protocol for homogeneous and heterogeneous large scale WSN. Wireless Networks. 27, 575-587 (2021).
  12. Farooq, M., et al. POWER: probabilistic weight-based energy-efficient cluster routing for large-scale wireless sensor networks. The Journal of Supercomputing. 78, 12765-12791 (2022).
  13. Maddams, W. F. The scope and limitations of curve fitting. Applied Spectroscopy. 34 (3), 245-267 (1980).
  14. Wang, X., et al. A dynamic opportunistic routing protocol for asynchronous duty-cycled WSNs. IEEE Transactions on Sustainable Computing. , (2023).
  15. Ismail, A. S., Wang, X., Hawbani, A., Alsamhi, S., Aziz, S. Routing protocols classification for underwater wireless sensor networks based on localization and mobility. Wireless Networks. 28, 797-826 (2022).
  16. Garcia-Martin, E., Rodrigues, C. F., Riley, G., Grahn, H. Estimation of energy consumption in machine learning. Journal of Parallel Distributed Computing. 134, 75-88 (2019).
  17. Egger, D. J., et al. Quantum computing for finance: State-of-the-art and future prospects. IEEE Transactions on Quantum Engineering. 1, 1-24 (2020).
  18. Rasool, R. U., Ahmad, H. F., Rafique, W., Qayyum, A., Qadir, J. Quantum computing for healthcare : A review. TechRxiv. , (2021).

Tags

Ingeniería Número 199 Enrutamiento de la Red de Sensores Unidad de Procesador Cuántico Híbrido Computadora Clásica Algoritmo Heurístico Manuscrito Contexto Técnico Importancia Pasos Experimentales Secuencia Operativa Ilustraciones Validado Resultados Positivos Topologías de Red Problemas de Maximización de la Vida Útil de la Red de Sensores Procesador Cuántico De Última Generación Problemas De Ingeniería Ventaja Cuántica Prueba De Concepto Prueba De Viabilidad
Enrutamiento de red de sensores de eficiencia energética a gran escala mediante una unidad de procesador cuántico
Play Video
PDF DOI DOWNLOAD MATERIALS LIST

Cite this Article

Chen, J. Large Scale EnergyMore

Chen, J. Large Scale Energy Efficient Sensor Network Routing Using a Quantum Processor Unit. J. Vis. Exp. (199), e64930, doi:10.3791/64930 (2023).

Less
Copy Citation Download Citation Reprints and Permissions
View Video

Get cutting-edge science videos from JoVE sent straight to your inbox every month.

Waiting X
Simple Hit Counter