Optimizing swap routing to minimize slippage across fragmented DEX liquidity pools