you guys do realize that truly hard bots can only be obtained in 3 ways. Yes you can always make minor improvements (such as better trap avoidance), but they will always be predictable and easy to beat for any experienced player. Even doom 5 bots were easy because you could just out-rotate them.
1)More intelligent decision making. AI that can make complicated and unpredictable decisions like a human (good threat analysis,understanding rotations, can understand aggressive/passive play in an opponent and can predict the opponents decisions) is itself a bigger project that LoL and is unrealistic. (You would need some advanced machine learning stronger than what intel/nervana uses for research on traffic control applications)
2)bots that script. They already do some of this (jinx zap is almost always side-steped by bots) but if the bots use inhuman reflexes they are only harder because they hit everything and you miss everything.
3)give the bots bonus gold or exp. more gold = more items = harder, but it is cheating. They could get gold/exp equivalent to perfect CS and 1 kill/5min instead of gold based on their CS/kills. This way they arent stuck at lvl 2 from you killing them over and over.
I would say 3 is the best option as it is easy to do and isn't too frustrating to fight against.
I personally don't care what they do as long as i can keep getting my 150ip on days i don't have time for a real game.