Joint use of artificial neural networks and particle swarm optimization to determine optimal performance of an ethanol SI engine operating with negative valve overlap strategy