| Over the past 25 years, optimization has become an indispensable tool for Process Systems Engineers. Developments in desktop computing, modeling approaches, and optimization algorithms now allow us to address many of our questions in the areas of design, control, operations, and scheduling directly as optimization problems. Although we expect this trend to continue, recent developments in cluster computing and high-speed networking present us with the opportunity to ask a fundamentally different question: How can we efficiently use large collections of computers to solve large, hard engineering problems?; In this thesis, we present the development and application of a collaborative multi-agent optimization system as an effective general approach for engineering optimization problems. This system combines a diverse library of standard rigorous, stochastic, and heuristic optimization algorithms into a single cohesive system by facilitating collaboration among the individual agents through the sharing of intermediate and final solutions to the problem. We also introduce a new optimization paradigm termed Polymorphic Optimization that defines a formulation-independent structure that allows a collaborative multi-agent system to operate on multiple formulations simultaneously.; We demonstrate the application of this system to four problems: the optimization of a synthetic single- and multi-objective problem, the multi-objective design of microfluidic separation systems, and the optimization of a difficult mixed-integer problem similar to the quadratic assignment problem. When solving these example problems, we demonstrate some promising effects: (1) Linear speedup: using n computers can identify solutions at least n times faster; (2) Algorithmic diversity can improve performance by a factor of seven to eight; (3) Formulation diversity can improve performance by a factor of two to three. Combined, these three effects allow solving problems nearly three orders of magnitude faster than a single algorithm on a single computer.; We also show the critical importance of properly handling the details when designing a distributed multi-agent system, including the agent system implementation, approaches to system control, and strategies for managing problem information. In addition, we present the development of a new Remote Process Interface (RPI) library for managing processes operating on distributed systems that is six- to 40-times faster than current systems. |