Inteligencia Artificial - Cual método podría ser adecuado

 
Vista:
Imágen de perfil de Hellmut1956
Val: 8
Ha aumentado 1 puesto en Inteligencia Artificial (en relación al último mes)
Gráfica de Inteligencia Artificial

Cual método podría ser adecuado

Publicado por Hellmut1956 (4 intervenciones) el 16/12/2018 14:31:36
Hola amigos.
Estoy metiéndome en la materia de inteligencia artificial debil. Para esta hay muchos métodos como ustedes saben. Yo estoy tratando de escoger cual método sería el mas adecuado para la funcionalidad que requiero si esta reemplazaría el código normal, no IA, el control de escotas de mi modelo de un velero, Aquí la foto de como será este velero con el largo del casco de 165 cm.

24304205659_62c68e7e92_z

Aquí el diagrama en forma de bloques del systema de control de escotas:

21562814802_d612df0627_z

Una placa de control, la llamo "central" me da el valor actual y verdadero de hasta que ángulo el palo de la vela puede abrirse.

14530901968_c25d3a0992_z

Este gráfico muestra como adquiero el valor válido sobre la posición actual del palo de la vela. El palo hace girar el eje en cuyo extremo inferior está un magneto que el sensor monitorea.

15183780124_c951ca4c00_z

Este sensor de la empresa AMS me da la posición relativa con 12 bits de precisión y de la misma posición absoluta el valor con una resolución de 14 bits.

Como winche que da escota o la recoge uso un motor de paso que hace girar el tambor de la escota. Son 21 vueltas completas que cubren el cambio posible de 8.3 metros del largo de la escota. También uso el mismo tipo de sensor angular magnético para monitorear la posición actual del motor de paso. este dato es monitoreado y cada vez que la vela pasa de un lado al otro del casco miro si el valor de la periferia "quadrature encoder" del controlador LPC1769 es igual al valor que el sensor angular del palo de la vela. Asi logro que tambien este valor sea válido.

9657008962_1a66a7bb32_z

Hasta aquí describo el entorno.

El palo de la vela puede abrirse hasta +/-90° por lo cual el número de posibles valores del sensor es 1/4 de los 14 bits, repectivamente de los 12 bits.

Ahora la funcionalidad que requiero. dependiendo del valor del ángulo máximo permitido, el largo de la escota nunca debe permitir que el palo tome un valor angular mayor, a este:

14570569260_b2effac7f8_z

El gráfico muestra como digitalizando la PWM del receptor R/C que indica en que posición se encuentra en ese momento el stick de control de la emisora R/C y que por lo tanto indica los comandos del usuario. Esto implica un cierto valor angular del sensor magnético, tambien un valor correcto y por lo tanto válido.

14570769540_c49dec9402_z

El módulo de inteligencia artificial debería reemplazar la funcionalidad que implico en este gráfico:

14754746121_2e7d83e356_z

Tengo que agregar que para que esto funcione tengo que lograr que el winche, mi motor de paso, solo de largo de escota estrictamente necesario para corresponder a la posición actual angular del palo de la vela. esto es necesario para evitar que la escota se atasque debido a algún elemento de la cubierta. Pero el sistema tiene que:

1. Mantener el largo de la escota correspondiente al ángulo actual del palo de la vela.

2. Si el ángulo del palo de la vela es menor al máximo permitido por el usuario, permitir alargar el largo de la escota para no impedir que la vela se continue abriendo.

3. Si el ángulo del palo de la vela es igual al ángulo máximo permitido por el usuario no dar mas largo de escota, La vela tiene que ser mantenida en su posición.

4. Si el palo de la vela oscila por cambios de viento hacia un valor menor al ángulo permitido iur adaptando el largo de la escota para evitar escota suelta.

5. Si por x razón el ángulo de la vela es mayor al valor máximo permitido acortar el largo de la escota hasta que el ángulo del palo de la vela sea igual al máximo permitido.

Como en este sistema los sensores magnéticos crean datos válidos en gran cantidad es relativamente sencillo crear entornos experimentales para crear gran cantidad de sets de datos requeridos para el aprendisage del módulo de inteligencia artificial.

En una primera evalución digo que me es posible crear gran cantidad de ejemplos para la categoría de ML supervisada. Lo que no logro especificar es definir en términos requeridos para escoger un método adecuado para la IA debil. Creo que la funcionalidad es corregir la posición angular del motor de paso hasta lograr cumplir los criterios definidos en este gráfico:

14570769540_c49dec9402_z

Digamos que en el momento t= 0 el sistema se encuentre calibrado al punto que denomino "X" en el gráfico. Es una posición monitoreada por el sensor angular del palo de la vela y es la posición correcta del motor de paso, mas de 1 millón de posibles posiciones en su repertorio de 21 vueltas completas.

En lo que muestra este gráfico es que aprovecho que el valor angular del palo de la vela esta presente como valor relativo, 12 bits y valor absoluto 14 bits. Eso me da 2 posiciones absolutas hacia "+" y 2 posiciones hacia "-"". El motor de paso esta en la posición correspondiente a la posición que denomino aquí como "X".

Con el módulo de IA debil que pienso desarrollar este debería ir adaptando la posición del motor de paso, no por la metodología de usar umbrales, sinó que interpretando el concierto de valores válidos disponibles y cumpliendo los requerimientos que especifico aquí bajo los puntos "1" a "5".

Creo que esta funcion de la IA debil como reeplazo de una solución algorítmica es una posibilidad! Mi idea es que al entrenar el módulo de IA debil esta será capaz de reconocer estructuras resultantes en la base de datos.

Si el módulo de IA debil no fuera supervisada, significa que no necesaria diferenciar entre datos válidos. Tal IA, así especulo, vería en su analisys de los sets de datos adecuadamente usados con los valores válidos suministrados al set de datos por los sensores angulares.

Pero es esto una aplicación donde los métodos del ML son los mas adecuados o lo son aquellos del "Deep Learning", usando redes neuronales. Tengo pensado usar una placa RaspBerry PI 3B+ para ejecutar el módulo de IA y para el entrenamiento. Esta placa tiene GPU´s y para ella existen implementaciones de TensorFlow.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Hellmut1956
Val: 8
Ha aumentado 1 puesto en Inteligencia Artificial (en relación al último mes)
Gráfica de Inteligencia Artificial

Cual método podría ser adecuado

Publicado por Hellmut1956 (4 intervenciones) el 18/12/2018 14:03:59
Que pena por no haber encontrado aún algún experto en IA que mepueda ayudar. Yo pienso o utilizar como hardware para implementar la IA o el nuevo i.mx8.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

IA necesariamente con sensores y base de datos

Publicado por Jose Velasco (1 intervención) el 14/04/2019 19:00:46
que tal Hellmut!

me parece tu proyecto muy interesante. para incorporar IA debes generar información de tus dispositivos, en otras palabras colocar sensores y pasar esa información a una base de datos. La IA se genera de 3 procesos básicamente, primero se analiza una situación u objeto, segundo se pasa a analizar bases de datos con las mejores soluciones para esa situación u objeto, y finalmente toma una decisión y actúa (si solo sugiere algo, no es IA, debe "hacer algo"). Pero la base de todo este proceso está en la base de datos y los algoritmos para identificar la situación, la programación para encontrar la mejor solución son mas simples y pueden ir desde mejores comentarios o directamente usando matemáticas y estadística

el resultado es que mientras mas información tienes, mejor es la IA y los resultados (va mejorando con el tiempo automáticamente)

saludos cordiales, y me avisas si tienes alguna duda con lo que intenté explicar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Hellmut1956
Val: 8
Ha aumentado 1 puesto en Inteligencia Artificial (en relación al último mes)
Gráfica de Inteligencia Artificial

IA necesariamente con sensores y base de datos

Publicado por Hellmut1956 (4 intervenciones) el 14/04/2019 21:50:17
Eso es lo bueno de mi sistema. E control siempre ha sido a base de los datos generados por los sensores. Tengo un sensor angular magnético para monitorear la posición del palo de la vela, un segundo sensor angular magnético monitorea la posición del motor de paso. Ambos valores de los sensores son usadas para determinar que largo de la escota se requiere para la posición angular actual del palo de la vela. uso una tabla que pone las posiciones angulares del palo de la vela, es allí donde entra el viento, el entorno, entra en la ecuación.
Lo que es mas demandante algorítmicamente está en el control detallado del largo de la escota.
dependiendo de la posición angular del palo de la vela máxima, es allí donde el usuario impacta con la posición de los sticks de control en su emisora. Si el palo de la vela tiene el valor angular máximo permitido en cierto momento, el motor de paso no debe alargar la escota mas y así manteniendo la vela donde el usuario desea.
Pero si el palo de la vela tiene un valor angular menor al permitido, entonces el largo de la escota debe cumplir con los siguiente requerimientos:
1. Permitir que la vela siga aumentando el ángulo dando suficiente escota.
2. Mantener un largo mínimo de la escota para evitar que esta se bloquee en algún obstáculo en la cubierta.

Trate de explicarlo con los gráficos presentados mas arriba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar