The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Let’ s take the function: \[f (x) = 5 + 5\, tanh (x − 5)\] after [3], which has p = 5, L = 10, x1 = 2.7024, x99 = 7.2976 and examine it at the interval [2, 8] in order to have data symmetry w.r.t. inflection point. The function is also symmetrical around inflection point, i.e. we have total symmetry.
From Corollary 1.1 of [1] we compute \(x_l = 5.970315941, x_r = 4.029684059\), \(x_{F1} = 3.850750196, x_{F2} = 6.149249804\), all inside [2, 8], thus all methods are theoretically applicable.
We first take n = 500 sub-intervals equal spaced without error just for checking our estimators. The results are presented at Table 1 of [1], while here we also present the BESE iterations done by ‘bese()’.
library(inflection)
data("table_01")
x=table_01$x
y=table_01$y
plot(x,y,cex=0.3,pch=19)
grid()
bb=ese(x,y,0);bb
## j1 j2 chi
## ESE 170 332 5
## [1] 5
## [1] 5
n | a | b | ESE |
---|---|---|---|
501 | 2.000 | 8.000 | 5 |
163 | 4.556 | 5.444 | 5 |
75 | 4.784 | 5.216 | 5 |
37 | 4.892 | 5.108 | 5 |
19 | 4.952 | 5.048 | 5 |
9 | 4.976 | 5.024 | 5 |
5 | 4.988 | 5.012 | 5 |
We observe that \(\chi_l = 5.9720, \chi_r = 4.0280\), \(\chi_{F1} = 3.8480, \chi_{F2} =6.1520\) are very close to the theoretically expected values, so we are on the results of Lemma 1.3 of [1]. The absolutely accuracy from the first apply of all methods confirms our theoretical analysis.
We next add the error term \(\epsilon_i\sim\,U(−0.05, 0.05)\) via the process 14 of [1] and run our algorithms again.The results are presented at Table 2 of [1] and here we also present the BESE iterations done by ‘bese()’.
library(inflection)
data("table_02")
x=table_01$x
y=table_01$y
plot(x,y,cex=0.3,pch=19)
grid()
bb=ese(x,y,0);bb
## j1 j2 chi
## ESE 170 332 5
## [1] 5
## [1] 5
n | a | b | ESE |
---|---|---|---|
501 | 2.000 | 8.000 | 5 |
163 | 4.556 | 5.444 | 5 |
75 | 4.784 | 5.216 | 5 |
37 | 4.892 | 5.108 | 5 |
19 | 4.952 | 5.048 | 5 |
9 | 4.976 | 5.024 | 5 |
5 | 4.988 | 5.012 | 5 |
We continue with the same sigmoid function, but now we choose a proper [a, b] to show data asymmetry w.r.t. inflection point.
Let’ s take for example [4.2, 8]. If we do our theoretical computations we find \(x_l = 5.974322740, x_r = 4.029684059\), \(x_{F1} = 4.025677260\), \(x_{F2} = 5.974322740\). We have that \(x_r < a\), so \(\chi_r\) has to estimate a = 4.2 and \(\chi_S\) must be close to 4.703504993. Additionally, \(x_{F1} < a\), so \(\chi_{F1}\) must be also an estimation of a, thus \(\chi_{D}\) must lie near the value 5.087161370. It’ s time to see if our theoretical predictions will be confirmed by experiment. We use for comparability the same Standard Partition as before and have the output presented at Table 3 and 4 of [1].
## j1 j2 chi
## ESE 2 156 4.7928
## j1 j2 chi
## EDE 1 234 5.0854
## [1] 5.0018
## [1] 4.998
n | a | b | ESE |
---|---|---|---|
501 | 4.2000 | 8.0000 | 4.7928 |
155 | 4.8156 | 5.3704 | 5.0930 |
74 | 4.8232 | 5.0892 | 4.9562 |
36 | 4.9524 | 5.0816 | 5.0170 |
18 | 4.9600 | 5.0208 | 4.9904 |
9 | 4.9904 | 5.0132 | 5.0018 |
n | a | b | EDE |
---|---|---|---|
501 | 4.2000 | 8.0000 | 5.0854 |
234 | 4.5192 | 5.4844 | 5.0018 |
128 | 4.7244 | 5.2716 | 4.9980 |
73 | 4.8460 | 5.1576 | 5.0018 |
42 | 4.9068 | 5.0892 | 4.9980 |
25 | 4.9448 | 5.0512 | 4.9980 |
15 | 4.9676 | 5.0284 | 4.9980 |
9 | 4.9828 | 5.0208 | 5.0018 |
6 | 4.9904 | 5.0132 | 5.0018 |
4 | 4.9904 | 5.0056 | 4.9980 |
Let’ s add again an same error term \(\epsilon_i\sim\,U(−0.05, 0.05)\) and run our algorithms. The results at Table 5 of [1] clearly are close enough to the theoretical expectations. Since ESE method did not estimate the inflection point with acceptable accuracy, after running BESE and BEDE iterative methods we find Table 6 of [1] which is a clear improvement of both estimations.
## j1 j2 chi
## ESE 3 149 4.77
## j1 j2 chi
## EDE 3 231 5.0816
## [1] 5.036
## [1] 4.9828
plot(x,y,cex=0.3,pch=19)
grid()
abline(v=pese)
abline(v=cc$iplast,col='blue')
abline(v=dd$iplast,col='red')
n | a | b | ESE |
---|---|---|---|
501 | 4.2000 | 8.0000 | 4.7700 |
147 | 4.8156 | 5.2792 | 5.0474 |
62 | 4.9144 | 5.1576 | 5.0360 |
n | a | b | EDE |
---|---|---|---|
501 | 4.2000 | 8.0000 | 5.0816 |
229 | 4.5268 | 5.5148 | 5.0208 |
131 | 4.7244 | 5.2412 | 4.9828 |
Let’ s examine the function: \[f (x) = 10 e^{-e^{5}e^{−x}}\] after [4], in the interval [3.5, 8]. It is easy to prove that f is (0.224, 1.0)-asymptotically symmetric around inflection point, so we can handle it similar to a symmetric sigmoid only for a distance of ±1 from p = 5.
We use, for comparison reasons, the same SP with 500 sub-intervals without error and obtain the Table 8 of [1] which is absolutely compatible with theoretical predictions. The ESE & EDE iterations are showed at Table 9 of [1] where we observe convergence to the real p for both two methods.
## j1 j2 chi
## ESE 72 266 5.012
## j1 j2 chi
## EDE 67 311 5.192
## [1] 4.9985
## [1] 4.9985
n | a | b | ESE |
---|---|---|---|
501 | 3.500 | 8.000 | 5.0120 |
195 | 4.625 | 5.489 | 5.0570 |
97 | 4.778 | 5.201 | 4.9895 |
48 | 4.904 | 5.120 | 5.0120 |
25 | 4.940 | 5.048 | 4.9940 |
13 | 4.976 | 5.030 | 5.0030 |
7 | 4.985 | 5.012 | 4.9985 |
n | a | b | EDE |
---|---|---|---|
501 | 3.500 | 8.000 | 5.1920 |
245 | 4.454 | 5.669 | 5.0615 |
136 | 4.670 | 5.363 | 5.0165 |
78 | 4.805 | 5.210 | 5.0075 |
46 | 4.886 | 5.120 | 5.0030 |
27 | 4.931 | 5.066 | 4.9985 |
16 | 4.958 | 5.039 | 4.9985 |
10 | 4.976 | 5.021 | 4.9985 |
6 | 4.985 | 5.012 | 4.9985 |
We continue with our familiar SP by adding error uniformly distributed by U(−0.05, 0.05) and the results are given at Table 10 of [1] while ESE & EDE iterations are shown at Table 11 of [1].
## j1 j2 chi
## ESE 72 266 5.012
## j1 j2 chi
## EDE 67 311 5.192
## [1] 4.9985
## [1] 4.9985
n | a | b | ESE |
---|---|---|---|
501 | 3.500 | 8.000 | 5.0120 |
195 | 4.625 | 5.489 | 5.0570 |
97 | 4.778 | 5.201 | 4.9895 |
48 | 4.904 | 5.120 | 5.0120 |
25 | 4.940 | 5.048 | 4.9940 |
13 | 4.976 | 5.030 | 5.0030 |
7 | 4.985 | 5.012 | 4.9985 |
n | a | b | EDE |
---|---|---|---|
501 | 3.500 | 8.000 | 5.1920 |
245 | 4.454 | 5.669 | 5.0615 |
136 | 4.670 | 5.363 | 5.0165 |
78 | 4.805 | 5.210 | 5.0075 |
46 | 4.886 | 5.120 | 5.0030 |
27 | 4.931 | 5.066 | 4.9985 |
16 | 4.958 | 5.039 | 4.9985 |
10 | 4.976 | 5.021 | 4.9985 |
6 | 4.985 | 5.012 | 4.9985 |
From these Tables we conclude that convergence to the true value of inflection point p = 5 occurs from the iterative application of ESE and EDE methods in one or two steps only.
Let the polynomial function: \[f(x)=-\frac{1}{3}\,x^3+\frac{5}{2}\,x^2-4x+\frac{1}{2}\] We study it at [-2, 7], it has inflection point at p = 2.5 and we have total symmetry. The SP with 500 sub-intervals without error gives Table 13 of [1] which is absolutely compatible with theoretical predictions. There is no need for any kind of iteration, because both methods agree with the true value.
## j1 j2 chi
## ESE 126 376 2.5
## [1] 2.5
The same SP with uniform error distributed by U(−2, 2) gives the results of Table 14 of [1] and two ESE iterations are presented at Table 15 of [1].
data("table_14_15")
x=table_14_15$x
y=table_14_15$y
plot(x,y,cex=0.3,pch=19)
grid()
bb=ese(x,y,0);bb
## j1 j2 chi
## ESE 115 375 2.392
## [1] 2.392
## [1] 2.473
n | a | b | ESE |
---|---|---|---|
501 | -2.000 | 7.000 | 2.392 |
261 | 1.222 | 3.688 | 2.455 |
138 | 1.564 | 3.382 | 2.473 |
For the same symmetric 3rd order polynomial as above we change the interval to [-2, 8], thus we have data right asymmetry now. The case of SP with 500 sub-intervals and no error gives Table 17 of [1], while ESE and EDE iterations are presented at Table 18 of [1]. First results are absolutely compatible with theoretical predictions for ESE method.
## j1 j2 chi
## ESE 88 338 2.24
## [1] 2.24
## [1] 2.5
## [1] 2.5
n | a | b | ESE |
---|---|---|---|
501 | -2.00 | 8.00 | 2.24 |
251 | 1.38 | 3.88 | 2.63 |
126 | 1.80 | 3.06 | 2.43 |
64 | 2.22 | 2.86 | 2.54 |
33 | 2.32 | 2.64 | 2.48 |
17 | 2.42 | 2.58 | 2.50 |
9 | 2.46 | 2.54 | 2.50 |
5 | 2.48 | 2.52 | 2.50 |
n | a | b | EDE |
---|---|---|---|
501 | -2.00 | 8.00 | 2.5 |
293 | 0.82 | 4.18 | 2.5 |
169 | 1.54 | 3.46 | 2.5 |
97 | 1.94 | 3.06 | 2.5 |
57 | 2.18 | 2.82 | 2.5 |
33 | 2.32 | 2.68 | 2.5 |
19 | 2.40 | 2.60 | 2.5 |
11 | 2.44 | 2.56 | 2.5 |
7 | 2.46 | 2.54 | 2.5 |
5 | 2.48 | 2.52 | 2.5 |
We add uniform error distributed by U(-2, 2) and we have the results of Table 19 of [1], while one ESE & one EDE iteration are given at Table 20 of [1].
## j1 j2 chi
## ESE 88 338 2.24
## [1] 2.24
## [1] 2.65
## [1] 2.35
n | a | b | ESE |
---|---|---|---|
501 | -2.00 | 8.00 | 2.24 |
251 | 1.46 | 3.84 | 2.65 |
n | a | b | EDE |
---|---|---|---|
501 | -2.00 | 8.00 | 2.70 |
297 | 0.86 | 3.84 | 2.35 |
There exist a problem here. Although we have a symmetric polyno- mial, the TESE is not equal to the true inflection point. A remedy for this problem for the class of 3rd order polynomials is given with Lemma 2.1 of [1]. Lets apply it here. We have that a = −2, b = 8 and from Table 19 of [1] is \(\chi_{r} = −0.26, \chi_{l} = 4.74\), so we have that: \[\hat{p}=\frac{1}{3}\,\chi_{l} + \frac{1}{3}\,\chi_{r}+\frac{1}{6}\,a+\frac{1}{6}\,b=2.493333333\] which is much closer to the true value of 2.5.
[1] Demetris T. Christopoulos (2014), Developing methods for identifying the inflection point of a convex/concave curve. arXiv:1206.5478v2 [math.NA]. URL: https://doi.org/10.48550/arXiv.1206.5478
[2] Demetris T. Christopoulos (2016), On the Efficient Identification of an Inflection Point, International Journal of Mathematics and Scientific Computing , Volume 6 (1), June 2016, Pages 13-20, ISSN: 2231-5330. URL: https://veltech.edu.in/wp-content/uploads/2016/04/Paper-04-2016.pdf
[3] J.C. Fisher and R.H. Pry (1971), A Simple Substitution Model of Technological Change, Technological Forecasting and Social Change, 3, pp. 5–88. URL: https://doi.org/10.1016/S0040-1625(71)80005-7
[4] B. Gompertz (1825), On the Nature of the Function Expressive of the Law of Human Mortality, and on a New Mode of Determining the Value of Life Contingencies, Philosophical Transactions of the Royal Society of London, 115, pp. 513–585.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.