Design of Complex Engineering Systems Using Multiagent Coordination
In complex engineering systems, complexity may arise by design, or as a by-product of the system’s operation. In either case, the cause of complexity is the same: The unpredictable manner in which interactions among components modify system behavior. Traditionally, two different approaches are used to handle such complexity: (i) a centralized design approach where the impacts of all potential system states and behaviors resulting from design decisions must be accurately modeled and (ii) an approach based on externally legislating design decisions, which avoid such difficulties, but at the cost of expensive external mechanisms to determine trade-offs among competing design decisions. Our approach is a hybrid of the two approaches, providing a method in which decisions can be reconciled without the need for either detailed interaction models or external mechanisms. A key insight of this approach is that complex system design, undertaken with respect to a variety of design objectives, is fundamentally similar to the multi-agent coordination problem, where component decisions and their interactions lead to global behavior. The results of this paper demonstrate that a team of autonomous agents using a cooperative coevolutionary algorithm (CCEA) can effectively design a complex engineered system. This paper uses a system model of a Formula SAE racing vehicle to illustrate and simulate the methods and potential results. By designing complex systems with a multi-agent coordination approach, a design methodology can be developed to reduce design uncertainty and provide mechanisms through which the system level impact of decisions can be estimated without explicitly modeling such interactions.
In this video, I am going to present an overview of the design of complex engineered systems using multiagent coordination as part of an NSF funded research project.