public GenomaNEAT cambiarCromosoma(CompanionEvolutivo companion) { companionEvolutivo = companion; numeroIndividuo++; if (numeroIndividuo < tamanioPoblacion) { companionEvolutivo.setRed(poblacion[numeroIndividuo]); companionEvolutivo.individuo = numeroIndividuo; } return(null); }
void Start() { companionEvolutivo = GameObject.FindGameObjectWithTag("Companion").GetComponent <CompanionEvolutivo>(); /*if (GameObject.FindGameObjectWithTag("AmbienteEvolutivo").GetComponent<Gimnasio>() != null) * { * gym = GameObject.FindGameObjectWithTag("AmbienteEvolutivo").GetComponent<Gimnasio>(); * } * else { * gym = null; * }*/ gym = null; }
// Use this for initialization void Start() { Agente = GetComponent <UnityEngine.AI.NavMeshAgent>(); if (EsEntrenador) { player = BusquedaHijos.buscarHijoPorTag(transform.parent.parent.gameObject, "Player").GetComponent <PlayerHealth>(); } else { player = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerHealth>(); } colisionador = gameObject.GetComponent <CapsuleCollider>(); companionEvolutivo = GameObject.FindGameObjectWithTag("Companion").GetComponent <CompanionEvolutivo>(); //Debug.Log("" + disparador.GetInstanceID()); //Invoke("movimientoAleatorioV2", 1.0f); //Invoke("disparoNoApuntadoAleatorio", 2.0f); }
void Start() { ambientes = GameObject.FindGameObjectWithTag("Ambiente"); for (int i = 0; i < ambientes.transform.childCount; i++) { companionEvolutivo = BusquedaHijos.buscarHijoPorTag(ambientes.transform.GetChild(i).gameObject, "Companion").GetComponent <CompanionEvolutivo>(); //Debug.Log("numero inviduo: "+ numeroIndividuo); GenomaNEAT aux = poblacion[numeroIndividuo]; companionEvolutivo.individuo = numeroIndividuo; companionEvolutivo.setRed(aux); tiempoDePrueba = tiempoPruebaOriginal; numeroIndividuo++; AmbienteEvolutivo ambienteLocal = ambientes.transform.GetChild(i).GetComponent <AmbienteEvolutivo>(); ambienteLocal.tiempoPruebaOriginal = tiempoPruebaOriginal; ambienteLocal.tiempoDePrueba = tiempoPruebaOriginal; ambienteLocal.listo = true; } companionEvolutivo = GameObject.FindGameObjectWithTag("Companion").GetComponent <CompanionEvolutivo>(); }
void Start() { companion = BusquedaHijos.buscarHijoPorTag(gameObject, "Companion").GetComponent <CompanionEvolutivo>(); saludJugador = BusquedaHijos.buscarHijoPorTag(gameObject, "Player").GetComponent <PlayerHealth>(); evolutivo = GameObject.FindGameObjectWithTag("Evolutivo").GetComponent <AlgoritmoEvolutivo>(); }
void Update() { UIManager.generacion = numeroGeneracion; UIManager.individuo = numeroIndividuo + 1; UIManager.especie = numeroEspecie; if (companionEvolutivo == null && numeroIndividuo < tamanioPoblacion && ambientes == null)///si el de cada ambiente /*companionEvolutivo = GameObject.FindGameObjectWithTag("Companion").GetComponent<CompanionEvolutivo>(); * companionEvolutivo.setRed(poblacion[numeroIndividuo]); * companionEvolutivo.setNumeroIndividuo(numeroIndividuo); * // companionEvolutivo.GenerarRed(maximoNeuronas);*/ { ambientes = GameObject.FindGameObjectWithTag("Ambiente"); for (int i = 0; i < ambientes.transform.childCount; i++) { companionEvolutivo = BusquedaHijos.buscarHijoPorTag(ambientes.transform.GetChild(i).gameObject, "Companion").GetComponent <CompanionEvolutivo>(); // Debug.Log("numero inviduo: " + numeroIndividuo); GenomaNEAT aux = poblacion[numeroIndividuo]; companionEvolutivo.individuo = numeroIndividuo; companionEvolutivo.setRed(aux); tiempoDePrueba = tiempoPruebaOriginal; numeroIndividuo++; AmbienteEvolutivo ambienteLocal = ambientes.transform.GetChild(i).GetComponent <AmbienteEvolutivo>(); ambienteLocal.tiempoPruebaOriginal = tiempoPruebaOriginal; ambienteLocal.tiempoDePrueba = tiempoPruebaOriginal; ambienteLocal.listo = true; } companionEvolutivo = GameObject.FindGameObjectWithTag("Companion").GetComponent <CompanionEvolutivo>(); } if (numeroIndividuo >= tamanioPoblacion && ambientes.GetComponent <Gimnasio>().Termino()) { //Debug.Log("Siguiente paso"); calificar(); seleccion(); List <GenomaNEAT> nuevaPoblacion = new List <GenomaNEAT>(); foreach (List <GenomaNEAT> especie in especies) { nuevaPoblacion.Add(cruceEspecie(especie)); } while (nuevaPoblacion.Count < tamanioPoblacion) { int seleccion = Random.Range(0, especies.Count - 1); //Debug.Log("Especies: " + especies.Count + " Seleccion: " + seleccion); nuevaPoblacion.Add(cruceEspecie(especies[seleccion])); } especies = new List <List <GenomaNEAT> >(); foreach (GenomaNEAT hijo in nuevaPoblacion) { aniadirAEspecies(hijo); } numeroGeneracion++; numeroIndividuo = 0; Debug.Log(estadoPoblacion()); poblacion = nuevaPoblacion; //aniadirAEspecies(todos) // ambientes.GetComponent<Gimnasio>().RecargarTodo(); SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex); // Debug.Log("Siguiente paso 2"); } }