Horario de la escuela secundaria usando un algoritmo genético

Estoy haciendo un algoritmo genético de horario de secundaria en Java como proyecto, pero tengo un par de preguntas en qué dirección puedo abordar esto.

¿Cuál debería ser mi codificación cromosómica? ¿Una ArrayList que contiene cada valor o tal vez una cadena?

¿Cómo debo ingresar y enviar los datos? ¿Debo guardar los datos en un Excel y mostrar el calendario como una GUI?

¿Existe algún conocimiento esencial que un programador novato debe tener en cuenta al implementar el algoritmo? Hasta ahora, la experiencia que he tenido con GA es crear una que resuelva el problema del Viajero de ventas y evolucionar una población de cadenas aleatorias a "Hello World", pero me temo que mi falta de conocimiento sobre bases de datos y conceptos avanzados me va a bloquear. de completar este proyecto.

Respuestas a la pregunta(2)

Su respuesta a la pregunta