A medida que la capacidad de cómputo se expande continuamente, la forma de generar candidatos ha cambiado de manera radical. Antes, las soluciones candidatas solían depender de la enumeración manual o de una única salida del modelo; hoy, laexploración paralela con GPU, laconstrucción estructurada mediante grandes modelosy laparticipación del modelo en la codificación y la mutaciónamplían conjuntamente las fuentes de candidatos. La cuestión central ya no es solo «si se puede generar una respuesta», sino «qué cambios se pueden generar, observar, conservar y heredar».
Las tres nuevas fuentes de generación de candidatos
- Exploración paralela con GPU:Se exploran simultáneamente numerosas posibilidades, y la generación de candidatos pasa del ensayo y error secuencial a la búsqueda paralela en el espacio de soluciones. Por ejemplo, se muestrean miles de puntos a la vez en el espacio de parámetros y se evalúan en paralelo.
- Construcción estructurada mediante grandes modelos:Los grandes modelos son capaces de comprender el lenguaje natural y el código, y de construir soluciones candidatas de estructura compleja, no solo de generar respuestas de texto. Pueden generar programas completos, casos de prueba o configuraciones de sistema.
- Participación del modelo en la codificación y la mutación:La codificación manual y las formas de mutación comienzan a generarse con la participación del modelo. Las fuentes de candidatos se amplían de reglas escritas por humanos a reglas y estructuras generadas por el modelo, por ejemplo, permitiendo que el modelo proponga nuevos operadores de mutación o estrategias de codificación.
Definición de límites antes de entrar en la evolución
Antes de que los candidatos entren en la evolución, deben definirse claramente los siguientes límites:
- Qué objetos se permite modificar:Determinar los objetos evolucionables: ¿la estructura del código, los hiperparámetros o toda la arquitectura?
- Qué resultados se pueden observar:Definir métricas observables, como la precisión, la latencia, el consumo de recursos, etc.
- Qué criterio determina que un cambio debe conservarse:Establecer un criterio de conservación, que suele ser una función de evaluación multiobjetivo o un umbral.
Estrategia de evaluación por niveles
La evaluación debe organizarse por niveles: laevaluación paralelizable debe paralelizarse en la medida de lo posible; laevaluación costosa debe reducirse mediante modelos sustitutos. Por ejemplo, las métricas de rendimiento sencillas pueden calcularse en paralelo en la GPU, mientras que las evaluaciones costosas que requieren interacción con el entorno real se aproximan con modelos sustitutos, ampliando así el rango de búsqueda con una capacidad de cómputo limitada.
Identificación de estructuras evolucionables y preservación de resultados
Es necesario identificar qué estructuras de los métodos existentes pueden evolucionar aún más, en lugar de limitarse a ajustar parámetros numéricos. Por ejemplo, tomar como objetos mutables la forma de conexión de los módulos en una red neuronal o la estructura de flujo de control del código. Al mismo tiempo, deben conservarse el código, las pruebas y la evidencia de validación, para que el siguiente ciclo de trabajo no tenga que empezar desde cero y se evite la duplicación de esfuerzos.
Conexión al ciclo de EvoX
Cuando los límites anteriores están claros, la tarea puede integrarse en el ciclo de EvoX: elEl modelo propone candidatos, lasLas herramientas ejecutan cambios, lasEl entorno devuelve retroalimentación, lasEl mecanismo evolutivo completa la selección, lasEl Runtime organiza el cómputo, lasel sistema persistente hereda los resultados que han superado la validación. De este modo, los componentes inteligentes dispersos se acumulan de forma continua y conforman un sistema en evolución constante.
