One theory from Delbrueck: Hannibal wanted to win the battle
with his infantry, which was superior to the Romans, and
distract the Roman cavalry. Therefore, he wanted the cavalry
clash to happen first, the idea being that his cavalry would be
routed, the Roman cavalry would pursue them and be out of the
battle, and he could start the infantry battle. Delbrueck here
suggests that Hannibal used his elephants as a way of delaying
the infantry battle. Honestly, I can't think of another reason
for doing it: elephants were generally known not to be all that
effective against infantry, and Hannibal already had the
advantage there. Elephants were effective against cavalry, and
so the normal use would be to disrupt the Roman cavalry to give
the Carthaginian cavalry a chance. Anyway, the elephants were
largely ineffective against the Roman infantry, the Roman
cavalry pursued the routed Carthaginian cavalry, and Hannibal's
infantry was winning the battle. Then the Roman cavalry, instead
of pursuing the Carthaginians fur