A Distributed Simulated Annealing Framework For Engineering Optimization