Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de Puebla
INVESTIGACIÓN Y
APLICACIONES DE LAS
CIENCIAS COMPUTACIONALES
BNEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA
INVESTIGACIÓN Y
APLICACIONES DE LAS
CIENCIAS COMPUTACIONALES
Realizado en
Puebla, Pue. México
Otoño 2016
3
Benemérita Universidad Autónoma
de Puebla
INVESTIGACIÓN Y
APLICACIONES DE LAS
CIENCIAS COMPUTACIONALES
Editores:
Carmen Santiago Díaz
Lourdes Sandoval Solís
Pilar Amador Alarcón
Mario Anzures García
Graciano Cruz Almanza
Gustavo Rubín Linares
5
CONTENIDO
Capítulo 1 8
Algoritmos Anti-Forenses para Manipular la Fuente de Adquisición de una
Imagen de Dispositivo Móvil
Jocelin Rosales Corripio, Miguel Á. León Chávez, Ana L. Sandoval
Orozco, Luis J. García Villalba
Capítulo 2 22
Analizador de Grafos para Redes de Afiliación
Pedro Bello López, Meliza Contreras González, Miguel Rodríguez
Hernández, Alejandro F. Martínez Montes
Capítulo 3 32
Identificación de Cambios Estructurales en Imágenes Satelitales
Empleando PCNN
Aida A. Aparicio Arroyo, Aldrin Barreto Flores, Salvador E. Ayala Raggi,
Verónica E. Bautista López
Capítulo 4 41
Sensor de Temperatura, Humedad e Iluminancia con Conexión a Internet
basado en Arduino
Alejandro García Santiago, Víctor M. Méndez Álvarez, Vicente Y. Ponce
Hinestroza, José De J. Salazar Arrieta, Adán Torralba Ayance, Juan C.
Villegas Hernández, Aldrin Barreto Flores, Verónica E. Bautista López,
Carlos Escamilla Weinmann
Capítulo 5 48
Clasificador DD para Datos Funcionales
Gladys Linares Fleites, Ma. de Lourdes Sandoval Solís, Brenda C. Matías
Castillo
Capítulo 6 57
Control Acotado de la Orientación de un Helicóptero con Cuatro Rotores
Juan Díaz Téllez, José M. Gutiérrez Arias, José E. Flores Mena
Capítulo 7 68
Aplicación de Técnicas de Minería de Datos para Predicción de
Desempeño Académico
María A. López Garrido, Erika Y. Morales Mateos, José A. Hernández
Aguilar, Carolina González Constantino
Capítulo 8 74
Clasificador Bayesiano Ingenuo en RapidMiner
Imelda Hernández Baez, María de L. Sandoval Solís, Marcela Rivera
Martínez, Luis R. Marcial Castillo
Capítulo 9 88
Generación de Mapas de Zonas de Desastres Mediante Trabajo
Colaborativo para Búsqueda y Rescate
Yasmin Morales Zitlapopoca, Nancy Montalvo Montalvo, Abel A. Rubín
Alvarado, Gustavo Rubín Linares, Rodrigo A. Cuevas Vede
Capítulo 10 93
Sensado Dinámico de Temperatura en Composta
Carolina Jiménez, Carlos Parra, Gerardo Juárez, Aldrin Barreto,
Salvador E. Ayala, Arturo Parra,Verónica E. Bautista
Capítulo 11 109
Sistema de Aprendizaje Incremental para Reconocimiento Automático de
la Edad Ósea
Fernando Montoya Manzano, Salvador E. Ayala Raggi, Susana Sánchez
Urrieta, Aldrin Barreto Flores, José F. Portillo Robledo, Patricia Ayala
Raggi
Capítulo 12 120
Dispensador Automático de Alimento desde un Servidor Web
Arturo Páez López, Mauricio Quintero Espinoza, Aldrin Barreto Flores
Capítulo 13 129
Sistema de Entrenamiento Virtual usando Leap Motion
Jorge Mateo Juárez, Aldrin Barreto Flores, Verónica E. Bautista López,
Salvador E. Ayala Raggi
Capítulo 14 136
Red Bluetooth de Alarma de Puertas
Daniel Treviño Sánchez, Oscar I. Morales Ramírez, Lessia M. Saynes
Torres, Aldrin Barreto Flores, Verónica E. Bautista López, Salvador E.
Ayala Raggi
Capítulo 15 143
Robot Recolector de Basura para Lagos y Lagunas “JARV-1”
José L. Hernández Ameca, Elsa Chavira Martínez, José Ítalo Cortez,
Gregorio Trinidad García, Lourdes Sandoval Solís, Minerva Hernández
Ameca, Alan J. Fonseca Barrera, Ricardo Pastor Hernández, Valeria
Temozihui Tlahuel
Capítulo 16 149
Manipulador Robótico de Residuos Peligros Biológico-Infecciosos.
José L. Hernández Ameca, Elsa Chavira Martínez, José Ítalo Cortez,
Gregorio Trinidad García, Gustavo Rubín Linares, Minerva Hernández
Ameca, Alan J. Fonseca Barrera, Ricardo Pastor Hernández, Valeria
Temozihui Tlahuel
Capítulo 17 155
Evaluación Colaborativa de Proyectos de Investigación + Desarrollo
basada en un Modelo Semántico
Luz A. Sánchez Gálvez, Mario Anzures García, Omar Hernández
Sarmiento
Capítulo 18 167
Gestión Colaborativa de Eventos Académicos basada en un Patrón
Arquitectónico
Luz A. Sánchez Gálvez, Mario Anzures García, Ana P. Arcos Rodríguez,
Erick Hidalgo Sánchez
Capítulo 19 181
Interfaz para el Lenguaje de Señas
Miguel Vázquez Vázquez, Luz A. Sánchez Gálvez, Mario Anzures García
Capítulo 20 194
Aplicación de Redes Neuronales en Reconocimiento de Imágenes
Stephanie Escalante Ramírez, José M. Suárez Arana, Aldrin Barreto
Flores
Capítulo 21 202
Sistema de Rehabilitación basado en un Exoesqueleto para Mano.
(S.R.E.M.)
Caleb Jiménez, Jessica López, Alan Castillo, Emmanuel Francisco,
Alejandro Rubín, Gustavo Rubín-Linares
Capítulo 22 207
Modelado Dinámico de un Sistema de Paneles Solares
Pilar Amador Alarcón, Gustavo Rubín Linares, Pilar Merino Rosas,
Rodrigo Cuevas Vede, Erick López Chicatto
7
Algoritmos Anti-Forenses para Manipular la Fuente de
Adquisición de una Imagen de Dispositivo Móvil
1 Introducción
Aunque las imágenes fotográficas pueden ser consideradas parte de la verdad, ya que
son hechos reales captados por dispositivos electrónicos (cámaras digitales), nunca ha
sido tan fácil modificar las imágenes como lo es hoy en día, dada la existencia de
potentes y sofisticados programas de software para este fin. Esta facilidad de
manipulación plantea interrogantes sobre la integridad y veracidad de las imágenes
fotográficas.
Actualmente, las ventas de dispositivos móviles siguen aumentando en todo el
mundo. En nuestro día a día es habitual ver cómo se realizan y usan fotografías de
este tipo de dispositivos para una gran diversidad de situaciones (vida personal,
noticias, pruebas judiciales, aplicaciones para teléfonos móviles, etc.).
Este progreso hace que el tratamiento y la toma de fotografías con este tipo de
dispositivos puedan crear situaciones problemáticas o beneficiosas en las
distintasrealidades. Muchos estiman que este tipo de cámaras facilitan la proliferación
de crímenes contra la privacidad y la seguridad de la información (robo con tarjetas
de crédito, secuestros, piratería, pornografía infantil, espionaje industrial, etc.). De
hecho, una de las principales razones de la existencia de dispositivos sin cámaras
fotográficas se debe a que diversas compañías, organizaciones o países poseen
normas que prohíben o limitan su uso[1].
Por todo lo anterior, el análisis forense de imágenes digitales se ha convertido en
un tema de interés en los últimos años. El análisis forense surge con la idea de
restablecer la confiabilidad en las imágenes digitales, que de otro modo se
consideraban muy fácilmente modificables. Como en la mayoría de campos de
estudio existe una contraparte, en este caso, personas que hacen esfuerzos para
manipular las imágenes en su propio beneficio usando el conocimiento del análisis
forense de imágenes para borrar o incluso suplantar las huellas o rastros que se
utilizan para determinar la identidad de las imágenes. Muchos de los algoritmos
forenses existentes en la literatura no fueron diseñados teniendo en cuenta ese tipo de
comportamiento y como consecuencia son fáciles de engañar.
Continuando con el trabajo realizado en [2] donde se utilizaron con éxito el ruido
del sensor y la transformada wavelet para identificar la fuente de imágenes generadas
por dispositivos móviles,en particular de teléfonos celulares, este artículo propone dos
algoritmos anti-forenses:uno para destruir la identidad de la imagen y otro para
falsificar la identidad de una imagen dada. El objetivo del primer algoritmo es
convertir una imagen a anónima, es decir eliminar tanto como sea posible cualquier
rastro que permita a un analista forense la identificación de la fuente (modelo y marca
del teléfono celular) de la imagen. El objetivo del segundo algoritmo es falsificar la
fuente de una imagen, en otras palabraslograr que al hacer un análisis forense no sea
posible identificar la fuente real de la imagen y que ésta aparente pertenecer a otra
fuente.
Estos algoritmos son comparados con los usados por la herramienta “PRNU
Decompare”[3] que permiten la eliminación y la suplantación del patrón de ruido del
sensor. Sin embargo, la herramienta requiere como entrada una fotografía de un
marco oscuro y un mínimo de30 imágenes de superficies planas iluminadas
uniformemente mientras que los algoritmos propuestos requieren solamente una
imagen del dispositivo víctima y no requieren tener acceso a él. Los resultados
obtenidos se compararon usando la herramienta “NFI PRNU Compare”[4] la cual
permite comparar los patrones del ruido del sensor de varias imágenes utilizando
como métrica la correlación. Además, se usaron las métricas de calidad de imagen
(ImageQualityMetrics (IQM)) para evaluar objetivamente la pérdida de calidad de las
imágenes cuya identidad ha sido destruida con respecto a las imágenes originales.
Elresto del documento se estructura en 6 secciones. La sección II explica
brevemente el proceso de formación de una imagen digital. La sección III resume los
principales trabajos relacionados con el análisis forense de imágenes generadas por
dispositivos móviles. Los ataques a las técnicas de análisis forense de imágenes
digitales se presentan enlasecciónIV.EnlasecciónVsedescribenlosalgoritmos para
destruir la identidad y falsificar la identidad de una imagen dada. La sección VI
describe los experimentos realizados y se analizan los resultados obtenidos.
Finalmente, la sección VII presenta las principales conclusiones del trabajo así como
el trabajo a futuro.
9
conjunto de filtros, una matriz de filtros de color (Color FilterArray (CFA)), un
sensor de imagen y un procesador de imagen digital (Digital ImageProcessor (DIP)).
Para generar una imagen digital, en primer lugar, el sistema de lentes recoge la luz
de la escena controlando la exposición, el enfoque y la estabilización de imagen.
Seguidamente, la luz entra en la cámara a través de la lente, pasando por una
combinación de filtros (por lo menos infrarrojos y anti-aliasing) para garantizar la
máxima calidad de la imagen. Con el objetivo de producir una imagen en color se
utiliza la CFA. Después, la luz se enfoca sobre el sensor de imagen que es una matriz
de elementos sensibles a la luz llamados píxeles. La incidencia de la luz contra los
píxeles genera una señal analógica proporcional a la intensidad de la luz, la cual se
convierte en una señal digital para ser procesada por el DIP. Por último, la imagen
final completa se forma por el DIP, el cual lleva a cabo algunas operaciones tales
como la interpolación cromática (demosaicing), corrección de puntos blancos,
corrección gamma, compresión, etc., con el objetivo de producir una imagen
visualmente agradable.
11
El ruido PRNU se calcula con la ecuación (2) en términos de un marco plano
(flatfield) 𝑑 promediando 𝑑 imágenes 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 de una escena iluminada
homogéneamente. A las 𝑑 imágenes se les elimina el ruido FPN mediante la resta del
marco oscuro 𝑑antes de promediarlas.
𝑓 = 1/𝐿 ∑_𝐿▒〖〖(𝑥〗_𝑖𝑙𝑢𝑚𝑖𝑛𝑎𝑑𝑎 − 𝑑〗) (2)
Como se describe en [10] y [12] los atacantes pueden intentar evitar la
identificación correcta de la fuente ya que existe la posibilidad de extraer y estimar la
huella de una imagen mediante la extracción del FPN y PRNU de una cámara digital.
La destrucción de la huella de una imagen 𝑑 generada con una cámara específica
se realiza con la ecuación (3) restando a la imagen original 𝑑 el marco oscuro 𝑑 y
dividiendo el resultado de la resta entre el marco plano.
𝑥 ̃ = (𝑥 − 𝑑)/𝑓 (3)
A pesar de que los resultados obtenidos con esta técnica son buenos, se presentan
algunos inconvenientes:
Existen otras posibilidades menos robustas para destruir la identidad que en ciertos
casos podrían ser efectivas ya que no necesitan contar con imágenes procedentes de la
cámara origen para generar el marco oscuro y el marco plano, pero a cambio de esta
facilidad la calidad de la imagen puede verse reducida y podrían introducirse algunos
rasgos visuales. Por ejemplo, es posible rotar la imagen unos pocos grados, escalar la
imagen, o aplicar un filtro de suavizado gaussiano.
En [13]el PRNU se utiliza para identificar el dispositivo de la cámara que creo una
imagen, esto podría no ser deseable para algunos usuarios que quieren proteger su
privacidad y preservar su anonimato al compartir o difundir imágenes.
En [14]los autores plantean un análisis del método de destrucción de identidad de
una imagen basada en una técnica de redimensionamiento de imágenes llamada
“seam-carving”. Los resultados del análisis muestran que la eficacia de los ataques
depende de varios factores como los parámetros del método de “seam-carving”, la
fuerza del patrón de ruido PRNU de la cámara, y la capacidad de un adversario para
identificar bloques de imagen sin redimensionar en una imagen que ha sido
redimensionada con ese método.
De igual forma que se puede eliminar el ruido en una imagen haciendo uso de la
técnica de corrección de sensibilidad, se puede inyectar el ruido de la imagen de otra
cámara diferente mediante la corrección de sensibilidad inversa con la ecuación
(4)[10].
𝑦 ̃ = 𝑥 ̃ ∙ 𝑓_𝑓𝑎𝑙𝑠𝑎 + 𝑑_𝑓𝑎𝑙𝑠𝑎
(4)
Donde, 𝑓_𝑓𝑎𝑙𝑠𝑎y𝑑_𝑓𝑎𝑙𝑠𝑎 corresponden a la cámara que se pretende plagiar y𝑥 ̃ es
la imagen original sin ruido.
5 Propuesta de algoritmos anti-forenses
En esta sección se proponen los algoritmos para destruir y para falsificar la identidad
de una imagen dada. El objetivo del primer algoritmo es convertiruna imagen a
anónima, es decir, eliminar tanto como sea posible cualquier rastro que permita a un
analista forense la identificación de la fuente de la imagen. El objetivo del segundo
algoritmo es falsificar la fuente de una imagen, o en otras palabras, lograr que al hacer
un análisis forense no sea posible identificar la fuente real de la imagen y que ésta
aparente pertenecer a otra fuente.
En[2] se determinó que el uso del PRNU y la transformada“wavelet” son un
método efectivo para la identificación de la fuente, alcanzando un éxito promedio de
87.21%. Una técnica anti-forense estimada para este tipo de identificación debe estar
basada en estos elementos. Por consiguiente, los algoritmos que se presentan a
continuación se basan en el manejo del ruido del sensor PRNU y la
transformada“wavelet”.
En contraste a la transformada de Fourier que representa las señales como una
suma de ondas senoidales que no están localizadas en el tiempo y espacio, la
transformada “wavelet”es más conveniente en el análisis de señales con cambios
abruptos como son las imágenes ya que sus funciones están ubicadas en tiempo y
espacio. Aunado a lo anterior entre las diferentes familias de funciones wavelet (Haar,
Daubechies, Coiflet, Symlet, Meyer, etc.) existe una gran cantidad de alternativas
para analizar las señales permitiendo elegir la base de funciones cuya forma se
aproxime mejor a las características de la señal que se desea analizar. En base a los
resultados de trabajos anteriores para esta propuesta se utilizó a la familia de
funciones Daubechies.
La descomposición “wavelet” permite separar la información a manerade
frecuencias, de esta forma se puede analizar y/o modificar sólo la información de las
frecuencias que son de algún interés en particular y volver a reconstruir la señal.En
particular para la eliminación del ruido, éste se aísla del resto de la imagen para poder
atacarlo directamente sin alterar los detalles significativos de la imagen.
13
Calcular la varianza local;
if varianza adaptativa then
Calcular 4 varianzas con ventanas de
tamaños 3, 5, 7 y 9, respectivamente;
Seleccionar la varianza mínima;
else
Calcular la varianza con una ventana detamaño 3;
Calcular los componentes wavelet sin ruido aplicando el
filtro de Wiener a la varianza;
Obtener Ilimpia aplicando la transformada wavelet inversa
Con los componentes limpios calculados;
Endprocedure
En esta sección se propone un algoritmo para falsificar el patrón del ruido del sensor
de una cámara C1 a una imagen P2 perteneciente a una cámara C2. Este algoritmo usa
el Algoritmo 1 presentado en la sección 5.1.
Las técnicas de identificación de la fuente basadas en PRNU calculan la huella del
sensor de la imagen con la ecuación 5:
(5)
𝐼_𝑟𝑢𝑖𝑑𝑜 = 𝐼 − 𝐼_𝑙𝑖𝑚𝑝𝑖𝑎
El patrón del ruido PNU se calcula mediante el promedio del ruido residual de
varias imágenes con la ecuación 6:
(6)
𝑃_𝑟𝑢𝑖𝑑𝑜 = 1/𝑚 ∑_(𝑖 = 1)^𝑚▒𝐼_𝑟𝑢𝑖𝑑𝑜
Una vez que se tiene la posibilidad de eliminar el ruido del sensor y de extraer el
patrón del ruido del sensor se puede plantear la falsificación de la identidad de una
imagen. El Algoritmo 2 muestra los pasos a seguir para falsificar la identidad de una
imagen.
Para tener una huella de mejor calidad y obtener mejores resultados en la
falsificación de acuerdo a los experimentos realizados se recomienda que el número N
de imágenes sea superior a 50. Además para evitar ruido proveniente del contenido de
la imagen se sugiere que las imágenes se hayan adquirido de superficies planas sin
textura iluminadas uniformemente, como superficies planas se pueden considerar
fotografías del cielo despejado o de un papel blanco.
15
más información para eliminar la huella. En todos los casos, la comparación de las
imágenes sin ruido tuvo resultados muy similares, lo que indica que el algoritmo
propuesto tuvo un buen desempeño al acercarse alresultado de “PRNUDecompare”
sin la necesidad de utilizar la imagen del marco oscuro ni las 50 imágenes planas.
Una cuestión importante a tomar en cuenta es si la imagen cuya identidad ha sido
destruida reduce su calidad o si existen efectos visibles para el ojo humano en la
escena de la imagen. Para ello, en la Fig. 2 se muestra el ejemplo de la imagen
original y de la imagen con la identidad destruida pertenecientes al dispositivo Nokia
Lumia 800. No se muestran cambios visibles sobre la escena de la imagen con
identidad destruida y en la parte inferior de las imágenes se puede observar que
tampoco se modifica significativamente su histograma.
Tabla 1. Comparación entre patrones e imágenes sin ruido.
(a) Nokia 800 Lumia: Imagen original (b) Nokia 800 Lumia: Imagen con identidad destruida
A pesar de ello, se decidió utilizar las métricas de calidad de imagen IQM para
evaluar objetivamente la pérdida de calidad de lasimágenes cuya identidad ha sido
destruida con respecto a las imágenes originales. Para ello, se optó por utilizar la
métrica de Minkowski [18]. En particular se usó la métrica de Minkowski para 𝑑= 1
que corresponde a error absoluto medio (Mean Absolute Error (MAE)) y 𝑑 = 2 para
el error cuadrático medio (Mean Squared Error(MSE)).
En ambos casos, los valores altos de MAE o MSE indican que son imágenes de
baja calidad. Estas métricas se aplican a cada una de los canales RGB (Red-Green-
Blue) por separado, de modo que se obtienen tres métricas para el MAE y otras tres
para el MSE. Los valores de las métricas de calidad para cada uno de los canales de
las 4 imágenes se muestran en la Tabla 2, como se puede observar la destrucción de
las características que permiten la identificación cambia muy poco los índices de
calidad de la imagen. A pesar de que se percibe una pequeña reducción de los valores
en toda la Tabla 2, es importante tener en cuenta que, en realidad las imágenes
originalesprobablementeno estarán disponibles para compararlas y los cambios son
tan mínimos que no permitirán distinguir entre imágenes originales o
falsificadasbasándose exclusivamenteen alguna de ellas.
17
Tabla 2. MAE y MSE de las imágenesy las imágenes con identidad destruida.
MAE MSE
Imagen
Rojo Verde Azul Rojo Verde Azul
Nokia 800 Lumia original 0.8410 0.8183 0.8428 2.6498 2.1777 2.3869
Nokia 800 Lumia sin identidad 0.8368 0.8135 0.8388 2.6245 2.1531 2.3617
Sony ST25i original 0.8976 0.8705 0.8916 4.0664 3.3754 3.7108
Sony ST25i sin identidad 0.8924 0.8656 0.8869 4.0324 3.3465 3.6783
Para este experimento se utilizó el mismo grupo de fotografías usado enla sección 6.1.
De una manera similar a la del experimento anterior, se extrajo una huella digital del
sensor de la cámara, después esta huella digital se inyectó en las imágenes captadas
por otras dos cámaras utilizando el Algoritmo 2 y también con la herramienta “PRNU
Decompare”; Finalmente los resultados se compararon con “NFI PRNU Compare”.
Las funciones desempeñadas por cada cámara se muestran en la Tabla 3.
Para falsificar el patrón de ruido del sensor con el algoritmo propuesto sólo se
requirieron 50 imágenes de la cámara atacante. Para la falsificación con “PRNU
Decompare” se requirieron las mismas 50 imágenes y dos imágenesmás de marco
oscuro: una pertenecientes a la cámara atacante y otra dela cámara víctima.
Después de realizar la falsificación en las 4 cámaras víctimas se compararon los
resultados que se resumen en la Tabla 4. En ésta también semuestran coeficientes de
correlación para cada canal de color con respeto al patrón de la cámara atacante como
en el último experimento.
Para las víctimas 1, 3 y 4 se puede observar que las tres falsificaciones tienen una
mayor similitud con el patrón de la cámaraatacante y que el resultado de “PRNU
Decompare” está más cerca que la propuesta, aunque esta diferencia no es
significativa considerando que la herramientautiliza un número mucho mayor de
imágenes como fuente de información. En el caso de víctima 2 el resultado con el
algoritmo propuesto tiene la menor similitud con el patrónde la cámara atacante.
Tabla 5.MAE y MSE de las imágenes y las imágenes con identidad falsificada.
MAE MSE
Imagen
Rojo Verde Azul Rojo Verde Azul
Víctima 3 original 0.8976 0.8705 0.8916 4.0664 3.3754 3.7108
Víctima 3 falsificada 0.8926 0.8656 0.8872 4.0323 3.3445 3.6787
Víctima 4 original 0.7836 0.7800 0.7820 2.3412 2.2525 2.2724
Víctima 4 falsificada 0.7685 0.7639 0.7661 2.2940 2.2062 2.2207
Este artículo ha presentado dos algoritmos anti-forenses, uno que permite destruir la
identidad de una imagen y otro que posibilita falsificar la identidad en una imagen
dada. Los dos algoritmos tienen como base la utilización del ruido del sensor y la
transformada “wavelet”.Asimismo, ambos algoritmos tienen como gran ventaja con
respecto a otros con los mismos fines que necesitan una menor variedad de datos de
entrada ajustándose en mayor medida a escenarios reales. Concretamente, para el
algoritmo de eliminación de la huella de una imagen se necesita únicamente la propia
imagen y no un conjunto de imágenes planas y una imagen del marco oscuro de la
propia cámara como ocurre en el caso de “PRNU Decompare”.La aplicación a la
realidad del algoritmo que utiliza “PRNU Decompare” no tiene gran facilidad de
encaje, ya que se necesitan numerosas fotos con características concretas para su
ejecución. Para el caso del algoritmo de falsificación de la identidad de una imagen
propuesto no se necesita tener acceso a la cámara víctima.Ambos algoritmos pueden
verse desde otras perspectivas distintas a la del estudio para el futuro fortalecimiento
de técnicas forenses de detección de manipulaciones intencionadas. Precisamente el
primer algoritmo que permite destruir la identidad de una imagen puede ser de gran
utilidad en aplicaciones web que presentan imágenes en Internet (redes sociales,
directorios de imágenes, ...) ya que permiten que la imagen publicada sea anónima
desde el punto de vista de la identificación de la fuente de adquisición.
En general la eficacia de los algoritmos propuestos es buena, a pesar de que en
algunos casos no se obtienen resultados comparables con los de otros algoritmos pero
se logran resultados cercanos y bastante aceptables con la ventaja de reducir
drásticamente la entrada requerida de los datos y ser más práctico y realista.
Estos algoritmos pueden ser útiles como punto de partida para futuras mejoras que
permitan resultados similares para otros algoritmos o herramientas, destacando y
19
teniendo en cuenta queno requieren tanta información de entrada y que pueden
trabajar incluso sin tener acceso a la cámara víctima para el caso de la falsificación de
la identidad de una imagen. Además, la aplicación de los dos algoritmos no causa
cambios visuales notables o degradación en las imágenes y no reduce
significativamente la calidad de imagen.
1. Al-Zarouni, M.: Mobile Handset Forensic Evidence: A Challenge for Law Enforcement.
Proceedings of the 4th Australian Digital Forensics Conference, pp.1-10 (2006)
2. Rosales Corripio, J.; Arenas González, D.M.; Sandoval Orozco, A.L.; García Villalba, L.J.;
Hernandez-Castro, J.C. and Gibson, S.J.: Source Smartphone Identification using Sensor
Pattern Noise and Wavelet Transform. Proceedings of the 5th International Conference on
Imaging for Crime Detection and Prevention, pp.1-6 (2013)
3. Netherlands Forensic Institute: PRNU Decompare.https://www.forensicinstitute.nl/
products_and_services/forensic_products/PRNU/ Accedido el Agosto 11 de 2016
4. Netherlands Forensic Institute: NFI PRNU Compare. http://ftparmy.com/60782-nfi-prnu-
compare.html Accedido el Agosto 11 de 2016
5. Chen, M.; Fridrich, J.; Goljan, M. and Lukas, J.: Determining Image Origin and Integrity
using Sensor Noise. IEEE Transactions on Information Forensics and Security, Vol. 3,
No.1, pp.74-90 (2008)
6. GarcíaVillalba, L.J.; Sandoval Orozco, A.L. and Rosales Corripio, J.: Smartphone Image
Clustering. Expert Systems with Applications, Vol. 42, No.4, pp.1927-1940 (2015)
7. Van Lanh T.; Chong, K.S.; Emmanuel, S. and Kankanhalli, M.S.: A Survey on Digital
Camera Image Forensic Methods. Proceedings of the IEEE International Conference on
Multimedia and Expo, pp.16-19 (2007)
8. Thing, V.L.L.; Ng, K.Y. and Chang, E.C.: Live Memory Forensics of Mobile Phones.
Digital Investigation, Vol. 7, pp.74-82 (2010)
9. Sandoval Orozco, A.L.; Rosales Corripio, J.; Arenas González, D.M.; García Villalba, L.J.
and Hernández Castro, J.C.: Techniques for Source Camera Identification. Proceedings of
the 6th International Conference on Information Technology, pp.1-9 (2013)
10. Gloe, T.; Kirchner, M.; Winkler, A. and Bohme, R.: Can we Trust Digital Image
Forensics?.Proceedings of the 15th International Conference on Multimedia, pp.78-86
(2007)
11. Adams, J. and Pillman, B.: Digital Camera Image Formation: Introduction and Hardware.
Sencar, H.T. and Memon, N.: Digital Image Forensics. Springer, pp.3-44 (2013)
12. Lukas, J.; Fridrich, J. and Goljan, M.: Digital Camera Identification from Sensor Pattern
Noise. IEEE Transactions on Information Forensics and Security, Vol. 1, No.2, pp.205-214
(2006)
13. Böhme, R. and Kirchner, M.: Counter-Forensics: Attacking Image Forensics. Sencar, T.H.
and Memon, N.: Digital Image Forensics: There is More to a Picture than Meets the Eye.
Springer New York, pp.327-366 (2013)
14. Dirik, A.E.; Sencar, H.T. and Memon, N.: Analysis of Seam-Carving-Based
Anonymization of Images Against PRNU Noise Pattern-Based Source Attribution. IEEE
Transactions on Information Forensics and Security, Vol. 9, No.12, pp.2277-2290 (2014).
15. Goljan, M.; Fridrich, J. and Chen, M.: Defending Against Fingerprint-Copy Attack in
Sensor-Based Camera Identification. IEEE Transactions on Information Forensics and
Security, Vol. 6, No.1, pp.227-236 (2011)
16. Costa, F.D.O.; Eckmann, M.; Scheirer, W.J. and Rocha, A.: Open Set Source Camera
Attribution. Proceedings of the 25th Conference on Graphics, Patterns and Images, pp.71-
78 (2012)
17. Uhl, A. and Holler, Y.: Iris-Sensor Authentication using Camera PRNU Fingerprints.
Proceedings of the 5th IAPR International Conference on Biometrics, pp.230-237 (2012)
18. Hu, Y.; Li, C.T. and Zhou, C.: Selecting Forensic Features for Robust Source Camera
Identification. Proceedings of the International Computer Symposium, pp.506-511 (2010)
21
Analizador de Grafos para Redes de Afiliación
1 Introducción
Hay muchas maneras de describir matemáticamente los datos de redes sociales, entre
las notaciones se consideran: teoría de grafos, sociométrica, algebraica. Donde la
notación de teoría de grafos es útil sobre todo para los métodos de la centralidad y el
prestigio, las ideas de los subgrupos cohesivos. La notación sociométrica suele usarse
para el estudio de la equivalencia estructural y los modelos de bloque. La notación
algebraica es apropiada sobre todo para los análisis de rol y posición y las algebras
relacionales [2].
El sistema de notación grafo-teórica se puede considerar como una manera
elemental de representar los actores y las relaciones. Esta notación se emplea desde
finales de los años 40 para estudiar las redes sociales puesto que proporciona una
manera directa de referirse a los actores y a sus relaciones [2].
La notación sociométrica se relaciona con la primera, se presentan los datos en una
matriz bidimensional, llamada sociomatriz donde las filas y las columnas se refieren a
los actores que forman los pares. También las sociomatrices se definen como matrices
de adyacencia para grafos [2].
Notación grafo-teórica
Las redes se pueden representar como un grafo formado por nodos unidos por líneas.
Por ejemplo, supongamos que se cuenta con un conjunto de g actores N={n 1,n2,..,ng}
y también se tiene una relación simple donde se registra si cada actor se relaciona con
algún otro. Considerando un par ordenado de actores, n i y nj. El primer actor del par
ordenado se relaciona o no con el segundo actor. Si la relación es direccional, el par
de actores ni y nj es diferente a nj, ni.
Los elementos básicos que definen una red son esencialmente dos, los actores que
establecen las relaciones entre sí y estas relaciones; los primeros son representados
por puntos en la red o nodos y los segundos por líneas. Si los actores se describen
como nodos y sus relaciones como líneas entre pares de nodos el concepto de red
social pasa de ser una metáfora a una herramienta operativa analítica qué utiliza el
lenguaje matemático de la teoría de grafos, de la matrices y del álgebra relacional se
pueden construir múltiples tipos de redes, la mayoría se corresponden con redes de
modo-uno es decir aquellas en las que todos los actores pertenecen a un único
conjunto; un caso particular de redes de modo-dos son las denominadas redes de
afiliación[4].
La representación más sencilla de una red de afiliación es una matriz que registre la
afiliación de cada actor a cada acontecimiento, esta matriz a la cual llamaremos
matriz de afiliación codifica para cada actor los acontecimientos a los cuales cada
actor está afiliado, de igual modo registra para cada acontecimiento los actores
afiliados a él por lo tanto la matriz es una sociomatriz bimodal en la cual las filas
indexan a los actores y las columnas indexan a los acontecimientos. Dado que existen
g actores y h acontecimientos, la matriz es g x h y se pondrá un 1 en las celdas (i,j)-
ésimas si el actor de la fila i está afiliado con el acontecimiento de la columna j y un 0
si el actor de la fila i no está afiliado al acontecimiento j [4].
23
En la tabla 1 se muestra un ejemplo de una matriz de filiación para 6 niños y 3
fiestas donde el actor es el niño y los acontecimientos son las fiestas así es como
podemos ver que Antonio asistió a la fiesta 1 y a la fiesta 3 pero no a la fiesta 2.
25
Si existe entonces el grafo no es bipartito, en caso contrario si es bipartito (ver
ejemplo figura 3) y se podrán obtener la sociomatriz, el hipergrafo y el hipergrafo
dual.
Fig. 3.En el lado izquierdo se tiene un grafo y en el derecho el recorrido a lo profundo y sus
ciclos fundamentales, como son de longitud par, entonces el grafo si es bipartito.
3 Descripción de la aplicación
27
Fig. 6.Pantalla inicial del sistema
29
Fig. 9. Grafo que no representa una red de afiliación (no es bipartito)
Fig. 10. Grafo que no representa una red de afiliación de 100 nodos y 119 aristas
Referencias
31
Identificación de Cambios Estructurales en Imágenes
Satelitales Empleando PCNN
1 Introducción
1.1 PCNN
33
Fij (n) I ij (1)
p(i, j )
i 0 j 0
2
(7)
G 1 G 1
1
(G 1) 2
(i j )
i 0 j 0
2
p(i, j )
(8)
G 1 G 1
p(i, j ) log p(i, j ) (9)
i 0 j 0
Mide la aleatoriedad de los elementos de la matriz de co-ocurrencia. La entropía
es grande si los elementos de la matriz de co-ocurrencia son iguales. G es el número
de valores de grises que se van a usar en relación a los bits de la imagen. Para una
imagen de 8 bits G=256, i y j son las filas y columnas de la imagen, mientras que p (i,
j) es la sumatoria de los valores de la matriz en función de (i, j)
2 Desarrollo
35
Fig. 4. Imagen tomada en 2015.
2.2 Metodología
3 Resultados
37
Fig. 7. Valores de la región 1 donde si hay un cambio estructural.
4 Conclusiones
En función de los resultados obtenidos se puede observar en las figuras que los
valores correspondientes a la imagen actual son mayores a diferencia que los de la
imagen pasada, esto en otras palabras, nos dice que la implementación de éste método
si es factible para la identificación de cambios estructurales.
Como resultado de éstas pruebas preliminares se obtiene una eficiencia de un 85%
de detección de cambios, a comparación de usar otros métodos de análisis, como es el
caso de la matriz de co-ocurrencia que se obtuvo un 66.66% de promedio de aciertos.
Además, a comparación de que si se realizara el análisis de manera manual se
tendría menos efectividad, por lo cual si es factible la identificación de los cambios
haciendo uso del método de PCNN.
Referencias
1. Pajares Martinsanz, G.; de la Cruz García, J.:Visión por computador: Imágenes digitales y
aplicaciones. Madrid, España.Alfaomega. 2001.
2. Presutti, M.: La matriz de co-ocurrencia en la clasificación multiespectral: Tutorial para la
enseñanza de medidas texturales en cursos de grado universitario. 4° Jornada de
EducacaoemSensoriamento Remoto no Ambito do Mercosul, 11 a 13 de agosto de 2004.
3. Gong, L.; Li, Q.; Zhang, J.: Earthquake Building Damage Detection with Object-Oriented
Change Detection, IGARSS, 2013.
4. Castillo, A.; Vázquez, J.; Ortegón, J.; Rodríguez, C.: Prácticas de laboratorio para
estudiantes de ingeniería con FPGA. IEEE Latin América Transactions, Vol. 6, No. 2, junio
2008.
5. Gollamudi, A.; Calvin, P.; Yuen, G.; Bodruzzaman, M.; Malkani, M.: Pulse Coupled
Neural Network Based Image Classification. IEEE, 1998.
39
6. Ranganath, H.; Kuntimad, G.: Object Detection Usinf Pulse Coupled Neural Network.
IEEE Transactions on Neural Networks, Vol. 10, No. 3, Mayo 1999.
7. Mingliang, W.; Gang, Z.; Jiankang, H.; Yu, S.; Ling, S.: Edge detection for aluminum alloy
MIG welding pool based on pulse coupled neural network. Seventh International
Conference on Natural Computation. 2011.
8. Li, J.; Zou, B.; Ding, L.; Gao, X.: Image Segmentation with PCNN Model and Immune
Algorithm. Journal of Computer, Vol. 8, No. 9, Septiembre 2013.
9. Ma, H.R.; Cheng, X.W.: Automatic Image Segmentation with PCNN Algorithm Based on
Garyscale Correlation. International Journal of Signal Processing, Image Processing and
Pattern Recognition, Vol. 7, No. 5, pp. 249-258, 2014.
10. Ma, Y.; Zhan, K.; Wang, Z.: Applications of Pulse-Coupled Neural Networks. Springer.
2010.
Sensor de Temperatura, Humedad e Iluminancia con
Conexión a Internet basado en Arduino
1 Introducción
41
normales. El dispositivo puede ser instalado en cualquier espacio que cuente con una
fuente de energía eléctrica y señal de Wifi con seguridad WPA y WEB.
43
Fig. 4. Diagrama general del sistema.
4 Pruebas y Resultados
Fig. 6. Imagen del dispositivo desarrollado, se observa el display, así como el sensor
de temperatura y humedad en una de las esquinas.
45
Fig. 7. Captura de pantalla de las gráficas de luminosidad y humedad junto con losrangos
mínimos y máximos ajustables por el usuario.
Fig. 8.El usuario podrá ingresar requerimientos necesarios. En este caso puede configurar el
tiempo de muestreo del sistema.
5 Conclusiones
Referencias
1. Ditecom.http://www.ditecom.com/monitorizacion_IP/hgw-ste-termometro-ip.shtml (rev.
01/06/2014).
2. Biosistemas.http://www.biosistemas.com.uy/producto/sistema-de-monitoreo-de-temperatura
(rev. 01/06/2014).
3. Arduino. http://www.arduino.cc/ (revisado 20/01/2014).
4. ArduinoBoardMega, http://arduino.cc/en/Main/arduinoBoardMega (rev. 20/01/2014).
5. Xively con Arduino http://xively.com/dev/tutorials/arduino_wifi/ (rev. 27/01/2013).
47
Clasificador DD para Datos Funcionales
1 Introducción
2 La clasificación supervisada
Cuando conocemos una muestra de elementos bien clasificados que sirve de pauta o
modelo para la clasificación de nuevas observaciones, se utilizan técnicas que se
agrupan bajo el nombre de clasificación supervisada.
El tratamiento del problema de clasificación tiene su origen en el campo de la
estadística. El científico británico K. Pearson, en 1921, en un trabajo con datos
antropométrico, propuso un coeficiente “C” que midiera la distancia entre dos
poblaciones. En 1925, el estadístico hindú P.C. Mahalonobis propuso el coeficiente
D2 que generalizaba la distancia entre dos poblaciones y se conoce como “medida de
distancia generalizada”. En 1936, el estadístico inglés R. Fisher publicó su primer
trabajo sobre Funciones Discriminantes. El enfoque de Fisher no fue medir
“distancias” entre poblaciones, sino clasificar un valor de una muestra en alguna de
dos poblaciones teóricas, usando para ello, la información de dos o más variables
observables [4].
A partir de estos primeros resultados, las técnicas de discriminación se fueron
desarrollando paralelamente con el desarrollo de la computación, existiendo en la
actualidad gran cantidad de herramientas computacionales que permiten
clasificaciones y predicciones de gran precisión.El desarrollo del aprendizaje
estadístico y, en particular, el de la clasificación supervisada, basado en funciones
kernel es, hasta 2000, paralelo al surgimiento y desarrollo de las support vector
machines.Tras la llegada de las funciones kernel al ámbito del aprendizaje estadístico
a través de las supportvector machines, los últimos años han sido testigo de la
proliferación de procedimientos de clasificacióncentrados en la kernelización de las
técnicas lineales y no lineales más conocidas.
Los procedimientos de detección de patrones basados en funciones kernel son, en
esencia, métodos de detección de patrones lineales que gozan de todas las ventajas
que se buscan en estos algoritmos, entre ellos, sencillez, estabilidad en la solución, y
eficiencia computacional [2].
• Una función Φ: X →F que incrusta (embeds) cada elemento del input space X en
elfeature space F . Esta función Φrecibe el nombre de incrustación (embedding).
49
imágenes de loselementos de X , es decir, <Φ(x),Φ(z) >∀x , z∈X , siendo <· , ·>:
F×F→ℝelproducto escalar definido en F al que se ha aludido previamente.
• Una función real definida sobre el producto cartesiano del input space con él
mismok : X×X → ℝ, llamada función kernel, que a cada pareja de elementos del
input spaceX le hace corresponder el producto escalar en F de sus respectivas
imágenes por lafunción Φ, es decir que:
Este sencillo esquema proporciona una inteligente solución al dilema entre los
algoritmos de detección de patrones lineales o no lineales, reuniendo en un nuevo
enfoque las mejores características de cada uno [2].
En otras palabras, la elección de la función kernel es la que va a determinar qué
patrones cabe esperar en el input space.
En la última década, los métodos basados en kernels se incluyen en una rama de la
Estadística conocida como el Análisis de Datos Funcionales, permitiendo utilizar las
herramientas computacionales desarrolladas en lenguaje R [3].
Las reglasde clasificación incluyen, pero no se limitan, al análisis de
discriminación lineal, al análisis de discriminante cuadrático, y al análisis de k-
vecinos más cercanos, entre otros.
Los procedimientos citados [4], dado que no se basan en el supuesto de normalidad
multivariada de las variables consideradas (como es el enfoque clásico debido a
Fisher), se conocen como procedimientos no paramétricos.
El análisis de discriminación lineal (lda) es el caso más simple, ya que considera
que todas las matrices de covarianza poblacional son iguales, aunque no se conocen.
Una observación se clasifica en un grupo si la distancia (generalmente de
Mahalanobis) de una observación al centro del grupo es la mínima. El “lda” tiene la
propiedad de simetría, esto es, la función discriminante lineal del grupo i evaluada
con la media del grupo j es igual a la función discriminante lineal del grupo j evaluada
con la media del grupo i.
En el análisis de discriminación cuadrática (QDA) no es necesario hacer la
suposición de igualdad de las matrices de covarianza poblacional, y al igual que en el
discriminante lineal, una observación se clasifica en un grupo con la distancia más
pequeña; pero no es simétrica y entonces la función discriminante cuadrática del
grupo i evaluada con la media del grupo j no es igual a la función discriminante
cuadrática del grupo j evaluada con la media del grupo i.
El análisis de discriminación del vecino más cercano (knn) no depende de que los
datos estén distribuidos normalmente, sino interesa las distancias entre las parejas de
vectores de observaciones. La idea básica es la siguiente: para una nueva observación
que deba clasificarse, debe encontrarse, primero, la observación del conjunto de
datos que esté más cercana a esa nueva observación y segundo, debe asignarse la
nueva observación al grupo del que proviene los k vecinos más cercanos.
Otras ideas, en vez de distancias, han surgido para trabajar con estos
procedimientos [5] [6] y [7].
2.2 Clasificadores DD
La base de datos IRIS fue introducida por R. Fisher en 1936 y ha sido muy utilizada
en la literatura referida a problemas de clasificación supervidada. La base muestra
datos de lirios de tres especies: IRIS setosa, IRIS versicolor e IRIS virgínica.
Representa una muestra de 150 plantas ylas variables aleatorias observadas, en
centímetros, son medidas sobre el sépalo y el pétalo de esos lirios, a saber, longitud
del sépalo, ancho del sépalo, longitud del pétalo y ancho del pétalo.
Los comandos a utilizar del paquete fda. usc[3], en el caso de la profundidad “RP”
y el clasificador “ lda” son los siguientes:
51
La salida típica del programa brinda las probabilidades de clasificación correcta
por grupo y total. Obsérvese en la tabla 1, que las seis posibilidades desarrolladas
muestran altas probabilidades de clasificación correcta. Las combinaciones de la
medida de profundidad RP con los clasificadores QDA yknnpresentan casi el 99% de
clasificación correcta. Esto ocurre también con la profundidad de Mahalanobis
combinado con el lda y knn. El resultado señala la bondad del clasificador knn con
cualquiera de las dos medidas de profundidad.
En la columna central de la tabla 1 se destaca que las IRIS setosa son siempre
bien clasificadas.
.
La tabla 2 muestra las matrices de confusión, que son tablas cruzadas de dos
entradas: en una entrada se dan las frecuencias verdaderas de cada especie, mientras
que en la otra entrada se dan las frecuencias estimadas por el análisis de clasificación
utilizado. Obsérvese que las 50 IRIS setosa son clasificadas siempre correctamente,
ya que la frecuencia 50 aparece en el primer elemento de la diagonal de cada matriz
de confusión.
DD-plot(RP,lda)
0.1 0.2 0.3 0.4 0.5
0.0 0.1 0.2 0.3 0.4 0.5 0.6
x.RP.setosa
Points
setosa Classif y
versicolor good
virginica bad
0.5
x.RP.versicolor
0.4
0.3
0.2
Points
setosa Classif y
0.1
versicolor good
virginica bad
0.5
x.RP.virginica
0.4
0.3
0.2
Points
setosa Classif y
0.1
versicolor good
virginica bad
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.1 0.2 0.3 0.4 0.5
53
DD-plot(RP,qda)
0.1 0.2 0.3 0.4 0.5
Points
setosa Classif y
versicolor good
virginica bad
0.5
x.RP.versicolor
0.3 0.4
0.1 0.2
Points
setosa Classif y
versicolor good
virginica bad
x.RP.virginica
0.4
0.3
0.2
Points
setosa Classif y
0.1
versicolor good
virginica bad
DD-plot(RP,knn)
0.1 0.2 0.3 0.4 0.5
Points
setosa Classif y
versicolor good
virginica bad
0.5
x.RP.versicolor
0.4
0.3
0.2
Points
setosa Classif y
0.1
versicolor good
virginica bad
0.5
x.RP.virginica
0.4
0.3
0.2
Points
setosa Classif y
0.1
versicolor good
virginica bad
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.1 0.2 0.3 0.4 0.5
x.MhD.setosa
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
x.MhD.versicolor
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
x.MhD.virginica
Points
setosa Classif y
versicolor good
virginica bad
0.0 0.2 0.4 0.6 0.0 0.1 0.2 0.3 0.4 0.5
DD-plot(M hD,qda)
0.0 0.2 0.4 0.6
x.MhD.setosa
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
x.MhD.versicolor
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
Points
setosa Classif y
versicolor good
virginica bad
0.0 0.2 0.4 0.6 0.0 0.1 0.2 0.3 0.4 0.5
DD-plot(MhD,knn)
0.0 0.2 0.4 0.6
x.MhD.setosa
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
x.MhD.versicolor
0.6
0.4
Points
0.2
setosa Classif y
versicolor good
virginica bad
0.0
Points
setosa Classif y
versicolor good
virginica bad
0.0 0.2 0.4 0.6 0.0 0.1 0.2 0.3 0.4 0.5
Fig.2. Medida de profundidad MhD con los clasificadores lda, qda y knn
3 Conclusiones
Referencias
1. Ramsay J, Silverman B (2005). Functional Data Analysis. Springer. New York. EU.
2. Gibaja - Martíns JJ (2010). Aprendizaje Estadístico con Funciones Kernel. Tesis de
Maestría UNED. España.
3. Febrero - Bande M, Oviedo de la Fuente M. (2012) Statistical computing in functional data
analysis: the R package fda.usc. J Stat Softw 51(4):1 -28.
55
4. Linares, G. (2006). Análisis de Datos Multivariados. Editorial de la Benemérita
Universidad de Puebla. México.
5. Liu RY, Parelius JM, Singh K (1999) Multivariate analysis by data depth: descriptive
statistics, graphics and inference. Ann Statist 27(3):783 - 858.
6. Ghosh AK, Chaudhuri P (2005). On maximum depth and related classifiers. Scand J Statist
32(2):327- 350.
7. López - Pintado S, Romo J (2009). On the concept of depth for functional data. J Amer
Statist Assoc 104(486):718 – 734
8. Li J, Cuesta - Albertos JA, Liu RY (2012) DD - Classifier: Nonparametric classification
procedure based on DD - plot. J Amer Statist Assoc 107(498):737-753.
9. Ieva F, Paganoni AM (2013) Depth measures for multivariate functional data. Comm
Statist-Theory Methods 42(7):1265 - 1276.
10. Galeano P, Esdras J, Lillo RE (2015) The Mahalanobis Distance for Functional Data With
Applications to Classification. Technometrics (57)2:281-291.
Control Acotado de la Orientación de un Helicóptero
con Cuatro Rotores.
1 Introducción
En los últimos años un creciente interés por los vehículos aéreos no tripulados se ha
mostrado en la comunidad científica. Este interés se centra en el control, modelado y
diseño de este tipo de vehículos. Particularmente el helicóptero de cuatro rotores ha
destacado entre los demás, debidos a su capacidad de realizar vuelos verticales,
estacionarios, y a baja velocidad. Este vehículo de despeje y aterrizaje vertical tiene
varias aplicaciones tanto militares como civiles, algunas de estas aplicaciones son
tareas de búsqueda, rescate, vigilancia, espionaje, filmación cinematográfica e
inspección en situaciones donde se realicen vuelos en condiciones hostiles.
La dinámica del helicóptero de cuatro rotores es sub-actuada, cuenta con cuatro
entradas de control y seis grados de libertad. Sin embargo, su dinámica se puede
descomponer en dos subsistemas, el subsistema de rotación y el subsistema de
traslación. Estos subsistemas están acoplados en cascada ya que el subsistema de
traslación depende del subsistema de rotación, y el subsistema de rotación es
independiente del subsistema de traslación. El control de vuelo de bajo nivel llamado
control de la orientación, es aquel que estabiliza al subsistema de rotación y permite
mantener al vehículo en una pose deseada, además de prevenir que se voltee o se
estrelle [3].
Varias técnicas de control han sido utilizadas para la estabilización de la
orientación del helicóptero de cuatro rotores, por ejemplo, en [5] se presentó una
estrategia de control basada en funciones de Lyapunov y un controlador para
estabilizar la altura, en [6] se realizó una comparación entre dos técnicas de control:
PID y LQ, donde el control PID resultó ser más eficaz, en [7] se presentaron dos
técnicas de control Backstappingy Sliding-Mode, en [8] se presentó un control por
retroalimentación de estados, además de un estimador para calcular los parámetros del
viento.Más recientemente se han utilizadotécnicas de control las cuales toman en
cuenta el problema de saturación en los actuadores, por ejemplo en [9], se presentó
un control basada en la técnica de saturaciones anidadas, en [10] se presentó una ley
de control para estabilizar cualquier sistema que clasifique como un cuerpo rígido,
esta ley de control se aplica experimentalmente a un helicóptero de cuatro rotores.
En este artículo se presenta una manera general de abordar el problema de la
orientación del helicóptero de cuatro rotores, se diseña el algoritmo de control basado
en la energía potencial de la aeronave, y se demuestra la estabilidad asintótica del
punto de equilibrio mediante una función de energía o función candidata de
Lyapunov, la cual está compuesta por la energía cinética y potencial de la aeronave.
57
Empleando el principio de invariancia de Lasalle se demuestra la estabilidad
asintótica del punto de equilibrio en forma global.
Se diseña una ley de control con acciones acotadas, tomando en cuenta los límites
físicos de los actuadores y así evitar su saturación.
El artículo está organizado como sigue: en la sección 2 se presenta el modelo
matemático del helicóptero de cuatro rotores, se describe en la sección 3 la
metodología utilizada para abordar el problema de la orientación, además de la prueba
de estabilidad, en la sección 4 se presenta el diseño del control acotado, las
simulaciones se presentan en la sección 5, y finalmente se discuten las conclusiones
en la sección 6.
El vector 𝜉 = [𝑥𝑦𝑧]𝑇 es la posición del centro de masa del helicóptero con respecto al
sistema inercialE.
La rotación de un cuerpo rígido en el espacio, se realiza a través de tres rotaciones
sucesivas en torno a los ejes del sistema móvil en el cual están definidos. La matriz de
rotación completa está dada por (1).
𝑐𝜓 𝑐𝜃 −𝑠𝜓 𝑐𝜙 + 𝑐𝜓 𝑠𝜃 𝑠𝜙 𝑠𝜓 𝑠𝜙 + 𝑐𝜓 𝑠𝜃 𝑐𝜙
𝑅 = [𝑠𝜓 𝑐𝜃 𝑐𝜓 𝑐𝜙 + 𝑠𝜓 𝑠𝜃 𝑠𝜙 −𝑐𝜓 𝑠𝜙 + 𝑠𝜓 𝑠𝜃 𝑐𝜙 ] (1)
−𝑠𝜃 𝑐𝜃 𝑠𝜙 𝑐𝜃 𝑐𝜙
𝜉̇ = 𝑅 ∙ 𝑉 (2)
La ecuación (3) relaciona la velocidad angular definida enB la cual está denotada
por el vector𝜔 = [𝑝0 𝑞0 𝑟0 ]𝑇 , con la derivada con respecto al tiempo de la posición
angular 𝜂 = [∅ 𝜃𝜓]𝑇 definida en E,
𝜂̇ = 𝐋(𝜂) ∙ 𝜔 (3)
1 𝑠𝜙 𝑡𝜃 𝑐𝜙 𝑡𝜃
𝐋(η) = [0 𝑐𝜙 −𝑠𝜓 ] (4)
0 𝑠𝜙 ⁄𝑐𝜃 𝑐𝜙 ⁄𝑐𝜃
La cinemática del cuadricóptero está representada por medio de las ecuaciones (2)
y (3), las cuales describen el movimiento de traslación y de rotación respectivamente.
La dinámica de un cuerpo rígido bajo fuerzas externas aplicadas en su centro de
masa y expresado en Bestá dado por las ecuaciones(5) y (6).
𝑚𝑉̇ + 𝜔 × 𝑚𝑉 = 𝐹 (5)
𝐹𝜔̇ + 𝜔 × 𝐽𝜔 = 𝜏 (6)
59
Donde el símbolo × denota el producto cruz, 𝐽 = 𝑑𝑖𝑎𝑔{𝐼𝑥𝑥 , 𝐼𝑦𝑦 , 𝐼𝑧𝑧 }es una matriz
diagonal inercial, F y τ son la suma de todas las fuerzas y pares externos aplicados al
helicóptero de cuatro rotores.
Rescribiendo las ecuaciones que definen la cinemática y la dinámica de la aeronave
en variables de estado, tenemos:
𝜉̇ = 𝜈
𝑚𝜈̇ = 𝑅 · 𝐹
{ (7)
𝑅̇ = 𝑅 · 𝑆(𝜔)
𝐽𝜔̇ = −𝜔 × 𝐽𝜔 + 𝜏
𝑅 ∙ 𝐹 = −𝑚𝑔 ∙ 𝐸3 + 𝛤 + 𝐴 𝑇 (8)
𝜏 = − ∑4𝑖=1 𝐽𝑅 (𝜔 × 𝐸3 ) ∙ Ω𝑖 + 𝜏𝑎 + 𝐴𝑅 (9)
Donde Γ es el empuje total debido a la suma de los empujes de los cuatro motores,
como se muestra en (10), 𝐴 𝑇 = [𝐴𝑥 𝐴𝑦 𝐴𝑧 ]𝑇 y 𝐴𝑅 = [𝐴𝑝 𝐴𝑞 𝐴𝑟 ]𝑇 son el resultado de las
fuerzas y momentos que actúan sobre el cuadricóptero, son calculados a partir de los
1
coeficientes aerodinámicos 𝐶𝑖 , por ejemplo, 𝐴 𝑇 = 𝜌𝑎𝑡𝑟 𝐶𝑖 𝑊 2 , (𝜌 es la densidad del
2
aire, W es la velocidad del cuadricóptero con respecto al viento), g es la constante
gravitacional, Ω𝑖 es la velocidad angular del i-ésimo rotor y 𝜏𝑎 = [𝜏∅ 𝜏𝜃 𝜏𝜓 ]𝑇 son los
pares de control aplicado en los tres ejes del cuadricóptero. Estos pares de control se
muestran en (11).
𝜏∅ 𝑙𝑏(Ω2 2 − Ω4 2 )
𝜏
𝜏𝑎 = [ 𝜃 ] = [ 𝑙𝑏(Ω3 2 − Ω1 2 ) ](11)
𝜏𝜓 2 2 2 2
𝑑(Ω1 + Ω3 − Ω2 − Ω4 )
𝑥̇ = 𝑢
𝑦̇ = 𝑣
𝑧̇ = 𝑤
(𝑐∅ 𝑠𝜃 𝑐∅ +𝑠𝜓 𝑠∅ )Γ 𝐴𝑥
𝑢̇ = + (12)
𝑚 𝑚
(𝑠𝜓 𝑠𝜃 𝑐∅ −𝑐𝜓 𝑠∅ )Γ 𝐴𝑦
𝑣̇ = +
𝑚 𝑚
(𝑐Ѳ 𝑠∅ )Γ 𝐴𝑧
{ 𝑤̇ = −𝑔 + 𝑚
+
𝑚
∅̇ = 𝑝 + 𝑞𝑠∅ 𝑡𝜃 + 𝑟𝑐∅ 𝑡𝜃
𝜃̇ = 𝑞𝑐∅ − 𝑟𝑠∅
𝜓̇ = 𝑞𝑠∅ 𝑠𝑐𝜃 + 𝑟𝑐∅ 𝑠𝑐𝜃
𝐼𝑌𝑌 −𝐼𝑌𝑌 𝐽𝑅 Ω 𝜏∅ 𝐴𝑝
𝑝̇ = 𝑞𝑟 − 𝑞+ + (13)
𝐼𝑋𝑋 𝐼𝑋𝑋 𝐼𝑋𝑋 𝐼𝑋𝑋
𝐼𝑍𝑍 −𝐼𝑋𝑋 𝐽𝑅 Ω 𝜏𝜃 𝐴𝑞
𝑞̇ = 𝑝𝑟 − 𝑝+ +
𝐼𝑌𝑌 𝐼𝑌𝑌 𝐼𝑌𝑌 𝐼𝑌𝑌
𝐼𝑍𝑍 −𝐼𝑋𝑋 𝜏𝜓 𝐴𝑟
{ 𝑟̇ = 𝑝𝑞 + +
𝐼𝑌𝑌 𝐼𝑌𝑌 𝐼𝑌𝑌
𝑀𝐵 𝜔̇ + 𝐶(𝜔)𝜔 = 𝜏𝑎 (14)
𝐼𝑋𝑋 0 0
𝑀𝐵 = [0 𝐼𝑌𝑌 0 ] (15)
0 0 𝐼𝑍𝑍
0 𝐼𝑍𝑍 𝑟𝑜 −𝐼𝑌𝑌 𝑞𝑜
C(ω) = [−𝐼𝑍𝑍 𝑟𝑜 0 𝐼𝑋𝑋 𝑝𝑜 ] (16)
𝐼𝑌𝑌 𝑞𝑜 −𝐼𝑋𝑋 𝑝𝑜 0
61
𝑀𝐵 𝓆̈ + 𝐶(𝓆̇ )𝓆̇ = 𝜏𝑎 (17)
𝓆 = 𝑓𝑥 −1 (𝜂) (18)
𝑑 −1 𝜕𝑓𝑥 −1
𝓆̇ = 𝑓𝑥 (𝜂) = (𝜂)𝜂̇ = 𝐿−1 (𝜂)𝜂̇ (19)
𝑑𝑡 𝜕𝜂
𝜏𝑎 = 𝑀𝐵 [𝐿−1 (𝜂)𝜂̈ − [𝐿−1 (𝜂)𝐿̇ (𝜂)𝐿−1 (𝜂)]𝜂̇ ] + 𝐶(𝐿(𝜂)𝜂̇ )𝐿−1 (𝜂)𝜂̇ (21)
𝑓𝜂 = (𝑀𝜂 𝜂̈ + 𝐶𝜂 𝜂̇ ) (24)
𝜕
𝑉̇ (𝓆̇ , 𝓆̃) = 𝓆̇ 𝑇 𝑀𝐵 𝓆̈ − 𝑈𝑎 (𝑘𝑝 , 𝓆̃)𝑇 𝓆̇ (30)
𝜕𝓆̃
𝑉̇ (𝓆̇ , 𝓆̃) = 𝓆̇ 𝑇 (𝛥𝑈𝑎 (𝑘𝑝 , 𝓆̃) − 𝑓𝑣 (𝑘𝑣 . 𝓆̇ ) − 𝐶(𝓆̇ )𝓆̇ ) − 𝛥𝑈𝑎 (𝑘𝑝 , 𝓆̃)𝑇 𝓆̇ (31)
como 𝓆̇ 𝑇 𝐶(𝓆̇ )𝓆̇ =0, debido a que 𝐶(𝓆̇ ) es una matriz anti-simétrica, 𝑀𝐵 es constante
y por lo tanto su derivada es cero, finalmente la derivada temporal queda de la
siguiente forma:
𝑉̇ (𝓆̇ , 𝓆̃) = 𝓆̇ 𝑇 𝑓𝑣 (𝑘𝑣 . 𝓆̇ )< 0 (32)
𝓆̃
Ʊ = {[ ] ∈ ℝ2𝑛 : 𝑉̇ (𝓆̇ , 𝓆̃) = 0 ⇔ 𝓆̇ = 0 ^𝓆̃ = 0} (33)
𝓆̇
Puesto que 𝑉(𝓆̇ , 𝓆̃) es una función definida positiva con un único y mínimo global
[𝓆̃𝑇 𝓆̇ 𝑇 ]𝑇 = 0, entonces el máximo conjunto invariante en Ʊ es el origen. Por lo tanto
hemos demostrado estabilidad asintótica del punto de equilibrio.
𝜏𝑖 ≤ 𝜏𝑖 𝑚𝑎𝑥 (34)
63
Para la simulación de la ley de control se utilizan los parámetros que se muestran en
la Tabla 1.
donde Γ max es el empuje máximo dado por la suma de los pares de cada uno de los 4
motores.
Considere la siguiente ley de control dada por (35),
𝑑 𝓆̃ −𝓆̇
[ ] = [ −1 ] (38)
𝑑𝑡 𝓆̇ 𝑀𝐵 [𝑘𝑝 atan(𝛬𝓆̃) − 𝑘𝑣 atan(Ƴ𝓆̇ )] − 𝐶(𝓆̇ )𝓆̇
𝑤
[𝑤𝑧̇̇ ] = [ (𝑐 𝑠 )Γ 𝐴 ] (42)
−𝑔+ Ѳ ∅ + 𝑧
𝑚 𝑚
Donde z representa la altura de la aeronave con respecto al sistema inercial E.
Utilizaremos una retroalimentación de estados para linealizar al sistema definido en
(42).
Considere la siguiente ley de control:
(𝑟1 +𝑚𝑔−𝐴𝑧 )
Γ= (43)
𝑐Ѳ 𝑠∅
donde 𝑟1 esta definido como:
𝑟1 = 𝑘𝑝 atan(𝑧̃) − 𝑘𝑣 atan(𝑤) (44)
Se muestran las simulaciones obtenidas por la ley de control, para las simulaciones se
utilizaron los parámetros de la Tabla 1. La Fig. 4 muestra la estabilización de la
orientación deseada η𝑑 = [0 0 0]𝑇 , partiendo de condiciones iniciales η𝑑 =
[37° −19° −50° ]𝑇 .
65
Fig. 5. Evolución de los pares de control.
6 Conclusiones.
Referencias
1. Fantoni, I.; Lozano, R. Nonlinear Control for Underactuated Mechanical Systems. TS-
pringer, (1995).
2. Guerrero-Castellanos, J.F.; Téllez-Guzmán, J.J.; Durand, S.; Marchand, N.; Alvarez-Muñoz,
J.U.; González-Díaz, V.R.: Attitude Stabilization of a Quadrotor by Means of Event-
Triggered Nonlinear Control, Journal of Intelligent and Robotics Systems, Vol. 73, pp. 123-
135, (2014).
3. Tayerabi A.; McGilvray S.: Attitude stabilization of a four-rotor aerial robot. In proc. 43rd
IEEE Conf. Decision and Control, pp. 1216-1221 (2004).
4. Lizarraide, F; Wen, J.T.: Attitude control without angular velocity measurement: A passivity
approach. IEEE Trans. Autom. Control, Vol. 41, No. 3, pp. 468-472 (1996).
5. Bouabdallah, S.; Siegwart, R: Design and Control of an Indoor Micro Quadrotor. In Proc.
IEEE Int. Conf. on robotics and automation, Vol. 5,pp. 4393-4398 (2004).
6. Bouabdallah, S.; Ñoth, A.; Siegwart, R.: PID vs LQ Control Techniques Applied to an
Indoor Micro Quadrotor. In Proc. IEEE Int. Conf. on Intelligent Robots and Systems, Vol. 3,
pp 2451-2456 (2004).
7. Bouabdallah, S.; Siegwart, R.: Backstepping and Sliding-mode Techniques Applied to an
Indoor Micro Quadrotor. In Proc. IEEE Int. Conf. on robotics and automation, pp. 2259-
2264 (2005).
8. Mokhtari, A.; Benallegue, A.: Dynamic feedback controller of Euler angles and wind
parameters estimation for a quadrotor unmanned aerial vehicle, IEEE Int. Conf. on robotics
and automation (ICRA’04), pp. 2360-2366 (2004).
9. Castillo, P.; Dzul, A.; Lozano, R.: Real-Time stabilization and tracking of a four rotor mini
rotorcraft. IEEE Trans. Control System Technol., Vol. 12, No. 4, pp. 510-516 (2004).
10. Guerrero-Castellanos, J.F.; Marchand, N.; Hably, A.; Lesecq, S.; Delamare, J.: Bounded
attitude control of rigid bodies: Real-time experimentation to a quadrotor mini helicopter.
Control Engineering practice, Vol.19, pp. 790-79 (2011).
11. Craig, J.J.: Introduction to Robotics – Mechanics and Control, Addison-Wesley Publishing
Company, (1989).
67
Aplicación de Técnicas de Minería de Datos para
Predicción de Desempeño Académico
1 Introducción
La minería de datos es una fase del proceso de extracción del conocimiento (KDD
Knowledge Discovery from Data) [6], El KDD es un proceso no trivial de identificar
patrones potencialmente útiles y comprensibles a partir de los datos [7].
Las tareas de la minería de datos son predictivas y descriptivas. La clasificación es
una tarea predictiva, esta consiste en encontrar un modelo que describa o distinga
clases de datos, para que posteriormente sea capaz de predecir la clase de datos a la
cual pertenece un objeto, cuya etiqueta de clase se conoce. El modelo se obtiene del
análisis de un conjunto de datos de entrenamiento, este modelo se puede representar
mediante reglas IF THEN, árboles de decisión, redes neuronales [8].
Un árbol de decisión es un diagrama con una estructura de árbol, donde cada nodo
interno representa una decisión en un atributo, cada rama representa una salida de la
decisión, cada hoja representa una etiqueta de clase. El nodo más alto representa la
raíz del árbol [8].
1.3 Metodología
69
La muestra es no probabilística o dirigida [12], se eligió por conveniencia a los
alumnos de nuevo ingreso de las licenciaturas de: Ingeniería en Alimentos, Ingeniería
en Acuacultura, Administración, Informática Administrativa, Derecho y Enfermería
de las cohortes generacionales 2010 a 2012 de la División Académica
Multidisciplinaria de los Ríos que contestaron el EDAOM. La población de las
cohortes de 2010 a 2012 es de 608 alumnos de nuevo ingreso. La muestra está
compuesta por 316 alumnos, la Tabla 3.1 muestra la cantidad de alumnos de nuevo
ingreso que componen la muestra.
Variables
Horas trabajadas a la semana, Estudios alcanzados,
Con quien vive, Escolaridad de la madre,
Escolaridad del padre, Licenciatura cursada,
Género, Edad, Promedio de Bachller, Reprobó,
Rendimiento.
Variables del EDAOM:
Selectiva_T, Generativa_T, Recuperación ante
tareas, Recuperación ante exámenes,Convergente,
Divergente, Eficacia, Contingencia, Autonomía,
Aprobación, Logro, Tareas, Material
Se obtuvo un total de 24 atributos y 299 instancias. Para esta fase se utilizan los
algoritmos de árboles de decisión J48, utilizando la validación cruzada.
Al utilizar el evaluador CfsSubsetEval con el método de búsqueda de los mejores
atributos, se obtuvo que los mejores atributos para predecir si un alumno reprueba en
el primer año escolar son: Con quien vive (Ambos Padres, Padre, Madre, Ninguno),
El promedio de bachiller, Rendimiento (promedio de calificaciones), Material.
71
3 Conclusiones trabajos futuros
Referencias
1. Peña, E., 3er Informe de Gobierno 2013 – 2014. Presidencia de la Republica pp 252-281
(2014)
2. ANUIES. La Educación Superior en el Siglo XXI. Líneas estratégicas de desarrollo. Una
propuesta de la ANUIES. pp 212 (2000)
3. Romo, A.: La incorporación de los programas de tutorías en las instituciones de educación
superior. Asociación Nacional de Universidades e Instituciones de Educación Superior pp
11-12,15 (2004)
4. Eckert, K., Suénaga, R.: Aplicación de técnicas de Minería de Datos el análisis de situación
y comportamiento académico de alumnos de la UGD. Repositorio Institucional de la
Universidad Nacional de la Plata
http://sedici.unlp.edu.ar/bitstream/handle/10915/27103/Documento_completo.pdf?sequence
=1 (2015). Accedido el 20 de junio de 2015.
5. Quadril, M.N.; Kalyankar, N.V. : Drop Out Feature of student Data for Acadmeic
Performance Using Decision Tree Techniques. Global Journal of Computer Science and
Technologyhttp://computerresearch.org/index.php/computer/article/view/891/890 (2010).
Accedido el 15 de Agosto de 2015
6. Han, J.; Kamber, M.: Data minning: Conceptos and Tecniques. 3era Edición, USA, Elsevier
(2012)
7. Fayyad, U.; Piatetsky-Shapiro, G.;Smyth, P.: From data mining to knowledge discovery in
databases. AI magazine, vol. 17, no 3, p. 37 http://dx.doi.org/10.1609/aimag.v17i3.1230
(1996). Accedido el 15 de junio de 2015
8. Han, J.; Kamber, M.: Data minning: Conceptos and Tecniques. United States of America:
Morgan Kaufmann Publishers (2006)
9. Márquez, C.; Romero, C.; Ventura, S.: Predicción del Fracaso Escolar mediante Técnicas de
Minería de Datos. IEEE-RITA, Vol. 7, Num. 3 ()
http://rita.det.uvigo.es/201208/uploads/IEEE-RITA.2012.V7.N3.A1.pdf (2012). Accedido
el 10 de junio de 2015.
10. Porcel E.; Dapozo G;, López M.V.: Modelos Predictivos y técnicas de minería de datos
para la identificación de factores asociados al rendimiento académico de alumnos
universitarios.En: XI Workshop de Investigadores en Ciencias de la
Computación. http://hdl.handle.net/10915/19846 (2009). Accedido el 01 de junio de 2015
11. Alcover, R.; Benlloch, J.; Blesa, P.; Calduch, M. A.; Celma, M.; Ferri, C.; Hernández –
Orallo, J.; Iniesta L.; Mas J.; Ramírez – Quintana, M.J.; Robles A.; Valiente J.M.; Vicent
M.J.; Zúnica, L. R.: Análisis del rendimiento académico en los estudios de informática de la
Universidad Politécnica de Valencia aplicando técnicas de minería de datos. In: XIII
Jornadas de Enseñanza universitaria de la Informática. Teruel, España, http://bioinfo. uib.
es/~ joemiro/aenui/procJenui/Jen2007/alanal. pdf.[Links] (2007). Accedido el 10 de abril de
2015
12. Hernández, R.; Fernández, C.; Baptista, M.P.: Metodología de la Investigación. McGraw-
Hill. 5ta Ed (2010)
13. Hall M.; Frank E.; Holmes G.; Pfahringer B.; Reutemann P.; Witten Ian H.:The WEKA
Data Mining Software: An Update, SIGKDD Explorations, Volume 11, Issue 1.(2009)
14. Molina, J. M.; y García J.: Técnicas de análisis de datos. Aplicaciones Prácticas utilizando
Microsoft Excel y WEKA. Universidad Carlos III de Madrid. http://ocw.uc3m.es/ingenieria-
informatica/analisis-de-datos/libroDataMiningv5.pdf (2012) Accedido el 20 de agosto de
2016
73
Clasificador Bayesiano Ingenuo en RapidMiner
1 Introducción
Clasificar cosas es parte de la vida desde que se es pequeño. Este proceso está
implícito en muchas de nuestras actividades cotidianas, se clasifica la fruta como
verde o madura, un auto como último modelo o clásico, el médico clasifica a los
pacientes con base en ciertos estudios o valoraciones físicas como apto o no apto para
realizar una cirugía, etc. Catalogar objetos en distintas clases, a partir de un criterio
determinado, es sumamente común, y muchas veces necesario.
Hoy en día, con las tecnologías de la información relacionadas casi a todos los
aspectos de la vida diaria, se puede tener acceso a grandes cantidades de información
que guardan las características más comunes para clasificar objetos.
Debido a esto, se necesitan herramientas que faciliten el proceso de clasificación
de grandes cantidades de información, y que sea relativamente fácil catalogar
personas u objetos con base en ciertos criterios. Una propuesta es el Clasificador
Bayesiano Ingenuo (CBI), conocido también como Naive Bayes, que toma las
características de cada objeto y supone que todas ellas son independientes entre sí y
no afectan en la clasificación, además, los datos tienen una distribución normal; y por
último, sólo requiere una pequeña cantidad de datos de entrenamiento para lograr un
resultado exitoso.
Existen algunas aplicaciones para utilizar el CBI, una alternativa es RapidMiner,
una aplicación de software libre, que tiene una interfaz sencilla y ofrece una gran
cantidad de operadores no sólo para clasificación, sino para otras técnicas de análisis
y minería de datos.
El presente artículo está organizado de la siguiente manera: en la sección 2 se
describe la clasificación y dos de sus principales algoritmos, Clasificador Bayesiano
Ingenuo (CBI) y CBI-Kernel, en la sección 3 se describe el software de minería de
datos RapidMiner, en la sección 4 se muestran los experimentos y resultados
obtenidos, en la sección 5 se presentan las conclusiones y finalmente en la sección 6
el trabajo futuro.
2 Clasificación
75
El denominador P(X ) , no varía para las diferentes clases, por lo que se puede
considerar como una constante si lo que interesa es maximizar la probabilidad de la
clase:
Arg c MaxP(C | X ) P(C ) P( X | C ) (5)
apriori * verosimilitud
posterior
evidencia
Entonces, para que este clasificador aprenda de un conjunto de datos, se requiere
estimar estas probabilidades, a priori y verosimilitud, a partir de los datos, conocidos
como los parámetros del clasificador.
La aplicación directa de la ecuación (5), resulta en un sistema muy complejo al
implementarlo en una computadora, ya que el término P( X 1 , X 2 ,..., X n | C ) ,
incrementa exponencialmente de tamaño en función del número de atributos;
resultando en un requerimiento muy alto de memoria para almacenarlo, y también el
número de operaciones para calcular la probabilidad crece significativamente. Una
alternativa es considerar relaciones de independencia mediante lo que se conoce como
el clasificador bayesiano simple, también conocido como Clasificador Bayesiano
Ingenuo.
Una variante del CBI es el Clasificador Bayesiano Ingenuo Kernel (CBI-Kernel), que
mantiene las ventajas del CBI y además se puede aplicar en situaciones donde los
datos no siguen una distribución normal.
Un kernel es una función de peso usada en técnicas de estimación no paramétrica.
Los kernels son usados en Estimación de Densidad de Kernel (KDE, por sus siglas en
inglés), para la estimación de la función de densidad de una variable aleatoria, o en
regresión kernel, para estimar el valor esperado de una variable aleatoria. [3]
Los estimadores de densidad de kernel pertenecen a la clase de estimadores de
densidad no paramétricos. A diferencia de los modelos paramétricos, que fijan
completamente la distribución, excepto por el valor de uno o varios parámetros reales
que deben ser estimados. El modelo paramétrico más utilizado es el normal. Sin
embargo, hay muchas situaciones prácticas en que un sencillo análisis de los datos
muestra claramente que la suposición de normalidad es inadecuada. [4]
Los estimadores de tipo kernel fueron diseñados para superar las dificultades al
utilizar técnicas paramétricas en situaciones donde el comportamiento de los datos no
sigue una distribución normal. Son los más utilizados en estimación no paramétrica.
Definición: Estimador de densidad de kernel. [5] Sea ( x1 , x2 ,..., xn ) una muestra
independiente e idénticamente distribuida trazada desde alguna distribución con una
densidad no conocida f . Se está interesado en estimar la forma de esa función f .
El estimador de densidad de kernel es:
1 n 1 n x xi
fˆh K h ( x xi ) K( ) (7)
n i 1 nh i 1 h
Donde K (.) es el kernel – una función no negativa que se integra a uno y tiene
media igual a cero– y h 0 es un parámetro de suavizado llamado ancho de banda.
Un kernel con subíndice h es llamado kernel escalado y se define como
1 x
K h ( x) K ( ) . Intuitivamente, se desea elegir h lo más pequeña posible como
h h
los datos lo permitan ( h →0), para poder asegurar que fˆh tiende a la verdadera
densidad f de las variables xi .
Las propiedades más importantes de estos estimadores no se ven afectadas por la
función kernel que se elija. Frecuentemente se toma K como la función de densidad
de la distribución normal estándar.
La elección correcta del parámetro h es el problema más difícil en la estimación
no paramétrica. Si se elige demasiado pequeño, el estimador aparece
“infrasuavizado”, e incorpora demasiado “ruido”, reflejado en la presencia de muchas
modas (máximos relativos) que no aparecen en la densidad que se desea estimar. Por
el contrario, si h se elige demasiado grande, se da el fenómeno contrario de
“sobresuavizado” y el estimador es casi insensible a los datos. [4]
Existen varias formas que permiten asignar h de manera óptima. El criterio más
común para seleccionar este parámetro es la función de riesgo L2 , también conocida
como Mean Integrated Squared Error (MISE):
h 1.06ˆn 5 (9)
3n
Donde ˆ es la desviación estándar de la muestra. Esta se denomina aproximación
Gaussiana o la Regla de Thumb de Silverman. [5, 6]
77
3 RapidMiner
Modos de
CBIKe
Estimación
rnel - Heurística
Selección del
Completo ancho de banda -Fija
79
4 Pruebas y Resultados
En esta sección se describen las condiciones de las pruebas realizadas y los resultados
obtenidos.
Fig. 4. Tabla de predicción para datos muestra usando el CBI, en la clasificación de sexo.
Para realizar esta prueba, se toma como referencia los datos de entrenamiento de la
prueba 4.1, para ejecutar el CBI-Kernel con sus dos métodos de estimación: voraz y
completo.
a) VORAZ
Para este modo de estimación, se requieren dos parámetros, ancho de banda
mínimo y número de kernels. Para cada atributo se realizó una combinación de estos
dos parámetros y se utilizó el ancho de banda óptimo, calculado de acuerdo a la
teoría, con la ecuación (9).
Se puede observar que la elección del ancho de banda es de suma importancia en el
resultado final. Si el ancho de banda es muy pequeño o muy grande, con respecto al
óptimo, se generan errores en la clasificación, y se observa gráficamente una
diferencia significativa en la densidad de los datos.
Las figuras 5 a), b) y c) muestran a continuación la tabla resumen y las gráficas de
densidad para el atributo estatura con diferentes valores de h.
h=0.1
#Kernels: 10
h=5.46
#Kernels: 5
NOTA: En todos los casos se probó el operador con los atributos dados por
omisión en RapidMiner, ancho de banda=0.1 y # de kernels=10.
b) COMPLETO
Para este caso, se necesita sólo un atributo, que es el ancho de banda. Se puede
seleccionar un ancho de banda heurística o elegir la opción fija.
Se realizaron pruebas con ambas opciones, se muestran a continuación los
resultados.
i) HEURÍSTICA
Con la selección de ancho de banda heurística, se logró una clasificación sin
errores. La predicción fue correcta, hombre, mujer, mujer. Se puede observar en las
gráficas la correcta densidad de los atributos. La figura 6 muestra la gráfica del
atributo largo de brazo.
81
Fig. 6. Gráfica de densidad para el atributo largo de brazo
Para este caso, se probó el operador con los anchos de banda óptimos calculados de
acuerdo a la teoría y se usó un ancho de banda muy pequeño, 0.1 y uno muy grande,
10. La tabla resumen se muestra a continuación en la figura 7.
4.3 PIMA-Diabetes
83
TAMAÑO PROPORCIÓN NÚMERO PORCENTAJE
PRUEBA MUESTRA Positivo Negativo ERRORES ERROR
1 50 19 31 206 27%
2 100 44 56 196 26%
3 200 68 132 179 23%
4 300 115 185 190 25%
5 300 105 195 181 24%
6 400 146 254 202 26%
7 400 140 260 200 26%
8 50 25 25 226 29%
9 100 65 35 235 31%
Fig. 8. Resultados de las pruebas con CBI para los datos PIMA
Para este ejemplo se toma como referencia la base de datos académica conocida como
Vehicle Silhouettes [10], que guarda información sobre 846 siluetas de vehículos
descritas a través de 18 atributos.
El objetivo es clasificar una silueta dada como uno de cuatro tipos de vehículos,
utilizando un conjunto de características extraídas de la silueta. El vehículo puede ser
visto desde diferentes ángulos. Las 4 clases disponibles son opel, saab, bus y van.
Se ejecutó el CBI y CBI-Kernel con algunos datos de entrenamiento de diferentes
tamaños, y se probó su eficiencia en la predicción. En el caso de CBI-Kernel se utilizó
la opción completa y el ancho de banda heurística.
Se puede observar que el resultado para este caso, donde el número de clases es
mayor a 2 y los datos de la base de datos no siguen una distribución normal, el
porcentaje de error varía, de acuerdo al clasificador que se elija. CBI-Kernel funcionó
mejor al reducir significativamente el número de errores.
Este ejemplo es una base de datos que contiene animales, descritos a través de
características que se pueden evaluar como falsas o verdaderas. Incluye variables
numéricas y nominales. [10]
Para este caso, existen 7 clases, que corresponden a los 7 tipos de animales:
mamíferos, aves, peces, anfibios, invertebrados, insectos y reptiles. Se tomó una
muestra al azar del total de datos disponibles, considerando la proporción de cada
clase en la base de datos original, para realizar el entrenamiento del clasificador y
posteriormente se probó con el total de los datos.
La figura 10 muestra los resultados obtenidos:
5 Conclusiones
85
El desempeño del Clasificador Bayesiano Ingenuo es mucho mejor cuando se usan
sólo 2 clases y los datos son numéricos, como se pudo ver en las pruebas 4.1, 4.2 y
4.3, aunque su desempeño es en general bastante aceptable.
El CBI no es adecuado para elaborar clasificaciones en donde los datos no sigan
una distribución normal y/o los datos sean nominales, como se pudo ver en las
pruebas 4.4 y 4.5.
En el caso del Clasificador Bayesiano Ingenuo Kernel, funciona sin problema
cuando se conoce el valor óptimo de la variable h, ancho de banda de los datos, y el
número de kernels, que casi siempre está asociado con h.
Una ventaja del Clasificador Bayesiano Ingenuo Kernel es que puede usarse en el
modo de estimación completo y usar un ancho de banda heurístico, esto ofrece al
usuario final una experiencia más agradable, ya que no se necesita calcular un ancho
de banda ni saber cuántos kernels son apropiados para sus datos; además reduce
significativamente el número de errores cuando los datos a clasificar no tienen una
distribución normal, como pudo verse en la prueba 4.4.
6 Trabajo Futuro
Se tiene considerado para trabajo futuro el análisis de otras bases de datos reales en el
área médica, para comparar la eficiencia del CBI y CBI-Kernel con los resultados
obtenidos con otros clasificadores y otras aplicaciones que se están usando
actualmente.
Referencias
87
Generación de Mapas de Zonas de Desastres Mediante
Trabajo Colaborativo para Búsqueda y Rescate.
1 Introducción
México es una de las naciones más expuesta a los desastres naturales por su ubicación
geográfica, historia y dinámica geológica. [1].Los terremotos son desastres naturales
que dejan como consecuencia daños a estructuras y extensas áreas del
terreno.Estadísticas de sismos en los últimos años, de acuerdo al Servicio Sismológico
Nacional, en México se encuentran registrados un total de 10717 sismos en el año
2015, de los cuales varían en número según su magnitud. [2]
2.1 Hexápodos
Los robots tipo hexápodo, están inspirados básicamente en la locomoción de
movimiento de los insectos de este tipo, pues estos móviles robóticos están
constituidos por seis patas simétricas con tres grados de libertad; su distribución
simétrica proporciona un centro de masa equilibrado, proporcionando estabilidad a la
base, que está formada por la circuitería que controla los movimientos de los
servomotores, mismos que a su vez controlan las tres intersecciones que conforman
cada pata.
En la base también se encuentran los sensores con los que está equipado el
hexápodo, estos elementos sensitivos cumplen un papel importante para la captura de
datos. Todos los sensores que se integran son importantes, pero cabe mencionar que el
sensor ultrasónico de tipo HS-SR4, en conjunto con el sensor de
temperatura/humedad de tipo DHTII juegan un papel crucial para el desplazamiento
de este móvil, ya que bajo ciertas condiciones programadas, ayudan al hexápodo a
tomar la decisión de crear una ruta más segura tanto para sí mismo, como para el
cuerpo de rescate.
2.2Drone
Este tipo de robotjuega un papel muy importante para el sistema, pues es el mediador
del sistema; en términos de comunicación, éste elemento volador es el
receptor/transmisor que estará sobrevolando la zona de desastre a aproximadamente
40 m de altura, éste contará con un módulo Wifi, para establecer el enlace entre los
hexápodos y la estación de trabajo, donde ahí finalmente los datos obtenidos serán
procesados para fungir como una herramienta de interpretación por el cuerpo de
rescate.
3 Algoritmo de desplazamiento.
Es importante saber que para que el hexápodo se desplace, es necesario hacer énfasis
acerca de las condiciones que éste debe respetar en todo momento; para esto se ha
hecho un análisis detallado sobre las variables que van a intervenir, es decir, con qué
tipo de elementos sensitivos (sensores electrónicos) va a estar equipado, que tipo
datos nos van a arrojar y cuales serán las condiciones que limiten o no el
desplazamiento del móvil.
A continuación se muestra una tabla donde se describen los tipos de sensores, los
tipos de datos que nos proporcionan y los parámetros delimitados a conveniencia
sobre el cual está enfocado todo el sistema.
89
Gas TGS2610 500-10000ppm
GPS NMA Ubicación
Para el caso del hexápodo existe un rango de distancias mínimas y máximas que se
tienen que respetar, con respecto a su tamaño y anatomía, tomando en cuenta que a la
hora de programar este parámetro existe un punto ciego de 5 cm aproximadamente:
-PARA EL HEXAPODO:
Altura min: 30cm
Altura máx.: 40cm
Ancho min: 39cm
Ancho máx.: mayor a 39cm
-PARA EL HUMANO:
Altura min: 50cm
Altura máx.: 170cm
Ancho min: 60cm
Ancho máx.: mayor a 80cm
4 Trabajo colaborativo
La importancia del trabajo colaborativo es esencial no solo en la vida diaria; este
proyecto se rige bajo las leyes de este concepto, pues el sistema completo (Drone,
hexápodo 1 y hexápodo 2), trabajan de manera colaborativa para recabar los datos de
cada sensor, independiente.
Los personajes principales son los hexápodos, que estarán en la zona de
exploración y que con ayuda de los sensores estarán recabando información continua
(ultrasónico y temperatura), y activando los sensores de gas cada cierto lapso de
tiempo , hasta que el dron, que estará sobrevolando la zona, recabe toda esa
información a través del módulo Wifi, este robot ira a la estación de trabajo para que
los datos se procesen de manera eficaz y regresará nuevamente al punto de
exploración de los hexápodos.
91
En la sección anterior se habló del envío de datos a través del módulo Wifi, que es
precisamente el medio de comunicación entre Hexápodos-Drone, hablando
específicamente del módulo de comunicación este cuenta con una amplia alcance,
pudiendo llegar hasta 1Km de distancia, para una buena recepción de datos, sin
interrupciones o perdida de datos.
Referencias
2
Jardín Botánico, Facultad de Ciencias Computacionales. Benemérita Universidad
2
Autónoma de Puebla
Av. San Claudio, s/n, Puebla, Puebla
1
jimenez.201215108@gmail.com
1. Introducción
2. Objetivo general
3. Objetivos específicos
93
● Envío de un SMS en caso de alerta
4. Estado de arte
5. Desarrollo
El sistema desarrollado se muestra gráficamente en figura 5, el sistema a bloques
describe de manera sencilla el funcionamiento general, por medio de tres sensores de
temperatura se recaba la información necesaria, la cual es procesada mediante la
tarjeta Electric Imp y su plataforma, que se conecta a un servidor en donde los datos
son almacenados y comparados para que de esta forma se esté monitoreando que las
temperaturas se encuentren dentro de los rangos deseados, y en caso necesario se
envíen las alertas.
5.1. Programación
5.1.1. Conexión Electric Imp
Para utilizar la tarjeta primero se debe registrar en la página web de Electric Imp, en
donde creamos un usuario y una contraseña para poder ingresar a su plataforma y
empezar a programar (figura 6), el lenguaje de programación utilizado se llama
Squirrel. También se debe descargar la aplicación para poder conectar la tarjeta
(figura 7), esta se instala en un dispositivo móvil.
95
Figura 6: Interfaz de programación para la Electric Imp
5.1.2. Carriots
Carriots es una página que permite vincular dispositivos a la web, gestionando los
datos y pudiendo manipularlos, también permite los servicios de almacenar los datos
en la nube, enviar SMS a algún dispositivo e incluso enviar un e-mail, todo esto
apoyando el internet de las cosas.
Para comenzara usar la plataforma es necesario primero registrarse, esto se puede
hacer mediante una cuenta gratuita, la cual vincula a un panel de control (figura 9)
donde se pueden manipular todas las opciones que brinda esta página, la captura de
datos está en la sección “Data Management” mediante el asistente para crear un
Stream.
Fig. 9.
Para observar cuales son los datos recibidos se debe visualizar “Data Streams”, en
donde se pueden ver los datos que se han registrado (figura 12).
97
Las cuentas gratuitas tienen un límite de datos que pueden recibir al día, por ello
hay que prestar atención a la frecuencia de envío de datos.
5.1.2.1. Graficación
Otra herramienta importante que brinda lla página es la opción de graficar datos,
que se encuentra en “wizard Widget Graphs”, seleccionado en la figura 13.
Siguiendo los parámetros que vienen por defecto se obtiene una gráfica como la
que se muestra en la figura 14.
Esta gráfica se puede incorporar a una página web manipulando el código (que se
puede ver en la figura 15) que la misma página facilita. Para que el código de la
gráfica funcione de manera adecuada y muestre la gráfica en la página web, se
requiere insertar lo junto con otro código, mostrado en la figura 16, reemplazando el
código que se encuentra en el recuadro rojo.
99
Fig.17. Canales para vincular
Finalmente se crea un listeners en carriot, como se puede ver en la figura 21, para
poder empezar a subir los datos a nuestra hoja de datos. El resultado se muestra en la
figura 22, en donde se puede ver la tabla en excel con los datos recabados por el
Electric Imp de los tres sensores.
101
Fig.22. Tabla dinámica
5.2. Sensores
Para el sistema que va a ser implementado dentro de la composta, se propuso la
adaptación del sensor de temperatura a un tubo (figura 27), con la finalidad de que
esté más en contacto con la composta y pueda entregar los datos más exactos, y al
mismo tiempo proteger sus terminales y evitar que se junten o que sean afectados por
factores externos como la humedad. Cada sensor podrá ser enterrado en la composta a
cierta distancia de profundidad por lo cual el tubo será un poco largo para poder
manipularlo (figura 28). El prototipo se diseñó y simuló en el software SolidWorks.
103
Figura 27: Diseño del Sensor
5.4. Interfaz
Se diseñó un blog en el cual se muestra la información resumida sobre el monitoreo
en la composta, en la figura 34 se puede ver cómo se visualiza la página completa.
Fig.34. Blog
105
algún parámetro (figura 38). El usuario puede acceder a este blog en la dirección
web: http://temperaturaencomposta.blogspot.mx/.
Fig.37. Grafica
Fig.38. Contacto
6. Resultados y conclusiones
El sistema quedó listo y se hicieron algunas pruebas iniciales dentro de una casa
para comprobar su funcionamiento y garantizar el envío correcto de los datos. Los
sensores fueron calibrados, comparando los valores obtenidos con un termómetro de
laboratorio (figura 39). El sistema se quedó en funcionamiento un día entero, y se
probó el envío de las alarmas, que al sobrepasar la temperatura establecida en
cualquiera de los sensores se enviaba un mensaje alertando al usuario de dicho
evento.
Fig.39. Termómetro de laboratorio
Los objetivos, desde el general hasta los específicos, fueron cubiertos de forma
satisfactoria. Tanto Carriots como la tarjeta de desarrollo Electric Imp, en conjunto
con su plataforma para su programación, son herramientas poderosas pues permiten
en primera instancia poder manejar y programar la tarjeta con tan solo tener una
conexión a internet y tener configurada la tarjeta con alguna red, por otro lado
Carrriots nos permite recibir datos ( en este caso de los sensores de temperatura) y
poder manipularlos, almacenarlos y mostrarlos en una gráfica para ver su
comportamiento; también nos ofrece una herramienta más, al poder comunicar esos
datos a una hoja en drive y la posibilidad de mostrar cualquier resultado en alguna
página web, para así poder hacer el sistema de más fácil acceso para el usuario final.
Bibliografía
1. Zùñiga Valeverde Humberto. Implementación del sistema de monitoreo de
temperatura del cuarto de servidores 3A.
http://bibliodigital.itcr.ac.cr/bitstream/handle/2238/5708/IMPLEMENTACION_S
ISTEMA_MONITOREO_3A.pdf?sequence=1&isAllowe=y. Accedido el 11 de
Marzo de 2016.
2. Mera Villavicencio Diogenes, Valdivieso Feijoo Fernando, Fernando Vasquez
Luis. Sistema de adquisición de datos de humedad y temperatura utilizando
tecnología 1-Wire y Labview.
https://www.dspace.espol.edu.ec/bitstream/123456789/19092/1/Sistema%20de%2
0Adquisicion%20de%20Datos%20de%20Humedad%20y%20Temperatura%20uti
lizando%20Tecnologia%201%20wire%20y%20Labview.pdf.Accedidoel 11
deMarzode2016.
3. Bioetica y biopolitica. https://bioeticaybiopolitica.wordpress.com/dr-carlos-
escamilla-weinmann/. Accedido el 11 de Marzo de 2016.
4. Carriots Dev.
https://www.carriots.com/tutorials/electric_imp_carriots/alert_system. Accedido el
11 de Marzo de 2016.
5. Documentation for Carriots graph. Carriots Forum. 8 de Noviembre de 2013.
http://forum.carriots.com/index.php/topic/58-documentation-for-carriots-graph/.
Accedido el 16 de Marzo de 2016.
6. How to update Google Spreadsheets using Carriots & IFTTT. Carriots Dev.
https://www.carriots.com/tutorials/others_APIs/ifttt. Accedido el 17 de Marzo de
2016.
7. Graphs. Carriots Dev. https://www.carriots.com/documentation/graphs. Accedido
el 16 de Marzo de 2016.
8. Blogger y google drive hojas de cálculo. Inicia Blog.
http://www.iniciablog.com/2013/09/Blogger-Google-Docs-Hojas-Calculo.html.
Accedido el 16 de Marzo de 2016
107
Sistema de Aprendizaje Incremental para
Reconocimiento Automático de la Edad Ósea
1 Introducción
109
correlación se selecciona la edad asignada a la forma media que mejor se ajusta a la
imagen de entrada. En ésta propuesta se observan dos desventajas: Primero, la imagen
media utilizada no contiene la variabilidad que se observa en las imágenes originales
que se usaron para formarla. Segundo, la cantidad de edades etiquetadas es finita, por
lo tanto, la edad estimada no es una variable continua, es decir, siendo las edades A y
B, a la hora de estimar la edad no se puede tener como resultado ninguna edad que no
sea A o B. En [3], Hsieh y otros proponen extraer parámetros geométricos de los
huesos carpales de forma manual con edades de entre 1 y 8 años, y entonces utilizar
ANN (Redes Neurales Artificiales por sus siglas en inglés) como método de
clasificación. En [17], Daniel Abad propone un método de estimación de edad ósea
automática basado en la segmentación de los huesos que utiliza filtros de pre-
procesamiento de detección de bordes y rellenado de contornos para recrear la
estructura ósea de una radiografía entrante. Después realiza un cálculo de las
distancias euclidianas que hay entre los huesos y los núcleos de crecimiento. Luego
calcula la edad ósea de manera similar al método de Tanner y Whitehouse. A pesar de
sus resultados prometedores y precisión, este método depende de los mismos
parámetros de etiquetado que el método de Tanner y Whitehouse.
La propuesta en este trabajo no es la de automatizar los métodos clínicos de
estimación de edad ósea conocidos [1] [2] como se han hecho en trabajos anteriores
[6]. En lugar de eso se investigó y diseñó un sistema para la estimación de edad ósea
el cual es capaz de aprender de los ejemplos de prueba para mejorar su desempeño.
Como conocimiento previo sólo las etiquetas de las edades de los ejemplos de prueba
serán usadas. Se han realizado esfuerzos para lograr algoritmos de estimación de edad
ósea basados en el aprendizaje de parámetros estadísticos de un gran número de
ejemplos como en [7] [8] pero no se han visto tales para diseñar un sistema para la
estimación de la edad ósea con la capacidad de mejorar su desempeño y aprender
mientras más ejemplos se presenten en el sistema. Sería de gran utilidad que un
sistema pueda mejorar su desempeño incluso sin la necesidad de reentrenarlo. Un
algoritmo típico de clasificación que es inherentemente incremental en ese sentido es
el algoritmo de los K-vecinos más cercanos.
En este trabajo se ha utilizado una versión regresiva del clásico algoritmo de los K-
vecinos el cual se basa en el uso de una función radial. A primera vista parece posible
el agregar nuevas imágenes al sistema cada vez que se quiera incrementar el
aprendizaje y por consiguiente mejorar el desempeño en el proceso de clasificación
también. Sin embargo, y considerando que las imágenes originales no están alineadas
es necesario un considerable número de imágenes de entrenamiento para poder
obtener una clasificación aceptable. Para enfrentar este problema se ha implementado
un algoritmo de alineación previo a la clasificación basado en un pre-entrenado
Modelo Activo de Apariencia el cual segmenta la región de interés de la mano y luego
traslada su textura hacia una forma de mano normalizada. La normalización en forma
permite tener en el mismo marco de referencia tanto a la forma como a la textura
trasladada. Dentro del ajuste del AAM se aplica tanto a forma como a textura un
análisis estadístico para reducir su dimensionalidad y obtener un conjunto reducido de
parámetros de forma y textura. La textura trasladada a la forma normalizada y el
conjunto reducido de parámetros de forma devueltos por el proceso de ajuste del
AAM (Modelos Activos de Apariencia por sus siglas en inglés) se unen en un nuevo
vector de parámetros el cual puede ser agregado a una Base de Conocimiento o
conjunto de ejemplos de entrenamiento con la cual el algoritmo de los K-NN (K-
vecinos más cercanos por sus siglas en inglés) realiza la clasificación y finalmente el
cálculo de la edad ósea utilizando regresión lineal para permitir que la edad se trate
como continua a pesar del número finito de edades.
2 Resumen del sistema
111
alta representación utilizando un reducido conjunto de eigenparametros
(eigenformas+eigentexturas) es posible gracias a la gran similitud que existe entre las
imágenes de entrenamiento. Computando una combinación lineal de los
eigenparametros podemos reconstruir cada mano dentro del conjunto de
entrenamiento o incluso crear una síntesis de una imagen nueva. Los coeficientes
comúnmente llamados pesos de esas combinaciones lineales son los parámetros del
modelo AAM.
Una vez que el modelo AAM ha sido creado puede ser utilizado para alinearse a
una imagen entrante utilizando un algoritmo de ajuste iterativo similar al
implementado en [11] con lo que es posible recobrar los parámetros de forma y
textura del modelo que mejor se ajusten a la mano de la imagen entrante.
Para construir el modelo de forma se diseñó una plantilla adecuada de puntos o
landmarks así como una malla de triángulos (para trasladar la textura) que
geométricamente no se volteen ni se encimen a causa de las variaciones en forma
presentadas en el conjunto de entrenamiento. En la Fig. 2 se muestra la plantilla
propuesta de landmarks mientras que en la Fig. 3 se ilustra nuestra triangulación
manual utilizada en éste trabajo comparada con una triangulación delaunay [12]
calculada automáticamente con Matlab. Se puede apreciar que la triangulación
propuesta es más robusta a la variación en cuanto a posición de los landmarks que la
triangulación delaunay ya que algunos landmarks de algunos triángulos son casi
colineales.
Fig. 4. Particularmente, todas las formas en éste trabajo fueron alineadas a la forma
correspondiente al ejemplo numero 5 pues tiene poca variación visual y permite ver cómo será
la forma media aproximadamente.
113
Fig. 5. Ejemplo de cómo se ven las imágenes trasladadas hacia la forma media.
Los parámetros del modelo AAM estarán completos una vez que los parámetros de
pose (𝑠, 𝜃, 𝑡𝑥 , 𝑡𝑦 ) (escala, rotación y traslación en x e y) sean agregados.
𝑃 = (𝑤𝑠𝑇 𝑤𝑔𝑇 |𝑠, 𝜃, 𝑡𝑥 , 𝑡𝑦 ) (3)
Fig. 7. Proceso iterativo del ajuste del modelo AAM a una imagen de entrada, en ambos
ejemplos la convergencia se obtuvo a las 78 iteraciones, no siempre se obtiene la convergencia
en la misma cantidad de iteraciones.
Los parámetros de forma devueltos del modelo ajustado a la imagen nueva son unidos
a la textura normalizada en forma de la imagen original para crear un vector de
parámetros útil para la clasificación con los K-NN. En teoría se pueden utilizar los
parámetros de forma y textura devueltos por el proceso de ajuste del AAM para
formar un vector reducido de parámetros el cual es adecuado para clasificar, sin
embargo, proceder de ése modo no permite el implementar un proceso de aprendizaje
incremental dado que se debería construir un nuevo modelo AAM cada vez que se
quiera agregar un nuevo ejemplo a la base de conocimiento. Obviamente este es un
proceso pesado computacionalmente hablando, por lo tanto, para diseñar un sistema
115
de aprendizaje incremental práctico se propuso formar el vector de parámetros con los
parámetros de forma devueltos por el ajuste iterativo junto con la textura original
normalizada en forma
𝑭 = (𝑤𝑠𝑇 |𝑔𝑇 ) (6)
Así no se tiene que reconstruir el modelo AAM cada vez que se quiera ingresar un
nuevo ejemplo a la base de conocimiento para aprender. De este modo, hay que
asegurarse que el modelo AAM está construido con la suficiente variación en forma y
textura para ser capaz de ajustarse a casi cualquier imagen de entrada. Se eligieron 3
ejemplos de cada edad partiendo de 1 año hasta 19 años dando un total de 57
ejemplos, del mismo modo se eligieron 8 ejemplos de distintas edades que aportaran
variaciones en pose y forma que no estuvieran presentes en los primeros 57 ejemplos.
Esto con la finalidad de que dentro del entrenamiento se tuviera la mayor cantidad
posible de información de variación en pose y forma pero al mismo tiempo tuviera un
equilibrio en las edades.
5 Resultados Experimentales
Para probar éste método de estimación de edad ósea, se hizo uso de un conjunto de
imágenes compuesto por 165 radiografías, todas ellas recortadas y redimensionadas a
256x256 pixeles. 125 imágenes fueron utilizadas para el entrenamiento y el
aprendizaje y las restantes 40 se reservaron para la etapa de prueba. Del
entrenamiento y el aprendizaje, se usaron 65 imágenes para entrenamiento del modelo
AAM, las texturas normalizadas en forma de esas 65 imágenes unidas a sus
respectivos parámetros de forma fueron utilizadas como un conjunto inicial de la base
de conocimiento. Las 60 imágenes restantes se usaron para el aprendizaje incremental
durante la etapa de prueba.
Para el modelo AAM, se diseñó una plantilla de 71 landmarks colocadas sobre
distintos puntos característicos de los huesos de las manos. Se decidió preservar 30
eigenformas que representan un 99% de la varianza observada en el conjunto de
entrenamiento. De forma similar se preservaron 25 eigentexturas que representan un
99% de la varianza observada en el conjunto de entrenamiento. Para la regresión K-
NN se ajustó una K=5 con la que se obtuvo el mejor resultado. Para evaluar la
capacidad del aprendizaje incremental se hizo un reconocimiento de edad ósea
iterativo con los 40 ejemplos de prueba empezando con una base de conocimiento
formada por los 65 vectores del conjunto de entrenamiento y aumentando 10 ejemplos
en cada iteración hasta llegar a un total de 125 ejemplos en la base de conocimiento.
En la Fig. 8 se muestra un decremento gradual en el error (R-MSE) cada vez que la
base de conocimiento es incrementada (A). También muestra que las edades
estimadas de los 40 ejemplos de prueba usando una base de conocimiento de 125
ejemplos tienen un Error Medio Absoluto (MAE) de aproximadamente 1.7 años, un
Error Medio (ME) de -0.08 años y un Raíz de Error Cuadrático Medio (RMSE) de
1.87 años. (B). Dado que la media normal de diferencia en la estimación de la edad
ósea realizada por un médico radiólogo va de 1 año a los 2 años [16] nuestros
resultados están dentro del rango aceptable, y dado que al incrementar la base de
conocimiento se reduce el error es factible pensar que se pueden llegar a obtener
resultados de 0 años a 1 año de error.
Fig. 8. (A). El R-MSE fue medido inicialmente con 40 ejemplos, en cada iteración fueron
agregados 10 ejemplos más a la base de conocimiento de modo que se nota la reducción del
error al clasificar entre 65 imágenes en la base de conocimiento hasta 125 imágenes. (B).
Edades reales contra las edades estimadas al utilizar 125 ejemplos en la base de conocimiento.
117
6 Conclusión y Trabajo Futuro
Referencias
119
Dispensador Automático de Alimento desde un
Servidor Web
1 Introducción
2 Desarrollo
La manera habitual de alimentar a los animales del bioterio es abasteciendo de comida
especial sus contenedores que a su vez dispensan y suministran dicho recurso de
manera manual. Para poder hacer que el proceso de servir el alimento a estos seres sea
más cómodo y eficiente se decidió modificar la tolva que se utiliza para alimentarlos.
El primer paso fue rediseñar el dispensador a partir de la tolva original que fuera
amigable al individuo que se encarga de velar por los cuidados de los animales. Para
ello se procedió a dibujar con ayuda del software “SolidWorks” (Fig. 1), el
mecanismo propuesto integrando una serie de materiales para su eficaz realización
como lo son la tolva, un eje, una base para el alimento, un servomotor y un par de
rodamientos.
Fig. 14. Diseño asistido por computadora del mecanismo para el dispensador de alimento.
Para lograr el giro de ángulo recto se recurre a la utilización de un servomotor que
estará conectado al eje de rotación. Dicho servomotor debe tener un torque capaz de
soportar la carga del alimento.
La base del alimento que se utiliza, tiene una medida diseñada de tal forma que
cuando gire a cierto ángulo no presente inconvenientes con la rampa que está justo
debajo de ella, tales como el que se pueda originar un atasco de alimento entre dicha
rampa y la base giratoria. Cuando el alimento haya sido vaciado completamente, el
motor regresará a su posición inicial. Esto es con respecto a la parte mecánica, pero
para que ésta pueda ser efectuada se necesita de un mando electrónico para limitar el
movimiento de la parte mecánica. Dicho mando envía una señal por medio de
conexión Wi-Fi, el dispositivo la recibe y ejecuta la acción. El mando en esta ocasión
será un elemento de uso cotidiano para el hombre, un celular, una computadora o
cualquier dispositivo con acceso a internet. Cuando el usuario desee alimentar a sus
animales, lo que debe hacer es conectarse a la red, mediante su móvil e inicializar la
interfaz que estará estrechamente vinculada con el sistema de control del mecanismo
y posteriormente configurar la hora en la cual se pondrá en marcha el motor. A
continuación en la Figura 2 se presenta el diagrama de bloques del sistema de control.
121
Fig. 2. Diagrama de bloques del programa de control.
123
El botón de “Alimentar Ahora” sirve para dispensar alimento en el momento en
que se dé clic sobre este, independientemente de alguna programación.
Mecanismo. Se logró obtener una tolva como las que utilizan en el bioterio de la
Benemérita Universidad Autónoma de Puebla, a ésta tolva se le adaptó un eje a la
altura necesaria para que pueda retener el alimento y pueda tener un giro libre en
donde no exista problema alguno con alimento. En la Figura 6, se observa el eje
acoplado a la tolva junto con la tabla transversal a la cual llamamos cama.
Fig. 6. Tolva con eje, rodamientos y cama.
Se hizo el proceso de corte y unión de piezas de MDF para formar una caja
tal que fuera el contenedor de nuestro Arduino y el módulo de ethernet y su
respectivo espacio para visualizar la LCD. Se tomaron las medidas respectivas
tanto del módulo como del Arduino y con base a ello se realizó un diseño
asistido por computadora de la caja (Fig. 10). Posteriormente se hicieron las
medidas reales en el MDF para hacer los cortes y se acoplaron las caras como
fue diseñado previamente.
125
Fig. 8. Diseño del Contador
3 Resultados
Se hicieron las pruebas correspondientes en tanto que se hizo girar el servomotor para
uno y otro sentido para observar el movimiento de la cama y revisar si existe algún
inconveniente al momento del cambio de posición. (Calculando el tiempo que le
llevará al dispensador entregar la comida y regresar la cama a su posición inicial y
traducirlo en grados.
Así mismo se encontró una relación entre tiempo y gramos debido a que se
observó experimentalmente que en función del tiempo que permanece abierto el
dispensador está en función directa con la cantidad de alimento suministrado, esto
para tener un control sobre la cantidad de alimento dispensada.
Las pruebas experimentales se realizaron especialmente para el caso de los
conejos, cabe mencionar que los conejos necesariamente deben ingerir alimento por
las mañanas debido a que los nutrientes ingeridos en la primera comida son los más
importantes.
Debido a la estandarización, la cantidad de alimento suministrada es de 200
gramos por lo que las pruebas se basaron en el cumplimiento de esta.
Fig. 9. Suministro de alimento.
Referencias
127
5. Jon Duckett. Beginning Web Programming with HTML, XHTML, and CSS. Wrox. 2008.
Paginas 323 – 360.
6. Arduino [en línea], disponible.
http://www.arduino.cc/en/pmwiki.php?n=Main/ArduinoEthernetShield, sitio visitado el
03/05/20215.
Sistema de Entrenamiento Virtual usando Leap Motion
1 Introducción
1.1 Antecedentes
129
entrenamiento para el manejo adecuado del roedor solo existen empresas extranjeras
que se dedican en productos para observar el comportamiento de estos, como es
Panlab S.L.U, que es especializada en la investigación en neurociencias
proporcionando una amplia gama de soluciones para el estudio de la fisiología y el
comportamiento en animales de laboratorio pequeños [7]. Algunos que se dedican al
análisis para el descubrimiento de medicamentos como, por ejemplo: CMA
Microdialysis. Hasta el momento no existe un sistema de entrenamiento como el que
se esta planteando en el proyecto, los únicos sistemas o equipos que se han
encontrado vigentes son los mencionados anteriormente.
2 Planteamiento
La tecnología para Leap Motion fue desarrollado por primera vez en2008, mientras
que el co-fundador David Holz estaba estudiando para un doctoradoen matemáticas.
De acuerdo con una inversión inicial ángel, Holz co-fundó laempresa en 2010 con su
amigo de la infancia de Michael Buckwald. El 7 deabril, 2014 COO Andy Miller dejó
la compañía.En mayo de 2014, LeapMotion dio a conocer su versión 2 del software a
los desarrolladores en unaversión beta pública. En marzo de 2015, se anunció que el
próximo kit Hacker desarrolló OSVR incluiría una placa frontal opcional con módulo
131
desalto demovimiento incorporado. En febrero de 2016, Leap
Motionlanzadounnuevosoftware,llamado Orion, construido específicamente para VR.
El controlador Leap Motion, Fig. 19, es un dispositivo periférico USB
pequeño,queestá diseñado para ser colocado en un escritorio físico, hacia arriba.
Tambiénse puede montar en un casco de realidad virtual. Usa de dos cámaras de
infrarrojos monocromática y tres LEDs infrarrojos, el dispositivo observa un
áreaaproximadamente semiesférica, a una distancia de aproximadamente 1 metro.Los
LED generan patrón con menos luz IR y las cámaras generan cerca de 200 cuadros
por segundo de datos reflejados. Esto es enviado a través de un cable USBal
ordenador principal, donde es analizada por el software Leap Motion utilizando
matemáticas complejas de una manera que no ha sido divulgada por lacompañía, de
alguna manera sintetizan los datos de posición en 3D mediante lacomparación de los
marcos 2D generados por las dos cámaras. En un estudio de2013, la precisión
promedio general del controlador se demostró que era de 0,7milímetros [6].
3 Resultados
El diagrama de flujo que se empleó para saber el área de trabajo que tiene lead motion
y la interacción con otros objetos es como el que se muestra a continuación, Fig. 23.
133
Fig. 23.Diagrama de flujo para la interacción con el área de trabajo de Leap Motion
Referencias
1. Brandon, S.: Mastering Leap Motion, Third edition, Pack Publishing, pp. 361 (2014)
2. Alberto, J.N; Mónica, P.M.: Búsqueda de metástasis óseas en radiografías. Anales de
Radiología México, pp. 6 (2012)
3. Cloutier, S.; Panksepp, J.; Newberry, R.: Playful handling by caretakers reduces fear of
humans in the laboratory rat, Appl Anim Behav Sci, Sep (2012)
4. Mourelle, A.C.; Herrero, E.; Ricca, M.: Recomendaciones para la manipulación y sujeción
de ratas y ratones de laboratorio, Spei Domus, (2013)
5. Ma. De la luz, S.; Ma. Teresa, D.; Grabiel S.: Development and use of methodologies
applied to improve the teaching-learning process of different routes of administration in
laboratory rodents, Foro de investigación, desarrollo e innovación. http://virtualeduca.org.
6. Frank, W.; Daniel, B.; Bartholomaus, R.; Denis, F.: Analysis of the Accuracy and
Robustness of the Leap Motion Controller. Sensors (Basel, Switzerland), (2013)
7. Superior products for Behavioral Research: Species Guide for Behavioral Systems,
http://www.coulbourn.com, http://www.panlab.com
8. Blender: Blender 2.77a, http://www.blender.org, (2016)
9. Leap Motion, http://www.leapmotion.com
135
Red Bluetooth de Alarma de Puertas
1 Introducción
Existe otra idea bastante interesante donde el autor del artículo [3] emplea un
microprocesador Arduino UNO basado en ATMEGA 328 y un sensor de movimiento
tipo IR que al detectar una alarma se conecta a internet usando una tarjeta de datos
instalada en la laptop, y puede verse desde un celular que tenga una aplicación
propietaria desarrollada en J2ME. Adicionalmente el sistema hace uso del servicio de
google C2DM para mantener un registro de actividades y eventos en la nube, es decir
de manera remota y segura (fuera del módulo local) desde una aplicación móvil. Este
nuevo planteamiento permite avisar remotamente de un suceso en el sistema y a la
vez mantiene un registro con todos los datos disponibles lejos del lugar afectado.
Como valor agregado, la aplicación propietaria, junto con las claves de acceso
permiten un acceso a la información de forma controlada y segura. En contraparte, el
sistema requiere tener una computadora de forma permanente y dedicada para lograr
su tarea de notificación, además de la interface electrónica entre los sensores o
controles y la laptop.
137
Finalmente, el sistema que se plantea en [5] el autor implementa un sistema con
una red de sensores con un indicador de la señal recibida (RSSI) valor para buscar
actividad de intrusión en el hogar. La aplicación envía una notificación de alarma vía
SMS. El propietario tiene acceso a habilitar o deshabilitar el sistema así mismo recibe
la notificación cuando se presente un evento. El nodo donde se encuentra el sensor
envía la notificación. En el trabajo se realizaron pruebas con personas adultos, niños,
mascotas y obstáculos para hacer que el sistema fuera confiable y que no genere
falsas alarmas. El sistema completo utiliza de igual manera una aplicación propietaria
desarrollada para aumentar la seguridad.
3 Desarrollo y Metodología
El sistema desarrollado incluye tres nodos locales, en los cuales cada uno contiene un
sensor PIR, un sensor magnético y un bluetooth HC-05, los tres componentes se
conectan hacia el microcontrolador PIC18F4550 utilizando una tarjeta de desarrollo
PIC40 V3. Mediante una comunicación Bluetooth se realiza el enlace entre la estación
maestra hacia los nodos y viceversa cuando se recibe información del estado de los
sensores. La estación maestra se comprende de un celular inteligente con sistema
operativo Android el cual contiene una aplicación desarrollada en App Inventor,
siendo la aplicación utilizada como interfaz de usuario. Un diagrama general del
sistema se presenta en la figura 1.
Al querer registrar un usuario nuevo teniendo como base que ya se han registrado
los usuarios de confianza que pueden observar el estado del sistema se presenta una
alerta de error. También se cuenta con la acción de poder eliminar un usuario.
a) b)
Fig. 26. Interfaz de usuario integrado en el teléfono inteligente del sistema de alarma.
139
sensores. En la segunda pantalla también se cuenta con la opción de registrar usuario
pero por ser un sistema de alarma por seguridad esta restringido a solo dos personas
para el acceso hacia la tercera ventana, cuando alguien ajeno al sistema quisiera
registrarse al presionar el botón registrar usuario aparecerá un mensaje de
advertencia.
3.2 Resultados
3 2
1
141
mejoró el tiempo del polling y el sistema de alarma siguió trabajando de manera
correcta.
Como trabajos futuros se mejoraría la presentación del sistema y también se
realizarían pruebas en un ambiente fijo como lo son las puertas del laboratorio en el
edificio de maestría. El sistema desarrollado no es dependiente de una red wifi por lo
hace un sistema más eficiente y cómodo al realizar la comunicación hacia la estación
maestra. Con la versatilidad que da App Inventor se logró desarrollar la aplicación
que funciona como interface de usuario, la cual al mismo tiempo de realizar la
comunicación recibe información importante de los nodos.
Referencias
1. Introducción
Desde el comienzo de la humanidad los ríos, lagos y lagunas han estado ligados
íntimamente al desarrollo de las civilizaciones humanas brindado un equilibrio
ecológico y climático, fungiendo como fuentes de vida y en ocasiones como medios
de transporte. En Latinoamérica muchas de estas aguas han sufrido una degradación
casi paralela al crecimiento de las poblaciones al utilizarse como basureros de
plásticos, cartón y vidrio, a causa de una cultura nula de prevención y cuidado.
Aunado a esto se han detectado diversos factores de contaminación como:
deforestación, desechos industriales, destrucción del suelo, sobreexplotación y
cambios climáticos.
En este trabajo nos enfocamos a la limpieza de lagos y lagunas, tanto naturales
“los formados por volcanes, ríos o afloramientos freáticos” como artificiales “creados
por el hombre”, teniendo como objetivo recolectar los contaminantes que flotan en la
superficie acuática como plásticos, hojas, ramas, pedazos de troncos y algas que en
exceso producen perturbaciones en el ecosistema acuático, mal olor y son
antiestéticos.
Para realizar esta limpieza se propone el robot JARV-1 que recolecta desechos
autónomamente evitando riesgos, daños, y esfuerzo al ser humano durante dicha
actividad. Este problema se ha abordado desde la perspectiva de la ciencia y el
desarrollo tecnológico al servicio de la humanidad y sus futuras generaciones.
2. Idea
En este trabajo se realizó un robot capaz de moverse sin la intervención del hombre
con la misión de recolectar la basura flotante sobre las aguas de lagos y lagunas. Con
este robot se evita que el ser humano arriesgue su vida al realizar dicha actividad,
debido a la contaminación, visibilidad o difícil acceso. La idea surge gracias a la
cercana ubicación del Laboratorio de Sistemas Robóticos “SIRO” a la laguna artificial
que se encuentra dentro de Ciudad Universitaria, perteneciente a la Benemérita
Universidad Autónoma de Puebla. Es ahí donde la observación provocó la inquietud
143
de generar un proyecto que sirva como herramienta tecnología para la recolecta de
basura. En la figura 1, se muestra el recorrido ideal que realiza el robot.
145
d 1 1 B
b 1 1 C
c 1 0 E
e 0 0 D
d 1 0 E
e 1 0 A
Tabla 1 Tabla de Estados
a. Punto de inicio
b. Recorrer laguna
c. Recolectar basura
d. Reubicar
e. Terminar
X = sensor >= 50 cm
Y= basura >=5 kg
El robot parte desde un punto de inicio, tal como se muestra en el diagrama anterior,
donde una condición “S” definida como START indica si el robot inicia su
funcionamiento y si no lo hace regresa a un punto inicial. Una vez que el robot ha
iniciado su recorrido este entra en un proceso definido como “recorrer y recolectar” el
cual solo va a cambiar mediante una serie de condicionales aplicadas a las variables X
y Y antes mencionadas, la primera condicional a tomar en cuenta es sobre la variable
X donde se indica la ubicación del robot, si el robot se encuentra ubicado a una
distancia menor o igual de 50cm del contorno del lago procede a la evaluación de una
siguiente condicional, ahora sobre la variable Y, donde si el robot cuenta con una
cantidad de basura menor o igual a 5Kg sigue su recorrido, en caso contrario,
haciendo que la cantidad de basura llegue a un total de 5Kg el robot procede a
terminar su proceso y regresar al punto inicial. Si el peso total de basura recolectada
por el robot no sobrepasa el máximo de 5kg y se encuentra ubicado a la distancia
especificada, este sigue en su proceso de recolecta. En dado caso que el robot no se
encuentre ubicado pero ya cuenta con una cantidad menor o igual a 5kg de basura este
avanza a un proceso o estado de reubicación. Como caso final, si este no se encuentra
ubicado y ya cuenta con la capacidad máxima de basura recolectada el JARV-1
procede a terminar su proceso de trabajo y así regresar a su punto inicial.
147
artificial, mejorar las funciones de los sensores utilizando un sonar, optimizar el
consumo de voltaje mediante celdas solares y diversificar sus aplicaciones de
limpieza a mares y ríos, buscando la vinculación entre universidad, gobierno y
empresa.
Agradecimientos. A profesores y alumnos que trabajaron dentro de este proyecto, a nuestra
Facultad de Ciencias de la Computación, las autoridades encargadas del mantenimiento de la
laguna de la Benemérita Universidad Autónoma de Puebla.
Referencias
1. Italo Cortez J, Cortez L, Paredes Camacho A, Trinidad Garcia G, “Análisis y
Diseño de Circuitos Eléctricos,” Alfaomega, 1ra. Edición, 2014.
2. Tanenbaum Andrew S., “Computer Networks” 3ra edition, Pretince-Hall PTR,
1996.
3. Roberts M. J., “Señales y Sistemas”, McGraw-Hill, 2005.
4. Palacios Enrique, Fernando Remiro, Lucas J. López, “Microcontrolador
PIC16F84 Desarrollo de Proyectos”, Alfaomega, México, 2006.
5. Vesga Ferreira Juan Carlos, “Microcontroladores Motorola – Freescale”,
Alfaomega, México, 2008.
6. Mead Carver, “Analog VLSI and Neural Systems”, Adison-Wesley Publishing
Company, Canada, 1989.
7. Boylestad Robert l. Y Nashelsky, Louis, “Electrónica: Teoría de Circuitos y
Dispositivos Electrónicos”, Pearson Educación, México, 2009.
8. Trinidad García G; López Marín N; Ítalo Cortez J; Cortez L; Ríos Acevedo C.
A; García Juárez P; Hernández Ameca J. L: Real-Time Dynamic Level Meter
Non-Invasive with Optical Sensor. International Journal of Engineering and
Management Research, Vol.5, NO. 6, pp 518-521 (2015).
9. Flores Ochoa R: Pedagogía del Conocimiento. Mc Graw-Hill (2005).
10. Bravo Sánchez F. A; Forero Guzmán A: Teoría de la Educación. Educación y
Cultura en la Sociedad de la Información. La Robótica como un recurso para
facilitar el Aprendizaje y Desarrollo de Competencias Generales. Vol. 13, NO
2, pp 120-136 (2012).
11. López Ramírez P. A; Andrade Sosa H: Revista Educación. Aprendizaje con
robótica, algunas experiencias. Vol. 37, NO 1, pp43-63 (2013).
12. Mead Carver, “Analog VLSI and Neural Systems”, Adison-Wesley Publising
Company, Canada, 1989.
Manipulador Robótico de Residuos Peligros Biológico-
Infecciosos.
1
José L. Hernández-Ameca1, Elsa Chavira-Martínez , José Ítalo Cortez1, Gregorio
1
Trinidad-García1, Gustavo Rubín-Linares , Minerva Hernández-Ameca2, Alan J.
1 1
Fonseca-Barrera1, Ricardo Pastor-Hernández , Valeria Temozihui-Tlahuel
1
Facultad de Ciencias de la Computación, Benemérita Universidad Autónoma de Puebla,
14 sur y Ave. San. Claudio, C.U. San. Manuel, C.P. 72570 Puebla, Pue; México.
2
Subsistema de Centros Escolares SEP, Puebla, Pue; México.
1 1
amecajl@hotmail.com, elsachavira56@hotmail.com, 1jose.italo.cortez@gmail.com,
1
tgarcia@cs.buap.mx, 1gustavo@cs.buap.mx, ameca.minerv@gmail.com,
1
alanjoshep22@gmail.com, 1richard_yo@msn.com, 1valerykery@gmail.com
1. Introducción
149
Este robot se conforma de un subsistema de control de lazo abierto llamado
botonera y otro de movimiento llamado Brazo Manipulador. (Reyes Cortes, 2001)
Mediante la botonera el usuario puede posicionar al brazo robótico, sujetar y
transportar tubos de ensayo hacia un lugar deseado, las dimensiones de dichos tubos
son: diámetro de 3mm a 5mm y largo de 100mm. En la figura 1 se muestra el
esquema de la botonera.
Para ejecutar y codificar las órdenes enviadas desde la botonera se utilizó un PIC
(Controlador de Interfaz Periférico) 16F877A, el cual es un circuito fabricado en
tecnología CMOS (Semiconductor Complementario de Oxido Metálico),
reprogramable gracias a su memoria de programa tipo flash de 8K, con instrucciones
de 14 bits c/u. Tiene una memoria de datos de 368 bytes RAM, 256 bytes EEPROM.
El circuito cuenta con 40 pines y trabaja con un oscilador externo de 12 MHz. En la
figura 3 se muestra el diagrama electrónico para implementar el subsistema de
control. (López, 2006)
Fig.3. Diagrama de conexión PIC16F877A para el subsistema de control.
Servomotores
Velocidad 260 grados/seg.
Par de salida 3.2 Kg/cm
Dimensiones (40.4 x 19.8 x 36) mm
Masa 37.2 gr
Frecuencia de trabajo 1.5KHz
151
1 Hombro l= 12 90
a=1.5
Brazo l=1.5
2 a=2 90
h=13
l=1.5
3 Pinza a=4.5 90
h=4
Para hacer trabajar al brazo el PIC debe recibir una señal de alguno de los botones,
esto indica que dependiendo el botón es la acción a realizar hasta que este se deje de
ser presionado o hasta que el motor alcance su movimiento máximo permitido, una
vez terminada esta función el PIC vuelve a esperar a que otro botón o incluso el
mismo sea presionado para volver a ejecutar la función en un ciclo, este ciclo es
representado por un conector multicondicional mediante la letra A.
4. Pruebas
Se realizaron diez pruebas de funcionamiento con médicos y técnicos,
identificados como los usuarios potenciales del Manipulador Robótico. La prueba de
funcionamiento consistió en:
Resultados.
El objetivo de la prueba fue alcanzado por el 90% de los participantes ya que lograron
tomar y cambiar de posición un tubo de ensayo controlando el prototipo robótico
mediante la botonera, el 10% restante de la población tomada se negó a realizar la
prueba.
153
Conclusiones.
Referencias
1. Boylestad R., Nashelsky L.: “Electrónica: Teoría de Circuitos y Dispositivos
Electrónicos”, Pearson Educación, México, 2009.
2. Chavira Martínez, E., Duran López, R., Fraguela Collar, A., Pedroza Mendoza,
A.: “Introducción al Bioelectromagnetismo y Bioseñales”, Editorial Corinter,
México, 2015.
3. Cairo O. “Metodología de la Programación”, Alfaomega, 2005.
4. García Juárez, P., Hernández Ameca, J. L., Ítalo Cortez, J., Cortez, L., López
Marín, N., Trinidad García, G., Ríos Acevedo, C. A.: Real-Time Dynamic Level
Meter Non-Invasive with Optical Sensor. International Journal of Engineering
and Management Research, Vol.5, NO. 6, pp 518-521 (2015).
5. Reyes Cortés F., “Control de Robots Manipuladores”, S.A., 2001
6. Kumar, S; “Introducción a la Robótica” McGraw-Hill/InteramericanaEditores
S.A. de C.V., México DF, 2010
7. López Perez, L.J., Palacios Municio, E., Remiro Domínguez, F.:
“Microcontrolador PIC16F84 Desarrollo de Proyectos”, Alfaomega, México,
2006.
8. Mandal, A.: Cerebral Palsy Treatment. News medical life sciences & medicine.
http://www.news-medical.net/health/Cerebral-Palsy-treatment.aspx. (2012).
Accedido el 11 de Diciembre del 2012.
9. Mead, C. A.: “Analog VLSI and Neural Systems”, Adison-Wesley Publishing
Company, Canada, 1989.
10. México secretaria de salud “Norma oficial mexicana NOM-087-ECOL-
SSA1-2002, Protección ambiental, Salud ambiental, Residuos peligrosos
biológico-infecciosos, Clasificación y especificaciones de manejo” 2002
11. México Secretaria de Salud “Manual de Procedimientos para el Manejo de los
Residuos Peligrosos Biológicos Infecciosos (RPBI)” 2011.
12. Netter Frank, H.: “Atlas of Human Anatomy: Including student consult
interactive ancillaries and guides”, 6a Edition, 2014.
13. Ollero Baturone, Aníbal, “Manipuladores y Robots Móviles” Marcombo, S.A.,
2001
14. Roberts, M. J., “Señales y Sistemas”, McGraw-Hill, 2005.
Evaluación Colaborativa de Proyectos de Investigación
+Desarrollo basada en un Modelo Semántico
8 Introducción
155
disciplina que analiza el trabajo en grupo mientras groupware es la tecnología que lo
permite [5].
Las aplicaciones colaborativas son sistemas complejos que requieren mecanismos
para gestionar la interacción del grupo, de tal forma, que puedan suministrar la
comunicación, colaboración y coordinación para soportar la naturaleza dinámica y las
necesidades cambiantes del trabajo de grupo.
Por otra parte, las tecnologías web sirven para acceder a los recursos de
conocimiento disponibles en Internet o en las intranets utilizando un navegador. Su
uso se ha incrementado por muchas razones: facilitan el desarrollo de lasaplicaciones
colaborativas, ofrecen flexibilidad en términos de escalabilidad; ponen a disposición
de todos, el conocimiento de los demás, por encima de jerarquías, barreras formales u
otras cuestiones. Estas tecnologías pueden llegar a proporcionar recursos estratégicos,
pero, evidentemente, no por la tecnología en sí misma, que está disponible
ampliamente, sino por lo fácil que es personalizarlas y construir con ellasaplicaciones.
Dando resultados extraordinarios a todos.
Por tanto, en este proyecto, se pretende crear una aplicación colaborativa que sirva
para la evaluación de cualquier tipo de proyecto de Investigación + Desarrollo (I+D),
basándose en un modelo semántico.
Este documento se organiza de la siguiente manera: En la sección 2se presentan los
trabajos relacionados. En la sección 3 se muestran las principales tecnologías
utilizadas para el desarrollo de la aplicación colaborativa. En la sección 4 se explica el
modelo semántico para desarrollar aplicaciones colaborativas. En las sección 5 se
detalla el proceso de elaboración de la aplicación colaborativa para la Evaluación de
Proyectos I+D. Finalmente, en la sección 6 seproporcionan las conclusiones y el
trabajofuturo.
9 Trabajos relacionados
10 Tecnologías utilizadas.
157
Fig. 1. Esquema del patrón arquitectónico Modelo-Vista-Controlador. [24]
11 Modelo semántico
Precedencia
Fase
de Fase
Tarea Actividad
Precedencia
de Tareas
Política Rol Recurso
Evento
Precedencia
de Tarea
Derecho/
Estatus
Obligación
159
proporcionen acceso a la información compartida en cualquier momento y lugar
usando una mínima infraestructura técnica.
La Web apunta hacia el trabajo colaborativo en: investigación, desarrollo,
comercialización, publicidad, negocios, ventas, y soporte, debido a que provee un
marco ideal para el desarrollo de aplicaciones colaborativas principalmente gracias a
su amplia extensión alrededor de todo el mundo; lo cual facilita la distribución de las
aplicaciones, la comunicación y colaboración entre los usuarios de los grupos de
trabajo. La Web posee tres componentes que le permiten ser utilizada como la base
del desarrollo de aplicaciones colaborativas [27]:
Acceso a Documentos Compartidos: El modelo básico de acceso provisto
por HTTP proporcionado para acceder a documentos repositorios a través de
Internet. El acceso unificado a repositorios compartidos de documentos
permite soportar actividades colaborativas.
Manejo de Interfaces de Usuario: HTML extiende el modelo básico de
documentos de marcado con soporte a interfaces de usuario construidas a
partir de componentes básicos Widgets. Proporciona una plataforma
independiente para el manejo de interfaces de usuario.
Acceso Unificado a Servicios: A través de los mecanismos CGI (Common
Graphics Interface, Interfaz de Entrada Común en español) se puede acceder
a los programas externos como si se tratase de documentos Web. La
tecnología Web proporciona acceso distribuido a los servicios de red a los
participantes a través del Internet.
Es por ello, que se decidió realizar este proyecto, que permite crear una aplicación
colaborativa basada en tecnologías web para evaluar proyectos. Esta aplicación
facilita el trabajo en grupos, mejorando su rendimiento y permitiendo a personas que
están localizadas en puntos geográficos diferentes trabajar conjuntamente, ya sea de
manera síncrona o asíncrona a través del internet.
El desarrollo de la aplicación web, consideró un ciclo de vida de software clásico,
que realiza: análisis de requisitos, diseño e implementación. Los cuales serán
explicados en las siguientes subsecciones.
R T I Actividad Recurso TT
P Registrarse Aplicación 1 Ingresar datos Formulario, etiquetas, botón y BD Q
P Entrar Aplicación 2 Ingresar datos Formulario, etiquetas, botón y BD Q
P Perfil de usuario 3 Crear o editar perfil Formulario, etiquetas, botón y BD Q, P
E Registrarse Aplicación 1 Ingresar datos Formulario, etiquetas, botón y BD Q
E Entrar Aplicación 2 Ingresar datos Formulario, etiquetas, botón y BD Q
E Perfil de usuario 3 Crear o editar perfil Formulario, etiquetas, botón y BD Q, P
P Ver curso 4 Ver cursos activos Etiquetas y BD Q
P Agregar curso 5 Ingresar datos Formulario, etiquetas, botón y BD Q
E Ver curso 6 Ver cursos activos Etiquetas y BD U
E Inscribirse a curso 7 Ingresar datos Formulario, etiquetas, botón y BD C
E Agregarproyecto 8 Subir proyecto Formulario, etiquetas, botón y BD Q
Agregar parte del
E Agregar avance 9
proyecto
Formulario, etiquetas, botón y BD Q
Los requisitos son características del sistema o descripciones de algo que éste es
capaz de hacer, con el objetivo de satisfacer el propósito del mismo, durante esta fase
no se consideran las descripciones específicas de la implementación, por
consiguiente, se centra en los usuarios y en el problema en general [28]. Los
requisitos, se dividen en dos categorías: funcionales (Tabla 2), los cuales describen las
funcionalidades o servicios del sistema; y no funcionales (Tabla 3), los cuales se
refieren a los atributos de calidad del sistema.
Requerimiento Descripción
Perfiles del profesor y Profesores y estudiantes tendrán perfil de usuario; datos
estudiante básicos como nombre, matricula, etc.
El profesor administrara El profesor creará materias para que sus alumnos se
sus materias inscriban y posteriormente suban proyectos a evaluar.
Administración de usuarios Editar usuarios dentro del sistema.
Los estudiantes crean El sistema permitirá al estudiante crear un proyecto para
proyectos ser evaluado
Los estudiantes generan El estudiante podrá subir a lo largo del curso los avances
avances de sus proyectos y/o correcciones de sus proyectos.
El profesor acepta o no El sistema permitirá al profesor dar el visto bueno al
proyectos proyecto del estudiante para que este trabaje a lo largo
del curso.
El profesor evalúa El profesor verá y calificará los proyectos.
Los estudiantes colaboran El sistema permitirá que los estudiantes trabajar
en un proyecto colaborativamente en un proyecto
Los profesores evaluan Los profesores evalúa colaborativamente los diferentes
colaborativamente proyectos de los estudiantes.
Los profesores escribirán Los profesores enviarán observaciones a los estudiantes
observaciones de sus proyectos.
161
Requerimiento Descripción
Desempeño No presentará ningún problema para su manejo e implementación.
Multiplaforma Funcionará en distintos tipos de navegadores web.
Rendimiento Soportar el manejo de una gran cantidad de información durante su
ejecución.
Usabilidad Será fácil de usar,al contar con interfaces intuitivas.
Seguridad El ingreso ala aplicación colabroativa estará restringido bajo usuarios
definidos y contraseñas cifradas.
Portabilidad El sistema deberá brindar comodidad al usuario además de que se
pueda usar con otras herramientas tecnológicas.
12.1.2 Diseño
La interfaz de usuario es el medio con que el usuario puede comunicarse con una
aplicación o computadora, y comprende todos los puntos de contacto entre el usuario
y la computadora. Normalmente, suelen ser fáciles de entender y fáciles de accionar.
[29]. El diseñador de interfaces debe facilitar y simplificar el acceso así como
lanavegación de los usuarios. A menudo se usa la metáfora del viaje o del camino a
recorrer y se presentan iconos o símbolos de interfaz,así como otros dispositivos que
tienen que ver con las señales utilizadas en mapas, urbanismo o arquitectura. [30].
Por una parte,para el diseño de la aplicación, se decidió usar como color primario
el color azul, los colores secundarios son verde y rojo, se pone énfasis en el uso de los
colores porque despiertan respuestas emocionales específicas en las personas y con
esto se puede lograr una mejor interacción entre los usuarios y el sistema.El azul en la
web permite dar color sin perder la seriedad o formalidad deseada, volviéndolo un
sitio atractivo y lleno de vida [31], también es sinónimo de confianza y seguridad,
además de ayuda a controlar la mente, a tener claridad de ideas y a ser creativos.
Por otra parte, el diseño de la aplicación se desarrolló considerando el modelo
semántico, por cada tarea se generó una interfaz de usuario, que contiene como
elementos los recursos listados en la Tabla 1. Tomando en consideración que una
tarea siempre presenta Vista de Información (muestra los objetos colaborativos y las
operaciones sobre éstos, así que cada acción colaborativa debe ser notificada a la
interfaz de cada miembro del grupo). En caso de ser Paralela o Concurrente Parcial
muestra, además, Vista de Participante (proporciona la conciencia de grupo entre sus
integrantes; permitiendo conocer las actividades del resto de participantes) y si es una
tarea Concurrente Completa despliega, también, Vista de Contexto (presentarecursos
y condiciones que están inmersos en todas las actividades colaborativas que han sido
desarrolladas, lo que se conoce como contexto o memoria de grupo). Por otra parte,
cualquier tipo de tarea requiere implementar un mecanismo de notificación, mientras
la tarea Concurrente Completa necesita agregar un mecanismo de concurrencia para
gestionar los permisos a los recursos compartidos, evitando inconsistencias en la
aplicación.
De esta forma, el modelo semántico simplifico el desarrollo de la aplicación
colaborativa para evaluar proyecto I+D.
12.2 Implementación.
Para implementar este proyecto se tuvo que subir a un servidor dedicado todos los
archivos correspondientes al sistema y también se cargó la base de datos, la cual
recibe la información de los usuarios, así como el contenido de los proyectos. Se
utilizó Windows Azure, porque suministra las herramientas necesarias para poder
hacer la implementación y las pruebas correspondientes.
Para poder acceder al sistema el profesor y el estudiante deben escribir su usuario
y contraseña correspondiente, en esta interfaz (Fig.3) se muestran pocos elementos, lo
que la hace intuitiva y fácil de usar.
También, se tomó en cuenta el modelo semántico, por ello, el desarrollador debe
implementar las tareas que se muestran en la tabla 1, con sus respectivas interfaces de
usuario.
Cuando el estudiante ingresa al sistema se muestra la interfaz de pantalla principal
(Fig. 4) en donde puede ver datos importantes como su clase y el profesor, además de
ver su proyecto actual y en que status se encuentra, con un botón para agregar nuevos
avances y también ver sus datos personales más relevantes.
El estudiante podrá ver en esta interfaz (Fig. 5) su proyecto, la fecha de creación y
en que status se encuentra, además de agregar nuevos avances (Fig. 6) podrá ver las
observaciones que realiza el profesor
163
Fig. 5. Agregar nuevo proyecto.
En la pantalla principal del profesor (Fig.7), éste podrá ver sus materias de cada
periodo, los proyectos de sus estudiantes, en esta parte se muestra la palabra new para
indicarle al profesor que hay nuevos cambios en el proyecto y también tendrá sus
datos académicos.
Fig. 7. Pantalla inicial profesor.
Referencias
165
5 Martínez-Acuña, M.I.: Trabajo Cooperativo Asistido por Computadora. Revista de
divulgación científica y tecnológica de la Universidad Veracruzana, Vol. XVIII-2,(2005)
6 Asana, https://asana.com/product.Accedido el 31 de Septiembre de 2016
7 Wrike, http://www.pcworld.com/article/2603720/wrike-boosts-reporting-capabilities-of-
its-social-project-management-software.html Accedido el 1 de Octubre de 2016
8 dotProject, http://www.dotproject.net/index.php Accedido el 1 de Octubre de 2016
9 Egroupware, http://www.egroupware.org/start.html Accedido el 1 de Octubre de 2016.
10 Robson, E.; and Freeman, E.: Head First HTML and CSS, 2nd Edition, O'Reilly Media
(2012)
11 Libby, A.; Gupta, G.; and Talesra, A.: Responsive Web Design with HTML5 and CSS3
Essentials, Packt Publishing (20016)
12 Schmitt, C.: CSS Cookbook, 3rd Edition, O'Reilly Media (2009)
13 Osmani, A.: Learning JavaScript Design Patterns. O'Reilly (2015)
14 Flanagan, D.: JavaScript: The Definitive Guide, 6th Edition, O'Reilly Media (2011)
15 Crockford, D.: JavaScript: The Good Parts. O'Reilly (2008)
16 Duckett, J.: JavaScript and Jquery: Interactive Front-End Web Development, John Wiley
& Sons, Inc. (2014)
17 Schwartz, B.; Zaitsev, P.; and Tkachenko, V.: High Performance MySQL, 3rd Edition,
O'Reilly Media (2012)
18 Forta, B.: MySQL Crash Course, SAMS (2005)
19 Ullman, L.: PHP and MySQL for Dynamic Web Sites: Visual QuickPro Guide, 4th
Edition, Peachpit Prees (2012)
20 Ullman, L.: PHP for the Web: Visual QuickStart Guide, 4th Edition, Peachpit Prees
(2011)
21 Myer, T.: Professional CodeIgniter 1st Edition, Wiley Publisher Inc. (2008)
22 Addy, O.: Learning JavaScript Design Patterns. O’Reilly (2015)
23 Goldberg, A.:Smalltalk-80: The Interactive Programming Environmen’t. Addison-
Wesley, (1984)
24 Modelo Vista Controlador (MVC), Universidad de Alicante, Accedido 14 de Enero de
2016 http://si.ua.es/es/documentacion/asp-net-mvc-3/1-dia/modelo-vista-controlador-
mvc.html. Accedido el 30 de Septiembre de 2016
25 Materialize. Un framework web front-end moderno y responsivo basado en Material
Design. http://materializecss.com/ Accedido el 4 de Agosto de 2016
26 Gruber, R. A translation approach to portable ontology specification. Knowledge
Acquisition. Vol. 5, pp. 199-220, (1993).
27 Dourish, P., Open Implementation and Flexibility in CSCW Toolkits. PhD Thesis.
Department of Computer Science, University College London, 1996
28 Análisis de requisitos http://es.slideshare.net/SergioRios/unidad-13-analisis-de-
requerimientos
29 Interfaz de Usuario. http://www.ecured.cu/Interfaz_de_usuario. Accedido el 31 de
Septiembre de 2016.
30 Interfaz. http://www.hipertexto.info/documentos/interfaz.htm-Accedido el 31 de
Septiembre de 2016
31 Color. http://es.slideshare.net/telmoviteri/el-color-en-la-educacin. Accedido el 31 de
Septiembre de 2016
Gestión Colaborativa de Eventos Académicos
basada en un Patrón Arquitectónico
1. Introducción
167
Por otra parte, dicho desarrollo se ha visto soportado por una variedad de
metodologías y/o modelos, que reducen el esfuerzo,tiempo y costo empleado en el
mismo.
Por consiguiente, en este proyecto se genera el front-endy back-endde la aplicación
colaborativa de gestión de eventos académicos. El primero, se centra en un conjunto
de formularios o plantillas web; que ayudan a la configuración, gestión y uso de la
misma. Mientras el segundo, consiste en crear y manipularlas bases de datos, verificar
manejos de sesiones de usuarios, montar la página en un servidor, y desde el mismo
“servir” (proporcionar) todas las vistas que el front-end crea.
El desarrollo de la aplicación está basado en el patrón arquitectónico Modelo-
Vista-Controlador (MVC) [6, 7, 8], que ha sido modificado para especificar, diseñar e
implementar cada una de las entidades implicadas en dicho desarrollo; permitiendo
obtener fácilmente los elementos correspondientes tanto al front-end como al back-
end para la gestión de eventos académicos.
El presente documento se organiza de la siguiente manera: En la sección 2 se
presentan los trabajos relacionados. En la sección 3 se describe el patrón
arquitectónico MVC modificado para desarrollar aplicaciones colaborativas. En la
sección 4 se explica el desarrollo tanto del front-endcomo delback-end tomando como
fundamento dicho patrón. Finalmente, en la sección 5 se ofrecen las conclusiones y el
trabajo futuro.
2. Trabajos relacionados
Se revisaron varias aplicaciones [9, 10, 11, 12, 13, 14, 15] similares a la Gestión
Colaborativa de Eventos Académicos. En general se puede decir que éstas presentan
las siguientes funciones: creación de eventos, promoción, inscripción, presentación de
los eventos del día, modalidades, cuotas. De manera particular, es interesante
considerar que estas aplicaciones ofrecen la posibilidad de dar a los usuarios acceso a
servicios e información de eventos por medio de tecnologías web. Por tanto, brindan:
Simplicidad de despliegue:Tienen la disponibilidad de un explorador y una
conexión de red, dos características que se consiguen ampliamente.
Soporte multiplataforma: Se basan en protocolos y formatos estandarizados
soportados por una gran cantidad de plataformas.
Actualización automática para los clientes: Como dichas aplicaciones son
almacenadas en servidores, al realizar una actualización requierenúnicamente
el despliegue de nuevos archivos en los servidores.
Por otra parte, el desarrollo de la mayoría de estas aplicaciones utilizan tecnologías
web, tales como: lenguajes de programación, principalmente PHP y HTML [9, 10, 11,
13, 14, 15], Lenguaje de modelado unificado [9,14], Arquitectura de tres capas [9] y
Arquitectura MVC [12]. Aunque algunas de estas aplicaciones se basan en modelos,
éstos no están centrados en el desarrollo de aplicaciones colaborativas.
La aplicación de Gestión Colaborativa de Eventos Académicos propuesta se basa
en un patrón arquitectónico MVC ajustado para crear aplicaciones colaborativas. Por
tanto, dicha aplicación brinda un conjunto de plantillas web que suministran un
entorno para adentrarse a las funcionalidades propias de la gestión de eventos.
Mientras que las aplicaciones analizadas no ofrecen un entorno en el cual el usuario
pueda participar, registrarse y tener comunicación con el administrador de la
aplicación.
La aplicación propuesta suministra:
La actualización de eventos a través de cuentas de usuarios.
Tres tipos de usuarios:Usuario invitado, participante y administrador.
Un calendario interactivo, en el que se podrá consultar los eventos.
Una plantilla con una organización adecuada para el evento.
Una plantilla de registro a eventos.
3. Patrón arquitectónico MVC para desarrollar aplicaciones
colaborativas
169
VISTA
Interfaz de Usuario
Vista de
sequentia Vista de Vista de
Información
l Participante Contexto
SESIÓN
Notificación Concurrencia
CONTROLADOR
Fase
Estructura concurrente
Usuario sequential paralela concurrente
Organizacional secuencial parcial completa
de Grupo
Tarea Actividad
Recurso
Estatus Derecho/
Evento
Obligación
MODELO
Fig. 1.Patrón arquitectónico MVC para desarrollar aplicaciones colaborativas [6].
171
fila representa un registro único y cada columna un campo dentro del registro, de esta
manera, fácilmente se podrá consultar la información guardada en estos registros.
Las tablas contenidas en este sistema son las siguientes:
Tabla evento. Consta de los atributos (véase la Tabla 1): Titulo, lugar,
institución, municipio, estado, país, objetivo, organizadores y colaboradores.
En el sistema web se mostrará el nombre, ubicación y duración del evento,
dando a conocer de igual manera tanto al comité organizador como
colaboradores. Así mismo, se incluye el objetivo del evento, es decir, con qué
fines se realiza o la meta a la que se pretende llegar.
Evento
+Titulo()
+Lugar()
+Institucion()
+Municipio()
+Estado()
+Pais()
+Objetivo()
+Organizadores()
+Colaboradores()
Participante
Usuario_
+Nombre()
+Cargo() +Id()
+Grado() +Usuario()
+Nombre de la Ponencia() +Password()
+Archivo a Subir() * 1..*
+Hora()
+Dia()
Tabla 1. Evento.
Campo Tipo
Titulo varchar(50)
Lugar varchar(50)
Institución varchar(50)
Municipio varchar(50)
Estado varchar(50)
País varchar(50)
Objetivo varchar(50)
Organizadores varchar(50)
Colaboradores varchar(50)
Tabla participante. Contiene los atributos (véase la Tabla 2): Nombre, cargo,
grado, nombre de la ponencia, archivo o reporte que se agregará, hora y día en
que participará. El usuario podrá registrarse en el sistema creando una cuenta
de acceso al sitio, en el formulario de registro tendrá que llenar cada uno de los
campos mencionados, agregando el nombre de la ponencia y adjuntando un
archivo de acuerdo al evento en el que participará, por lo general se trata de un
reporte o en otros casos un Currículum Vitae.
Tabla usuario. Permitirá el control del sistema web, los únicos que podrán
entrar a modificar los eventos y a publicarlos al sitio serán los administradores.
Incluirá los campos: Id, Usuario, Password (véase la Tabla 3).
Tabla 2. Participante.
Campo Tipo
Nombre varchar(50)
Cargo varchar(50)
Grado varchar(50)
Nombre de la Ponencia varchar(50)
Archivo a subir varchar(50)
Hora int(4)
Día date
Tabla 3. Usuario.
Campo Tipo
Id int(11)
Usuario varchar(50)
Password varchar(50)
Además, el sistema contendrá una agenda para que los participantes registren el día
y la hora de su participación dentro de las fechas establecidas de duración del
evento;así se reserva debidamente su lugar en algún evento de los publicados por
dichaaplicación.
173
Fig. 3. Inicio de la aplicación.
Para generar un nuevo evento que solo el rol administrador puede realizar, es
necesario llenar un formulario que contendrácaracterísticas específicas del evento,
como se muestra en la Fig. 6, en esta simulación se presentan las características
queserán almacenadas de cualquier evento que se registre, así como también se
muestra las acciones que podrá realizar el usuario administrador.
Fig. 5. Ingresar a cuenta personal.
175
Fig. 7. Interfaz principal del sistema web.
En la Fig.8, el usuario crea una cuenta para tener acceso al sistema, registrando sus
datos, se le pedirá que ingrese un nombre de usuario, un correo electrónico donde le
llegará una confirmación de que ha quedado registrado en el sistema, ademásde
información relevante acerca de los eventos de la Facultad de Ciencias de la
Computación (FCC), y su contraseña para tener seguridad en su cuenta.
La Fig.9, muestra la plantilla de registro del participante, donde llenará cada campo
con los datos correspondientes, tales como su nombre,responsabilidad(invitado o
participante), grado de estudios, nombre del trabajo que presentará o nombre de la
ponencia que impartirá, en el espacio de adjuntar archivo se pondrá algún tipo de
reporte del mismo proyecto que mostrará, o en otros casos tendrá que subir
documentos de distinto tipo como un currículum vitae, así mismo pondrá el día y la
hora en la que puede exponer dicho proyecto, cabe mencionar que tendrá que cumplir
las fechas establecidas del evento mostradas en un calendario.
177
Fig. 10. Inicio de sesión.
En esta parte, se generaron los diferentes métodos que permiten la interacción del
usuario con las distintas interfaces, así como de las mismas con el Modelo, que está
representado por la base de datos que se construyó de acuerdo a las tablas (1, 2 y 3)
especificadas anteriormente. Por ejemplo, el formulario de la Fig. 9 (interacción del
usuario con la interfaz) toda la información registrada en éste, se quedará guardada
también en la base de datos (interacción de la Vista —Interfaz de registro de
participante— con el Modelo —base de datos del sistema), de esta forma podrá
participar en cada evento que se publique.
5. Conclusiones y trabajos futuros
Referencias
179
26 Osmani, A.: Learning JavaScript Design Patterns. O'Reilly (2015)
27 Flanagan, D.: JavaScript: The Definitive Guide, 6th Edition, O'Reilly Media (2011)
28 Crockford, D.: JavaScript: The Good Parts. O'Reilly (2008)
29 Duckett, J.: JavaScript and Jquery: Interactive Front-End Web Development, John Wiley
& Sons, Inc. (2014)
30 Schwartz, B.; Zaitsev, P.; and Tkachenko, V.: High Performance MySQL, 3rd Edition,
O'Reilly Media (2012)
31 Forta, B.: MySQL Crash Course, SAMS (2005)
32 Ullman, L.: PHP and MySQL for Dynamic Web Sites: Visual QuickPro Guide, 4th
Edition, Peachpit Prees (2012)
33 Ullman, L. PHP for the Web: Visual QuickStart Guide, 4th Edition, Peachpit Prees (2011)
Interfaz para el Lenguaje de Señas
14 Introducción
De acuerdo con las estadísticas del Censo de Población y Vivienda 2010 (INEGI),
existen 5 millones 739 mil personas en el territorio nacional que declararon tener
dificultad para realizar al menos una de las siete actividades siguientes: caminar,
moverse, subir o bajar; ver, aun usando lentes; hablar, comunicarse o conversar; oír
aun usando aparato auditivo; vestirse, bañarse o comer; poner atención o aprender
cosas sencillas; así como limitación mental. Esta cifra representa 5.1% de la
población total del país, de la cual, el 12.1% tiene problemas para escuchar y 8.3%
para hablar o comunicarse [1]. El presente documento es un enfoque basado en el
sector de la comunidad que tiene la dificultad de hablar y comunicarse por un
impedimento físico, en este caso la comunidad sorda.
Según el diccionario de la Real Academia Española, se define como sordomudo(a):
Dicho de una persona que es sorda de nacimiento y que padece por ello graves
dificultades para hablar mediante la voz [2]. Sin embargo, esta condición física no
representa un impedimento para poder ejercer una interacción social con los demás.
La genialidad del ser humano para poder expresar un mensaje en diferentes formas
hacia los que le rodean es una característica digna de ser estudiada.
Uno de los instrumentos utilizados por la comunidad sorda para poder comunicarse
con los demás integrantes de su entorno es el “Lenguaje de Señas”, que consiste en un
conjunto de configuraciones gestuales representativas, permitiéndole expresar
palabras, ideas o frases, de acuerdo a un contexto y lingüísticodeterminado. Este
artículo, presenta un análisis para el desarrollo de una interfaz que permita reconocer
el Lenguaje de Señas Mexicano.
181
Interfaces Naturales de Usuario, poniendo énfasis en el dispositivo Kinect de la
compañía Microsoft. En la Sección 5 se establece un análisis de la información
recolectada para proponer un diagrama de estados que represente de manera general
el uso del lenguaje, y con ello se permita establecer un vínculo más cercano a una
implementación con el usode las interfaces naturales de usuario. Por último, en la
Sección 6 se precisan las conclusiones y trabajofuturo.
15 El Lenguaje de Señas.
2.1. Historia.
Los orígenes de los lenguajes corporales para comunicación se remontan a las formas
estandarizadas de las lenguas de señas usadas en España, Italia y Francia durante el
siglo XVIII para la educación de los sordos. De los antecedentes en México, se
encuentra la creación de la Escuela de sordomudos, además de la fundación de la
Escuela Nacional de Sordomudos. Ambas escuelas fueron creadas por decreto
presidencial. Fue el 15 de abril de 1861 cuando Benito Juárez, quien era Presidente
Interino Constitucional de los Estados Unidos Mexicanos, decreta una Ley de
Instrucción; en el apartado correspondiente De la Instrucción Primaria en la cual
señala, según el artículo tercero, la creación de una escuela de sordomudos. Entre los
objetivos que tenían en esta escuela se encontraban la enseñanza del español tanto en
forma escrita como expresada por medio del alfabeto manual, o de forma oral en caso
de que hubiera “aptitud para ello en el discípulo” [3].
Haciendo referencia a tiempos más recientes, existía la confusión acerca de que el
sistema de lenguaje de señas era universal radicadas en el desconocimiento de la
estructura del mismo lenguaje.Sin embargo,en la realidad existen diferencias de
acuerdo a la región en la que se hace uso de este lenguaje, el documento Lenguaje de
signos mexicano: la identidad como lenguaje del sistema de signos mexicano [4] se
expresan dos premisas importantes acerca de las similitudes que forman parte de este
dilema. Primero, muchos de los lenguajes de signos de América Latina que fueron
implementados son producto de los esfuerzos de misioneros norteamericanos o de
personal del Departamento de Sordos del Cuerpo de Paz de los Estados Unidos. La
segunda razón, de acuerdo con la historia es proporcionada por la comunidad sorda,
ambos lenguajes se derivan del antiguo lenguaje de signos francés, que fue traído a
los Estados Unidos y a México con una diferencia de aproximadamente 50 años: a los
Estados Unidos en 1816 y a México alrededor de 1869. Aunque ambos países ya
tenían personas sordas que usaban señas, éstas se incorporaron al nuevo lenguaje y
con el paso del tiempo se complementaron y adaptaron ampliamente de acuerdo a la
situación existente en cada país.
Como objeto de análisis, en ese mismo documento[4] se abarca un estudio
extenuante acerca de las similitudes entre el Lenguaje de Signos Americano
(American Sign Language,ASL) y la Lengua de Señas Mexicana (LSM), dentro de los
que figuran los modismos, significados discrepantes de acuerdo al contexto y algunos
términos del habla común. [4].
2.2. La estructura del lenguaje.
183
Fig. 3 Ideograma de la palabra “MAMÁ”. Nótese la colocación de la letra m sobre la
barba, tocándola con el dorso de los dedos, y la golpea ligeramente[5].
Esta clasificación mostrada es solo una parte de la estructura básica del lenguaje que puede
ser aprendida a través del uso del diccionario de señas [5]. Para mayor informaciónde la
estructura del lenguaje es posible consultar la tesis de la Dra. Miroslava Cruz Aldrete llamada
“Gramática de la Lengua de Señas Mexicana” [7].
16 Trabajos Relacionados
3.1. HeTAH
185
3.5. DIELSEME y DIELSEME 2.
La Secretaria de Educación Pública (SEP) tiene como meta brindar educación a todos
los niños,en especial a aquellos con discapacidades físicas con el fin de evitar
discriminación. La SEP cuenta con programas de enseñanza del lenguaje de señas que
pueden ser accesibles a través de su sitio web.
Ente algunas opciones que se encuentran disponibleson un diccionario para la
enseñanza, así como un programa didáctico en formato de CD disponible para el
profesor,de manera que el material sirva de apoyo para asistir al alumno[15]. El
material didáctico proporcionado muestra ejemplos de señas, las cuales son apoyadas
con videos, que proporcionan el significado tanto escrito como con los movimientos
de señas.
Este tipo de material resulta de gran ayuda, para usuarios que están comenzando a
comprender la estructura del lenguaje de signos, dado que los ejemplos visuales que
proporciona el software son completamente ilustrativos y relacionados con
actividades cotidianas, tanto personales como escolares.
Uno de los dispositivos más comunes que permite interpretar los movimientos
kinestésicos del cuerpo del ser humano es el Kinect Sensor [18]. Este es un
dispositivo físico que contiene cámaras, micrófonos para el procesamiento de
imágenes del ambiente natural del usuario. Utiliza la tecnología de cámara de
profundidad desarrollada por la compañía israelí PrimeSense, actualmente absorbida
por la compañía Apple en noviembre de 2013[19].
Fig. 4Articulaciones del cuerpo humano (Joints) reconocidas por el Kinect [18].
187
18 Desarrollo
189
Fig. 6. Adaptación de la búsqueda en catalogo para el análisis de dactilologías.
Todas estas reglas mencionadas deberán ser cuidadosamente estudiadas dado que
la riqueza del lenguaje de señas que ofrece para brindar significados o
interpretaciones. Un ideograma también se ve clasificado de acuerdo a la posición
física de las manos y brazos, que al contrario de las dactilologías, la mayoría de estas
últimas son representadas mientras la mano dominante permanece en una posición fija
con respecto al tiempo. Estas características representan datos variables que deben
tomarse en consideración para mejorar la técnica de análisis propuesta. Así que si se
parte del hecho de que puedan existir diferentes significados de acuerdo a una
situación, contexto o lógica dada. Otra variable en torno a esta parte del lenguaje son
los ideogramas inicializados.
Los ideogramas inicializados son un ejemplo de señas cuya característica
primordial es que su presentación es requerido realizar la dactilología correspondiente
a la primara letra de la palabra a expresar [15]. Estas señas son particularmente
especiales gracias a que esta estructura inicial la implementación de los diversos
ideogramas, dado que al tener una base de inicialización, es posible crear un
diccionario inicial de ideogramas inicializados tomando como base el diagrama de
estados de las dactilologías. En el LSM, una gran parte de las señas existentes son
inicializadas con una dactilología.
191
Este impedimento también puede ser abordado con el uso de los sensores de
dispositivo. Esta tarea puede ser explorada del lado de procesamiento de imágenes
con la cámara RGB, también las características de censado de profundidad que trae
consigo el Kinect resultan de gran utilidad para mapear de forma más exacta la
posición de la extremidades.
Referencias
193
Aplicación de Redes Neuronales en Reconocimiento de
Imágenes
Resumen.El siguiente trabajo está basado en pruebas con las redes neuronales
LVQ y Kohonen aplicado al reconocimiento de imagen implementado en la
identificación de credenciales, iniciando desde el entrenamiento de cada red
para su aprendizaje hasta las pruebas de efectividad para poder comparar dichas
redes.
Palabras Clave: Inteligencia Artificial,Redes Neuronales, Reconocimiento de
Imagen, Entrenamiento de Redes.
1 Introducción
Para este proyecto, se ocuparon dos tipos de redes neuronales como prueba de
rendimiento para la identificación de imágenes Kohonen y LVQ (learning vector
quantization), las referencias [1] y [3] mencionan de forma detallada las
características principales de estas redes.
195
Algoritmo híbrido entre aprendizaje no supervisado y supervisado, la segunda capa es
no supervisada mientras que la primera capa es supervisada; donde la primera capa es
asignada a una clase y cada clase se la asigna una a la siguiente capa donde lo esencial
es que cada vector no tiene que normalizarse para el cálculo de sus distancias,
compitiendo entre ellas para su salida y en base a los resultados se ajustan los pesos.
Esta técnica es empleada para la transmisión de datos, clasificación de patrones y
reconociendo de imágenes y algunos problemas que pueden surgir con este método
son la falta de entrenamiento y el número de iteraciones elegidas deben ser precisas
para un buen desempeño.
La característica principal de esta red son los mapas topológicos autorganizado, este
método es no supervisado y competitivo, donde consta de dos capas, una de entrada y
otra de competición donde realiza el procesamiento y siendo un método lateral donde
genera relación con sus redes vecinas.
Sus aplicaciones son similares a las de LVQ, pero es óptima para control de
movimiento en espacios tridimensionales y útil para establecer relaciones entre datos.
2 Desarrollo
197
b. Actualiza los pesos (clústeres) del similar o sus vecinos más
próximos, con el valor alfa.
Con LVQ:
1. Al igual que Kohonen, contiene dos capas con conexiones laterales pero
inicializa los clúster con las imágenes que se quieren identificar llamados
“targets”.
2. Mientras un valor alfa con un valor de decaimiento constante sea mayor a un
mínimo dado, se repite lo siguiente:
a. Busca el clúster parecido a la entrada, con la distancia euclidiana
como discriminador.
b. Actualizan los pesos (clúster) del similar y sus vecinos más
próximos, con el valor alfa.
3. La diferencia con Kohonen, requiere de salidas deseadas por cada entrada,
así, la actualización depende de la coincidenciadel clúster más cercano y el
deseado, si son iguales:
a. La actualización suma la entrada (para semejarla)
b. O restarla (distanciarlas entre ellas)
Se realizaron dos diferentes pruebas principales: la primera etapa donde verifica con
las mismas imágenes de la base de datos, la eficiencia de las redes neuronales, los
resultados de las pruebas se muestran en la imagen 6.
No. De muestras 1 6 2 7
100.00% 100.00% 100.00% 14.29%
Kohonen
100.00% 100.00% 100.00% 85.71%
LVQ
Encontrando una mayor efectividad del método LVQ sobre Kohonen al generar
menos error en las credenciales con mayor concentración de muestras, las de tipo
color naranja.
199
4 Conclusiones y trabajos futuros
La red neuronal con mejor rendimiento fue la técnica LVQ con un alto porcentaje
de aciertos al identificar tanto usuarios como tipo de credencial, Kohonen con éxito
realiza su mayor característica, la topología entre credenciales, como se observa en la
figura 8 pudo colocar en clúster cercanos las credenciales semejantes con lo que se
concluye que puede realizar la topología de imágenes sin necesidad de supervisar las
salidas y categorizarlas.
Al ser un entrenamiento con pocas muestras, el ser supervisado es recomendable
ya que no dificulta colocar los objetivos (target) que requiere LVQ por lo que lleva
una ventaja sobre Kohonen en este criterio, asimismo Kohonen es susceptible al ruido
de imágenes por el hecho de ser no supervisada, por lo que podemos concluir que
LVQ es el mejor método que no requiere tantos recursos de entrenamiento, con pocas
muestras puede llevar una buena categorización y se desempeña de modo supervisado
y con pocos objetivos de manera altamente efectiva; en cambio, métodos como ART
y Backpropagation requiere de mayores recursos RAM y maypr heurística para su
implementación por esta razón adjudicamos los malos resultados al tratar de
implementar estos métodos, al contrario, k-Means logró resultados regulares pero se
recomienda ser una técnica se complemento a otra red neuronal para una mayor
efectividad.
Como trabajos futuros, al ser ART una técnica de mejor desempeño es este tipo de
aplicaciones, encontramos que tiende a hallar los factores de error por
experimentación y análisis riguroso con la finalidad de evitar sobreentrenamiento o
falta de entrenamiento, en trabajos posteriores, mejorar este método es de prioridad
alta como prueba de que esta red es ideal para reconocimiento de imágenes con alto
contenido de análisis; Backpropagation requiere de mayor número de muestras, así
como encontrar las iteraciones correctas para un menor error, por último implementar
K-means como mejoramiento en otras técnicas para lograr una mayor eficiencia, sin
tanto recurso computacional.
Referencias
201
Sistema de Rehabilitación basado en un
Exoesqueleto para Mano. (S.R.E.M.)
1. Introducción
Así mismo como lo indica [7], en su tesis de maestría, el autor diseño y construyó
una prótesis robótica de mano que realiza agarres prensibles a partir de ordenes
efectuadas desde un sistema de mando. El diseño mecánico de la prótesis se realizó en
CAD (Diseño Asistido por Computadora). La mano de este trabajo tiene 6 GDL, los
dedos pueden realizar movimientos de flexo-extensión y además el dedo pulgar puede
realizar movimientos de prono-supinación. La mano está equipada de sensores de
fuerza y de posición, este trabajo consideró diversas propuestas de exoesqueletos
tanto del mercado como propuestas en vías de desarrollo para así lograr un diseñó
orientado hacia sectores que incluyen a personas de bajos recursos.
203
Fig. 1. Diseño en CAD del sistema mecánico para una falange, donde se muestra en la
primera imagen la falange extendida, y en la siguiente imagen el desplazamiento para cerrar.
Fig. 3.
Sistema
3. Conclusión.
Con la elaboración de este sistema podremos apoyar a la rehabilitación de las
personas que padecen espasticidad en las manos, además de ser accesible por el bajo
costo que se plantea, y de esta manera contribuir social, económica y
tecnológicamente.
Con los resultados obtenidos hasta el momento para la falange del dedo
meñique, resta replicar estos movimientos en las demás falanges del mismo dedo,
considerando las dimensiones correspondientes a cada una de ellas. Posteriormente,
se realizará una optimización, logrando así continuar con la línea de investigación
para este tipo de lesiones.
En lo que respecta al sistema electrónico que se encarga del control del sistema
mecánico, su complejidad hasta el momento es lograr la apertura y cierre de la mano,
sin embargo, ya se tiene una visión de este sistema para que no solo se encargue del
movimiento, sino que también realice un monitoreo de la fuerza empleada en las
rutinas dictaminadas y se pueda determinar si es que existe una mejora o incluso que
tipo de rutinas son las adecuadas.
Referencias
1. Ocampo Gustavo, Rondón Julián, Diseño y construcción de una Mano robot de cuatro
dedos que imite los modelos prensiles humanos, Universidad Militar Nueva Granada,
Articulo , 2004.
2. Garcia F., Martinez Alvarez J., Diseño mecatrónico de un dedo antropomórfico, Universidad
Politécnica de Cartagena / Murcia, Articulo, España.
205
3. Lotti F., Basura G., A Novel Approach to Mechanical Design of Articulated Fingers for
Robotic Hands, Articulo.
4. Ceccarelli M., Nava Rodriguez N., Optimal design of driving mechanism in A 1-D.O.F.
Anthropomorphic finger,vol. 41, no. 8, pp. 897-911 Mechanism and machine theory, 2006.
5. INEGI,http://cuentame.inegi.org.mx/poblacion/discapacidad.aspx?tema=P, Censo de
Población y Vivienda 2010, 2016
6. Áviles Oscar, Rosário Mauricio & Niño Paola, Diseño de un Sistema Mecatrónico
Antropomórfico de Cinco Dedos, articulo, 2010.
7. Quinayás Burgos, Cesar Augusto, Diseño y construcción de una protesis robótica de mano
funcional adaptada a varios agarres, Popayán , 2010.
Modelado Dinámico de un Sistema de Paneles Solares
20 Introducción
El Sol contiene más del 99% de toda la materia del Sistema Solar. El Sol se formó
hace 4.650 millones de años y tiene combustible para 5.000 millones más, es también
nuestra principal fuente de energía, que se manifiesta, sobre todo, en forma de luz y
calor [1].
El uso de paneles solares ha causado gran impacto en el mundo, aprovechando la
energía solar y transformándola en energía eléctrica. La función de los paneles
solares es convertir la energía que es emitida por el sol en energía eléctrica,
disminuyendo en este proceso la contaminación que otros tipos de energía generarían.
En el mundo se tienen zonas geográficas con distintas condiciones que permiten el
aprovechamiento de la energía solar, dentro de esas zonas México se encuentra como
uno de los países más favorecidos para aprovechar este recurso. Por este motivo se
realizan esfuerzos en distintos institutos y universidades en el país para desarrollar la
tecnología necesaria que optimice el aprovechamiento de este recurso, reduciendo la
explotación de recursos no renovables (petróleo).
En este trabajo se propone una metodología de optimización de la energía solar
aplicable a distintos entornos geográficos, mediante un prototipo autónomo y
reconfigurable basándonos en el desarrollo e implementación de un modelo
matemático del sistema.
En este trabajo nos enfocamos exclusivamente en la obtención de un modelo
matemático que describa el movimiento del sistema ya que un sistema diseñado para
aprovechar la energía solar debe estar optimizado en cada etapa, pero esto se logra
analizando y modelando desde el sistema dinámico hasta el sistema electrónico de
control. Ya que el movimiento de los paneles solares se lleva a cabo con motores y
estos son alimentados con voltaje preferentemente del mismo panel, es de vital
importancia que se conozcan las características del movimiento y su evolución
temporal, a fin de que el sistema de control posea esta información y cuando el
sistema libere la acción de control, en ese caso la salida dependa no solo de la
ubicación final del panel sino de las características de movimiento como velocidad
207
aceleración y desplazamiento del panel. De esta forma el panel ira a la ubicación
deseada optimizando el consumo de energía para su movimiento.
2 Metodología
Se propone una metodología que inicia con la obtención del análisis de cuerpo libre
del motor para obtener la ecuación diferencial que rige el movimiento del eje del
motor, posteriormente se lleva esta ecuación a variables de estado y finalmente
después de utilizar un gráfico de flujo de señal se resuelve con la fórmula de ganancia
de Mason.
3 Modelado matemático
Donde:
• T : Torque
• ∝ (𝑡) : Desplazamiento Angular
• a: coeficiente de amortiguamiento de velocidad angular
• b: coeficiente de amortiguamiento para desplazamiento angular
• m: masa
209
El diagrama de cuerpo libre de la figura 3. representa simbólicamente todas las
fuerzas que están actuando en este caso en el eje del motor, y se construye de la
siguiente forma. Lo primero que se debe considerar es que el movimiento es debido al
torque T(t) que genera el voltaje aplicado al motor y que se supone una dirección sin
pérdida de generalidad en el mismo sentido del desplazamiento angular (t). lo
siguiente a considerar es que el sistema al poseer una masa m, debe tener un
amortiguamiento en la aceleración angular dado por la segunda derivada del
desplazamiento angular, esta fuerza se encuentra en sentido contrario al torque o
fuerza aplicada y al desplazamiento. Posteriormente también se localiza una fuerza
que se opone al cambio en la velocidad y esta es dada por el coeficiente a y la primera
derivada del desplazamiento angular, y finalmente un coeficiente para el cambio en el
desplazamiento. Todos estos coeficientes de amortiguamiento son opuestos al
desplazamiento y son los encargados de frenar el movimiento del sistema y su origen
puede ser variado, como gravedad, fricción interna del motor, fricción mecánica del
dispositivo físico, ruido en la señal de alimentación y control de los motores, etc.
gracias al diagrama de cuerpo libre es posible obtener de forma sencilla la ecuación
diferencial que nos representa el modelo matemático del sistema, la cual es una
ecuación diferencial lineal no homogénea de segundo orden, como se muestra en
seguida.
𝑑 2 𝛼(𝑡) 𝑑𝛼(𝑡)
𝑇(𝑡) = 𝑚 +𝑎 + 𝑏𝛼(𝑡) = 𝑚𝛼̈ + 𝑎𝛼̇ + 𝑏𝛼 (1)
𝑑𝑡 2 𝑑𝑡
𝑥̇ 0 1 𝑥1 0
( 1 ) = (− 𝑏 −
𝑎 ) ( ) + ( 1 ) 𝑇(𝑡)
𝑥 (3)
𝑥̇ 2 𝑚
2
𝑚 𝑚
𝑥1
∝ (𝑡) = (1 0) (𝑥 ) (4)
2
Donde
0 1
𝐴 = (− 𝑏 − )
𝑎 (6)
𝑚 𝑚
0
𝐵 = (1) (7)
𝑚
𝐶 = (1 0) (8)
𝐷=0 (9)
Donde:
𝑇𝑖 : i_esima trayectoria directa que une entrada con salida
∆ : 1-∑ 𝑙𝑖 + ∑ 𝑙𝑖 𝑙𝑗 -∑ 𝑙𝑖 𝑙𝑗 𝑙𝑘
∆𝑖 : ∆ -(elementos que tocan la i_esima trayectoria directa )
li: i_esimo lazo de ganancia o trayectoria cerrada.
li lj: pares de lazos de ganancia disjuntos.
Entonces tenemos que
1 1
∝(𝑆) 𝑚𝑠2
= 𝑎 𝑏 = 𝑚
𝑎𝑆 𝑏 (11)
𝑇(𝑆) 1+ + 2 𝑆 2+ +
𝑚𝑠 𝑠 𝑚 𝑚 𝑚
4. Resultados
211
Esta ecuación de la función de transferencia es el resultado más notable de este
trabajo, ya que se ha obtenido por métodos de análisis de teoría de control y nos
representa el Angulo de salida del eje del motor en términos del torque o función de
entrada del sistema y que en este caso es la señal de excitación del motor, ahora
podemos expresar hecho de forma más clara en la figura 5:
Ahora con esta información podemos proponer una señal de excitación y observar
los efectos en el movimiento, es decir en el desplazamiento angular con respecto al
tiempo. Esto se logra tomando ∝ (𝑠) = 𝐺(𝑠)𝑇(𝑠) y si suponemos una señal escalón
unitario, la cual es la una de las funciones más utilizadas y que nos brindan mayor
información por sus características de respuesta transitoria y de estado estacionario,
tenemos que si T(s)=1/s, entonces:
1
∝ (𝑠) = 𝑚
𝑎 𝑏 (12)
𝑠(𝑠2 + 𝑠+ )
𝑚 𝑚
5. Conclusiones
Se determinó la ecuación diferencial del modelo matemático dinámico generalizado
del sistema de paneles solares que contiene la información necesaria y suficiente para
determinar la dinámica real de un sistema físico con estas características, ya que la
ecuación diferencial posee los coeficientes de amortiguamiento generalizados y que
dan información de los distintas fluctuaciones o elementos que se oponen al
movimiento y las derivadas de este como velocidad y aceleración, y que están
relacionados con desgaste, ruido eléctrico, la carga, etc.
Se transformó el sistema de ecuaciones diferenciales convencional en un sistema
más sofisticado para su solución, como lo es el método de variables de estado ya que
este método puede utilizarse para resolver sistemas de múltiples entradas y múltiples
salidas, mediante esta técnica las ecuaciones diferenciales de cualquier orden se
reducen a ecuaciones de primer orden y adquieren un carácter vectorial, pero sin
embargo, aunque en este problema no se utilizó, también pueden existir señales de
excitación que contienen sus derivadas, lo que sin duda vuelve el sistema mucho más
complejo e incluso imposible de resolver con técnicas convencionales.
Se determinó la función de transferencia utilizando la regla de Mason y Gráficos
de flujo de señal. Estas técnicas son también herramientas sofisticadas del control
moderno a diferencia de los diagramas de bloques y el álgebra asociada para resolver
estos sistemas, ya que los sistemas lineales pueden representarse en un gráfico de
flujo de señal y resolverlo con la fórmula de Ganancia de Mason, lo que permite
visualizar y resolver sistemas mucho más complejos. Pero la virtud principal de ellos
es que es posible determinar la función de transferencia no solo entre puntos inicial y
final sino también en puntos intermedios y que podrían ser incluso imposibles de
medir o imaginar.
Finalmente se ha comprendido la teoría de control y se ha logrado implementar
esta metodología para extraer de un sistema físico real la información que nos
permitirá diseñar el sistema de control con relativa facilidad, así como el proceso de
optimización de este. Y por si fuera poco implementarlo en cualquier sistema del cual
poseamos información y su evolución temporal.
Referencias
213
1. IEA, 2008. Renewables Information 2008.
2. Nilsson N. J., Artificial Intelligence: A New Synthesis. Morgan Kaufmann
Publishers, Inc. (1998).
3. Rich E. y Knight K., Artificial Intelligence. Mac-Graw Hill, Inc. (1991).
4. Winston P. H. y Horn B. K. P., Lisp. Addison-Wesley Pub. Comp. (1981).
5. Planning, Learning, and Executing in Autonomous Systems
6. Un Método de Ponderación de Planes en Sistemas Inteligentes Autónomos
7. Robots Autónomos:” Arquitectura y Control “, Autores :José Manuel Molina
López ,Vicente Matellan Olivera
8. Ogata, Katsuhiko, “INGENIERÍA DE CONTROL MODERNA”, Pearson
Prentice Hall. México, (2002).
9. Nise, Norman S., “Sistemas de control para ingeniería”, Grupo editorial patria,
México, (2008).
10. Bolton, W., “Ingeniería de control”, Alfaomega. México, (2009).
11. Soisson, Harold E., “Instrumentación industrial”, Limusa Noriega Editores
.México, (1997).
12. Ernest E. Doebelin, “Sistemas de medición de instrumentación diseño y
aplicación”, Editorial McGraw Hill. México, (2005).
13. Julio Duarte, Flavio Hernández, Mauricio Moreno, “Técnicas de medida para
pequeños desplazamientos”, Centro Nacional de Microelectrónica de la
Universidad Autónoma de Barcelona, (2008).
14. Autores varios, “Enciclopedia de la ciencia y la técnica”, Ediciones Nauta.
España, (1979).
15. Mario R. Modesti, Pablo M. Savanco, “Control en tiempo real de un horno para
aplicaciones químicas”, Centro de Investigaciones en Informática para la
Ingeniería (CIII), Universidad Tecnológica Nacional- Facultad Regional
Córdoba Argentina, (2005).
16. Ogata, Katsuhiko, “PROBLEMAS DE INGENIERÍA DE CONTROL
UTILIZANDO MATLAB”, Pearson Prentice Hall. México, (1999).
17. Autores varios, “Enciclopedia de la ciencia y la técnica”, Ediciones Nauta.
España, (1979).
18. Mario R. Modesti, Pablo M. Savanco, “Control en tiempo real de un horno para
aplicaciones químicas”, Centro de Investigaciones en Informática para la
Ingeniería (CIII), Universidad Tecnológica Nacional- Facultad Regional
Córdoba Argentina, (2005).
19. Ogata, Katsuhiko, “PROBLEMAS DE INGENIERÍA DE CONTROL
UTILIZANDO MATLAB”, Pearson Prentice Hall. México, (1999).
20. Aguado, Behar Alberto. Martínez Iranzo Miguel, “IDENTIFICACIÓN Y
CONTROL ADAPTATIVO”, Ed. Prentice Hall. España, (2003).
21. Rodríguez, Ávila Jesús Ernesto, “INTRODUCCIÓN A LA INGENIERÍA DEL
CONTROL AUTOMÁTICO”, Ed. McGraw-Hill. México, (1998).
22. Golten, Jack. Verwer, Andy, “CONTROL SYSTEM DESIGN AND
SIMULATION”, Ed. McGraw-Hill. Singapore, (1991).
23. Paraskevopoulos, P.N., “MODERN CONTROL ENGINEERING”, CRC Press
Taylor & Francis Group. U.S.A, (2002).
24. Kuo, Benjamin C., “SISTEMAS DE CONTROL DIGITAL”, Compañía
Editorial Continental. México, (2006).
25. C., Robert Dunn, “INSTRUMENTATION, SENSORS AND PROCESS
CONTROL”, Artech House. UK, (2006).
LISTA DE AUTORES
NOMBRE NACIONALIDAD
Amador Alarcón María del Pilar Mexicana Editora
Anzures García Mario Mexicana Editor
Cruz Almanza Graciano Mexicana Editor
Santiago Díaz María del Carmen Mexicana Editora
Sandoval Solís María de Lourdes Mexicana Editora
Rubín Linares Gustavo Trinidad Mexicana Editor y
Coordinador
215
Montoya Manzano Fernando Mexicana
Morales Mateos Erika Mexicana
Morales Ramírez Oscar Mexicana
Morales Zitlalpopoca Yasmin Mexicana
Páez López Arturo Mexicana
Parra Carpio Carlos Emmanuel Mexicana
Parra Suárez José Luis Arturo Mexicana
Pastor Hernández Ricardo Mexicana
Ponce Hinestroza Vicente Yair Mexicana
Portillo Robledo José Francisco Mexicana
Quintero Espinoza Mauricio Mexicana
Rivera Martínez Marcela Mexicana
Rodríguez Hernández Miguel Mexicana
Rosales Corripio Jocelin Mexicana
Rubín Alvarado Abel Alejandro Mexicana
Rubín Linares Gustavo Trinidad Mexicana
Salazar Arrieta José De Jesús Mexicana
Sánchez Gálvez Luz Adolfina Mexicana
Sánchez Urrieta Susana Mexicana
Sandoval Orozco Ana Lucia Mexicana
Sandoval Solís María de Lourdes Mexicana
Saynes Torres Lessia Mexicana
Suárez Arana José Martín Mexicana
Temozihui Tlahuel Valeria Mexicana
Torralba Ayance Adán Mexicana
Treviño Sánchez Daniel Mexicana
Trinidad García Gregorio Mexicana
Vázquez Vázquez Miguel Mexicana
Villegas Hernández Juan Carlos Mexicana
COMPILADORES
REVISORES
Gustavo Rubín Linares
Arturo López Olvera
Iván Olmos Pineda
Luz A. Sánchez Gálvez
Mario Ansurez García
Maya Carrillo Ruiz
Mario Bustillo Díaz
Enrique Colmenares Guillen
Miguel Rodríguez Hernández
Pilar Amador Alarcón
Nicolás Quiroz Hernández
Elsa Chavira Martínez
Rogelio González Velázquez
Andrés Vázquez Flores
Lourdes Sandoval Solís
Beatriz Beltrán Martínez
Carmen Santiago Díaz
Martin Estrada Analco
Teresa Torrijos Muñoz
José Ítalo Cortez
EDITORES
Amador Alarcón María del Pilar
Anzures García Mario
Cruz Almanza Graciano
Santiago Díaz María del Carmen
Sandoval Solís María de Lourdes
Rubín Linares Gustavo Trinidad
217
INVESTIGACION Y APLICACIONES DE LAS
CIENCIAS COMPUTACIONALES
EDITORES
219
INVESTIGACION Y APLICACIONES
DE LAS CIENCIAS
COMPUTACIONALES