Litcius/Paper detail

GPkit: A Human-Centered Approach to Convex Optimization in Engineering Design

Edward Burnell, Nicole B. Damen, Warren Hoburg

202038 citationsDOIOpen Access PDF

Abstract

We present GPkit, a Python toolkit for Geometric and Signomial Programming that prioritizes explainability and incremental complexity. GPkit was designed through an ethnographic approach in the firms, classrooms, and research labs where it became part of the fabric of daily engineering work. Organizations have approached GPkit both in ways which centralize and in ways which distribute design work, usecases which emerged from and inspired new toolkit features. This two-way flow between mathematical structure and practitioner knowledge resulted in several novel contributions to the formulation and interpretation of convex programs and to our understanding of early-stage engineering design. For example, dual solutions (often considered incidental) can be more valuable to a design process than the "optimal design" itself, and we present novel algorithms and design methods based on this insight.

Topics & Concepts

Computer sciencePython (programming language)Engineering design processWork flowDesign processSoftware engineeringGeometric programmingDual (grammatical number)Industrial engineeringWork in processProgramming languageEngineeringMachine learningMechanical engineeringOperations managementLiteratureArtSoftware Engineering ResearchAdvanced Multi-Objective Optimization AlgorithmsDesign Education and Practice
GPkit: A Human-Centered Approach to Convex Optimization in Engineering Design | Litcius