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

05/22/2020
by   Dorian Florescu, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/03/2019

Algorithmically generating new algebraic features of polynomial systems for machine learning

There are a variety of choices to be made in both computer algebra syste...
research
06/28/2018

Machine Learning for Mathematical Software

While there has been some discussion on how Symbolic Computation could b...
research
11/28/2019

Improved cross-validation for classifiers that make algorithmic choices to minimise runtime without compromising output correctness

Our topic is the use of machine learning to improve software by making c...
research
07/13/2023

Data Augmentation for Mathematical Objects

This paper discusses and evaluates ideas of data balancing and data augm...
research
04/24/2023

Explainable AI Insights for Symbolic Computation: A case study on selecting the variable ordering for cylindrical algebraic decomposition

In recent years there has been increased use of machine learning (ML) te...
research
04/26/2018

Using Machine Learning to Improve Cylindrical Algebraic Decomposition

Cylindrical Algebraic Decomposition (CAD) is a key tool in computational...
research
02/27/2023

Revisiting Variable Ordering for Real Quantifier Elimination using Machine Learning

Cylindrical Algebraic Decomposition (CAD) is a key proof technique for f...

Please sign up or login with your details

Forgot password? Click here to reset