Inteligencia Artificial y el Internet de las Cosas (IoT)

El Internet de las Cosas (IoT) está penetrando lentamente todos los aspectos de nuestras vidas. Si aún no tienes un dispositivo IoT, seguramente has oído hablar de ellos. Desde los termostatos inteligentes hasta las cafeteras inteligentes, los dispositivos están adquiriendo, lenta pero seguro, una adopción generalizada. Además, los asistentes virtuales, como Siri, Alexa y Cortana, solo están facilitando la adopción de esta tecnología.

Pero, estos dispositivos están lejos de ser perfectos. En la actualidad, se necesitan muchas entradas manuales para lograr una funcionalidad óptima, no hay mucha inteligencia incorporada. Puedes poner la alarma, decirle a la cafetera cuándo debe comenzar a preparar la bebida y establecer manualmente los horarios del termostato, todo de manera independiente y precisa. Estas máquinas rara vez se comunican entre sí, por lo que quedas tú como el maestro programador de cada dispositivo. Los dispositivos hablan contigo, pero no entre ellos.

Esto representa una gran oportunidad, crear dispositivos que aprendan tus preferencias, usando Inteligencia Artificial y la intercomunicación para aumentar el mundo que te rodea de la manera óptima.

Las rutinas domésticas no son lo único que se puede mejorar. De hecho, la optimización para una sola persona es solo la punta del iceberg. Imagina un restaurante con iluminación flexible y selección de música, optimizado para adaptarse a las preferencias de los clientes, transporte público que hace lo mismo y redes de ciudades que optimizan el flujo de tráfico con los autos que se conducen por sí mismos. Esa lista puedes seguir y seguir.

Estamos construyendo un mundo más inteligente y seguro.

Entonces, ¿cuándo es valioso implementar Inteligencia Artificial?

Los modelos de datos que se ejecutan en la analítica de datos convencional son a menudo estáticos y de uso restringido en la tendencia a cambios rápidos e información no estructurada. Con respecto al Internet de las Cosas, con frecuencia es importante distinguir las conexiones entre muchas fuentes de información de los sensores y los componentes externos que están creando rápidamente un gran número de puntos de datos.

Mientras que la analítica de datos convencional requeriría un modelo basado en la información del pasado y la evaluación maestra para establecer una conexión entre los factores, Inteligencia Artificial comienza con los factores de resultados y después busca naturalmente los factores indicadores y sus asociaciones.

En general, Inteligencia Artificial es significativo cuando se comprende lo que se necesita, sin embargo, no se tiene ni idea de los factores críticos de información para decidirse por esa opción. Así que le das al algoritmo de Inteligencia Artificial las metas y después de eso aprende de la información qué factores son esenciales para lograr ese objetivo.

Un ejemplo impresionante es la utilización de Inteligencia Artificial en Google y su centro de datos hace uno años atrás. Los centros de datos necesitan mantenerse frescos, por lo que requieres inmensas medidas de vitalidad para que sus estructuras de refrigeración funcionen legítimamente. Esto habla de un costo notable, por lo que el objetivo era aumentar la eficacia con Inteligencia Artificial. Al implementar el sistema pudieron realizar un control adecuado del sistema de refrigeración habiendo cumplido con el objetivo propuesto.

Arquitectura de Inteligencia Artificial para dispositivos del Internet de las Cosas

La ejecución de modelos de Inteligencia Artificial sobre datos en línea de alta frecuencia no tiene por qué costar una fortuna. Pensando en nuestros requisitos en tiempo real podemos diseñar arquitecturas eficientes que se escalan más fácilmente.

El número de segundos en un día son 86.400 y ese número explica por qué el Internet de la Cosas se ha convertido en algo tan importante en esta era de los grandes datos. Un solo sensor a menudo registra la misma cantidad de mensajes al día. Dependiendo del tamaño de la información útil, esto podría sumar unos 5 MB de datos. Aunque eso puede no sonar mucho, es el tamaño de un archivo mp3 ligeramente grande. Pero tienes que tomar en cuenta que una solución del Internet de las Cosas rara vez es un solo sensor. Los dispositivos embebidos suelen tener varios sensores conectados y, a su vez, están conectados entre sí enrutando el tráfico desde varios dispositivos.

Los dispositivos de Internet de las Cosas producen cantidades masivas de datos y Inteligencia Artificial Learning requiere un procesamiento intensivo. Entonces si unimos ambas tecnologías, la frase “sistema ligero” no es normalmente la primera que se te viene a la mente, aunque esto se puede arreglar realizando una buena configuración de todos sus elementos.

Los dispositivos de Internet de las Cosas con capacidad de IP envían telemetría a un servidor central de mensajes en la nube pública, utilizando un protocolo de comunicación como MQTT. El bróker puede ser un servidor nativo de la nube o un framework de código abierto. Estas tecnologías pueden manejar mensajes de millones de dispositivos a un costo razonable, lo que significa que podemos recopilar de forma fiable todos los datos de los sensores. Hasta este momento ya tenemos los datos, ahora deseamos actuar sobre la base de los datos y generar algunas percepciones sobre los mismos.

Una solución a esto puede ser utilizar un procesador online que suscribe los mensajes del bróker y los procesa reactivamente sobre la marcha, transmitiéndolos inmediatamente a una vista en vivo de los datos. Esto quiere decir, que en tan solo unos pocos cientos milisegundos del momento en que se grabó el mensaje original, los resultados están disponibles en una vista en vivo que se puede mostrar en un tablero de informes.

Por su parte, un servicio web de Inteligencia Artificial se puede conectar al procesador online y realizar análisis predictivos que se convierten en parte de la salida en vivo. Esta sería la forma normal de construir modelos de Inteligencia Artificial en plataformas de procesamiento en línea.

La primera pregunta que debemos hacernos al diseñar un sistema en tiempo real es cómo encaja esto con las limitaciones y requisitos específicos del proyecto. Conectar el modelo de Inteligencia Artificial directamente al flujo significa que una petición va al punto final de la predicción para cada mensaje. Lo que probablemente significa utilizar un gran número de servidores por lo tanto un alojamiento de datos costoso. Cuando la velocidad y el volumen aumentan, también lo hacen el costo, la complejidad y la latencia.

Hablemos de tiempo real

Cuando diseñamos software, a veces hablamos de casi en tiempo real. El “cerca” se refiere a que nunca podremos alcanzar la latencia cero en ningún sistema. Es inevitable que transcurra algún tiempo de procesamiento que no sea cero antes de que el sistema pueda responder. Cuando es muy rápido, hacemos trampa y lo llamamos en tiempo real.

Antes de que consideremos si podemos lograr el tiempo real adecuado o solo casi en tiempo real, debemos considerar los requisitos de tiempo real, y esa es otra distinción por completo. Los requisitos en tiempo real se clasifican en tres categorías:

  • Tiempo real exacto: las demoras causarán una falla total del sistema. Tal vez podrían hacer estallar una central eléctrica, una sonda espacial que o alcanzara su objetivo. Una lista de accidentes horribles.
  • Tiempo real firme: los retrasos frecuentes están perfectamente bien. La salida retardada es inútil, pero el sistema sigue funcionando. Piense en una película en Netflix, aunque el flujo de película que ocasionalmente se detiene puede ser molesto, probablemente no perderás el sueño por eso.
  • Tiempo real suave: los retrasos frecuentes están perfectamente bien. Una respuesta tardía puede ser menos valiosa, pero aún así puede ser útil.

Son muy poco los sistemas que tienen requisitos en tiempo real exacto, inclusive también los requisitos de tiempo real firme son raros. La mayoría de los sistemas tienen limitaciones de tiempo bastante indulgentes.

Con estos requisitos de tiempo real, podemos elegir reducir el muestreo de los datos. Después de todo, la frecuencia de la señal del sensor es solo un periodo de tiempo arbitrario que utilizamos pata tomar muestras de nuestros dispositivos. No es necesario procesar cada mensaje entrante.

El procesamiento de secuencias también tiene una forma de hacerlo, y se llama ventana de tiempo.

Al observar las ventanas de tiempo de tamaño fijo, podemos agregar los datos de alguna manera o solo procesar el último mensaje del lote. En este último caso, solo estamos interesados en capturar el último estado de nuestros sensores. Cuando se piensa en ello, eso es lo que los dispositivos de IoT ya están haciendo de todos modos, solo que a un ritmo más rápido. Esto permite una arquitectura ligeramente diferente a la que planteamos al principio.

En esta configuración, una tarea programada, se despierta a intervalos de tiempo determinados, mira la última salida, genera predicciones y se vuelve a dormir. Las viejas predicciones se mantienen vivas mientras esperamos que la tarea se active de nuevo. Recuerda, dados nuestros requerimientos de tiempo real, las predicciones serán valiosas por un tiempo limitado.

Esto puede no funcionar en todos los escenarios, pero cuando sea aplicable, puede reducir enormemente el costo del sistema. Otro aspecto agradable de esto es que desacoplamos el análisis predictivo de formas más simples de procesamiento que nos gustaría hacer para cada mensaje.

Como complemento, podemos aplicar la misma filosofía a la formación de modelos. La reducción del muestreo es una estrategia a menudo subestimada para los modelos de formación de grandes conjuntos de datos.

Aplicaciones de Inteligencia Artificial en el Internet de las Cosas

La implementación de Inteligencia Artificial es muy rentable para algunas aplicaciones del Internet de las Cosas, mencionemos algunas de ellas.

Ahorro de costos en aplicaciones industriales

Las capacidades de predicción son de gran ayuda en un entorno mecánico. Al extraer información de diferentes sensores dentro o fuera de las máquinas, los cálculos de Inteligencia Artificial pueden darse cuenta de lo que es común para la máquina y después identificar cuándo comienza a ocurrir algo inusual. Prever cuando una máquina necesita mantenimiento es importante, convirtiéndose en una enorme cantidad de dólares en costos de repuesto. Las empresas ahora están utilizando Inteligencia Artificial para predecir con una precisión de más del 90% cuando necesitarán mantenimiento las máquinas, lo que significa grandes recortes de costos.

Formando experiencias a los individuos

En realidad, todos estamos familiarizados con las aplicaciones de Inteligencia Artificial en nuestra vida cotidiana. Tanto Amazon como Netflix utilizan estos algoritmos para descubrir cómo asumir nuestras inclinaciones y dar una experiencia superior al cliente. Esto podría significar proponer artículos que le gusten o dar propuestas pertinentes a películas y programas de televisión.

Así también, en el Internet de las Cosas, el Inteligencia Artificial puede ser en gran medida significativo para formar nuestra condición a nuestras propias inclinaciones. El termostato Nest es un caso impresionante, utiliza Inteligencia Artificial para calcular cómo tomar sus inclinaciones para calentar y enfriar, asegurando que la casa tenga la temperatura correcta cuando regreses a casa del trabajo o cuando te levantes por la mañana.

Estos casos son solo un par de ejemplos de lo que se puede hacer combinando Inteligencia Artificial y el Internet de las cosas. Aunque tanto Inteligencia Artificial como el Internet de las cosas están en la cúspide en los últimos años, la integración de ambas tecnologías ha ido avanzando poco a poco.

Con esto finalizamos la explicación. Ya tienes una base de coomo unir las tecnologías de Inteligencia Artificial y el Internet de las Cosas, por lo tanto te dejo la siguiente pregunta, ¿Cuáles de las siguientes afirmaciones crees tú que sea cierta?

Opción 1: Uno de los propósitos de unir Inteligencia Artificial y el Internet de las cosas es crear dispositivos que aprendan nuestras preferencias.

Respuesta Correcta.

Opción 2: Cuando hablamos de tiempo real exacto nos referimos al tiempo que transcurre entre el procesamiento y que el sistema pueda responder.

Respuesta Incorrecta. El tiempo real exacto no puede haber ningún retardo.

Opción 3: Una de las limitaciones entre el Inteligencia Artificial y el Internet de las Cosas es la cantidad de datos que se maneja por lo que se debe limitar el tiempo por lo que se configura intervalos de tiempo para recolectar la data.

Respuesta Correcta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *