Example #1
0
    // El sondeo de la red produce una actualizacion de la misma
    private void SondeoDeLaRed()
    {
        edad = gameController.ObtenerYear() - nacimiento;

        CheckeaAntenas();

        comidaSueloPosActual = (mapa == null) ? -100 : CheckeaComidaSuelo();     // al entrar al sondeo se actualiza la cantidad de comida que ve en el suelo
        float[] entrada = new float[cantEntradas + cantMemoria];
        //Debug.Log(comidaSueloPosActual);
        entrada[0] = antena1Toca;     // 0 si no toca nada, 1 si es una celula y 0.5 si es un muro
        entrada[1] = antena2Toca;


        //entrada[2] = (atacando) ? 1 : 0;
        entrada[2] = (comiendo) ? 1 : 0;
        entrada[3] = (reproduciendose) ? 1 : 0;

        //entrada[5] = (siendoAtacado) ? 1 : 0; // si está o no siendo atacado

        entrada[4] = comida / 100;     // la cantidad de comida de la celula
        entrada[5] = comidaSueloPosActual / 100;

        entrada[6] = transform.rotation.z;

        entrada[7] = gameController.Temperatura();


        for (int i = 0; i < cantMemoria; i++)
        {
            entrada[i + cantEntradas] = memoria[i];
        }
        entradaRedd = entrada;
        salidaRed   = redNeuronal.Activar(entrada);
        Acciones();
    }