Learn R Programming

sharpPen (version 2.0)

projection_nb: Projection operator for norm balls.

Description

Compute the projection operator for norm balls. For example, we construct $$\lambda P_{B_{\| \cdot \|_*}[0,r]}(x/\lambda) = projection_nb(\lambda,r,\| \cdot \|_*,x)$$, where \(\| \cdot \|_*\) can be \(l_{1}\)-norm, \(l_{2}\)-norm, and \(l_{\infty}\)-norm.

Usage

projection_nb(
lambda,radius,family=c("norm2","norm1","norminf"),
input)

Value

projection

\(\lambda P_{B_{\| \cdot \|_*}[0,r]}(x/\lambda)\)

Arguments

lambda

parameter \(\lambda\) in the above equation

radius

parameter \(r\) in the above equation

family

select the norm ball type, can be \(l_{1}\)-norm, \(l_{2}\)-norm, and \(l_{\infty}\)-norm.

input

input x in the above equation

Author

D.Wang and W.J.Braun

Details

Take \(x\) as input, \(\lambda\) and \(r\) as parameters. Calculate \(\lambda P_{B_{\| \cdot \|_*}[0,r]}(x/\lambda)\) for a given norm ball type.

Examples

Run this code
set.seed(1234567)
family <- "norm1"
temp_p1<-rep(10,100)
projection_nb(3,1,family=family,temp_p1)

Run the code above in your browser using DataLab