Projection onto simplex

This program computes the projection onto the canonical simplex
1.8K Downloads
Updated 11 Feb 2011

View License

This program computes the projection of any n-dimensional vector y onto the canonical simplex Dn defined by Dn:={x: x n-dimensional vector, 0<=x<=1, sum(x(:))=1 }. Namely, it solves x=arg min_x |x-y| subject to the constraint that x is in Dn.

Syntax:
x = projsplx(y);

Explanation of the algorithm can be found at
http://arxiv.org/abs/1101.6081
or
http://ufdc.ufl.edu/IR00000353/

C code and pre-compiled mex files can be found at the author's website.

Cite As

Xiaojing Ye (2024). Projection onto simplex (https://www.mathworks.com/matlabcentral/fileexchange/30332-projection-onto-simplex), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2008a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Polynomials in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

update description. improve the code efficiency

1.0.0.0