Smart people work in software development
What do dual majors in physics and computer science do in their free time? Well, if you're xTuple's own software developer Christopher Cotnoir, you publish research papers in academic journals.
Chris recently announced the publication of his article “Decoupling linear and nonlinear regimes: an evaluation of efficiency for nonlinear multidimensional optimization” in the Journal of Global Optimization which publishes thoroughly vetted technical papers encompassing theoretical, computational, and applied aspects of global optimization.
The subject matter of the paper addresses methods for optimizing performance in high-performance computing environments, such as the Thomas Jefferson National Accelerator Facility. Jefferson Lab (or JLab) is a U.S. national laboratory operated by Jefferson Science Associates, LLC for the Department of Energy’s Office of Science and is located in Newport News, Va.
Chris spent time at JLab while he was a research assistant for Old Dominion University's Center for Accelerator Science in the ODU Department of Physics. In addition to a host of state-of-the-art research facilities on campus, the Physics Department has close ties not only to JLab, the world's premier nuclear physics research facility, but also to nearby NASA Langley Research Center primarily focused on aeronautical research.
While Chris says the paper isn't likely to have any application with enterprise resource planning (ERP) systems, it is a topic of significance to anyone in our open source community who may deal with use of parallel processing for running advanced application programs efficiently, reliably and quickly. Ranging from small manufacturing suppliers to national research institutions (especially those wanting to commercialize their research and bring it to market), anyone using significant computing technologies critical to creating innovative products and leading-edge research will find his paper of interest.
In this paper, a detailed prescription is presented on how the decoupling is implemented and generalized to any objective function for which it is applicable, including—but not limited to—the nonlinear least squares. The decoupling approach is then combined with nature-inspired direct searches—particle swarm and genetic algorithm—to drastically improve convergence. This is the first implementation of the decoupling approach with such nature-inspired methods. The superior efficiency of the decoupled implementation versus the traditional approach is clearly confirmed by comparing optimizations on identical problems. The improvements are quantified in terms of convergence rates and execution times.
Several example functions—both in the least squares and general format—are used to demonstrate how such decoupled formulation of the nonlinear optimization problem results in solutions which are appreciably more efficient, confirming previous work on the subject. These substantial returns on the modest initial investment in mathematical reformulation of the problem are general and applicable to a wide range of optimization problems.
Multidimensional nonlinear optimization problems arise in nearly all technical fields of human endeavor: from physics to biology, engineering, finance and many others. The major difficulty in solving these problems is that the parameter search space (the function domain) grows exponentially with the dimensionality of the problem.
Read the complete paper
About Christopher Cotnoir
Chris joined xTuple’s open source ERP development team in March of 2016, home-based at our headquarters in downtown Norfolk, Va. He has an impressive resume (CV) as a Research Assistant for Old Dominion University's Center for Accelerator Science with a B.S. in Physics and B.S. in Computer Science from ODU. His hobbies include video games, programming, and other “nerdy stuff.” Chris is also a member of the U.S. Chess Federation (USCF) member and enjoys working with and thinking about math, science, and philosophy.
“I enjoy the challenge, the problem-solving aspect of programming software. Writing code and getting it to work is often like a sort of puzzle,” says Chris of working with xTuple.