Hannibal did not do a tactical retreat. There was no reason to do that. And a tactical retreat could easily turn into a collapse (it would embolden the enemy.) He personally supervised the center of the line to make sure it held for the time needed. His whole plan hinged on holding the center long enough for his cavalry to win on the flanks, enveloping the Romans. His better disciplined African infantry were used to seal the flanks.
He used the same basic alignment at Trebbia. But at Trebbia the center ruptured, allowing 5,000 Romans or so to escape.
Scipio was brilliant, but if he had faced Hannibal's Italian campaign army at Zama, he would have lost. Hannibal nearly pulled it off despite having hastily trained citizen levies in his first line. It is not clear how many veterans he had managed to bring to Zama--certainly not his Iberian/Celtic cavalry. The key to Zama was that Rome now had Numidian cav as allies.
Bookmarks