A machine learning based software pipeline to pick the variable ordering for algorithms with polynomial inputs

Dorian Florescu, Matthew England

Research output: Chapter in Book/Report/Conference proceedingConference proceeding

Abstract

We are interested in the application of Machine Learning (ML) technology to improve mathematical software. It may seem that the probabilistic nature of ML tools would invalidate the exact results prized by such software, however, the algorithms which underpin the software often come with a range of choices which are good candidates for ML application. We refer to choices which have no effect on the mathematical correctness of the software, but do impact its performance.

In the past we experimented with one such choice: the variable ordering to use when building a Cylindrical Algebraic Decomposition (CAD). We used the Python library Scikit-Learn (sklearn) to experiment with different ML models, and developed new techniques for feature generation and hyper-parameter selection.


These techniques could easily be adapted for making decisions other than our immediate application of CAD variable ordering. Hence in this paper we present a software pipeline to use sklearn to pick the variable ordering for an algorithm that acts on a polynomial system. The code described is freely available online.
Original languageEnglish
Title of host publicationMathematical Software - ICMS 2020
PublisherSpringer International Publishing
Pages(In-Press)
Number of pages10
Volume(In-Press)
Publication statusAccepted/In press - 20 May 2020
EventInternational Congress on Mathematical Software 2020 - Braunschweig, Germany
Duration: 13 Jul 202016 Jul 2020

Publication series

NameLecture Notes in Computational Science and Engineering
ISSN (Print)1439-7358

Conference

ConferenceInternational Congress on Mathematical Software 2020
Abbreviated titleICMS 2020
CountryGermany
CityBraunschweig
Period13/07/2016/07/20

Fingerprint Dive into the research topics of 'A machine learning based software pipeline to pick the variable ordering for algorithms with polynomial inputs'. Together they form a unique fingerprint.

  • Cite this

    Florescu, D., & England, M. (Accepted/In press). A machine learning based software pipeline to pick the variable ordering for algorithms with polynomial inputs. In Mathematical Software - ICMS 2020 (Vol. (In-Press), pp. (In-Press)). (Lecture Notes in Computational Science and Engineering). Springer International Publishing.