Paso 6: Aprendizaje
El algoritmo de aprendizaje consiste en calcular correctamente los pesos w para obtener el en out(t), se considera correcto.
En este proyecto en particular tenemos dos entradas provienen de dos sensores de luz, fotoresistor de fotoresistor 1 y 2, están conectados como se ve en la foto. Digamos entonces son x1 y x2, respectivamente. A esto hay agregarle una tercera x3 entrada dejamos siempre sea 1 (se conoce como sesgo), para evitar sumas 0.
Los valores de entrada de los fotoresistores van de 0 a 1023. Entonces, w0 (t) = x1 * w1 + x2 * w2 + x3 * w3 La función de activación out(t) hará el resultado sea -1 o + 1.
Noten se utiliza t para indicar una iteración, pues estos computadoras-máquinas se realizan una vez por cada lazo del procesador.
Ahora bien, digamos que + 1 indica una un servo motor moverse hacia adelante y -1 moverse hacia a atrás. Para corregir el movimiento calculamos el error de la siguiente manera, error(t) = deseado(t) - out(t).
Por último, con este error corregimos los pesos w, nuevo w = w + error * x * c donde ces una constante entre 0 y 1, de aprendizaje, se ajusta para elaboró que tan rápido debe aprender (si es muy rápido a veces nunca se estabiliza). Para cada motor utilizaremos un perceptrón toma como entrada los dos sensores de luz. Los detalles del código están en el siguiente paso.