# Adaptive piecewise linear support vector regression

## A-PWLSVR

The adaptive piecewise linear support vector regression method
(A-PWLSVR) is a regression method that uses the L1-risk function to define regression errors and applies the support vector machine approach in combination with the piecewise linear regression to develop a new model for regression problems. The regression problem is formulated as an unconstrained nonconvex nonsmooth optimization problem, where the objective function is presented as a difference of two convex (DC) functions.
To address the nonconvexity of the problem A-PWLSVR builds piecewise linear estimates in an adaptive way using an incremental approach. The double bundle method for nonsmooth DC optimization (**DBDC**) is applied to solve the underlying optimization problems.

The software is free for academic teaching and research purposes but I ask you to refer the reference given below if you use it. Please, read ReadMe for instructions.

### Code

spr.f03 | - Main program for A-PWLSVR. |
---|---|

constants.f03 | - Parameters and constants. |

initspr.f03 | - Initialization of parameters for A-PWLSVR and DBDC. |

functions.f03 | - Computation of DC components f_1 and f_2 and their subgradients for the PWLSVR problem. |

bundle1.f03 | - Bundle of DC component f_1. |

bundle2.f03 | - Bundle of DC component f_2. |

dbdc.f03 | - DBDC method. |

plqdf1.f | - Quadratic solver by L. Luksan. |

Makefile | - Makefile. |

ReadMe | - Help file. |

a-pwlsvr.zip | - All the above in compressed form. |

### References

- A. Bagirov, S. Taheri, N. Karmitsa, K. Joki, M.M. Mäkelä, "Adaptive piecewise linear support vector regression", submitted, 2020.

## Acknowledgements

The work was financially supported by the Australian Government through the Australian Research Counsil’s Discovery Projects funding scheme (Project No. DP190100580) and Academy of Finland (Project No. 289500, 319274).