scieee Science in your language
[es] (orig)

Implementación de un algoritmo de aprendizaje para el análisis de series temporales

Abstract

El principal objetivo de este TFG es extender una herramienta para el análisis de series temporales introduciendo un nuevo algoritmo de minado de datos y evaluar su posterior aplicación para el análisis y extracción de patrones de comportamiento en un caso de estudio. Para llevar a cabo dicho análisis y poder examinar diferentes propiedades de estas señales, hemos usado lógica temporal o, más concretamente, una variante de la misma adaptada al análisis de propiedades de series temporales conocida como Signal Temporal Logic (STL). Esta extensión de la lógica temporal incorpora a la sintaxis de lógica de primer orden otros operadores que permiten la generalización de patrones sobre intervalos. El trabajo está dividido en tres fases: una fase de investigación, una fase de implementación de un nuevo algoritmo y su incorporación a una biblioteca de Python ya existente llamada ParetoLib, y una última fase de experimentación sobre datos reales. En particular, aplicaremos nuestra aproximación al análisis y detección de comportamientos (a)normales en el consumo eléctrico, registrados por contadores inteligentes o smart grids.

Read accessible full text

Implementación de un algoritmo de aprendizaje para el análisis de series temporales

Author: Lasheras Martín, Jorge; Morán Alfonso. Carlos
Year: 2023
Source: https://docta.ucm.es/bitstreams/1fa1646f-d580-41ad-b7f8-5eef7ea655f9/download
Implemen ación de un algo i mo de
ap endizaje pa a el análisis de se ies
empo ales
Implemen a ion o a da a mining
algo i hm o analyzing ime se ies
Di ec o es: José Ignacio Requeno & Luis Llana Díaz
Au o es: Jo ge Lashe as Ma ín (GIS) & Ca los Mo án
Al onso (DG-MAT)
T abajo de in de g ado del G ado en Ingenie ía de
Compu ado es e Ingenie ía In o má ica
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
Cu so 2022-2023
Ag adecimien os
En p ime luga , que emos ag adece es e TFG a nues as amilias y amigos, que
siemp e han es ado ahí pa a escucha nos y apoya nos, en los buenos iempos y en los
malos. Sin su cons an e apoyo, ni es e TFG ni nues as espec i as ca e as hubie an
sido posibles.
En segundo luga y no po ello menos impo an e, nos gus a ía ambién ag adece
el g an abajo ealizado po nues os u o es, José Ignacio Requeno y Luis Llana,
po su es ue zo y dedicación. Es e abajo ha sido posible g acias a su ce canía,
disposición, conocimien os, c í icas cons uc i as y ayuda en gene al.
I
Time lies o e us bu lea es i s shadow behind
– Na haniel Haw ho ne
Resumen
El p incipal obje i o de es e TFG es ex ende una he amien a pa a el análisis
de se ies empo ales in oduciendo un nue o algo i mo de minado de da os y e alua
su pos e io aplicación pa a el análisis y ex acción de pa ones de compo amien o
en un caso de es udio. Pa a lle a a cabo dicho análisis y pode examina di e en es
p opiedades de es as señales, hemos usado lógica empo al o, más conc e amen e,
una a ian e de la misma adap ada al análisis de p opiedades de se ies empo ales
conocida como Signal Tempo al Logic (STL). Es a ex ensión de la lógica empo al
inco po a a la sin axis de lógica de p ime o den o os ope ado es que pe mi en la
gene alización de pa ones sob e in e alos.
El abajo es á di idido en es ases: una ase de in es igación, una ase de imple-
men ación de un nue o algo i mo y su inco po ación a una biblio eca de Py hon ya
exis en e llamada Pa e oLib, y una úl ima ase de expe imen ación sob e da os eales.
En pa icula , aplica emos nues a ap oximación al análisis y de ección de compo a-
mien os (a)no males en el consumo eléc ico, egis ados po con ado es in eligen es
osma g ids.
Palab as Cla e
Lógica empo al
Se ie empo al
De ección de anomalías
Con ado es in eligen es
In e az g á ica
Py hon
II
Abs ac
This p ojec ’s main pu poses a e ex ending he cu en unc ionali y o a ime
se ies analysis ool by in oducing a new da a mining algo i hm and es ing said
algo i hm by using i o ex ac and analyse beha iou pa e ns on a case s udy. In
o de o accomplish hese objec i es, we used empo al logic o , o be mo e speci ic,
we used a empo al logic a ian specialized on analysing pa e ns in ime se ies called
Signal Tempo al Logic (STL). STL is an ex ension o s anda d empo al logic whose
syn ax consis s o he s anda d ope a o s used in i s o de logic ex ended wi h a
se ies o new logic ope a o s ha allow o pa e n gene alisa ion o e in e als.
The p ojec has been di ided in h ee di e en phases. Fi s ly, an in es iga ion
phase, ollowed by an implemen a ion phase whe e we implemen ed he da a mining
algo i hm and inco po a ed i o an exis ing lib a y named Pa e oLib and, las ly,
an expe imen a ion phase using eal da a. Mo e speci ically, we will apply ou ap-
p oach o he analysing and de ec ing possibly abno mal beha iou in he elec ical
consump ion egis e ed by sma me e s o sma g ids.
Keywo ds
Tempo al logic
Time se ies
Anomalous beha iou de ec ion
Sma G ids
Guided Use In e ace
Py hon
Índice gene al
1. In oducción 1
1.1. Sis emas cibe ísicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Mo i ación................................. 2
1.3. Obje i os ................................. 2
1.4. O ganización empo al . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4.1. Comienzo y seguimien o del p og eso del abajo . . . . . . . . 3
1.4.2. Repa o del abajo y dedicación . . . . . . . . . . . . . . . . 3
1.4.3. Fases del p oyec o . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5. O ganización del documen o . . . . . . . . . . . . . . . . . . . . . . . 6
2. In oduc ion 9
2.1. Cybe -physical sys em . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2. Objec i es................................. 10
2.3. Timedis ibu ion............................. 10
2.3.1. S a o he p ojec and ollow-up mee ings . . . . . . . . . . . 10
2.3.2. Team managemen and p ojec dedica ion . . . . . . . . . . . 10
2.3.3. Pa s o he p ojec . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4. Documen O ganiza ion . . . . . . . . . . . . . . . . . . . . . . . . . 14
3. STL - In oducción y aplicación 17
3.1. LógicaTempo al ............................. 17
3.1.1. P elimina - Lógica de p ime o den y sus limi aciones . . . . 17
3.1.2. Lógica empo al.......................... 18
Linea Tempo al Logic (LTL) . . . . . . . . . . . . . . . . . . 18
MITL y las limi aciones de LTL . . . . . . . . . . . . . . . . . 21
3.2. STL .................................... 21
III

IV ÍNDICE GENERAL
3.2.1. Señales y se ies empo ales . . . . . . . . . . . . . . . . . . . . 22
3.2.2. Signal Tempo al Logic (STL) . . . . . . . . . . . . . . . . . . 22
3.3. STL - Implemen ación de los ope ado es . . . . . . . . . . . . . . . . 23
3.3.1. STL - Ope ado es lógicos . . . . . . . . . . . . . . . . . . . . . 23
3.3.2. STL - Ope ado es cuan i a i os . . . . . . . . . . . . . . . . . 24
STL es ánda - Ope ado es cuan i a i os . . . . . . . . . . . . 24
STL ex endido - Manipulación de in e alos . . . . . . . . . . 24
3.4. S lE al................................... 25
3.4.1. Inco po ación con Pa e oLib . . . . . . . . . . . . . . . . . . . 25
4. Algo i mo de mine ía de p opiedades STL pa amé icas 27
4.1. In oducción al algo i mo de minado . . . . . . . . . . . . . . . . . . 27
4.2. Paso 1 - Di isión de las celdas . . . . . . . . . . . . . . . . . . . . . . 30
4.2.1. Pa ición ija ........................... 31
4.2.2. Pa ición dinámica . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3. Paso 2 - Encon a la egión de acep ación . . . . . . . . . . . . . . . 37
4.3.1. Uso de pa alelización . . . . . . . . . . . . . . . . . . . . . . . 40
4.4. Paso 3 - Elección de los campeones . . . . . . . . . . . . . . . . . . . 42
4.4.1. Dis ancia de Hausdo . . . . . . . . . . . . . . . . . . . . . . 42
4.4.2. P epa ación de da os pa a el cálculo de la dis ancia de Hausdo 43
4.4.3. Selección de campeones según la dis ancia de Hausdo . . . . 45
5. Ac ualización de la in e az g á ica 49
5.1. Nue as uncionalidades . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.1.1. Nue as opciones . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.1.2. Ba ademenú .......................... 50
5.1.3. Mejo a en la ep esen ación de la señal empo al . . . . . . . . 52
5.2. Biblio ecas u ilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.2.1. PyQ 5............................... 55
5.2.2. Ma Plo Lib ............................ 55
5.2.3. Pandas............................... 55
5.2.4. Seabo n .............................. 56
5.2.5. json ................................ 56
5.3. Guíadeuso ................................ 56
6. De ección de a aques en Sma G ids 61
6.1. Basededa os............................... 61
ÍNDICE GENERAL V
6.2. P ep ocesado de los da os . . . . . . . . . . . . . . . . . . . . . . . . 62
6.3. A aques: De inición y ipos . . . . . . . . . . . . . . . . . . . . . . . . 62
6.3.1. Es udios an e io es y azón de es udio de un nue o mé odo . . 65
6.4. Fase de expe imen ación: En p o undidad . . . . . . . . . . . . . . . . 67
6.4.1. P elimina - Fases de un expe imen o . . . . . . . . . . . . . . 68
6.4.2. Swap................................ 73
P ime a ap oximación - Aco ación simple . . . . . . . . . . . . 73
Segunda ap oximación - Aco ación doble . . . . . . . . . . . . 75
Te ce a ap oximación - Aco ación doble e inada . . . . . . . . 77
Cua a ap oximación - Solución pa asi a ia . . . . . . . . . . . 79
Resumen de esul ados . . . . . . . . . . . . . . . . . . . . . . 81
6.4.3. FamiliaA e age.......................... 84
P ime a ap oximación - T iple aco ación del ango de alo es . 85
Segunda ap oximación - Di e encia de acumulaciones . . . . . 86
Te ce a ap oximación - Combinando las dos an e io es . . . . 89
Cua a ap oximación - Dis ancias a la media . . . . . . . . . . 92
Resumen de esul ados . . . . . . . . . . . . . . . . . . . . . . 94
6.4.4. FDIx................................ 99
P ime a ap oximación - Acumulaciones ex emas . . . . . . . 100
Segunda ap oximación - Rangos ex emos 2.0 . . . . . . . . . 104
Te ce a ap oximación - Combinación de las dos an e io es . . . 108
Resumen de esul ados . . . . . . . . . . . . . . . . . . . . . . 111
6.4.5. RSA[a,b].............................. 115
P ime a ap oximación - Acumulaciones ex emas . . . . . . . 116
Segunda ap oximación - Rangos ex emos 2.0 . . . . . . . . . 118
Te ce a ap oximación - Combinación de las dos an e io es . . . 120
Resumen de esul ados . . . . . . . . . . . . . . . . . . . . . . 122
7. Conclusiones y abajo u u o 127
7.1. Conclusiones................................ 127
7.2. T abajo u u o .............................. 128
7.2.1. Amplia el epe o io de ope ado es de S lE al . . . . . . . . . 128
7.2.2. Amplia y mejo a los expe imen os ealizados . . . . . . . . . 130
8. Final hough s and u u e wo k 131
8.1. Final hough s............................... 131
8.2. Fu u ewo k................................ 132
VI ÍNDICE GENERAL
8.2.1. Adding new ope a o s o S lE al’s epe oi e . . . . . . . . . . 132
8.2.2. Imp o e and b oaden he expe imen a ion phase . . . . . . . . 134
A. Códigos STL 135
A.1.Swap.................................... 135
A.1.1. P ime a ap oximación - Aco ación simple . . . . . . . . . . . . 135
A.1.2. Segunda ap oximación - Aco ación doble . . . . . . . . . . . . 135
A.1.3. Te ce a ap oximación - Aco ación doble e inada . . . . . . . . 136
A.1.4. Cua a ap oximación - Solución pa asi a ia . . . . . . . . . . . 136
A.2.FamiliaA e age.............................. 136
A.2.1. P ime a ap oximación - T iple aco ación del ango de alo es . 136
A.2.2. Segunda ap oximación - Di e encia de acumulaciones . . . . . 138
A.2.3. Te ce a ap oximación - Combinando las dos an e io es . . . . 138
A.2.4. Cua a ap oximación - Dis ancias a la media . . . . . . . . . . 138
A.3.FDIx.................................... 139
A.3.1. P ime a ap oximación - Acumulaciones ex emas . . . . . . . 139
A.3.2. Segunda ap oximación - Rangos ex emos 2.0 . . . . . . . . . 140
Te ce a ap oximación - Combinación de las dos an e io es . . . 141
B. Resul ados de los expe imen os 143
B.1.Swap.................................... 145
B.1.1. P ime a ap oximación - Aco ación simple . . . . . . . . . . . . 145
Sin in e sección de egiones de acep ación . . . . . . . . . . . 145
Con in e sección de egiones de acep ación . . . . . . . . . . . 146
B.1.2. Segunda ap oximación - Aco ación doble . . . . . . . . . . . . 147
Sin in e sección de egiones de acep ación . . . . . . . . . . . 147
Con in e sección de egiones de acep ación . . . . . . . . . . . 148
B.1.3. Te ce a ap oximación - Aco ación doble e inada . . . . . . . . 149
Sin in e sección de egiones de acep ación . . . . . . . . . . . 149
Con in e sección de egiones de acep ación . . . . . . . . . . . 150
B.1.4. Cua a ap oximación - Solución pa asi a ia . . . . . . . . . . . 151
Sin in e sección de egiones de acep ación . . . . . . . . . . . 151
Con in e sección de egiones de acep ación . . . . . . . . . . . 152
B.2.FamiliaA e age.............................. 154
B.2.1. P ime a ap oximación - T iple aco ación del ango de alo es . 154
Con in e sección de egiones de acep ación . . . . . . . . . . . 154
B.2.2. Segunda ap oximación . . . . . . . . . . . . . . . . . . . . . . 155
ÍNDICE GENERAL VII
Sin in e sección de egiones de acep ación . . . . . . . . . . . 155
Con in e sección de egiones de acep ación . . . . . . . . . . . 158
B.2.3. Te ce a ap oximación . . . . . . . . . . . . . . . . . . . . . . . 161
Sin in e sección de egiones de acep ación . . . . . . . . . . . 161
Con in e sección de egiones de acep ación . . . . . . . . . . . 163
B.2.4. Cua a ap oximación - Dis ancias a la media . . . . . . . . . . 166
Sin in e sección de egiones de acep ación . . . . . . . . . . . 166
Con in e sección de egiones de acep ación . . . . . . . . . . . 169
B.3.FDIx.................................... 173
B.3.1. P ime a ap oximación . . . . . . . . . . . . . . . . . . . . . . 173
Sin in e sección de egiones de acep ación . . . . . . . . . . . 173
Con in e sección de egiones de acep ación . . . . . . . . . . . 177
B.3.2. Segunda ap oximación . . . . . . . . . . . . . . . . . . . . . . 181
Sin in e sección de egiones de acep ación . . . . . . . . . . . 181
Con in e sección de egiones de acep ación . . . . . . . . . . . 185
B.3.3. Te ce a ap oximación . . . . . . . . . . . . . . . . . . . . . . . 189
Sin in e sección de egiones de acep ación . . . . . . . . . . . 189
Con in e sección de egiones de acep ación . . . . . . . . . . . 193
B.4.RSA[a,b].................................. 198
B.4.1. P ime a ap oximación . . . . . . . . . . . . . . . . . . . . . . 198
Sin in e sección de egiones de acep ación . . . . . . . . . . . 198
Con in e sección de egiones de acep ación . . . . . . . . . . . 201
B.4.2. Segunda ap oximación . . . . . . . . . . . . . . . . . . . . . . 205
Sin in e sección de egiones de acep ación . . . . . . . . . . . 205
Con in e sección de egiones de acep ación . . . . . . . . . . . 208
B.4.3. Te ce a ap oximación . . . . . . . . . . . . . . . . . . . . . . . 212
Sin in e sección de egiones de acep ación . . . . . . . . . . . 212
Con in e sección de egiones de acep ación . . . . . . . . . . . 215
C. O os expe imen os ele an es 219
C.1.Swap.................................... 220
C.1.1. P ime a ap oximación - Aco ación simple . . . . . . . . . . . . 220
C.1.2. Te ce a ap oximación - Aco ación doble e inada . . . . . . . . 221
C.2.FDIx.................................... 223
C.2.1. Te ce a ap oximación - Combinación de las dos an e io es . . . 223
D. P opiedades desechadas 225
6CAPÍTULO 1. INTRODUCCIÓN
Figu a 1.2: Diag ama de Gan : segundo cua imes e
1.5. O ganización del documen o
Hemos di idido es e documen o en dos capí ulos dedicados a esol e los obje i os
plan eados en la sección an e io , un capí ulo de in oducción a lo que es STL, una
conclusión y es a in oducción. Es deci :
1. Un capí ulo dedicado a explica qué es STL y cómo lo hemos usado e inco po ado
en es e abajo. En e los obje i os del abajo como al una explicación de STL
no es á incluida pe o c eemos pe inen e sen a unas bases sob e lo que es STL
y pa a qué lo hemos usado an es de p o undiza en lo que ha consis ido nues o
abajo.
2. Un capí ulo dedicado a oda la ase de implemen ación de los p ime os meses
del cu so. Es deci , implemen ación del algo i mo de minado de p opiedades

1.5. ORGANIZACIÓN DEL DOCUMENTO 7
STL pa amé icas y el de elección de los campeones. Es deci , el p ime de los
obje i os del abajo en gene al que hemos ema cado más a iba.
3. Un capí ulo dedicado a oda la ase de expe imen ación del uso de p opiedades
STL pa amé icas pa a de ec a a aques en Sma G ids. Es deci , el segundo
de los obje i os del abajo sub ayado más a iba.
4. Una conclusión que esuma odo lo hallado du an e el abajo y p oponga po-
sibles mejo as o abajos pa a el u u o.
8
Chap e 2
In oduc ion
2.1. Cybe -physical sys em
A cybe -physical sys em, also known as CPS, is a sys em in which a physical
de ice is moni o ed and con olled in some way by a compu e based algo i hm. This
algo i hm can be easily ep esen ed by a Fini e S a e Machine (FSM) by modelling
each s a e a e he desi ed beha iou expec ed o he physical de ice, wi h which i
is able o communica e h ough a se ies o senso s. Rele an examples o his kind o
sys em can be ound all h oughou ou daily li es, anging om sma g ids and o he
such de ices o he au opilo sys ems used o egula e he al i ude and ajec o y o
a comme cial plane o medical implan s such as pacemake s. As such, gua an eeing
hese so o sys ems wo k p ope ly is pi o al because, o he wise, a small mis ake
could lead o he dea hs o many people.
The e a e a ious ways o e i ying ha a pa icula cybe physical sys em is
wo king as in ended, such as model checking me hods and pe o ming s a ic sou ce
code analysis in sea ch o e o s. In his pape , howe e , we will be using un ime
e i ica ion. We will analyse he execu ion aces o a pa icula supe ised sys em
and e i y ha said aces beha e in acco dance wi h a p e iously es ablished “co ec ”
beha iou . The e a e many di e en op ions o p ope ly de ine a pa icula beha iou
pa e n and he one we ha e decided o use du ing his pape is STL (Signal Tempo al
Logic, see [13]), a pa icula ype o empo al logic specialised in analysing analog
signals, digi alised h ough a ime se ies.
9
10 CHAPTER 2. INTRODUCTION
2.2. Objec i es
This p ojec ’s main objec i es a e:
B oaden Pa e oLib’s (a Py hon lib a y dedica ed o ime se ies analysis h ough
he use empo al logic) capabili ies by implemen ing and inco po a ing a da a
mining algo i hm ha can lea n beha iou al pa e ns ( ep esen ed by STL p op-
e ies) by execu ion acing.
Upda e he said lib a y’s al eady exis ing GUI by inco po a ing he new ea-
u es.
Use he p e iously men ioned algo i hm in combina ion wi h eal da a om a
pa icula case s udy in o de o de ec abno mal beha iou s in he elec ical
consump ion egis e ed by sma me e s and o he sma g ids.
2.3. Time dis ibu ion
2.3.1. S a o he p ojec and ollow-up mee ings
The p ojec s a ed on Sep embe 5 h, 2022 and has been ca ied ou by Jo ge
Lashe as Ma ín (GIS) and Ca los Mo án Al onso (DG-MAT) unde he supe ision
o José Ignacio Requeno Ja abo and Luís Llana Díaz. I las ed o app oxima ely 8
mon hs and encompassed he en i e y o he academic yea . The me hodology used
o ou inely check on he p ojec ’s p og ess was SCRUM, which we pu in o e ec by
pe o ming weekly ollow-up mee ings in which we discussed all kinds o issues ela ed
o he p ojec while sha ing ou own p og ess. In addi ion o hese mee ings, we ha e
also used o he ask managemen and communica ion me hods, such as using apps
like Ji a o Slack, which ha e p o ided he o ganiza ion and agile communica ion
be ween us and ou supe io s ha we needed.
2.3.2. Team managemen and p ojec dedica ion
Bo h pa icipan s ha e pu 3 hou s a day in a e age in o he p ojec . No only
ha , bu 1800 new lines o code ha e been w i en, all o hem in one o he ollowing
h ee ca ego ies:
2.3. TIME DISTRIBUTION 11
The implemen a ion o he pa ame ic STL da a mining algo i hm in combin-
a ion wi h i s inco po a ion in o Pa e oLib, he Py hon lib a y dedica ed o
pa e n analysis in ime se ies (see [14]). Bo h membe s o he g oup pa icip-
a ed in he implemen a ion and Ca los inco po a ed i in o Pa e oLib.
Upda ing Pa e oLib’s GUI. Many o he upda es we e implemen ed by Jo ge,
bu Ca los also did some wo k (specially on inco po a ing he p e iously men-
ioned da a mining algo i hm)
E alua ing he da a mining algo i hm by pe o ming expe imen s on a case
s udy (see [12]). The expe imen s we e pe o med by bo h Jo ge and Ca los and
he lines o code we e w i en in Py hon and Bash scip s aimed a ex ac ing
and p ocessing he da a on one hand and acili aing au oma ing he p ocess o
pe o ming said expe imen s.
2.3.3. Pa s o he p ojec
We di ide he p ojec in i s en i e y in o 7 dis inc phases:
Familia ising ou sel es wi h he ma e ial, he ools and he wo k en i on-
men This phase was pe o med be ween mid Sep embe and ea ly No embe . I
was when we s a ed o ge acquain ed wi h he ma e ials and he wo k en i onmen
( empo al logic, STL, Pa e oLib, e c.). We we e gi en he necessa y helping ma e ials
(a icles, books, eposi o ies, e c.) by ou supe iso s.
Implemen a ion o he mining algo i hm This phase encompasses be ween mid
Sep embe and mid Oc obe . I was when we implemen ed he da a mining algo i hm
using pa ame ic STL p ope ies and all o i s a ian s (pa allel and sequen ial p o-
g amming and s a ic and dynamic explo a ion o he gi en sea ch space).
Implemen a ion o he champions selec ion algo i hm This phase encom-
passes be ween mid Sep embe and ea ly No embe again. I was when he imple-
men a ion o he champions selec ion algo i hm was implemen ed, ha is, he ex-
ac ion o cha ac e is ic con igu a ions o ideal pa ame e alues o e e y scena io
ha was aken in o conside a ion. Bo h he pseudocode o he da a mining and he
champions selec ion algo i hms we e ex ac ed om [5].

12 CHAPTER 2. INTRODUCTION
Upda ing Pa e oLib’s GUI A he same ime ha we we e implemen ing he
champions selec ion algo i hm, we also upda ed he GUI in o de o inco po a e he
new ea u es b ough by he da a mining algo i hm.
Explo a ion o he di e en ypes o a acks on sma g ids This phase
encompasses be ween mid No embe 2022 o ea ly Feb ua y 2023. We had o in es -
iga e he di e en kinds o a acks on sma g ids be o e s a ing he expe imen a ion
phase.
Beha iou pa e n ex ac ion, mining and analysis using eal da a This
phase encompasses be ween mid Feb ua y and Ap il. I was du ing his phase whe e
we ca ied ou he modeling and expe imen a ion o a acks on sma g ids as well as
pu ou STL knowledge o use in o de o de e mine new and be e STL p ope ies
o each a ack. We also conduc ed a deep and de ailed analysis o he esul s we
ob ained om hese expe imen s.
Redacción del manusc i o de la memo ia Las ly, his phase encompasses be ween
la e Feb ua y and la e May. I was du ing his phase we e we collec ed he da a and
p og ess on he p ojec and w o e hem in his epo
Fo a be e isualiza ion o he di e en phases o he p ojec and hei dis ibu-
ion h ough ime, his is his p ojec ’s Gan cha :
2.3. TIME DISTRIBUTION 13
Figu e 2.1: Gan diag am: Fi s semes e
14 CHAPTER 2. INTRODUCTION
Figu e 2.2: Gan diag am: Second semes e
2.4. Documen O ganiza ion
We ha e di ided his documen in wo chap e s dedica ed o sol ing he p e iously
men ioned objec i es, an in oduc ion o STL and empo al logic a la ge, a gene al
in oduc ion o he p ojec and a conclusion, ha is:
1. A chap e dedica ed o explaining wha STL is and how we ha e used i du -
ing his p ojec . Among his p ojec ’s objec i es we neglec ed o men ion an
explana ion o wha STL is be we belie e i is necessa y o lay he g oundwo k
o wha empo al logic and STL a e be o e u he elabo a ing on wha ou
con ibu ion is.
2. A chap e dedica ed o he implemen a ion o bo h he da a mining algo i hm
and he champions selec ion algo i hm, ha is, he i s o he wo main objec -
i es men ioned abo e.
2.4. DOCUMENT ORGANIZATION 15
3. A chap e dedica ed o he expe imen a ion on sma g ids using STL pa ame -
ic p ope ies. Tha is, he second o he abo e men ioned objec i es.
4. A conclusion whe e we summa ize he con en s o he p ojec s and whe e we
can p o ide insigh as o wha he u u e o his p ojec migh hold.
22 CAPÍTULO 3. STL - INTRODUCCIÓN Y APLICACIÓN
3.2.1. Señales y se ies empo ales
En é minos gene ales, llamamos señal a una mues a de la p og esión de uno o más
alo es a lo la go de un in e alo de iempo. Vemos en onces que, o malmen e, una
señal es una unción : [ 1, 2]∈R→Rn. Como con una señal no se puede ealiza
ningún ipo de análisis (ya que el dominio de la unción no es ini o), necesi amos
alguna mane a de disc e iza (o digi aliza ) dicha señal. La mane a que encon amos
es median e una se ie empo al. Una se ie empo al es un conjun o de pa es de la
o ma ( i, xi), donde ies un ins an e de iempo y xi= ( i)es el alo de la señal
en el ins an e i(es deci , una se ie empo al es un mues eo de la señal). Ilus amos
aho a es as dos de iniciones median e un ejemplo g á ico.
(1) Señal o iginal (2) Señal digi alizada
Es cla o en onces que la digi alizacíon de una señal median e una se ie empo al
de ine una se ie de pun os ini os que, jun os, o man un in e alo. El ipo de lógica
empo al que se enca ga del modelado y moni o ización de dichos in e alos es STL.
3.2.2. Signal Tempo al Logic (STL)
Signal Tempo al Logic (en español, Lógica Tempo al de Señales), más conocida
como STL es un ipo de lógica empo al dedicada al modelado y moni o ización de
se ies empo ales. Nos encon amos en una si uación simila a la que es ablecimos más
a iba con STL. Tenemos un conjun o de p edicados a e i ica Σy un núme o ini o
de es ados sob e el que podemos aplica los ope ado es is os an es pa a LTL pa a
e i ica la e acidad o alsedad de los miemb os de Σ(median e el uso de una unción

3.3. STL - IMPLEMENTACIÓN DE LOS OPERADORES 23
de e aluación S′: Σ → { ue, alse}asociada a dicho es ado). Vemos, en onces, que
la sin axis de STL básica no cambia con espec o a la is a an e io men e pa a LTL.
ϕ::= ⊤⊥¬ϕ1ϕ1∧ϕ2ϕ1∨ϕ2ϕ1⊕ϕ2ϕ1⇒ϕ2ϕ1⇔ϕ2G[a,b]ϕF[a,b]ϕ ϕ1U[a,b]ϕ2
P esen ada la sin axis básica de STL, p ocedemos a habla aho a de la implemen-
ación de es os ope ado es.
3.3. STL - Implemen ación de los ope ado es
3.3.1. STL - Ope ado es lógicos
Veamos en onces la implemen ación de los ope ado es median e una mues a de
la semán ica de los mismos pa a una se ie empo al de n pun os. Sean en onces
ϕ, ϕ1, ϕ2∈ΣyS={Si: 0 ≤i≤n}el conjun o de unciones de e aluación asociadas
a cada uno de los es ados:
⊤:= ue∀ϕ∈Σ, S ∈ S
⊥:= alse∀ϕ∈Σ, S ∈ S
¬(ϕ) := ¬(S(ϕ))
ϕ1∧ϕ2:= m´ın(S(ϕ1), S(ϕ2))
ϕ1∨ϕ2:= m´ax(S(ϕ1), S(ϕ2))
ϕ1⊕ϕ2:= (S(ϕ1)∨S(ϕ2)) ∧(¬S(ϕ1)∨ ¬S(ϕ2))
ϕ1⇒ϕ2:= ¬S(ϕ1)∨S(ϕ2)
ϕ1⇔ϕ2:= (S(ϕ1)⇒S(ϕ2)) ∧(S(ϕ2)⇒S(ϕ1))
ϕ1( ) = ϕ2( ) := S(ϕ1( ) = ϕ2( ))
ϕ1( )≤ϕ2( ) := S(ϕ1( )≤ϕ2( ))
ϕ1( )≥ϕ2( ) := S(ϕ1( )≥ϕ2( ))
ϕ1( )< ϕ2( ) := S(ϕ1( )< ϕ2( ))
ϕ1( )> ϕ2( ) := S(ϕ1( )> ϕ2( ))
24 CAPÍTULO 3. STL - INTRODUCCIÓN Y APLICACIÓN
G[a,b]ϕ:=
b
V
i=a
Si(ϕ)donde Sies la unción de e aluación asociada al es ado i
F[a,b]ϕ:= ∃ 1:a≤ 1≤b, ¬ 1
V
i=a
Si(ϕ)∧ b
V
j= 1+1
Sj(ϕ)!
ϕ1U[a,b]ϕ2:= ∃ 1:a≤ 1≤b,  1
V
i=a
Si(ϕ1)∧ b
V
j= 1
Sj(ϕ2)!
P esen ada la sin axis y la semán ica de los ope ado es lógicos de STL, pasamos
aho a a los ope ado es dedicados a la manipulación de da os escala es.
3.3.2. STL - Ope ado es cuan i a i os
STL es ánda - Ope ado es cuan i a i os
Pa a ga an iza la obus ez semán ica de los ope ado es lógicos is os an e io men-
e y pa a que STL sea una he amien a uncional a ni el compu acional, es necesa io
in oduci ope ado es que puedan manipula de mane a e ec i a los da os escala es
a ojados po la se ie empo al que se es á moni o izando. Es os ope ado es son los
ope ado es a i mé icos adicionales (+, -, *, /). También es necesa io, en onces, in-
oduci una se ie de ope ado es lógicos que nos si an pa a “booleaniza ” los da os
escala es y, po an o, pode abaja con ellos desde el pun o de is a de STL. Es os
ope ado es ambién nos son conocidos ya que son los elacionados con compa aciones
numé icas (>,<,=,≥,≤).
Sin emba go, es os ope ado es nos dejan muy poco ma gen de maniob a a la ho a
de manipula da os numé icos. Como ejemplo, no podemos hace nada con in e alos
de la misma mane a que sí podemos con los ope ado es lógicos in oducidos más
a iba. Es aquí donde en a STL ex endido.
STL ex endido - Manipulación de in e alos
STL ex endido ( e [15]) e ue za los ope ado es de STL es ánda in oduciendo
nue os ope ado es dedicados a ex ae di e sas p opiedades de in e alos numé icos.
Veamos aho a cuáles son es os nue os ope ado es:
m´axa,b ϕ: Rep esen a el máximo alo de la señal ϕen el in e alo [a, b]. Es deci ,
3.4. STLEVAL 25
∃ 1:a≤ 1≤b, ϕ( 1)≥ϕ( )∀ ∈[a, b]
m´ına,b ϕ: Rep esen a el mínimo alo de la señal ϕen el in e alo [a, b]. Es deci ,
∃ 1:a≤ 1≤b, ϕ( 1)≤ϕ( )∀ ∈[a, b]
Rb
aϕ: Rep esen a el alo esul an e de suma odos los alo es de la señal ϕen
el in e alo [a, b]. Es deci , b
P
=a
ϕ( ).
∆ϕ( 0): Rep esen a el alo de la de i ada (o pendien e) de la señal ϕen un
cie o ins an e 0( e implemen aciones de la in eg al y la de i ada en [18])
P esen ados aho a odos los ope ado es, pasamos aho a a p esen a S lE al, una
he amien a que implemen a odos los ope ado es de STL ex endido (lógicos y de
manipulación de escala es) y los u iliza pa a de ol e señales booleanas de las que
pod emos mina azas de ejecución a lo la go del abajo.
3.4. S lE al
S lE al ( e [3]) es una he amien a desa ollada en C++ po Alexey Bakhi kin,
Akshay Mambakan y José Ignacio Requeno que, dados una señal (en o ma o cs ) y
una p opiedad STL, de uel e una señal booleana dependiendo de si un cie o pun o
de la señal cumple o no la especi icación STL p opo cionada. Como ya hemos men-
cionado, S lE al inco po a el pa seo casi odos los ope ado es del epe o io de STL
ex endido, con el in de acili a la esc i u a de las p opiedades STL. Veamos aho a
cómo se encuen a inco po ada es a he amien a den o de Pa e oLib.
3.4.1. Inco po ación con Pa e oLib
S lE al ha sido inco po ado en Pa e oLib ( e [14]), una lib e ia de Py hon que
pe mi e el minado de p opiedades STL (pa amé icas y no pa amé icas) u ilizando
como mo o de análisis las implemen aciones de STL ex endido de S lE al, mo o
que es capaz de inco po a median e el uso de c ypes, una bibilio eca de Py hon
que si e como ’puen e’ en e C++ y Py hon (ayudando en la aducción de ipos
especialmen e). Finalmen e, median e el uso de unas es uc u as llamadas o áculos
que, a cada pun o de la señal de en ada le asocia el alo de salida de S lE al (1 si
26 CAPÍTULO 3. STL - INTRODUCCIÓN Y APLICACIÓN
se e i ica la p opiedad STL, 0 en caso con a io), es como se ealiza la con e sión a
una señal booleana.
Capí ulo 4
Algo i mo de mine ía de p opiedades
STL pa amé icas
4.1. In oducción al algo i mo de minado
En es e capí ulo p esen amos el algo i mo de minado diseñado pa a la clasi i-
cación de señales empo ales ( e [5]). Consis e en un conjun o de mé odos pa a la
clasi icación mul iclase, es deci , una écnica de ap endizaje au omá ico u ilizada pa a
p edeci la pe enencia de una mues a a una ca ego ía conc e a.
Nues o en oque pa a el diseño del mé odo de ap endizaje se basa en la imple-
men ación de un sis ema o modelo in eligen e que sea capaz, a pa i de unos da os
p e iamen e dados y sus e ique as (que indican la pe enencia a una de las ca e-
go ías), de ap ende y mejo a . El obje i o es que el mé odo pueda de ec a y, po
ende, ap ende pa ones, y a pa i de es os pa ones se capaz de clasi ica cualquie
mues a en una ca ego ía conc e a. La idea gene al de ás de nues o mé odo se basa
en que el sis ema sea capaz de ap ende a pa i de ejemplos, en luga de p og ama
ins ucciones especí icas pa a cada uno de los escena ios que se pueden p esen a al
a a los da os.
El algo i mo de mine ía se basa en la exis encia de un o áculo que clasi ica ins an-
cias. Dado el dominio del p oblema y una mues a, el o áculo esponde bina iamen e
a las p egun as o muladas: es deci , de uel e e dade o o also. El algo i mo asume
que el o áculo es una caja neg a, po lo que puede aplica se a cualquie sis ema que
27

28CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
enga un in e az que de uel a cie o o also a las p egun as que ealiza el algo i mo
al o áculo sob e la pe enencia de una mues a a una clase.
Po an o, el algo i mo que amos a implemen a se encuad a den o de los mé-
odos de ap endizaje supe isado: el “modelo” ap ende a pa i de ejemplos de
en enamien o p e iamen e e ique ados y u iliza la in o mación pa a hace p ediccio-
nes de los nue os da os sin e ique a . En el p oceso de en enamien o del mé odo, el
algo i mo ecibe un dominio del p oblema, conside ado como el espacio de búsqueda,
jun o con un conjun o de da os e ique ados. A pa i de es o, el algo i mo di ide el es-
pacio de búsqueda en dos bloques o egiones dis in as: una egión de acep ación yuna
egión de echazo. El modelo esul an e del ap endizaje es el dominio del p oblema
(en endido como un espacio de búsqueda o mapa de con igu aciones) pa icionado en
es as dos egiones, y el obje i o es, pa iendo de un conjun o de dominios, ex ae de
las egiones de acep ación aquellos pun os que maximizan la dis ancia de un dominio
con espec o a el es o de dominios.
En nues o caso el o áculo usado pa a la clasi icación se a a de un mo o que
e alúa p opiedades STL con pa áme os. Conc e amen e, el o áculo nos esponde á
si una mues a cumple o no con la p opiedad STL, y en base a su espues a se
clasi ica dicha mues a como álida. Pa a ello, du an e el en enamien o se ajus a á
una p opiedad STL pa ame izada.
Una p opiedad STL pa ame izada es una ó mula de lógica empo al donde al-
gunos de los alo es numé icos de la exp esión han sido eemplazados po a iables.
Una p opiedad STL pa ame izada pe mi e de ini una plan illa de compo amien o,
es deci , especi ica los pa ones de compo amien o de una señal empo al u ilizando
una ó mula en lógica empo al de señales. La p opiedad puede inclui uno o más pa-
áme os ajus ables pa a moni o iza el compo amien o desc i o po la ó mula. El
p oceso de en enamien o de una p opiedad STL pa ame izada se cen a en ajus a
los pa áme os de la ó mula de lógica empo al con el obje i o de log a de ec a
pa ones de compo amien o en las señales empo ales. El en enamien o se en oca en
maximiza la capacidad de la p opiedad STL de de ec a es os pa ones encon ando
los alo es óp imos de los pa áme os.
Un ejemplo de p opiedad STL pa ame izada puede se el siguien e:
G[0,p1]p2≤x0and F[p1,47]x0≥p3(4.1)
4.1. INTRODUCCIÓN AL ALGORITMO DE MINADO 29
Es a p opiedad en lógica empo al es cie a pa a una señal empo al, en el ango
de iempo ∈[0, p1], si se cumple siemp e que el alo de la señal ϕes siemp e mayo
al pa áme o p2y se cumple que, a pa i de un ins an e 2∈[p1,47] se cumple que
el alo de la señal ϕen ∈[ 2,47] es meno a p3. En es e caso se usa los pa áme os
p1,p2yp3pa a moni o iza el compo amien o de la señal empo al.
Es base a eso, dada una p opiedad STL y unos pa áme os p e iamen e es able-
cidos, el obje i o es log a disc imina cie o compo amien o desc i o po la ó mula
STL. Es o se consigue di idiendo el espacio de búsqueda odominio en dos egiones,
la egión de acep ación y la egión de echazo o no inclusión.
El dominio se a a del espacio de búsqueda de inido po los pa áme os asociados
a la p opiedad STL. Pa imos de la p emisa de que los alo es de los pa áme os se
de inen como in e alos con lími es in e io es y supe io es, de modo que el espacio de
pa áme os Poespacio de búsqueda es un hipe cubo ce ado en Rn al que pi∈Rn.
P=
m
Y
i=1
[ai, bi](4.2)
donde bi> ai,∀i∈1, ..., m, siendo m el núme o de pa áme os de inidos pa a la
p opiedad y po ende en núme o de dimensiones que end á el hipe cubo.
La egión de acep ación odominio de alidez es la egión donde se cumplen odas
las es icciones es ablecidas po la p opiedad STL, se puede de ini como la in e sec-
ción del dominio de alidez de odas las señales que pe enecen a la señal empo al.
Po o a pa e la egión de echazo es aquella en la que no se cumplen las es icciones
es ablecidas po la p opiedad STL. A la egión que se encuen a en e ambas egiones
la llama emos on e a, y nos ayuda á a iden i ica a pa i de qué alo es den o del
ango de los pa áme os la p opiedad ya no sa is ace la p opiedad.
Después de habe explicado los concep os cla e que se a a án en odo el capí ulo,
p ocedemos a desc ibi los pasos que se siguie on pa a el diseño e implemen ación del
algo i mo. El p ime o paso se á, pa a el espacio de búsqueda P, ealiza una di isión
de celdas. Una ez di idido el espacio de búsqueda, el segundo paso se á comp oba
pa a cada celda o sub ec ángulo si la p opiedad STL se cumple pa a el subconjun o
de alo es de los pa áme os. Luego, odas es as celdas se uni án pa a o ma la egión
30CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
Figu a 4.1: Ejemplo de espacio de búsqueda Pdado los in e alos p1,p2yp3
de acep ación. El úl imo paso se á selecciona pa a cada dominio de alidez el alo
que maximiza la dis ancia espec o al dominio de alidez de las o as clases. Es deci ,
selecciona emos los pa áme os de con igu ación más ep esen a i os de los dominios
de alidez de cada clase, a los que denomina emos campeones.
4.2. Paso 1 - Di isión de las celdas
En el p ime paso pa imos de la lis a de in e alos o pa áme os sob e la cual se
c ea á un ec ángulo de dimensión D, que cons i ui á nues o espacio de búsqueda,
a es e espacio le llama emos P. Po an o comenzamos c eando un ec ángulo de
dimensión D, siendo Del núme o de pa áme os p e iamen e es ablecido. El amaño
del ec ángulo se á el indicado po los in e alos que de inen el espacio de búsqueda,
co espondiendo cada in e alo con un eje del ec ángulo. Po an o si po ej. nues os
pa áme os son p1∈[0,10],p2∈[20,40] yp3∈[5,25] el ec ángulo o espacio de
búsqueda se á como el de la Figu a 4.1.
Una ez enemos el ec ángulo es udiamos dos di e en es mane as de implemen a
4.2. PASO 1 - DIVISIÓN DE LAS CELDAS 31
la pa ición del espacio de búsqueda en sub ec ángulos: la pa ición ija y la pa ición
dinámica. La necesidad de es udia una al e na i a a la pa ición ija es educi la
ca ga de cálculos que se deben ealiza pa a la clasi icación de las celdas: al pa icio-
na el espacio Psiemp e en nceldas, el cos e compu acional de la pa ición aumen a
signi ica i amen e . La pa ición dinámica p opone una solución a la sob eca ga de
cálculos al i di idiendo las celdas dependiendo de los esul ados del o áculo pa a
odas sus mues as. De es a mane a, se log a disminui la sob eca ga de cálculos y
mejo a la e iciencia del p oceso de clasi icación.
4.2.1. Pa ición ija
Se di ide el espacio de pa áme os Pen una espacio pa icionado P′que consis e
en hipe cubos ce ados alineados con los ejes, y que ienen odos el mismo amaño. A
es as subdi isiones las denominamos celdas.
La pa ición se lle a a cabo a pa i de un núme o de celdas nen que se quie e di idi
el espacio P. Dado es e núme o y el núme o de dimensiones dde P, calculamos el
núme o de pa iciones kque end á cada eje del ec ángulo a a és de la ó mula:
k=l10log10(n)
dm(4.3)
donde k end á el mismo alo pa a cada eje. Podemos obse a que el núme o
o al de sub ec ángulos que se pa iciona án en el espacio Pse á una ap oximación
al núme o de celdas es ablecido po el usua io, ya que el núme o de celdas o al se á
el exponen e de kele ado al núme o de dimensiones de P. Es o es necesa io ya que
se desea hace una pa ición del espacio Plo más uni o me posible, e i ando que
algunas celdas puedan es a sob e- ep esen adas o sub- ep esen adas.
nceldas =kd(4.4)
Una ez enemos el núme o de pa iciones kpa a los ejes, se ealiza la pa ición
del ec ángulo en nceldas. Pa a el ej. an e io el nceldas inicial es 55 po lo que k=
l10log10(55)
3m=⇒k= 4, po an o nceldas se ac ualiza a nceldas = 43=⇒nceldas = 64
y queda ía un conjun o de sub ec ángulos como el de la Figu a 4.2.
38CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
Figu a 4.6: Ejemplo de Resul Se con su egión de acep ación y de echazo usando
pa ición ija

4.3. PASO 2 - ENCONTRAR LA REGIÓN DE ACEPTACIÓN 39
Figu a 4.7: Región de acep ación(izq) y de echazo(dcha) del conjun o de esul ados con pa i-
ción ija
Figu a 4.8: Región de acep ación(izq) y de echazo(dcha) del conjun o de esul ados con pa i-
ción dinámica
40CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
4.3.1. Uso de pa alelización
Debido al al o cos e compu acional que supone encon a la egión de acep ación,
implemen amos e siones pa alelas pa a su cálculo en las que se mejo a signi ica-
i amen e el endimien o y la elocidad en la c eación del conjun o de esul ados,
especialmen e cuando es necesa io di idi el espacio de búsqueda Pen un núme o de
celdas ele ado.
Pa a ello se ha hecho uso de la lib e ía mul ip ocessing. Es á lib e ía es á dise-
ñada pa a la pa alelización de p ocesos en Py hon. La lib e ía admi e la c eación de
p ocesos median e una API simila al módulo de subp ocesos (o h eading) y o ece
concu encia local pa a pode c ea y ejecu a p ocesos en pa alelo con el obje i o de
mejo a el endimien o de aplicaciones que necesi an ealiza a eas compu acional-
men e cos osas, como en nues o caso es encon a la egión de acep ación.
La lib e ía u iliza subp ocesos pa a log a la pa alelización: cada uno pe enece
a un núcleo de CPU disponible del sis ema y iene su p opio espacio de memo ia,
po lo que cada subp oceso puede ejecu a se de mane a independien e sin in e e i
con los o os subp ocesos. Es o nos pe mi e educi el iempo que conlle a encon a
la egión de acep ación al ap o echa al máximo los ecu sos de la CPU. La clase
Pool del módulo mul ip ocessing p opo ciona una o ma con enien e de dis ibui el
abajo en múl iples p ocesos.
Pa a la pa ición ija, una ez enemos el espacio de búsqueda di idido en nceldas,
c eamos un obje o Pool con np ocesos =núme o de CPU’s en el equipo. Una ez c eado
el obje o se en ían las a eas a los di e en es p ocesos usando el mé odo map(), que
se enca ga de dis ibui el abajo en los p ocesos disponibles. Después de di idi las
a eas pa a clasi ica las celdas en las dis in as egiones, se u iliza el mé odo join() pa a
espe a a que se clasi iquen odas las celdas an es de c ea el conjun o de esul ados.
En el caso de la pa ición dinámica, se sigue un p oceso simila : p ime o se
c ea el obje o Pool con np ocesos, y luego se u iliza un bucle pa a e i ica si ya se han
de inido las egiones de acep ación y echazo necesa ias o si se deben segui di idiendo
las celdas. La mejo a de endimien o al aplica pa alelización se puede obse a en
la Figu a 4.9, donde el iempo de ejecución se mide en segundos y, pa a es e caso
pa icula , la con igu ación de la máquina es de 4 co es o núcleos de CPU.
4.3. PASO 2 - ENCONTRAR LA REGIÓN DE ACEPTACIÓN 41
Figu a 4.9: Ejemplo de cos e empo al eque ido pa a encon a la egión de acep a-
ción u ilizando pa alelización s el iempo necesa io sin pa alelización
42CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
4.4. Paso 3 - Elección de los campeones
El úl imo paso consis e en elegi los campeones de cada uno de los conjun os
de esul ados con espec o al es o de conjun os de esul ados, es o es, elegimos la
alo ación que maximiza la dis ancia del dominio de alidez de o as clases, que
supone el pun o más ep esen a i o de ese dominio.
Pa a calcula la elección de los campeones implemen amos la dis ancia de Haus-
do .
4.4.1. Dis ancia de Hausdo
Sean VyQdos subconjun os del espacio de búsqueda P, la dis ancia de Hausdo
mide cuan lejos es án uno de o o. Se de ine como la dis ancia máxima de un pun o
en uno de los subconjun os al pun o más ce cano del o o subconjun o.
Dado el espacio de búsqueda Py el pa de subconjun os no acíos (V, Q)∈P, la
dis ancia en e un pun o ∈Vy el subconjun o Qse de ine como:
d( , Q) = ´ın {dis ( , q)|q∈Q}(4.5)
donde dis ( , q)es la dis ancia Euclidea en e los 2 pun os. Explicado en pala-
b as, d( , Q)escoge la meno dis ancia en e el pun o y el conjun o de pun os del
subconjun o Q. Teniendo es o, calculamos la dis ancia de odos los pun os del sub-
conjun o V al que ∈V, y nos quedamos con aquel pun o que maximiza la dis ancia
al subconjun o Q.
d(V, Q) = sup{dis ( , Q)| ∈V}(4.6)
En o as palab as, dis ancia de Hausdo se de ine como la dis ancia máxima
de un pun o en uno de los conjun os al pun o más ce cano en el o o conjun o. Un
ejemplo g á ico de como se calcula la dis ancia de Hausdo en e los subconjun os
VyQlo enemos en la Figu a 4.10.
Cabe des aca que la dis ancia de Hausdo en e 2 subconjun os no es simé ica,
es deci , el pun o en el subconjun o Vque maximiza la dis ancia al subconjun o
4.4. PASO 3 - ELECCIÓN DE LOS CAMPEONES 43
Figu a 4.10: Ejemplo de dis ancia de Hausdo en e los conjun os V y Q
Qpuede se di e en e del pun o en el subconjun o Qque maximiza la dis ancia al
subconjun o V, es o se debe a que la dis ancia en e los subconjun os se mide de
mane a independien e. La asime ía de la dis ancia de Hausdo se puede obse a
en la Figu a 4.10, donde la dis ancia del conjun o V a Q es mayo a la dis ancia de
Q a V, d(V, Q)> d(Q, V ).
4.4.2. P epa ación de da os pa a el cálculo de la dis ancia de
Hausdo
Una ez ob enemos el Conjun o de esul ados oResul Se pa a cada una de las
señales empo ales p e iamen e indicadas, p ocedemos a calcula su “campeón”, es
deci , su pun o ∈Resul Se Vque maximiza la dis ancia con espec o a los demás
conjun os de esul ados.
Pa iendo de una lis a que con iene los Resul Se de cada señal empo al, cal-
culamos pa a cada uno ellos su campeón en elación a el es o de los conjun os de
esul ados. Implemen a emos 2 mé odos dis in os pa a calcula el campeón, eniendo
en cuen a la in e sección en e las dis in as egiones de acep ación y sin ene la en
cuen a.
P ime o, comp obamos que el amaño de los conjun os no sea 0, ya que supond ía
que los conjun os de esul ados son nulos ∅, po lo que no exis i ía campeón pa a
ninguno de ellos.
i len (sel . yup) == 0 o sum ([ len ( s. yup) o s in s_lis ]) == 0:
e u n 0, None , None
Después, c eamos un conjun o que ep esen a odas las celdas pe enecien es a las
di e en es egiones de acep ación. Pa a ellos unimos odas las celdas de los conjun os
de esul ados p e iamen e ob enidos, eliminando la epe ición de celdas iguales que
se encuen an en egiones de acep ación de conjun os de esul ados di e en es. Dos

44CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
celdas son iguales cuando ienen las mismas dimensiones y pe enecen a la misma
egión.
cu en _class_g een_cells = se ( sel .yup)
o he _classes_g een_cells = se ()
o he _classes_g een_cells_gene a o = (se ( s.yup ) o s in s_lis
)
o he _classes_g een_cells = o he _classes_g een_cells.union(*
o he _classes_g een_cells_gene a o )
Una ez que se han ag upado las celdas, c eamos dos conjun os: uno pa a alma-
cena los é ices de las celdas del conjun o de esul ados pa a el que se a a calcula
el campeón, y o o conjun o pa a almacena los é ices de las celdas del es o de
conjun os de esul ados.
Después adap amos los da os pa a que puedan se leídos po la unción di ec-
ed_hausdo y c eamos dos nue as lis as, una pa a el conjun o ac ual y o a pa a el
es o de conjun os. Es o se consigue il ando los pun os que pe enecen a di e en es
conjun os, de mane a que la p ime a lis a solo con iene los pun os que pe enecen
exclusi amen e a el conjun o es udiado ac ualmen e y la o a solo con iene los pun os
que pe enecen exclusi amen e a el es o de conjun os.
cu en _class = sel . e ices_yup()
o he _classes = se ()
o he _classes_gene a o = ( yup . e ices () o yup in
o he _classes_g een_cells)
o he _classes_gene a o = ( s. e ices_yup () o s in s_lis i s
!= sel )
o he _classes = o he _classes . union (* o he _classes_gene a o )
cu en _class_lis = lis ( cu en _class )
o he _classes_lis = lis ( o he _classes )
Es impo an e ene en cuen a que al elimina los é ices que pe enecen a ambos
conjun os, es posible que una de las lis as quede acía, po lo que es necesa io e i ica
si las lis as esul an es ienen elemen os an es de con inua .
i len ( cu en _class_lis ) == 0 o len( o he _classes_lis ) == 0:
e u n 0, None , None
4.4. PASO 3 - ELECCIÓN DE LOS CAMPEONES 45
4.4.3. Selección de campeones según la dis ancia de Hausdo
Po úl imo calculamos los campeones haciendo uso de la unción di ec ed_hausdo
de la biblio eca scipy, que se enca ga de calcula la dis ancia de Hausdo en e dos
conjun os de pun os. La biblio eca scipy, es una biblio eca ampliamen e u ilizada que
p opo ciona módulos pa a op imización, álgeb a lineal, in eg ación... La unción acep-
a las dos lis as de é ices del conjun o es udiado y la unión del es o de conjun os
y de uel e la dis ancia de Hausdo jun o con los pun os de ambos conjun os que
ma can la dis ancia.
dis ance , cu en _index , index_o he _classes = dh (
cu en _class_lis , o he _classes_lis )
o he dh = dh ( o he _classes_lis , cu en _class_lis )
Es impo an e ema ca que, la dis ancia de Hausdo en e dos conjun os de
pun os no es simé ica, po lo que es necesa io calcula la dis ancia del conjun o ac ual
espec o a la unión del es o de conjun os y la dis ancia de es e úl imo espec o al
conjun o ac ual, quedándonos con la que de uel a la mayo dis ancia, código 4.7.
i o he dh [0] > dis ance :
dis ance , cu en _index , index_o he _classes = o he dh [0] ,
o he dh [2] , o he dh [1]
Una ez ob enida la máxima dis ancia, la de ol emos jun o con el pa de pun os
de uel os po la unción de scipy, uno pe enecien e a cada conjun o, que la componen
como esul ado.
A con inuación mos a emos el esul ado de calcula los campeones g á icamen e,
pa a ello usa emos el espacio de búsqueda de la Figu a 4.1, con nceldas = 200 pa a la
pa ición ija y mos a emos los campeones pa a ambos ipos de pa iciones, Figu a
4.11 y Figu a 4.12.
e ex_champion = cu en _class_lis [ cu en _index ]
sel . champion = e ex_champion
e u n dis ance , e ex_champion , o he _classes_lis [
index_o he _classes]
d(V, Q) = m´ax (sup{dis ( , Q)| ∈V},sup{dis (q, V )|q∈Q})(4.7)
46CAPÍTULO 4. ALGORITMO DE MINERÍA DE PROPIEDADES STL PARAMÉTRICAS
Figu a 4.11: Elección de campeones pa a pa ición ija, dados los dos conjun os de esul ados
mues a los pun os que maximizan la dis ancia en e las egiones de acep ación
4.4. PASO 3 - ELECCIÓN DE LOS CAMPEONES 47
Figu a 4.12: Elección de campeones pa a pa ición dinámica, dados los dos conjun os de esul-
ados mues a los pun os que maximizan la dis ancia en e las egiones de acep ación
54 CAPÍTULO 5. ACTUALIZACIÓN DE LA INTERFAZ GRÁFICA
Figu a 5.4: Ejemplo de in e az g á ica un ez añadidos los cambios

5.2. BIBLIOTECAS UTILIZADAS 55
Ma plo lib
Pandas
Seabo n
json
5.2.1. PyQ 5
La biblio eca PyQ 5 es á basada en la biblio eca g á ica Q y si e pa a ealiza
el diseño g á ico de la en ana p incipal de la aplicación desde Py hon. En nues o
caso, pa iendo de la in e az del abajo an e io y espe ando su diseño, hemos
usado la biblio eca PyQ 5 pa a añadi las nue as opciones en el cuad o Op ions y
añadido la Ba a de Menú que p opo ciona una es uc u a o ganizada las unciones
añadidas(C ea p oyec o, Gua da , Ab i , ...). Pa a ap o echa al máximo PyQ 5,
u ilizamos la he amien a Q Designe . Es a he amien a nos pe mi ió ac ualiza el
diseño inicial de la in e az, sob e la cual pos e io men e anclamos manualmen e las
uncionalidades a los bo ones co espondien es. De es a mane a, pudimos agiliza el
p oceso de diseño y desa ollo de la in e az.
5.2.2. Ma Plo Lib
La biblio eca Ma Plo Lib es una biblio eca ampliamen e u ilizada en Py hon pa a
la gene ación de g á icos y isualización de da os. P opo ciona una amplia gama de
unciones y he amien as pa a c ea di e sos ipos de g á icos, desde simples g á icos
de líneas y ba as has a g á icos más complejos. Se u iliza pa a gene a los g á icos
esul an es de las p opiedades STL pa amé icas, pa a ep esen a las dis in as señales
empo ales y pa a ep esen a los espacios de búsqueda y los conjun os de esul ados.
5.2.3. Pandas
La biblio eca Pandas es una biblio eca de Py hon ampliamen e u ilizada pa a el
análisis y manipulación de da os. P opo ciona es uc u as de da os e icien es y áciles
de usa , así como he amien as pa a el p ocesamien o, limpieza y análisis de da os de
mane a ápida y e icien e. U ilizando la biblio eca Pandas, lle amos a cabo la ans-
o mación y almacenamien o de nues as señales en una es uc u a de da os conocida
como Da aF ame. Es e Da aF ame nos pe mi e manipula y analiza ácilmen e los
56 CAPÍTULO 5. ACTUALIZACIÓN DE LA INTERFAZ GRÁFICA
da os de las señales. Luego, u ilizamos es a es uc u a de da os como en ada pa a
los mé odos de isualización g á ica de la señal, haciendo uso de la biblio eca Seabo n
yMa Plo Lib.
5.2.4. Seabo n
La biblio eca Seabo n es una biblio eca de isualización basada en Ma plo Lib.
Seabo n p opo ciona una in e az de al o ni el con capacidad pa a gene a isua-
lizaciones so is icadas. El uso que le damos en el p oyec o es an o es é ico como
uncional.
Lo u ilizamos pa a dibuja las señales empo ales a pa i de los da os impo ados
(pa e es é ica y uncional), que acili a la isualización y la comp ensión de los da os.
Al pode ep esen a las señales empo ales g á icamen e, se puede ob ene una isión
gene al de cómo cambia el compo amien o de la señal a lo la go del iempo. También
ue usada pa a la ase de expe imen ación pa a gene a ma ices de con usión, nos
ue muy ú il pa a e alua el endimien o del modelo y la calidad de las p edicciones.
5.2.5. json
La biblio eca json es una he amien a es ánda en Py hon que p opo ciona un-
ciones pa a manipula y abaja con da os en o ma os JSON (Ja aSc ip Objec
No a ion). Usamos es e o ma o de da os pa a gua da las con igu aciones de nues o
p oyec o. La elección de u iliza json pa a gua da las con igu aciones se basa en su
na u aleza simple e in ui i a pa a el manejo de da os.
5.3. Guía de uso
En es a sección, nos cen a emos en explica las pa es más ele an es e in e ac-
i as de la in e az g á ica de usua io. Después de habe ins alado las dependencias
de Pa e oLib u ilizando los sc ip s p opo cionados po la biblio eca, pod ás inicia
la in e az g á ica ejecu ando el siguien e comando desde el di ec o io p incipal del
código del eposi o io:
1( Pa e oLibEn ) use @pc :~ $Pa e oLib / GUI /GUI .py
Figu a 5.5: Inicio de la in e az g á ica de usua io de Pa e oLib
5.3. GUÍA DE USO 57
Figu a 5.6: Mues a de la pa e de la in e az donde se seleccionan los da os de en ada
Una ez abie a la en ana, e emos los bo ones (Figu a 5.6) y las opciones p in-
cipales (Figu a 5.7):
STL speci ica ion: Pe mi e selecciona un a chi o .s l que con iene una ó mula
en STL. Al selecciona el a chi o, la desc ipción de la ó mula se mues a en
una caja in e io en modo de solo lec u a, es deci , no se puede modi ica .
Inpu signal: Pe mi e selecciona un a chi o .cs que con iene la de inición de
la señal empo al. Una ez seleccionado apa ece una ep esen ación g á ica de
la señal en la caja “Signal” de la en ana.
Pa ame e s: Pe mi e selecciona un a chi o .pa am que con iene los pa áme os
a es udia y que se u ilizan en la ó mula del a chi o .s l seleccionado. Al elegi
un a chi o .pa am, apa ece án los pa áme os seleccionados sin alo en una
caja más abajo donde se pod án comple a los in e alos de búsqueda ( alo
mínimo y máximo) pa a uno de los pa áme os. Es os in e alos se án u ilizados
po la biblio eca Pa e oLib pa a ealiza el p oceso de ap endizaje. (Figu a 5.8)
Pa ame ic STL: : Pe mi e selecciona si e alua emos una consul a STL pa amé-
ica o no: en nues o caso las clasi icaciones siemp e las ha emos con ó mulas
pa amé icas.
58 CAPÍTULO 5. ACTUALIZACIÓN DE LA INTERFAZ GRÁFICA
Figu a 5.7: Mues a de la pa e de la in e az donde se seleccionan las opciones del
algo i mo de minado
Mining me hod: Pe mi e selecciona el mé odo de minado pa a la clasi icación
de la señal empo al seleccionada, las opciones son “BBMJ19”, “BDMJ20” que
pe enecen a los abajos de años an e io es y “BMNN22” que co esponde
con nues o algo i mo de minado.
Type Sea ch: Pe mi e selecciona el ipo de búsqueda, que puede se secuencial
o pa alela.
Op Le el: Pe mi e selecciona el ipo de pa ición que se ealiza á sob e el
espacio de búsqueda.
Run: Pe mi e ejecu a la consul a. Pa a lle a a cabo la consul a, se equie en los
es a chi os de en ada mencionados an e io men e y los alo es seleccionados
de las opciones. Al hace clic en es e bo ón, se ecopilan las u as de los a chi os
de en ada, el ango de alo es numé icos de los pa áme os. Como esul ado,
se ob end á el conjun o de esul ados con las egiones clasi icadas como alsas
o e dade as según los pa áme os.
A pa e de pode ejecu a el algo i mo de minado pa a ob ene el esul ado con
las egiones de acep ación y de echazo, ambién es posible gua da la con igu ación:
iche os, pa áme os y opciones seleccionadas, pa a pode hace p uebas más adelan e
usando la misma con igu ación.
Pa a gua da una con igu ación, se deben segui los siguien es pasos:
C ea el p oyec o: Haz clic en el bo ón C ea e... New P ojec y p opo ciona
un nomb e pa a la con igu ación. Es o c ea á un nue o p oyec o en el que se
5.3. GUÍA DE USO 59
Figu a 5.8: Mues a de la pa e de la in e az donde se seleccionan especi ican los
in e alos de los pa áme os
pod án gua da las opciones y ajus es.
Selecciona iche os y pa áme os: Den o del p oyec o, elige los a chi os y pa-
áme os ele an es que deseas gua da como pa e de la con igu ación.
Con igu a opciones: Selecciona las opciones adicionales que deseas gua da jun-
o con la con igu ación.
Gua da el p oyec o: Haz clic en "Gua da P oyec o... Gua da "pa a gua da
la con igu ación. Es o almacena á odas las opciones, a chi os y pa áme os
seleccionados en el a chi o de con igu ación c eado.
Una ez que la con igu ación es é gua dada, pod ás ol e a ab i la y ca ga
las opciones en el u u o median e el bo ón Open... Load P ojec . Es o e pe mi i á
ecupe a la con igu ación gua dada y con inua abajando con las mismas opciones
y ajus es p e ios.

60
Capí ulo 6
De ección de a aques en Sma G ids
P esen ados en la sección an e io los algo i mos que hemos usado pa a el minado
de p opiedades STL p opo cionados po los o áculos de Pa e oLib y STLE al, p o-
cedemos a mos a los esul ados de los di e sos expe imen os que hemos ealizado
usando esas he amien as pa a dis ingui el compo amien o no mal de cualquie ma-
nipulación (algo que llama emos compo amien o de a aque). Pa a ello, usa emos los
da os de consumo eléc ico de di e sos usua ios p opo cionados po la base de da os
de ISSDA-CER ( e [10]). Finalmen e, ealiza emos una discusión de los esul ados
ob enidos, de si es os mejo an o no los de o as ap oximaciones más con encionales
usando o os mé odos de ap endizaje supe isado como k-NN o DBSCAN ( e [7])
6.1. Base de da os
Pa a la expe imen ación hemos usado dos conjun os de da os, ambos egis ados
po la Comisión de Regulación de Ene gía I landa ( e [10]), que se enca ga de egula
los da os p o enien es de los medido es a anzados de los sec o es de elec icidad y
gas na u al de I landa.
Los consumos egis ados del conjun o de da os de elec icidad es án ca ego izados
como esidenciales, pequeñas y medianas emp esas y no clasi icados, y conside an un
pe íodo de 76 semanas de egis o pa a 6445 medido es a anzados. En el caso de los
consumos de gas na u al se di iden en g upos de p ueba y con ol, y conside a un
pe íodo de 78 semanas de egis o pa a 1576 medido es a anzados. La ecuencia de
las lec u as es la misma pa a ambos conjun os y es cada media ho a, po lo que se
61
62 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
con abilizan un o al de 48 mediciones de consumo po día.
6.2. P ep ocesado de los da os
O iginalmen e, los da os es án en un único iche o di idido en 3 columnas: Una
pa a el ID de los usua io, o a pa a el momen o en el iempo en el que se midió el
consumo y una e ce a pa a el consumo p opiamen e dicho. An es de comenza los
expe imen os, u imos que depu a con el in de adap a es os da os al o ma o de
se ies empo ales sopo ado po Pa e oLib pa a su pos e io clasi icación. Hicimos los
siguien es cambios:
Qui a la columna del ID de usua io: Du an e los expe imen os, solo necesi amos
el ID del usua io pa a iden i ica el día con el que es amos abajando y no
den o de los p opios da os, donde solamen e necesi amos la se ie empo al de
pa es ( i, xi).
Di idi los da os en días: F agmen amos los iche os de da os (que no malmen e
aba caban los da os de odos los usua ios du an e a ias semanas) en días indi-
iduales pa a un usua io indi idual. Así, en luga de ene un solo iche o con
más de un millón de ins an es de iempo en los que se leyó el consumo, aho a
enemos a ios iche os sepa ados donde que cada uno co esponde a un día y
un usua io pa icula .
Di isión del da ase en días de en enamien o y de es : Di idimos el da ase en
una sección de en enamien o y o a de es . En es a di isión o iginal, di idimos
el conjun o de da os en 80 % pa a en enamien o y el 20% es an e pa a es .
6.3. A aques: De inición y ipos
Asumiendo que los da os p o enien es de la Comisión de Regulación de Ene gía
I landa no han sido a ec ados po a aques in eg ados, hemos usado es os conjun os
de da os como un escena io álido pa a la expe imen ación, y lo denomina emos
el compo amien o no mal. Con el obje i o de de ec a compo amien os anómalos
que puedan indica manipulaciones de la ins alación, hemos manipulado es os da os
y c eado iche os nue os donde gua da es os nue os da os, a los que llama emos
a aques. Los ipos de a aque que dis inguimos son los siguien es (la de inición de
odos ellos p o iene de [7])
6.3. ATAQUES: DEFINICIÓN Y TIPOS 63
Los escena ios de a aque conside ados son los siguien es:
1. False Da a Injec ion (FDIx): Es e a aque cambia cada medición de consumo del
medido po un po cen aje ijo de la medición x% : x∈N. Dependiendo del
alo de x, el bene iciado es el consumido (si x < 100) o el adminis ado (si
x > 100). Hemos conside ado a ios escena ios de a aque de es e ipo, an o los
que bene ician al consumido ( e 6.11) como los que bene ician el adminis ado
( e 6.12).
2. Familia A e age: Los da os son manipulados eemplazando cada medición po
el alo c∗x, donde x es un alo inicial p ede e minado y elacionado con una
media a i mé ica y c∈[1−a, 1+a]elegido al aza pa a un a p e ijado. Noso os
hemos ealizado los expe imen os ijando a= 1. Dependiendo del alo de x que
se coja, es os a aques eciben un nomb e di e en e:
Minimal a a age a ack (MinA g): x es la media mínima de odas las se-
manas del p oceso de en enamien o ( e 6.22).
A e age a ack (A g): x es el alo de la semana en la que se encuen a la
medición a al e a ( e 6.21).
3. Random Scale A ack (RSA[a,b]): Los da os de un escena io RSA son manipu-
lados eescalando cada consumo po la ealización po una cons an e ∈[a, b],
donde 0< a < b elegida al aza ( e 6.31).
4. A aque de in e cambio (Swap): Se pa e del supues o de que es e a aque se
basa en un acue do de iempo de uso, en el cual el p ecio de la ene gía a ía en
unción de los pe iodos de al a y baja demanda, que llama emos picos y alles
de consumo. El a aque consis e en in e cambia los consumos de ene gía en e
los 2 pe íodos de consumo y alle, 6.32.
70 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
e an mejo es pa a de ec a cada ipo de a aque.
De ección de e o es: Al ealiza las p uebas con único usua io, hemos podido
depu a e o es an o en las p opiedades STL como en el algo i mo BMNN22
de Pa e oLib
Mejo a consis encia: Como hemos mencionado, a ios de los elemen os del al-
go i mo de elabo ación de las egiones de acep ación y elección de los campeones
son p obabilís icos y, po lo an o, necesi amos una mane a de hace los expe-
imen os más consis en es
Adjun amos a con inuación una mues a del consumo del usua io 1143 en dos días
dis in os, ya que nos se á de u ilidad en el u u o
Figu a 6.4: Ejemplos de dos días de consumo no mal del usua io 1143
Elección del espacio de búsqueda pa a ejecu a los expe imen os Va ias de
las p egun as a las que enemos que in en a da espues a du an e la ealización de
los expe imen os es án elacionadas con el espacio de búsqueda. Aquí ealizamos una
pequeña lis a con las soluciones que hemos p opues o
¿Cuán as dimensiones debe ene el espacio de búsqueda?
En gene al, es amos buscando un núme o de dimensiones con el que podamos

6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 71
modela la mayo can idad de in o mación posible pa a pode así ob ene cam-
peones más signi ica i os. Po o o lado el algo i mo usado pa a la elección de
los campeones (con o sin in e sección de egiones de acep ación) iene asociado
un cos e compu acional muy al o que escala mucho según aumen an las dimen-
siones incluso con las mejo as p o enien es del uso de la ap oximación p oba-
bilís ica del cálculo de la Dis ancia Hausdo de la biblio eca scipy de Py hon.
Tomando odo lo an e io en conside ación y, añadiendo además que nos gus a-
ía mos a g á icamen e los esul ados que hemos ido ob eniendo (y ambién los
di e en es campeones y egiones de acep ación), hemos decidido usa un espacio
de búsqueda de 3 dimensiones pa a odos los expe imen os, iden i icadas como
p1, p2, p3. Po an o, el espacio de búsqueda pa a los expe imen os se á un cubo
de R3de la o ma C= [a, b]×[c, d]×[e, ] : p1∈[a, b], p2∈[c, d], p3∈[e, ]
¿Podemos usa el mismo espacio de búsqueda pa a odos los expe i-
men os?
Idealmen e, debe íamos pode usa el mismo espacio de búsqueda pa a odos
los expe imen os. Es o es bas an e más complicado de lo que pod ía pa ece
a p ime a is a ( e consumo de un día del usua io 1143 6.4.1) eniendo en
cuen a la g an a iabilidad en los consumos. Que emos, po lo an o, encon a
un espacio de búsqueda en el que podamos encon a una egión de acep ación lo
su icien emen e g ande como pa a pode encon a un campeón ep esen a i o,
pe o no an g ande como pa a que no se in oduzca uido en el sis ema. Noso os
hemos op ado po ealiza una explo ación pa a es ima dónde se encuen a el
in e alo ideal pa a cada p opiedad.
Clasi icación de expe imen os Hemos ealizado a ias ap oximaciones pa a ea-
liza la iden i icación de cada uno de los a aques. Después de examina los esul ados
de cada uno de los es s ealizados, ha emos una pequeña discusión pa a elegi la mejo
ap oximación pa a cada a aque. Nues os c i e ios pa a elegi la mejo ap oximación
an a se los siguien es:
Tasa de acie os global al a y, en caso de no pode consegui se, ecall al o:
Idealmen e, p e e imos sepa a comple amen e bien los a aques y que no halla
allos pe o, en caso de habe los, p io iza emos aquellas ap oximaciones en las que
72 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
lo hayamos hecho ’demasiado bien’ (es deci , aquellas ap oximaciones con más
alsos posi i os que alsos nega i os) y en las que el e o sea una sob ees imación
Es abilidad a lo la go de los espacios de búsqueda: El p opósi o inal es encon a
un espacio de búsqueda ideal donde los a aques puedan se iden i icados. Pa a
encon a dicho in e alo, nos in e esan ap oximaciones cuya p ecisión no a íe
en exceso a lo la go de los di e sos espacios de búsqueda
Buen clasi icado pa a múl iples a aques: O o de los p opósi os inales es encon-
a una p opiedad “panacea"que si a como clasi icado de odos los a aques.
Después de discu i odas las ap oximaciones, e emos si exis e alguna p opie-
dad que sea buen clasi icado pa a más a aques
Pa áme os pa a la ealización de los expe imen os Hemos op ado inalmen e
po uni o miza los pa áme os pa a la ealización de los expe imen os (a sabe , días
de en enamien o y es y los espacios de búsqueda en los que hace la explo ación).
Es os pa áme os son los siguien es:
Días de en enamien o: 40
Días de es : 10
In e alos: p1∈[0,47] yp2, p3∈[0, x] : x∈ {10,20,30,40,50,60,70,80,90,100}
Finalmen e, emos los di e en es a aques y las ap oximaciones omadas
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 73
6.4.2. Swap
Figu a 6.5: Ejemplos de dos días de consumo no mal del usua io en e al consumo
manipulado median e Swap
Como indicamos en la sección an e io , el a aque de in e cambio (o Swap, como
nos e e i emos a él a pa i de aho a), supone un sis ema de anjas ho a ias. De
es a mane a, exis i á un in e alo del día en el que el p ecio del consumo se á más
ba a o al que llama emos ’ anja alle’ e, in e samen e, exis i á un in e alo en el que
el consumo se á más ca o al que llama emos ’ anja pico’. Du an e el desa ollo de
nues os expe imen os con Swap hemos supues o una sola anja alle desde las 00:00
has a las 09:00 y una sola anja pico desde las 09:00 has a las 00:00.
P ime a ap oximación - Aco ación simple
Es a es nues a p ime a ap oximación a de ec a es e a aque. La p opiedad STL
usada es la siguien e:
ϕ:= Zp1
0
x0≤p2∧Z47
p1
x0≤p3(6.1)
Figu a 6.6: Ve código STL en A.1.1
Explicada en palab as, es a p opiedad sepa a las mediciones de un día en dos
74 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
in e alos, ob iene el alo acumulado de cada uno de dichos in e alos e in en a
aco a ambos alo es. Es a p opiedad es el p ime in en o de explo a el hecho de
que pa a Swap el alo acumulado de uno de los in e alos se á mucho mayo que
el del o o ( e igu a 6.4.1). Los expe imen os se han ealizado con los siguien es
pa áme os:
Veamos los esul ados de los expe imen os y oma emos el mejo con y sin in e -
sección de egiones de acep ación y a mos a los dos mejo es expe imen os ealizados.
Figu a 6.7: Es udio de los expe imen os en di e sos in e alos sin la in e sección de
egiones de acep ación (izquie da) y con ella (de echa)
Las mejo es soluciones se ob ienen en di e en es in e alos dependiendo de si exis e
in e sección en e egiones de acep ación o no, lo que nos sugie e que en ningún caso se
es á escogiendo el mismo campeón. Escogemos aho a los mejo es espacios de búsqueda
sin ene en cuen a la in e sección en e egiones de acep ación y eniéndola en cuen a.
Sin in e sección de egiones de acep ación escogiendo como espacios de bús-
queda CSwap = [0,47] ×[0,100] ×[0,100] pa a el caso en el que no enemos en cuen a
la in e sección en e egiones de acep ación. Ve esul ados del expe imen o en B.1.1.
Con in e sección de egiones de acep ación Escogemos C′
Swap = [0,47] ×
[0,50] ×[0,50] eniendo en cuen a la in e sección en e egiones de acep ación. Ve
esul ados del expe imen o en B.1.1.
Obse amos que los esul ados a ojados po es a p opiedad son, en gene al, bas-
an e medioc es. Es bas an e mejo deja ue a la in e sección en e egiones de acep-
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 75
ación e, incluso en es e caso, las soluciones encon adas son compa a i amen e no
demasiado buenas (con espec o al es o de ap oximaciones que e emos más adelan-
e) y, además, los espacios de búsqueda en los que han sido encon adas son com-
pa a i amen e mucho más g andes que el ango de alo es de la señal con la que
es amos abajando, haciendo a es a p opiedad que a oja esul ados medioc es y
que es compu acionalmen e cos osa. Es o nos lle a en onces a la p egun a, ¿po qué
la es amos mos ando? Po que nos si e pa a in oduci las he amien as que usa e-
mos en ap oximaciones sucesi as pa a sepa a el compo amien o no mal del a aque
Swap (la di isión de la señal en dos in e alos di e enciados, las co as, e c.).
Segunda ap oximación - Aco ación doble
T aducimos ma emá icamen e es a p opiedad como:
ϕ:= Zp1
0
x0≥p2⇒Z47
p1
x0≤p3(6.2)
Figu a 6.8: Ve código en A.1.2
Con es a p opiedad empieza a oma o ma la idea que que emos pe segui pa a di-
e encia es e a aque pa icula . Di e enciamos la señal en dos in e alos y calculamos
la suma de los consumos en cada uno de ellos. Po la de inición del a aque Swap es a-
blecida an e io men e, sabemos que el consumo du an e la noche se á, apa en emen e,
mucho mayo que du an e el día. Es a pa i de es a suposición que ealizamos las
aco aciones ap opiadas. Los pa áme os con los que hemos ealizado los expe imen os
no a ían con espec o a la ap oximación an e io , es deci :
Como en la ap oximación an e io , p ocedemos a mos a los esul ados de ealiza
el mismo expe imen o a lo la go de di e en es espacios de búsquedas:

76 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.9: Es udio de los expe imen os en di e sos in e alos sin la in e sección de
egiones de acep ación (izquie da) y con ella (de echa)
Aunque más pola izadas, emos que las soluciones son mucho mejo es en gene al.
P ocedemos a mos a aho a los esul ados de los dos mejo es expe imen os
Sin in e sección de egiones de acep ación Pa a es e caso pa icula , oma-
emos como mejo expe imen o el ecall más al o (pues la asa global de acie os se
man iene más o menos uni o me) y, po an o, el espacio de búsqueda se á el conjun o
CSwap = [0,47] ×[0,20] ×[0,20]. Ve esul ados del expe imen o en B.1.2.
Con in e sección de egiones de acep ación Si obse amos los esul ados ob-
enidos de ealiza la explo ación en busca del espacio de búsqueda mos ada an-
e io men e, emos un pa ón lige amen e ex año, y es que los ecalls más al os
se ob ienen cuando la asa global de acie os es más baja. Es po es a azón po
la que amos a p io iza la asa de acie os global más al a y amos a oma és a
como el mejo expe imen o. Es deci , nues o espacio de búsqueda es el conjun o
CSwap = [0,47] ×[0,80] ×[0,80] (cabe deci que pod íamos habe usado ambién
C= [0,47] ×[0,10] ×[0,10] yC= [0,47] ×[0,30] ×[0,30]). Ve esul ados del
expe imen o en B.1.2.
En conclusión, podemos obse a que los esul ados a ojados po es a p opie-
dad son bas an e mejo es que los de la ap oximación an e io ( e 6.4.2) pe o sigue
habiendo p oblemas, especialmen e dos:
No ob enemos esul ados uni o mes a lo la go de los espacios de búsqueda.
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 77
De hecho, los esul ados son bas an e suscep ibles de cambia d ás icamen e
dependiendo del espacio de búsqueda usado. Es o no nos in e esa po que, a la
ho a de elegi un espacio de búsqueda común a odos los a aques más adelan e,
no podemos ene la iabilidad de que es a ap oximación aya a a oja buenos
esul ados.
Podemos ene p oblemas a la ho a de abaja con usua ios con hábi os “anó-
malos". Es a segunda ap oximación solo se ija en que el consumo o al en el
p ime amo del día (po la noche y de mad ugada) sea mayo que en el segun-
do, sin impo a mucho más. Es o quie e deci que el compo amien o no mal
de un usua io que abaje de noche po ejemplo se puede con undi con una
manipulación.
Nues o siguien e obje i o aho a es man ene o mejo a la calidad de las solucio-
nes ob enidas en es a ap oximación mien as aumen amos la es abilidad de dichas
soluciones a lo la go de los espacios de búsqueda.
Te ce a ap oximación - Aco ación doble e inada
Ma emá icamen e, la aducción li e al de es a p opiedad se ía
ϕ:= Zp1
0
x0≥p2⇒Z47
p1
x0≤p3∧Z47
p1
x0≤p3⇒Zp1
0
x0≥p2(6.3)
Sin emba go, pa a aquellos con ojo lógico segu amen e se á e iden e que exis e
una mane a equi alen e pe o mucho más sencilla de eesc ibi la ecuación 6.3
ϕ:= Zp1
0
x0≥p2⇔Z47
p1
x0≤p3(6.4)
Figu a 6.10: Ve esul ados en A.1.3
Es a es la p ime a doble implicación que hemos u ilizado pe o no se á la úl ima
así que necesi a una explicación más la ga de la de ap oximaciones an e io es. Inme-
78 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
dian amen e su ge una p egun a muy e iden e ¿Po qué usa la exp esión 6.3 cuando
6.4 es equi alen e y mucho menos en e esada de esc ibi ? La espues a a es a p e-
gun a se educe a limi aciones de S lE al. Solo podemos usa ope ado es lógicos que
S lE al pueda p ocesa y, a día de hoy, és os son ∧,∨,¬,⇒así que, en ez de hace
di ec amen e la doble implicación, debemos cons ui la noso os usando equi alencias
lógicas po el momen o. Es o es algo que e emos más abajo ambién pa a el caso de
la cons ucción de una disyunción exclusi a ⊕.
Explicamos aho a la u ilidad que hemos encon ado en el ope ado ⇔. En a ias
ocasiones, el p oblema que nos hemos encon ado es que sabemos cómo modela bien
el compo amien o de un a aque pe o dicha modelización no es buena a la ho a de
de ec a el compo amien o no mal del usua io. La doble implicación ha sido una
he amien a muy ú il a es e espec o po sus ca ac e ís icas. Como la p oposición
global solo se á e dade a en el caso de que los dos p edicados sean ambos e dade os
o ambos alsos, hemos podido modela bien el compo amien o no mal del usua io
(en el caso pa icula de es a ap oximación, si ambos p edicados son alsos y, po lo
an o, el consumo es más o menos uni o me a lo la go del día) y el compo amien o del
a aque Swap (si ambos p edicados son e dade os). Ve emos más adelan e que hemos
explo ado es e ipo de azonamien o en a ias ocasiones. Aho a, sin emba go, emos
los esul ados de los expe imen os a lo la go de di e en es espacios de búsqueda:
Figu a 6.11: Es udio de los expe imen os en di e sos in e alos sin la in e sección de
egiones de acep ación (izquie da) y con ella (de echa)
Obse amos esul ados que, en gene al, son lige amen e mejo es que los de la ap o-
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 79
ximación an e io además de más uni o mes, sob e odo en los espacios de búsqueda
pequeños (donde nos in e esa que haya mejo es esul ados po que educe el cos e
compu acional de la búsqueda). Vamos a mos a aho a los dos mejo es expe imen-
os, empezando po qui a la in e sección de egiones de acep ación.
Sin in e sección de egiones de acep ación Si analizamos los esul ados ob e-
nidos al desp ecia la in e sección de egiones de acep ación, emos que la asa global
de acie os más al a p o iene de un expe imen o con un ecall pe ec o de 1 así que,
en es e caso, la decisión del mejo expe imen o es ácil. Nues o espacio de búsqueda
es CSwap = [0,47] ×[0,40] ×[0,40]. Ve esul ados del expe imen o en B.1.3.
Con in e sección de egiones de acep ación De nue o la decisión es ácil ya
que emos que la asa global de acie os más al a p o iene de un expe imen o con un
ecall más al o. Nues o espacio de búsqueda es CSwap = [0,47] ×[0,20] ×[0,20]. Ve
esul ados del expe imen o en B.1.3.
Obse amos esul ados mucho mejo es (sob e odo añadiendo la in e sección de
egiones de acep ación) en gene al. Además, és os son más uni o mes a lo la go del
espacio de búsqueda en gene al. Es o es po que las egiones de acep ación es án
más cla amen e di e enciadas g acias a la doble implicación. Sin emba go, hay un
p oblema he edado de la ap oximación an e io que aún no hemos esuel o. Es a
p opiedad sigue sin disc imina en e un aumen o no mal del consumo du an e la
noche po pa e de un usua io y un consumo ano mal, po lo que un usua io con
hábi os anómalos (un abajado noc u no) pod ía segui causando p oblemas a la
ho a de sepa a egiones de acep ación. O ecemos aho a nues o in en o de soluciona
es e p oblema man eniendo la calidad de las soluciones.
Cua a ap oximación - Solución pa asi a ia
Es a es la p opiedad con la aducción ma emá ica más complicada:
ϕ:= G[0,p2](∆x0≤0) ⇒Zp1
0
x0≥Z47
p1
x0(6.5)
Figu a 6.12: Ve código STL en A.1.4
86 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.16: Es udio de los expe imen os en di e sos in e alos eniendo en cuen a
la in e sección en e egiones de acep ación pa a A g (izquie da), MinA g (cen o) y
MaxA g (de echa)
Aunque lo pueda pa ece , no hemos copiado po e o la misma imagen es eces.
Es a p opiedad a oja los mismos esul ados, con los mismos campeones sea cual sea el
miemb o de la amilia A e age que es emos usando en cualquie momen o. Además,
los esul ados son bas an e uni o mes. Sin emba go, es a ap oximación deja de se
buena en cuan o nos ijamos en los esul ados en si. Los esul ados son uni o mes,
pe o muy medioc es. Po o o lado, no enemos esul ados sup imiendo las egiones
de acep ación, lo que nos indica que una de las egiones de acep ación de uno de los
a aques es un subconjun o de la o a. Aún así, mos amos los esul ados del mejo
expe imen o. Aunque es un poco i ele an e el espacio de búsqueda que usemos, amos
a u iliza C= [0,47] ×[0,10] ×[0,10]. Ve esul ados de los expe imen os en B.2.1.
Segunda ap oximación - Di e encia de acumulaciones
Una ez más, o ecemos la aducción ma emá ica li e al de la p opiedad:
ϕ:= Zp1
2
0
x0−Zp1
p1
2
x0
≤p2!∨ Zp1
2
0
x0−Zp1
p1
2
x0
≥p3!!∧
¬ Zp1
2
0
x0−Zp1
p1
2
x0
≤p2!∨ ¬ Zp1
2
0
x0−Zp1
p1
2
x0
≥p3!! (6.7)
De nue o un ojo lógico ma emá ico se hab á dado cuen a de que es o se puede
simpli ica a lo siguien e:

6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 87
ϕ:= Zp1
2
0
x0−Zp1
p1
2
x0
≤p2!⊕ Zp1
2
0
x0−Zp1
p1
2
x0
≥p3!(6.8)
Figu a 6.17: Ve código STL en A.2.2
Es e es el o o mé odo que hemos usado pa a sepa a el compo amien o no mal
del compo amien o de a ios a aques, una disyunción exclusi a (ope ación XOR y
deno ada como ⊕). Una ez más, enemos que ecu i a cons ucciones algo en e-
esadas y equi alencias lógicas como 6.7 dado que S lE al no iene inco po ado un
ope ado ⊕.
Es a ap oximación oma la noción de uni o midad de los in e alos p oducidos
po A g e in en a ein e p e a la. Vimos más a iba en el ejemplo de a aques A e age
( e 6.14) que el ango de alo es con el que es amos abajando es pequeño. Es a
ap oximación in en a sol en a el p oblema del amaño del ango de alo es aba-
jando con acumulaciones de los mismos. Veamos aho a el es udio en los espacios de
búsqueda.
Figu a 6.18: Es udio de los expe imen os en di e sos espacios de búsqueda pa a A g
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
88 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.19: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Mi-
nA g sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Figu a 6.20: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Ma-
xA g sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Obse amos que, pa a es a ap oximación, ob enemos esul ados muy dis in os de-
pendiendo de qué a aque es emos u ilizando. Vemos ambién que excep o pa a el caso
de MinA g, que sigue conse ando los esul ados medioc es, mejo an lige amen e. Co-
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 89
menzamos a e ecalls de un alo ela i amen e al o y, en gene al, es a ap oximación
es mejo aunque es á lejos de se óp ima. Mos amos aho a los mejo es esul ados pa-
a cada uno de los a aques, dependiendo de si enemos en cuen a la in e sección en e
egiones de acep ación o no.
Sin in e sección de egiones de acep ación Echando un is azo a las g á icas
mos adas an e io men e, se han ob enido esul ados muy dispa es dependiendo del
a aque que hemos enido en cuen a. Es po es o que hemos escogido un espacio de
búsqueda di e en e pa a cada a aque. Conc e amen e, CA g = [0,47] ×[0,40] ×[0,40]
pa a A g, CMinA g = [0,47] ×[0,10] ×[0,10] pa a MinA g y CMaxA g = [0,47] ×
[0,30] ×[0,30] pa a MaxA g. Ve esul ados de los expe imen os en B.2.2.
Con in e sección de egiones de acep ación Una ez más emos que los esul-
ados son muy dispa es y debemos escoge di e en es espacios de búsqueda pa a cada
uno de los a aques. De es e modo, escogemos CA g = [0,47]×[0,30]×[0,30] pa a A g,
CMinA g = [0,47] ×[0,20] ×[0,20] pa a MinA g y CMaxA g = [0,47] ×[0,40] ×[0,40]
pa a MaxA g. Ve esul ados de los expe imen os en B.2.2.
Aunque los esul ados son lige amen e mejo es que los de la ap oximación an e io
aunque siguen siendo bas an e medioc es, sob e odo en el caso de MinA g, que no
ha mejo ado p ác icamen e nada. Sin emba go, conside amos que és a sigue siendo
una buena ap oximación a la ho a de desc ibi la o ma de la señal gene ada po los
a aques de la amilia A e age.
Te ce a ap oximación - Combinando las dos an e io es
Es a p opiedad podemos aduci la ma emá icamen e como:
ϕ:= Zp1
2
0
x0−Zp1
p1
2
x0
≤p2!⇒m´ax
[0,p1]x0−m´ın
[0,p1] x0≤p3(6.9)
Figu a 6.21: Ve código STL en A.2.3
Teniendo en cuen a las dos ap oximaciones an e io es, es a que p esen amos aho a
no necesi a mucha más p esen ación. Es amos in en ando combina las dos ap oxi-
maciones an e io es pa a in en a mejo a los esul ados ob enidos. Como e emos
90 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
más adelan e, la mejo a de esul ados uel e a se mínima con espec o a la p opie-
dad an e io , aunque exis e. P ime o, sin emba go, p esen amos los esul ados de la
in es igación a lo la go de a ios espacios de búsqueda.
Figu a 6.22: Es udio de los expe imen os en di e sos espacios de búsqueda pa a A g
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
Figu a 6.23: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Mi-
nA g eniendo en cuen a la in e sección en e egiones de acep ación
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 91
Figu a 6.24: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Ma-
xA g sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Vemos que ol emos a ene p oblemas con las egiones de acep ación supe pues-
as (algo que se puede ap ecia po el hecho de que al sup imi la in e sección en e
egiones ob enemos muchos menos esul ados). P esen amos los mejo es expe imen-
os, p ime o sup imiendo la in e sección en e egiones de acep ación.
Sin in e sección en e egiones de acep ación En es e caso ol emos a ca ece
de esul ados pa a MinA g, mien as que la elección de los espacios de búsqueda
pa a A g y MaxA g queda educida a una sola opción, po lo que no enemos más
elección de espacios de búsqueda que CA g = [0,47] ×[0,20] ×[0,20] pa a A g y
CMaxA g = [0,47] ×[0,10] ×[0,10] pa a MaxA g. Ve esul ados de los expe imen os
en B.2.3.
Con in e sección de egiones de acep ación Si echamos o o is azo a la
in es igación de los espacios de búsqueda o ecida más a iba, es á cla o que e-
nemos más espacios donde elegi , aunque los esul ados con inúan siendo medio-
c es. P io izando el ecall más al o, escogemos los siguien es espacios de búsqueda:
CA g = [0,47] ×[0,50] ×[0,50] pa a A g, CMinA g = [0,47] ×[0,50] ×[0,50] pa a
MinA g y CMaxA g = [0,47] ×[0,20] ×[0,20] pa a MaxA g. Ve esul ados de los
expe imen os en B.2.3.

92 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Un is azo ápido a los esul ados nos con i ma lo que hemos obse ado más
a iba, y es que es a ap oximación, aunque ma ginalmen e mejo que las an e io es,
ampoco es del odo buena y es aquí donde que emos hace un inciso que segu amen e
pueda pa ece ob io. Echando un is azo a la mues a de la amilia A e age o ecida
al inicio de es a sección ( e 6.14) y, más conc e amen e, al día 1 (en la imagen, a
la de echa), se puede obse a que puede exis i compo amien o no mal del usua io
que, una ez digi alizado, nos da una se ie empo al al amen e uni o me, po lo que
las es p ime as ap oximaciones mos adas aquí no explo an an bien la uni o midad
de los a aques de la amilia A e age como c eíamos y que, de hecho, dicha uni o midad
puede se pe ec amen e no mal. Necesi amos en onces busca o o en oque bajo el
que mi a es a amilia de a aques.
Cua a ap oximación - Dis ancias a la media
Debido a la complejidad de es a p opiedad, amos a simpli ica la un poco. De-
no ando ⊕como la disyunción lógica exclusi a (ope ación XOR) y la media de las
mediciones en el in e alo [a, b]como µ[a,b]=Rb
ax0
b−a+1 :
ϕ:=G[0,p1] 
x0−µ[0,p1]
m´ax[0,p1] x0−m´ın[0,p1] x0
≤p2
100⊕
G[0,p1] 
x0−µ[0,p1]
m´ax[0,p1] x0−m´ın[0,p1] x0
≥p3
100(6.10)
Figu a 6.25: Ve código STL en A.2.4
Es a p opiedad es nues o in en o de en oca los a aques de la amilia A e age de
o a mane a. Vimos du an e la de inición de los a aques de la amilia A e age que,
aunque mul iplicada po una cons an e al aza , el alo inicial po el que se sus i uye
cada medición es el mismo. Lo que in en amos hace con es a p opiedad es de ec a
si las mediciones es án odas ce canas a un alo (en es e caso, aco ando la di e encia
en e una medición en pa icula y la media del in e alo en el que se encuen a),
eescala dicho alo pa a no ene p oblemas de angos de alo es (la azón po la
que di idimos en e el ango de alo es) e in en a aco a lo. Si el alo inal ob enido
es pequeño quie e deci que, en gene al, las mediciones es án muy ce canas a un alo
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 93
y, po lo an o, es amos an e una si uación de a aque A e age. En o o caso, es amos
an e el compo amien o no mal del usua io. Vemos el esul ado de la explo ación de
los di e en es espacios de búsqueda usando es a p opiedad.
Figu a 6.26: Es udio de los expe imen os en di e sos espacios de búsqueda pa a A g
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
Figu a 6.27: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Mi-
nA g sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
94 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.28: Es udio de los expe imen os en di e sos espacios de búsqueda pa a Ma-
xA g sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Obse amos esul ados muy mejo ados, con o bien una p ecisión o bien un ecall
casi pe ec o en odos los casos. Seguimos eniendo algún p oblema con MinA g pe o,
en gene al, el es o de esul ados son muchísimo mejo es que los de las ap oximaciones
an e io es. Pasamos aho a a discu i los mejo es espacios de búsqueda pa a los di e sos
a aques, p ime o sin ene en cuen a la in e sección en e egiones de acep ación.
Sin in e sección de egiones de acep ación Todas las elecciones de los espacios
de búsqueda debe ían es a bas an e cla as. Escogemos CA g = [0,47]×[0,40]×[0,40]
pa a A g, CMinA g = [0,47]×[0,50]×[0,50] pa a MinA g y CMaxA g = [0,47]×[0,90]×
[0,90] pa a MaxA g. Ve esul ados de los expe imen os en B.2.4.
Con in e sección de egiones de acep ación Una ez más, las elecciones de
los di e sos espacios de búsqueda es án bas an e cla os. Escogemos CA g = [0,47] ×
[0,10]×[0,10] pa a A g, CMinA g = [0,47]×[0,30]×[0,30] pa a MinA g y CMaxA g =
[0,47] ×[0,40] ×[0,40] pa a MaxA g. Ve esul ados de los expe imen os en B.2.4.
Resumen de esul ados
Resumimos aho a los esul ados de los mejo es expe imen os de cada ap oximación
que hemos expues o pa a cada uno de los es a aques es udiados:
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 95
Ap oximación ¿In e sección? Espacio de búsqueda P ecision Recall Accu acy
T iple aco ación
( e 6.4.3)
No N/A N/A N/A N/A
Si [0,47] ×[0,10] ×[0,10] 0.5 0.5 0.5
Acumulaciones
( e 6.4.3)
No [0,47] ×[0,40] ×[0,40] 0.57 0.85 0.6
Si [0,47] ×[0,30] ×[0,30] 0.55 0.85 0.57
Combinación
( e 6.4.3)
No [0,47] ×[0,20] ×[0,20] 0.52 0.6 0.53
Si [0,47] ×[0,50] ×[0,50] 0.5 0.5 0.5
Dis ancias a la media
( e 6.4.3)
No [0,47] ×[0,40] ×[0,40] 0.5 1 0.5
Si [0,47] ×[0,10] ×[0,10] 0.5 0.5 0.5
Cuad o 6.3: Resumen de esul ados de las di e en es ap oximaciones pa a A g
Ap oximación ¿In e sección? A aque Campeón
T iple aco ación
( e 6.4.3)
No No mal N/A
A g N/A
Si No mal (5.875, 6.875, 6.875)
A g (0, 1.25, 1.25)
Acumulaciones
( e 6.4.3)
No No mal (41.125, 5, 0)
A g (47, 40, 30)
Si No mal (44.0625, 18.75, 13.125)
A g (41.125, 30, 3.75)
Combinación
( e 6.4.3)
No No mal (14.6875, 2.5, 0)
A g (47, 20, 5)
Si No mal (44.0625, 25, 6.25)
A g (44.0625, 25, 0)
Dis ancias a la media
( e 6.4.3)
No No mal (23.5, 17.5, 0)
A g (35.25, 40, 0)
Si No mal (23.5, 6.25, 0)
A g (47, 6.875, 0.625)
Cuad o 6.4: Campeones de las di e en es ap oximaciones pa a A g
102 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.32: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI50
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
Figu a 6.33: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI90
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)

6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 103
Figu a 6.34: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
FDI150 sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Descub imos un esul ado que, a p io i, es so p enden e. Con lo expues o al p in-
cipio de es a sección sob e el a aque FDIx, lo que pod íamos espe a se ía que el
a aque con las peo es p edicciones ue a FDI90 (po su simili ud con espec o al com-
po amien o no mal). Sin emba go, la explo ación de los espacios de búsqueda nos
sugie e que el a aque con las peo es p edicciones es FDI10. Es e es un p oblema con
el que nos amos a encon a en epe idas ocasiones y es debido a lo educido del
ango de alo es de la señal. Escogemos aho a los espacios de búsqueda pa a mos a
los mejo es expe imen os. P ocedemos aho a a elegi los mejo es espacios de búsque-
da dependiendo del a aque, empezando sup imien o la in e sección en e egiones de
acep ación.
Sin in e sección de egiones de acep ación Escogemos, po an o, CF DI10 =
[0,47] ×[0,10] ×[0,10] pa a FDI10, CF DI50 = [0,47] ×[0,50] ×[0,50] pa a FDI50,
CF DI90 = [0,47]×[0,30]×[0,30] pa a FDI90 y CF DI150 = [0,47]×[0,20]×[0,20] pa a
FDI150. Ve esul ados de los expe imen os en B.3.1.
Con in e sección de egiones de acep ación Tomamos CF DI10 = [0,47] ×
[0,10] ×[0,10] pa a FDI10, CF DI50 = [0,47] ×[0,20] ×[0,20] pa a FDI50, CF DI90 =
[0,47] ×[0,10] ×[0,10] pa a FDI90 y CF DI150 = [0,47] ×[0,30] ×[0,30] pa a FDI150.
Ve esul ados de los expe imen os en B.3.1.
104 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Obse ando los esul ados globales ob enidos, no hay muchas so p esas más. El
a aque que mejo se dis ingue es FDI50 y el peo FDI10. Los esul ados en gene al
son buenos, al menos en nues os pa áme os (con es a p opiedad hemos consegui-
do cap a bien el compo amien o del a aque FDIx). Sin emba go, quedan muchos
p oblemas po esol e aún. Es os p oblemas a los que nos en en amos aho a son,
p incipalmen e, dos:
Es a ap oximación ha esul ado en una sob ees imación bas an e impo an e:
Es o es algo que es ácil obse a en la al ísima can idad de alsos posi i os
obse ados en los esul ados y nos indica que hemos cap ado demasiado bien
el compo amien o de FDIx y es necesa io educi el amaño de las egiones
de acep ación. Es o, sin emba go, no es ácil eniendo en cuen a que debemos
segui cap ando el compo amien o de FDIx pa a la mayo can idad de alo es
de x posible.
Las malos esul ados pa a FDIx con x bajo: Algo que podemos comp oba á-
cilmen e iendo los medioc es esul ados de FDI10 y nos indica que el ango
de alo es es demasiado pequeño como pa a se cap ado po la p opiedad. Es-
o pod ía soluciona se aumen ando la esolución de la di isión de celdas del
algo i mo de minado pe o es a no es una solución ac ible po que aumen a ía
exponencialmen e el cos e empo al de dicho algo i mo. Debemos, en onces, in-
en a diseña una p opiedad que cap e el compo amien o de FDIx sin ene
en cuen a (de alguna mane a) el ango de alo es.
Vamos a in en a esol e es os p oblemas con las dos siguien es ap oximaciones
Segunda ap oximación - Rangos ex emos 2.0
La aducción ma emá ica de es a p opiedad es la siguien e:
ϕ:= 100 ·m´ın[0,p1] x0
m´ax[0,p1] x0
≤p2⇔100 ·m´ın[0,p1] x0
m´ax[0,p1] x0
≤p3(6.12)
Figu a 6.35: Ve código STL en A.3.2
Es a p opiedad es nues o p ime in en o de c ea una p opiedad que cap e bien
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 105
el compo amien o de FDIx sin que impo e el alo de x mien as que el ango
de alo es de la señal no sea ele an e. Una mane a de comp oba si el ango de
alo es de una cie a señal es muy ’ex emo’ es calcula la di e encia en e el mínimo
y el máximo. La ap oximación que hemos omado aquí es dis in a, sin emba go.
Con es a ap oximación, que emos e el a io en e el mínimo y el máximo de los
alo es y exp esa lo como po cen aje, con la idea de cap a los alo es FDIx pa a x
bajos si es e po cen aje se ap oxima a 100 (el mínimo es á muy ce ca del máximo) y
cap a FDIx pa a x al os si ese po cen aje se ap oxima a 0 (el mínimo es á muy lejos
del máximo). Explicada es a ap oximación, emos el esul ado de la explo ación de
di e sos in e alos de búsqueda.
Figu a 6.36: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI10
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
106 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.37: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI50
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
Figu a 6.38: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI90
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 107
Figu a 6.39: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
FDI150 sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Aunque la sob ees imación sigue exis iendo, es amos consiguiendo de mane a con-
sis en e un ecall pe ec o y, además, se pe cibe una mejo ía no able pa a los a aques
FDIx con x pequeño. Una ez más, escogemos los espacios mejo es espacios de bús-
queda pa a cada a aque, empezando po sup imi las egiones de acep ación.
Sin in e sección de egiones de acep ación Escogemos, CF DI10 = [0,47] ×
[0,60] ×[0,60] pa a FDI10, CF DI50 = [0,47] ×[0,10] ×[0,10] pa a FDI50, CF DI90 =
[0,47] ×[0,30] ×[0,30] pa a FDI90 y CF DI150 = [0,47] ×[0,40] ×[0,40] pa a FDI150.
Ve esul ados de los expe imen os en B.3.2.
Con in e sección de egiones de acep ación Tomamos CF DI10 = [0,47] ×
[0,60] ×[0,60] pa a FDI10, CF DI50 = [0,47] ×[0,10] ×[0,10] pa a FDI50, CF DI90 =
[0,47] ×[0,20] ×[0,20] pa a FDI90 y CF DI150 = [0,47] ×[0,60] ×[0,60] pa a FDI150.
Ve esul ados de los expe imen os en B.3.2.
Un is azo a los esul ados nos con i ma que la sob ees imación sigue exis iendo y
sigue siendo bas an e acusada. Sin emba go, los esul ados han mejo ado no ablemen-
e con espec o a la ap oximación an e io y ya podemos ob ene un ecall pe ec o
de mane a consis en e, haciendo es a ap oximación muy iable a la ho a de desca -
a el a aque. In en amos aho a educi la sob ees imación mien as man enemos la

108 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
iabilidad de esul ados que ya hemos conseguido.
Te ce a ap oximación - Combinación de las dos an e io es
La aducción ma emá ica de es a p opiedad es la siguien e:
ϕ:= 100 ·m´ın[0,p1] x0
m´ax[0,p1] x0
≤p2⇔Zp1
0
x0≥p3(6.13)
Figu a 6.40: Ve código en A.3.2
Vis as las dos ap oximaciones an e io es, es a no necesi a más explicación. Es-
amos combinando la in o mación ecopilada en las dos ap oximaciones an e io es.
Mos amos los esul ados de la explo ación de los espacios de búsqueda.
Figu a 6.41: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI10
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 109
Figu a 6.42: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI50
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
Figu a 6.43: Es udio de los expe imen os en di e sos espacios de búsqueda pa a FDI90
sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y enién-
dola en cuen a (de echa)
110 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Figu a 6.44: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
FDI150 sin ene en cuen a la in e sección en e egiones de acep ación (izquie da) y
eniéndola en cuen a (de echa)
Los esul ados de la explo ación de los espacios de búsqueda nos mues a que
amos po el buen camino. Es a p opiedad consigue educi no ablemen e la sob ees-
imación obse ada en ap oximaciones an e io es, sob e odo pa a los alo es pequeños
de x. P ocedemos aho a a escoge los mejo es espacios de búsqueda.
Sin in e sección de egiones de acep ación Escogemos, CF DI10 = [0,47] ×
[0,60] ×[0,60] pa a FDI10, CF DI50 = [0,47] ×[0,30] ×[0,30] pa a FDI50, CF DI90 =
[0,47] ×[0,30] ×[0,30] pa a FDI90 y CF DI150 = [0,47] ×[0,20] ×[0,20] pa a FDI150.
Ve esul ados de los expe imen os en B.3.3.
Con in e sección de egiones de acep ación Tomamos CF DI10 = [0,47] ×
[0,30] ×[0,30] pa a FDI10, CF DI50 = [0,47] ×[0,10] ×[0,10] pa a FDI50, CF DI90 =
[0,47] ×[0,10] ×[0,10] pa a FDI90 y CF DI150 = [0,47] ×[0,20] ×[0,20] pa a FDI150.
Ve esul ados de los expe imen os en B.3.3.
Con i mamos los esul ados que ya sospechábamos. Hemos conseguido educi la
sob ees imación de las p opiedades an e io es (sob e odo en los casos pa a FDI10 y
FDI150).
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 111
Resumen de esul ados
Resumimos aho a los esul ados de los mejo es expe imen os de cada ap oximación
que hemos expues o pa a cada uno de los cua o a aques es udiados:
Ap oximación ¿In e sección? Espacio de búsqueda P ecision Recall Accu acy
Acumulaciones ex emas
( e 6.4.4)
No [0,47] ×[0,10] ×[0,10] 1 0.2 0.6
Si [0,47] ×[0,10] ×[0,10] 0.5 1 0.5
Rangos ex emos 2.0
( e 6.4.4)
No [0,47] ×[0,60] ×[0,60] 0.5 1 0.5
Si [0,47] ×[0,60] ×[0,60] 0.5 1 0.5
Combinación
( e 6.4.4)
No [0,47] ×[0,60] ×[0,60] 0.67 1 0.75
Si [0,47] ×[0,30] ×[0,30] 0.9 0.9 0.9
Cuad o 6.9: Tabla de esul ados de FDI10
Ap oximación ¿In e sección? A aque Campeón
Acumulaciones
( e 6.4.4)
No No mal (5.875, 0, 1.875)
FDI10 (8.8125, 6.875, 10)
Si No mal (11.75, 5, 6.25)
FDI10 (11.75, 0.625, 10)
Rangos ex emos 2.0
( e 6.4.4)
No No mal (31.0625, (44.0625, 7.5, 0)
FDI10 (41.125, 37.5, 7.5)
Si No mal (11.75, 7.5, 0)
FDI10 (11.75, 7.5, 3.75)
Combinación
( e 6.4.4)
No No mal (20.5625, 33.75, 0)
FDI10 (0, 60, 0)
Si No mal (17.625, 0, 15)
FDI10 (23.5, 0, 1.875)
Cuad o 6.10: Campeones de las di e en es ap oximaciones pa a FDI10
118 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
acep ación.
Sin in e sección de egiones de acep ación Escogemos CRSA[0,1,0,8] = [0,47] ×
[0,40]×[0,40] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,10]×[0,10] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,60]×[0,60] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.1.
Con in e sección de egiones de acep ación Tomamos CRSA[0,1,0,8] = [0,47] ×
[0,20]×[0,20] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,20]×[0,20] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,10]×[0,10] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.1.
Obse amos un p oblema simila al que imos cuando usamos es a misma ap o-
ximación pa a FDIx y es que obse amos una sob ees imación bas an e impo an e
y que, aunque no sea necesa iamen e una so p esa, c eemos ele an e menciona las
“simila idades” en e ambos a aques. Veamos si ocu e lo mismo con las siguien es
dos ap oximaciones.
Segunda ap oximación - Rangos ex emos 2.0
Mos amos los esul ados del es udio de los espacios de búsqueda:
Figu a 6.49: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[0.1,0.8] sin ene en cuen a la in e sección en e egiones de acep ación (izquie -
da) y eniéndola en cuen a (de echa)

6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 119
Figu a 6.50: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[0.5,3] sin ene en cuen a la in e sección en e egiones de acep ación (izquie da)
y eniéndola en cuen a (de echa)
Figu a 6.51: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[2,3] sin ene en cuen a la in e sección en e egiones de acep ación (izquie -
da) y eniéndola en cuen a (de echa)
Una ez más, obse amos un compo amien o simila al de FDIx aunque más p o-
nunciado en es a ocasión. Hemos conseguido una mejo ía de los esul ados, ob eniendo
un ecall pe ec o de mane a consis en e. Sin emba go, debemos busca una ap oxi-
120 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
mación oda ía que eduzca la sob ees imación. Buscamos aho a los mejo es espacios
de búsqueda, p ime o sin ene en cuen a la in e sección de egiones de acep ación.
Sin in e sección de egiones de acep ación Escogemos CRSA[0,1,0,8] = [0,47] ×
[0,40]×[0,40] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,90]×[0,90] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,30]×[0,30] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.2.
Con in e sección de egiones de acep ación Tomamos CRSA[0,1,0,8] = [0,47] ×
[0,20]×[0,20] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,50]×[0,50] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,40]×[0,40] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.2.
Te ce a ap oximación - Combinación de las dos an e io es
Veamos el es udio de los espacios de búsqueda:
Figu a 6.52: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[0.1,0.8] sin ene en cuen a la in e sección en e egiones de acep ación (izquie -
da) y eniéndola en cuen a (de echa)
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 121
Figu a 6.53: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[0.5,3] sin ene en cuen a la in e sección en e egiones de acep ación (izquie da)
y eniéndola en cuen a (de echa)
Figu a 6.54: Es udio de los expe imen os en di e sos espacios de búsqueda pa a
RSA[2,3] sin ene en cuen a la in e sección en e egiones de acep ación (izquie -
da) y eniéndola en cuen a (de echa)
Aunque no es una mejo a an p onunciada como si lo ue en el caso de FDIx,
emos que es a p opiedad ambién mejo a bas an e los esul ados ob enidos en las
dos ap oximaciones an e io es, man eniendo la consis encia del ecall casi pe ec o
122 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
que eíamos en la ap oximación an e io . P esen amos aho a los mejo es espacios de
búsqueda.
Sin in e sección de egiones de acep ación Escogemos CRSA[0,1,0,8] = [0,47] ×
[0,20]×[0,20] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,10]×[0,10] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,40]×[0,40] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.3.
Con in e sección de egiones de acep ación Tomamos CRSA[0,1,0,8] = [0,47] ×
[0,30]×[0,30] pa a RSA[0.1,0.8], CRSA[0,5,3] = [0,47]×[0,40]×[0,40] pa a RSA[0.5,3]
yCRSA[2,3] = [0,47]×[0,20]×[0,20] pa a RSA[2,3]. Ve esul ados de los expe imen os
en B.4.3.
Resumen de esul ados
O ecemos, una ez más, los esul ados esumidos de los mejo es expe imen os:
Ap oximación ¿In e sección? Espacio de búsqueda P ecision Recall Accu acy
Acumulaciones ex emas
( e 6.4.5)
No [0,47] ×[0,40] ×[0,40] 0.67 0.9 0.73
Si [0,47] ×[0,20] ×[0,20] 0.53 0.95 0.55
Rangos ex emos 2.0
( e 6.4.5)
No [0,47] ×[0,40] ×[0,40] 0.5 1 0.5
Si [0,47] ×[0,20] ×[0,20] 0.5 1 0.5
Combinación
( e 6.4.5)
No [0,47] ×[0,20] ×[0,20] 0.56 0.95 0.6
Si [0,47] ×[0,30] ×[0,30] 0.59 1 0.65
Cuad o 6.17: Tabla de esul ados de RSA[0.1,0.8]
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 123
Ap oximación ¿In e sección? A aque Campeón
Acumulaciones
( e 6.4.5)
No No mal (8.8125, 5, 0)
RSA[0.1,0.8] (20.5625, 40, 15)
Si No mal (8.8125, 10, 20)
RSA[0.1,0.8] (11.75, 5, 20)
Rangos ex emos 2.0
( e 6.4.5)
No No mal (41.125, 35, 5)
RSA[0.1,0.8] (20.5625, 40, 32.5)
Si No mal (32.3125, 8.75, 17.5)
RSA[0.1,0.8] (35.25, 8.75, 20)
Combinación
( e 6.4.5)
No No mal (5.875, 7.5, 6.25)
RSA[0.1,0.8] (0, 20, 2.5)
Si No mal (23.5, 30, 5.625)
RSA[0.1,0.8] (17.625, 30, 5.625)
Cuad o 6.18: Campeones de las di e en es ap oximaciones pa a RSA[0.1,0.8]
Ap oximación ¿In e sección? Espacio de búsqueda P ecision Recall Accu acy
Acumulaciones ex emas
( e 6.4.5)
No [0,47] ×[0,10] ×[0,10] 0.51 1 0.53
Si [0,47] ×[0,20] ×[0,20] 0.51 1 0.53
Rangos ex emos 2.0
( e 6.4.5)
No [0,47] ×[0,30] ×[0,30] 0.53 1 0.55
Si [0,47] ×[0,20] ×[0,20] 0.53 1 0.55
Combinación
( e 6.4.5)
No [0,47] ×[0,30] ×[0,30] 0.59 1 0.65
Si [0,47] ×[0,10] ×[0,10] 0.59 1 0.65
Cuad o 6.19: Tabla de esul ados de RSA[0.5,3]

124 CAPÍTULO 6. DETECCIÓN DE ATAQUES EN SMART GRIDS
Ap oximación ¿In e sección? A aque Campeón
Acumulaciones
( e 6.4.5)
No No mal (0, 7.5, 10)
RSA[0.5,3] (5.875, 5.625, 8.75)
Si No mal (0, 3.75, 20)
RSA[0.5,3] (0, 10, 20)
Rangos ex emos 2.0
( e 6.4.5)
No No mal (26.4375, 16.875, 9.375)
RSA[0.5,3] (26.4375, 30, 15)
Si No mal (29.375, 6.25, 17.5)
RSA[0.5,3] (32.3125, 11.25, 17.5)
Combinación
( e 6.4.5)
No No mal (5.875, 5.625, 30)
RSA[0.5,3] (23.5, 5.625, 9.375)
Si No mal (41.125, 7.5, 7.5)
RSA[0.5,3] (23.5, 7.5, 7.5)
Cuad o 6.20: Campeones de las di e en es ap oximaciones pa a RSA[0.5,3]
Ap oximación ¿In e sección? Espacio de búsqueda P ecision Recall Accu acy
Acumulaciones ex emas
( e 6.4.5)
No [0,47] ×[0,60] ×[0,60] 0.64 0.9 0.7
Si [0,47] ×[0,10] ×[0,10] 0.51 1 0.53
Rangos ex emos 2.0
( e 6.4.5)
No [0,47] ×[0,40] ×[0,40] 0.5 1 0.5
Si [0,47] ×[0,60] ×[0,60] 0.5 1 0.5
Combinación
( e 6.4.5)
No [0,47] ×[0,20] ×[0,20] 0.53 1 0.55
Si [0,47] ×[0,20] ×[0,20] 0.71 1 0.8
Cuad o 6.21: Tabla de esul ados de RSA[2,3]
6.4. FASE DE EXPERIMENTACIÓN: EN PROFUNDIDAD 125
Ap oximación ¿In e sección? A aque Campeón
Acumulaciones
( e 6.4.5)
No No mal (20.5625, 60, 37.5)
RSA[2,3] (20.5625, 15, 3.75)
Si No mal (0, 10, 3.75)
RSA[2,3] (0, 9.375, 6.25)
Rangos ex emos 2.0
( e 6.4.5)
No No mal (47, 35, 5)
RSA[2,3] (29.375, 25, 12.5)
Si No mal (44.0625, 7.5, 37.5)
RSA[2,3] (44.0625, 7.5, 26.25)
Combinación
( e 6.4.5)
No No mal (0, 20, 3.75)
RSA[2,3] (5.875, 8.75, 16.25)
Si No mal (23.5, 0, 20)
RSA[2,3] (32.3125, 12.5, 20)
Cuad o 6.22: Campeones de las di e en es ap oximaciones pa a RSA[2,3]
Dedicamos de nue o es a sección inal a ealiza un análisis de los esul ados
ob enidos y de e mina cuál de ellos es el mejo . Po an o, debemos da una espues a
sa is ac o ia a las siguien es p egun as:
¿Cuál es la mejo ap oximación pa a di e encia el a aque FDIx de un
compo amien o no mal? En gene al, hemos podido obse a cómo el compo -
amien o de RSA[a,b] y el de FDIx es bas an e simila y las ablas inales de esul ados
nos con i man es a hipó esis ( e 6.17, 6.19, 6.21). Po an o, una ez más, es la e -
ce a ap oximación p opues a (la combinación de las dos an e io es) la que escogemos
como mejo ap oximación. En es e caso es la que escogemos dado que puede que de
esul ados lige amen e peo es a los que nos o ecía pa a el caso FDIx pe o es la que
da los mejo es esul ados de mane a uni o me.
¿Es p e e ible qui a o man ene la in e sección en e egiones de acep-
ación? Elegida la p opiedad óp ima, simplemen e debemos echa un is azo a las
ablas de esul ados ob enidas pa a e que, una ez más, es p e e ible ene en cuen a
la in e sección en e egiones de acep ación.
126
Capí ulo 7
Conclusiones y abajo u u o
Pa a acaba es e abajo p esen amos unas e lexiones sob e el cumplimien o de
los obje i os es ablecidos en la in oducción. O ece emos ambién algunas ideas pa a
la con inuidad de es e p oyec o que, en nues a opinión, iene bas an e u u o.
7.1. Conclusiones
Du an e la in oducción ( e 1) es ablecimos como obje i os globales del p oyec o
amplia las p es aciones de Pa e oLib in oduciendo un nue o algo i mo de minado de
da os usando p opiedades STL pa amé icas y usa , en e o as cosas, dicho algo i mo
pa a de ec a compo amien os anómalos y manipulaciones en mediciones de sma
g ids. Además, eníamos como obje i o ex a inco po a las uncionalidades asociadas
al algo i mo de minado de da os a la p e iamen e exis en e in e az de usua io de
Pa e oLib. Vayamos paso po paso examinando el cumplimien o de cada obje i o.
Implemen ación del algo i mo de minado de da os de p opiedades STL pa a-
mé icas ( e 4.1): juzgamos que ha sido un éxi o, ya que es capaz de ex ae
di e sos ipos de compo amien o (algunos ela i amen e complejos) de se ies
empo ales median e el uso de p opiedades STL. Además, median e la imple-
men ación de una e sión pa alela del algo i mo y de una pa ición dinámica
de celdas a analiza , hemos conseguido disminui el iempo de compu ación y,
al mismo iempo, aumen a la p ecisión el análisis.
E aluación del algo i mo usando da os eales pa a la de ección de manipulacio-
127
134 CHAPTER 8. FINAL THOUGHTS AND FUTURE WORK
8.2.2. Imp o e and b oaden he expe imen a ion phase
The expe imen s we ha e pe o med, al hough comp ehensi e, we e used in o de
o e alua e he da a mining algo i hm and build he ounda ions o elabo a e a much
mo e ex ensi e expe imen a ion phase in he u u e. I is du ing his inal sec ion
whe e we p opose ways o imp o e and b oaden ou esul s:
Imp o e he aining phase o ce ain ypes o a acks: I , once again, we ake
a look a he chap e dedica ed o he expe imen a ion phase (see 6), we will
no ice ha he wo s esul s ha e been ob ained while de ec ing he a acks
ela ed o A e age. One o he easons we belie e his has happened is because
he aining phase o he A e age a ack is no as co ec as i should be.
I , ins ead o choosing consecu i e days in he aining phase, we we e able
o pick days om di e en weeks, we would be able o ob ain a much mo e
di e se sample and, as such, he o acle would ha e mo e in o ma ion o make
he necessa y p edic ions.
B oaden he expe imen a ion phase so ha mo e use s (e en mul iple use s)
a e moni o ed: Al hough he expe imen a ion phase wi h use 1143 has g ea ly
con ibu ed o a be e unde s anding o he beha iou s o he di e en a acks,
i would also be c ucial o b oaden his expe imen a ion phase u he in o mo e
use s e en on ISSDA-CER’s da abase (see [10]) so ha we a e able o iden i y
mo e abno mal no mal beha iou s on he use s’ pa ( he example we ha e
p e iously alked abou is ega ding use s who wo k g a eya d shi s).
“Complica ing” he p oblem: Ou expe imen a ion has been done using jus
he da a ega ding use elec ical consump ion. Howe e , his is no he only
discipline whe e ou app oach could be use ul. O he examples include use
gas consump ion egis e ed by sma g ids o , mo e in e es ingly, he ene gy
consump ion by pho o ol aic panels. This las case is in e es ing because i
would in oduce he idea o “libe a ing ene gy” o he sys em, in which he
use eleases ene gy hey do no need in o he ne wo k, gene a ing a “nega i e
measu emen ”.

Apéndice A
Códigos STL
A.1. Swap
A.1.1. P ime a ap oximación - Aco ación simple
1(and
2(<=
3(On (0 p1) (Ix0))
4p2
5)
6(<=
7(On (p1 47) (Ix0))
8p3
9)
10 )
A.1.2. Segunda ap oximación - Aco ación doble
1(->
2(>=
3(On (0 p1) (Ix0))
4p2
5)
6(<=
7(On (p1 47) (Ix0))
8p3
9)
10 )
135
136 APÉNDICE A. CÓDIGOS STL
A.1.3. Te ce a ap oximación - Aco ación doble e inada
1(and
2(->
3(>=
4(On (0 p1) (Ix0))
5p2
6)
7(<=
8(On (p1 47) (Ix0))
9p3
10 )
11 )
12 (->
13 (<=
14 (On (p1 47) (Ix0))
15 p3
16 )
17 (>=
18 (On (0 p1) (Ix0))
19 p2
20 )
21 )
22 )
A.1.4. Cua a ap oximación - Solución pa asi a ia
1(->
2(G(0 p2) (<= (Dx0) 0))
3(>= (On (0 p1) (Ix0)) (On (p1 47) (Ix0)))
4)
A.2. Familia A e age
A.2.1. P ime a ap oximación - T iple aco ación del ango de
alo es
1(G(0 in )
2(and
3(and
4(->
5(<=
6(On (0 47) (- (Max x0) ( Min x0)))
A.2. FAMILIA AVERAGE 137
7p1
8)
9(<=
10 (On (0 47) (- (Max x0) ( Min x0)))
11 p2
12 )
13 )
14 (->
15 (<=
16 (On (0 47) (- (Max x0) ( Min x0)))
17 p2
18 )
19 (<=
20 (On (0 47) (- (Max x0) ( Min x0)))
21 p1
22 )
23 )
24 )
25 (and
26 (->
27 (<=
28 (On (0 47) (- (Max x0) ( Min x0)))
29 p2
30 )
31 (<=
32 (On (0 47) (- (Max x0) ( Min x0)))
33 p3
34 )
35 )
36 (->
37 (<=
38 (On (0 47) (- (Max x0) ( Min x0)))
39 p3
40 )
41 (<=
42 (On (0 47) (- (Max x0) ( Min x0)))
43 p2
44 )
45 )
46 )
47 )
48 )
138 APÉNDICE A. CÓDIGOS STL
A.2.2. Segunda ap oximación - Di e encia de acumulaciones
1(and
2(o
3(<=
4(abs (- (On (0 p1 /2) (Ix0)) (On ( p1 /2 p1 ) (Ix0))))
5p2
6)
7(>=
8(abs (- (On (0 p1 /2) (Ix0)) (On ( p1 /2 p1 ) (Ix0))))
9p3
10 )
11 )
12 (o
13 (no
14 (<=
15 (abs (- (On (0 p1 /2) (Ix0)) (On ( p1 /2 p1 ) (Ix0))))
16 p2
17 )
18 )
19 (no
20 (>=
21 (abs (- (On (0 p1 /2) (Ix0)) (On ( p1 /2 p1 ) (Ix0))))
22 p3
23 )
24 )
25 )
26 )
A.2.3. Te ce a ap oximación - Combinando las dos an e io es
1(->
2(<=
3(abs (- (On (0 p1 /2) (Ix0)) (On ( p1 /2 p1 ) (Ix0))))
4p2
5)
6(<=
7(On (0 p1) (- (Max x0) ( Min x0)))
8p3
9)
10 )
A.2.4. Cua a ap oximación - Dis ancias a la media
A.3. FDIX 139
1(and
2(o
3(G(0 p1)
4(<=
5(/ (abs (- x0 (/ (On (0 p1) (Ix0)) (+ p1 1)))) (On
(0 p1) (- (Max x0) (Min x0))))
6(/ p2 100)
7)
8)
9(G(0 p1)
10 (>=
11 (/ (abs (- x0 (/ (On (0 p1) (Ix0)) (+ p1 1)))) (On
(0 p1) (- (Max x0) (Min x0))))
12 (/ p3 100)
13 )
14 )
15 )
16 (o
17 (no
18 (G(0 p1)
19 (<=
20 (/ (abs (- x0 (/ (On (0 p1) (Ix0)) (+ p1 1))))
(On (0 p1) (- (Max x0) ( Min x0))))
21 (/ p2 100)
22 )
23 )
24 )
25 (no
26 (G(0 p1)
27 (>=
28 (abs (- x0 (/ (On (0 p1) (Ix0)) (+ p1 1))))
29 (/ p3 100)
30 )
31 )
32 )
33 )
34 )
A.3. FDIx
A.3.1. P ime a ap oximación - Acumulaciones ex emas
1(and

140 APÉNDICE A. CÓDIGOS STL
2(->
3(G(0 p1)
4(>=
5(On (0 p1) (Ix0))
6p2
7)
8)
9(G(0 p1)
10 (>=
11 (On (0 p1) (Ix0))
12 p3
13 )
14 )
15 )
16 (->
17 (G(0 p1)
18 (>=
19 (On (0 p1) (Ix0))
20 p3
21 )
22 )
23 (G(0 p1)
24 (>=
25 (On (0 p1) (Ix0))
26 p2
27 )
28 )
29 )
30 )
A.3.2. Segunda ap oximación - Rangos ex emos 2.0
1(and
2(->
3(<=
4(* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
5p2
6)
7(<=
8(* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
9p3
10 )
11 )
12 (->
A.3. FDIX 141
13 (<=
14 (* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
15 p3
16 )
17 (<=
18 (* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
19 p2
20 )
21 )
22 )
Te ce a ap oximación - Combinación de las dos an e io es
1(and
2(->
3(<=
4(* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
5p2
6)
7(>=
8(On (0 p1) (Ix0))
9p3
10 )
11 )
12 (->
13 (>=
14 (On (0 p1) (Ix0))
15 p3
16 )
17 (<=
18 (* (On (0 p1) (/ ( Min x0) (Max x0))) 100)
19 p2
20 )
21 )
22 )
142
Apéndice B
Resul ados de los expe imen os
Dedicamos es e apéndice a los esul ados de los expe imen os ealizados, con el
in de compac a el cue po p incipal de la memo ia lo más posible.
143