Improving the Fitness Function of an Evolutionary Suspense Generator Through Sentiment Analysis

2021 · IEEE Access · DOI: 10.1109/ACCESS.2021.3064242

Imagina que quieres crear un sistema que genere automáticamente escenas de suspense. No solo que las escriba —eso ya lo hacen los modelos de lenguaje—, sino que las ajuste para que tengan más o menos tensión según lo que necesites. Quieres poder decir "dame una escena con mucho suspense" o "baja un poco la tensión aquí" y que el sistema responda de forma predecible. Para eso, el sistema necesita una "brújula": una función que le diga si una escena tiene más o menos suspense que otra. Sin esa brújula, el algoritmo no sabe hacia dónde ir.

En trabajos anteriores habíamos construido un generador basado en algoritmos evolutivos. La idea es sencilla de explicar: generas muchas variantes de una escena, evalúas cuáles tienen más suspense según tu función de fitness, y usas las mejores como "padres" para generar la siguiente generación de variantes. Así, poco a poco, el sistema converge hacia escenas que maximizan (o minimizan) la función que le has dado. Es el mismo principio que la evolución biológica, pero aplicado a textos.

El problema estaba en la función de evaluación —la brújula—. Usábamos reglas heurísticas escritas a mano: "si la escena menciona una amenaza, suma puntos; si el protagonista tiene una vía de escape clara, resta puntos; si hay un plazo de tiempo ajustado, suma más puntos". Funcionaba, pero era tosco. Muchos matices emocionales se escapaban. Una escena podía tener todos los ingredientes "correctos" según las reglas y aun así no sentirse tensa cuando la leías.

El motivo es que el suspense es una emoción compleja que depende de muchas cosas que interactúan entre sí. No es solo tener amenaza + plazo + protagonista simpático. Es cómo se combinan, en qué orden aparecen, qué detalles del entorno se mencionan, qué sabe el lector en cada momento. Las reglas manuales capturan los factores principales, pero no las interacciones sutiles.

En este trabajo mejoramos esa brújula incorporando análisis de sentimiento entrenado con datos de lectores reales. El proceso fue: primero, generamos muchas escenas con distintas combinaciones de factores. Luego, se las mostramos a participantes humanos y les preguntamos cuánto suspense sentían (en una escala numérica, más medidas cualitativas). Con esos datos, entrenamos un modelo que aprende a predecir el suspense a partir de las características de la escena.

Ese modelo entrenado es la nueva brújula. Cuando el algoritmo evolutivo genera una variante, la pasa por el modelo y obtiene una predicción de cuánto suspense va a sentir un lector típico. Las variantes con mejor predicción tienen más probabilidad de reproducirse. Así, el sistema aprende a generar escenas que se parecen a las que los humanos valoraron como más tensas.

El resultado es un generador más sensible a matices. Por ejemplo, ahora el sistema "entiende" (en el sentido de que lo ha aprendido de los datos) que un cuchillo en una cocina no genera la misma tensión que un cuchillo en un callejón oscuro. El contexto importa, y el modelo de sentimiento captura parte de eso. También mejora la variedad: en lugar de repetir siempre las mismas fórmulas que maximizaban las reglas manuales, el generador explora combinaciones que antes descartaba porque no encajaban en los patrones rígidos.

Este trabajo conecta con una idea más amplia sobre creatividad computacional. No se trata de que la máquina "sienta" suspense —no tiene emociones, no tiene experiencia, no tiene nada parecido a una mente—. Se trata de que aprenda a predecir qué va a sentir un lector humano. Y esa predicción, si es buena, puede guiar la generación de contenido de formas que las reglas manuales no alcanzan.

Es un enfoque que se puede aplicar a otras emociones y otros dominios creativos. ¿Quieres generar chistes? Entrena un modelo con datos de lo que la gente encuentra gracioso. ¿Quieres generar música triste? Entrena con datos de qué piezas musicales evocan tristeza. El patrón es el mismo: aprende de los humanos para predecir la reacción humana, y usa esa predicción para guiar la generación.

Las limitaciones también son claras. El modelo aprende de los datos que le das, así que si tus datos tienen sesgos (por ejemplo, todos los participantes son de una cultura similar), el modelo los hereda. Y el suspense que "funciona" en texto puede ser distinto del que funciona en cine o en videojuegos, porque los medios tienen recursos distintos. Pero como punto de partida, es un avance claro sobre las reglas manuales.

¿Para qué sirve? Para sistemas que necesiten ajustar automáticamente la intensidad emocional de una escena: generadores de historias, juegos con narrativa adaptativa, experiencias inmersivas que responden al usuario, herramientas de ayuda a escritores.

Si te interesó este…