Después de bastante tiempo de publicar este hilo creo que tengo algo para adicionar. La conexión es que el software mathematica de Wolfram Software existe en una versión gratuita para el Raspi. No miré si aún es gratuito, Matemática ha avanzado de la versión 10 a la 12 y justamente en el campo de la inteligencia artificial. Lo que estoy siempre observando en el mercado son avances que hagan mas sencillos el uso de IA en sistemas embebidos y allí en especial estoy interesado en el uso de placas como la Raspi, pues esta al momento parece ser la mas adecuada y con las herramientas mas maduras. Pero pienso que las placas con los controladores i.MX 8 de NXP son una opción interesante por su mucho mas avanzada potencia de computación.
En cursos gratuitos en el entorno de Mathematica he visto un desarrollo paralelo al de AWS de Amazon. Mathematica como concepto es lo que se llama un "solver"! Si se quiere resolver una función el uso de Mathematica la puede resolver. Mathematica basa en el lenguaje de programación propietario de "Wolfram Software" y como parte de este lenguaje al momento unas 6000 funciones implementan multitudes de operaciones y así también aquellas utilizadas en la IA.
Aquí el enlace al sitio de Wolfram Software sobre IAy.
Aquí el enlace al sitio donde se presenta Mathematica 12 en el Raspi 4 con 4 GB.
Mi intención es investigar y en el caso de un resultado positivo usar la IA para manejar el control de escota que construyo para mi modelo de un velero, el Carina, usando placas electrónicas, sensores angulares y motores de paso. Llevo ya varios años pero también ya ha pasado una década, donde me ingenio un sistema de umbrales para controlar como el motor de paso, que cumple la función de winche para el control de las velas. El reto está en encontrar e implementar una funcionalidad que por un lado permite variar la longitud de la escota por 8,3 metros, que por otro lado de el largo de escota requerido sin permitir un exceso de longitud que resultaría en que la escota se atascara en la cubierta. Dificultando la cosa está que el control de las velas desde el R/C por el usuario llega al modelo por la receptora R/C, donde resulta en una variación de la PWM que es digitalizada y usada como parámetro de control.
Al momento tengo planeado implementar esto con varios controladores LPC1769 en la placa LPCXpresso 1769 que contiene entre otras un codificador de cuadratura que recibe las 3 PWM que provienen del sensor angular magnético.
Los retos con los cuales estoy confrontado para definir una solución basada en IA para el control de las escotas:
1. Que tipo de bases de datos, no me refiero a una base de datos sino a la lista de datos que puedo crear basándome en los datos de un monitoreo de los datos que se pueden crear monitoreando el sistema de control de escotas.
2. Que tipo de técnica de la IA es la mas apropiada para este propósito. Las técnicas mas populares son aquellos llamadas en Inglés:
Supervised Training
Unsupervised Training
La diferencia fundamental está en que la primera variante requiere que para cada set de datos se le agrega si el datos es bueno o malo, se llama "label". Como quizá puedan imaginarse esto implica el crear estos labels de forma algorítmica para una base de sets lo mas extensa posible. La técnica se conoce por ser usada por ejemplo para reconocer si en una imagen aparece un gato o un perro.
La segunda técnica no requerería el crear y agregar los labels. está tecnica se conoce por ejemplo en el uso del mecanismo de "clustering". Allí la IA recibe un alto número de sets de datos, los analisa y crea conjuntos, esos clusters.
No mas considerando estas 2 técnicas estoy confrontado de como definir los sets de datos y de como estos pueden llevar al sistema de control de escotas asegurar la longitud apropiada de la escota. No tengo solución aún, pero llevo investigando el tema. El reto está en ver los sets de datos posibles desde un punto de vista nuevo para mi que permita definir tanto la técnica de IA a usar como el de la composición de los sets de datos.
Un curso de Wolfram Software sobre su lenguaje Wolfram y su uso en la IA, fundamentos de la IA, me ha confrontado con técnicas aún no estudiadas por mi pero que aparecen ser mas apropiadas. Criterio a evaluar es el tema que menciono en el párafo anterior.
Se que el tema es bastante seco y que me he hecho la vida facil en esta primera contribución al hilo en no agregar gráficos. Me decidí por poner esta publicación en este hilo y en este foro, pues está íntimamente relacionado a la nueva placa Raspi 4 4 GB y representa una forma de usar una placa como la Raspi que combina las nuevas posibilidades de esa placa y de la existencia del lenguaje Wolfram Software.