ES2540159B1 - Método para el modelado del nivel de glucemia mediante programación genética - Google Patents

Método para el modelado del nivel de glucemia mediante programación genética Download PDF

Info

Publication number
ES2540159B1
ES2540159B1 ES201331726A ES201331726A ES2540159B1 ES 2540159 B1 ES2540159 B1 ES 2540159B1 ES 201331726 A ES201331726 A ES 201331726A ES 201331726 A ES201331726 A ES 201331726A ES 2540159 B1 ES2540159 B1 ES 2540159B1
Authority
ES
Spain
Prior art keywords
insulin
solutions
glucose
probability
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES201331726A
Other languages
English (en)
Other versions
ES2540159A1 (es
Inventor
José Ignacio HIDALGO PÉREZ
Antonio Óscar GARNICA ALCÁZAR
Juan LANCHARES DÁVILA
José Luis RISCO MARTÍN
José Manuel COLMENAR VERDUGO
Alfredo CUESTA INFANTE
Esther MAQUEDA VILLAIZÁN
Marta BOTELLA SERRANO
José Antonio RUBIO GARCÍA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universidad Complutense de Madrid
Original Assignee
Universidad Complutense de Madrid
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universidad Complutense de Madrid filed Critical Universidad Complutense de Madrid
Priority to ES201331726A priority Critical patent/ES2540159B1/es
Priority to PCT/ES2014/000190 priority patent/WO2015079079A1/es
Publication of ES2540159A1 publication Critical patent/ES2540159A1/es
Application granted granted Critical
Publication of ES2540159B1 publication Critical patent/ES2540159B1/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/50ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/30Prediction of properties of chemical compounds, compositions or mixtures

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Investigating Or Analysing Biological Materials (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)

Abstract

Método para el modelado del nivel de glucemia mediante programación genética.#La invención consiste en un método que, aplicando algoritmos evolutivos sobre soluciones aleatorias y datos tomados de un paciente con glucemia, permite establecer un modelado del nivel de glucemia para obtener un modelado del nivel de glucosa en instantes futuros a los momentos de obtención de los datos del paciente. Los datos del paciente son al menos los niveles de glucosa, ingesta e insulina rápida y lenta para un intervalo de tiempo. El algoritmo evolutivo consiste básicamente en aplicar programación genética en su variante de gramáticas evolutivas o evolución gramatical. Es decir, aplicar gramáticas personalizadas en formato BNF, procesos de mapeo personalizados y evaluaciones de error concretas a las soluciones aleatorias o a modelos generados con anterioridad para obtener una expresión que describa y prediga los niveles de glucosa de un paciente. De entre todos los pacientes, el método de la presente invención está especialmente indicado para sujetos con Diabetes Mellitus.

Description

5
10
15
20
25
30
METODO PARA EL MODELADO DEL NIVEL DE GLUCEMIA MEDIANTE PROGRAMACION GENETICA
OBJETO DE LA INVENCION
La presente invention propone aplicar la programacion genetica para encontrar un modelo personalizado que describa y prediga los niveles de glucosa de un paciente. De esta forma, la presente invencion describe un metodo que, a partir de los datos historicos de un paciente que consisten en valores previos de glucosa, carbohidratos tomados e insulinas inyectadas, obtiene una expresion que puede usarse para predecir valores de glucosa en un futuro proximo.
El campo de aplicacion de la presente invencion es la estimation de la glucosa de un paciente a partir de los datos medidos. Debido a la naturaleza de la invencion, la estimacion de la glucosa de la presente invencion permite a dispositivos que operen segun el metodo de la presente invencion, predecir los niveles de glucosa de un paciente. De entre todos los pacientes, el metodo de la presente invencion esta especialmente indicado para sujetos con Diabetes Mellitus.
ANTECEDENTES DE LA INVENCION
La Diabetes Mellitus es una enfermedad causada por un defecto en la secretion o en la action de la insulina, que es esencial para el control de los niveles de glucosa en sangre.
En ambos casos el resultado es que las celulas no asimilan el azucar y como consecuencia, se produce una subida en los niveles de glucosa en sangre o hiperglucemia. Existen distintos tipos de diabetes dependiendo de su naturaleza. Segun la ADA (American Diabetes Association) podemos distinguir cuatro tipos de DM:
• Diabetes Tipo 1 (T1DM): Las celulas no producen insulina debido a un proceso autoinmune. Actualmente esto hace necesario que la persona se inyecte insulina exogena, ya sea mediante inyecciones puntuales o que utilice una bomba de insulina.
5
10
15
20
25
30
• Diabetes Tipo 2 (T2DM): El es resultado de una resistencia a la insulina, donde las celulas no consiguen utilizar la insulina correctamente. En ocasiones se combina con una ausencia, ya sea parcial o total de insulina.
• Diabetes Gestacional: Aparece en los periodos de gestacion en una de cada diez mujeres embarazada. El embarazo es un cambio en el metabolismo, ya que el feto utiliza la energia de la madre para obtener alimento, oxigeno y otros recursos. Esto hace que se produzca un descenso en la secrecion de insulina por parte de la madre.
• Otros tipos: como por ejemplo problemas en las celulas , defectos geneticos que afectan a la accion de la insulina, provocados por medicamentos, smdromes geneticos, etc..
En la mayoria de los casos, los pacientes con una evolucion larga de la enfermedad requieren la inyeccion de insulina exogena en varias dosis, o mediante una bomba de insulina. Es importante mantener un buen control glucemico para prevenir tanto las complicaciones agudas de la diabetes (cetoacidosis diabetica e hipoglucemia, definida como un valor de glucosa en sangre inferior a 70mg=dl), como todas las complicaciones multi-cronicas asociadas a los pacientes diabeticos (nefropafia, retino pafia, microangiopafia y macroangiopafia).
En los ultimos anos se ha demostrado que un control estricto del Nivel de glucemia en pacientes criticos mejora su evolucion y reduce los costes medicos. El control de los niveles de glucosa es una tarea dificil y que requiere un esfuerzo por ambas partes, pacientes y sus familias. Para mantener buenos niveles de glucosa en sangre el paciente debe tener alguna capacidad de prediccion para saber que nivel de glucosa tendria si toma cierta cantidad de comida o si se inyecta cierta cantidad de insulina de un determinado tipo. De hecho el objetivo final es evitar no solo periodos de hiperglucemia (niveles de glucosa > 180 mg=dl) sino tambien episodios de Hipoglucemia severa (niveles de glucosa < 40mg=dl) que pueden llevar al paciente a la muerte.
Uno de los aspectos que hace dificil el control de glucosa en sangre es la ausencia de un modelo general de respuesta tanto a la insulina como a los diversos factores
3
5
10
15
20
25
30
mencionados anteriormente, debido principalmente a las particularidades de cada paciente.
Los modelos presentes en el estado de la tecnica aplican tecnicas de modelado clasico que resultan en el uso de ecuaciones lineales, perfiles definidos o modelos con un conjunto limitado de entradas.
Otro tipo de tecnicas conocidas del estado de la tecnica y que nunca han sido utilizadas para realizar modelos de estimation de la glucosa son las tecnicas evolutivas. Las tecnicas evolutivas como la programacion genetica (PG) tienen ciertas caracteristicas que las hacen especialmente utiles para abordar problemas de optimization y modelado complejo. En primer lugar son "simples” conceptualmente hablando y tambien lo es su aplicacion. Sin embargo tienen una base teorica bien definida y ampliamente estudiada. La programacion genetica ha demostrado su aplicabilidad a multitud de problemas reales y es intrinsecamente paralelizables por trabajar con un conjunto de soluciones. Es mas, los algoritmos evolutivos tienen un gran potencial para incorporar conocimiento acerca del dominio en el que trabajan y para incorporar otros mecanismos de busqueda no necesariamente evolutivos.
Una de las aplicaciones mas conocidas de la programacion genetica es la regresion simbolica y la aplicacion de una de las variantes de la PG, las gramaticas evolutivas o en ingles Grammatical Evolution (GE) nos permite obtener soluciones para incorporar terminos no-lineales. La gramatica evolutiva GE es una tecnica de computation evolutiva establecida en 1998 por el grupo de Conor Ryan en la Universidad de Limerick (Irlanda). La programacion genetica trata de encontrar programas ejecutables o funciones que respondan a unos datos de referencia. La principal ventaja es que la gramatica evolutiva GE aplica operadores geneticos a una cadena completa lo que simplifica la aplicacion de la busqueda en diferentes lenguajes de programacion. Ademas no tiene problemas de memoria, al contrario que la programacion genetica basica, donde la representation en arbol puede llevar al conocido problema de bloating (un crecimiento excesivo de las estructuras de datos del computador en la memoria).
5
10
15
20
25
30
Por todo ello, nosotros proponemos aplicar PG para encontrar un modelo personalizado que describa y prediga los niveles de glucosa de un paciente. Nuestro metodo tomara los datos historicos de un paciente que consisten en valores previos de glucosa carbohidratos tomados e insulinas inyectadas y a partir de ellos obtendra una expresion que puede usarse para predecir valores de glucosa en un futuro proximo.
Mediante los modelos del estado de la tecnica no es posible conocer una estimation de la glucosa en sangre en pacientes ni de forma generica ni personalizada al paciente. Ello implica que actualmente no es posible aplicar tratamientos adecuados a los pacientes con diabetes. Aunque existen muchos trabajos que usan modelos de control, hasta la fecha el problema del modelado no se ha abordado con tecnicas de computation evolutiva. Esta solution no se ha abordado hasta la fecha debido a su complejidad mediante el uso de tecnicas clasicas.
DESCRIPCION DE LA INVENCION
La presente invention propone una tecnica nueva que implica obtener el modelo del paciente particularizado utilizando programacion genetica "GP” (del ingles "Genetic Programming”). La programacion genetica "GP” elimina las barreras relacionadas con la construction del modelo, tales como la linealidad o la limitation en los parametros de entrada. Mediante la aplicacion de la programacion genetica "GP” en la forma divulgada por la presente invencion, es posible encontrar un modelo personalizado que describa y prediga los niveles de glucosa de un paciente. El metodo de la presente invencion toma los datos historicos de un paciente que consisten en valores previos de glucosa carbohidratos tomados e insulinas inyectadas y, a partir de ellos, obtiene una expresion que puede usarse para predecir valores de glucosa en un futuro proximo.
Un primer aspecto de la invencion es un metodo para el modelado del nivel de glucemia que permite predecir la glucosa de un individuo. El metodo comprende los siguientes pasos:
i) obtener de un individuo unos datos que comprendan, para un tiempo k, al menos:
5
10
15
20
25
30
o unos niveles de glucosa Gl; o unos niveles de ingesta CH;
o unos niveles de insulina inyectada de efecto rapido IS e insulina inyectada de efecto lento IL;
ii) aplicar un Algoritmo Evolutivo a un conjunto de soluciones y a los datos anteriormente obtenidos;
iii) calcular una funcion GL de prediccion de la glucosa para un tiempo posterior (k+1) al tiempo k, tal que:
GUk + 1) = f(Gi,CH,lS,lL).
El paso ii) adicionalmente comprende llevar a cabo los siguientes sub-pasos:
a) generar el conjunto de soluciones con N-soluciones aleatorias donde cada solucion esta formada por una cadena de caracteres (cromosoma);
b) calcular N-expresiones GLk para k=1,...,N obtenidas mediante la decodificacion del conjunto de las N-soluciones aleatorias aplicando una gramatica BNF y una funcion de mapeo;
c) calcular el error Ek que conlleva: calcular ek como la diferencia entre los datos obtenidos del paciente y las N-expresiones GLk; y, aplicar una funcion de fitness a cada uno de los errores anteriormente calculados ek; de tal forma que se obtiene para cada expresion GLk, un error asociado Ek;
d) seleccionar N-1 soluciones resultado de: tomar las N-soluciones y apartar la solucion de menor error Ek de las N-soluciones; enfrentar las N-1 soluciones tomadas de dos en dos, seleccionando la solucion de menor error Ek;
e) cruzar las N-1 soluciones anteriores mediante un algoritmo de probabilidad de cruce;
f) mutar un caracter de las N-1 soluciones anteriores mediante un algoritmo de probabilidad de mutacion;
g) anadir la solucion de menor error Ek apartada en el paso d) a las N-1 soluciones anteriores;
h) repetir los pasos c) a g) hasta cumplir una condicion de parada predefinida.
El algoritmo de probabilidad de cruce comprende:
i) tomar las N-1 soluciones de dos en dos;
6
5
10
15
20
25
30
ii) establecer una probabilidad de cruce entre 0 y 1;
iii) generar un numero aleatorio entre 0 y 1;
iv) si el numero aleatorio generado es mayor que la probabilidad de cruce, no hay cruce;
v) si el numero aleatorio generado es menor o igual que la probabilidad de cruce, se cruza parte de una solucion con parte de la otra solucion de tal forma que se mantiene la longitud de la cadena de caracteres.
Por otro lado, el algoritmo de probabilidad de mutacion comprende:
i) tomar las N-1 soluciones de una en una;
ii) establecer una probabilidad de mutacion entre 0 y 1;
iii) generar un numero aleatorio entre 0 y 1;
iv) si el numero aleatorio generado es mayor que la probabilidad de mutacion, no hay mutacion;
v) si el numero aleatorio generado es menor o igual que la probabilidad de mutacion, se muta uno o mas caracteres de la cadena de caracteres de tal forma que se mantiene la longitud de la cadena de caracteres.
Adicionalmente, la condicion de parada predefinida es al menos una de las siguientes
condiciones:
• maximo numero de iteraciones;
• convergencia: no mejora en un numero "p” de iteraciones;
• estar cerca de un optimo teorico.
Por otro lado, la funcion de fitness es una de las siguientes funciones (ver tabla 2):
• mmimos cuadrados F1 (Least Squares);
• error medio F2 (Average Error);
• error maximo F3 (Maximum Error);
• error cuadratico medio F4 (RSME);
• desviacion absoluta media F5 (MAD).
Objective
Fitness Function
Least Squares
= ELi
Average Error
K = w ZL «i
Maximum Error
F3 = max(ek), 1 < k < N
RSME
II M it* i-1- ft to
MAD
p _ 1 y^N efc x Z^k=1 GL(k)
Tabla 2.- Funciones de Fitness.
La prediccion de la glucosa anteriormente calculada se obterna a partir de cuatro datos 5 de entrada tomado del paciente. No obstante, el numero de datos de entrada puede ser variable hasta un total de veinticinco variables de entrada. Asi, la solucion GL(k + 1) de partida se ampliaria hasta tener una expresion como la siguiente:
GL(k + 1) = f(P,E,k,SI,IG,PG,CI,M,IC,IP,DI,OC,TI,FV,VI,PC,TE,FA,G(),C(), IS(),
10 IL(),F(),E(),Z)
donde el operador • representa cualquier instante actual o anterior en el tiempo y donde f es una funcion que se calcula mediante una gramatica BNF que comprende la siguiente forma:
15
<f> ::= <f><OP><f>
| (<f><OP><f>)
| <PREOP>(<f>)
| <V>
20 | <Z>
<OP> ::= +
|-
I*
5
10
15
20
25
30
|/
<PREOP> ::= SIN
COS
EXP
TAN
LOG
ABS
LN
TANH
COSH
SENH
DERIVADA_CON_RESPECTO_AL_TIEMPO DERIVADA_CUADRADO_CON_RESPECTO_AL_TIEMPO DERIVADA_TERCERA_CON_RESPECTO_AL_TIEMPO <V> ::= <P>
<A>
#{k}
<SI>
<IG>
<PG>
<CI>
<M>
<IC>
<IP>
<DI>
<OC>
<TI>
<FV>
<VI>
<PC>
<TE>
<FA>
#{G[k-<J>]}
5
10
15
20
25
30
|#{C[k-<J>]}
|#{IS[k-<J>]}
|#{IL[k-<J>]}
|#{F[k-<J>]}
l#{E[k-<J>]}
|#<Z>
<P> ::= "el peso del individuo en kg.”;
<E> ::= "edad del individuo en anos”;
<SI> ::= "unidades de glucemia que baja 1 unidad de insulina en mg/dl”;
<IG> ::= "mdice glucemico de la ingesta” (el de la glucosa es 1, y puede ser mayor o menor;)
<PG> ::= <D>.<D>
<CI> ::= <D>.<D>
<M> ::= 0
<IC> ::= 5
<IP> ::= 0
<DI> ::= 2
<OC> ::= 3
<TI> ::= 12
<FV> ::= 0.2
<VI> ::= 0.8
<PC> ::= 0.6
<FTSI> ::= +<D>.<D>
|-<D>.<D>
<J> ::= 0 |1 |2 |3
I ■■■
| "instantes de tiempo” (por ejemplo: 96 ^ 24 horas a intervalos de 15 minutos = 96 instantes de tiempo. En el caso de usar otro horizonte de prediccion u otro periodo de muestreo habria que modificar esta regla)
<Z> ::= <D>.<D>
5
10
15
20
25
30
<D> ::= 0 |1 |2 |3 |4 |5 |6 |7 |8 |9
donde los distintos parametros de entrada son:
P: peso actual en kg;
A: edad actual en anos; k: instante actual;
FSI: sensibilidad a la insulina o mg/dl que baja la glucemia por unidad de insulina;
IG: es el mdice glucemico;
PG: unidades protema/grasa: cantidad de alimento que aporta 100Kcal en forma de grasa y/o protemas, se mide en unidades;
CI: ratio Hidratos de carbono / insulina;
M: menstruacion , Si =1 o no=0;
IC: insulina Circulante, unidades de insulina;
IP: intervalo entre comienzo de la infusion de insulina prandial y comienzo de la ingesta, en intervalos de 15 minutos;
DI: tiempo de duracion de la ultima ingesta en intervalos de 15 minutos;
OC: orden en que se consumen los alimentos; (numero natural correspondiente a una fila en una tabla de posibles ordenaciones)
TI: tiempo desde la ultima ingesta en intervalos de 15 minutos;
FV: factor de variabilidad de absorcion, valor entre 0 y 1;
VI: variabilidad de la insulina, valor entre 0 y 1;
PC: preparation de la comida (fritos, asados, condimentos..), valor entre 0 y 1;
FTSI: factor transitorio de sensibilidad a la insulina, vendra determinado por el efecto de distintos tipos de enfermedades que tiene el paciente y por los farmacos que toma
5
10
15
20
25
30
el paciente, que aumentan o disminuyen la glucosa, y el efecto de la insulina. Lo definimos como un valor que va de -1 a 1;
Z: es una constante; en cuanto a historicos:
G() es el historico de la glucemia (o parte de el);
C() es el historico de carbohidratos;
IS() es la insulina de action corta;
IL() es la insulina de accion larga;
F() es el ejercicio fisico; y,
E() es el nivel de estres.
Respecto de la funcion de mapeo indicada anteriormente, esta comprende la siguiente expresion:
Choice^ = (CIV)MOD (# of choicesf)
donde Choicei es la election seleccionada para el no-terminal i, CIV es el codon que estamos decodificando, MOD es la funcion modulo y (# of choices^ es el numero de opciones posibles para la regla en el terminal i.
Hasta aqu queda descrito el metodo de la presente invention cuando partimos de cero. Es decir, no existe un modelo anterior de la presente invencion aplicado al paciente. En caso de existir un modelo anterior, metodo de la presente invencion, entre los pasos i) y ii), opcionalmente comprendia evaluar si es o no correcta la funcion GL (=modelo) de prediction de la glucosa.
En otro aspecto de la presente invencion, la presente invencion comprende un programa de ordenador para la ejecucion de un metodo para el modelado del nivel de glucemia la prediccion de la glucosa segun una cualquiera de la realizaciones descritas anteriormente o en el apartado “description de una o varias formas de realization de la invencion”.
En otro aspecto de la presente invencion, la presente invencion comprende un medio de almacenamiento que contiene un programa de ordenador para la ejecucion de un
12
5
10
15
20
25
30
metodo para el modelado del nivel de glucemia la prediction de la glucosa segun una cualquiera de la realizaciones descritas anteriormente o en el apartado “description de una o varias formas de realization de la invention”.
El ultimo aspecto de la presente invencion esta comprendido por un sistema computacional en el que se carga el programa de ordenador anteriormente descrito.
BREVE DESCRIPCION DE LAS FIGURAS
Figura 1.- Representa un diagrama de flujo para calcular el modelo de prediccion de la glucosa.
Figura 2.- Representa un diagrama de flujo para calcular el modelo de prediccion de la glucosa en una implementation web.
Figura 3.- Es el ejemplo de gramatica en BNF disenada para regresion simbolica.
Figura 4.- Es un primer ejemplo de gramatica BNF.
Figura 5.- Es un segundo ejemplo de gramatica BNF.
Figura 6.- Es un tercer ejemplo de gramatica BNF.
Figura 7.- Es un cuarto ejemplo de gramatica BNF.
DESCRIPCION DE UNA O VARIAS FORMAS DE REALIZACION DE LA
INVENCION
Seguidamente se realiza una description de una o varias formas de realizacion de la invencion que, de forma no limitativa, ayudan a la mejor comprension de la presente invencion.
La figura 1 muestra un diagrama de flujo del metodo de acuerdo con la presente invencion. Primeramente, se realiza una recogida de datos 1 durante un periodo de
5
10
15
20
25
30
tiempo determinado k, por ejemplo siete d^as. Los datos recogidos son al menos los niveles de glucosa GL, los niveles de ingesta CH y los niveles de insulina de efecto rapido IS y de efecto lento IL. Posteriormente, se evalua 2 si el modelo (=funcion GL) es correcto (si ya existe previamente un modelo). En caso afirmativo, se continua recogiendo datos. En caso contrario, se aplica un algoritmo evolutivo 3 consistente, basicamente, en personalizar una gramatica en formato BNF 4 mediante la aplicacion de una funcion de mapeo 5. Como resultado de la aplicacion del algoritmo evolutivo 3, se obtiene un nuevo modelo caracterizado por la funcion 6:
GL(k + 1) = f(Gl, CH, IS, IL)
que depende de los datos recogidos que son al menos GL, CH, IS e IL.
Los datos recogidos se pueden ampliar con una o varias variables de entrada hasta obtener un modelo caracterizado por una funcion con la siguiente expresion:
GL(k + 1) = f(P,E,k,SI,IG,PG,CI,M,IC,IP,DI,OC,TI,FV,VI,PC,TE,FA,G(),C(), IS(),
il(),f(),e(),z)
donde:
P: peso actual en kg;
A: edad actual en anos; k: instante actual;
FSI: sensibilidad a la insulina o mg/dl que baja la glucemia por unidad de insulina;
IG: es el mdice glucemico u;
PG: unidades protema/grasa: cantidad de alimento que aporta 100Kcal en forma de grasa y/o protemas, se mide en unidades;
CI: ratio Hidratos de carbono / insulina;
M: menstruacion (dias desde la ultima menstruacion), Si =1 o no=0;
IC: insulina Circulante, unidades de insulina;
IP: intervalo entre comienzo de la infusion de insulina prandial y comienzo de la ingesta, en intervalos de 15 minutos;
DI: tiempo de duracion de la ultima ingesta en intervalos de 15 minutos;
OC: orden en que se consumen los alimentos; (numero natural correspondiente a una
14
5
10
15
20
25
30
fila en una tabla de posibles ordenaciones)
TI: tiempo desde la ultima ingesta en intervalos de 15 minutos;
FV: factor de variabilidad de absorcion, valor entre 0 y 1;
VI: variabilidad de la insulina, valor entre 0 y 1;
PC: preparation de la comida (fritos, asados, condimentos..), valor entre 0 y 1;
FTSI: factor transitorio de sensibilidad a la insulina, vendra determinado por el efecto de distintos tipos de enfermedades que tiene el paciente y por los farmacos que toma el paciente, que aumentan o disminuyen la glucosa, y el efecto de la insulina. Lo definimos como un valor que va de -1 a 1;
Z: es una constante; en cuanto a historicos:
G() es el historico de la glucemia (o parte de el);
C() es el historico de carbohidratos;
IS() es la insulina de action corta;
IL() es la insulina de accion larga;
F() es el ejercicio fisico; y,
E() es el nivel de estres.
La figura 2 muestra un diagrama de flujo donde el metodo de la presente invention se encuentra implementado dentro de un sistema computacional que comprende una base de datos 7 y una aplicacion web 8, a traves de la cual, un paciente 9 puede introducir 11 en la base de datos 7 los datos correspondientes a los niveles de glucosa medidos por un medidor continuo de glucosa 10. El sistema computacional adicionalmente comprende unos medios computacionales 15 tales como memorias, microprocesadores, unidades de entrada/salida. Los medios computacionales 15 estan encargados de almacenar las gramaticas y procesar el algoritmo evolutivo para obtener el modelo o expresion matematica para GL(k+1) 6 con el que obtener la prediction de la glucosa 13. Los modelos computaciones 15 pueden ampliarse con medios computacionales opcionales 15’ que servirian para predecir la glucosa 14 e indicar los bolos de insulina en un tiempo futuro (por ejemplo 2 horas) combination la funcion GL(k+1) con los datos "instantaneos” de glucosa, ingesta prevista, ejercicio fisico e insulina pautada 12.
5
10
15
20
25
30
A continuation se detalla como se aplica el algoritmo evolutivo para modelar el nivel de glucemia en individuos mediante Programacion Genetica, y especialmente en sujetos con Diabetes Mellitus.
1. Aproximacion Evolutiva
El objetivo de la presente invention es encontrar una expresion que modele el nivel de glucosa de un paciente diabetico. Esta expresion debe ser obtenida, al menos, a partir de datos previos de glucosa, carbohidratos e insulina almacenados en un sistema o base de datos. Por lo tanto, estamos ante un problema similar al problema de la regresion simbolica. La regresion simbolica trata de obtener expresiones matematicas que reproduzcan un conjunto discreto de datos.
La Programacion Genetica (PG) ha demostrado ser efectiva en un alto numero de problemas de regresion simbolica, aunque tiene algunas limitaciones, que a menudo vienen del modo de representation como por ejemplo el "bloating”. Otro punto que hay que considerar es que en Programacion Genetica (PG), la evolution se produce en el fenotipo del individuo y no en su representacion (genotipo). Durante los ultimos anos, variantes de la programacion genetica, las gramaticas evolutivas han aparecido para proponer diferentes aproximaciones a la evolucion. La Gramatica Evolutiva (GE) permite la generation de programas de computador en un lenguaje arbitrario. Esto se consigue mediante la utilization de gramaticas para especificar las reglas de obtencion de programas. Espedficamente, la presente invencion utiliza gramaticas expresadas en la forma de BNF (Backus Naur form).
En contraste con los algoritmos geneticos, que trabajan con representacion de soluciones, la Gramatica Evolutiva GE trabaja (evoluciona) con un codigo genetico que determina el proceso de production de la solution. El proceso de traduction de codigo se determina por las Gramaticas representadas como BNF.
BNF es una notation tecnica para expresar gramaticas libres de contexto. Una representacion en BNF puede ser cualquier especificacion de un lenguaje completo o
5
10
15
20
25
30
un subconjunto de un lenguaje orientado al problema. Una especificacion BNF es un conjunto de reglas de derivation, expresadas en la forma:
<s^bolo> ::= <expresion>
Las reglas estan compuestas de secuencias de terminales y no terminales. Los s^bolos que aparecen a la izquierda son no-terminales, mientras que los terminales nunca aparecen al lado izquierdo. En este caso, se puede afirmar que <s^bolo> es no-terminal y, aunque no es una especificacion BNF completa, tambien se puede afirmar para la presente invention que <expresion> sera un no-terminal ya que siempre aparecen entre el par <>. Por tanto, en este caso, el no-terminal <simbolo> sera remplazado por una expresion. La operation de remplazo se representa con “::=”. El resto de la gramatica debe indicar las diferentes posibilidades.
Una gramatica esta representada por una 4-tupla {N, T, P, S}, siendo N el conjunto de no-terminales, T es el conjunto de terminales, P son las reglas de production para la asignacion de elementos de N a T, y S es un simbolo de comienzo que deberia aparecer en N. Las opciones dentro de una regla de produccion estan separadas por el simbolo “|”.
La Figura 3 representa un ejemplo de gramatica en BNF disenado para regresion simbolica. El codigo que representa una expresion consistira de elementos de un conjunto de terminales T. Estos han sido combinados con las reglas de la gramatica como se explica mas adelante.
Ademas las gramaticas pueden ser adaptadas para sesgar la busqueda del proceso evolutivo porque hay un numero finito de opciones de reglas de produccion, la cual limita el espacio de busqueda.
2. Proceso de Mapeo.
Como se ha mencionado anteriormente, la presente invencion aplica un algoritmo evolutivo para evolucionar genotipos, los cuales se representan como una cadena de
5
10
15
20
25
30
valores enteros. Cada genotipo mapea el s^bolo de comienzo a s^bolos terminales leyendo los codones, los cuales, en este ejemplo de realization, tienen una longitud de 8 bits. El proceso es similar al explicado en la section previa pero, en vez de hacer elecciones aleatorias, tomaremos las decisiones leyendo el genotipo. Cada codon es por tanto un valor entero del genotipo, el cual es procesado mediante la siguiente funcion de mapeo:
Choice^ = (CIV)MOD (# of choicesf)
donde Choicei es la election seleccionada para el no-terminal i, CIV es el codon que se esta decodificando, MOD es la funcion modulo y (# of choices) es el numero de opciones posibles para la regla en el terminal i.
La funcion de mapeo toma el valor entero del cromosoma, calcula el modulo respecto al numero de posibilidades de la regla y selecciona la option de acuerdo con el resultado. Dado que la funcion modulo devuelve valores entre 0 y (# of choices) - 1, la primera opcion corresponded al primer valor, 0, la segunda a 1, y asi sucesivamente. Por tanto, si una regla tiene solo una posibilidad, esta siempre sera seleccionada.
En el presente ejemplo de realizacion, el proceso de mapeado usa la gramatica de la Figura 3, disenada para resolver un problema de regresion simbolica y los problemas del modelo de la glucosa, a falta de particularizar el conjunto terminal, lo cual se describe en la siguiente seccion. Un individuo se compone de una serie de genes (valores enteros). Cada gen puede tomar un valor entre 0 y 255 ya que los codones son de 8 bits. Supongamos por ejemplo el siguiente individuo de 7 genes:
12 - 55 - 23 - 47 - 38 - 254 - 2
El simbolo comienzo es S = { expr }, por tanto la expresion de la solution comenzara con este no-terminal:
Solucion = <expr>
Para obtener el fenotipo aplicamos la funcion de mapeo al primer gen (CIV = 12) usando la regla del primer no-terminal de la expresion. En este punto solo aparece un
5
10
15
20
25
30
no-terminal, <expr>, el cual se corresponde con la regla I de la Figura 3. El numero de opciones en esa regla es tres. Por tanto, la funcion mapeo aplicada es:
12 MOD 3 = 0
Por lo que se selecciona la primera opcion, <expr> <op> <expr>, y se continua con el proceso de mapeo. La opcion seleccionada sustituye los no-terminales decodificados. Como resultado la expresion es, en este punto,:
Solucion = <expr> <op> <expr>
El proceso continuara con el siguiente gen, 55, el cual se emplea en decodificar el primer no-terminal de la expresion en su estado de desarrollo actual. A continuation se aplica de nuevo el mapeo, ahora a la regla I:
55 MOD 3 = 1
La segunda opcion, <pre_op> (<expr>), es entonces seleccionada. La expresion pasa a ser:
Solucion = <pre op> (<expr>) <op> <expr>
El siguiente gen, 23, pasa a ser descodificado. En este punto del proceso, el primer no-terminal que aparece en la expresion es <pre_op>. Por tanto, se puede aplicar la funcion de mapeo a la regla III, la cual tiene tres posibilidades:
23 MOD 3 = 2
Al tomar el valor 2 se selecciona la tercera opcion, el simbolo terminal Abs.
La expresion pasa a ser:
Solucion = Abs(<expr>) <op> <expr> El siguiente gen, 47, descodifica <expr> con la regla I:
5
10
15
20
25
30
47 MOD 3 = 2
Por lo que se selecciona la tercera opcion, <var>. La expresion pasa a ser:
Solucion = Abs(<var>) <op> <expi>
El gen 38 descodifica <var> con la regla IV:
38 MOD 2 = 0
Dicho valor selecciona la primera opcion, el no-terminal X.
Solution = Abs(X) <op> <expi>
El no-terminal <op> se descodifica con 254 y la regla II:
254 MOD 4 = 2
Este valor selecciona la tercera opcion, el terminal *.
Solucion = Abs(X) * <expi>
El siguiente gen, 2, descodifica <expr> con la regla I:
2 MOD 3 = 2
Este valor selecciona la tercera opcion, el no-terminal <var>.
Solucion = Abs(X) * <vai>
En este punto el proceso de transformation de genotipo a fenotipo ha agotado los codones. Es decir, se han utilizado todos los genes o codones pero no se ha llegado a una expresion con terminales en todos sus componentes.
5
10
15
20
25
30
La solucion es reusar los codones comenzando por el primero otra vez. Esto representa una novedad respecto de los algoritmos evolutivos distintos de las Gramaticas Evolutivas, del estado de la tecnica. De hecho es posible reutilizar los codones varias veces. Esta tecnica se conoce como "wrapping” y simula el fenomeno de solapamiento de genes que se da en muchos organismos. Reusar codones no es un problema ya que en Gramatica Evolutiva (GE), un codon siempre genera el mismo valor entero y, si se aplica a la misma regla, genera la misma solucion. Sin embargo, si los usamos con reglas diferentes obtendremos diferentes partes de fenotipos. Asi, las Gramaticas Evolutivas (GE) aseguran que un genotipo individual siempre produce el mismo fenotipo. Por tanto, el "wrapping” no supone un problema.
De esta manera, aplicando el "wrapping”, el proceso vuelve atras, al primer gen, 12, el cual se utiliza para decodificar <var> con la regla IV:
12 MOD 2 = 0
Este valor selecciona la primera opcion, el no-terminal X, dando lugar a la expresion definitiva del fenotipo:
Solucion = Abs(X) * X
En la siguiente seccion se describen cuatro gramaticas correspondientes a cuatro ejemplos de realization para representar diferentes espacios de busqueda para obtener expresiones que modelen los niveles de glucosa en sangre.
3. Description del modelo.
Para que un modelo sea completo, dicho modelo, para los niveles de glucosa, deberia basarse en factores observables asi como en otras caracteristicas ocultas e intrinsecas al organismo del paciente. Los factores observables son aquellos datos que ha recogido el paciente manualmente o un dispositivo automatico, mientras que los no observables deben ser inferidos. Por estos motivos, la presente invention propone un modelo que considera todos estos factores, aplicando Gramaticas
Evolutivas (GE) para inferir una expresion que caracterice el comportamiento de la glucosa en pacientes diabeticos.
3.1. Datos disponibles y modelo general de la glucosa.
5
El nivel del glucosa en un instante dado depende de varios factores, algunos de ellos intrinsecos al funcionamiento del organismo. En el caso de un paciente de diabetes, los mas relevantes son el nivel de glucosa que habia hasta la ultima medida, los carbohidratos ingeridos y la insulina inyectada. Estos factores estan incluidos en los 10 conjuntos de datos de nuestros pacientes. Es importante destacar que estos datos son faciles de recopilar para un paciente real. El valor de la glucosa se mide con analizadores de sangre, los carbohidratos se miden en unidades ingeridas a partir de las comidas diarias, y la cantidad de insulina asi como el tipo, son datos que el paciente obviamente conoce.
15
Para el primer ejemplo de realization, se han obtenido datos con un periodo de medicion entre dos consecutivos de 15 minutos a lo largo de 24 horas. La Tabla 1 muestra el conjunto de datos obtenido para un paciente "X1”. En cada fila de la tabla k se representa el tiempo, donde k = 1 son las 00:00AM, GL es el nivel de glucosa en 20 dicho instante, CH las unidades de carbohidratos ingeridas, IS la insulina de efecto rapido inyectada e IL la de efecto lento.
5
10
k
GL CH IS IL
1
209.1453 0 0 0
2
209.1453 0 0 0
3
205.79354 0 0 0
4
Q02.5G395 0 Q 0
5
199.43946 0 Q 0
6
196.41567 0 0 0
7
193.49677 0 0 0
S
190.69246 0 Q 0
9
188.01547 0 Q 0
IQ
185.47971 0 Q 0
ii
183.09885 0 Q 0
12
180.88533 0 0 0
13
178.84963 0 Q 0
14
176.9999 0 Q 0
IS
175.34167 0 Q 0
16
173.87786 0 0 0
17
172.60884 0 0 0
13
171.53263 0 0 0
19
170.6451 0 Q 0
20
169.94031 0 Q 0
21
169.41076 0 0 0
22
169.04771 0 0 0
23
168.84148 0 Q 0
24
168.78173 0 Q 0
25
168.85766 0 Q 0
26
169.05827 0 Q 0
27
169.37254 0 0 0
2S
169.78957 0 Q 0
29
170.29872 0 Q 0
30
170.88974 0 Q 0
31
171.55425 0 0 0
32
172.27976 0 3 12
33
173.05923 30 Q 0
k
GL CH IS IL k GL CH IS IL
34
174.09018 0 0 0 6G 272.82541 0 0 0
35
176.68898 0 0 0 67 271.4209 0 0 0
36
184.17896 0 0 0 68 272.60383 0 0 0
37
195.61325 0 0 0 69 271.58261 0 0 0
38
209.11478 0 0 0 70 268 30335 0 0 0
39
223.51534 0 0 0 71 263 63006 0 4 0
40
237.54628 0 0 0 72 258.18738 0 0 0
41
247.25104 20 0 0 73 252.2917 30 0 0
42
250.72465 0 0 0 74 246.13977 0 0 0
43
251.90543 0 0 0 75 240.98451 0 0 0
44
255.86031 0 0 0 76 241.19843 0 0 0
45
262.91532 0 0 0 77 246.19998 0 0 0
46
271.63911 0 0 0 78 254.31449 0 0 0
47
277.89942 0 0 0 79 264.42406 0 0 0
48
278.70943 0 0 0 80 275 21267 0 0 0
49
275.38173 40 0 0 81 282 61864 0 0 0
50
269.9759 0 0 0 82 284.42698 0 0 0
51
264.80613 0 0 0 S3 282.33176 0 0 0
52
264.5835 0 0 0 84 277.80323 0 0 0
53
269.03811 0 0 0 85 271.88307 0 0 0
54
276.56921 0 0 0 86 265 29768 0 0 0
55
286.01609 0 0 0 87 258.54258 0 0 0
56
296.54932 0 0 0 88 251.94544 0 0 0
57
307.58483 0 0 0 89 245.71299 0 0 0
58
317.78442 0 0 0 90 239.91877 0 0 0
59
322.9634 0 0 0 91 234.68683 0 0 IS
60
322.05895 0 0 0 92 230.03136 0 0 0
61
317.01482 0 0 0 93 225.93797 0 0 0
62
309.34854 0 0 0 94 222.23379 0 0 0
63
300.16725 0 0 0 95 218.78458 0 0 0
64
290.26909 10 0 0 96 215.4919 0 0 0
65
280.21928 0 0 0 97 212.29133 0 0 0
Tabla 1.- Ejemplo de datos tomados para un paciente "X1” para los valores GL, CH, IS IL.
El modelo propuesto nos proporciona los valores estimados de la glucosa, representados por GL. En cada iteracion, la glucosa estimada se obtiene usando los valores estimados anteriores, y los valores de los carbohidratos e insulina en dicho instante, formalmente:
GL(k + 1) = f(GL;CH; IS; IL); 1 < k< N (ec.1)
dondeGt(k + 1) es el futuro valor estimado para la glucosa, un instante posterior al actual, y el resto de variables tiene la misma interpretation que la anteriormente descrita. De esta manera el motor de la Gramatica Evolutiva (GE) deberia ser capaz de decidir el aspecto de f. Para guiar la busqueda necesitamos una gramatica que limite el espacio de busqueda y capture la dinamica de los niveles de glucosa en sangre. A continuation detallamos las gramaticas empleadas en la presente invention.
3.2. Gramaticas BNF para el modelado de los niveles de glucosa.
5
10
15
20
25
30
Siguiendo el modelo general mostrado en (ec.1), se han disenado cuatro gramaticas donde la glucosa estimada depende unicamente de factores observables. La incorporation de conocimiento del problema en la gramatica mejora el rendimiento de la exploration. As^ las gramaticas disenadas siguen los consejos de los medicos en el equipo de investigation. Segun sus indicaciones, el comportamiento esperado de la glucosa puede variar a lo largo del dia, por lo que se han anadido las posibles influencias en forma de ventanas de tiempo. En definitiva, hay cuatro gramaticas que mezclan las diferentes observaciones.
Gramatica 1
Es bien conocido que la ingesta de carbohidratos eleva la glucosa mientras que las inyecciones la disminuyen. Por este motivo en la primera gramatica los carbohidratos siempre suman mientras que la insulina siempre resta. Ademas permite utilizar cualquier valor anterior de la glucosa, los carbohidratos o la insulina al construir la expresion.
GL(k + 1)= fg(Gl (k-m))+fch(CH(k-m))-fin(IS(k-m); IL(k-m)); 0< m< k; (gr.1)
La forma concreta de fg, fch y fin se obtiene mediante GE con la Gramatica 1, mostrada en la Figura 4. Los tres terminos <exprgluc>, <exprch> y <exprins> se corresponden con fgi, fch y fin, respectivamente y son las expresiones que pueden usar prefijos (operandos) como aquellos de la regla IX, variables para cada uno de los terminos o combinaciones de ellos a traves de la regla VIII.
Gramatica 2
Esta gramatica es un caso particular de la anterior que limita el historico de valores de glucosa, carbohidratos e insulina al instante actual k y el anterior k-1. El modelo resultante tiene la expresion general:
Gl(k + 1)= fgl((TL (k-m))+fch(CH(k-m))-fin(IS(k-m); IL(k-m)); 0 <m <1; (gr.2)
5
10
15
20
25
30
La Figura 5 muestra la gramatica empleada. Simplemente hay que limitar a 00 y 01 los indices en las reglas III, V y VII.
Gramatica 3
Para dotar de mas libertad a la busqueda, se dejan libres las operaciones conectivas, ampliandolas a las operaciones aritmeticas basicas. La expresion general del modelo es (gr.3), donde f es la funcion que conecta las tres subexpresiones para la glucosa, carbohidratos e insulina.
Gl(k + 1)= f (fg(Gl(k - m)); fch(CH(k - m)); fn(IS(k - m); IL(k - m))); 0< m< k; (gr.3)
La gramatica 3 es la encargada de definir este modelo, el cual presenta una ligera modification en la regla I de la gramatica 1. Se trata de cambiar las operaciones fijas + y - por el no-terminal <op> y a continuation se define en la regla VIII. La figura 6 muestra la gramatica 3.
Gramatica 4
El modelo general es similar a la gramatica 2 pero anade libertad a funcion f que relaciona las subexpresiones de la glucosa, los carbohidratos y la insulina.
Gl(k + 1) = f(fgl(Gl (k - m)); fch(CH(k - m)); fn(IS(k - m); IL(k. m))); 0< m <1; (gr. 4)
Para ello la gramatica 4 es similar a la gramatica 2 pero dotando de libertad a las operaciones en la regla I. La gramatica se muestra en la Figura 7.
3.3. Evaluation fitness o aptitud (error ek)
Si las gramaticas limitan el espacio de busqueda de la Gramatica Evolutiva GE, la mision de las funciones de "fitness” (tambien conocidas como aptitud) es guiar la evolucion hacia una buena solucion. Para calcular el “fitness”, primero se obtiene la
25
serie temporal de la glucosa completa, GL, a partir del fenotipo generado por el genotipo del individuo y la gramatica empleada. En este paso la glucosa estimada en k se realimenta para estimar la glucosa en los siguientes k.
5 A continuation se mide el error ek, definido como la diferencia absoluta entre el valor real, en el conjunto de entrenamiento, y el valor estimado para cada k.
ek = \GL(k) - Gl(k)\, l<k<N
10 Finalmente se emplean las cinco funciones de fitness diferentes, basadas en el error ek, recogidas en la Tabla 2. Las funciones de fitness contenidas en la Tabla 2 son: F1 (mmimos cuadrados), F2 (error medio), F3 (error maximo), F4 (error cuadratico medio) y F5 (desviacion absoluta media).
Objective
Fitness Function
Least Squares
Fi = ELi
Average Error
^ = F EL *
Maximum Error
F3 = max(ek), 1 < k < N
RSME
MAD
P _ 1 eh N 1 GL{k)
15
Tabla 2.- Ejemplos de funciones de fitness.

Claims (11)

  1. 5
    10
    15
    20
    25
    30
    REIVINDICACIONES
    1.- Metodo para el modelado del nivel de glucemia mediante programacion genetica que comprende los siguientes pasos:
    i) obtener de un individuo unos datos que comprendan, para un tiempo k, al menos:
    o unos niveles de glucosa GL;
    o unos niveles de ingesta CH;
    o unos niveles de insulina inyectada de efecto rapido IS e insulina inyectada de efecto lento IL;
    ii) aplicar un Algoritmo Evolutivo a un conjunto de soluciones y a los datos anteriormente obtenidos;
    iii) calcular una funcion GL de prediccion de la glucosa para un tiempo posterior (k+1) al tiempo k, tal que:
    GL(k +1) = /(GL, CH, IS, IL)
    caracterizado por que el paso ii) adicionalmente comprende llevar a cabo los siguientes pasos:
    a) generar el conjunto de soluciones con N-soluciones aleatorias donde cada solucion esta formada por una cadena de caracteres (cromosoma);
    b) calcular N-expresiones GLk para k=1,...,N obtenidas mediante la decodificacion del conjunto de las N-soluciones aleatorias aplicando una gramatica BNF y una funcion de mapeo;
    c) calcular el error Ek que conlleva: calcular ek como la diferencia entre los datos obtenidos del paciente y las N-expresiones GLk; y, aplicar una funcion de fitness a cada uno de los errores anteriormente calculados ek; de tal forma que se obtiene para cada expresion GLk, un error asociado Ek;
    d) seleccionar N-1 soluciones resultado de: tomar las N-soluciones y apartar la solucion de menor error Ek de las N-soluciones; enfrentar las N-1 soluciones tomadas de dos en dos, seleccionando la solucion de menor error Ek;
    e) cruzar las N-1 soluciones anteriores mediante un algoritmo de probabilidad de cruce;
    f) mutar un caracter de las N-1 soluciones anteriores mediante un algoritmo de probabilidad de mutacion;
    5
    10
    15
    20
    25
    30
    g) anadir la solucion de menor error Ek apartada en el paso d) a las N-1 soluciones anteriores;
    h) repetir los pasos c) a g) hasta cumplir una condicion de parada predefinida.
  2. 2. - Metodo segun la reivindicacion 1, caracterizado por que el algoritmo de
    probabilidad de cruce comprende:
    i) tomar las N-1 soluciones de dos en dos;
    ii) establecer una probabilidad de cruce entre 0 y 1;
    iii) generar un numero aleatorio entre 0 y 1;
    iv) si el numero aleatorio generado es mayor que la probabilidad de cruce, no hay cruce;
    v) si el numero aleatorio generado es menor o igual que la probabilidad de cruce, se cruza parte de una solucion con parte de la otra solucion de tal forma que se mantiene la longitud de la cadena de caracteres.
  3. 3. - Metodo segun la reivindicacion 1, caracterizado por que el algoritmo de
    probabilidad de mutacion comprende:
    i) tomar las N-1 soluciones de una en una;
    ii) establecer una probabilidad de mutacion entre 0 y 1;
    iii) generar un numero aleatorio entre 0 y 1;
    iv) si el numero aleatorio generado es mayor que la probabilidad de mutacion, no hay mutacion;
    v) si el numero aleatorio generado es menor o igual que la probabilidad de mutacion, se muta un caracter de la cadena de caracteres de tal forma que se mantiene la longitud de la cadena de caracteres.
  4. 4. - Metodo segun la reivindicacion 1, caracterizado por que la condicion de parada predefinida es al menos una de las siguientes condiciones:
    • maximo numero de iteraciones;
    • convergencia: no mejora en un numero "p” de iteraciones;
    • estar cerca de un optimo teorico.
    5
    10
    15
    20
    25
    30
  5. 5. - Metodo segun la reivindicacion 1, caracterizado por que la funcion de fitness es una de las siguientes funciones:
    • mlnimos cuadrados;
    • error medio;
    • error maximo;
    • error cuadratico medio;
    • desviacion absoluta media.
  6. 6. - Metodo segun la reivindicacion 1, caracterizado por que la solucion GL(k + 1) tiene la siguiente expresion:
    GL(k + 1) = f(P,E,k,SI,IG,PG,CI,M,IC,IP,DI,OC, TI,FV, VI,PC, TE,FA,G(■),C(■), IS(■), IL(),F(),E(),Z)
    donde el operador • representa cualquier instante actual o anterior en el tiempo y donde f es una funcion que se calcula mediante una gramatica BNF que comprende la siguiente forma:
    <f> ::= <f><OP><f>
    | (<f><OP><f>)
    | <PREOP>(<f>)
    | <V>
    I <Z>
    <OP> ::= +
    |/
    <PREOP> ::= SIN
    |COS
    |EXP
    |TAN
    |LOG
    |ABS
    |LN
    5
    10
    15
    20
    25
    30
    TANH
    COSH
    SENH
    DERIVADA_CON_RESPECTO_AL_TIEMPO DERIVADA_CUADRADO_CON_RESPECTO_AL_TIEMPO DERIVADA_TERCERA_CON_RESPECTO_AL_TIEMPO <V> ::= <P>
    <A>
    #{k}
    <SI>
    <IG>
    <PG>
    <CI>
    <M>
    <IC>
    <IP>
    <DI>
    <OC>
    <TI>
    <FV>
    <VI>
    <PC>
    <TE>
    <FA>
    #{G[k-<J>]}
    #{C[k-<J>]}
    #{IS[k-<J>]}
    #{IL[k-<J>]}
    #{F[k-<J>]}
    #{E[k-<J>]}
    #<Z>
    <P> ::= "el peso del individuo en kg.”; <E> ::= "edad del individuo en anos”;
    5
    10
    15
    20
    25
    30
    <SI> ::= “unidades de glucemia que baja 1 unidad de insulina en mg/dl”;
    <IG> ::= “rndice glucemico de la ingesta” (el de la glucosa es 1, y puede ser mayor o menor;)
    <PG> ::= <D>.<D>
    <CI> ::= <D>.<D>
    <M> ::= 0
    <IC> ::= 5
    <IP> ::= 0
    <DI> ::= 2
    <OC> ::= 3
    <TI> ::= 12
    <FV> ::= 0.2
    <VI> ::= 0.8
    <PC> ::= 0.6
    <FTSI> ::= +<D>.<D>
    |-<D>.<D>
    <J> ::= 0 |1 |2 |3
    I -
    | “instantes de tiempo” (por ejemplo: 96 ^ 24 horas a intervalos de 15 minutos = 96 instantes de tiempo. En el caso de usar otro horizonte de prediccion u otro periodo de muestreo habria que modificar esta regla);
    <Z> ::= <D>.<D>
    <D> ::= 0 |1 |2 |3 |4 |5 |6 |7
    5
    10
    15
    20
    25
    30
    |8
    |9
    donde los distintos parametros de entrada son:
    P: peso actual en kg;
    A: edad actual en anos; k: instante actual;
    FSI: sensibilidad a la insulina o mg/dl que baja la glucemia por unidad de insulina;
    IG: es el Indice glucemico;
    PG: unidades protelna/grasa: cantidad de alimento que aporta 100Kcal en forma de grasa y/o protelnas, se mide en unidades;
    CI: ratio Hidratos de carbono / insulina;
    M: menstruacion , SI =1 o no=0;
    IC: insulina Circulante, unidades de insulina;
    IP: intervalo entre comienzo de la infusion de insulina prandial y comienzo de la ingesta, en intervalos de 15 minutos;
    DI: tiempo de duracion de la ultima ingesta en intervalos de 15 minutos;
    OC: orden en que se consumen los alimentos; (numero natural correspondiente a una fila en una tabla de posibles ordenaciones)
    TI: tiempo desde la ultima ingesta en intervalos de 15 minutos;
    FV: factor de variabilidad de absorcion, valor entre 0 y 1;
    VI: variabilidad de la insulina, valor entre 0 y 1;
    PC: preparation de la comida (fritos, asados, condimentos..), valor entre 0 y 1;
    FTSI: factor transitorio de sensibilidad a la insulina: valor de -1 a 1;
    Z: es una constante; en cuanto a historicos:
    G() es el historico de la glucemia (o parte de el);
    C() es el historico de carbohidratos;
    IS() es la insulina de action corta;
    IL() es la insulina de accion larga;
    F() es el ejercicio flsico; y,
    E() es el nivel de estres.
  7. 7. - Metodo segun la reivindicacion 1, caracterizado por que la funcion de mapeo comprende la siguiente expresion:
    Choicei = (CIV)MOD (# of choices
    donde Choicei es la eleccion seleccionada para el no-terminal i, CIV es el codon que estamos decodificando, MOD es la funcion modulo y (# of choices^ es el numero de 5 opciones posibles para la regla en el terminal i.
  8. 8. - Metodo segun la reivindicacion 1, caracterizado por que el metodo, entre los pasos i) y ii), opcionalmente comprende evaluar la funcion GL de prediction de la glucosa anteriormente calculada cuando existe un modelo de glucosa anteriormente calculado.
    10
  9. 9. - Programa de ordenador caracterizado por que comprende la ejecucion de un metodo definido de acuerdo con una cualquiera de las reivindicaciones 1 a 8.
  10. 10.- Medio de almacenamiento caracterizado por que comprende un programa de 15 ordenador definido segun la reivindicacion 9.
  11. 11.- Sistema computacional caracterizado por que en dicho sistema computacional se carga el programa de ordenador definido en la reivindicacion 9.
ES201331726A 2013-11-27 2013-11-27 Método para el modelado del nivel de glucemia mediante programación genética Active ES2540159B1 (es)

Priority Applications (2)

Application Number Priority Date Filing Date Title
ES201331726A ES2540159B1 (es) 2013-11-27 2013-11-27 Método para el modelado del nivel de glucemia mediante programación genética
PCT/ES2014/000190 WO2015079079A1 (es) 2013-11-27 2014-11-05 Método para el modelado del nivel de glucemia mediante programación genética

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES201331726A ES2540159B1 (es) 2013-11-27 2013-11-27 Método para el modelado del nivel de glucemia mediante programación genética

Publications (2)

Publication Number Publication Date
ES2540159A1 ES2540159A1 (es) 2015-07-08
ES2540159B1 true ES2540159B1 (es) 2016-03-09

Family

ID=53198407

Family Applications (1)

Application Number Title Priority Date Filing Date
ES201331726A Active ES2540159B1 (es) 2013-11-27 2013-11-27 Método para el modelado del nivel de glucemia mediante programación genética

Country Status (2)

Country Link
ES (1) ES2540159B1 (es)
WO (1) WO2015079079A1 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12205686B2 (en) * 2020-02-27 2025-01-21 The Cleveland Clinic Foundation Identifying patients for intensive hyperglycemia management
ES2900099A1 (es) 2022-01-12 2022-03-15 Univ Madrid Complutense Método y sistema para predicción de valores de glucosa y generación de alertas de hipoglucemia e hiperglucemia

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005113036A1 (en) * 2004-05-13 2005-12-01 The Regents Of The University Of California Method and apparatus for glucose control and insulin dosing for diabetics
US20080154513A1 (en) * 2006-12-21 2008-06-26 University Of Virginia Patent Foundation Systems, Methods and Computer Program Codes for Recognition of Patterns of Hyperglycemia and Hypoglycemia, Increased Glucose Variability, and Ineffective Self-Monitoring in Diabetes
US20110077930A1 (en) * 2008-02-12 2011-03-31 Alferness Clifton A Computer-implemented method for providing a personalized tool for estimating 1,5-anhydroglucitol
WO2010019919A1 (en) * 2008-08-14 2010-02-18 University Of Toledo Multifunctional neural network system and uses thereof for glycemic forecasting

Also Published As

Publication number Publication date
ES2540159A1 (es) 2015-07-08
WO2015079079A1 (es) 2015-06-04

Similar Documents

Publication Publication Date Title
CN112133439B (zh) 一种基于高斯过程的餐前胰岛素剂量个体化决策系统
Bhimireddy et al. Blood glucose level prediction as time-series modeling using sequence-to-sequence neural networks
Hidalgo et al. Modeling glycemia in humans by means of Grammatical Evolution
Bai et al. Intern-s1: A scientific multimodal foundation model
ES2755879T3 (es) Procedimiento y sistema para proporcionar tanto un valor de glucemia medio real estimado como un valor de glucohemoglobina (HbA1C) estimado a partir de mediciones puntuales estructuradas de glucemia
ES2644345T3 (es) Interfaz de entrada de información de paciente para un sistema de terapia
EP3359039B1 (en) Medical arrangements and a method for determining parameters related to insulin therapy, predicting glucose values and for providing insulin dosing recommendations
US20190156933A1 (en) Systems and methods for full body circulation and drug concentration prediction
RU2015143698A (ru) Система и способы для анализа данных гликемии и количественной оценки успешности или неуспешности инсулинотерапии
ES2540159B1 (es) Método para el modelado del nivel de glucemia mediante programación genética
CN114464291A (zh) 一种基于贝叶斯优化的mdi剂量建议系统
Mateják et al. Adair-based hemoglobin equilibrium with oxygen, carbon dioxide and hydrogen ion activity
Chalkis et al. Geometric algorithms for sampling the flux space of metabolic networks
Parra et al. Learning difference equations with structured grammatical evolution for postprandial glycaemia prediction
US20140089004A1 (en) Patient cohort laboratory result prediction
EP4562644A1 (en) Methods for improving the diagnosis of rare diseases using electronic health records data and systems for same
Yeo et al. Predictive machine learning model in intensive care unit patients with acute-on-chronic liver failure and two or more organ failures
CN119694501B (zh) 基于数字孪生的重症能量-蛋白质摄入量智能预测系统
Liu et al. Optimizing blood glucose predictions in type 1 diabetes patients using a stacking ensemble approach
Hermansen et al. Recent advances in statistical methodology applied to the Hjort liver index time series (1859–2012) and associated influential factors
Wu et al. Novel machine learning models for the prediction of acute respiratory distress syndrome after liver transplantation
Rastogi et al. Importance sampling to learn vasopressor dosage to optimize patient mortality in an interpretable manner
Singhvi et al. Decoding Diabetes: Harnessing AI to Accurately Predict Real-Time and Future Blood Glucose Levels for Diabetes Management Using Diet, Exercise, Insulin Intake, and Heart Rate Variability
Evans et al. Development and content validity of the advanced systemic mastocytosis symptom assessment form (AdvSM-SAF)
Agbedia-Ejughemre et al. 12620 Developing Hospital Protocols For Managing Patients With Hypertriglyceridemia-induced Acute Pancreatitis In Diabetic Ketoacidosis Hospitalizations

Legal Events

Date Code Title Description
FG2A Definitive protection

Ref document number: 2540159

Country of ref document: ES

Kind code of ref document: B1

Effective date: 20160309