1) dal momento che la scheda ha una dimensione fissa che si sta per alimentare in una IA, si potrebbe semplicemente rappresentarla come una matrice unidimensionale con il giusto numero di celle, dove ogni cella rappresenta un spazio alla lavagna. Mappare quell'array monodimensionale sullo schermo per la presentazione potrebbe essere un po 'strano, ma è un problema che devi risolvere solo una volta.
Lo stesso si applica alla convalida delle mosse; è possibile creare una matrice di adiacenza che indichi quali celle sono adiacenti ad altre o generare logica per determinare l'adiacenza. Ad ogni modo, sarebbe un costo una tantum.
2) Si noti che ogni griglia esagonale è anche una griglia a due assi, tranne per il fatto che gli assi sono 60 o 120 gradi l'uno dall'altro, invece di 90 gradi come le griglie in cui X e Y sono perpendicolari. (I vecchi giochi da tavolo delle mattonelle esagonali usavano questo trucco per etichettare gli esagoni 1, 2, 3 in una direzione e AA, BB, CC nell'altra direzione, inclinata.)
Ho esaminato il codice sorgente per le implementazioni di computer dei giochi da tavolo che utilizzano (2) e hanno fornito routine come "trova una linea tra gli esagoni" o "trova la distanza tra gli esagoni". È stato tanto tempo fa, quindi i dettagli sono persi nel tempo, ma ricordo che non era troppo difficile.
(Era più matematica intera piuttosto che roba pitagorica.))