The importance of MEMS optimization concerning performance, power consumption, and reliability increases. In the MEMS design flow a variety of specialized tools is available. For simulation on component level FEM tools (e.g. ANSYS, CFDACE+) are widely used. Simulations on system level are carried out with simplified models using simulators like Saber, ELDO or Spice. A few simulators offer tool-specific optimization capabilities but there is a lack of simulator independent support of MEMS optimization. Our approach aims at a flexible combination of simulators and optimization algorithms by partitioning the optimization cycle. This new method is translated into a modular optimization system implemented in JAVA. The main parts (modules) are: Simulation: System behavior is calculated with the actual design parameters. This computation can be a simple evaluation of equations of a complex simulation with a FEM tool or a system simulator, respectively. Error calculation: Simulation results and the specified system behavior are used to calculate the error value (the design objective function) in the actual optimization step. Optimization: The error value is used to compute the new vector of design parameters. Model instantiation: The new parameter values are used to modify the generic model for a new simulation run. The implemented optimization algorithms are: methods without derivatives (e.g. Nelder-Mead-Simplex), methods using derivatives (e.g. Conjugate Gradient or Quasi-Newton) and stochastic approaches (e.g. Simulated Annealing). Interfaces to the simulators ANSYS, ELDO, Saber, and SPICE are implemented. Thus the optimization task can be solved on different levels of model abstraction (FEM, ordinary differential equations, generalized networks,...). A graphical user interface (GUI) supports control and visualization of the optimization progress. The modules of the optimization system may communicate via the internet (web-based optimization, distributed optimization). The paper covers the partitioning of optimization cycle, the interaction between the modules of the optimization system, first experiences in web-based optimization, and the application of the approach to MEMS optimization.