Forward Checking - colorear ciudades
Asigna colores a las ciudades y observa cómo se reducen los dominios de las variables adyacentes. Si algún dominio se vacía, tendrías que hacer backtracking (deshacer la asignación anterior).
Traza del razonamiento
Aún no se ha asignado ninguna ciudad. Asigna un color a la ciudad A para empezar.
Cómo funciona
- Variables: {A, B, C, D} · Dominio: {Rojo, Azul, Verde}
- Restricciones: A ≠ B, A ≠ C, B ≠ C, B ≠ D, C ≠ D (ninguna adyacente puede repetir color).
- Al asignar un color, se elimina automáticamente de los dominios de todas las ciudades adyacentes.
- Si un dominio queda vacío, no hay solución con esa asignación → hacer backtracking.