Hey Kawaki,
Avoid pattern recognition. Rely more on edge recognition, faster and more accurate. Also as many have said before, calibration is very important. Always check that when running the cal operation, a proper green mark appears at all square intersections. Light is absolutely crucial for identifying all the green visible crosses. Then do what 95devils said: perform short, medium and long measuing/positioning routines and check that the robot moves accurately. If this falis, no real operation will then be successful.
Cheers!