I think a bad relay would tend to cause the fans NOT to come on. A short to ground in the relay coil circuit would cause the fans to activate when not needed. Another possible cause is a bad coolant temperature sensor. If the computer believes the engine is hot, it will activate the fans.