]> git.llucax.com Git - z.facultad/75.68/celdas.git/blobdiff - trunk/src/sistemaautonomo.cpp
Bugfix, cambia modo de rotación para que rote en el lugar y varios cambios de parámet...
[z.facultad/75.68/celdas.git] / trunk / src / sistemaautonomo.cpp
index bb04b5bbfc772478818001ba8db30f231b5c255b..2c85e518eb2bc21b82100a8f4a4f319a4ee03c30 100644 (file)
@@ -31,7 +31,7 @@ void CSistemaAutonomo::plan()
 {
        double p = 1.0;
        m_plan.clear();
-       if (teorias.count() > TEORIAS_MAX) purgar_teorias();
+       if (teorias.count() > max_teorias) purgar_teorias();
 #ifdef DEBUG
        std::cout << "SA: Planificando...\n";
        std::cout << "SA: \tentorno:\n" << p_entorno->datos << "\n";
@@ -69,6 +69,9 @@ CTeoria* CSistemaAutonomo::get_next_theory()
        }
        else
        {
+#ifdef DEBUG
+               std::cout << "SA: ejecuta teoria: " << **(curr_theory) << "\n";
+#endif // DEBUG
                return *(curr_theory++);
        }
 }
@@ -82,6 +85,10 @@ bool CSistemaAutonomo::validate_theory(CTeoria* t)
        // Aumento k (cantidad de veces que se probó la teoría
        ++t->k;
 
+#ifdef DEBUG
+       std::cout << "SA: Entorno de verificacion:\n" << p_entorno->datos;
+#endif // DEBUG
+
        // Verifico
        result = verificar_condicion(t->datos_finales) ;
 
@@ -107,6 +114,9 @@ bool CSistemaAutonomo::validate_theory(CTeoria* t)
                // Aplico heuristicas de correccion
                this->heuristca_retraccion(*t) ;
        }
+#ifdef DEBUG
+       else std::cout << "SA: Verifica!\n";
+#endif // DEBUG
 
        return result;
 }
@@ -272,7 +282,7 @@ void CSistemaAutonomo::planificar (CIndiceMagico<t_dato>&   datos_iniciales,
 
        if ( incluye_a(datos_iniciales, datos_finales) ) return ;
 
-       if ( numero_de_llamada > PASOS_MAXIMOS_DE_PLAN ) return ;
+       if (numero_de_llamada > max_pasos) return ;
 
        for (i = 0; i < teorias.count(); i++)
                if ( incluye_a(teorias[i]->datos_iniciales, datos_iniciales) )
@@ -315,6 +325,6 @@ void CSistemaAutonomo::purgar_teorias()
 #ifdef DEBUG
        std::cout << "SA: Se purgo la teoria " << *teorias[pos] << "\n";
 #endif // DEBUG
-       if (size - 1 > TEORIAS_MAX) purgar_teorias();
+       if (size - 1 > max_teorias) purgar_teorias();
 }