Function That Weights Toward End of Range [0,1] I apologize in advance if the question I am asking is elementary.  Admittedly, I am not all that literate when it comes to mathematics so I have been struggling to search the correct terms and find what I need.  That being the case, I may be duplicating another question already on this site, for which I apologize.
I am trying to find a function that, given a sequence of numbers from [0,1] (inclusive), would push the output closer to one end of the range or the other, biasing away from the center.  For example, if the value being passed into the function was 0.4, the output would be closer to 0 than 0.5 (the middle).
I've have a good start with the function:
$
y=\frac{(x-0.5)^{1/3}}{1.59}+0.5
$
Image of Graph
However, the function is almost too biased toward the ends and I am failing to gentle it.  Additionally, passing either 0 or 1 through does not return the same as the result (which I would like).
I imagine if the center part of the function (the straight vertical line) was a bit shorter that would do the trick.  However, I've been unable to shorten it while still having the function pass through (or near) (0,0) and (1,1).  For example, if I multiply x by, say, 0.5 the center line does diminish in length but the function passes near (0,0) and (2,1), as shown below.
Image of Graph
If someone might be able to instruct me as to how to modify the function to accomplish that, I would be very grateful.  I'm certainly also open to other approaches or types of functions that might accomplish the same ends.
Thanks very much.
 A: Let's consider functions of the form $f(x) = a(x - 0.5)^b + 0.5$, with the constraints that $f(0) = 0$ and $f(1) = 1$.  Then:
$$f(0) = a(-0.5)^b + 0.5 = 0 \implies a(-0.5)^b = -0.5$$
$$f(1) = a(0.5)^b + 0.5 = 1 \implies a(0.5)^b = 0.5$$
Require $b$ to be a rational number $\frac{p}{q}$ with odd numerator and denominator.  This allows allows us to define $(\sqrt[q]{-0.5})^p$ as a negative real number.
Solving $a(0.5)^b = 0.5$ for $a$ gives us $a = 2^{b-1}$.  For example, with $b = 1/3$, we get $a \approx 0.629960525$ (and $\frac{1}{a} \approx 1.58740105$, which is how you got the 1.59 in your function).
We can measure “bias” using the standard deviation of the function applied to uniformly-distributed values in $[0, 1]$.

*

*$f(x) = 0.5$ has a SD of 0.

*$f(x) = x$ has a SD of 0.288675.

*$f(x) = 2^{1/3-1}(x - 0.5)^{1/3}$ has a SD of 0.387298.

*$f(x) = \operatorname{round}(x)$ has a SD of 0.5.

So, you want a $b$ such that $f(x) = 2^{b-1}(x - 0.5)^b + 0.5$ has a bigger SD that $b = 1$, but a smaller one than $b = \frac{1}{3}$.  Try one of these:

*

*$b = \frac{3}{7} \implies SD = 0.366900$

*$b = \frac{5}{9} \implies SD = 0.344124$

*$b = \frac{3}{5} \implies SD = 0.337100$

*$b = \frac{5}{7} \implies SD = 0.320844$

*$b = \frac{7}{9} \implies SD = 0.312772$
