I envision a bot as a neural-network-based engine that adjusts its play based on fitting different opponents into different patterns. Honestly, the easiest way to develop a potentially-good bot would be to give it every piece of input and try to evolve a good player, as opposed to trying to develop all the logic manually. Such a bot is guaranteed to have some artifacts which cause it to respond to certain situations and generally play sub-optimally, basically making it look like a human player, anyways.