0
$\begingroup$

Let $s \in R^{n}$ (meaning $s$ is $n \times 1$ vector), where $n$ is the dimension of the vector. The ideal sliding term, $\nu$ is taken to be: \begin{equation} \nu = \frac{s}{\|s\|} \end{equation} where $\| . \|$ is taken to be the Euclidean norm. When $n = 1$, the above equation represents a step function but with the value of at $s=0$ undefined.

So, my question is what other continuous approximations can I use to approximate the above equation such that all values are well-defined and the function is smooth? Notice that the approximation has to be able to hold true for vectors. Considering just the scalar case is not good enough for me. Ideally, I would the approximation to have the following characteristics:

  1. differentiable with respect to all s
  2. having a closed form expression
  3. Isn't a piecewise function

I know this might sound a lot. I looking something like that so that I can use it to do Lyapunov analysis (stability theory). I have a feeling that there is something simple out there.

I have written a long description in PDF format. You can download it here. Any input is greatly appreciated. If there is anything unclear, feel free to ask me. Thank you!

$\endgroup$
2
  • $\begingroup$ What about $\frac{s}{(\|s\|^2+\delta)^{1/2}}$? Maybe you should state more precisely what are your requirements for the approximation $\endgroup$ Commented May 24, 2013 at 7:57
  • $\begingroup$ I think this will still run into the problem of differentiability at 0. Because when you differentiate the expression with respect to s, you will need to use chain rule and you will have to face the problem of differentiating $\|s\|$ which is not differentiable at 0. Please correct me if I am wrong. $\endgroup$ Commented May 24, 2013 at 17:41

3 Answers 3

0
$\begingroup$

A first pass to get continuity: for $||s||\geq \epsilon$, $f(s) = s/||s||$. For $||s||<\epsilon$,

$f(s) = \frac{s}{||s||} (e^{1/\epsilon^2-1/||s||^2})$

If you want differentiability you just need to fiddle with the $< \epsilon$ function to have a derivative of 0 in the increasing $||s||$ direction at $||s||=\epsilon$ (I'm not quite motivated enough to figure it out)

Alternatively if you're willing to accept your function never quite being correct

$f(s) = e^{-\epsilon/||s||^2} \frac{s}{||s||}$

$\endgroup$
6
  • $\begingroup$ I will try to explore more on your function. But it will be nice if it wasn't piecewise. $\endgroup$ Commented May 24, 2013 at 20:32
  • $\begingroup$ The second option is defined for all s in one shot, not piecewise. $\endgroup$ Commented May 24, 2013 at 21:58
  • $\begingroup$ Cool. That might just what I looking for. But why are you saying it is never quite correct? Can explain more? $\endgroup$ Commented May 24, 2013 at 22:10
  • $\begingroup$ Oh, but isn't the value at 0 still undefined? $\endgroup$ Commented May 24, 2013 at 22:20
  • $\begingroup$ wolframalpha.com/input/… It's differentiable at zero because $e^{-\epsilon/||s||^2}$ goes to zero so fast. By "never quite being correct" I meant there is no choice of s for which f(s) = s/||s|| exactly $\endgroup$ Commented May 24, 2013 at 22:28
0
$\begingroup$

Maybe something like $$ v_{\text{smoother}} := \begin{cases} \dfrac{s}{\|s\| + e^{-\frac{1}{\|s\| - c}}} & \|s\| > c \\\\ 0 & \|s\| \le c \end{cases} $$

If this specific example doesn't work, you can use tricks like this to make smooth multivariate functions.

$\endgroup$
3
  • $\begingroup$ But then this would be piecewise continuous. Furthermore, is it differentiable at $\|s\| = c$? Anyhow, this is an interesting answer. Can you tell me what lead you to such an answer? $\endgroup$ Commented May 23, 2013 at 14:42
  • $\begingroup$ @yao I was trying to abuse en.wikipedia.org/wiki/Non-analytic_smooth_function to make a smooth function, but I am too dumb to figure out whether this multivariate version is actually smooth at ||s|| = c. Maybe it's not. $\endgroup$
    – meij
    Commented May 23, 2013 at 16:32
  • $\begingroup$ You shouldn't say things as "I am too dumb to figure ...". Even I might didn't know such a thing existed. Perhaps it could somehow help along the way. I am trying to look for something that is differentiable with respect to s, which I didn't emphasized enough. $\endgroup$ Commented May 23, 2013 at 18:57
0
$\begingroup$

If you do not need an explicit form you could start with $$ f_\epsilon(s) = \begin{cases} \frac{s}{\|s\|}, & \|s\|\geq \epsilon\\ 0, & \|s\|<\epsilon \end{cases} $$ and then use a narrow mollifier $\phi_\delta$ to form $$ f_{\epsilon,\delta} = f_\epsilon\ast \phi_\delta. $$

Here is an image of the $x$ and $y$ coordinate and $f_{\epsilon,\delta}$ in two dimensions: alt text

$\endgroup$
3
  • $\begingroup$ I actually want to use the continuous approximation expression to study the stability of some dynamical system. I guess the mollifier is basically a low pass filter (for higher dimension)? I am wondering if it is possible to get a closed form? Putting that aside, which branch of mathematics or science does mollifier gets introduced? I would like to look into it a bit more. $\endgroup$ Commented May 23, 2013 at 22:23
  • $\begingroup$ Mollifier are a tool of real analysis of often used in functional analysis: en.wikipedia.org/wiki/Mollifier And you are right that convolution with a mollifier is a low-pass filter. $\endgroup$
    – Dirk
    Commented May 24, 2013 at 6:02
  • $\begingroup$ Thank you for you input. I will go check it out. Hopefully, I find something useful. $\endgroup$ Commented May 24, 2013 at 17:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .