It's about 30 different hardcoded "mini AIs" that vote among each other where to put the next pixel. The AIs that predicted the next player actions best get a higher weight for their next vote. This way it can adjust quickly to what you are doing. Unfortunately the only things it can consider for its decision at the moment are the surrounding pixels. So e.g. if you always place green pixels next to purple pixels, the AI can learn that extremely quickly. The drawback is that the AI can only "learn" behaviours predefined by my 30 hardcoded mini AIs.