PSMG-A Parallel Structured Model Generator for Mathematical Programming

Andreas Grothey, Feng Qiang

Research output: Working paper

Abstract

In this paper, we present PSMG “Parallel Structured Model Generator“an efficient parallel implementation of a model generator for the structure conveying modelling language (SML[4]). Unlike the earlier proof-of-concept implementation presented with SML, PSMG does not depend on AMPL. The main purposes of PSMG are: to provide an easy to use framework for modelling and generating large scale nested structured problems, including multi-stage stochastic problems; to eliminate a current bottleneck in the problem generation stage by parallelising the problem generation; and also to offer a generic solver interface that can be easily linked with different structure exploiting optimization solvers such as decomposition or interior point based solvers. As far as we are aware, PSMG is the first processor for an algebraic modelling language that is capable of generating the problem in parallel. PSMG's solver interface delegates to the solver the task of deciding how to distribute problem parts to processors thus achieving better data locality and load balancing. We also report performance benchmark test on two different structured problems of various sizes. The results show that PSMG achieves good parallel efficiency on up to 96 processes. The distributed memory design for PSMG also enables the generation of problems that are too large to be processed on a single node due to memory restriction.
Original languageEnglish
PublisherOptimization Online
Number of pages22
Publication statusPublished - Oct 2014

Keywords

  • algebraic modelling language
  • Stochastic Programming
  • structure exploitation
  • Parallel Computing

Fingerprint

Dive into the research topics of 'PSMG-A Parallel Structured Model Generator for Mathematical Programming'. Together they form a unique fingerprint.

Cite this