Splitting Conic Solver

Solves convex cone programs via operator splitting. Can solve: linear programs ('LPs'), second-order cone programs ('SOCPs'), semidefinite programs ('SDPs'), exponential cone programs ('ECPs'), and power cone programs ('PCPs'), or problems with any combination of those cones. 'SCS' uses 'AMD' (a set of routines for permuting sparse matrices prior to factorization) and 'LDL' (a sparse 'LDL' factorization and solve package) from 'SuiteSparse' (< http://www.suitesparse.com>).

Control Arguments

Parameter Type Description Default Value
max_iters integer maximum number of iterations 5000
normalize boolean turn heuristic data rescaling on and off TRUE
verbose boolean write out progress FALSE
cg_rate numeric for indirect, tolerance goes down like (1 / iter)^cg_rate 2
scale numeric if normalized, rescales by this factor 1
rho_x numeric x equality constraint scaling 1e-3
alpha numeric relaxation parameter 1.5
eps numeric convergence tolerance 1e-5


  • O'Donoghue Brendan, Chu Eric, Parikh Neal, Boyd Stephen (2016). Operator Splitting for Conic Optimization via Homogeneous Self-Dual Embedding. Journal of Optimization Theory and Applications 169(3), 1042-1068. URL https://doi.org/10.1007/s10957-016-0892-3.


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.3-2 by Florian Schwendinger, a year ago


Browse source code at https://github.com/cran/scs

Authors: Florian Schwendinger [ctb, cre] , Brendan O'Donoghue [aut, cph] , Balasubramanian Narasimhan [ctb] , Timothy A. Davis [cph] , Patrick R. Amestory [cph] , Iain S. Duff [cph]

Documentation:   PDF Manual  

Task views: Optimization and Mathematical Programming

GPL-3 license

Suggests slam, testthat

System requirements: GNU Make

Imported by CVXR, ROI.plugin.scs.

See at CRAN