This paper proposes an algorithm for dealing with nonlinear and unconstrained multi-objective optimization problems (MOPs). The proposed algorithm adopts a nonlinear simplex search scheme in order to obtain multiple approximations of the Pareto optimal set. The search is directed by a well-distributed set of weighted vectors. Each weighted vector defines a scalarization problem which is solved by deforming a simplex according to the movements described by Nelder and Mead's method. The simplex is constructed with a set of solutions which minimize different scalarization problems defined by a set of neighbor weighted vectors. The solutions found in the search are used to update a set of solutions considered to be the minima for each separate problem. In this way, the proposed algorithm collectively obtains multiple trade-offs among the different conflicting objectives, while maintaining a well distributed set of solutions along the Pareto front. The main aim of this work is to show that a well-designed strategy using just mathematical programming techniques can be competitive with respect to a state-of-the-art multi-objective evolutionary algorithm.