aprendizaje por refuerzo multi-nivel para sistemas rrm

102
UNIVERSIDAD POLITÈCNICA DE CATALUÑA TELECOM BCN Ingeniería de Telecomunicaciones Departamento de telemática Aprendizaje por refuerzo multi-nivel para sistemas RRM PROYECTO FINAL DE CARRERA Febrero 2014 Autor Kevin Collados Zamora Director Juan Luis Gorricho Moreno

Upload: others

Post on 18-Jul-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aprendizaje por refuerzo multi-nivel para sistemas RRM

UNIVERSIDAD POLITÈCNICA DE CATALUÑATELECOM BCN

Ingeniería de TelecomunicacionesDepartamento de telemática

Aprendizaje por refuerzomulti-nivel para sistemas RRM

PROYECTO FINAL DE CARRERA

Febrero 2014

Autor

Kevin Collados Zamora

Director

Juan Luis Gorricho Moreno

Page 2: Aprendizaje por refuerzo multi-nivel para sistemas RRM
Page 3: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Abstracto

Este estudio se centra en la problemática de la gestión de recursos en el ámbitode los sistemas RRM (Radio Resource Management) con más de un objetivo a maxi-mizar. En concreto se centra en maximizar simultáneamente la calidad de servicioque se ofrece al usuario y el beneficio adquirido para el operador.

Para tal fin se evaluará el rendimiento de los sistemas RRM basados en la utili-zación de la metodología RL (Reinforcement Learning). Esta evaluación se realizarámediante la modificación y evolución de las características propias del sistema a finde incrementar su rendimiento.

Finalmente se realiza una propuesta de resolución, basándose en un sistema decooperación entre dos agentes. Ambos agentes utilizan la metodología FRL (FuzzyReinforcement Learning). Cada agente se centra en maximizar un objetivo, de formaque la colaboración conjunta entre agentes proporcionará una optimización globaldel sistema.

Page 4: Aprendizaje por refuerzo multi-nivel para sistemas RRM
Page 5: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Índice general

1. Introducción 11.1. Entorno de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2. Sistema EDC 52.1. Sistema inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1. Resultados del sistema . . . . . . . . . . . . . . . . . . . . . . . . 62.2. División de estados y consideración de la calidad de servicio . . . . . . 7

2.2.1. Metodología de división . . . . . . . . . . . . . . . . . . . . . . . . 72.2.2. Incorporación de la calidad de servicio . . . . . . . . . . . . . . . 92.2.3. Resultados del sistema . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3. Sistema distribuido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3.1. Gestión de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3.2. Resultados del sistema . . . . . . . . . . . . . . . . . . . . . . . . 12

2.4. Análisis del sistema EDC . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3. Sistema ARMUN 153.1. Nivel de calidad de servicio . . . . . . . . . . . . . . . . . . . . . . . . . 173.2. Nivel de beneficio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.3. Resultados de un único operador funcionando en el entorno . . . . . . 27

3.3.1. Análisis de los resultados individuales . . . . . . . . . . . . . . . 343.4. Comparativa entre dos operadores . . . . . . . . . . . . . . . . . . . . . 35

3.4.1. Comparativa AA-AA . . . . . . . . . . . . . . . . . . . . . . . . . 363.4.2. Comparativa AA-QQ . . . . . . . . . . . . . . . . . . . . . . . . . 403.4.3. Comparativa QQ-AA . . . . . . . . . . . . . . . . . . . . . . . . . 443.4.4. Comparativa QQ-QQ . . . . . . . . . . . . . . . . . . . . . . . . . 483.4.5. Análisis de los resultados con competición entre operadores . . 52

4. Conclusiones 54

5. Estado del arte 57I. Tipos de Estructuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

I.1. Estructura Centralizada . . . . . . . . . . . . . . . . . . . . . . . 57

Page 6: Aprendizaje por refuerzo multi-nivel para sistemas RRM

I.2. Estructura Distribuida . . . . . . . . . . . . . . . . . . . . . . . . 58II. Aprendizaje por refuerzo . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

II.1. Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60II.2. Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61II.3. Procedimiento Actor-Critic . . . . . . . . . . . . . . . . . . . . . . 62II.4. Procedimiento Q-Learning . . . . . . . . . . . . . . . . . . . . . . 62

III. Lógica difusa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62III.1. Función de membresía . . . . . . . . . . . . . . . . . . . . . . . . 64III.2. Reglas del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 65III.3. Procedimiento general de implementación . . . . . . . . . . . . . 66

IV. Fuzzy reinforcement Learning . . . . . . . . . . . . . . . . . . . . . . . . 67IV.1. Estructura de la lógica difusa . . . . . . . . . . . . . . . . . . . . 67IV.2. Fuzzy Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . 68IV.3. Fuzzy Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . 72IV.4. Procedimiento FAC . . . . . . . . . . . . . . . . . . . . . . . . . . 75IV.5. Procedimiento FQL . . . . . . . . . . . . . . . . . . . . . . . . . . 75

6. Anexos 77I. Pseudo-Código movimiento de los usuarios . . . . . . . . . . . . . . . . 77II. Pseudo-Código Recompensa en el sistema EDC inicial . . . . . . . . . . 79III. Parámetros de simulación: EDC sistema inicial . . . . . . . . . . . . . 80IV. Parámetros de simulación: EDC sistema divisible . . . . . . . . . . . . 82V. Parámetros de simulación: EDC distribuido . . . . . . . . . . . . . . . . 84VI. Parámetros de simulación: ARMUN 1 operador . . . . . . . . . . . . . . 86VII. Parámetros de simulación: ARMUN 2 operadores . . . . . . . . . . . . 88

7. Nomenclatura 90

8. Bibliografía 92I. Publicaciones Realizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Page 7: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Índice de figuras

1.1. Ejemplo de un escenario con interactuación de 9 estaciones . . . . . . . 2

2.1. Esquema estado acción sistema EDC estático . . . . . . . . . . . . . . . 52.2. Esquema de divisionamiento de estados . . . . . . . . . . . . . . . . . . 82.3. Esquema de gestión de las llamadas según la carga . . . . . . . . . . . 12

3.1. Relación agentes-entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2. Relación agentes-entorno utilizando aprendizaje por refuerzo . . . . . 163.3. Categorización del nivel de dropping . . . . . . . . . . . . . . . . . . . . 193.4. Categorización del nivel de blocking . . . . . . . . . . . . . . . . . . . . 193.5. Matriz de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.6. Pesos de las acciones asociadas a las reglas . . . . . . . . . . . . . . . . 203.7. Clasificación de la carga del sistema . . . . . . . . . . . . . . . . . . . . 223.8. Clasificación del vector de decisión: Coverage area . . . . . . . . . . . . 233.9. Clasificación del vector de decisión: Demanda de canal . . . . . . . . . 233.10.Clasificación del vector de decisión: Threshold . . . . . . . . . . . . . . 243.11.Reglas del nivel de beneficio . . . . . . . . . . . . . . . . . . . . . . . . . 253.12.Ejemplos de ventanas deslizantes . . . . . . . . . . . . . . . . . . . . . . 273.13.Entorno del sistema a simular . . . . . . . . . . . . . . . . . . . . . . . . 283.14.Carga de los canales en posesión . . . . . . . . . . . . . . . . . . . . . . 293.15.Adquisición porcentual del número de canales disponibles . . . . . . . 303.16.Threshold promedio de los canales en posesión . . . . . . . . . . . . . . 313.17.Incremento porcentual del área de cobertura . . . . . . . . . . . . . . . 313.18.Porcentaje de Blocking y Dropping . . . . . . . . . . . . . . . . . . . . . 323.19.Calidad de servicio ofrecida al usuario . . . . . . . . . . . . . . . . . . . 333.20.Relación beneficio-coste del operador . . . . . . . . . . . . . . . . . . . . 343.21.Comparativa AA-AA: cobertura . . . . . . . . . . . . . . . . . . . . . . . 373.22.Comparativa AA-AA: porcentaje de canales en posesión . . . . . . . . . 383.23.Comparativa AA-AA: carga promedio del sistema . . . . . . . . . . . . 383.24.Comparativa AA-AA: comparativa threshold . . . . . . . . . . . . . . . 393.25.Comparativa AA-AA: comparativa dropping y blocking . . . . . . . . . 393.26.Comparativa AA-AA: QoS . . . . . . . . . . . . . . . . . . . . . . . . . . 403.27.Comparativa AA-QQ: cobertura . . . . . . . . . . . . . . . . . . . . . . . 41

Page 8: Aprendizaje por refuerzo multi-nivel para sistemas RRM

3.28.Comparativa AA-QQ: porcentaje de canales en posesión . . . . . . . . . 423.29.Comparativa AA-QQ: carga promedio del sistema . . . . . . . . . . . . 423.30.Comparativa AA-QQ: comparativa threshold . . . . . . . . . . . . . . . 433.31.Comparativa AA-QQ: comparativa dropping y blocking . . . . . . . . . 433.32.Comparativa AA-QQ: QoS . . . . . . . . . . . . . . . . . . . . . . . . . . 443.33.Comparativa QQ-AA: cobertura . . . . . . . . . . . . . . . . . . . . . . . 453.34.Comparativa QQ-AA: porcentaje de canales en posesión . . . . . . . . . 463.35.Comparativa QQ-AA: carga promedio del sistema . . . . . . . . . . . . 463.36.Comparativa QQ-AA: comparativa threshold . . . . . . . . . . . . . . . 473.37.Comparativa QQ-AA: comparativa dropping y blocking . . . . . . . . . 473.38.Comparativa QQ-AA: QoS . . . . . . . . . . . . . . . . . . . . . . . . . . 483.39.Comparativa QQ-QQ: cobertura . . . . . . . . . . . . . . . . . . . . . . . 493.40.Comparativa QQ-QQ: porcentaje de canales en posesión . . . . . . . . 503.41.Comparativa QQ-QQ: carga promedio del sistema . . . . . . . . . . . . 503.42.Comparativa QQ-QQ: comparativa threshold . . . . . . . . . . . . . . . 513.43.Comparativa QQ-QQ: comparativa dropping y blocking . . . . . . . . . 513.44.Comparativa QQ-QQ: QoS . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.1. Esquema de una estructura centralizada . . . . . . . . . . . . . . . . . 575.2. Esquema de una estructura distribuida . . . . . . . . . . . . . . . . . . 585.3. Diagrama de un sistema básico de lógica difusa . . . . . . . . . . . . . 635.4. Diagrama función de membresía . . . . . . . . . . . . . . . . . . . . . . 655.5. Ejemplo matriz de regla . . . . . . . . . . . . . . . . . . . . . . . . . . . 665.6. Esquema de lógica difusa utilizado . . . . . . . . . . . . . . . . . . . . . 685.7. Esquema FACL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.8. Esquema FQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Page 9: Aprendizaje por refuerzo multi-nivel para sistemas RRM

1. Introducción

Las redes diseñadas para planificar, configurar, administrar, optimizar y recu-perar los radio-accesos de la son denominadas SON (Self Organisation Networks)[1]. Estos sistemas comprenden todos aquellos algoritmos y metodologías definidaspara realizar una adaptación de los parámetros controlados por los sistemas.

En el caso especifico de los sistemas RRM (Radio Resource Management) se ges-tionan las características de los sistemas inalámbricos. La capacidad de reconfigu-ración de los sistemas RRM proporciona nuevas vías en la manera de utilizar losrecursos disponibles [2], [3]. Mediante el uso de una política más adecuada para laadministración de los recursos puede alcanzarse una mayor eficiencia a partir deldesarrollo de mecanismos más apropiados para afrontar la demanda de los usuariosde la red.

La gestión de los recursos tradicionalmente ha seguido un enfoque estático en co-mo se realiza la distribución y especificación de los recursos disponibles, entre otrosla gestión de los recursos reservados para el traspaso de servicios en curso [4], [5],[6].

La posibilidad de realizar un ajuste automático de estos parámetro supone unaadaptación más rápida y eficiente. Esta capacidad de adaptación del sistema [7] alas necesidades de los usuarios determina, en un grado muy elevado, la habilidaddel operador tanto en responder a la demanda de los usuarios como en la adaptacióna las condiciones del entorno.

Los sistemas existentes se clasifican en dos grupos: el primer grupo consiste enaquellos algoritmos que basa su funcionamiento en el aprendizaje del sistema; elsegundo grupo se centra en optimizar la probabilidad de distribución del escenario.Este estudio propone la utilización de los algoritmos RL1. Estos algoritmos permitenuna adaptación del sistema basada en la experiencia obtenida, y por consiguiente,mecanismos adaptados según la demanda de los usuarios [8].

1Véase apartado II de la sección 5

Page 10: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 2

1.1. Entorno de trabajoEl estudio se desarrolla en un entorno de programación Java. A partir de este

entorno se simula el comportamiento, la operativa y el rendimiento de las estacio-nes consideradas en la simulación, así como el escenario dónde actúan.

El escenario está basado en una cuadrícula. El tamaño de la cuadrícula dependeen relación al número de estaciones a considerar en la simulación. De esta forma elentorno está adaptado al radio de actuación del conjunto de estaciones. En la Fig. 1.1se muestra el efecto producido en un escenario con la participación de un conjuntode 9 estaciones. En la figura también se muestra la definición realizada de los ejesdel escenario. Se observa que parte del área de cobertura, que es cubierta por lasestaciones situadas al margen de la cuadrícula, se encuentra fuera del área dóndeel movimiento de los usuarios es permitido. Deshabilitando estas zonas de conflictose asegura que en cualquier punto un usuario es capaz de establecer una conexióncon al menos una estación.

El entorno a simular es un escenario ideal. Utilizando un escenario ideal se ase-gura que el comportamiento del sistema no se ve influenciado por las característicasdel entorno. Cada estación puede estar bajo el control de más de un operador, com-pitiendo entre ellos por los recursos disponibles en la estación.

Figura 1.1: Ejemplo de un escenario con interactuación de 9 estaciones

El comportamiento de los usuarios también es programado. Los usuarios siguenuna trayectoria lineal, cuya velocidad es aleatoria al inicio de la simulación2. Unavez iniciada la simulación la velocidad se mantiene constante. Los usuarios al llegaral extremo del escenario rebotan, cambiando el sentido de la velocidad respecto al

2Existen dos componentes en la definición de la velocidad, Vx y Vy. Ambas componentes son alea-torias inicialmente.

Page 11: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Introducción 3

eje donde rebotan. Después siguen su trayectoria lineal con su nueva dirección3.

Respecto a la estadística de llamadas, todas las llamadas siguen una distribuciónde Poisson, tanto en la duración de la llamada como en el tiempo entre llamadas.De esta forma se consigue una estadística en las llamadas más parecida a la que seobtendría en un entorno real.

Otro aspecto a tener en consideración es la estación a realizar la conexión. Enlos sistemas RRM implementados, se ha priorizado la conexión del usuario en lasestaciones disponibles más próximas respecto a la posición actual de móvil.

1.2. ObjetivosEntre los principales objetivos de este proyecto se encuentra crear un sistema

capaz de aprender, sin ningún conocimiento previo, el comportamiento más óptimopara un operador. Estos sistemas actúan y aprenden sin la necesidad de interven-ción humana, convirtiéndose en sistemas completamente capaces de auto-ajustarsea las necesidades de la red.

Crear un sistema de aprendizaje que no posea ninguna base de inicial sobreel caso de estudio, sugiere implementar un sistema de aprendizaje por refuerzo.Decidir los parámetros utilizados para la composición de estados o los parámetrosmodificables mediante acciones, determina el comportamiento del sistema comple-tamente. Implementando una estructura diferente se obtendría un comportamientototalmente distinto.

El número de variables a considerar en un entorno de estas características esbastante amplio, aumentando su complejidad si no se consideran algunas de estascaracterísticas de carácter no variable o despreciables para el estudio a realizar. Enconsecuencia, otro objetivo a tener en cuenta son las variables a ser consideradascomo objetivo de aprendizaje por el algoritmo, y cuáles son consideradas constanteso despreciables4.

Para un operador, dos de las características más distintivas para gestionar unsistema RRM son la calidad ofrecida al usuario y el beneficio que obtiene el opera-dor. Por ello el sistema se focalizará en obtener el máximo beneficio para el operadory ofrecer la máxima calidad posible al usuario.

3El código que ejecuta esta rutina esta adjuntada en el apartado I de la sección 64Al implementar un entorno ideal, las características especiales de los escenario reales no se

consideran.

Page 12: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 4

El estudio parte de un sistema EDC (Estados de División de Carga). Este sis-tema se basa en la utilización de un modelo RL. En la sección 2 el sistema EDCes evaluado y modificado para observar y analizar las variaciones producidas en surendimiento. A partir de la observación de las incapacidades del algoritmo en el mo-mento de maximizar los objetivos, la sección 3 propone el uso del sistema ARMUN(Aprendizaje por Refuerzo Multinivel). El sistema ARMUN mediante el uso del al-goritmo FRL (Fuzzy Reinforcement Learning)5 en un sistema multinivel [9] mejoray solventa aquellas características que el sistema EDC no es capaz.

5FRL surge de la combinación de los algoritmos RL y FL (Fuzzy Logic)

Page 13: Aprendizaje por refuerzo multi-nivel para sistemas RRM

2. Sistema EDC

2.1. Sistema inicial

El sistema EDC inicial se basa en una estructura centralizada1. Esta estructuraestá compuesta de un conjunto de estaciones base a cargo de un agente controlador.Este agente implementa un algoritmo RL, Actor-Critic o Q-Learning2. Cada opera-dor dispone de un agente propio, de modo que las estaciones pueden llegar a sercontroladas por múltiples operadores simultáneamente. Cada operador gestionarálos parámetros controlados de la estación acorde a sus necesidades.

Los estados del sistema EDC están referidos al nivel de carga del sistema, dadasu estructuración centralizada los estados son referidos al sistema global, definien-do la carga del sistema como la media de la carga individual de todas las estacionesbajo el control del operador. En la Fig. 2.1 se relatan los estados de carga definidospara el sistema.

Figura 2.1: Esquema estado acción sistema EDC estático

Baja Carga (carga inferior al 33 %): El sistema reduce el precio ofrecido a losusuarios.

1Véase apartado I en la sección 52Ambos algoritmos están formulados en el apartado II de la sección 6

Page 14: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 6

Media Carga (carga entre el 33 % y el 66 %): El sistema escoge de forma alea-toria entre incrementar o reducir el precio.

Alta Carga (carga superior al 66 %): El sistema incrementa el precio ofrecido alos usuarios.

Con independencia del estado del sistema se realizará una modificación en elprecio ofrecido. Reducir el importe en los estados de baja carga del sistema suponeun reclamo para incrementar el número de clientes que solicitan un servicio. Análo-gamente detectando el sistema en alta carga no hay disponibles suficientes recursospara la demanda de los usuarios, lo que permite aumentar el precio ofrecido.

En los usuarios se ha implementado un algoritmo de preferencia aleatorio. Estealgoritmo dota a los usuarios con la capacidad de elegir de forma aleatoria el ope-rador a conectarse. La probabilidad de conexión a un operador decrece proporcionalal incremento de precio, de esta forma las estaciones que ofrecen un precio menortienden a recibir más peticiones de servicios.

Para que el sistema interactúe adecuadamente con el entorno, es indispensabledefinir una correcta función de refuerzo. La función de refuerzo debe incentivar unnivel de carga alto, lo que supondrá un mayor beneficio para el operador. Conside-rando la estructura definida para los estado del sistema, es equivalente a incentivaral sistema a conseguir situarse en el estado de alta carga3.

2.1.1. Resultados del sistemaEl sistema ha sido probado para un entorno ideal donde existen dos estaciones.

Dos operadores compiten entre ellos para dar servicio a los usuarios, uno de losoperadores implementa el algoritmo Actor-Critic , el otro utiliza la metodología Q-Learning . Los resultados obtenidos4 para ambos operadores son mostrados en lasiguiente tabla5:

Q-Learning Actor-CriticCarga del Sistema 36.4 % 29.2 %Blocking 29.8 % 40.4 %Dropping 69.6 % 69.4 %QoS 3.082 3.18

3El código de esta función de recompensa se encuentra en el apartado II de la sección 64En los resultados no se considera ninguna función de beneficio, en su lugar se intenta obtener un

nivel de carga alto.5La parámetros de configuración de la simulación son adjuntados en el apartado III de la sección

6

Page 15: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema EDC 7

A partir de estos resultados se observa que la precisión del sistema es demasiadobaja, resultando en un rendimiento excesivamente bajo del sistema. El rendimien-to del operador utilizando una metodología Q-Learning es ligeramente superior aloperador utilizando algorítmica Actor-Critic. El sistema Q-Learning, en estas condi-ciones, consigue un nivel de carga mayor, y por consiguiente un bloqueo del sistemainferior.

No obstante, aun considerando las diferencias establecidas, ambos operadoresconsiguen un nivel de carga mucho menor de lo esperado. Considerando la defini-ción de recompensa definido, un nivel de carga bajo significa un escaso beneficiopara el operador.

Mantener un nivel de carga más elevado requiere realizar acciones más precisas,esto sugiere una definición de estados del sistema más exhaustiva, suficientes comopara mantener unos estándares de carga elevados.

Por otra parte, al no existir ningún tipo de restricción para asegurar un mínimode calidad, la calidad de servicio global6 es demasiado baja, esto supone que es ne-cesario una incorporación de restricciones respecto a la calidad ofrecida para poderincrementarla.

2.2. División de estados y consideración de la cali-dad de servicio

Partiendo de los resultados obtenidos en el apartado anterior, se realizan modi-ficaciones acorde con las observaciones realizadas. En primera instancia se tratarála precisión de los estados, después se incorporará las restricciones para la mejorade la calidad de servicio.

2.2.1. Metodología de divisiónAumentar la precisión del sistema conlleva definir un mayor número de estados.

A mayor número de estado definidos más precisa es la acción que se puede reali-zar. No obstante, para implementar un sistema RL es necesario un cierto tiempo deprocesado, a mayor número de estados definidos mayor es el tiempo y capacidad deprocesado requerido.

Para poder observar la mejora al realizar una división de estados, el sistemase inicializará con la configuración de estados definida en el apartado anterior. Al

6La calidad de servicio se rige por la ec. 2.2

Page 16: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 8

transcurrir un cierto tiempo, el sistema se divide formando dos nuevos estados decada estado ya existente. Cada nuevo estado dispondrá de la experiencia obtenidapor su estado generador. Al mismo tiempo, cada nuevo estado podrá realizar unaacción diferente a la que realizaba su predecesor. Este esquema de división puedeser observado en la Fig. 2.2.

Aunque la acotación para generar cada estado es diferente a la de su predece-sor, y las acciones disponibles pueden ser distintas, el objetivo global no varía. Estehecho facilita la inserción y cohesión del aprendizaje de la estructura antigua enla nueva. Una vez este conocimiento es adquirido por la nueva estructura, median-te entrenamiento los parámetros de su aprendizaje se van adaptando a la nuevaestructura. En contrapartida, un número muy elevado de estados puede inducir alsistema a oscilar entre dos o más estados similares7, incitando un aprendizaje erró-neo del sistema respecto a la situación real.

Figura 2.2: Esquema de divisionamiento de estados

En una división, el rango de activación de un nuevo estado es la mitad de su pro-genitor, de forma que el conjunto de nuevos estados deben abarcar el mismo rangoque su predecesor.

Un inconveniente de realizar una división de estados, radica en como definir lasacciones a realizar en cada uno de los nuevos estados. Una acción no acorde con lascaracterísticas de su estado puede provocar un desajuste entre sistema y entorno, ypor consiguiente una aprendizaje erróneo.

La metodología de actuación del estado dividido es la misma que su predecesor,por consiguiente, el proceso de decisión de acciones se puede automatizar aplicando

7Estados similares son aquellos que su rango de definición difiere mínimamente

Page 17: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema EDC 9

una acción acorde al estado actual. En el sistema de estudio se automatiza la mo-dificación que sufre el precio referente al estado actual del sistema, el incrementoproporcionado por cada estado es el mostrado en la ec. 2.1.

∆estado = ∆nominal ∗ (estado− num_estados

2num_estados

2

) = ∆nominal ∗ (2 ∗ estado

num_estados− 1) (2.1)

∆estado es la variación producida por estar en el estado actual8. ∆nominal es la va-riación de base, definida por el operador, indicando el incremento o decremento enel precio permitido por el sistema en una sola iteración.

Automatizar las acciones a realizar provoca que una división de estados dema-siado extensa, además de posibilitar estados similares, posibilita la existencia deacciones similares. De modo que dos estados consecutivos pueden producir el mismoefecto sobre el entorno. Por este motivo, y para poder comparar las ventajas que pro-voca una división de estados automatizada, solo se permitirá una división durantela simulación.

2.2.2. Incorporación de la calidad de servicioPara poder realizar una priorización correcta del tipo de servicio sería necesario

incluir como variables de creación de estados los valores de blocking9 y dropping10

del sistema.

Para un sistema RL el hecho de definir tres entradas como variables de crea-ción supondría un número de estados bastante más elevado incrementando así lacomplejidad del algoritmo. Además de analizar la complejidad adicional que suponeincrementar el número de variables de entrada, realizar un aumento en la precisiónrequiere considerar que efecto produciría definir de una forma más exhaustiva cadavariable sobre las otras, y finalmente el impacto que provocaría la nueva definiciónde las acciones sobre el entorno al realizar la división.

La definición de calidad de servicio (QoS) de una estación base se relaciona consu porcentaje de blocking y dropping. Actualmente ningún estándar regula comodeterminar rigurosamente la calidad de servicio para un sistema RRM, por consi-guiente, cada operador puede realizar una interpretación diferente dependiendo delcarácter de su gestión.

8Los estados son numerados incrementando su número a medida que crece la carga, este efectoes indicado en la Fig. 2.2

9Blocking: incapacidad de establecer una llamada de nueva entrada10Dropping: incapacidad de gestionar una llamada traspasada entre estaciones

Page 18: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 10

En las interpretaciones de la QoS usualmente se considera que produce un mayordeterioro la incapacidad de la gestión del traspaso de un servicio entre estacionescomparado con el hecho de no poder establecer un nuevo servicio. Para facilitar elanálisis del conjunto, se considera que todos los operadores y estaciones se rigenbajo la definición descrita en la ec. 2.2 .

QoS = 4 ·Dropping +Blocking (2.2)

Esta interpretación de la función de calidad debe incorporarse en la función derefuerzo. Adicionalmente para facilitar la comparación del sistema se propone queesta función cumpla las siguientes premisas:

Cuando el sistema detecte un óptimo de calidad (QoS = 0), la recompensa ob-tenida es idéntica a la obtenida en el caso del sistema inicial11.

Ofreciendo la mínima calidad posible (PBLOCKING = 1;PDROPPING = 1→ QoS =11), la recompensa es nula.

Siguiendo las premisas anteriores es propuesta la función de recompensa ex-puesta en la ec. 2.312.

revenue = −revenueinicial11

QoS + revenueinicial (2.3)

2.2.3. Resultados del sistemaSe realiza nuevamente el estudio incorporando las modificaciones propuestas

para el sistema. De la simulación se han obtenido los siguientes resultados13:

Q-Learning Actor-CriticCarga del Sistema 85.6 % 87.4 %Blocking 56.5 % 57.4 %Dropping 3.47 % 3.85 %QoS 0.7238 0.728

Aplicando una división de estados conjuntamente con una función de refuerzoconsiderando la calidad de servicio, se logra alcanzar una carga en el sistema mu-cho más elevada, y por ende un mayor beneficio para el operador.

11Esto es posible dada la estructura de la función de calidad, cuán menor su valor numérico mejores la calidad ofrecida.

12La nomenclatura utilizada en la ec. 2.3 es la expuesta en el apartado II de la sección 6.13La parámetros de configuración de la simulación son adjuntados en el apartado IV de la sección

6

Page 19: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema EDC 11

Por otra parte, aunque el ratio de blocking se mantiene en un valor elevado, ob-tener un bajo ratio de dropping supone una gran mejora en términos de calidadcomparado con la obtenida en la estructura anterior. Con este hecho se demuestrala efectividad que produce considerar el parámetro QoS en la función de refuerzo.

Aunque los resultados empiezan a mostrar indicios de un correcto funcionamien-to del sistema, en entornos RRM reales no se puede permitir una carga del sistemasuperior al 80 % de su capacidad. Al sobrepasar el 80 % de la carga empiezan a apa-recer efectos de saturación debidos a la congestión del sistema. Por otra parte, esnecesario considerar la existencia de canales especializados o reservados para cier-tos servicios, de esta forma se pueden realizar estrategias más óptimas mejorandotanto el comportamiento del sistema como la calidad ofrecida al usuario.

Para realizar un análisis de la carga es necesario conocer los niveles en cada esta-ción de forma individual. Utilizando un sistema centralizado no es posible controlarde forma individual la carga del sistema para que no supere un umbral, puesto quelos datos del sistema corresponden a la media del conjunto de estaciones. Para rea-lizar los cambios necesarios en cada una de las estaciones es preciso implementarun sistema distribuido14.

2.3. Sistema distribuido

Se implementará el sistema realizado con anterioridad para la estructura cen-tralizada en cada una de las estaciones. El agente encargado de realizar el algoritmodeja de controlar un conjunto de estaciones simultáneamente, en su lugar controlaúnicamente una estación [10]. La actuación de cada agente continuará basándoseen la modificación del precio ofrecido, puesto que existe un agente en cada una delas estaciones disponibles, cada estación podrá ofrecer un precio diferente aunquesea del mismo operador.

El hecho de que cada estación ofrezca un precio diferente no produce ningúnconflicto. Aun existiendo la preferencia de conexión a estaciones con el menor pre-cio, es más prioritario para el usuario la conexión a estaciones más próximas. Deeste modo el terminal del usuario en el momento de realizar una conexión ordenalas estaciones por orden de proximidad. Una vez decidida la estación más cercana,aplica el algoritmo de preferencia por coste15. En caso de no existir recursos disponi-bles en la estación se repite el proceso decidiendo la siguiente estación más próxima.

14Véase apartado I de la sección 5.15Algoritmo explicado en el apartado 2.1

Page 20: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 12

2.3.1. Gestión de carga

A partir del análisis realizado con anterioridad se ha propuesto un sistema degestión de carga. Esta gestión solo permite utilizar hasta un 80 % de la capacidaddisponible. De la carga útil, un cierto número de canales deben ser reservados paraservicios especiales.

En la Fig. 2.3 se observa gráficamente la gestión de carga realizada en cadauna de las estaciones. Sobrepasar el 60 % de la carga imposibilita establecer nuevosservicios, por tanto estos serán bloqueados. El nivel de carga a partir del cual se em-pieza a hacer distinción entre los diferentes tipos de servicio se denomina threshold(señalado en la Fig. 2.3). Este nivel puede realizarse de manera dinámica para unamejor adaptación al entorno, sin embargo, para realizar una correcta comparaciónentre sistemas se ha mantenido constante al 60 % de la capacidad.

Figura 2.3: Esquema de gestión de las llamadas según la carga

2.3.2. Resultados del sistema

De forma similar a los casos anteriores es comparado el funcionamiento de losalgoritmos en un entorno ideal con dos estaciones en funcionamiento y dos operado-res en cada una de las estaciones. A diferencia de los casos anteriores, en este casose muestran los resultados obtenidos en ambas estaciones16:

16La parámetros de configuración de la simulación son adjuntados en el apartado V de la sección 6

Page 21: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema EDC 13

Q-Learning Actor-Criticestación 1 estación 2 estación 1 estación 2

Carga del Sistema 60.1 % 55.7 % 63 % 62.9 %Blocking 53.64 % 62.5 % 61.5 % 45 %Dropping 7.02 % 6.51 % 6.51 % 6.85 %QoS 0.8172 0.8854 0.8757 0.725

Con el uso del sistema distribuido, se confirma que la calidad de servicio ofreci-da, así como la carga, es diferente en cada una de las estaciones controladas. Si secompara los resultados con el sistema del apartado 2.2 se observa que la carga delsistema ha disminuido aproximadamente un 20 %, un hecho aceptable dado que sucarga útil se ha visto reducida en ese mismo porcentaje.

Respecto a la calidad ofrecida, el ratio de llamadas bloqueadas se mantiene, peroa consecuencia de un ligero aumento en la tasa pérdidas. Mantener constante latasa de bloqueo a costa de aumentar la tasa de pérdidas indica que el sistema noprioriza adecuadamente.

2.4. Análisis del sistema EDCRealizar una correcta optimización de una función depende del número de pa-

rámetros a maximizar en la función. A mayor número de parámetros existentes enuna función, menor es el grado de optimización que se puede conseguir en estosparámetros. A fin de conseguir una priorización más adecuada, y en consecuenciamaximizar más apropiadamente los parámetros relacionados con la función de re-fuerzo, es conveniente dividir los parámetros en varias funciones.

La solución propuesta para dividir los parámetros son dos funciones de refuerzo.Para ello es requerido un sistema de cooperación entre dos agentes [11]. Cada agen-te está a cargo de maximizar uno de los siguientes objetivos: beneficio del operadoro calidad de servicio ofrecida. En la sección 3 se explica en profundidad el funciona-miento del sistema realizado para realizar un sistema de cooperación entre agentes.

Por otra parte, aplicar divisiones de los estados de forma continuada para au-mentar su precisión requiere cada vez más capacidad de procesamiento. Además,cada división realizada precisa un reaprendizaje para la nueva parametrización delsistema aún incorporando el aprendizaje adquirido por la estructura progenitora.Por ello se propone sustituir la metodología de división de estados por el uso delalgoritmo FRL17 [12], [13].

17Véase el apartado IV de la sección 5

Page 22: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 14

Un algoritmo FRL dota al sistema de una precisión mayor sin necesidad de di-vidir los estados, dado que el sistema FRL no requiere de una discretización de lasentradas previa, sino que la propia categorización de las variables de entrada estáconsiderado dentro del algoritmo. El hecho de realizar la clasificación de las varia-bles de entrada como parte del algoritmo, permite a este trabajar con variables decarácter continuo. Trabajar con variables continuas en lugar de variables discretasproporciona un grado de precisión mucho más elevado en el sistema.

Page 23: Aprendizaje por refuerzo multi-nivel para sistemas RRM

3. Sistema ARMUN

La cooperación entre ambos agentes se realiza mediante una estructura multini-vel. En esta estructura ambos agentes están interconectados de forma que solo unode ellos es capaz de realizar modificaciones en el entorno, el agente restante estálimitado a modificar las variables de entrada del primer agente. Permitiendo quesolo un agente sea capaz de actuar sobre el entorno evita que se produzcan modifi-caciones incompatibles o contradictorias y por tanto que no se produzcan desajustenen el entorno.

Una de las motivaciones más importantes para que el sistema sea implementa-do en un entorno real se basa en que el sistema sea rentable para el operador. Poreste motivo, el agente a cargo de realizar las modificaciones en los parámetros delentorno es el agente que su función de refuerzo maximiza el beneficio del operador.De esta forma se pretende que la decisión final tomada asegure la rentabilidad delsistema.

En consecuencia, el agente a cargo de maximizar la calidad no es capaz de mo-dificar el entorno. Sus decisiones son limitadas a modificar las variables de entradadel agente de beneficio.

Similar a la estructura EDC, las variables a considerar en el entorno serán lacarga del sistema, y la calidad. Para una mayor exactitud en el momento de deter-minar la calidad, en lugar de considerar directamente como entrada una definiciónde calidad, se utilizarán como entrada los valores de blocking y dropping de la esta-ción.

El nivel de carga, por sí solo, no tiene relación con la calidad ofrecida, en cambio,es un factor muy importante a tener en cuenta para el cálculo del beneficio. Por to-do ello, el nivel de carga de la estación se incorpora como una variable de entradaen el agente encargado de optimizar el beneficio. Resultando en dos fuentes de in-formación para el agente de beneficio, por una parte, desde el entorno se recibe lainformación de la carga del sistema. Por otro se reciben las decisiones de la capa decalidad. En la Fig. 3.1 se muestra gráficamente la relación entre agentes y entorno.

Page 24: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 16

Figura 3.1: Relación agentes-entorno

El funcionamiento de ambos algoritmos está basado en los modelos de aprendi-zaje por refuerzo, lo que supone que la información recibida como entradas no essuficiente. Los algoritmos de aprendizaje por refuerzo requieren de información adi-cional referente al entorno para computar la función de refuerzo, y así calcular larecompensa obtenida por las acciones tomadas.

Cada agente tiene su propia función de refuerzo, en la que ha de maximizar suobjetivo. Con la interconexión se intentan maximizar ambos objetivos simultánea-mente. En la Fig. 3.2 se observa el esquema de relación agentes-entorno consideran-do que los agentes utilizan algoritmos basados en aprendizaje por refuerzo.

Figura 3.2: Relación agentes-entorno utilizando aprendizaje por refuerzo

En la sección anterior se ha comprobado que la modificación del precio ofrecidoen un estructura distribuida es una acción poco coherente. Realizar esta acción per-mite en estaciones adyacentes del mismo operador ofrecer precios diferentes.

Page 25: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 17

Permitir una modificación del precio ofrecido global implica crear una estructu-ra diferente, la cual tenga en cuenta no solo la relación entre capas sino tambiénla relación entre estaciones [14]. Incorporar una estructura global en el modelo, in-crementaría notablemente la complejidad del sistema y supondría una modificacióncompleta de la estructura realizada hasta ahora, por lo cual no se permitirá a losoperadores la modificación del precio ofrecido en ninguna estación bajo su control.

Puesto que la modificación del precio ofrecido no es permitida, se dota al opera-dor con la capacidad de alterar la potencia de emisión [15]. Mediante la modificaciónde la potencia de emisión se consigue variar el radio de cobertura de la estación ba-jo control. Controlando el alcance de la estación se puede aumentar o disminuir elnúmero de usuarios capaces de acceder a la estación.

Adicionalmente se dota a la estación base con un conjunto de canales1 [16], [17].Estos canales están a disposición de los operadores que actúan en la estación, per-mitiendo su adquisición para uso del operador en caso de necesidad.

Siguiendo la definición realizada en el apartado 2.3.1, existen diferentes tipos deservicio que pueden ser tratados de forma diferente. Esta separación de los canalesen distintos tipos de servicios se realiza mediante un nivel denominado threshold2.A partir de este nivel se indica el porcentaje de canales reservados para cada tipode servicio.

A continuación se procede a explicar los distintos niveles implementados en elsistema, en el apartado 3.1 se explica el funcionamiento del nivel de calidad, en elapartado 3.2 se detalla el funcionamiento del nivel de beneficio. Por último en losapartados 3.3 y 3.4 se detallan los resultados obtenidos por el algoritmo.

3.1. Nivel de calidad de servicioEste nivel recibe la información directamente del entorno, en concreto, recibe co-

mo variables de entrada los ratios de blocking y el dropping de la estación. Estosdatos son procesados por un algoritmo FRL para maximizar la calidad de servicioofrecida al usuario.

Dedicando el nivel exclusivamente a maximizar la calidad ofrecida al usuario,puede incorporarse una función de calidad más exhaustiva que la realizada en elapartado 2.2. La nueva relación puede establecerse según unos márgenes de calidad

1Los canales son los recursos disponibles por la estación base para realizar la comunicación (timeslots, frecuencias asignadas,...)

2Este nivel es mostrado en la Fig. 2.3.

Page 26: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 18

determinados, de forma que el algoritmo es incentivado a cumplir esos objetivos, de-nominados target, mostrados en la ec. 3.1.

fobj = (targetblocking −Blocking) + β ∗ (targetdropping −Dropping). (3.1)

Las entradas no son únicamente tratadas como variables a optimizar en la fun-ción de refuerzo. Estas entradas también son utilizadas como variables para la crea-ción de estados. Ambas entradas son evaluadas siguiendo el esquema de la Fig. 5.6,una vez adquiridas deben ser catalogadas, cada entrada debe ser clasificada de for-ma individual.

La clasificación realizada divide cada parámetro de entrada (blocking y drop-ping) en seis categorías. Las categorizaciones de las entradas son mostradas en lasFigs. 3.4 y 3.3.

Acorde con el modelo definido en la Fig. 5.6, la cual detalla el funcionamientode la lógica difusa, una vez realizada la clasificación de la entradas es necesarioevaluar cada una de las categorías disponibles según una serie de reglas. Las 36posibles categorías resultantes3 son evaluadas siguiendo 5 reglas4.El esquema deevaluación seguido es mostrado en la Fig. 3.5. En esta figura se muestra la proce-dencia de cada una de las categorías resultantes.

El conjunto de reglas esta realizado de modo que observando los valores queobtienen cada una de estas reglas se obtenga una idea de la calidad de servicio quese ofrece al usuario.

3En la Fig. 3.5 las 36 categorías son mostradas en color gris4En la Fig. 3.5 las 5 reglas son mostradas en color negro

Page 27: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 19

Figura 3.3: Categorización del nivel de dropping

Figura 3.4: Categorización del nivel de blocking

Page 28: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 20

Figura 3.5: Matriz de reglas

Una vez realizada la evaluación en las categorías, el resultado es procesado porel algoritmo RL5. Una vez realizado el procesado, se combinan los pesos de las ac-ciones con las reglas obtenidas, consiguiendo un nuevo vector denominado actionelegibility. Este nuevo parámetro determina la elegibilidad de cada regla respecto alas entradas actuales.

Existen tres acciones asociadas a cada parámetro del vector: incrementar o re-ducir handover (HO); incrementar o reducir el área de cobertura (CA) y adquirir oliberar un canal (CH). Cada una de las acciones tiene su propio peso en cada una delas acciones, esta relación entre acciones y reglas se observa en la Fig. 3.6.

Figura 3.6: Pesos de las acciones asociadas a las reglas5Véase apartado IV de la sección 6

Page 29: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 21

Los valores mostrados en la Fig. 3.6 son elegidos experimentalmente, buscadospara forzar al sistema a tomar la mayor diversidad de acciones posibles.

Los valores obtenidos se suman obteniendo un único vector de tres componentes,denominado vector de decisión. Este vector contiene los parámetros finales decidi-dos por la capa de calidad.

El vector de decisión es enviado al siguiente nivel, la etapa de beneficio, forman-do parte de sus parámetros de entrada. De este modo, la decisión obtenida por elagente de calidad es reevaluada por el nivel de beneficio determinando las accionesque puede tomar la capa de beneficio.

3.2. Nivel de beneficioEste nivel maximiza el beneficio para el operador captando la información ne-

cesaria de dos fuentes. La primera fuente de información procede directamente delentorno, el cual proporciona información sobre el nivel de carga del sistema. La otrafuente de información proviene del nivel de calidad de servicio, recibiendo como en-tradas el vector tridimensional de conclusiones que ha realizado.

Centrándose exclusivamente en maximizar el beneficio del operador, permite quela función de refuerzo tenga relación con las variables que aporten más beneficio.Los factores que más destacan en el momento de calcular el beneficio de un ope-rador son: los canales en posesión; carga en el sistema; precio ofrecido, coste demantenimiento por canal y duración de la llamada.

Con el fin de evitar complicaciones adicionales en la función de refuerzo se con-sidera que el usuario no paga un coste adicional proporcional a la duración de lallamada, tampoco existe un coste adicional en el momento de adquirir o liberar uncanal. En la ec. 3.2 se observa la función de refuerzo propuesta a partir de los facto-res nombrados con anterioridad.

fobj =Carga x Precio x Canales en posesion

Duracion de la llamada− Coste x Canales en posesion (3.2)

Siguiendo la metodología explicada en el nivel de calidad, se sigue aplicando elmodelo estructural mostrado en la Fig. 5.6. El primer paso de esta estructura sebasa en categorización de las entradas.

La categorización de la carga del sistema determina el nivel de saturación de laestación base. En la Fig. 3.7 se observa que el nivel de carga se divide en tres nive-les: baja carga, media carga y alta carga.

Page 30: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 22

Figura 3.7: Clasificación de la carga del sistema

Teniendo en consideración las características comentadas en el apartado 2.3.1si la carga del sistema supera el 80 % puede ocasionar un malfuncionamiento de laestación. Por ello se intentará que el nivel de carga se encuentre prioritariamenteen el nivel denominado “media carga”.

Respecto al vector tridimensional proporcionado por el nivel de calidad cada com-ponente se clasifica individualmente. De modo que cada componente del vector pro-porciona sus propias categorías. Para facilitar el futuro uso de estas categorías enlas reglas, el nombre de las categorías es el mismo que la regla destino.

La componente del área de cobertura (CA) del vector de decisión se clasifica endos categorías, mostradas en la Fig. 3.8. Estas categorías son: Reducir área de cober-tura y aumentar el área de cobertura. Entre ambas categorías se determina el gradode modificación necesario del área de cobertura que es requerido según la etapa delnivel de calidad.

Page 31: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 23

Figura 3.8: Clasificación del vector de decisión: Coverage area

La componente adquisición de canales (CH) del vector de decisión es clasificadoen una única categoría: adquirir un canal. En la Fig. 3.9 se observa como esta cate-goría es directamente proporcional al valor de la entrada. Este hecho se debe a quela adquisición de canal no tiene ninguna otra acción substituible.

Figura 3.9: Clasificación del vector de decisión: Demanda de canal

La componente threshold (HO) del vector de decisión es la entrada que más sediversifica. Como es mostrado en la Fig. 3.10 se clasifica en cinco clases: Reducirreserva de canal, incrementar reserva de canal, adquirir un canal, reducir área decobertura y aumentar área de cobertura.

Page 32: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 24

Reducir y aumentar threshold son proporcionales a la entrada de la variable, esteparámetro no es contemplado en el momento de computar el beneficio del operador yson variables necesarias para el control de calidad. No obstante, la reserva de canalindica las necesidades del operador para satisfacer las demandas de los usuarios.Puesto que se incita al sistema a realizar modificaciones de forma continuada enel entorno, si no se requiere de modificaciones del valor del threshold supone unasituación de poca exigencia en el sistema, por consiguiente es posible dar servicio aun mayor número de clientes, lo que supone aumentar la cobertura. En caso de queel valor de este threshold necesite ser aumentado en mayor medida significa que elsistema tiene muchas peticiones de servicios nuevos, aumentando este nivel puedeser insuficiente para satisfacer la demanda, por ello también se intenta adquirir uncanal nuevo. En caso contrario, si este nivel es muy bajo significa que hay muchasllamada provenientes de handover, para disminuir el número de llamadas de han-dover se reduce el área de cobertura activa6 de la estación base.

Figura 3.10: Clasificación del vector de decisión: Threshold

Siguiendo el esquema propuesto en la Fig. 5.6, una vez las entradas han sidoclasificadas se procede a su evaluación mediante reglas.

A partir del esquema de la Fig. 3.11 se observa que el número total de reglasexistentes en el nivel de beneficio son 6. Como se ha mencionado anteriormente,para facilitar la implementación del sistema, el nombre de las categorías coincidecon el de la reglas, y cada regla tendrá una única acción aplicable, siendo la acciónaplicable definida por el nombre de la regla.

6Al reducir el área de cobertura se consigue que el solapamiento entre estaciones sea menor, loque reduce y retrasa el traspaso de servicios entre estaciones.

Page 33: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 25

En cada una de las 6 reglas será añadido el valor de las categorías cuyo nom-bre coincide. Sin embargo, existen categorías complementarías, lo que provoca unaanulación entre ellas. Para conseguir que todas las acciones tengan probabilidad derealizarse, las reglas que tienen solo una categoría no se les aplica la política deanulación, puesto que su ritmo de crecimiento es más lento que las demás reglas.

Figura 3.11: Reglas del nivel de beneficio

Dado que estas reglas tienen asociada una única acción se ha implementado unmecanismo basado en parámetros de control. Este mecanismo desactiva aquellasreglas que su acción no puede realizarse en el entorno. Los parámetros de controlson las siguientes:

Activar regla “incrementar threshold”: Si el valor del threshold es inferior al80 %. Este valor viene dado por el 20 % de carga libre necesario para evitarsaturaciones en el sistema.

Activar regla “disminuir threshold”: Si el valor del threshold es superior a20 %. Se debe disponer de un mínimo número de canales para establecer lla-madas de nuevo servicio.

Activar regla “incrementar área de cobertura”: El área de cobertura es inferiora la distancia entre estaciones.

Page 34: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 26

Activar regla “reducir el área de cobertura”: El área de cobertura es superior al75 % de la distancia entre estaciones. Se debe garantizar un solapamiento en-tre áreas de cobertura de las estaciones para asegurar que en cualquier puntodel escenario un usuario tiene acceso como mínimo a una estación.

Activar regla “adquirir un canal”: Existe un canal disponible en la estación ba-se.

Activar regla “liberar un canal”: El operador dispone de un mínimo de 3 cana-les. El operador debe ofrecer unos servicios mínimos.

El valor mínimo de una regla no puede ser menor que 0: Asegurar que todaslas acciones pueden llegar a realizarse.

Una vez realizada la evaluación y categorización de las entradas mediante lógicadifusa representado por el esquema de la Fig. 3.11, los valores de estas reglas sonprocesados por el algoritmo RL para obtener la acción a ser tomada.

Para evitar realizar sobre acciones en el entorno se implementa un tiempo entreacciones. Este tiempo entre acciones prohíbe al sistema actuar si no se cumple unosciertos requisitos de tiempo definidos por el operador, permitiendo que el algoritmodetermine correctamente que efecto produce sobre el entorno las acciones tomadasy no provoque un mal funcionamiento del sistema debido a estas sobreactuaciones.

Por último, los valores de entrada procedentes del entorno (blocking, dropping ycarga del sistema), por definición, son resultado de realizar una media. El intervalode tiempo considerado para realizar esta media está relacionada con una ventanatemporal deslizante. El tamaño de esta ventana determina la respuesta del sistema.En la Fig. 3.12 se muestra el efecto de la anchura de las ventanas deslizantes sobreuna entrada periódica7.

A partir de la Fig. 3.12 se observa que, para la señal de ejemplo, una ventanade anchura de 100 muestras produce una perdida en la estadística de la señal, ob-teniendo como resultado una señal prácticamente uniforme. Una distribución uni-forme en la entrada induce al sistema a realizar pocas modificaciones. Utilizandouna ventana con anchura de 1 muestra (input) se obtiene una señal cuyos picos sonbastante pronunciados, pudiendo provocar acciones contradictorias, provocado porestar en estados contradictorios, en los instantes que la señal de entrada toma valo-res de picos complementarios, dificultando así el aprendizaje del sistema.

7El valor de la entrada está fijado a modo de ejemplo. Sus valores no están relacionados con eltrabajo.

Page 35: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 27

Dado este efecto, y teniendo en consideración los objetivos del sistema, encontraruna correcta relación anchura de ventana y tiempo entre acciones es fundamentalpara un óptimo funcionamiento del sistema.

Figura 3.12: Ejemplos de ventanas deslizantes

3.3. Resultados de un único operador funcionandoen el entorno

Para probar el funcionamiento del sistema se implementa un entorno con un con-junto de 9 estaciones como se muestra en la Fig. 3.13. Las 9 estaciones están bajoel dominio de un único operador, de esta forma el comportamiento del sistema no seve alterado por la intervención de ningún otro sistema en el entorno, posibilitandoobservar su comportamiento ideal.

Dada la estructura del entorno, se centralizará el estudio del sistema sobre laestación central de la cuadrícula de 9 estaciones diseñada. La estación central es deespecial interés debido a que es la única que no tiene parte de su área de coberturamermada8, y adicionalmente esta estación es la que tiende a sufrir más tránsito,tanto debido por servicios de nueva creación y/o debido a servicios procedentes deotras estaciones base.

8Se merma el área de cobertura para garantizar en todo momento un usuario puede establecerconexión, deshabilitando las áreas de conflicto no se permite el movimiento de usuarios.

Page 36: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 28

Puesto que el entorno es modificado dependiendo de la actuación del sistema glo-bal9 entraña una complicación añadida. El comportamiento de los usuarios varia endependencia de las acciones tomadas por cada estación10. La incierta modificacióndel comportamiento de los usuarios comporta que las estaciones no sufran la mismacarga dependiendo del comportamiento del sistema global. Para realizar una correc-ta comparación, se utilizan simulaciones equivalentes. Se consideran equivalentescuando la estación central sufre aproximadamente la misma demanda de todos lostipos de servicios en todos los sistemas a testar.

Figura 3.13: Entorno del sistema a simular

Para facilitar la notación en los gráficos, a la combinación de algoritmos de apren-dizaje se le denota con dos letras correlativas. La letra situada a la izquierda repre-senta el algoritmo de aprendizaje asociado al nivel de beneficio, la letra situada a laderecha representa el algoritmo asociado al nivel de calidad.

El significado de las letras es el siguiente: la letra “A” corresponde a que el nivelen cuestión utiliza un algoritmo basado en la metodología Actor-Critic; la letra “Q”significa que el nivel en cuestión implementa un algoritmo basado en la metodologíaQ-Learning; por último la letra “N” se refiere a que el nivel asignado implementaun algoritmo basado en una metodología Non-Learning, es decir, de no aprendizaje.

9Sistema global se refiere al conjunto de las 9 estaciones10e.g. El bloqueo de una llamada en una estación provoca una estadística diferente en el entorno y

estaciones a la que produciría la misma llamada siendo aceptada por la estación

Page 37: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 29

La metodología Non-Learning consiste en utilizar la estructura relatada en la Fig.5.6, una vez realizada la evaluación en lugar de disponer de un algoritmo RL paradecidir la acción más conveniente a realizar se selecciona la acción mediante la al-gorítmica ε -Greedy11.

Los parámetros del sistema12 están calibrados para conseguir que los operadoresrequieran los canales disponibles en la estación base obteniendo una carga mediadel 40 % aproximadamente13.

Teniendo en consideración el esquema detallado por la Fig. 3.7, se observa en laFig. 3.14 que todos los sistemas implementados son capaces de mantener un nivelde carga medio. No obstante, se puede determinar que los sistemas que empleanuna metodología Actor-Critic en el nivel de calidad tienden a disminuir ligeramentesu nivel de carga respecto a los otros sistemas, mientras que los que utilizan un al-goritmo Q-Learning en el nivel de calidad mantienen un nivel de carga más elevado.

Figura 3.14: Carga de los canales en posesión

En la Fig. 3.15 se observa el porcentaje de canales adquiridos de la estación base.Los sistemas adquieren prácticamente en su totalidad los canales a su disposición aexcepción de los algoritmos “NN” y “AN”, los cuáles adquieren un número bastante

11Aplicar el algoritmo Non-Learning es equivalente a aplicar un proceso basado únicamente enlógica difusa

12La parámetros de configuración de la simulación son adjuntados en el apartado VI de la sección6

13El valor del 40 % corresponde al valor de pico de la categoría “media carga” correspondiente a laentrada “carga del sistema”

Page 38: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 30

inferior de canales comparado con los otros sistemas.

Figura 3.15: Adquisición porcentual del número de canales disponibles

Parte de los canales obtenidos son dedicados a servicios especiales. La Fig. 3.16muestra el porcentaje de canales dedicado a estos servicios. Todos los sistemas em-piezan con un valor inicial de este threshold del 60 %, su límite viene dado por lasreglas de control. Estas reglas de control imponen que el valor de este umbral nopueda sobrepasar el 80 % ni ser inferior al 20 %.

Cabe destacar que en los sistemas cuyo nivel de calidad opera con la metodologíaNon-Learning, el valor del umbral no es modificado. Indicando que estos sistemasno consideran necesario adaptar su estructura a los diferentes tipos de serviciosexistentes. En el caso de estudio estos servicios son: llamadas de nuevo servicio ytraspasos de servicios entre estaciones (handover). Los algoritmos restantes modifi-can este valor, manteniendo el umbral alrededor del 50 %, suponiendo una reservadel mismo número de canales para los dos tipos de servicio.

Page 39: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 31

Figura 3.16: Threshold promedio de los canales en posesión

En el área de cobertura se permite un máximo aumento del 25 % respecto suradio inicial. En la Fig. 3.17 se representa el incremento porcentual del área de co-bertura. Se observa que los algoritmos que implementan un sistema “Non-learning”en el nivel de calidad no consideran prioritario el aumento del área de cobertura.Los algoritmos restantes permiten un cierto aumento de su área de cobertura, noobstante, los sistema cuyo nivel de calidad implementan un algoritmo Actor-Critictienden a aumentar más este área comparándolo con los sistemas que utilizan lametodología Q-Learning en ese mismo nivel.

Figura 3.17: Incremento porcentual del área de cobertura

Page 40: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 32

Para realizar una medición de la calidad de servicio al usuario se detallan tresparámetros: ratio de blocking, ratio de dropping y QoS mediante la definición de lafunción de refuerzo mostrada en la ec. 3.1.

El ratio de blocking y dropping mostrados conjuntamente en la Fig. 3.18 detallaque los únicos algoritmos que permiten un cierto porcentaje de dropping14 son aque-llos que implementan un algoritmo Actor-Critic en el nivel de calidad. A excepciónde la combinación “‘QA”, esta combinación sobrepasa el limite de blocking dado queno es capaz de gestionar correctamente los recursos, en un intento de mantener lamejor calidad de servicio posible prioriza el bloqueo de llamadas frente a la perdidade llamadas. Los demás algoritmos no permiten que exista dropping en su sistema,incluso a coste de rebasar la tasa de bloqueo objetivo.

Figura 3.18: Porcentaje de Blocking y Dropping

Según la medida de QoS mostrada en la Fig. 3.19, los sistemas que superan losobjetivos de blocking ofrecen una calidad de servicio peor que los sistemas que semantienen fieles a los objetivos.

14En la función de refuerzo del nivel de calidad se penaliza cuádruple el dropping al blocking

Page 41: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 33

Figura 3.19: Calidad de servicio ofrecida al usuario

El beneficio obtenido por el operador es observado en la Fig. 3.20. Similar a lagráfica de QoS es considerado como definición de beneficio la descripción realizadaen la función de refuerzo mostrada en la ec. 3.2.

A partir de estos resultados se comprueba que la combinación “QQ” consigue unmayor beneficio para el operador, debido en gran medida a la adquisición de un nivelde carga mayor con un número de canales ligeramente superior a los otros sistemas.

Puesto que los sistemas adquieren prácticamente la totalidad de los canales dis-ponibles, el coste de mantenimiento de estos es muy similar para todos, provocandoque el beneficio repercuta en la carga del sistema y el número de canales obtenidos.

Page 42: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 34

Figura 3.20: Relación beneficio-coste del operador

3.3.1. Análisis de los resultados individualesDe este apartado se puede determinar que el nivel de calidad de servicio produce

un gran efecto en el comportamiento de la combinación de los algoritmos, aún es-tando limitada su actuación a la modificación de las variables de entrada del nivelde beneficio. Variando el algoritmo implementado en este nivel se puede conseguirun comportamiento totalmente diferente del conjunto.

Si se utiliza un algoritmo basado en una metodología Non-Learning en el nivelde calidad, las acciones finales sobre el sistema no supondrá ningún efecto sobre elthreshold ni sobre el radio de cobertura. Este hecho se debe a que las reglas queproducen estos efectos en el entorno son completamente dependientes de la salidaproporcionada por el nivel de calidad.

Por otra parte se denota que el uso de un algoritmo Actor-Critic en el nivel decalidad produce un efecto de priorización de la calidad ofrecida respecto al benefi-cio del sistema. Los algoritmos que cumplen esta característica no sobrepasan enningún momento los objetivos de blocking y dropping fijados, en contrapartida elbeneficio que obtienen es inferior a los demás algoritmos.

Si en su lugar se implementa un algoritmo Q-Learning en el nivel de calidad, losestándares de calidad no son tan prioritarios como el beneficio, incluso permitiendoexcederse de los objetivos fijados. En contraposición a este efecto, esta metodologíaobtiene en general un beneficio mayor para el operador.

Sin embargo, la alta implicación del nivel de calidad no significa que el agente

Page 43: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 35

de beneficio tenga una baja implicación. De hecho la carga del sistema, mostrada enla Fig. 3.14, es un parámetro controlable únicamente por el nivel de beneficio, estodemuestra la alta implicación de este nivel en la decisión final del sistema.

Por último, cabe destacar las combinaciones “QQ” y “AA”. La combinación “QQ”aunque no se ajusta a los márgenes establecidos en la función de refuerzo del nivelde calidad consigue un beneficio mucho mayor que ninguna otra combinación de al-goritmos. En el caso contrario se encuentra la combinación “AA”, esta combinaciónno consigue un beneficio tan elevado para el operador, en su lugar es el sistema queconsigue ofrecer una mayor calidad final al usuario.

3.4. Comparativa entre dos operadoresEl estudio se sigue centrando sobre la estación central situada en la cuadrícula.

Las causas de la centralización del estudio son las mismas explicadas en el caso in-dividual.

A continuación se muestra el desarrollo de dos operadores actuando en el mismoentorno compitiendo por el control de los canales de las estaciones. Se ha elegido lossistemas compuesto por las combinaciones “AA‘” y “QQ”. El sistema “AA” es escogidopor su capacidad para ofrecer una calidad de servicio menor que el resto de siste-mas. El sistema “QQ”, en cambio, proporciona un mayor beneficio al operador.

En este caso los operadores tendrán diferentes funciones de refuerzo. En un ope-rador, denominado operador 2 (op2 en las gráficas), se rebajan los estándares decalidad, incorporando un objetivo de dropping aumentado a un 5 % y su objetivo deblocking aumentado a un 15 % mientras que el beneficio por usuario15 se mantiene.El otro operador, denominado operador 1 (op1 en las gráficas), mantendrá los obje-tivos de calidad fijados con anterioridad a doblando el beneficio por usuario.

La operativa implementada en este entorno se basa en un ámbito de competición,de modo que los operadores requieran los canales disponibles en la estación base16.Por otra parte, los usuarios son fieles al operador, por consiguiente, no pueden cam-biar de operador durante la simulación, consiguiendo así un nivel de peticiones deservicio similar en ambos operadores.

Para esta configuración, comparar el beneficio entre operadores no es coheren-te dada la diferencia de precios ofrecida entre ellos. Un hecho similar sucede en la

15El beneficio por usuario es el coste que tiene este para establecer la comunicación (precio).16El número mínimo de canales que debe poseer el operador es 3 según las reglas de control ex-

puestas en el apartado 3.2.

Page 44: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 36

calidad de servicio ofrecida, en este caso para realizar una medida de la calidad deservicio ofrecida al usuario se utiliza la definición mostrada por la ec. 3.3. Esta defi-nición de calidad de servicio es equivalente a considerar unos objetivos de blockingy dropping nulos en la ecuación de refuerzo implementada en el nivel de calidad(ec. 3.1). Convirtiéndose en un medición idéntica a la realizada en el apartado 2.2,con lo cual a menor valor de QoS obtenido mejor es la calidad de servicio ofrecida alusuario.

QoS = 4 ·Dropping +Blocking (3.3)

Por último, al realizar la comparación entre dos operadores de forma simultáneaen el mismo entorno no hay necesidad de realizar simulaciones equivalentes.

A continuación se muestran los resultados obtenidos para cada una de las posi-bles combinaciones de los algoritmos17.

3.4.1. Comparativa AA-AAEn este apartado se muestra el comportamiento de dos operadores compitiendo

en un entorno real. Ambos operadores utilizan un algoritmo Actor-Critic tanto en elnivel de beneficio como en el nivel de calidad.

El incremento porcentual sufrido en el área de cobertura es mostrado en la Fig.3.21. El área de cobertura en ambos operadores se ve reducido comparado con elincremento obtenido en el caso individual. Se destaca que el operador 2 permite unincremento del área de cobertura menor que el operador 1, ocasionando una reduc-ción en el número de usuarios que desean establecer una conexión a este operadorcon menos cobertura.

En la Fig. 3.22 se observa la distribución de los canales. Los operadores agotancerca de la totalidad de los canales disponibles. Según la figura se puede considerarque los canales no se distribuyen de forma equitativa entre ambos operadores. Elporcentaje de canales adquiridos por el operador 1, cuyo incremento en el área decobertura es mayor y por consiguiente atiende a más peticiones de los usuarios, esligeramente superior al del otro operador.

Considerando lo mostrado en la Fig. 3.23, los canales a disposición de ambosoperadores obtienen una carga promedio sostenida alrededor del 40 %, un valor es-perado según la calibración realizada en el sistema. Sin embargo, comparando el

17La parámetros de configuración de la simulación son adjuntados en el apartado VII de la sección6

Page 45: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 37

porcentaje de carga obtenida con el caso individual, mostrado en la Fig. 3.14, lacarga promedio en un escenario con dos operadores se ve aumentada en ambos ope-radores. Al no disponer de recursos en la estación base, el operador debe optimizarde una forma más eficiente la carga útil de la estación, provocando un aumento enesta, pero en ningún momento debe exceder el valor de carga objetivo. Los limitesfijados como carga objetivo son definidos por la categoría “‘media carga” referente ala entrada “carga del sistema” en el nivel de beneficio.

La Fig. 3.24 muestra los resultados obtenidos para el valor del umbral denomi-nado threshold. Incluso con un número de canales inferior al obtenido en el estudioindividual, el valor de este umbral no es variado en gran medida. Los sistemasmantienen un reserva para servicios especiales de aproximadamente la mitad delos canales disponibles.

La falta de recursos disponibles provoca un incremento notable en el bloqueo delsistema. La Fig. 3.25 relaciona las estadísticas de los dos operadores. Se observa queel operador 1 no produce perdidas en el sistema a coste de aumentar el bloqueo enel sistema. Este comportamiento se debe a un intento por parte del algoritmo paramantener la máxima calidad posible, la Fig. 3.26 muestra la eficacia de la políticatomada resultando en una calidad mayor a la obtenida para el otro operador.

Figura 3.21: Comparativa AA-AA: cobertura

Page 46: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 38

Figura 3.22: Comparativa AA-AA: porcentaje de canales en posesión

Figura 3.23: Comparativa AA-AA: carga promedio del sistema

Page 47: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 39

Figura 3.24: Comparativa AA-AA: comparativa threshold

Figura 3.25: Comparativa AA-AA: comparativa dropping y blocking

Page 48: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 40

Figura 3.26: Comparativa AA-AA: QoS

3.4.2. Comparativa AA-QQEn este apartado dos operadores están compitiendo en un entorno real por el

control de los canales disponibles en la estación base. El operador con mayor bene-ficio y que debe ofrecer una calidad mayor implementa un algoritmo Actor-Critic ensus dos niveles, el otro operador implementa un algoritmo Q-Learning en ambos desus niveles.

La Fig. 3.27 muestra que el incremento porcentual del área de cobertura en am-bos sistemas se ve reducido de una forma muy acentuada cuando es comparada conel caso de de un único operador en el entorno.

En la Fig. 3.28 se muestra la proporción de canales disponibles en la estaciónbase adquiridos por los operadores. Similar al caso anterior, el operador que cubreun área de cobertura inferior obtiene un número de canales levemente menor al ob-tenido por el otro operador.

La carga del sistema mostrada en la Fig. 3.29 expone que ambos operadoresmantienen un nivel de carga medio. Respecto al caso individual, ambos operadoreshan aumentado la carga del sistema. Similar al caso anterior dada la inexistencia derecursos disponibles en la estación se consigue mejorar la eficiencia de estos canales.

Semejante al caso de un operador individual, el valor del threshold mostrado enla Fig. 3.30 se mantiene en bornes del 50 %. El número de canales reservados paraservicios especiales sigue manteniéndose en la mitad de los canales totales del ope-rador.

Page 49: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 41

Los ratios de bloqueo y pérdidas mostrados en la Fig. 3.31 dan a observar elbajo porcentaje de dropping en ambos operadores, en su defecto los porcentajes debloqueo son más elevados. Dada la estructura de los objetivos fijados para los ope-radores, el operador 1 sobrepasa el objetivo de bloqueo fijado, mientras el operador2 mantiene los márgenes establecidos, puesto que estos son más elevados.

Como resultado, según los valores de calidad mostrados en la Fig.3.32, aun man-teniendo el operador 2 dentro de los objetivos, ambos operadores mantienen unosniveles de calidad muy similares siendo la calidad obtenida levemente mejor en eloperador 1.

Figura 3.27: Comparativa AA-QQ: cobertura

Page 50: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 42

Figura 3.28: Comparativa AA-QQ: porcentaje de canales en posesión

Figura 3.29: Comparativa AA-QQ: carga promedio del sistema

Page 51: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 43

Figura 3.30: Comparativa AA-QQ: comparativa threshold

Figura 3.31: Comparativa AA-QQ: comparativa dropping y blocking

Page 52: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 44

Figura 3.32: Comparativa AA-QQ: QoS

3.4.3. Comparativa QQ-AAEl comportamiento de dos operadores compitiendo por el control de los canales

en la estación base es mostrado en este apartado. El operador cuyos objetivos de ca-lidad son más estrictos implementa una algorítmica Q-Learning en sus dos niveles.El otro operador implementa el algoritmo Actor-Critic en ambos de sus niveles.

El radio de cobertura en ambos operadores se ve reducido. La Fig. 3.33 indica queel radio de cobertura del operador 2 permite un incremento en su área de coberturaligeramente superior a la del operador 1.

En la Fig. 3.34, el operador 2 consigue un número porcentual de canales bastanteinferior al porcentaje adquirido por el operador 1. Parecido a lo sucedido en los apar-tados anteriores, el operador con un área de cobertura mayor obtiene un porcentajesuperior de los canales.

La carga del sistema se mantiene en el rango donde predomina la categoría “‘me-dia carga” de la entrada “carga del sistema”. Similar a los casos anteriores, la cargapromedio del sistema es ligeramente superior a la obtenida en el caso de un opera-dor individual. Este hecho se debe a una optimización más eficiente de la carga delsistema frente a la falta de adquisición de recursos.

El valor del umbral threshold, mostrado en la Fig. 3.36, refleja que este se man-tiene alrededor del valor medio, indicando que la mitad de los canales obtenidos sonreservados para servicios especiales.

Page 53: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 45

Respecto al ratio de blocking i dropping en la Fig. 3.37. En el operador 1 se dispa-ra el número de llamadas bloqueadas mientras que ninguna llamada es perdida. Unporcentaje de llamadas bloqueadas tan alto es debido a la carencia de recursos paraeste operador, en concreto su porcentaje de recursos obtenidos es un 15 % inferioral del otro operador. El operador 2 al adquirir un porcentaje de canales superior suratio de llamadas bloqueadas es menor.

Al no existir dropping en el sistema, la medida de QoS realizada en la Fig. 3.38es aproximadamente el valor del ratio de blocking obtenido. Por las mismas razonesnombradas en el párrafo anterior, la calidad en el operador 1 es inferior a la calidaddel operador 2.

Figura 3.33: Comparativa QQ-AA: cobertura

Page 54: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 46

Figura 3.34: Comparativa QQ-AA: porcentaje de canales en posesión

Figura 3.35: Comparativa QQ-AA: carga promedio del sistema

Page 55: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 47

Figura 3.36: Comparativa QQ-AA: comparativa threshold

Figura 3.37: Comparativa QQ-AA: comparativa dropping y blocking

Page 56: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 48

Figura 3.38: Comparativa QQ-AA: QoS

3.4.4. Comparativa QQ-QQPor último se muestra la comparativa entre dos operadores, ambos operadores

utilizando la algorítmica Q-Learning en sus dos niveles, compitiendo por el controlde los canales disponibles en la estación base.

La Fig. 3.39 muestra el incremento porcentual del área de cobertura. Trabajan-do de forma competitiva entre dos sistemas, ambos implementando la combinación“QQ’,’ permiten un incremento en el área de cobertura muy inferior al obtenido enel caso individual.

La Fig. 3.40 relata la estadística de posesión de canales en ambos operadores.Los operadores han repartido los canales disponibles de modo que puede ser consi-derada como equitativa.

Respecto la carga promedio en el sistema, la Fig. 3.41 relata el establecimientode esta alrededor del 40 %, el cual hace referencia al valor de pico en la categoría“media carga” de la entrada “carga del sistema”. Idéntico a los casos anteriores, lacarga obtenida en los sistemas es ligeramente superior a lo obtenido en el caso delestudio con operadores actuando individualmente en el entorno.

El valor del umbral threshold para los canales en posesión, mostrado en la Fig.3.42 se aproxima a los valores obtenidos en los casos anteriores del 50 %, mante-niendo una reserva para canales específicos de la mitad de los canales en posesión.

Los valores del ratio de blocking y dropping mostrados en la Fig. 3.43 muestran

Page 57: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 49

la poca tolerancia del operador 1 a la perdida de llamadas, aumentando así su ratiode llamadas bloqueadas. Por otra parte, el operador 2 adquiere una mayor toleran-cia a la perdida de llamadas disminuyendo así el número de llamadas bloqueadas.El comportamiento de los operadores en este aspecto concuerda con los objetivos decalidad fijados, teniendo un objetivo de dropping mas elevado provoca una toleran-cia mayor a este.

Observando la gráfica de QoS de la Fig. 3.44, la calidad ofrecida en ambos siste-mas es muy similar, aún siendo su comportamiento respecto a la perdida de llama-das bastante diferente.

Figura 3.39: Comparativa QQ-QQ: cobertura

Page 58: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 50

Figura 3.40: Comparativa QQ-QQ: porcentaje de canales en posesión

Figura 3.41: Comparativa QQ-QQ: carga promedio del sistema

Page 59: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 51

Figura 3.42: Comparativa QQ-QQ: comparativa threshold

Figura 3.43: Comparativa QQ-QQ: comparativa dropping y blocking

Page 60: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 52

Figura 3.44: Comparativa QQ-QQ: QoS

3.4.5. Análisis de los resultados con competición entre opera-dores

Todas las combinaciones posibles han resultado con una disminución del área decobertura por parte de ambos operadores. Así como la conservación de un nivel de“carga medio”. Confirmando que los sistemas realizan una adaptación en relación alentorno.

El efecto de no permitir un incremento del área de cobertura tan grande como elcaso de un solo operador radica en el número de usuarios que pueden acceder a laestación. Reduciendo el número de usuarios con acceso a la estación base adapta lacarga del sistema al número de canales disponibles.

El principal inconveniente de los operadores es la falta de recursos disponiblesen la estación. Teniendo otro operador en el entorno, da una importancia muy sig-nificante a la rapidez y priorización del algoritmo. Un algoritmo con un tiempo derespuesta lento provoca que el operador no tenga disponibles los recursos cuandosean necesarios.

Un efecto similar parece suceder al comparar las combinaciones “AA” y “QQ”. Lacombinación “AA” suele conseguir un mayor número de canales de la estación de es-tudio que los operadores que implementan la combinación “QQ’. Este hecho suponeque la algorítmica “AA” tiende a dar prioridad a la adquisición de un canal. Por oraparte, la carga de los sistemas con algorítmica Q-Learning en ambos niveles consi-guen una carga en el sistema más elevada, priorizando así una optimización de lacarga antes de la adquisición de un canal.

Page 61: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Sistema ARMUN 53

La política de la combinación QQ sigue con una tendencia de conseguir una tasade dropping ínfima a costa de aumentar su tasa de blocking. La combinación AAcontinua con tendencia a permitir una cierta tasa de dropping, intentando mante-nerse dentro de los margenes establecidos por los objetivos definidos en la funciónde refuerzo incorporada en el nivel de calidad. Esta política se ve distorsionadaen algunos casos, especialmente en los casos que los objetivos de calidad son másrestrictivos, por un porcentaje de llamadas bloqueadas aumentado. Este hecho esdebido al intento del algoritmo a minimizar el impacto sobre la calidad final, dadoque el bloqueo de llamadas penaliza menos que la pérdida.

Considerando el efecto explicado en el caso individual, la metodología Q-Learningaplicada en ambos niveles conseguía un beneficio mayor que el resto de sistemas.Valorando la definición de beneficio realizada en la ec. 3.2 se puede inferir, aún sien-do inviable una comparación directa del beneficio entre operadores, que se realizauna maximización del beneficio por parte de los operadores con esta metodología,puesto que en los canales en posesión se adquiere una carga superior al del otrooperador con diferente metodología.

Cabe destacar que en cualquier comparativa realizada entre estos algoritmos elvalor del threshold es mantenido alrededor del 50 % de los canales disponibles. Estoindica que la mitad de los canales son reservados para servicios de handover, mien-tras que la otra mitad son reservados para todo tipo de servicio. Indicando que lapriorización de servicios implementada en el nivel de calidad es realmente conside-rada por el nivel de beneficio.

Dada la calibración realizada en el sistema y la escasez de recursos para satisfa-cer la demanda de los usuarios, la calidad total en el sistema es inferior a la obtenidaen el caso de un sistema operando individualmente en el entorno. Las preferenciasde los algoritmos con los objetivos de calidad idénticos al del caso individual varíanla operativa respecto a bloquear o perder llamadas, ambas combinaciones priorizanel hecho de realizar un mayor bloqueo de las llamadas entrantes ante la pérdida dellamadas, hecho coherente dado que se penaliza de una forma más severa la pérdidade llamadas en la función de refuerzo. En el caso del operador con unos objetivos decalidad más tolerantes, ambos sistemas llegan a permitir un ratio de dropping máselevado, en base a que los objetivos del nivel de calidad son mucho menos restricti-vos.

Page 62: Aprendizaje por refuerzo multi-nivel para sistemas RRM

4. Conclusiones

Los resultados obtenidos en el apartado EDC muestran la ineficiencia de un soloagente en el momento de maximizar un sistema con diversas variables a considerar,resultando en una incapacidad del sistema en el momento de optimizar los paráme-tros.

La propuesta de resolución mediante el sistema ARMUN muestra una forma dedividir los objetivos en diversos agentes cooperando entre ellos. Los resultados ob-tenidos son dependientes de la estructura dispuesta en cada nivel, de modo que elresultado del sistema varía en función de que algoritmo sea implementado en el ni-vel.

Ante un sistema RL o FRL se tiende a considerar que los resultados de los siste-mas han de ser los mismos. La base de este razonamiento proviene del hecho de quelos algoritmos RL y FRL están basados en buscar un máximo de una función objeti-vo. No obstante, en secciones anteriores se ha mencionado que cada función objetivotiene más de un parámetro a maximizar, siendo algunos de estos parámetros propia-mente modificables por el sistema, resultando en una configuración diferente de losparámetros que componen la función dependiendo de la metodología implementada.

En el modelo implementado de cooperación entre agentes, solo el agente de bene-ficio ha sido capacitado para modificar el entorno, mientras que el agente de calidadestá limitado a controlar las variables de entrada del agente de beneficio. Todo ycon esta limitación el agente de calidad consigue que sus decisiones tengan un granefecto sobre la decisión final del sistema1. A partir de los resultados obtenidos en elcaso individual se observa que hay combinaciones de agentes que se centran en pro-porcionar un beneficio elevado mientras que otros se centran en conseguir un mayornivel de calidad. Esto demuestra que existe un elevado grado de cooperación entrealgoritmos, y el efecto de incorporar algoritmos diferentes en los distintos nivelesexistentes.

Cuando diferentes operadores compiten entre ellos por el control de la estación

1En [18] se muestra el rendimiento de un sistema utilizando FL y MCDM (Multi-criteria decisionmaking) para optimizar la calidad de servicio ofrecida al usuario.

Page 63: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Conclusiones 55

base. Sus comportamientos se ven modificados, teniéndose que adaptar a las nue-vas características del entorno. Los resultados de las comparativas entre operadoresproporcionan una idea del grado de conocimiento de los sistemas sobre el entorno. Aldisminuir los recursos disponibles del operador, los operadores reducen su área deinfluencia para poder dar unos ciertos niveles de calidad a los usuarios y continuarobteniendo beneficio para el operador.

El sistema ha sido diseñado sobre un entorno ideal. En un entorno ideal muchosfenómenos no se tienen en consideración, por ejemplo efectos de fading2 o shado-wing3. Estos efectos provocan que el área de cobertura obtenido no coincida con elárea de cobertura que se obtendría en un entorno real. Para comprobar el desarrollode los sistemas en entornos reales, es de interés realizar un estudio de los sistemasen un entorno más real.

Otra vía de desarrollo futuro del proyecto se basa en realizar un tratamiento másexhaustivo de los parámetros a controlar por el operador. Además de las caracterís-ticas contempladas en el estudio existen otros parámetros que pueden ser de interéspara el operador, gestionándolos de una forma eficiente y autónoma.

Por ejemplo, en [17] se produce una optimización del ángulo de inclinación de lasestaciones controladas. Este ángulo se diseña para maximizar la potencia de emi-sión mientras se minimiza la potencia recibida de las estaciones adyacentes a fin dereducir la interferencia intra-celular (ICI). Otro parámetro a considerar es la varia-ción dinámica de la máscara utilizada en el ancho de banda, como se muestra en[11] la relación señal-ruido varía en relación a este parámetro.

La consideración del precio como un factor variable en el sistema ARMUN, simi-lar a lo realizado en sistema EDC, también es un factor a tener en consideración.Para realizar una modificación del precio no es suficiente con la estructura diseñadahasta el momento, para ello es necesario crear una “‘conciencia global” del sistema.

Una conciencia global significa tener en consideración todas las estaciones don-de el operador actúa, de modo que todas o gran parte de las estaciones tienen quepermitir la acción a tomar. Esto implica crear una estructura que no considere úni-camente una estación, sino que considere un conjunto de estaciones trabajando con-juntamente a fin de lograr un objetivo determinado.

Realizar el estudio en un entorno de programación Java ha permitido definirel proyecto sin ninguna base previa. Constituir un proyecto completamente nuevopermite no estar ligado a unos módulos predefinidos por el sistema de simulación,

2Fading: atenuación de la señal producida por la propagación en el medio.3Shadowing: atenuación producida en la señal debido obstrucciones en el trayecto.

Page 64: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 56

pudiendo adaptar íntegramente el sistema y el entorno a los criterios deseados. Noobstante, realizar un proyecto que incluya todas las características a tener en con-sideración tanto del entorno como del algoritmo no permite calcular el tiempo deejecución de este, lo que supone realizar otro estudio diferente para calcular el tiem-po de ejecución del algoritmo.

Page 65: Aprendizaje por refuerzo multi-nivel para sistemas RRM

5. Estado del arte

I. Tipos de Estructuras

La tipología estructural determina el comportamiento del sistema, un sistemacon una correcta parametrización pero una estructuración errónea comportaría unmalfuncionamiento del sistema. Si además la metodología del sistema es de apren-dizaje, la problemática no vendría únicamente dada por el malfuncionamiento delsistema sino que el aprendizaje realizado sería erróneo.

En este trabajo se diferencian dos tipos de estructuras: estructura centralizaday estructura distribuida.

I.1. Estructura Centralizada

La autoridad para la toma de decisiones se concentra en un sólo organismo, detal forma que las estaciones que están bajo su responsabilidad operan de la mismaforma.

Figura 5.1: Esquema de una estructura centralizada

Page 66: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 58

Características de la estructura centralizada

Dado que la toma de decisiones depende de un único organismo, facilita el usode un conjunto de políticas más uniformes.

Poder realizar un conjunto de políticas más uniforme tiende a no diversificartanto la operativa.

Existe poca ambigüedad entre operaciones.

La toma de decisiones se puede ralentizar, debido a las comunicaciones entreestaciones.

I.2. Estructura DistribuidaCada estación tiene autoridad para la toma de decisiones en su estación base, el

hecho de que una exista una estructura organizativa distribuida no implica obliga-toriamente que exista una comunicación activa entre estaciones.

Figura 5.2: Esquema de una estructura distribuida

Características de la estructura distribuida

La toma de decisiones se puede realizar de un forma más rápida, no existencomunicaciones externas que lo ralentizan.

Existe una mejor capacidad de adaptación.

Pueden existir ineficacias de carácter global que individualmente no se obser-van.

La definición de las políticas se debe realizar de forma más exhaustiva, no esobligatorio recibir información exterior en la toma de decisiones.

Page 67: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 59

II. Aprendizaje por refuerzo

El algoritmo de aprendizaje por refuerzo [19] se basa en el aprendizaje a partirde la experiencia obtenida, dirigiéndolo mediante objetivos expresados por un valorde recompensa que es devuelto por el entorno en el momento de realizar una acciónsobre él. Inicialmente se desconoce cuál es la acción más adecuada para el sistema,solo se conoce el efecto que la acción a realizar produce sobre el entorno, de tal for-ma que el conjunto de acciones debe maximizar la recompensa recibida a largo plazo.

El comportamiento del entorno usualmente es desconocido y en ciertos casos pue-de ser estocástico, posibilitando que su función de recompensa obedezca una ciertafunción de probabilidad. No obstante, el comportamiento del entorno sigue siendodesconocido, lo que provoca una fuerte carga de ensayo y error, añadido al hecho quela recompensa puede tener un cierto retardo, produce que no se refleje la bondad dela acción realizada por el sistema hasta una evaluación posterior.

Por otra parte, existe el dilema de exploración-explotación, este dilema trata deevaluar si es más conveniente explorar el entorno para aumentar el conocimientodel problema, empeorando a corto plazo la recompensa obtenida a cambio de conse-guir un mejor conocimiento del problema. En oposición de explotar el conocimientoacumulado intentando maximizar la recompensa hasta el momento dificultando laadquisición de nuevo conocimiento sobre el entorno.

Todo sistema de aprendizaje por refuerzo debe tener en consideración los siguien-tes elementos:

Agente: Sujeto del aprendizaje por refuerzo. Su funcionamiento consiste enobtener información sobre el estado del entorno, realizar acciones sobre este yinterpretar las reacciones que producen.

Entorno: Objeto sobre el que opera el agente, recibe las acciones del agente yevoluciona dependiendo de ellas. Es responsable de generar las recompensasasociadas a las acciones y cambios de estado.

Política: Define el comportamiento del agente. Puede verse como un listadode relaciones entre estados y acciones, estableciendo reglas de asociación entreel estado del entorno y la acción a tomar.

Función de refuerzo: Establece la recompensa a generar en función del esta-do actual del entorno y la acción realizada sobre él. El objetivo del aprendizajepor refuerzo es maximizar la recompensa total obtenida a largo plazo.

Page 68: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 60

Función de evaluación: Refleja una estimación de la recompensa que se vaa recibir partiendo de un cierto estado y siguiendo cierta política, permitiendoescoger la acción a realizar (aquella que conduce a una recompensa mayor).Construir esta función es el objetivo de este tipo de algoritmos.

II.1. Actor-CriticEste método dispone de dos memorias separadas en la estructura, de esta forma

se consigue separar la política a seguir de la función de evaluación.

La estructura que se encarga de la política es conocida como actuador, seleccio-nando las acciones a aplicar. La estructura que se encarga de estimar los valores dela función de evaluación es conocido como crítico, criticando las decisiones tomadaspor el actuador.

Después de cada acción, el agente crítico evalúa el nuevo estado y realiza unbalance de la situación, esta evaluación se realiza mediante la metodología de pre-dicción TD1 calculando el error según la ecuación:

δt = rt+1 + γVt(st+1)− Vt(st) (5.1)

Donde V (st)2 es la función de evaluación, rt+1 el resultado de la función de refuer-

zo, γ es una variable definida por el usuario que indica el grado de implicación delestado futuro dentro de la función de evaluación, la actualización de esta función sedefine:

Vt+1(st) = Vt(st) + αδtet(st) (5.2)

Dónde el parámetro α es elegido por el usuario e indica el grado de implicaciónde la función e(s, a) y del error, δt, en la función de evaluación.

Si el error definido en la ec. 5.1 es positivo la acción ha sido beneficiosa, conlo cual se fortalecerá la probabilidad de ejecutarla en un futuro, en caso contrario,si es negativo significa que esta acción ha sido contraproducente, entonces la pro-babilidad de realizar esta acción en un futuro disminuirá. Se puede evaluar estaprobabilidad p(st, at) 3de elección mediante:

pt+1(st, at) = pt(st, at) + βδtet(st, at) (5.3)

Siendo β una variable definida por el usuario, mediante este valor se puede adap-tar el grado de implicación de la función error sobre la probabilidad de escoger una

1La metodología de aprendizaje TD o time difference consiste en predecir un valor que depende devalores futuros de la función de estudio.

2St hace referencia al estado actual del sistema en el instante t.3at es la acción tomada, el conjunto (st, at) hace referencia a la acción tomada at en el estado st

Page 69: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 61

acción en un estado concreto.

Por otra parte es necesario tener en cuenta la elegibilidad de una acción dentrode un estado, e(s, a), de esta forma se obtiene un registro temporal del suceso delevento, mediante la siguiente estructura:

et+1(s, a) =

{γλet(s, a) + γλ s = st, a = at

γλet(s, a) s 6= st, a 6= at(5.4)

Donde γ y λ son parámetros elegidos por el usuario que indican el grado de deteriorode la elegibilidad por cada iteración realizada.

II.2. Q-LearningSe basa en utilizar las cadenas de Markov como base para definir estados, de los

cuales se deduce una función de acción-valor (función de evaluación), que intentaoptimizar la utilidad de coger la acción.

Al igual que el caso del algoritmo actor-critic, se realiza un balance de la situaciónmediante el cálculo del TD error:

δt = rt+1 + γQt(st+1, a∗t+1)−Qt(st, at) (5.5)

Similar al algoritmo anterior, γ determina el grado de implicación del estado fu-turo, pero en este caso, se tiene en cuenta la acción que maximizará la función deevaluación, a∗t+1, en el estado de la siguiente iteración.

En este caso se observa que la función de evaluación, Q(st, at), depende tanto delestado del entorno como de la acción tomada, a diferencia de la función de evalua-ción del caso actor-critic, V (st), que solamente tiene en consideración el estado delsistema, permitiendo al algoritmo Q-Learning manejar problemáticas relacionadascon las transiciones estocásticas y recompensas sin necesidad de adaptaciones. Laactualización de la función de evaluación se actualiza de forma similar al del algo-ritmo Actor-Critic.

Qt+1(st, at) = Qt(st, at) + αδtet(st, at) (5.6)

Como en el algoritmo anterior α es una variable escogida por el usuario. Esteparámetro determina el grado de implicación del error y la elegibilidad en el cálculodel nuevo valor.

El hecho de que la función de evaluación tenga los parámetros acción, at, y es-tado, st, indica que ya incorpora en sí misma una valoración de la probabilidad deescoger una acción en un estado, con lo cual no es necesario calcular una función de

Page 70: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 62

probabilidad adicional como se realiza en el caso del algoritmo Actor-Critic.

Sin embargo, esta función no tiene en cuenta la elegibilidad de una acción den-tro del estado, por eso se utiliza la función adicional e(s, a), realizando el registrotemporal del suceso del evento, mediante la siguiente estructura:

et+1(s, a) =

{γλet(s, a) + γλ s = st, a = at

γλet(s, a) s 6= st, a 6= at(5.7)

Los valores de γ y λ son elegidos por el usuario, y al igual que en el algoritmoanterior, indican el deterioro de la elegibilidad en cada iteración.

II.3. Procedimiento Actor-Critic1. Calcular el error para el estado actual y recompensa obtenida (ec. 5.1 )

2. Actualizar la función de evaluación (ec. 5.2)

3. Actualizar la elegibilidad según el estado (ec. 5.4)

4. Calcular la nueva probabilidad de elección (ec. 5.3)

II.4. Procedimiento Q-Learning1. Calcular el error para el estado actual y recompensa obtenida (ec. 5.5)

2. Actualizar la función de evaluación (ec. 5.6)

3. Actualizar la elegibilidad según el estado (ec. 5.7)

III. Lógica difusaLa lógica difusa o fuzzy logic (FL) [20] es un sistema de control que proporciona

una manera simple de llegar a una conclusión precisa basado en una informaciónpoco precisa, ruidosa o ambigua. Utiliza un lenguaje impreciso pero muy descriptivopara analizar la información semejante al de la mente humana.

Sus características más distintivas son:

Page 71: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 63

Es inherentemente robusto por su funcionamiento con entradas poco precisasy/o ruidosa.

El procesado de la salida puede ser una función sencilla a pesar de tener unrango de variación amplio de las entradas.

Dado que el controlador de la lógica utiliza reglas definidas por el usuario, pue-den ser modificadas de forma sencilla para mejorar o modificar el sistema.

No está limitado en número de entradas y salidas definidas, ni es necesariouna correspondencia entre el número de entradas y de salidas.

No necesita medir o calcular la variación de los parámetros para ser imple-mentado.

La formulación de las reglas define la complejidad del sistema, se suele frag-mentar el sistema en espacios pequeños para obtener controladores lógicosmás pequeños.

Puede controlar sistemas no lineales, difíciles o imposibles de modelar mate-máticamente.

Procedimiento general de la lógica difusa:

Figura 5.3: Diagrama de un sistema básico de lógica difusa

El elemento denominado Control analiza, clasifica y evalúa las entradas pararealizar la acción más correspondiente sobre el entorno respecto a las entradas ac-tuales. dependiendo de la programación de una acción puede ser aplicada al mismotiempo.

Page 72: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 64

El control suele trabajar con dos niveles de programación, el primero divide cadaentrada en categorías según su nivel de pertenencia determinado por una funciónde membresía. El segundo evalúa las categorías realizadas según una estructuradefinida por el usuario.

Puede existir una comunicación entre el Control y el entorno, considerando lainformación recibida respecto al entorno en el momento de generar las acciones. Noobstante, esta comunicación no es imprescindible en este tipo de sistemas.

III.1. Función de membresíaLa función de membresía es la representación de la magnitud de participación

de cada entrada respecto a unas categorías definidas por el usuario, asociando unpeso a cada entrada procesada para finalmente determinar la respuesta de salida.

Las reglas utilizan los valores de membresía como factores determinantes en lainfluencia de los conjuntos de salida4 (o categorías) para decidir la conclusión final.Una vez las categorías son inferidas, escaladas y combinadas son transformadas ensalidas nítidas capaces de modificar y guiar al sistema.

Es común que la forma de estas funciones sea triangular, no obstante, no tienenuna forma definida y puede ser cualquier tipo de función, no obstante si la funciónes muy compleja entonces requerirá una capacidad computacional adicional parahacer este cálculo. Para definir una correcta función de membresía se han de consi-derar las siguientes características:

Altura: Indica el grado máximo de membresía respecto de una entrada. Nor-malmente es normalizada.

Anchura: Indica el rango de pertenencia de los valores de la entrada en unacategoría.

Solape: Rango de valores de una entrada pertenecientes a dos o más catego-rías simultáneamente.

Centro: Se considera el centro el punto o puntos de la función donde una ca-tegoría alcanza su mayor valor.

Guarda: Fija un valor a una categoría para aquellos valores de entrada queno están definidos con una función de membresía.

4Los conjuntos de salida es la clasificación de las entradas en una serie de categorías definidaspor el usuario

Page 73: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 65

En la Fig. 5.4 se observa una representación de una función de membresía parauna sola entrada con funciones triangulares definiendo tres categorías (denomina-das A,B y C) dónde se señalan las características de esta función.

En ocasiones se define la función de membresía gráficamente y se implementaúnicamente aplicando reglas. Esto sucede cuando el número de variables de entradaes bajo y se pueden evaluar de una forma sencilla.

Figura 5.4: Diagrama función de membresía

III.2. Reglas del sistemaLas reglas son definiciones lógicas de cómo actuar con el conjunto de categorías

activas respecto a las entradas actuales, la actuación del sistema vendrá determi-nada por la definición de estas reglas y por el valor obtenido en la función de mem-bresía. Para más de una variable se puede utilizar una matriz de reglas que indicala interacción entre entradas.

La matriz de reglas normalmente tiene un número de columnas y filas impa-res para acomodar una región de sistema estable5. Esto puede no ser necesario tanpronto como las funciones de cada lado se solapen de alguna manera y se tengan

5Sistema estable es aquel que no es necesario modificar ningún parámetro del sistema dado quela entradas recibidas son aceptables

Page 74: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 66

continuas dudas de si la salida obtenida es aceptable. La falta de la región de siste-ma estable provoca que el sistema continuamente busque por esta región.

También es posible tener un número diferente de filas que de columnas, el nú-mero máximo de reglas posibles es simplemente el producto del número de filas ycolumnas. No obstante, la definición de todas estas reglas puede ser innecesaria da-do que algunas de ellas pueden no suceder en la práctica. El principal objetivo deeste mapa de construcción es relacionar todas las posibles entradas mientras el sis-tema se mantiene bajo control.

Un posible ejemplo de sistema sería el caso de dos entradas de dos sistemas dife-rentes, en los cuales su función de membresía sea idéntica a la mostrada en la Fig.5.4, con esta estructura se puede definir la matriz de reglas mostrada en la Fig. 5.5,en el cuál cada combinación de entradas resulta en una acción diferente.

En el supuesto de que exista un solapamiento entre categorías, y por tanto diver-sas acciones estén activas simultáneamente la actuación del sistema dependerá dela estructuración de las reglas, dada la definición realizada en la Fig. 5.5 se realiza-rían todas las acciones que fueran activadas por sus respectivas categorías.

Figura 5.5: Ejemplo matriz de regla

III.3. Procedimiento general de implementación1. Definir los objetivos de control y el criterio de actuación y clasificación.

2. Determinar la relación entrada/salida y seleccionar un mínimo numero de va-riables para la entrada.

3. Crear las funciones de membresía que define la relación entrada/salida utili-zadas en las reglas.

Page 75: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 67

4. Programar las reglas.

5. Probar el sistema, evaluar los resultados y modificar la parametrización acor-de a las necesidades.

IV. Fuzzy reinforcement LearningLa lógica difusa combinada con el aprendizaje por refuerzo o Fuzzy Reinforce-

ment Learning [21] permite a los algoritmos de aprendizaje por refuerzo el manejode entradas como variables continuas. Además permite trabajar con gran variedadde estados tanto respecto a la entrada como respecto a la salida, proporcionandouna dimensionalidad elevada al sistema lo que permite implementar un sistema degeneración continua de acciones. Proporcionando así una adaptación rápida a lascondiciones del entorno.

IV.1. Estructura de la lógica difusaEn el apartado III se explica el funcionamiento general de un sistema basado el

lógica difusa. Seguidamente se profundiza en el sistema FL utilizado para su poste-rior unión con los algoritmos de aprendizaje.

Siguiendo la estructura de la Fig. 5.6, la primera etapa denominada input layer,donde son definidas las entradas del sistema xi. Como se ha nombrado en la secciónanterior no existe un número máximo ni un número mínimo de entradas en el sis-tema.

La segunda etapa es la de difusión, fuzzyfication layer, en la cual se realiza laclasificación de las entradas según el patrón definido por el usuario, cada categoríaLi obtendrá un valor µi dependiendo del valor de la entrada y la función de mem-bresía aplicada.

La última etapa es la de evaluación, rule evaluation layer, en esta etapa cadavalor µi calculado en la etapa anterior es procesado según una serie de reglas defi-nidas por el usuario, cada regla tendrá su propio valor o peso αRi

el cual se obtieneaplicando multiplicaciones sucesivas de los valores obtenidos en la etapa de difusiónµi tal como se muestra en la ec. 5.8.

αRi= Πn

j=1 µLij(xj) (5.8)

Page 76: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 68

Por tanto para cada conjunto de entradas Xt se activarán una serie de reglasdefinidas por el conjunto A(Xt), y por consiguiente cada una de las reglas activastendrá asociado un peso αRi

, formando el conjunto de peso de las reglas activasαRi

(Xt)

Figura 5.6: Esquema de lógica difusa utilizado

IV.2. Fuzzy Actor-CriticLa estructura del sistema Actor-Critic6 conjuntamente con lógica difusa o fuzzy

actor-critic (FAC), tiene las siguientes características básicas:

Cada regla,Ri, está asociada a una serie de acciones denotadas por el vector U i

Cada acción asociada a cada regla tiene asociado un factor de calidad (un peso)wi que será ajustado mediante las fases de aprendizaje del sistema.

Cada regla tiene una parte de conclusión oi (vector de un único valor) que seráajustado por el critico para estimar el valor de la función.

6La estructura del algoritmo Actor -Critic esta explicada en el apartado II.3

Page 77: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 69

La estructura general del sistema sigue el esquema dibujado en la Fig. 5.7.

En conjunto con la lógica difusa, el cálculo de la función de evaluación del al-goritmo actor-Critic es modificado, provocando una independencia del valor nuevorespecto al antiguo. En su lugar se consideran las reglas activadas por la entradaactual y sus pesos tal y como se indica en la ec. 5.9.

Vt(Xt) =ΣRi∈A(Xi) αRi

(Xt)oit

ΣRi∈A(Xi) αRi(Xt)

(5.9)

Esta ecuación se puede simplificar mediante notación vectorial, definiendo el vec-tor Φ, mostrado en la ec. 5.10, cuyos valores son los pesos de la regla normalizados.

Φt(Xt) =αRi

(Xt)

ΣRi∈A(Xi) αRi(Xt)

(5.10)

Mediante notación vectorial se puede redefinir el cálculo de la función de evalua-ción aplicando un producto matricial mostrado en la ec. 5.11.

Vt(Xt) = otΦt(Xt)T (5.11)

Así mismo, es necesario realizar un balance de la situación después de cada ac-ción, el modo de funcionamiento del algoritmo Actor-Critic indica que esta evalua-ción se realice utilizando la metodología TD error mostrado en la ec 5.12.

εt+1 = rt+1 + γVt(Xt+1) + Vt(Xt) 0 ≤ γ ≤ 1 (5.12)

γ es el factor de descuento definido por el usuario que indica el grado de implica-ción del estado en el error.

El vector de conclusión, ot, necesita ser actualizado en cada iteración. En estevector se almacenan las reglas que provocan un mayor beneficio para el sistema, detal forma que al calcular el nuevo valor de la función de evaluación se considere laevolución del sistema.

oit+1 = oit + αεt+1∂Vt(Xt)

∂oit→ ot+1 = ot + αεt+1Φt 0 < α < 1 (5.13)

Para una actualización mas general del método es necesario actualizarlo median-te trazas de elegibilidad acumulativas, ect , de esta forma se memorizan las reglas quehan sido utilizadas.

ot+1 = ot + αεt+1ect 0 < α < 1 (5.14)

Page 78: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 70

Donde ect denota la elegibilidad del agente critico, como sucede con el algoritmoActor-Critic en solitario, esta elegibilidad es degradada según unos parámetros ele-gidos por el usuario, λc y γ. La elegibilidad solo se ve aumentada si sus reglas sonactivadas, tal y como se muestra en la ec 5.15.

ect = Φt + γλcect−1 (5.15)

Para prevenir al agente critico de oscilaciones en el aprendizaje y también esca-par de soluciones locales óptimas, el ratio de aprendizaje del crítico, α, debe variaren el tiempo.

αio = αo

αit+1 =

αit +Ka δit−1δ

it > 0

αit(1− φ) δit−1δit < 0 0 < φ < 1

αit δit−1δit = 0

Donde δit = εt+1ect(i)

δit = ϕδit−1 + (1− ϕ)δit 0 < ϕ < 1

(5.16)

En la ecuación 5.16 δt tiene en consideración su elegibilidad así como si la acciónha sido beneficiosa. Por otra parte δt considera su variación respecto su valor ante-rior, la participación del nuevo valor respecto del antiguo valor de δt en el cálculode δt queda totalmente determinado por el parámetro ϕ, el cuál es definido por elusuario.

Si el producto δitδit es positivo, entonces la acción realizada es beneficiosa para elsistema, y en consecuencia se incentiva el aprendizaje incrementando su ratio deaprendizaje Ka cuyo valor es definido por el usuario. Si el producto es negativo estaacción es perjudicial para el sistema, y por tanto el valor de su ratio de aprendizajedisminuye proporcional a un parámetro φ el cual también está definido por el usua-rio. En caso de que su producto sea nulo el ratio de aprendizaje no se modifica.

Esta variación de los ratios de aprendizaje produce una actualización en el vectorde conclusiones tal y como muestra la ec. 5.17.

ot+1 = ot + αtεt+1ecT

t ∀Ri (5.17)

La selección de la acción más óptima se realiza por una metodología de selecciónε-Greedy, en primer lugar es necesario definir qué acciones son las más aptas paraser realizadas.

U it = U i(k) | EE(U i(k)) = max

a∈U iEE(a)

Donde EE(a) = wit +θ

ent(a)θ > 0

(5.18)

Page 79: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 71

θ es un coeficiente positivo definido para la exploración directa, y nt(a)memorizael número de veces que una acción ha sido tomada hasta el instante t.

La función EE(a) proporciona el factor de peso de exploración/explotación con-sistiendo en una parte de explotación wit(a), y una parte de exploración directa θ

ent(a)

para cada acción particular a. La segunda parte se denomina exploración directadado que realiza una exploración mediante el conocimiento obtenido por la expe-riencia y las experiencias pasadas, encapsulando de este modo esas acciones que sehan utilizado de forma más asidua, obteniendo un valor de exploración mucho másbajo dada la relación que exponencial que posee respecto a nt. Este valor es añadidoa la calidad de la acción wit que porta la política actual aprendida, de manera que elvalor que va generando la función EE se convierte en máximo para aquellas accio-nes que tienen un peso pequeño.

El coeficiente de exploración θ usualmente es un valor grande al inicio de la si-mulación, y posteriormente se hace pequeño, realizando más exploración estratégicaen el inicio para después explotar la exploración realizada. Aunque a veces θ tieneun valor aleatorio para realizar una exploración no direccionada.

Después de tener seleccionados todos los candidatos más aptos, se utiliza el sis-tema de selección ε-Greddy determinado por:

Ut(Xt) = U i∗

t | EE(U i∗

t )αR∗i(Xt) = maxRi∈A(Xt){EE(U i

tαRi(Xt)} (5.19)

De esta forma de todas las acciones seleccionadas como aptas, se elige como ac-ción a realizar aquella que venga determinada por las variables de entrada del sis-tema.

Dado que el peso de la acción representa los valores de la calidad de la acción,debe existir un ajuste similar al que se ha realizado en el crítico, de manera queactualiza los pesos de las acciones elegidas con el sistema ε-Greedy en la ec 5.19.

wit+1(Uit ) = wIt (U

it )εt+1αRi

∀Ri ∈ A(Xt) (5.20)

Como en la implementación del crítico, las trazas de elegibilidad son incorpora-das para incrementar la eficiencia del sistema actor.

wt+1 = wt + εt+1eat (5.21)

Donde eat denota la elegibilidad de las acciones para el actor.

eat (Ui(k)) =

{λae

at−1(U

i(k)) + αRiU i(k) = U i

t

λaeat−1(U

i(k)) U i(k) 6= U it

∀U i(k)yRi 0 ≤ λa ≤ 1 (5.22)

Page 80: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 72

Figura 5.7: Esquema FACL

IV.3. Fuzzy Q-Learning

El algoritmo Q-Learning combinado con la lógica difusa o Fuzzy Q-learning (FQ)[22], [ 23] a diferencia del sistema fuzzy actor-critic no utiliza un vector de conclu-sión, ot, y por tanto tampoco es necesario definir su elegibilidad, ect . En su lugar seutilizan los valores de calidad de las acciones, wt, tanto para el cálculo de la funciónde evaluación como para elegir la acción. La estructura básica del sistema consisteen:

Page 81: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 73

Cada regla,Ri, está asociada a una serie de acciones denotadas por el vector U i

Cada acción asociada a cada regla tiene asociado un factor de calidad (un peso)wi que será ajustado mediante las fases de aprendizaje del sistema.

Hay un valor asociado a la actual pareja estado-acción (función de evaluación)denotado por Qt(Xt, Ut(Xt)).

Existe un valor óptimo para la función de evaluación para el estado actual de-notado como Q∗t (Xt).

La estructura general del sistema sigue el esquema dibujado en la Fig. 5.8 .

Similar al caso del algoritmo Fuzzy Actor-Critic, el cálculo de la función de eva-luación no depende de su valor anterior, pasando a tener una dependencia respectoal valor actual de las entrada en el momento del cálculo.

Qt(Xt, Ut(Xt)) =ΣRi∈A(Xi) αRi

(Xt)wit(U

it )

ΣRi∈A(Xi) αRi(Xt)

(5.23)

Encontrar el valor óptimo de la función de evaluación radica en hallar la acciónque proporciona la máxima calidad al sistema, puesto que los valores de los pesosactivos no son candidatos a ser maximizados mediante entrenamiento sino que suvalor depende directamente de las entradas, y por ende significa maximizar el vec-tor wt tal y como muestra la ec. 5.24.

Q∗t (Xt, Ut(Xt)) =ΣRi∈A(Xi) αRi

(Xt)[maxa∈U i wit(a)]

ΣRi∈A(Xi) αRi(Xt)

(5.24)

Este valor indica la acción que idealmente se tomaría para realizar una explota-ción completa de los recursos, este hecho facilita el cálculo del TD error.

εt+1 = rt+1 + γQ∗t (Xt+1)− Qt(Xt, Ut(Xt)) 0 ≤ γ ≤ 1 (5.25)

Utilizando γ como factor de descuento diseñado por el usuario. Puesto que noexiste un vector de conclusión, únicamente es necesario actualizar los valores decalidad de la acción siguiendo una ecuación similar a la utilizada en el algoritmoActor-Critic.

wt+1 = wt + βtεt+1eTt (5.26)

Page 82: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 74

La estructura de actualización de los ratios de aprendizaje y elegibilidad delsistema es muy similar a la del agente actuador del algoritmo fuzzy actor-critic.

et(Ui(k)) =

{λaet−1(U

i(k)) + αRiU i(k) = U i

t

λaet−1(Ui(k)) U i(k) 6= U i

t

∀U i(k)yRi 0 ≤ λa ≤ 1 (5.27)

Figura 5.8: Esquema FQL

El ratio de aprendizaje se actualizan de forma similar al del algoritmo FAC. Eneste caso, al factor de aprendizaje es denominado con la letra β.

Page 83: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Estado del arte 75

βio = βo

βit+1 =

βit +Ka δit−1δ

it > 0

βit(1− φ) δit−1δit < 0 0 < φ < 1

βit δit−1δit = 0

Donde δit = εt+1ect(i)

δit = ϕδit−1 + (1− ϕ)δit 0 < ϕ < 1

(5.28)

Por último la generación y selección de acciones se realiza de forma idéntica alalgoritmo fuzzy Actor-Critic siguiendo las ecuaciones 5.18 y 5.19.

IV.4. Procedimiento FAC1. Aplicar las funciones de membresía en la entrada actual, X, para obtener los

valores de µi de las categorías.

2. Evaluar cada categoría según las reglas establecidas.

3. Encontrar el valor de la función de evaluación (ec. 5.11).

4. Calcular el error definido como εt (ec. 5.12).

5. Actualizar vector de conclusiones ot (ec. 5.14).

6. Actualizar los parámetros de calidad de acción wt (ec. 5.21).

7. Actualizar las trazas de elegibilidad para el actuador y el critico (ec. 5.15 y ec.5.22).

8. Actualizar los ratios de aprendizajes αt (ec. 5.16).

9. Realizar la acción ε-Greedy (ec. 5.18 y ec. 5.19).

IV.5. Procedimiento FQL1. Aplicar las funciones de membresía en la entrada actual, X, para obtener los

valores de µi de las categorías.

2. Evaluar cada categoría según las reglas establecidas.

Page 84: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 76

3. Calcular el valor óptimo de la función Q para el instante actual basado en elvalor actual de la función Q (ec. 5.24)

4. Calcular el error definido como εt (ec. 5.25).

5. Actualizar el peso de las acciones wt (ec. 5.26)

6. Actualizar parámetros de meta-aprendizaje (ec. 5.27)

7. Actualizar los ratios de aprendizajes βt (ec. 5.28).

8. Realizar la acción ε-Greedy (ec. 5.18 y ec. 5.19).

9. Calcular el valor futuro de la función Q (ec. 5.23) Qt+1(Xt+1, Ut+1(Xt+1)).

Page 85: Aprendizaje por refuerzo multi-nivel para sistemas RRM

6. Anexos

I. Pseudo-Código movimiento de los usuarios

mobile.x = mobile.x + mobile.v_x*time;mobile.y = mobile.y + mobile.v_y*time;

if(mobile.x>Const.max_x){mobile.x = mobile.x - 2 * Math.abs(mobile.x-Const.max_x);mobile.v_x = -mobile.v_x;

}if(mobile.x<0){

mobile.x = mobile.x + 2 * Math.abs(mobile.x-0);mobile.v_x = -mobile.v_x;

}if(mobile.y>Const.max_y){

mobile.y = mobile.y - 2 * Math.abs(mobile.y-Const.max_y);mobile.v_y = -mobile.v_y;

}if(mobile.y<0){

mobile.y = mobile.y + 2 * Math.abs(mobile.y-0);mobile.v_y = -mobile.v_y;

}

Const.max_x: posición máxima posible del eje horizontal.

Const.max_y: posición máxima posible del eje vertical.

mobile.v_x: velocidad del usuario en el eje horizontal.

mobile.v_y: velocidad del usuario en el eje vertical.

mobile.x: determina la posición horizontal del usuario.

mobile.y: determina la posición vertical del usuario.

time: incremento temporal

Page 86: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 78

Los usuarios inicializan el movimiento de manera aleatoria, manteniendo unavelocidad constante durante todo el trayecto. La inicialización aleatoria se realizade la siguiente forma:

pos_x = Math.random()*Const.max_x;pos_y = Math.random()*Const.max_y;vel_x = half_random()*Math.random()*Const.max_vel_x;vel_y = half_random()*Math.random()*Const.max_vel_y;next_call = timeBetweenCalls();call_lasting = 1 + callDuration();

call_lasting: Duración de la llamada.

callDuration(): Estable la duración de las llamadas siguiendo una estructurade Poisson.

Const.max_vel_x: Máxima velocidad en el eje x.

Const.max_vel_y: Máxima velocidad en el eje y.

half_random(): Devuelve -1 o 1 com probabilidad 0.5.

Math.random(): genera un número aleatorio entre 0 y 1.

next_call: Tiempo de espera entre dos llamadas consecutivas.

pos_x: Posición inicial en el eje x..

pos_y: Posición inicial en el eje y.

timeBetweenCalls(): Establece un tiempo aleatorio entre llamadas siguien-do una estructura de Poisson.

vel_x: Velocidad en el eje x.

vel_y: Velocidad en el eje y.

Page 87: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 79

II. Pseudo-Código Recompensa en el sistema EDCinicial

revenue = 0;for(BaseStation bs : bsList())

switch(getLoad(bs)()){case 0:

revenue+= SistemLoad(bs) *(Const.fix_price-Const.step_price);break;

case 1:revenue+= SistemLoad(bs)*Const.fix_price;break;

case 2:revenue+= SistemLoad(bs)*(Const.fix_price+Const.step_price);break;

}}revenue /= BsNumber();reward = revenue;

bsList(): Devuelve el listado de las estaciones base

BsNumber(): Devuelve el número total de estaciones

Case 0: sistema en baja carga.

Case 1: sistema en media carga.

Case 2: sistema en alta carga.

Const.fix_price: precio base de la estación.

Const.step_price: variación del precio.

getLoad(bs): Devuelve el estado de carga de la estación

SistemLoad(): Devuelve el porcentaje de carga en el sistema

Page 88: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 80

III. Parámetros de simulación: EDC sistema inicial

N=2 /* Número de estaciones en el eje x */.

M=1 /* Número de estaciones en el eje y */.

MxN=2 /* Número total de estaciones */.

channels=10 /* Número de canales disponibles */.

radius=2 /* Radio de cobertura */.

max_x=2*radius*N /* Máxima distancia permitida en el eje x para los usuarios*/.

max_y=2*radius*M /* Máxima distancia permitida en el eje y para los usua-rios */.

channels=5 /* Número de canales disponibles */.

max_vel _x=1 /* Máxima velocidad permitida en el eje x */.

max_vel _y=1 /* Máxima velocidad permitida en el eje y */.

step_time=((double)radius)/10)/max_vel_x /* Tiempo relativo que ha transcu-rrido en el entorno respecto a cada iteración */.

time_between _calls=50 /* Tiempo medio entre llamadas */.

call_duration=20 /* Tiempo medio de la duración de una llamada */.

max _price=1000 /* Máximo precio permitido */.

step_price=20 /* Incremento del precio */.

weight=4 /* Valor del parámetro de peso, β, insertado en la función de refuerzodel nivel de calidad */.

epsion_greedy=0.1 /* Probabilidad de elección de una acción aleatoria (ε-Greedy)*/.

Page 89: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 81

α=0.1 /* Parámetro característico del algoritmo RL */.

γ=0.7 /* Parámetro característico del algoritmo RL */.

β=0.3 /* Parámetro característico del algoritmo RL */.

λ=1 /* Parámetro característico del algoritmo RL */.

Page 90: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 82

IV. Parámetros de simulación: EDC sistema divisi-ble

initial_states_num=3 /* Número de estados con el que se inicia el sistema */.

max_states=3 /* Número máximo de estados que puede llegar a alcanzar el sis-tema */.

division_time=3/9*simulationtime /* Momento en el que se produce la simula-ción */.

N=2 /* Número de estaciones en el eje x */.

M=1 /* Número de estaciones en el eje y */.

MxN=2 /* Número total de estaciones */.

channels=10 /* Número de canales disponibles */.

radius=2 /* Radio de cobertura */.

max_x=2*radius*N /* Máxima distancia permitida en el eje x para los usuarios*/.

max_y=2*radius*M /* Máxima distancia permitida en el eje y para los usua-rios */.

channels=5 /* Número de canales disponibles */.

max_vel _x=1 /* Máxima velocidad permitida en el eje x */.

max_vel _y=1 /* Máxima velocidad permitida en el eje y */.

step_time=((double)radius)/10)/max_vel_x /* Tiempo relativo que ha transcu-rrido en el entorno respecto a cada iteración */.

time_between _calls=50 /* Tiempo medio entre llamadas */.

call_duration=20 /* Tiempo medio de la duración de una llamada */.

max _price=1000 /* Máximo precio permitido */.

Page 91: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 83

step_price=20 /* Incremento del precio */.

weight=4 /* Valor del parámetro de peso, β, insertado en la función de refuerzodel nivel de calidad */.

epsion_greedy=0.1 /* Probabilidad de elección de una acción aleatoria (ε-Greedy)*/.

α=0.1 /* Parámetro característico del algoritmo RL */.

γ=0.7 /* Parámetro característico del algoritmo RL */.

β=0.3 /* Parámetro característico del algoritmo RL */.

λ=1 /* Parámetro característico del algoritmo RL */.

Page 92: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 84

V. Parámetros de simulación: EDC distribuido

initial_states_num=3 /* Número de estados con el que se inicia el sistema */.

max_states=3 /* Número máximo de estados que puede llegar a alcanzar el sis-tema */.

division_time=3/9*simulationtime /* Momento en el que se produce la simula-ción */.

N=2 /* Número de estaciones en el eje x */.

M=1 /* Número de estaciones en el eje y */.

MxN=2 /* Número total de estaciones */.

channels=10 /* Número de canales disponibles */.

radius=2 /* Radio de cobertura */.

max_x=2*radius*N /* Máxima distancia permitida en el eje x para los usuarios*/.

max_y=2*radius*M /* Máxima distancia permitida en el eje y para los usua-rios */.

channels=10 /* Número de canales disponibles */.

util_channels= 0.8*channels /* Máximo número de canales útiles */.

channel_division= 0.6*channels /* Número de canales establecidos para todoslos servicios */.

max_vel _x=1 /* Máxima velocidad permitida en el eje x */.

max_vel _y=1 /* Máxima velocidad permitida en el eje y */.

step_time=((double)radius)/10)/max_vel_x /* Tiempo relativo que ha transcu-rrido en el entorno respecto a cada iteración */.

time_between _calls=50 /* Tiempo medio entre llamadas */.

Page 93: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 85

call_duration=20 /* Tiempo medio de la duración de una llamada */.

max _price=1000 /* Máximo precio permitido */.

step_price=20 /* Incremento del precio */.

weight=4 /* Valor del parámetro de peso, β, insertado en la función de refuerzodel nivel de calidad */.

epsion_greedy=0.1 /* Probabilidad de elección de una acción aleatoria (ε-Greedy)*/.

α=0.1 /* Parámetro característico del algoritmo RL */.

γ=0.7 /* Parámetro característico del algoritmo RL */.

β=0.3 /* Parámetro característico del algoritmo RL */.

λ=1 /* Parámetro característico del algoritmo RL */.

Page 94: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 86

VI. Parámetros de simulación: ARMUN 1 operador

N=3 /* Número de estaciones en el eje x */.

M=3 /* Número de estaciones en el eje y */.

MxN=9 /* Número total de estaciones */.

channels=10 /* Número de canales disponibles */.

radius=2 /* Radio de cobertura */.

max_x=2*radius*N /* Máxima distancia permitida en el eje x para los usuarios*/.

max_y=2*radius*M /* Máxima distancia permitida en el eje y para los usua-rios */.

channels=5 /* Número de canales disponibles */.

price=150 /* Precio que ofrece el operador */.

max_capacity=0.8 /* Máximo umbral del threshold permitido */.

threshold=0.6 /* Valor inicial del threshold */.

cost_x_channel=50 /* Coste de mantenimiento de un canal */.

Tblock=0.05 /* Objetivo de bloqueo */.

Tdrop=0.01 /* Objetivo de bloqueo */.

weight=4 /* Valor del parámetro de peso, β, insertado en la función de refuerzodel nivel de calidad */.

γ=0.1 /* Parámetro característico del algoritmo FRL */.

α=0.1 /* Parámetro característico del algoritmo FRL */.

β=0.1 /* Parámetro característico del algoritmo FRL */.

λc=0.1 /* Parámetro característico del algoritmo FRL (critic recency factor)*/.

Page 95: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 87

λa=0.1 /* Parámetro característico del algoritmo FRL (actor recency factor)*/.

φ=0.1 /* Parámetro característico del algoritmo FRL */.

epsion_greddy=0.1 /*Probabilidad de elección de una acción aleatoria (ε-Greedy)*/.

Page 96: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 88

VII. Parámetros de simulación: ARMUN 2 opera-dores

N=3 /* Número de estaciones en el eje x */.

M=3 /* Número de estaciones en el eje y */.

MxN=9 /* Número total de estaciones */.

channels=10 /* Número de canales disponibles */.

radius=2 /* Radio de cobertura */.

max_x=2*radius*N /* Máxima distancia permitida en el eje x para los usuarios*/.

max_y=2*radius*M /* Máxima distancia permitida en el eje y para los usua-rios */.

channels=5 /* Número de canales disponibles */.

price=200,150 /* Precio que ofrecen los operadores */.

max_capacity=0.8 /* Máximo umbral del threshold permitido */.

threshold=0.6 /* Valor inicial del threshold */.

cost_x_channel=50 /* Coste de mantenimiento de un canal */.

Tblock=0.05,0.015 /* Objetivos de bloqueo */.

Tdrop=0.01,0.05 /* Objetivos de bloqueo */.

weight=4 /* Valor del parámetro de peso, β, insertado en la función de refuerzodel nivel de calidad */.

γ=0.1 /* Parámetro característico del algoritmo FRL */.

α=0.1 /* Parámetro característico del algoritmo FRL */.

β=0.1 /* Parámetro característico del algoritmo FRL */.

Page 97: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Anexos 89

λc=0.1 /* Parámetro característico del algoritmo FRL (critic recency factor)*/.

λa=0.1 /* Parámetro característico del algoritmo FRL (actor recency factor)*/.

φ=0.1 /* Parámetro característico del algoritmo FRL */.

epsion_greddy=0.1 /*Probabilidad de elección de una acción aleatoria (ε-Greedy)*/.

Page 98: Aprendizaje por refuerzo multi-nivel para sistemas RRM

7. Nomenclatura

“A”: Actor-Critic

“N”: Non-Learning

“Q”: Q-Learning

ARMUN: Aprendizaje por Refuerzo Multinivel

CA: Coverage Area

CH: Channel

EDC: Estados de división de carga

FAC: Fuzzy Actor-Critic

FL: Fuzzy Logic

FQ: Fuzzy Q-Learning

FRL: Fuzzy Reinforcement Learning

HO: Handover

ICI: Inter Carrier Interference

MCDM: Multi-criteria decision making

QoS: Quality of Service

RL: Reinforcement Learning

RRM: Radio Resource Management

Page 99: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Nomenclatura 91

SON: Selg Organitzation Networks

Page 100: Aprendizaje por refuerzo multi-nivel para sistemas RRM

8. Bibliografía

1. Osianoh Glenn Aliu, Ali Imran, Member, Muhammad Ali Imran Member, BarryEvans, Senior Member; A Survey of Self Organisation in Future Cellular Net-works; 2012.

2. Nemanja Vucevic, Jordi Pérez-Romero, Oriol Sallent, Ramon Agustí; Reinfor-cement Learning for Joint Radio Resource Management in LTE-UMTS scena-rios; Elsevier 2011.

3. David Vengarov; A Reinforcement Learning Approach to Dynamic ResourceAllocation; Sun Microsystems Laboratories.

4. Antti Tölli, Petteri Hakali and Harri Olma; Performance Evaluation of Com-mon Radio Resource Management (CRRM); IEEE 2002.

5. J.Pérez-Romero, O.Sallent, R.Agustí, P.Karlsson, A.Barbaresi, L.Wang, F.Casadevall,M.Dohler, H.Gonzalez, F.Cabral-Pinto; Common Radio Resource Management:Functional Models and Implementations Requirements.

6. Zwi Altman, Hervé Dubreil, Ridha Nasri, Ouassim Ben Amor, Jean-Marc Pi-card, Vicent Diascorn and Maurice Clerc; Understanding UMTS Radio Net-work Modelling, Planning and Automated Optimisation; John Wiley & sons,Ltd 2006.

7. Zeng Xian, Ma Tao, Lin Yue-wei, Feng Zhi-yong; Genetic Algorithm for Autono-mic Joint Radio Resource Management in end-to-end Reconfigurable systems;The journal of china universities of post and telecomunications 2008.

8. Nemanja Vucevic, Jordi Pérez-Romero, Oriol-Sallent, Ramon Agustí; Joint Ra-dio Resource Management for LTE-UMTS Coexistence Scenarios; IEEE 2009.

9. Zhang Yong-jing, Lin Yue-wei; Markov game for autonomic Joint Radio Resour-ce Management in a multi-operator scenario; The journal of china universitiesof post and telecomunications 2007.

Page 101: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Bibliografía 93

10. Hamid Beigy and Mohammad Reza Meybodi; Cellular Learning AutomataWith Multiple Learning Automata in Each Cell and Its Application; IEEE2009.

11. Mariana Dirani and Zwi Altman; A Cooperative Reinforcement Learning Ap-proach for Inter-Cell Interference Coordination in OFDMA Cellular Networks;WiOpt 10: Modeling and Optimization in Mobile, Ad Hoc, and Wireless Net-works (2010).

12. R.Agustí, O.Sallent, J. Pérez-Romero, L.Giupponi; A Fuzzy-Neural Based Ap-proach for Joint Radio Resource Management in a Beyond 3G Framework;IEEE 2004.

13. L.Guipponi,R.Agusti,J.Perez-Romero, O.Sallent; Joint Radio Resource Mana-gement algorithm for multi-RAT networks; IEEE 2005.

14. Lorenza Guipponi, Ana Galindo-Serrano, Pol Blasco and Micha Dohler; Doci-tive Networks: An Emerging Paradigm For Dynamic Spectrum Management;IEEE 2010.

15. Rouzbeh Razavi, Siegfried Klein and Holger Claussen; A Fuzzy ReinforcementLearning Approach for Self-Optimitzation of Coverage in LTE Networks; Wi-ley Periodicals, Inc. 2010.

16. Jingyu Li, Jie Zeng, Xin Su, Wei Luo and Jing Wang; Self-Optimization ofCoverage and Capacity in LTE Networks Based on Central Control an De-centralized Fuzzy Q-Learning; Tsinghua National Laboratory for InformationScience and Technology 2012.

17. R.Razavi, S.Klein, H.Claussen; Self-Optimization of Capacity and Coverage inLTE Networks Using a Fuzzy Reinforcement Learning Approach; IEEE 1865.

18. Mohammed M. Alkhawlani and Kasim A. Alsalem; Radio Network Selectionfor Tight-Coupled Wireless Networks.

19. Richard S.Sutton and Andrew G.Barto; Reinforcement Learning: An Introduc-tion; 2005.

20. Chin-Teng and C.S. George Lee; Reinforcement Structure/Parameter Learningfor Neural-Network-Based Fuzzy Logic Control; IEEE 1994.

21. Alireza Ferdowizadeh Naeeni; Advanced Multi-Agent fuzzy Reinforcement Lear-

Page 102: Aprendizaje por refuerzo multi-nivel para sistemas RRM

Aprendizaje por refuerzo multi-nivel para sistemas RRM 94

ning; Dalama University 2004.

22. Pierre Yves Glorennec, Lionel Jouffe; Fuzzy Q-Learning; IEEE 1997.

23. Andrea Bonarini, Alessandro Lazaric, Francesco Montrone, Marcello Rastelli;Reinforcement Distribution in Fuzzy Q-Learning; Elsevier 2008.

I. Publicaciones RealizadasKevin Collados , Juan-Luis Gorricho, Joan Serrat, Hu Zheng; Multi-LayeredReinforcement Learning Approach for Radio Resource Management; Procee-dings of the 3rd International Conference on Computer Engineering and Net-work; Springer Verlag in Lecture Notes in Electrical Engineering, vol. 277,chapter 135, ISSN:1876-1100, ISBN 978-3-319-01765-5, 2014.

K. Collados, J.L. Gorricho, J. Serrat, H. Zheng, K. Xu; An Intelligent Two-agentSelf-configuration Approach for Radio Resource Management; Pendiente depublicación.