Hello thank you for your feedback.
I created bots that competed against each other in several batches of 1,000 games at different levels of "thinking". On the standard board (fixed colors, aka the “Sudoku board”), the first player seems to have an advantage of between 3 and 5%. When switching to a “randomly placed colors” board (that I let in bga as the default mode), the figure is slightly lower—between 2 and 4% advantage for the first player. I think these are acceptable figures. In the real world, I would therefore recommend that an experienced player let their opponent make the first move. On a standard board, after a few games, you realize there are certain openings to avoid—or ones you’re willing to take a risk on because you want to try something different.
On a “random” board, I have a preferred opening move (which hasn’t always led me to victory), which is to place a piece with a direction that prevents the opponent from capturing the same color that I just captured. And sometimes I deliberately do not thi as a “decoy.”
The last thing that will also affect gameplay is the turn-based versus real-time dynamic. It’s easier to min max everything in turn-based mode than in real time, but I’m confident that there is no "perfect" first move.