Uploaded by Daniel Jara

Control automatico de rondas

advertisement
Administración Inteligente de un Sistema Electrónico de
Control de Rondas mediante Algoritmo ID3.
Daniel H. Jara Rivas
Universidad Nacional Mayor de San Marcos
Facultad de Ingeniería Electrónica y Eléctrica - Unidad de Posgrado
jara_daniel@hotmail.com
Resumen. Un Sistema Electrónico de Control de Rondas proporciona la evidencia de
las visitas realizadas a los lugares con puntos de control de una ronda de vigilancia o
supervisión mediante de reportes históricos por fecha y hora; sin embargo, no es
suficiente para una evaluación de desempeño ni permite la programación automática.
El presente artículo propone la administración inteligente de un sistema electrónico de
control de rondas. La solución se basa en el aprendizaje automático supervisado
aplicando Árbol de Decisiones con algoritmo ID3, con el que se obtiene un control
diario del desempeño de las rondas de supervisión, así como su administración
automática y predictiva.
Palabras clave: Árbol de Decisiones, algoritmo ID3, entropía. Tiempo UTC.
Abstract. An electronic guard patrol system gives us evidence of the checkpoints
visited in one patrol of vigilance or supervision through historical records by date and
hour; however, the basic administration software don’t let us make reports about the
performance or bring forward the patrols.
This article suggests an intelligence electronic guard patrol system for the
administration of a security company. Considering a solution based on the Machine
Learning with Decision Tree using ID3 algorithm obtained the daily performance of the
guard patrols, and also an automatic and predicted administration.
1. INTRODUCCIÓN.
Una empresa que brinda servicios de vigilancia realiza labores de supervisión diaria a
los locales o unidades bajo su responsabilidad, emplea un sistema electrónico de control
rondas con la intención de mantener un registro y evaluar su desempeño tanto en el
cumplimiento de supervisión diaria a cada unidad, como la optimización del uso de las
unidades móviles; para ello han sectorizado la ciudad por zonas debido a su extensión
geográfica y a la cantidad de unidades. Las rondas se realizan diariamente en dos turnos
de 12 horas; cada zona por turno esta a cargo de un supervisor zonal y una unidad móvil
con chofer.
La ronda de supervisión parte de la oficina central hacia las unidades, no se establece un
rol y la elección de las unidades a visitar es aleatoria o condicionada por algún evento.
Se desarrolla en función de visitar la mayor cantidad de unidades en función del tiempo
disponible.
Se requiere administrar las rondas de manera que se garantice la visita diaria a todas las
unidades en alguno de los turnos. Para ello se debe saber que unidades se han visitado
en el turno anterior a fin de visitar las restantes. Se debe tomar en cuenta la cantidad de
agentes en la unidad, la distancia, el tiempo en llegar y si la unidad cuenta con
supervisión interna. Con esta información se elaborara de manera automática un rol de
ronda del turno siguiente. Posteriormente; en otros trabajos, se puede evaluar otros
factores que incidan en la elaboración y el cumplimento de dicha programación.
MARCO TEÓRICO.
UTC, Tiempo UNIX y Formato Videx UTC.
El tiempo universal coordinado, o UTC, en inglés, es el tiempo de la zona horaria de
referencia respecto a la cual se calculan todas las otras zonas del mundo. El 1 de enero
de 1972 paso a ser el sucesor del GMT (Greenwich Mean Time: tiempo promedio del
Observatorio de Greenwich, en Londres).
Tiempo Unix o Tiempo POSIX es un sistema para la descripción de instantes de
tiempo: se define como la cantidad de segundos transcurridos desde la medianoche
UTC del 1 de enero de 1970, sin contar segundos intercalares. Es universalmente usado
no solo en sistemas operativos tipo-Unix, sino también en muchos otros sistemas
computacionales. No se trata ni de una representación lineal del tiempo, ni de una
representación verdadera de UTC (a pesar de que frecuentemente se lo confunde con
ambos), pues el tiempo que representa es UTC, pero no tiene forma de representar
segundos bisiestos de UTC (por ejemplo, 1998-12-31 23:59:60).
El formato Videx UTC, es una representación entera del número de segundos contados a
partir del 1 de enero de 1996.
Machine Learning.
El Aprendizaje Automático o Aprendizaje de Máquinas es una rama de la Inteligencia
Artificial cuyo objetivo es desarrollar técnicas que permitan a las computadoras
aprender. De forma más concreta, se trata de crear programas capaces de generalizar
comportamientos a partir de una información no estructurada suministrada en forma de
ejemplos. Es, por lo tanto, un proceso de inducción del conocimiento.
Algoritmo ID3
El algoritmo ID3 es utilizado dentro del ámbito de la inteligencia artificial. Su uso se
engloba en la búsqueda de hipótesis o reglas en él, dado un conjunto de ejemplos. El
conjunto de ejemplos deberá estar conformado por una serie de tuplas de valores, cada
uno de ellos denominados atributos, en el que uno de ellos, (el atributo a clasificar) es el
objetivo, el cual es de tipo binario (positivo o negativo, si o no, válido o inválido, etc.)
De esta forma el algoritmo trata de obtener las hipótesis que clasifiquen ante nuevas
instancias, si dicho ejemplo va a ser positivo o negativo.
El objetivo es:
 Construir un árbol de decisión que explique cada instancia de la secuencia de
entrada de la manera más compacta posible a partir de una tabla de inducción.
 En cada momento elige el mejor atributo dependiendo de una determinada
heurística.
 Determinar las variables que portan información relevante para la solución del
problema y;
 Establecer la secuencia dentro del árbol de decisión.
Características:
 Crear un árbol de decisión como un método para aproximar una función objetivo de
valores discretos, que es resistente al ruido en los datos y que es capaz de hallar o
aprender de una disyunción de expresiones.
 El resultado puede expresarse como un conjunto de reglas Si-entonces.
 Intenta encontrar el árbol más sencillo que separa mejor los ejemplos.
 Es recursivo.
 No se realiza “backtracking”.
 Utiliza la entropía.
Los elementos son:
 Nodos: Los cuales contendrán atributos.
 Ramas: Los cuales contienen valores posibles del nodo padre.
 Hojas: Nodos que clasifican el ejemplo como positivo o negativo.
Los Datos se definen como:
 Atributos: Son los factores que influencian la clasificación o decisión.
 La selección de atributos debe basarse en el conocimiento acumulado por la
experiencia.
 En este algoritmo cada atributo forma un nodo intermedio en un árbol cuyas
hojas o nodos terminales son las clases o decisiones.
 Clase: Posibles valores de solución
 Ejemplos: Es el conjunto de combinaciones de atributos dados.
 Dado el conjunto de ejemplos, el ID3 selecciona el atributo que subdivide los
ejemplos de la mejor manera.
 Entropía: Es la medida de la incertidumbre que hay en un sistema. Es decir, ante
una determinada situación, la probabilidad de que ocurra cada uno de los
posibles resultados. La función de entropía más usada es la binaria. Su expresión
es con logaritmos base 2:
 p
I ( p, n)   
 pn



 log
2


 p

 pn

  n 
 
 log
2
  pn 
 

 n

 pn





Cálculo del total de la entropía de los atributos:
E(A)=((p1+n1)*I(p1,n1)+(p2+n2)*I(p2,n2)+...+(pv+nv)*I(pv,nv))/(p+n)


Ganancia: Es la diferencia entre la entropía de un nodo y la de uno de sus
descendientes.
En el fondo no es más que una heurística, que como veremos nos servirá para la
elección del mejor atributo en cada nodo.
Ganancia(A) = I(p,n) - E(A)


Un buen criterio parece ser escoger el atributo que gana la mayor información.
ID3 examina todos los atributos y escoge el de máxima ganancia, forma la
ramificación y usa el mismo proceso recursivamente para formar sub-árboles a
partir de los v nodos generados.
Fig. 4. Diagrama de flujo
2. Metodología.
Metodología actual. Los componentes de Hardware del sistema iBR900 de Videx
utilizado son:



iButton. Colocados en cada unidad. Es un chip contenido en un recipiente de
acero inoxidable de 16mm de diámetro, capaz de ser colocado en cualquier
superficie o ambiente, tiene una única e inalterable dirección que es un número
de serie de 48 bits en HEX (e.g. 2700000095C33108).
Colector de Datos iBR900. Mediante este dispositivo se leen los Id. de cada
botón; al realizar una lectura, esta se almacena con la fecha y hora del colector.
La lectura se realiza por contacto. Posee autonomía de un año de funcionamiento
y capacidad de memoria para 9,000 lecturas.
Interfaz IR. Mediante este dispositivo se transfieren los datos contenidos en el
colector de datos al computador de la oficina central al término de cada ronda.
Se conecta a cualquier puerto USB del computador
Fig. 1. Los ibuttons, el colector de datos iBR900 y el Interfaz IR.
El Software básico de administración permite la asignación y etiquetado de los
componentes del sistema y la emisión de reportes históricos de las lecturas (figura 2).
Fig. 2. Como se presentan los datos con el software básico.
Este software esta escrito en Java (para la versión 1.5 o superior). Las aplicaciones se
presentan en web browser mediante un programa llamado Jetty (www.mortbay.org);
Tomcat también puede ser utilizado. Almacena la información donde la fecha y la hora
están en el formato Videx UTC, que es una representación entera del número de
segundos contados a partir del 1 de enero de 1996. El la figura 3, en las columnas
ILE_RECSTAMP e ILE_EVENT se observan dichos datos.
Fig. 3. Base de datos dónde almacenan las lecturas.
Por defecto la base de datos esta escrita en Derby, pero es posible utilizar MySQL o
SQL Server (más información acerca de Derby en www.apache.org). El software
iBR900 puede correr en un servidor para aplicaciones en una LAN o Internet
Metodología propuesta. En primer término determinamos las siguientes variables:
a. Las unidades se denominan ui; dónde i es el número de la unidad.
b. Según la cantidad de agentes que prestan servicio (cantidad establecida por
requerimiento del cliente) Se establece ai como atributo de la unidad:
De 1 a 10 agentes, ai = 1
De 11 a 20 y
ai = 2
> 20
ai = 3
c. Otro atributo heredado es si se visito en el turno anterior.
d. Si las unidades están a cargo o no de un supervisor residente: se define el
atributo s = 0; con supervisor o s = 1; sin supervisor.
e. Se define como clase la visita realizada a la unidad: vi = 1; unidad visitada y vi
= 0; unidad no visitada.
La ronda del primer turno (de 07:00 a 19:00 hrs.) debe iniciar su servicio con una
programación efectuada por el sistema de administración inteligente; que se elabora
teniendo como antecedente el día anterior.
La ronda de segundo turno (de 19:00 a 07:00 hrs. del día siguiente) inicia su servicio
con una programación en base a las visitas realizadas por el turno anterior. De tal
manera que se cumpla el objetivo de visitar todas las unidades de una zona en el día.
Unidad ui
1
2
3
4
5
6
7
8
9
10
Atributo ai
3
3
3
2
1
1
1
1
1
3
Ronda
Anterior vi
Si = 1
Si = 1
Si = 1
Si = 1
No = 0
No = 0
Si = 1
No = 0
No = 0
Si = 1
Para los objetos tenemos las siguientes clases:
p=4,n=6
 4 
 4   6 
 log 
 
 log
I (4,6)   
2
2
 10 
 10   10 



 

3. Conclusiones.
Rondar
(Clase)
Si
Si
No
No
Si
Si
No
Si
Si
Si
Supervisor si
0
0
1
1
1
1
1
1
1
1
 6

 10


  0.9709


De la realización de los cálculos se obtiene el árbol de decisión
4.
5. Referencias.
Manual de iBR9000.
Videx Inc. www.videx.com
Redes Neuronales y Sistemas Borrosos. 3ª edición.
Martín del Brío, Bonifacio; Sanz Molina, Alfredo, (aut.)
Ra-Ma, Librería y Editorial Microinformática
Procesos Aleatorios – Curso Resumido.
Yuri Rozanov. Editorial MIR – Moscu. 1973.
Cálculo Variacional.
M. L. Krasnov. Editorial Latinoamericana. 1976.
Computational Mathematics.
N. V. Kopchenova y I.A. Maron.
MIR Publisher. 1975.
Download