Resumen
Nuestra investigación está orientada a la búsqueda de la optimización del servicio prestado al ciudadano, con el objetivo de evitar colapsos en determinados servicios administrativos frente a otros servicios que presentan bajos niveles de actividad. El algoritmo aplicado (Branch & Bound) se encarga de detectar en qué ramificación las soluciones dadas (secciones administrativas y servicios prestados) ya no están siendo óptimas para "podar" esa rama del árbol y no continuar malgastando recursos y procesos en casos que se alejan de la solución óptima. La aplicación del método Stepping Stone o de la Esquina noroeste nos permite completar la redistribución de personal dentro de cada sección administrativa en función de la optimización de tiempos.
Abstract
Our research is aimed at finding the optimization of the service provided to citizens, in order to avoid breakdowns in certain administrative services compared to other services that have low levels of activity. The algorithm applied (Branch & Bound) detects what branches of the tree (administrative sections and services) are not optimal ones and have to be pruned for the purpose of not continue wasting resources and processes in cases that are far from the optimal solution. The application of Stepping Stone method or Nortwest Corner allow us to complete the staff reallocation within each administrative section based on timing optimization.
Palabras clave: Algoritmo ramificación y poda; personal; optimización carga trabajo
Keywords: Branch and bound algorithm, personnel, work load optimization
Clasificación JEL: C02;C63;M51
1. Introducción
En la actual situación de crisis económica en la que nos encontramos inmersos, se ha abierto el debate acerca de la necesidad de una urgente transformación de la Administración Pública; si bien, algunos políticos son de la opinión de que "hay que adelgazar la Administración" con el fin de reducir déficit, para otros el problema de la Administración no es que sobren efectivos humanos sino que están mal distribuidos (Arenilla, M. (2000)). En cualquier caso, la decisión que se tome es deseable que no se vea sesgada por ningún tipo de partidismo sino que responda a un diagnóstico exhaustivo de las necesidades de personal de cada centro de trabajo y un estudio de asignación eficiente de los empleados entre los diferentes centros y departamentos que componen la Administración.
En el presente trabajo se describe el desarrollo y aplicación de un algoritmo de Ramificación y Poda (Branch & Bound) a la redistribución de personal de una Corporación Local (Ayuntamiento) típica de una población de menos de 500.000 habitantes. La elección de este algoritmo para el problema que se plantea en la investigación ha estado motivada por el hecho de que permite analizar la idoneidad del conjunto de soluciones iniciales planteadas, y detectar aquellas que no están siendo óptimas para "podar" esa rama del árbol y no continuar malgastando recursos y procesos en casos que se alejan de la solución óptima (Carrabs, F; Cerulli, R, Speranza, M.G. (2013)). Por otro lado, se van estableciendo las ramificaciones óptimas, es decir, aquellas que responden a una carga de trabajo por empleado idónea de acuerdo con un nivel de servicio al ciudadano adecuado.
La redistribución de personal propuesta permite detectar las unidades administrativas que están prácticamente paralizadas, mientras que otras prestan servicios públicos esenciales y claramente están saturadas de trabajo. Detectadas estas deficiencias de distribución, el algoritmo permite establecer propuestas de solución. Para la división de secciones administrativas (Rodríguez Fernández, A; Arenilla, M. (1995)) que han servido de objeto para el estudio hemos utilizado información de los Ayuntamientos de Alicante, Murcia y Granada. Aunque en esta fase experimental de la investigación, los datos relativos a empleados, carga de trabajo, datos de atención al ciudadano...etcétera, han sido simulados con una finalidad de confidencialidad, lo cual no supone menoscabo del cumplimiento de nuestro objetivo que es el de mostrar la idoneidad del algoritmo diseñado para la resolución del problema de optimización.
2. Desarrollo del algoritmo aplicado a la redistribución de personal entre las secciones administrativas
Branch & Bound es un algoritmo cuya utilidad principal es la de ayudar a encontrar la solución más óptima a problemas de optimización. Este algoritmo está basado en un árbol de búsquedas, donde en cada etapa todas las posibles soluciones del problema se dividen en dos subconjuntos que representan nodos decisionales, eliminando en las sucesivas etapas del proceso aquellas soluciones que no se acercan al óptimo (poda) y depurando de este modo los resultados hasta que se alcanza algún criterio pre-establecido sobre el mejor valor encontrado (ramificación óptima). La estrategia de diseño de ramificación y poda es muy similar al de vuelta atrás (backtracking), donde el estado del árbol es usado para resolver un problema.
Comenzamos nuestro estudio partiendo de cinco secciones administrativas: Mantenimiento; Bienestar social; Economía; Cultura, Patrimonio y Juventud; Comercio y Ocupación de la vía pública (Cuadro 1). En cada una de ellas describimos las actividades realizadas y determinamos la carga de trabajo por empleado calculada como el número de empleados por cada 100 personas atendidas al año (Simón, C; Rojas, P. (2003)).
En la Tabla 1 aparecen reflejadas las cargas de trabajo por empleado en cada sección de acuerdo con los ciudadanos atendidos durante el año, así por ejemplo en la sección de Mantenimiento en consultas se han registrado 6.000 ciudadanos atendidos durante el año siendo la carga por empleado del 2% con lo que aparece en la casilla correspondiente la cifra de 120. En Bienestar Social aparecen 1.700 reclamaciones durante el año a un 10% de carga de trabajo son 170, y así sucesivamente. De este modo se elabora la Matriz de Adyacencia a partir de la cual empezaremos a desarrollar el Algoritmo (Guerequeta, R; Vallecillo, A (2000)). En la Tabla 2, establecemos los menores por filas y columnas de la Matriz de Adyacencia. A continuación se establece la matriz de costos reducida después de restar los menores de cada columna (Tabla 3).
La Matriz de Adyacencia representa relaciones binarias, en este caso entre dos nodos de un grafo (secciones administrativas y actividad a desarrollar). Sobre los datos contenidos en esta matriz serán seleccionados y dispuestos en filas y columnas los menores obtenidos (Tabla 2).
A continuación, determinamos el valor de la raíz de arborescencia que será la suma de los menores obtenidos en filas y columnas (Martí Oliet, N; Ortega Mallén, Y; Verdejo López, J.A (2003)).
Se escoge el mayor, esto es: (2,3)=295 con lo que la nueva cota la formará el resultado obtenido 295+362 (valor de la raíz de arborescencia obtenido anteriormente)= 657. De este modo podremos dividir el conjunto de todas las soluciones en dos clases generando dos matrices. La matriz derecha constituye el conjunto que contiene todas las soluciones que excluyen los nodos (2,3) y por lo tanto sabiendo que éstos son excluidos se cambia la entrada de la matriz de costos en esa dirección.
Iniciamos la arborescencia de la siguiente manera:
Eliminando la fila 2 y la columna 3 obtenemos los siguientes resultados (Tabla 4):
Restando los menores de cada columna obtenemos los siguientes resultados (Tabla 5):
Se escoge el mayor, esto es: (3,2) la nueva cota es 96+362 =458
A continuación eliminamos la fila 2 y 3 y las columnas 3 y 2 (Tabla 6):
Se escoge el mayor, esto es el (5,5) la nueva cota es 83+362 = 445
Eliminando la fila 5 y la columna 5 obtenemos los siguientes resultados (Tabla 7):
La nueva cota es 176+362=538. Con lo que la arborescencia termina de la siguiente forma:
Los últimos pares de nodos se han forzado para cerrar la ruta correspondiente dado que ninguna otra división del espacio de búsqueda podría realizarse. Así es que cuando esto ocurre simplemente se agregan los últimos nodos sin que se puedan seleccionar y se forma el ciclo Hamiltoniano (Gil Aluja, J. (1999).
La sumatoria de los mejores arcos de cada vértice, más el costo del camino ya acumulado, es una estimación válida para tomar decisiones respecto a las podas en el árbol; así, en el ejemplo mostrado al lector se han establecido las asignaciones que reproducimos a continuación en el orden en las que los nodos fueron apareciendo en las sucesivas fases de la arborescencia:
De acuerdo con la ruta óptima obtenida la sección que alcanza el óptimo de carga de trabajo por ciudadano es la sección 2 de bienestar social en la actividad de altas/bajas tramitación correspondiente a una carga de trabajo del 20%. A continuación la sección de economía en su actividad de entrega/retirada de documentación, la sección 5 en reclamaciones y finamente la sección 1 en solicitudes y la sección 4 en consultas (con un 9 y un 10% de carga de trabajo por empleado). Para el resto de actividades no señaladas en la ruta óptima, resulta necesario que las distintas secciones realicen un reajuste.
3. Metodología de distribución óptima de carga de trabajo por empleado
El modelo aplicado busca optimizar la carga de trabajo por empleado a partir de un plan de asignación teniendo en cuenta el número de ciudadanos que se acercan a cada sección para ser atendidos en las diferentes tareas informativas y operativas. Los datos simulados del modelo son el nivel de tiempo empleado por término medio en cada tarea y la demanda de atención al ciudadano en cada servicio.
Comienza nuestro estudio con la consideración de las tres secciones que han quedado en último lugar en la ruta óptima obtenida en la fase anterior de aplicación del algoritmo de Branch & Bound, estas secciones son la 1, 4 y 5. Consideremos un límite máximo en cada una de esas secciones de atención a 100 usuarios al día en las distintas tareas de: 1 (obtener información), 2 (entregar/retirar documentación), 3 (altas, bajas y tramitación), 4 (solicitudes), 5 (reclamaciones).
El tiempo medio empleado por un usuario en cada una de las 5 actividades viene dado por la Tabla no 81. Por ejemplo, el tiempo medio que emplea un usuario en obtener información suele estar entre los 1.5 y los 2.3 minutos en la sección 5 (comercio y ocupación de la vía pública), mientras que la sección de mantenimiento tarda entre 2.6 y 3.4 minutos en la recepción de solicitudes (Tabla 8).
Estos tiempos han sido tomados en forma de número triangular y por tanto están formados por tres cantidades: una por debajo de la cual no va a descenderse (tiempos mínimos), otra en la que por encima no será posible llegar (tiempos máximos) y, finalmente, aquella que representa el máximo nivel de presunción. También se ha limitado el número de usuarios que como máximo que pueden ser atendidos en cada una de las 5 actividades (última fila) respetando el límite de 100 usuarios por sección establecido en las restricciones iniciales.
La función económica consiste en minimizar el tiempo empleado en cada sección administrativa en la ejecución de cada actividad, respetando las limitaciones (restricciones) de usuarios máximos admisibles (100 usuarios), así como el número máximo de usuarios que pueden ser atendidos en cada una de las cinco actividades por parte de las tres secciones administrativas elegidas. Este problema se plantea a partir de una programación lineal que contiene 15 variables y 7 ecuaciones independientes. La definición del modelo es la siguiente:
Min T = (1.4,1.9,2.4)x11 + (1.0,1.4,1.8)x12+(1.2,1.6,2.0)x13+(2.6,3.0,3.4)x14+(1.9,2.3,2.7)x15+(1.6,2.0,2.4)x21+(1.4,1.8,2.2)x22+(1.3,1.7,2 .1)x23+(1.5,1.9,2.3)x24+(1.7,2.1,2.4)x25+(1.5,1.9,2.3)x31+(1.2,1.6,2.0)x32+(1.6,2.0,2.4)x33+(1.4,1.9,2.3)x34+(1. 8,2.2,2.5)x35
Con las restricciones que se muestran a continuación:
En donde xij 30, j=1,2,3,4,5 ; i=1,2,3 representan los usuarios asignados a cada uno de los 3 sitios (i) en las cinco tareas elegidas (j).
El primer conjunto de restricciones se refiere al número de usuarios que como máximo puede ser atendido en cada una de las tres secciones. El segundo conjunto de restricciones se refiere al máximo de usuarios que pueden ser atendidos en cada actividad.
Las 8 condiciones no son independientes ya que 100+100+100 =50+40+70+80+60. Existen 7 condiciones independientes en lugar de 8 por lo que una solución básica contendrá 15-7=8 variables nulas, lo que significa que el modelo empleado tiene sólo m + n -1 ecuaciones independientes. Por lo tanto, como en el método Simplex, una solución factible básica inicial debe incluir m + n - 1 variables básicas. Normalmente, si el modelo se formula como una tabla simplex, sería necesario utilizar variables artificiales para asegurar una solución básica inicial. Sin embargo, una solución factible básica inicial se puede obtener fácil y directamente a través de un procedimiento llamado "regla de la esquina noroeste o método Stepping Stone", que resulta muy útil para este fin.
El método de la esquina noroeste (Charnes, A; W.Cooper (1954)) comienza con la asignación de la máxima cantidad admisible a través de la oferta y la demanda de la variable x11 (la de la esquina noroeste de la tabla), después se tacha la columna (renglón) satisfecha, lo que indica que las variables restantes de la columna (renglón) tachada son iguales a cero. Si se satisfacen una columna y un renglón al mismo tiempo, sólo una (una u otro) puede ser tachada. (Esta condición garantiza la ubicación automática de variables básicas cero, si las hay). Después de ajustar las cantidades de oferta y demanda de todos los renglones y columnas no tachados, la cantidad factible máxima se asigna al primer elemento no tachado de la nueva columna (renglón). El proceso se completa cuando se deja sin tachar exactamente un renglón o una columna.
Se parte de la casilla noroeste (parte superior izquierda) del cuadro de afectaciones. En la intersección de la primera fila y la primera columna se coloca el más pequeño de los números que representan la máxima disponibilidad 100 y el número máximo de usuarios atendidos permitido para esa actividad (50). Se completa la primera fila hasta la saturación de la disponibilidad, con lo que obtenemos x11 =50, x12 =40, x13=10, x14=x15=0. Seguimos completando la demanda en la 3era columna y luego en la 4a y 5a columna (Tabla 9).
Según esta distribución, la sección 1 atiende a 50 usuarios en la actividad 1, 40 usuarios en la actividad 2 y 10 usuarios en la 3, mientras que la sección 4 atiende a 60 usuarios en la actividad 3 y 40 usuarios en la actividad 4, por su parte la sección 5 atiende a 50 usuarios en la actividad 4 y a 60 usuarios en la actividad 5. Si los 50 ciudadanos atendidos en la sección 1 y en la actividad 1 (obtener información) tardan aproximadamente entre (1.4,1.9,2.4) minutos, la sección 1 emplearía un tiempo total de (50 usuarios*(1.4,1.9,2.4) minutos por usuario) más 40 usuarios atendidos en la actividad 2 por un tiempo medio por usuario de (1.0,1.4,1.8) minutos y 10 usuarios por un tiempo medio de (1.2,1.6,2.0). Estos productos se irían haciendo para las otras secciones y actividades. A partir de esa solución, determinamos el tiempo total invertido en las 5 actividades por parte de las tres secciones 1,4 y 5 y determinamos el mínimo:
50*(1.4,1.9,2.4))+(40)*(1.0,1.4,1.8)+(10)*(1.2,1.6,2.0)+(60)*(1.3,1.7,2.1)+ (40)*(1.5,1.9,2.3)+(40)*(1.4,1.9,2.3)+(60)*(1.8,2.2,2.5)=
A partir de esta solución se busca una nueva que implique un tiempo global menos elevado y que contenga por lo menos 8 variables nulas. Para conseguirlo partimos de la suposición de que se afecta una unidad en la casilla x14, retirando esa misma unidad en la casilla x13, se añade una unidad en la x23 y se retira en la x24. Con este cambio circular de una unidad (en el número de usuarios atendidos en cada actividad) el tiempo total variaría en una cuantía dij (que representaría las desviaciones unitarias cuando el simplex se pasa de una base a otra). Así, probamos la evolución en el tiempo total empleado si se hiciera el siguiente cambio de distribución: en la sección 1 se atiende a un usuario menos (del que se haría cargo la sección 4) en la actividad 3 y se atiende a uno más en la actividad 4 (restándolo de la sección 4), El procedimiento queda detallado en las Tablas 10,11,12,13,14,15,16,17, con las sucesivas iteraciones:
Veamos ahora qué cambio produciría una disminución del tiempo. Para ello es necesario que d sea negativo, lo que sucede con d25= -2, pero en lugar de desplazar una unidad desplazaremos el mayor número posible de unidades. Para ello consideraremos en la escalera la cantidad más pequeña que corresponda a una casilla en que se encuentra la cantidad -1, así en la Tabla 17 queda reflejado que se trata de la casilla 2,4, y para restablecer las disponibilidades de las demandas que se han impuesto inscribiremos 80 en lugar de 40 en la casilla 3,4 y 20 en lugar de 60 en la casilla 3,5, lo que permite obtener la tabla siguiente (Tabla 18).
El correspondiente coste total sería de:
T=(50)*(1.4,1.9,2.4)+(40)*(1.0,1.4,1.8)+(10)*(1.2,1.6,2.0)+(60)*(1.3,1.7,2.1)+(80)*(1.4,1.0,2.3)+(40)*(1.7,2. 1,2.4)+(20)*(1.8,2.2,2.5)=
Esta solución sitúa en 416 (tiempo mínimo) frente a los 424 mínimo de la solución inicial, lo que pone de manifiesto que el cambio de una unidad en el número de usuarios atendidos en cada sección, reduce el tiempo total en 8 minutos. A continuación repetimos el proceso antes descrito con el fin de buscar una mejor solución que mejore los tiempos (Tabla 19).
La elección recaería en d31= -1 con lo que repitiendo el proceso anterior y cambiando 20 unidades de la casilla x35 a la casilla x33 se obtiene la solución (Tabla 20):
T=(30)*(1.4,1.0,2.4)+(40)*(1.0,1.4,1.8)+(30)*(1.2,1.6,2.0)+(40)*(1.3,1.7,2.1)+(20)*(1.5,1.9,2.3)+((80)*(1.4,1. 9,2.3)+(60)*(1.7,2.1,2.4)=
y por tanto se ha logrado de nuevo una reducción del tiempo a 414 minutos (6.9 horas en una jornada laboral diaria de 7 horas) (Figura 1). Repetimos el proceso con el fin de encontrar otro óptimo, pero las soluciones que obtenemos nos dan un dij>0 o nulo, lo que nos indica que es imposible conseguir una mejor solución a la ya planteada.
De este modo hemos encontrado una asignación óptima de usuarios atendidos en las diferentes tareas en la que se ha conseguido una reducción de tiempos. Esta distribución permite establecer políticas de redistribución del personal entre las diferentes secciones, así como repartir tareas entre las secciones de un modo más lógico.
4. Conclusiones
a) Sobre la reducción de tiempos:
La aplicación del método de Stepping Stone (o de la esquina noroeste) ha supuesto la optimización de los servicios ya que se han reducido pérdidas de tiempo innecesarias así como las pérdidas de tiempo ocasionadas por sobrecargas de trabajo en la atención de los servicios señalados acometida por las secciones administrativas. Este método proporciona una solución inicial cercana al óptimo, pero no el óptimo propiamente dicho.
b) Sobre el algoritmo utilizado:
La aplicación del algoritmo Branch & Bound nos ha permitido obtener una solución inicial próxima a la solución óptima de forma rápida y sencilla, de manera que mediante el posterior proceso de optimización y mejora y tras pocas iteraciones, se han conseguido rápidamente reducciones de tiempo innecesarias, lo que nos ha permitido llegar a la determinación de óptimos repartos de carga de trabajo en cada sección administrativa por cada actividad.
1 El reparto de tiempos mostrado a continuación no responde a datos reales, se trata de un ejemplo utilizado por los mismos autores en otros trabajos de aplicación del método de la esquina noroeste o Stepping Stone (Gil Aluja (1996)).
Bibliografía
ARENILLA, M. (Dir.) (2000): El proceso de modernización en la Administración Pública. El caso de La Rioja, Logroño: Gobierno de La Rioja, 363 p.
BRASSARD, G.; BRATLEY, P. (1997): "Fundamentos de Algoritmia". New York. Edit. Prentice Hall.
C. CARRASCO, R. (2006): "Curso de algoritmia avanzada". Universidad de Alicante (departamento de lenguajes y sistemas informáticos).
Disponible en (http://rua.ua.es/dspace/bitstream/10045/3300/1/AA_es.pdf) [10/9/2012].
CARRABS, F; CERULLI, R; SPERANZA, M.G. (2013): A branch-and-bound algorithm for the double travelling salesman problem with two stacks. Networks an International Journal. Networks Vol. 61, Issue 1.
CHARNES, A. ; COOPER W. (1954); The stepping stone method of explaining linear programming calculations in Transportation Problems. Management Science, vol. 1.
ESCOLANO, F.; ALFONSO GALIPIESO, M.I; LOZANO ORTEGA, A. y otros (2003): "Inteligencia Artificial: modelos, técnicas y áreas de aplicación". Madrid: Edit. Paraninfo.
GIL ALUJA, J. (1996): "La gestión interactiva de los recursos humanos en la incertidumbre" Edit. Ceura. Madrid.
GIL ALUJA, J. (1999): "Elementos para una teoría de la decisión en la incertidumbre". Galicia. Edit. Milladoiro.
GUEREQUETA R. ; VALLECILLO A. (2000): "Técnicas de diseño de algoritmos". Málaga. Edit. Servicio de Publicaciones de la Universidad de Málaga.
MARTÍ OLIET, N. ; ORTEGA MALLÉN, Y. ; VERDEJO LÓPEZ, J. A. (2003): "Estructuras de datos y métodos algorítmicos". Madrid. Edit. Pearson.
MOSCATO, P; COTTA, C. (2003): Una introducción a los algoritmos meméticos. Revista Iberoamericana de Inteligencia Artificial. Núm. 019. Vol 7.
RODRÍGUEZ FERNÁNDEZ, A. (Dir.) ; ARENILLA, M. (1995): "La estructura de la Administración Pública: Análisis, evaluación y propuestas en los recursos humanos en las Administraciones Públicas". Madrid. Edit. Tecnos.
SIMÓN, C; ROJAS. P. (2003): Indicadores de eficacia en la gestión de Recursos Humanos Revista Capital Humano núm 169.
Ma Carmen Lozano Gutiérrez
Universidad Politécnica de Cartagena. España
e-mail: [email protected]
Federico Fuentes Martín
Universidad Politécnica de Cartagena. España
e-mail: [email protected]
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright Atlantic Review of Economics 2014
Abstract
This research is aimed at finding the optimization of the service provided to citizens, in order to avoid breakdowns in certain administrative services compared to other services that have low levels of activity. The algorithm applied (Branch & Bound) detects what branches of the tree (administrative sections and services) are not optimal an ones and have to be pruned for the purpose of discontinued wasting resources and processes in cases that are far from the optimal solution. The application of Stepping Stone method or Northwest Corner allows completing the staff reallocation within each administrative section based on timing optimization.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer