On this page:

Adaptive piecewise linear support vector regression

"If there is a problem you can't solve, then there is an easier problem you can solve: find it."
- George Polya


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.

Last modified 01.02.2022.


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.



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).