Estimación de la función de densidad no
paramétricaparacaracterizarlostiemposde
reconfiguraciónempleadosporloscontroladoresde
unprototipodeRobotPlanar
Estimationofthenon-parametricdensityfunctionto
characterizethereconfigurationtimesusedbythecontrollers
of aPlanar Robotprototype
AlexMantilla
,AntonioMeneses
,LourdesZúñiga
,
EscuelaSuperiorPolitécnicadeChimborazo,060155,Riobamba,Ecuador
Universidad Nacionalde Chimborazo,060155, Riobamba,Ecuador
Email:
alex.mantilla@espoch.edu.ec,
amenese@unach.edu.ec,
lzuniga@espoch.edu.ec
Resumen— Este artículo presenta un
prototipo de robot
planar, el cual dispone de dos controladores para dar solución a
trayectorias de la cinemática inversa, de modo que, si el
controlador principal falla, el otro controlador sea capaz de
retomar el control del prototipo en el menor tiempo posible,
resolviendo la trayectoria en curso. Este proceso se conoce como
reconfiguración. En este estudio se pretende estimar una función
de densidad no paramétrica capaz de caracterizar el
comportamiento de los tiempos empleados por los controladores
para la reconfiguración. La función ha sido determinada por el
métododekernelonúcleoylamejorestimaciónseobtieneconel
núcleo Normal o Gaussiano bajo el criterio del error cuadrático
medioyenfuncióndelapropuestadeSilvermanparalaselección
del
ancho de banda. En conclusión,
la fiabilidad de los
controladores está directamente relacionada con la trayectoria
diseñada.
Palabras Clave Función de Densidad, Error cuadrático
medio, Fiabilidad, Núcleos.
Abstract—Thispaperpresentsaprototypeofaplanarrobot,
which has two controllers to solve inverse cinematic trajectories,
so that,if the main controller fails,the other controller is ableto
regain control of the prototype in the shortest possible time,
solving the current trajectory. This process is called
reconfiguration. This study aims to estimate a non-parametric
density function capable of characterizing the behavior of the
timesusedbythecontrollersforreconfiguration.Thefunctionhas
been determined by the kernel or kernel method and the best
estimateisobtainedwiththeNormalorGaussiankernelunderthe
mean square error criterion and based on Silverman’s proposal
fortheselectionofthebandwidth.Inconclusion,thereliability of
thecontrollersisdirectlyrelatedtothedesignedtrajectory.
KeywordsDensityfunction,Meansquareerror,Reliability,
Kernel.
I. INTRODUCCIÓN
Enlaactualidad,eldesarrollodeprototiposrobóticossedaa
granescala,aplicadosadiversasáreasdelconocimiento,yasea
en la medicina para abordajes endoscópicos [1] o en la
agricultura para rociar fertilizantes y pesticidas en campos[2].
Sinembargo,en
muchasocasiones,lasvariablesdeestudiode
estos prototipos tienen comportamientos estocásticos, por lo
quenosepuederealizarunanálisismatemáticodeter-minístico
para caracterizar el comportamiento y la fiabilidad de dichas
variables. En este sentido, se requiere emplear métodos
probabilísticos para analizarlas, siendo uno de ellos la
implementacióndelafuncióndedensidadnoparamétrica.Esta
esunaherramientamuyutilizadaenelcampodelaestadística,
puestoque,ademásdeencontrarlamediay/olavarianzadeun
conjuntode datos[3],permite determinarla probabilidadde la
variable aleatoria o estocástica de estudio[4]. Una forma de
hallar una estimación no paramétrica es el método de esti-
macióndedensidaddekernel(KDEporsussiglaseninglés),y
laaplicabilidad esamplia enloscasos dondela incertidumbre
se encuentra presente. Un ejemplo de aplicación es en la
generación de energía eléctrica a través de turbinas eólicas,
puesto que el parámetro de incertidumbre es la velocidad del
vientoyesprecisocontarconunpronósticoquetieneunaalta
confiabilidaddandolugaralmétododeestimacióndedensidad
dekernelmejorada(IKDE)[5].Además,siguiendolalíneade
las energías renovables, se aplica
para el modelado de la
fluctuación de la energía eólica basado en el método de
promedio móvil y el método de estimación de densidad de
kernelnoparamétricaadaptativa(NPKDE)[6].
En la presente investigación se pretende determinar la fun-
ción de densidad no paramétrica para caracterizar el compor-
tamientodelostiemposdereconfiguraciónempleadosporlos
/ JULIO - DICIEMBRE 2021
Fecha de Recepción: 05/may/2021. Fecha de Aceptación: 24/jun/2021 DOI: 10.47187/perspectivas.vol3iss2.pp9-15.2021
controladores del prototipo de robot planar de dos grados de
libertad. Este robot se puede conceptualizar como máquina op-
erada de forma automática para sustituir el esfuerzo y realizar
operaciones específicas de los humanos [7]. En particular, este
prototipo se enmarca en la clasificación de los robots paralelos
y su área de trabajo es de dos dimensiones a lo largo de los
ejes: x, y. Los controladores permiten el cálculo matemático
para la resolución de la cinemática inversa, de este modo se
encuentra la forma que adoptarán las articulaciones para que el
extremo del robot alcance la posición deseada en el área de
trabajo [8].
El proceso para determinar la mejor estimación de la función
de densidad que caracterizará el comportamiento de los
tiempos de reconfiguración se basa en el análisis de
estimaciones no paramétricas, específicamente el método de
estimación por kernel o núcleo (KDE). Este método consiste en
la asignación a cada i-ésima muestra de un conjunto de
elementos, independientemente distribuidos, una función
llamada kernel o núcleo[9]. Todo esto se realizó con ayuda del
software Matlab, cuyo nombre provine de amalgamar dos
palabras en inglés "Matrix Laboratory" y gracias a su entorno
interactivo y a su paquete estadístico facilita el
análisis de
datos [10], [11].
La ventaja
de utilizar software al implementar la solución es
la automatización de los algoritmos, lo que facilita el análisis
para cualquier muestra escogida, puesto que todos los
parámetros necesarios para la estimación se recalculan sin la
necesidad de realizar cambios por el investigador, lo que
garantiza la fiabilidad de los resultados.
II. M
ETODOLOGÍA
A. Prototipo de Estudio
El prototipo empleado como caso de estudio es un robot
planar de dos grados de libertad, el mismo que en su estructura
física tiene 4 eslabones unidos por tres articulaciones y como
elementos motrices dispone de dos servomotores. El control de
la cinemática inversa se ha implementado en dos computadores
de bolsillo llamadas Raspberry Pi 3, que vienen equipadas con
procesador ARM [12], a su vez, están conectadas en una red
Ethernet con el Arduino mega 2560, con la ayuda de la shield
ethernet w5100. El Arduino cumple la función de interfaz entre
las Raspberry y los servomotores. En la Figura 1 se muestra
el prototipo construido.
B.ProcesodeReconfiguración
Como se puede observar en la Figura 2, el proceso de
reconfiguración se lleva a cabo entre las dos Raspberry: el
controlador principal y el respaldo. Se implementó algoritmos
capaces de establecer
la comunicación y la supervisión del
estado en el que se encuentra la resolución de la trayectoria
preestablecida, por lo que si en algún momento llegase a sufrir
un desperfecto el controlador principal, el controlador de
respaldo habrá recibido la alerta de dicho desperfecto y
retomará el control del prototipo con la finalidad de concluir
con la trayectoria en curso.
Figura 1. Prototipo de Robot planar de dos grados de libertad.
Figura 2. Esquema de Interconexión de los dispositivos .
C. Adquisición de los Datos
La naturaleza de la población de datos a recolectar es infinita
por lo que se requiere una muestra representativa capaz de
brindar la información necesaria para estimar la función de
densidad, de tal manera que el método utilizado es el muestreo
para poblaciones infinitas[13], siguiendo la Ec. 1.
n=
z
2
·p·q
e
2
(1)
donde, z es la desviación estándar, que para un 95% de
confianza, su valor es de 1.96, pes la probabilidad de acierto,
en este caso, es de 0.5, q es la probabilidad de fracaso cuyo
valor es 0.5, mientras que ees el error permitido cuyo valor es
de 5%. El tamaño de la muestra es de 384 datos.
El número de muestras fueron obtenidas de tres trayectorias
fijas (ver figuras: 3, 4 y 5) y una aleatoria, a las que se les
generó el mismo fallo. Dicho fallo consistió en terminar la
ejecución del algoritmo de resolución de la trayectoria para
medir el tiempo de reconfiguración empleado por los
controladores.
Por cada trayectoria se obtuvo 100 datos de tiempos de
reconfiguración, que en total da 400 muestras, pese a que ya se
tenía el valor de 384 muestras requeridas.
/ JULIO - DICIEMBRE 2021
10
Figura 3. Trayectoria Uno.
Figura 4. Trayectoria Dos.
D. Pruebas de Análisis
Los datos recolectados son evaluados con la prueba
de
bondad
de ajuste de Kolmogorov-Smirnov. La prueba consiste
en suponer que se tiene una función de distribución específica
F
0
(x), la cual es la función de distribución normal.
Se plantea la hipótesis h
0
:F(x)=F
0
(x)[14]. Esta prueba
verifica si las muestras obtenidas se distribuyen normalmente.
Matlab dispone de comandos para realizar esta prueba con
facilidad, a través del siguiente código:
x=xlsread(’\Datos_Tiempo.xlsx’,’P2:P400’);
x=sort(x); %ordena de forma ascendente
z=(x-mean(x))/std(x);
cdfplot(z)
hold on
plot(z,normcdf(z),’r--’)
legend(’Observaciones CDF’, ’ECDF’)
[h,p,k,c]=kstest(z,[],0.05,0)
Figura 5. Trayectoria Tres.
El código anterior devuelve como respuesta la hipótesis h, el
valor de probabilidad p, el valor de la máxima diferencia entre
la función de densidad acumulativa de los datos y la función de
densidad acumulativa empírica tomada como hipótesis nula es
k, y el valor crítico de c, el cual debe ser comparado con el
valor de kpara aceptar o rechazar la hipótesis nula. Por lo que
k<cse acepta la hipótesis nula. La figura 6 es característica
de la prueba de Kolmogorov-Smirnov y evidencia la diferencia
entre la función de densidad acumulativa de los datos y la
función de densidad acumulativa empírica. Los valores
obtenidos fueron: h=1, p=0.0249, k=0.0737y c=0.0676
por lo que se concluye que se rechaza la hipótesis nula, de
modo que los datos no se distribuyen de forma normal.
   
    
7LHPSRV
GH5HFRQILJXUDFLyQ[









)XQFLyQGH'LVWULEXFLyQ$FXPXODGD)[
Empirical CDF
2EVHUYDFLRQHV&')
(&')
Figura 6. Prueba de Kolmogorov-Smirnov.
La prueba para determinar si los datos de la población
provienen de una misma distribución es la de Kruskal-Wallis
[15]. La tabla I evidencia los resultados de la prueba, además
en la figura 7, se evidencia el diagrama de cajas y bigotes para
visualizar heterogeneidad los grupos.
/ JULIO - DICIEMBRE 2021
11
Tabla I
P
RUEBA DE KRUSKAL WALLIS
Source SS df MS Chi-sq Prob>Chi-sq
Group 631402.3 3 210467.4 47.47
2.7555×10
10
Error 4661984.7 395 11802.3
Total 5293387 398
7UD\HFWRULD










7LHPSRGH5HFRQILJXUDFLyQ
Tiempo de reconfiguración por trayectoria
Figura 7. Prueba de Kruskal Wallis.
La prueba se la puede realizar en Matlab con facilidad
mediante las siguientes instrucciones:
clear all, clc;
x=xlsread(Datos_Tiempo.xlsx’,’B2:B400’);
y=xlsread(Datos_Tiempo.xlsx’,’C2:C400’);
kruskalwallis(x,y)
title ’Tiempo de reconfiguración por
trayectoria’
xlabel ’Trayectoria’
ylabel ’Tiempo de Reconfiguración’
El valor de pes igual a 2×10
10
lo que lleva a concluir que
los datos de cada trayectoria provienen de distribuciones
diferentes.
La prueba implica que se debe estimar la función de
densidad para cada uno de los grupos, lo que se evidencia
a continuación.
E. Estimación de la Función de Densidad
Para estimar la función de densidad no paramétrica existen
varios métodos como: el histograma, que necesita un punto
inicial x
0
, así como el ancho del contenedor h, de tal manera
que así se puede establecer el número de intervalos como:
[x
0
+mh,x
0
+(m+1)h), con m=±1, ±2, ±3,...,±ny
sean X
1
, X
2
, X
3
,...,X
n
la muestras independientes [16].
El estimador de densidad simple puede pensarse como el
límite de un histograma de los contenedores, cuyo centro se
encuentra en x, haciendo que h, el ancho del contene-dor
tienda a cero. Se puede estimar P
(xh<X<x+h)
Tabla II
N
ÚCLEOS PARA LA ESTIMACIÓN
Kernel o Núcleo
K(u)
Triangular
1|u|,
Para |u| < 1
0
De otro modo
Epanechnickov
3
4
1u
2
,
Para |u| < 1
0
De otro modo
Cuartico
15
16
1u
2
2
,
Para |u| < 1
0
De otro modo
Gaussiano
1
2π
1
2
e
u
2
 
X




.HUQHO.X
Gaussiana
 
X




.HUQHO.X
Epanechnikov
 
X

.HUQHO.X
Cuartico
 
X

.HUQHO.X
Triangular
Figura 8. Núcleos de Estimación.
por la proporción de la muestra que cae en el intervalo (xh
< X < x + h) [17], [18]. El estimador por kernel o núcleo
emplea una función k llamado núcleo, que encontrará una
función f
ˆ
(x)que se aproxime a la función original f(x). Para
llevar a cabo este cometido a cada i-ésimopunto de la muestra
X
i
se asigna una función k[5], como se muestra en la Ec. 2.
f
ˆ
(x)
1
nh
n
i=1
K
xX
i
h
(2)
La selección del núcleo adecuado juega un papel importante
ya que de este depende la mejor estimación de la función
de densidad, por lo que se han evaluado los núcleos más
importantes [19], los mismos que se listan en la tabla II y
se ilustran en la Figura 8.
Los núcleos necesitan de un parámetro de suavizado, y exis-
ten varios métodos para la selección del mismo, sin embargo,
el método seleccionado es el propuesto por Silverman [18], y
se evidencia en la Ec. 3.
h=0.9min
σˆ,
IQR
1.34
n
1
5
(3)
/ JULIO - DICIEMBRE 2021
12
La mejor estimación se evalúa con el criterio del error
cuadrático medio (MSE por sus siglas en inglés), porque
permite establecer la diferencia entre la función real y la
función estimada. El MSE se determina como la suma de la
varianza más el cuadrado del sesgo como se muestra en la Ec.
4 [20].
MSEf
ˆ
(x)=E
f
ˆ
(x)f(x)
2
MSEf
ˆ
(x)=Varf
ˆ
(x)+Sesgo
2
f
ˆ
(x)
(4)
La estimación de la función de densidad se desarrolló para
cada trayectoria y con cada uno de los núcleos propuestos en la
tabla II, (ver Figura8). Sin embargo, el mejor núcleo de
estimación es el núcleo normal ya que caracteriza de mejor
manera el comportamiento de los tiempos de reconfiguración de
los controladores del prototipo de robot planar, debido que
genera una curva suave y presenta el menor error cuadrático
medio. La solución se implementó en Matlab con la finalidad de
automatizar los procesos y evaluar todos los datos, mediante el
siguiente código:
clc, clear all, close all;
xi=0.8:0.001:1.7;
x=xlsread(’
\Datos_Tiempo.xlsx’,’P2:P400’);%
xh=histogram(x,’Normalization’,’pdf’);grid
on
hold on
Q1=quantile(x,0.25);
Q3=quantile(x,0.75);
IQR=Q3-Q1
s=std(x)
N=length(x);
sigma=min(s,IQR/1.34);
h=(sigma
*
1.06)/(N^(1/5))
%%Cálculo de los Kernel
sum=0;
for i=1:N
for j=1:length(xi)
y(i,j)=(1/sqrt(2
*
pi)).
*
(exp(-(((x(i)-xi(j))/h).^2)/2));
end
end
plot(xi,y)
%Función de Densidad
sumando los
Kernel
[m n]=size(y);
for i=1:1:n
for j=1:m
sum=sum+y(j,i);
end
R(i)=(1/(N
*
h))
*
sum;
sum=0;
end
hold on
plot(xi,R,’r’,’Linewidth’,2)
grid on
%%Análisis estadístico
A1=trapz(xi,R)
media=mean(R);
varianza=var(R)
sesgo=(mean(R)-mode(R))/std(R)
ecm=varianza+sesgo^2
III. R
ESULTADOS
A. Funciónde Densidad
La función de densidad que representa el comportamiento de
los datos está dada por la Ec. 5. La evaluación de la función
genera una curva por cada una de las trayectorias planificadas.
La curvas de las figuras: 9, 10, 11 caracterizan el compor-
tamiento de los tiempos de reconfiguración empleados por las
trayectoria de tres, cuatro y cinco puntos respectivamente,
mientras que, los tiempos de reconfiguración empleados por la
trayectoria aleatoria está caracterizada por la curva de la figura
12.
f
ˆ
(x)=
1
nh
n
i=1
1
2π
e
1
2
(
x
h
X
i
)
2
(5)
0.8 0.9 1.6 1.7
Tiempos de Reconfiguración en Segundos (x)
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Función de Densidad de Probabilidad f(x)
Figura 9. Función de Densidad para la trayectoria 1.
B. Errorcuadrático medio
El error cuadrático medio es el parámetro de evaluación de
la mejor estimación con la aplicación de los núcleos. En la
tabla III se evidencia el error cuadrático medio obtenido por
trayectoria y por núcleo. El menor MSE hallado se da con la
evaluación de núcleo normal o gaussiano.
C. Fiabilidad
En este tipo de procesos, la evaluación de la fiabilidad juega
un papel importante, y debido a que ya se dispone de la
función de densidad, se puede obtener la función de
distribución, y a su vez la función de fiabilidad. Para ello basta
con obtener la diferencia entre la unidad y la función de
distribución. La fiabilidad obtenida al 95% de confianza por
cada una de las trayectorias se detalla en la tabla IV.
1 1.1 1.2 1.3 1.4 1.5
/ JULIO - DICIEMBRE 2021
13
   
   
)XQFLyQGH'HQVLGDGGH3UREDELOLGDGI[
Figura 10. Función de Densidad para la trayectoria 2.
   




)XQFLyQGH'HQVLGDGGH3UREDELOLGDGI[
Figura 11. Función de Densidad para la trayectoria 3.
   



)XQFLyQGH'HQVLGDGGH3UREDELOLGDGI[
Figura 12. Función de Densidad para la trayectoria 4.
Tabla III
E
RROR CUADRÁTICO MEDIO (MSE)
Trayectoria /ECM
Epanechnikov Cuártico Triangular Gaussiano
Trayectoria 1
4,2507 4,3772 4,3477 2,9085
Trayectoria 2
5,0406 5,1285 4,9682 3,4843
Trayectoria 3
3,4186 3,4295 3,4604 2,3345
Trayectoria 4
6,1574 5,7084 4,8972 2,4749
Tabla IV
F
IABILIDAD POR TRAYECTORIA Y NÚCLEO
Fiabilidad al 95%
Trayectoria /ECM
Epanechnikov Cuártico Triangular Gaussiano
Trayectoria 1 1.005 s 1.056 s 0.9987 s 1.036 s
Trayectoria 2 0.9695 s 0.9645 s 0.9576 s 0.9601 s
Trayectoria 3 0.9776 s 0.9711 s 0.9672 s 0.9729 s
Trayectoria 4 1.009 s 1.002 s 1.003 s 1.002 s
IV. CONCLUSIONES
Los tiempos empleados por los controladores para la re-
configuración depende de la trayectoria diseñada que eje-cuta.
La aplicación de las pruebas de análisis estadístico de
Kolmogorov-Smirnov y Kruskal-Wallis ayudan a determinar la
distribución y el comportamiento de los datos recolectados. La
automatización de la evaluación de los núcleos y anchos de
banda bajo el criterio del MSE en Matlab determinó que la
mejor estimación de la función de densidad fue con el núcleo
normal o gaussiano. La trayectoria implementada para la
resolución de la cinemática inversa incide directamente en la
fiabilidad de los controladores. La principal contribución de
este trabajo fue el enfoque de aplicación de la función de
densidad por kernel (KDE) para la validación de prototipos en
desarrollo.
R
EFERENCIAS
<> S. Chumnanvej, B. M. Pillai, S. Chalongwongse, and J. Suthakorn,
“Endonasal endoscopic transsphenoidal approach robot prototype: A
cadaveric trial,” Asian Journal of Surgery, vol. 44, no. 1, pp. 345–351,
2021. [Online]. Available: https://doi.org/10.1016/j.asjsur.2020.08.011
<> A. S. A. Ghafar, S. S. H. Hajjaj, K. R. Gsangaya,
. T. H. Sultan, M. F. Mail, and L. S. Hua, “Design and
development of a robot for spraying fertilizers and pesticides for
agriculture,” Materials Today: Proceedings, 2021. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S2214785321021933
<> W. Härdle, M. Müller, S. Sperlich, and A. Werwatz, Nonparametricand
Semiparametric
Models, 2011, no. January.
[4]
[5]
M. Spiegel, Teoria y Problemas de Probabilidad y Estadistica, 1975. J.
Guan, J. Lin, J. J. Guan, and E. Mokaramian, “A novel
probabilistic short-term wind energy forecasting model based on an
improved kernel density estimation,” International Journal of Hydrogen
Energy, vol. 45, no. 43, pp. 23 791–23 808, 2020. [Online]. Available:
https://doi.org/10.1016/j.ijhydene.2020.06.209
[6] P. Xin, Y. Liu, N. Yang, X. Song, and Y. Huang, “Probability
distribution of wind power volatility based on the moving average
method and improved nonparametric kernel density estimation,” Global
Energy Interconnection, vol. 3, no. 3, pp. 247–258, 2020. [Online].
Available: https://doi.org/10.1016/j.gloei.2020.07.006
7LHPSRVGH5HFRQILJXUDFLyQHQ6HJXQGRV[
   
7LHPSRVGH5HFRQILJXUDFLyQHQ6HJXQGRV[
   
7LHPSRVGH5HFRQILJXUDFLyQHQ6HJXQGRV[
/ JULIO - DICIEMBRE 2021
14
<> A. Barrientos, L. Peñin, C. Balaguer, and R. Aracil, FUNDAMENTOS
DE ROBÓTICA, 2nd ed., C. Sánchez, Ed., 2007.
<> J. J. Craig, Robótica, 3rd ed., P. M. Guerrero Rosas, Ed., 2006, vol. 1,
no. 8020.
<> S. Weglarezyk, “Kernel density estimation and its application
Stanisław,” ProceedingoftheInternationalConferenceonElectrical
PowerQualityandUtilisation,EPQU, vol. 00037, pp. 102–107, 2011.
<> C. Péres, Matlab y sus Aplicaciones en las Ciencias y la Ingeniería,
Madrid, 2002.
<> H. J. Pabón, “Probabilidad y estadística con matlab® para investi-
gadores,” p. 124, 2010.
<> W. Harrington, Learning Raspbian, 2015.
<> A. Saraí, “Fórmulas para el cálculo de la muestra en investigaciones de
salud,” Salud en Tabasco, vol. 11, no. Fórmulas para el cálculo de la
muestra en investigaciones de salud, pp. pp. 333–338, 2005. [Online].
Available: https://www.redalyc.org/arti
<> F. J. Marssey, “The kolmogorov-smirnov test for goodness of fit,”
JournaloftheAmericanStatisticalAssociation, vol. 46, pp. 68–78, 1951.
<> R. Levin, D. Rubin, T. Krehbyel, and M. Berenson, Estadística para
Administración, 2013, vol. 53, no. 9.
<> S. Efromovich, SpringerSeriesinStatisticsSpringerSeriesinStatistics,
1999.
<> H. Isaías and U. Salgado, “Métodos Estadísticos No Paramétricos de
Suavización para Análisis de Datos Biológicos,” 2000.
<> B. Silverman, DensityEstimationfor
StatisticsandDataAnalysis, 1998.
<> N. Iturmendi, “Estimación de la densidad relativa,” Ph.D. dissertation,
2003.
<> X. P. Durá, “Estimaciones de densidad no paramétrica vía KERNEL,”
Universitat Jaume, 2017.
/ JULIO - DICIEMBRE 2021
15