Bats move in a random direction. There's no predicting it.
Blue bats are restricted to up/down/left/right movement. They move every two beats, but it might be on either odd or even beats. This means that rooms full of bats are more dangerous than you might think, because they're all moving at random, and not all on the same beat.
Red bats are restricted to up/down/left/right movement. They move on every beat. This means that they will always move to a tile of the same color. When tangling with them, be sure you're not on their color, keep moving, and you will be safe.
Green bats move in any direction, including diagonally. They move on every beat.
Black bats are similar to red bats, in that they are restricted to up/down/left/right movement and will move on every beat. However, black bats will always attack you if you move into a (non-diagonal) adjacent space. This means you can't just move next to a black bat and hope it doesn't pick your tile to randomly move to.