WO2005041103A2 - Medical advisory system - Google Patents

Medical advisory system Download PDF

Info

Publication number
WO2005041103A2
WO2005041103A2 PCT/DK2004/000742 DK2004000742W WO2005041103A2 WO 2005041103 A2 WO2005041103 A2 WO 2005041103A2 DK 2004000742 W DK2004000742 W DK 2004000742W WO 2005041103 A2 WO2005041103 A2 WO 2005041103A2
Authority
WO
WIPO (PCT)
Prior art keywords
advisory
model
recommended action
models
medical
Prior art date
Application number
PCT/DK2004/000742
Other languages
French (fr)
Other versions
WO2005041103A3 (en
Inventor
Christian Liisberg
Jette RANDLØV
Jon Ulrich Hansen
Jens Ulrik Poulsen
Original Assignee
Novo Nordisk A/S
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 Novo Nordisk A/S filed Critical Novo Nordisk A/S
Priority to JP2006537066A priority Critical patent/JP2007512588A/en
Priority to EP04762959A priority patent/EP1683058A2/en
Publication of WO2005041103A2 publication Critical patent/WO2005041103A2/en
Publication of WO2005041103A3 publication Critical patent/WO2005041103A3/en
Priority to US11/410,450 priority patent/US20060253296A1/en

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
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/70ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to mental therapies, e.g. psychological therapy or autogenous training
    • 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

Definitions

  • the invention relates to a medical advisory system for providing recommendations to a user for actions to be taken.
  • a medical advisory system is a system which provides recommendations to a user based on a number of input parameters, e.g. parameters describing the physiological or medical state of the patient, parameters describing previous actions of the patient, or the like.
  • the present invention relates to a diabetes advisory system which outputs recommendations for choices of actions to be taken by a diabetes patient, e.g. a recommended medication, physical exercise, nutrition, etc.
  • Typical input parameters to such a system are the previously applied and/or expected medication, meals, exercise, etc.
  • US patent no. 5,822,715 discloses a diabetes management system that comprises a patient-operated apparatus programmed to predict the patient's future blood glucose values based on a measured present blood glucose value. Based on the predicted future value, the apparatus determines a corrective action to be taken by the patient, if the predicted blood glucose value lies outside a target range.
  • a medical advisory system for providing recommendations to a user for actions to be taken, the system comprising: - input means for receiving a number of input parameters; - processing means configured to determine from at least the input parameters a recommended action to be taken; and - output means for presenting information about the determined recommended action to a user; wherein the processing means is configured to implement a plurality of mathematical advisory models each adapted to generate a respective model output from the received input parameters; and wherein the processing means is configured to determine the recommended action from the model output of one or more of the plurality of mathematical advisory models.
  • the reliability of the recommendations is improved, since unsatisfactory or even incorrect recommendations generated by one model may be detected and/or compensated by another one of the plurality of models.
  • an overall improvement of the reliability is achieved, even in situations, e.g. for ranges of the input parameters, where the performance of one of the mathematical models is unsatisfactory.
  • the plurality of mathematical advisory models comprises at least a first advisory model and a fall-back model; the processing means is configured to select one of the first advisory model and the fall-back model based upon at least one of an input to and a model output of at least the first advisory model; and the processing means is further configured to determine the recommended action from the selected model.
  • the processing means determines whether to accept the recommendation of the first advisory model or whether to use a fall-back model. It is an advantage that the performance of the first advisory model is supervised, resulting in an improved reliability and verifiability of the system.
  • the processing means is configured to determine a reliability measure for a model output of at least the first advisory model; and the processing means is further configured to determine the recommended action from at least the first advisory model, if the determined reliability measure is above a predetermined threshold, and to determine the recommended action from said fall-back model, if the determined reliability measure is below the predetermined threshold.
  • the fall-back model comprises a rule- based fall-back model, thereby allowing a systematic validation of the fallback model.
  • another verified fall-back model having a verified performance may be used, e.g. a model where the output for each possible set of input values has been verified.
  • the fall-back model is non- adaptive, the performance of the fall-back model is ensured to remain constant over time.
  • the system comprises a layered architecture including an advanced prediction module and a simple, preferably rule-based, fall-back module.
  • the system further comprises a supervision module which monitors the performance of the advanced prediction module and determines a reliability measure for the performance. If, for a given set of input data, the reliability measure is below a certain threshold, the input data are fed into the fall-back system instead.
  • rule-based model is intended to comprise any model comprising a set of predetermined rules assigning respective recommended actions to each of a set of predetermined ranges of parameters.
  • the rule-based fall-back system comprises an exhaustive list of ranges of input parameters and respective recommended fall-back actions for each of the ranges of input parameters, thereby allowing a complete and systematic validation of the system.
  • such rule-based models are implemented in the form of one or more tables, thereby further facilitating a systematic model validation.
  • the term reliability measure is intended to comprise any quantity that is indicative of a probability and/or confidence and/or the like that the generated recommended action is correct.
  • the reliability measure is a quantity derived from at least one of the input to and/or the output from one or more of the plurality of models. For example, some models generate continuous values to a number of candidate actions and select an action based on the generated values, e.g. an action having a highest value. In such models, the relative magnitude of the output values of the selected action compared to the other candidate actions is a measure of confidence in the selected action. Further examples of such reliability measures comprise a result of a sensitivity analysis of a model output, a result of a comparison of outputs from several models, e.g.
  • the processing means is adapted to determine the reliability measure from a comparison of at least a first model output of the first advisory model with at least a second model output of a second one of the plurality of mathematical advisory models, an accurate reliability measure is achieved.
  • Other examples of reliability measures may be based at least in part on the model inputs, e.g. by comparing one or more of the input parameters with a range of inputs within which the model is trusted to generate reliable results, and/or by determining any missing inputs, and/or the like.
  • Yet further examples of reliability measures utilise historical information, e.g. previous model inputs and/or outputs and/or received user feedback for previous recommendations.
  • the reliability of the advisory model may be multiplied with a certain penalty factor during a subsequent prediction for the same or similar input parameters.
  • reliability measures include a comparison of the model output with a verified model or set of rules, e.g. established/recognised clinical guidelines for a physiological situation.
  • mathematical advisory model is intended to comprise any computer-implemented mathematical process which receives a number of input parameters and determines a recommended action based on the received input parameters and, optionally, a number of model parameters.
  • models include statistical models, neural network models, reinforcement models, physiological models, or the like.
  • At least one of the plurality of mathematical advisory models comprises a prediction module for predicting a future value of a physiological parameter; and a control unit for determining a recommended action from at least the predicted future value of the physiological parameter. Consequently, in this embodiment, one or more of the plurality of models determine a predicted future physiological parameter, e.g. blood glucose, and determine a recommended action based on the prediction, e.g. by comparing the predicted value with a target value, a target range, or the like. It is an advantage that the model provides a prediction of the future value of the physiological parameter, thereby allowing the system to provide the predicted value as additional information to the user.
  • a predicted future physiological parameter e.g. blood glucose
  • the user may make a decision about the action(s) to be taken based on the recommendation generated by the system and based on the predicted physiological value.
  • Providing the predicted value of the future physiological parameter as additional information to the user further provides an implicit explanation for the recommended action to the user, thereby increasing the amount of trust a user may have in the given recommendation and, thus, increasing the likelihood that the user actually would follow the recommendation.
  • the system generates a recommended action from the model outputs of a plurality of mathematical models.
  • the models are operated as an ensemble or committee of models.
  • the processing means is adapted to determine respective model outputs of each of at least a subset of the advisory models, the subset comprising a plurality of mutually different models, and to determine the recommended action from a combination of the determined model outputs.
  • each model may generate a recommendation for an action, and the system selects the action as overall recommended action which has received the majority of votes. It is an advantage that the output of an ensemble or committee of models improves the reliability of the overall output. It is a further advantage that a measure of reliability of the overall model output can be established from the degree of dissimilarity of the individual model outputs.
  • the plurality of models is operated as a hierarchy of models.
  • the system may select the output generated by one model or a group of models as recommended action based on a reliability measure of the corresponding model output(s).
  • the mathematical model comprises model parameters that are adaptable in order to improve the quality of the mathematical model.
  • the model parameters may be adapted by a suitable adaptation process e.g. based on a comparison of the model output and a reference value.
  • a reference value may be a measured value of the physiological parameter at a predetermined future time.
  • the reference value may be a recommended action determined by a human expert, e.g. a physician.
  • Examples of such adaptive models are models that are adapted based on a
  • adaptive models include neural network models which may be updated by so-called learning algorithms such as the back-propagation algorithm or the like.
  • learning algorithms such as the back-propagation algorithm or the like.
  • case-based reasoning i.e. an adaptive model where new cases or examples are added to a case database, thereby increasing the probability of finding a close match to the situation being analysed.
  • At least one of the plurality of mathematical advisory models is an adaptive mathematical mode, thereby allowing to adapt the advisory system to a particular patient or even to continuously improve the recommendations by a model adaptation during operation.
  • At least one of the plurality of mathematical advisory models comprises a plurality of look-up tables, a corresponding plurality of address decoder modules, and a combiner module; wherein each look-up table includes a corresponding plurality of columns, each column comprising a plurality of table entries; wherein each of the address decoders is adapted to determine one of the plurality of columns of a corresponding one of the look-up tables; and wherein the combiner module is adapted to determine the model output of the mathematical advisory model from the table entries of the determined columns, thereby providing a system, that may efficiently be adapted to a given patient, e.g. by a continuing adaptation during operation.
  • the model output of each of the plurality of models may be an action recommended by that model.
  • the model output may be a rating of a number of candidate actions, assigning respective rating values to each of the candidate actions.
  • each model may generate a predicted value of a relevant physiological parameter, and the processing unit then determines a recommended action from the predicted values generated by the different models.
  • one or more of the models may generate a combination of the above outputs. Additionally, one or more of the models may generate further outputs, e.g. a confidence or reliability measure of the generated output.
  • the recommendations for actions determined by the system may be any action to be taken by the patient that may influence the medical/physiological state of the patient to be controlled. It is understood that examples of such actions include a "do nothing" recommended action, e.g. in a situation where no change in behaviour is recommended. It is further understood that, in some embodiments, one or more of the recommended actions may involve the consultation of a physician or other expert. In the example of controlling the blood glucose level of a patient, examples of recommended actions may include actions regarding insulin intake, the intake of food, the level of physical exercise, etc.
  • more than one action may be presented to the user at least in some situations.
  • the system may present a number of alternative actions, each of which providing the same or a similar desired effect.
  • the user may choose an action from the presented number of actions.
  • a recommended action may be a composite action, i.e. an action comprising a plurality of individual actions, e.g. "eat a snack and rest for 30 min.”, where the user is recommended to perform all the presented actions.
  • the system further presents the determined reliability measure for the presented recommended action(s). For example, in an embodiment where several alternative recommendations are presented, the user is provided with a further guidance in selecting one of the recommendations based on the reliability measures for the different presented actions. It is a further advantage that the presentation of the reliability measure increases the confidence which the user has in the system, thereby increasing the likelihood that the user actual follows the recommendations.
  • the system receives a number of input parameters, preferably parameters that provide information about the state of the system which is to be controlled, i.e. parameters that carry information relevant for the selection of the recommended action.
  • parameters preferably parameters that provide information about the state of the system which is to be controlled, i.e. parameters that carry information relevant for the selection of the recommended action.
  • input parameters include secondary parameters influencing the physiological parameter to be controlled, e.g. previous actions taken by the patient such as previous physical exercise, food intake, insulin dosages, etc.
  • measured parameters or sensor data such as a patient's heart rate, body or skin temperature, skin resistance, etc.
  • the input parameters may be input by the user and/or received from sensors, measuring devices and/or in any other suitable way.
  • the input means may comprise any circuitry or device suitable for receiving data. Examples of such input means comprise user-input devices, such as a keyboard, keypad, push buttons, pointing devices, touch screens, or the like. Further examples include interfaces for receiving data from a sensor or measuring device, e.g. from external devices or sensors, or from sensors integrated into the advisory system. Yet further examples include data communications interfaces suitable for receiving data via a communications network, e.g. a wireless network or a wired network.
  • a communications network e.g. a wireless network or a wired network.
  • the processing means may include any circuit and/or device suitably adapted to perform the above functions.
  • the processing means may comprise a general- or special-purpose programmable microprocessor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Programmable Logic Array (PLA), a Field Programmable Gate Array (FPGA), a special purpose electronic circuit, etc., or a combination thereof.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • PDA Programmable Logic Array
  • FPGA Field Programmable Gate Array
  • the output means may include any device or circuitry suitable for presenting information about a recommended action to a user.
  • the advisory may provide a display for displaying a recommended action.
  • the output means may include an audio output for providing an audible indication of the recommended action or for alerting the patient, e.g. of the presence of an urgent recommendation.
  • any other suitable means for indicating a result to the user and/or for alerting the user may be used, e.g. a vibrator or another means for providing a tactile output.
  • the output means, the input means, and the processing means are provided as part of a single device, e.g. a portable or a hand-held electronic device, thereby providing a convenient tool for providing recommended actions that can be operated independently of any remote devices.
  • a single device e.g. a portable or a hand-held electronic device
  • Examples of such devices include suitably programmed computers, e.g. a portable or hand-held computer, a Personal Digital Assistant (PDA), a special-purpose medical device, or the like.
  • PDA Personal Digital Assistant
  • Further examples include a suitably programmed mobile telephone or other communications device.
  • the advisory system comprises a user terminal and a remote data processing system.
  • the user terminal e.g. a hand-held electronic device such as a mobile telephone or other communications device, a PDA, or the like, comprises the output means and the input means, and suitable communications means for transmitting the input parameters to the remote data processing system and for receiving information about the recommended action.
  • the remote data processing system e.g. a computer of a hospital or the like, comprises communications means configured to receive/transmit the above data from/to the user terminal, and processing means configured to determine the recommended action from the input parameters.
  • the present invention can be implemented in different ways including the above-mentioned system, a method, and further product means, each yielding one or more of the benefits and advantages described in connection with the first-mentioned system, and each having one or more preferred embodiments corresponding to the preferred embodiments described in connection with the first-mentioned system and as disclosed in the dependant claims.
  • the invention further relates to a computer-implemented method of providing recommendations to a user for actions to be taken, the method comprising: - receiving a number of input parameters; - determining from at least the input parameters a recommended action to be taken; and - presenting information about the determined recommended action to a user; wherein determining the recommended action further comprises - providing a plurality of mathematical advisory models; - determining one or more respective model outputs of one or more of the plurality of mathematical advisory models and from the received input parameters; and - determining the recommended action from the determined one or more model outputs.
  • the features of the method described above and in the following may be implemented in software and carried out in a data processing system or other processing means caused by the execution of computer-executable instructions.
  • the instructions may be program code means loaded in a memory, such as a RAM, from a storage medium or from another computer via a computer network.
  • the described features may be implemented by hardwired circuitry instead of software or in combination with software.
  • fig. 1 shows a block diagram of functional components of an embodiment of a medical advisory system
  • fig. 2 shows a block diagram of functional components of another embodiment of a medical advisory system
  • fig. 3 shows a block diagram of functional components of yet another embodiment of a medical advisory system
  • fig. 4 shows a block diagram of an embodiment of an output module of a medical advisory system
  • fig. 5 shows a block diagram of an embodiment of a supervisor module of a medical advisory system
  • fig. 6 shows a block diagram of a medical advisory system
  • fig. 7 shows a block diagram of a medical advisory system comprising a hand-held electronic device and a remote data processing system
  • fig. 8 illustrates an advisory model based on look-up tables
  • figs. 9a-c illustrate examples of an input layer coding in the advisory system of fig. 8;
  • fig. 10 illustrates one of the look-up tables of the model of fig. 8.
  • fig. 11 illustrates an advisory model where the recommended action is determined on the basis of a prediction of a blood glucose value.
  • Fig. 1 shows a block diagram of the functional components of an embodiment of a medical advisory system.
  • the advisory system comprises an input module 101 , an advisory module 102, a supervisor module 103, a fall-back system 104, and an output module 105.
  • the input module 101 receives the input parameters such as input parameters provided by a user and/or input parameters provided by a measuring device, a sensor, and/or any other external system.
  • the input module may perform one or more pre-processing steps on one or more of the input parameters. Examples of such pre-processing steps include, analogue-to- digital conversion, noise reduction, e.g. by averaging over a predetermined time-window, calculation of correlations between two or more input parameters, etc.
  • the number and type of input parameters as well as the type of pre-processing depends on a specific implementation.
  • possible input parameters are parameters regarding medication, diet, physical exercise, physiological parameters such as a measured blood glucose level, heart rate, skin temperature, skin resistance, or the like.
  • the input module 101 feeds the received and, optionally, pre-processed input parameters 106 to the advisory module 102.
  • the advisory module 102 determines a recommended action from the input parameters 106 and according to a predetermined advisory model, i.e. an algorithm for calculating a recommended action from the received input data and, optionally, auxiliary data, e.g. time, historic data such as previously received input parameters, or information about the patient, e.g. the patients age, sex, weight, etc.
  • auxiliary data e.g. time, historic data such as previously received input parameters, or information about the patient, e.g. the patients age, sex, weight, etc.
  • Such algorithms include adaptive and non-adaptive mathematical models, such as neural networks, look-up tables, pattern recognition algorithms, multivariate statistical analysis, physiological models, or the like. Embodiments of adaptive mathematical models will be described in greater detail below.
  • the advisory module 102 further generates reliability information about the determined recommended action, e.g. a confidence level for a selection of a given action from a set of candidate actions. Examples of reliability measures will be described in greater detail below.
  • the advisory module 102 generates a model output 107 including information about the determined recommended action and the reliability information.
  • the advisory module 102 feeds the model output 107 including the recommended action and the reliability measure to the supervisor module 103.
  • the supervisor module determines from the reliability measure whether the determined recommended action is sufficiently reliable to be presented to the user. For example, when the reliability measure includes a confidence level, the supervisor module may compare the confidence level with a predetermined threshold. If the confidence level is larger than the threshold, the supervisor module feeds the recommended action determined by the advisory module to the output module 105, as indicated by connection 108.
  • the threshold may be set by a physician during an initial customisation process.
  • the advisory system further comprises a rule-based fall-back system 104.
  • the fall-back system 104 receives the input parameters 106 from the input module and generates a recommended action 109.
  • the rule-based fall-back system determines the action 109 from a set of predetermined, simple rules, e.g. a set of well-established rules that are known to provide safe recommendations for all possible values of input parameters.
  • the set of fall-back rules may be determined by a physician or other expert and stored in a table indexed by the input parameters.
  • the fall-back recommendation 109 determined by the fall-back system 104 is fed into the supervisor module 103.
  • the supervisor module 103 If the supervisor module 103 has determined that the recommended action determined by the advisory module 102 is not sufficiently reliable, the supervisor module feeds the fall-back recommendation 109 as final output 108 to the output module. Hence, even if the mathematical algorithm implemented by advisory module 102 does not provide a reliable recommendation, the advisory system is still able to provide a recommendation to the user, thereby avoiding frequent situations where the user does not receive a recommendation. This is an advantage, since situations where the advisory system does not provide a recommendation are dissatisfactory for the user, and they may even disturb the user or require further actions, such a an additional measurement of a blood glucose level, an additional consultation of a physician, or the like. Furthermore, the advisory system provides recommendations with a reliability that is known to be larger than a minimum reliability. In particular, the minimum reliability is determined by the reliability of the fall-back system and by the minimum reliability at which the supervisor module rejects the recommendation of the advisory model.
  • the output module 105 receives the final recommendation 108 and provides it to the user, e.g. via a user interface such as a display or the like.
  • Fig. 2 shows a block diagram of functional components of another embodiment of a medical advisory system.
  • the medical advisory system corresponds to the system described in connection with fig .1.
  • the system of fig. 2 comprises a plurality of advisory modules, designated 102a, 102b, ..., 102n, instead of just a single module.
  • the advisory system may comprise 2, 3, 4, 5, or even more advisory modules.
  • Each of the advisory modules receives the input parameters 106 and each of the advisory modules generates a corresponding model output, designated 107a, 107b 107n.
  • the model outputs are all fed into the supervisor module 103 which determines the reliability of the model outputs and generates a final recommendation from the model outputs or, if the supervisor module determines the model outputs not to be sufficiently reliable, from the fall-back system 104 as described above.
  • An embodiment of a supervisor module will be described in greater detail below.
  • the advisory modules implement different algorithms or algorithms parameterised by different choices of parameters, thereby allowing the supervisor module to determine the reliability of the model outputs from a measure of similarity of the outputs from the different models.
  • the advisory modules 102a, 102b, ..., 102n may require different input parameters then others.
  • the individual advisory modules may disregard the parameters that are not required by the respective algorithm.
  • the input module may feed different sets of input parameters to different advisory modules.
  • Fig. 3 shows a block diagram of functional components of yet another embodiment of a medical advisory system.
  • the medical advisory system corresponds to the system described in connection with fig.1.
  • the system of fig. 3 comprises an advisory module 102 implementing an adaptive mathematical model.
  • the advisory module 102 receives a set of input parameters 106 from the input module 101 and generates a model output 107 including information about a recommended action determined by the advisory module.
  • the advisory module 102 implements an adaptive mathematical model and comprises a model module 301 , a data storage 304 for a set of model parameters, and an adaptor module 303.
  • the model module 301 further stores the model output in the data storage 304 for use in a subsequent model adaptation.
  • the received input parameters 106 are also stored in the data storage 304, for example together with a timestamp.
  • the input module 101 further receives one or more reference values 306 and feeds them to the adaptor module 303.
  • the reference values may comprise recommended advices determined by a physician or other expert for a given medical state of the patient.
  • the advisory model comprises a prediction of a physiological parameter
  • the reference value may comprise an actual measurement of that physiological parameter at a time for which the parameter has been predicted by the model.
  • the reference value(s) may be provided by the user via a user interface of the advisory system.
  • the user may enter a measured value of a physiological parameter and the time of measurement, or the user may indicate the recommended action received from a physician and a time for which that recommendation applies.
  • the advisory system may even request the user to enter a reference value, e.g. in a situation where a model output was determined to be unreliable, and the system has output a fall-back recommendation.
  • the advisory system may be continuously adapted to the particular user, thereby improving the quality of the recommendations during operation.
  • the supervisor module 103 and the fall-back system 104 it is ensured by the supervisor module 103 and the fall-back system 104, that the advisory module does not produce unreliable results, e.g. do to erroneous reference values.
  • one or more of the plurality of advisory modules may implement an adaptive model as described in connection with the advisory module of fig. 3.
  • Fig. 4 shows a block diagram of an embodiment of an output module of a medical advisory system.
  • the output module receives the recommended action 108 generated by the supervisor module and presents it to the user as described above.
  • the output module 105 comprises a final output filter 401 that implements a final level of output validation.
  • the output filter 401 compares the recommended action 108 with a set of validation rules stored in a data storage 402. If the output filter determines that the recommended action 108 is in accordance with the validation rules, the output filter 401 presents the recommendation to the user via a suitable user interface. Otherwise, if the output filter determines that the recommended action 108 is not in accordance with the validation rules, the output filter 401 presents a corresponding message to the user, e.g.
  • the final output 403 presented to the user comprises a valid recommended action or a suitable error message or invitation for alternative actions.
  • the validation rules determine whether a certain recommended action is reasonable in a given context, e.g. at a given time of day, a given time relative to other events, e.g. relative to meals, relative to previously recommended actions, or the like.
  • validation rules include rules that prevent certain recommendations, such as “eat a snack” or “do exercise for 20 minutes” to be repeated several times and rules that prevent such recommendations to be given at certain times of the day, e.g. during sleeping hours.
  • a list of validation rules may include one or more of the following examples: "If it is sleeping hours, do not recommend exercise.”
  • the rules may be formulated in a formalised language.
  • Fig. 5 shows a block diagram of an embodiment of the supervisor module 103 shown in fig. 2.
  • the supervisor module 103 receives the model outputs 107a, 107b, ..., 107n from a number of different advisory modules.
  • the model outputs are fed into a combiner module that determines a recommended action from the received model outputs. For example, in an embodiment where each of the model outputs 107a, 107b 107n indicates a recommended action determined by the corresponding advisory module, the combiner module may determine the resulting recommended action as a majority vote of the recommendations of the advisory modules.
  • the combiner module may determine an average of the individual model outputs representing an improved prediction. From the improved prediction, the combiner module may determine a recommended action adequate for the predicted blood glucose value.
  • the resulting combined recommendation is fed into a selection module 504.
  • the supervisor module further comprises a reliability module 502.
  • the reliability module receives the model outputs 107a, 107b, ..., 107n, and determines a measure of reliability from the model outputs.
  • the reliability module 502 compares the reliability measure with a threshold value stored in a data storage 503. If the reliability measure is higher than the threshold value, the reliability module controls the selection module 504 to select the recommended action determined by the combiner module 501 as the resulting output 108. Otherwise, i.e. if the reliability measure is below the threshold, the reliability module controls the selection module 504 to select the fall-back recommended action 109 determined by the fall-back system 104, as described above. Hence, the selection module 504 further receives the output 109 of the fall-back system 104.
  • the reliability measure may be determined as the degree of consensus between the individual models, e.g. expressed as the number of votes for the winning recommendation, or the number of the votes for the winning recommendation relative to the next-highest number of votes, or the like.
  • the reliability measure may e.g. be the variance of the individual predictions.
  • Fig. 6 shows a block diagram of a medical advisory system.
  • the medical advisory system 600 comprises a central processing unit 601 , a memory 602, and a user interface unit 603, both connected to the central processing unit, e.g. via a bus system.
  • the user interface unit allows a user to enter input parameters into the system as well as further inputs such as user-commands invoking and/or controlling the various functions of the advisory system.
  • the user interface comprises a user-input unit such as a keypad, a keyboard, a number of push buttons, a pointing device, a touch screen, or the like.
  • the user interface is further controlled to present the recommended action and, optionally, additional information to the user.
  • the user interface comprises an output unit, e.g. a display, an audio output device, or the like.
  • the central processing unit 601 controls the operation of the advisory system and, in particular, implements the advisory modules, the supervisor module, and the fall-back system described above and below.
  • the memory 602 is adapted to store the computer program(s) implementing the advisory modules, the supervisor module, and the fall-back system described above and in the following, as well as any parameters or other data used by these programs, e.g. model parameters of the advisory models, threshold parameters for the supervisor module, rule tables for the fall-back system, and/or the like.
  • the memory is further adapted to store the input parameters, e.g. as a log file for subsequent analysis or to be used by an adaptive model.
  • the memory block 602 may comprise one or more different memory devices, storage media, or memory sections, e.g. a RAM, a ROM, an EPROM, a removable storage medium, and/or the like.
  • the advisory system may comprise one or more further interface units 604 for receiving information, e.g. sensor data from external sensors, and/or for sending/receiving information e.g. to/from a remote computer.
  • information e.g. sensor data from external sensors
  • sending/receiving information e.g. to/from a remote computer.
  • data provided by the advisory system to a central computer or database server for further processing may include information about the input parameters, the recommended actions, log data, and/or the like.
  • the advisory system may be implemented as a single device, e.g. a suitably programmed personal computer.
  • the advisory system may easily be carried around by the user and is thus available irrespective of the user's location etc.
  • the advisory system may be implemented as a distributed system, e.g. a client/server system. An example of a client server system is described in connection with fig. 7.
  • Fig. 7 shows a block diagram of a medical advisory system comprising a hand-held electronic device and a remote data processing system.
  • the system comprises a hand-held device 700 and a server computer 705.
  • the hand-held device e.g. a mobile telephone, a PDA, or the like, provides a display 701 and a keypad 702, or another suitable user-interface for receiving input parameters and for presenting the recommended action to the user.
  • the hand-held device sends the received input parameters via a communications network 704 to the server computer 705.
  • the communications network may be a cellular telecommunications network.
  • the data may be communicated between the hand-held device and the server computer via a short message service, via a suitable network protocol, or the like.
  • the server computer 705 comprises a suitable communications interface 706 for receiving data from the hand-held device and for sending data to the hand-held device.
  • the server computer 705 further comprises the processing unit 601 and the memory or other storage means 602 as described above.
  • the advisory system may be incorporated in a telemedicine system, where a central computer provides a number of services to a user, and even allows supervision by or communication with a physician or other health personnel.
  • Fig. 8 illustrates an advisory module based on look-up tables.
  • the advisory module generally designated 102 receives one or more input parameters 106 and generates a model output 107 as described above.
  • the advisory module comprises an input coding block 801 that generates a bit pattern 802 representing the input parameters).
  • a number of address decoders 803 identify respective columns of a number of look-up tables 806.
  • each look-up table is connected to the input via an address decoder.
  • Each address decoder 803 is connected to at least a subset of the bits of the bit pattern 802, e.g. between 5 and 20 bits.
  • the bit pattern 802 comprises a bit string representing the input values as exemplified by the bits labelled b1 , b, b3, b4, ..., bn , i.e. a string of ones and zeroes.
  • the address decoder labelled AC1 in fig. 8 is connected to the bits b1 , b2, and b4.
  • Each input variable is represented in a certain part of the bit pattern.
  • each input parameter may be encoded by a predetermined number of bits, e.g. 16, 32, or 64 bits. However, it is understood that in principle any bit resolution may be chosen for an input parameter. It is further understood that different input parameters may be encoded with the same or different bit resolutions.
  • Figs. 9a-c illustrate examples of an input layer coding in the advisory system of fig. 8.
  • the input parameters may be encoded into a bit representation in many ways.
  • figs. 9a-b illustrate examples of suitable coding schemes.
  • the coding scheme of fig. 9a is referred to as "thermometer coding", since the number of consecutive bits that are set to "1" correspond to the value of the input parameters.
  • This is exemplified in fig. 9a by a bit string 802 where the fraction 901 of bits is set to "1" while the fraction 902 is set to "0".
  • Fig. 9c illustrates an example of the input coding of symbolic input values, e.g. the identification of the type insulin administered, the type of food consumed, or the like.
  • Fig. 10 illustrates one of the look-up tables of the model of fig. 8.
  • the look-up table 806 is a matrix including rows 1002 and columns 1003.
  • a column is selected by the address decoder 803 based on the values of the input bit pattern, as exemplified by column 1004 in fig. 10.
  • the contents of the cells of the selected row are fed into the output block 809. There is one row for each possible recommended action and one column for each possible address that can be generated by the address decoder 803.
  • the address decoder 803 determines the address of one of the columns 1004 from the bit pattern, e.g. directly, by a hash coding scheme, or by any other suitable method.
  • each look-up table may be considered as being indexed by a subset of the input bits. For example, when each bit pattern directly encodes one of the columns, and when n connections from the input bit pattern to the address decoder 803 are used, then the number of addressable columns in the corresponding look-up table is 2 n . As the number of columns grows exponentially with the number of connections, it is preferred to use a compression technique or sparse coding technique for the look-up table, thereby allowing an efficient addressing even for many connections.
  • the number of connections between the input bit pattern and the address decoder is the same for all look-up tables in the advisory module.
  • the length of the input bit string divided by the number of connections from the input bit string to each of the address decoders determines the minimum number of look-up tables needed to make connections to all of the bits in the input string.
  • the actual number of look-up tables used may be considerably larger, e.g. twice or three-times as high, as that minimum number.
  • the output block 809 comprises a number of summation units 1001 , each summation unit corresponding to a row of the look-up table, i.e. to one the possible recommended actions.
  • the mapping from the input parameters to the determined recommended action is determined by the content of the cells of the look-up tables.
  • the advisory system may be adapted to a specific patient, e.g. by an adaptation or "training" algorithm based on a set of training examples, each example comprising a set of input parameter values and the desired output, i.e. an indication of the desired recommended action for this set of input parameter values.
  • the advisory system based on look-up tables is trained according to the following procedure:
  • all the cells in each of the look-up tables are set to zero.
  • some of the cells are marked or assigned a number, normally a positive integer.
  • the following steps are performed for each of the training examples: 1.
  • the input parameter values are pre-processed resulting in a corresponding input bit string, and the bit string is fed into each of the address decoders.
  • Each address decoder determines a corresponding column of the look-up table connected to that address decoder, based on the set of bits of the input bit string that are connected to that address decoder. 3.
  • the row that corresponds to the target recommended action for the present training example is selected.
  • the value in the cell that corresponds to the selected row and the selected column is incremented by one.
  • each cell corresponds to a binary value. In this case the value of the cell is incremented only the first time the cell is selected, corresponding to setting a flag, thereby providing a compact and efficient coding.
  • the training procedure described above is a "one pass" training process, thereby providing a fast training or adaptation. It is a further advantage that an initial training based on a set of training examples may subsequently be supplemented by additional examples. Hence, an incremental training, or even an "untraining" of selected examples, is possible.
  • the advisory module Once trained, i.e. once the values of the cells of the look-up tables are determined, e.g. according to the above procedure, the advisory module performs the following process during operation: 1. A set of input parameter values is fed into the input coding block 801. 2. The input coding block pre-processes the input parameter values and generates an input bit string 802. 3.
  • each look-up table 806 For each look-up table 806, a corresponding sub-set of input bits is fed into the corresponding address decoder 803. 4. Each address decoder calculates a column number based on the bits represented at its connections with the input bit string, and selects that column in the corresponding loo-up table 806. 5. For each look-up table, each cell in the corresponding selected column that has a value greater than zero increments the corresponding one of the summation units 1001 of the output block 809.
  • the accumulated value in each summation unit corresponds to a number of votes for the corresponding recommended action.
  • the largest possible number of votes is the number of look-up tables in the advisory module, and the smallest number is zero.
  • the recommended action with the most votes is represented as the output by the system, corresponding to a so-called "winner-takes-all" procedure. If more than one recommended actions have received the same number of votes, i.e. the same value of the corresponding summation unit, they are all represented as outputs.
  • the output block 809 directly determines one or more reliability measures based on the contents of the summation units.
  • a confidence measure and an ambiguity measure are examples of reliability measures that can immediately be calculated by the output block 809.
  • a confidence measure may be considered as answering the question: "How much do we believe in the result?"
  • the output block 809 calculates a confidence measure from the value of the summation unit of the "winner”, i.e. the summation unit having the largest value, relative to the largest possible value, i.e. the number of look-up tables, i.e. according to
  • Si is the largest summation value
  • NLUT is the total number of lookup tables.
  • An example of such a confidence level is illustrated in table 1 below.
  • the output block 809 calculates an ambiguity measure from the value of the summation unit of the "winner", i.e. the summation unit having the largest value, relative to the value of the summation unit having the second-largest value.
  • the ambiguity value L a biguity may be expressed as
  • Lambiguity (Si - S 2 ) / NLUT, where Si is the largest summation value, S 2 is the second-largest value, and NLUT is the total number of look-up tables.
  • Si the largest summation value
  • S 2 the second-largest value
  • NLUT the total number of look-up tables.
  • the confidence and ambiguity levels are related to expected success rates, i.e. to the percentage of correctly determined recommended actions for results having the corresponding confidence/ambiguity level. It is understood that the above tables are merely intended as illustrative examples.
  • reference ambiguity levels may be determined by the following method:
  • a one-pass training of the look-up table advisory module is performed as described above.
  • a full leave-one-out cross-validation on all the training examples is performed by unlearning, testing and relearning the examples one by one.
  • the advisory system is trained with all but one examples and tested on the example that was left out during training.
  • precise confidence and ambiguity levels can be calculated, e.g. by sorting the training examples in bins of vote intervals, and by calculating the error rate for each bin.
  • reliability measure may be determined according to the following equation:
  • the Cost_factor is a table or function that assigns a cost factor to each recommended action y.
  • Fig. 11 illustrates a diabetes advisory model for controlling the blood glucose value of a user, where the recommended action is determined on the basis of a prediction of the user's future blood glucose value.
  • the advisory module generally designated 102 receives one or more input parameters 106 and generates a model output 107 as described above.
  • the advisory module comprises a prediction module 1101 , a control module 1102, a data storage 1103, and an output module 1104.
  • the prediction module receives the input parameters, e.g. the blood glucose value at time to and information about actual and/or anticipated intake of food and/or insulin and/or actual/anticipated physical exercise within a predetermined period of time around to. From the input parameters, the prediction module calculates a predicted blood glucose value for a predetermined later time t
  • the prediction module may implement any suitable known prediction algorithm. Examples of such algorithms include an adaptive algorithm as described in V. Tresp et al., "Neural Network Modelling of Physiological Processes", in Hanson S. J. et al. (Eds.), Computational Learning Theory and Natural Learning Systems 2, MIT Press, 1994, the algorithm described in US patent no. 5,822,715, or the like.
  • the predicted blood glucose value is fed into the control module 1102 which determines a recommended action based on the predicted blood glucose value and a predetermined control strategy stored in data storage 1103.
  • the determined recommended action is fed into the output module 1104 which generates the model output. Examples of control strategies for blood glucose control are disclosed in R.
  • the prediction module further determines a reliability measure 1105 and feeds the reliability measure into the output module 1104 which may incorporate the reliability measure in the model output 107.
  • the prediction module may implement a plurality of different prediction algorithms. The predicted blood glucose value of such an ensemble may be determined as the average of the individual predictions and the reliability measure may be determined as the variance of the individual predictions.
  • the prediction module and/or the control module may be adaptive.
  • An example of an adaptive control strategy is disclosed in R. Bellazzi et al. (ibid.)
  • Other examples of advisory models are based on a physiological model of the physiological process in question.
  • physiological models in the context of diabetes management include the models described in US 5,822,715 and in "A physiological model of glucose-insulin interaction in type 1 diabetes mellitus", by E.D. Lehmann and T. Deutsch, J. Biomed. Eng. 1992, Vol. 14, May, pages 235-243.
  • the reliability measure is based on a sensitivity analysis, i.e. an analysis of how sensitive the system is to small changes in the input variables.
  • a sensitivity analysis may be regarded as a "what if type of analysis where all the input variables are systematically changed the by a small step in "all directions” compared to the actual input, and the change in output (if any) is observed.
  • a gradient map of the output of the advisory model or the output of the prediction module is determined at a given input point x.
  • the gradient map is used to make an assessment of the systems reliability and/or brittleness in the given input point.
  • Table 3 Example of the assessment of sensitivity of an advisory system.
  • the assessment table can be refined using more than two different values (ie "reliable”, “somewhat reliable” and “not reliable”) for the column parameters, thereby yielding a fuzzy assessment.
  • the rule-based fall-back system comprises an exhaustive set of state description points, e.g. defined by a set of conditions. Each point is associated with at least one valid recommendation.
  • the conditions for the state description points may comprise simple conditions and be related to a single recommendation, e.g. "if condition A then action B".
  • the system may comprise more complex rules comprising more than one condition and/or being associated to more than one recommendation.
  • An example of such a complex rule may have the following structure: "If condition A and condition b and condition c and , then action x or action z". It is understood that an increasing complexity of rules may give rise to a combinatorial explosion of the number of rules.
  • complex set of rules are processed by defining a set of state descriptor variables.
  • the set of state descriptor variables is selected as a subset of all the parameters available to the system.
  • the set of state descriptor variables is selected such that the amount of information provided by the selected set is high and, at the same time, redundant information and noise is eliminated. For example this may be achieved by an incremental selection process during the design of a rule-based fall-back system.
  • a subset of state descriptor variables is selected that have a high correlation with the intended parameter to be controlled. Starting from this subset, additional state descriptors may be added, and the performance of the resulting system may be tested and compared with the system without the additional state descriptors.
  • the incremental process may be continued by adding one or more further variables. If the addition of further variables does not yield an improvement in performance, the process is stopped, and the previous subset is selected as the final set of descriptor variables.
  • each descriptor variable is defined such that its range is exhaustive, i.e. it covers the entire range of possible values, and mutually exclusive.
  • the term “mutually exclusive value” is intended to mean that, if a given value is assigned to a variable, no other values are possible at the same time. For example, if a state descriptor variable can take the values "low”, “medium”, and "high”, where each of the above values corresponds to an interval of measured values of a physiological parameter, these intervals should combine to the entire range of the physiological parameter, and the intervals should not overlap with each other.
  • BG blood glucose
  • This rule can be put into a table form as follows:
  • the BG measure is classified as "low”, “OK”, or "high”.
  • the description consists of four variables, which can take on three ("High”, “OK”, “Low”) or two ("yes", “no") values.
  • Table 4 illustrates an example of a set of rules and their corresponding conditions in a fall-back system:
  • table 4 is intended as an illustrative example of a set of rules that qualitatively tells what a type 1 diabetes patient should do in order to correct an out-of-normal range BG measurement. It is understood that, in a practical implementation, the ranges labelled “too high”, “OK”, “too low” may be replaced by actual blood glucose intervals. Similarly, an exercise, a meal, or insulin injection being “near” is preferably determined more precisely, e.g. within the next 15 or 30 minutes, the next hour, or the like. Furthermore, the actions may be defined more precisely, e.g. the terms “increase” and "decrease” may be qualified.
  • the total description space consists of 24 four- dimensional points. It is possible to assign an input variable the symbolic value "*", as e.g. in the first row of table 4. This is a wildcard or "don't care” value, and it means that, independently of what value is assigned to that variable in an input, the result remains the same. Hence, an example containing one or more "don't care” values can be expanded to all the possible input values contained in it.
  • the first rule implies that, if the BG value is "OK", the "do nothing" action is recommended irrespective of the other variables.
  • the set of rules may include additional and/or alternative rules including alternative or additional actions.
  • special actions may be used.
  • the set of rules may include a symbolic action labelled "N/A". This label is used to describe combinations of input values that are forbidden, do not exist, or do not make sense.
  • a rule-based fall-back system provides a number of advantages, including: - Clear design requirements and good design overview. - Easy implementation of rules or "wisdom" formulated in natural language. - It is possible to ensure that all possible description states are validated. - It is possible to ensure an exhaustive search for matches in the existing example base when a new example is given. - It is possible to make a list of all examples that have not been assigned a result value yet. - There exists a strategy for constructing a necessary and sufficient input space using this framework. - It is simple to execute the rule-based fall-back system on different platforms. - It is possible to assign a reliability measure to every example in the example base.
  • the size of the input space of a rule-based fall- back system is selected sufficiently small to allow the validation of every rule in the rule base.
  • the input space includes less than 500-1000 combinations.
  • the input space may be divided up in smaller modules, e.g. by using known techniques for optimal feature extraction.
  • the rule-based fall-back system searches for a match between the input pattern and one ore more of the rules and examples in the rule base. If the rule base is exhaustive, at least one match will be found. The result value(s) of the matching example(s) are presented as valid results. In embodiments where the rule base is not exhaustive, a nearest neighbour search can be used if no match is found.
  • a rule-based fall-back system includes a set of rules that depends on a single input variable, e.g. a measured blood glucose level (BG).
  • BG blood glucose level
  • the rule set may be expressed as follows:
  • Yet another example of a fall-back system may be based on an accepted set of guidelines for clinical practice.
  • guidelines include the "A Guide to Type 1 (Insulin-dependent) Diabetes Mellitus", European Diabetes Policy Group, International Diabetes Federation, European Region, the "ISDAP Consensus guidelines for the Management of Type 1 Diabetes Mellitus in Children and Adolescents", International Society for Pediatric and adolescent Diabetes, the "Practical Guide for Management of Type 2 Diabetes in Primary Care", based on the "Approved Guidelines for Type 2 Diabetes of the St Vincent Declaration Primary Care Diabetes Group", and the "ADA Clinical Practice Recommendations”.

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Pathology (AREA)
  • Hospice & Palliative Care (AREA)
  • Developmental Disabilities (AREA)
  • Psychiatry (AREA)
  • Child & Adolescent Psychology (AREA)
  • Social Psychology (AREA)
  • Psychology (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

Disclosed is a medical advisory system for providing recommendations to a user for actions to be taken. The system comprises input means for receiving a number of input parameters, processing means configured to determine from at least the input parameters a recommended action to be taken, and output means for presenting information about the determined recommended action to a user. The processing means is configured to implement a plurality of mathematical advisory models each adapted to generate a respective model output from the received input parameters. The processing means is configured to determine the recommended action from the model output of one or more of the plurality of mathematical advisory models.

Description

Medical advisory system
The invention relates to a medical advisory system for providing recommendations to a user for actions to be taken.
A medical advisory system is a system which provides recommendations to a user based on a number of input parameters, e.g. parameters describing the physiological or medical state of the patient, parameters describing previous actions of the patient, or the like. In particular, the present invention relates to a diabetes advisory system which outputs recommendations for choices of actions to be taken by a diabetes patient, e.g. a recommended medication, physical exercise, nutrition, etc. Typical input parameters to such a system are the previously applied and/or expected medication, meals, exercise, etc.
It is a general requirement for such systems that they are reliable, i.e. provide a correct recommendation based on the given input data.
US patent no. 5,822,715 discloses a diabetes management system that comprises a patient-operated apparatus programmed to predict the patient's future blood glucose values based on a measured present blood glucose value. Based on the predicted future value, the apparatus determines a corrective action to be taken by the patient, if the predicted blood glucose value lies outside a target range.
It is an object of the present invention to provide a medical advisory system providing recommendations with a high reliability. The above and other problems are solved by a medical advisory system for providing recommendations to a user for actions to be taken, the system comprising: - input means for receiving a number of input parameters; - processing means configured to determine from at least the input parameters a recommended action to be taken; and - output means for presenting information about the determined recommended action to a user; wherein the processing means is configured to implement a plurality of mathematical advisory models each adapted to generate a respective model output from the received input parameters; and wherein the processing means is configured to determine the recommended action from the model output of one or more of the plurality of mathematical advisory models.
Hence, by providing a plurality of mathematical models, each adapted to generate a respective model output from the received input parameters, the reliability of the recommendations is improved, since unsatisfactory or even incorrect recommendations generated by one model may be detected and/or compensated by another one of the plurality of models. Hence, an overall improvement of the reliability is achieved, even in situations, e.g. for ranges of the input parameters, where the performance of one of the mathematical models is unsatisfactory.
According to a preferred embodiment of the invention, the plurality of mathematical advisory models comprises at least a first advisory model and a fall-back model; the processing means is configured to select one of the first advisory model and the fall-back model based upon at least one of an input to and a model output of at least the first advisory model; and the processing means is further configured to determine the recommended action from the selected model. Hence, based on the input and/or output to/from the first advisory model, the processing means determines whether to accept the recommendation of the first advisory model or whether to use a fall-back model. It is an advantage that the performance of the first advisory model is supervised, resulting in an improved reliability and verifiability of the system.
According to a further preferred embodiment of the invention, the processing means is configured to determine a reliability measure for a model output of at least the first advisory model; and the processing means is further configured to determine the recommended action from at least the first advisory model, if the determined reliability measure is above a predetermined threshold, and to determine the recommended action from said fall-back model, if the determined reliability measure is below the predetermined threshold.
It is an advantage that the risk of false recommendations is reduced, thereby further improving the reliability of the system. Furthermore, it is an advantage that the system performance may be easily validated, since the quality of the recommendations does not decrease below the quality of the fall-back system. In particular, this is an advantage in connection with adaptive models, e.g. in a system that is continuously adapted in an on-line fashion. According to a preferred embodiment of the invention, it is ensured that the performance of the adaptive system does not drift into an unacceptable regime. However, it is understood that the system may also be applied to non-adaptive models.
In a further preferred embodiment, the fall-back model comprises a rule- based fall-back model, thereby allowing a systematic validation of the fallback model. Alternatively, another verified fall-back model having a verified performance may be used, e.g. a model where the output for each possible set of input values has been verified. When the fall-back model is non- adaptive, the performance of the fall-back model is ensured to remain constant over time.
In one embodiment, the system comprises a layered architecture including an advanced prediction module and a simple, preferably rule-based, fall-back module. The system further comprises a supervision module which monitors the performance of the advanced prediction module and determines a reliability measure for the performance. If, for a given set of input data, the reliability measure is below a certain threshold, the input data are fed into the fall-back system instead.
The term rule-based model is intended to comprise any model comprising a set of predetermined rules assigning respective recommended actions to each of a set of predetermined ranges of parameters. Hence, in a preferred embodiment, the rule-based fall-back system comprises an exhaustive list of ranges of input parameters and respective recommended fall-back actions for each of the ranges of input parameters, thereby allowing a complete and systematic validation of the system. In some embodiments, such rule-based models are implemented in the form of one or more tables, thereby further facilitating a systematic model validation.
When attempting to achieve approval for the marketing of such an advisory system it often needs to be proven that it performs reliably. According to an embodiment of the invention, a systematic mechanism for validating the reliability of the system in all situations is facilitated.
The term reliability measure is intended to comprise any quantity that is indicative of a probability and/or confidence and/or the like that the generated recommended action is correct. In some embodiments, the reliability measure is a quantity derived from at least one of the input to and/or the output from one or more of the plurality of models. For example, some models generate continuous values to a number of candidate actions and select an action based on the generated values, e.g. an action having a highest value. In such models, the relative magnitude of the output values of the selected action compared to the other candidate actions is a measure of confidence in the selected action. Further examples of such reliability measures comprise a result of a sensitivity analysis of a model output, a result of a comparison of outputs from several models, e.g. a measure of similarity, a voting scheme, or the like. When the processing means is adapted to determine the reliability measure from a comparison of at least a first model output of the first advisory model with at least a second model output of a second one of the plurality of mathematical advisory models, an accurate reliability measure is achieved. Other examples of reliability measures may be based at least in part on the model inputs, e.g. by comparing one or more of the input parameters with a range of inputs within which the model is trusted to generate reliable results, and/or by determining any missing inputs, and/or the like. Yet further examples of reliability measures utilise historical information, e.g. previous model inputs and/or outputs and/or received user feedback for previous recommendations. For example, if a user has indicated that a recommendation given for a certain set of input parameters was not useful, the reliability of the advisory model may be multiplied with a certain penalty factor during a subsequent prediction for the same or similar input parameters. Yet further examples of reliability measures include a comparison of the model output with a verified model or set of rules, e.g. established/recognised clinical guidelines for a physiological situation.
For the purpose of the present description, the term mathematical advisory model is intended to comprise any computer-implemented mathematical process which receives a number of input parameters and determines a recommended action based on the received input parameters and, optionally, a number of model parameters. Examples of such models include statistical models, neural network models, reinforcement models, physiological models, or the like.
According to another preferred embodiment, at least one of the plurality of mathematical advisory models comprises a prediction module for predicting a future value of a physiological parameter; and a control unit for determining a recommended action from at least the predicted future value of the physiological parameter. Consequently, in this embodiment, one or more of the plurality of models determine a predicted future physiological parameter, e.g. blood glucose, and determine a recommended action based on the prediction, e.g. by comparing the predicted value with a target value, a target range, or the like. It is an advantage that the model provides a prediction of the future value of the physiological parameter, thereby allowing the system to provide the predicted value as additional information to the user. Hence, the user may make a decision about the action(s) to be taken based on the recommendation generated by the system and based on the predicted physiological value. Providing the predicted value of the future physiological parameter as additional information to the user further provides an implicit explanation for the recommended action to the user, thereby increasing the amount of trust a user may have in the given recommendation and, thus, increasing the likelihood that the user actually would follow the recommendation.
Other models determine the recommended actions directly from the input parameter, i.e. by an algorithm that relates the input parameters directly to recommended actions, thereby avoiding the need for any assumptions of the underlying physiological processes, etc.
The system generates a recommended action from the model outputs of a plurality of mathematical models. In some embodiments, the models are operated as an ensemble or committee of models. Hence, according to this embodiment, the processing means is adapted to determine respective model outputs of each of at least a subset of the advisory models, the subset comprising a plurality of mutually different models, and to determine the recommended action from a combination of the determined model outputs. For example, in one embodiment, each model may generate a recommendation for an action, and the system selects the action as overall recommended action which has received the majority of votes. It is an advantage that the output of an ensemble or committee of models improves the reliability of the overall output. It is a further advantage that a measure of reliability of the overall model output can be established from the degree of dissimilarity of the individual model outputs.
In other embodiments, the plurality of models is operated as a hierarchy of models. As described above, the system may select the output generated by one model or a group of models as recommended action based on a reliability measure of the corresponding model output(s).
In some embodiments the mathematical model comprises model parameters that are adaptable in order to improve the quality of the mathematical model. For example, the model parameters may be adapted by a suitable adaptation process e.g. based on a comparison of the model output and a reference value. For example, if the model comprises a prediction of a future value of a physiological parameter such as the blood glucose level, a reference value may be a measured value of the physiological parameter at a predetermined future time. In other embodiments, the reference value may be a recommended action determined by a human expert, e.g. a physician.
Examples of such adaptive models are models that are adapted based on a
Least Squares Error method, a Maximum Likelihood method, or any other suitable optimisation method. Other examples of adaptive models include neural network models which may be updated by so-called learning algorithms such as the back-propagation algorithm or the like. Yet further examples include so-called case-based reasoning, i.e. an adaptive model where new cases or examples are added to a case database, thereby increasing the probability of finding a close match to the situation being analysed.
Hence, in some embodiments, at least one of the plurality of mathematical advisory models is an adaptive mathematical mode, thereby allowing to adapt the advisory system to a particular patient or even to continuously improve the recommendations by a model adaptation during operation.
In yet another preferred embodiment at least one of the plurality of mathematical advisory models comprises a plurality of look-up tables, a corresponding plurality of address decoder modules, and a combiner module; wherein each look-up table includes a corresponding plurality of columns, each column comprising a plurality of table entries; wherein each of the address decoders is adapted to determine one of the plurality of columns of a corresponding one of the look-up tables; and wherein the combiner module is adapted to determine the model output of the mathematical advisory model from the table entries of the determined columns, thereby providing a system, that may efficiently be adapted to a given patient, e.g. by a continuing adaptation during operation.
As mentioned above, the model output of each of the plurality of models may be an action recommended by that model. Alternatively, the model output may be a rating of a number of candidate actions, assigning respective rating values to each of the candidate actions. In yet another embodiment, each model may generate a predicted value of a relevant physiological parameter, and the processing unit then determines a recommended action from the predicted values generated by the different models. In some embodiments, one or more of the models may generate a combination of the above outputs. Additionally, one or more of the models may generate further outputs, e.g. a confidence or reliability measure of the generated output.
The recommendations for actions determined by the system may be any action to be taken by the patient that may influence the medical/physiological state of the patient to be controlled. It is understood that examples of such actions include a "do nothing" recommended action, e.g. in a situation where no change in behaviour is recommended. It is further understood that, in some embodiments, one or more of the recommended actions may involve the consultation of a physician or other expert. In the example of controlling the blood glucose level of a patient, examples of recommended actions may include actions regarding insulin intake, the intake of food, the level of physical exercise, etc.
It is further understood that, in some embodiments, more than one action may be presented to the user at least in some situations. For example, the system may present a number of alternative actions, each of which providing the same or a similar desired effect. In this example, the user may choose an action from the presented number of actions. In another example, a recommended action may be a composite action, i.e. an action comprising a plurality of individual actions, e.g. "eat a snack and rest for 30 min.", where the user is recommended to perform all the presented actions.
In yet another embodiment, the system further presents the determined reliability measure for the presented recommended action(s). For example, in an embodiment where several alternative recommendations are presented, the user is provided with a further guidance in selecting one of the recommendations based on the reliability measures for the different presented actions. It is a further advantage that the presentation of the reliability measure increases the confidence which the user has in the system, thereby increasing the likelihood that the user actual follows the recommendations.
The system receives a number of input parameters, preferably parameters that provide information about the state of the system which is to be controlled, i.e. parameters that carry information relevant for the selection of the recommended action. For example, when the advisory system is used by a patient in order to control a physiological parameter, such as blood glucose, measured values of the parameter may be provided as input parameters. Other examples of input parameters include secondary parameters influencing the physiological parameter to be controlled, e.g. previous actions taken by the patient such as previous physical exercise, food intake, insulin dosages, etc. Yet another group of examples include measured parameters or sensor data, such as a patient's heart rate, body or skin temperature, skin resistance, etc.
The input parameters may be input by the user and/or received from sensors, measuring devices and/or in any other suitable way. Accordingly, the input means may comprise any circuitry or device suitable for receiving data. Examples of such input means comprise user-input devices, such as a keyboard, keypad, push buttons, pointing devices, touch screens, or the like. Further examples include interfaces for receiving data from a sensor or measuring device, e.g. from external devices or sensors, or from sensors integrated into the advisory system. Yet further examples include data communications interfaces suitable for receiving data via a communications network, e.g. a wireless network or a wired network.
The processing means may include any circuit and/or device suitably adapted to perform the above functions. In particular, the processing means may comprise a general- or special-purpose programmable microprocessor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Programmable Logic Array (PLA), a Field Programmable Gate Array (FPGA), a special purpose electronic circuit, etc., or a combination thereof.
The output means may include any device or circuitry suitable for presenting information about a recommended action to a user. For example, the advisory may provide a display for displaying a recommended action. Alternatively or additionally, the output means may include an audio output for providing an audible indication of the recommended action or for alerting the patient, e.g. of the presence of an urgent recommendation. It is understood that, alternatively or additionally, any other suitable means for indicating a result to the user and/or for alerting the user may be used, e.g. a vibrator or another means for providing a tactile output.
In some embodiments, the output means, the input means, and the processing means are provided as part of a single device, e.g. a portable or a hand-held electronic device, thereby providing a convenient tool for providing recommended actions that can be operated independently of any remote devices. Examples of such devices include suitably programmed computers, e.g. a portable or hand-held computer, a Personal Digital Assistant (PDA), a special-purpose medical device, or the like. Further examples include a suitably programmed mobile telephone or other communications device.
In some embodiments, the advisory system comprises a user terminal and a remote data processing system. The user terminal, e.g. a hand-held electronic device such as a mobile telephone or other communications device, a PDA, or the like, comprises the output means and the input means, and suitable communications means for transmitting the input parameters to the remote data processing system and for receiving information about the recommended action. The remote data processing system, e.g. a computer of a hospital or the like, comprises communications means configured to receive/transmit the above data from/to the user terminal, and processing means configured to determine the recommended action from the input parameters.
Further preferred embodiments are disclosed in the dependant claims.
The present invention can be implemented in different ways including the above-mentioned system, a method, and further product means, each yielding one or more of the benefits and advantages described in connection with the first-mentioned system, and each having one or more preferred embodiments corresponding to the preferred embodiments described in connection with the first-mentioned system and as disclosed in the dependant claims.
In particular, the invention further relates to a computer-implemented method of providing recommendations to a user for actions to be taken, the method comprising: - receiving a number of input parameters; - determining from at least the input parameters a recommended action to be taken; and - presenting information about the determined recommended action to a user; wherein determining the recommended action further comprises - providing a plurality of mathematical advisory models; - determining one or more respective model outputs of one or more of the plurality of mathematical advisory models and from the received input parameters; and - determining the recommended action from the determined one or more model outputs. It is noted that the features of the method described above and in the following may be implemented in software and carried out in a data processing system or other processing means caused by the execution of computer-executable instructions. The instructions may be program code means loaded in a memory, such as a RAM, from a storage medium or from another computer via a computer network. Alternatively, the described features may be implemented by hardwired circuitry instead of software or in combination with software.
The above and other aspects of the invention will be apparent and elucidated from the embodiments described in the following with reference to the drawing in which:
fig. 1 shows a block diagram of functional components of an embodiment of a medical advisory system;
fig. 2 shows a block diagram of functional components of another embodiment of a medical advisory system;
fig. 3 shows a block diagram of functional components of yet another embodiment of a medical advisory system;
fig. 4 shows a block diagram of an embodiment of an output module of a medical advisory system;
fig. 5 shows a block diagram of an embodiment of a supervisor module of a medical advisory system;
fig. 6 shows a block diagram of a medical advisory system; fig. 7 shows a block diagram of a medical advisory system comprising a hand-held electronic device and a remote data processing system;
fig. 8 illustrates an advisory model based on look-up tables;
figs. 9a-c illustrate examples of an input layer coding in the advisory system of fig. 8;
fig. 10 illustrates one of the look-up tables of the model of fig. 8; and
fig. 11 illustrates an advisory model where the recommended action is determined on the basis of a prediction of a blood glucose value.
In the drawings like reference signs correspond to like or corresponding elements, steps, etc.
Fig. 1 shows a block diagram of the functional components of an embodiment of a medical advisory system. The advisory system comprises an input module 101 , an advisory module 102, a supervisor module 103, a fall-back system 104, and an output module 105. The input module 101 receives the input parameters such as input parameters provided by a user and/or input parameters provided by a measuring device, a sensor, and/or any other external system. In some embodiments, the input module may perform one or more pre-processing steps on one or more of the input parameters. Examples of such pre-processing steps include, analogue-to- digital conversion, noise reduction, e.g. by averaging over a predetermined time-window, calculation of correlations between two or more input parameters, etc.
It is understood that the number and type of input parameters as well as the type of pre-processing depends on a specific implementation. For example, in the context of providing recommendations to a diabetes patient regarding the control of the blood glucose level, possible input parameters are parameters regarding medication, diet, physical exercise, physiological parameters such as a measured blood glucose level, hart rate, skin temperature, skin resistance, or the like.
The input module 101 feeds the received and, optionally, pre-processed input parameters 106 to the advisory module 102. The advisory module 102 determines a recommended action from the input parameters 106 and according to a predetermined advisory model, i.e. an algorithm for calculating a recommended action from the received input data and, optionally, auxiliary data, e.g. time, historic data such as previously received input parameters, or information about the patient, e.g. the patients age, sex, weight, etc. Examples of such algorithms include adaptive and non-adaptive mathematical models, such as neural networks, look-up tables, pattern recognition algorithms, multivariate statistical analysis, physiological models, or the like. Embodiments of adaptive mathematical models will be described in greater detail below. The advisory module 102 further generates reliability information about the determined recommended action, e.g. a confidence level for a selection of a given action from a set of candidate actions. Examples of reliability measures will be described in greater detail below. The advisory module 102 generates a model output 107 including information about the determined recommended action and the reliability information.
The advisory module 102 feeds the model output 107 including the recommended action and the reliability measure to the supervisor module 103. The supervisor module determines from the reliability measure whether the determined recommended action is sufficiently reliable to be presented to the user. For example, when the reliability measure includes a confidence level, the supervisor module may compare the confidence level with a predetermined threshold. If the confidence level is larger than the threshold, the supervisor module feeds the recommended action determined by the advisory module to the output module 105, as indicated by connection 108. For example, the threshold may be set by a physician during an initial customisation process.
The advisory system further comprises a rule-based fall-back system 104. The fall-back system 104 receives the input parameters 106 from the input module and generates a recommended action 109. The rule-based fall-back system determines the action 109 from a set of predetermined, simple rules, e.g. a set of well-established rules that are known to provide safe recommendations for all possible values of input parameters. For example, the set of fall-back rules may be determined by a physician or other expert and stored in a table indexed by the input parameters. The fall-back recommendation 109 determined by the fall-back system 104 is fed into the supervisor module 103.
If the supervisor module 103 has determined that the recommended action determined by the advisory module 102 is not sufficiently reliable, the supervisor module feeds the fall-back recommendation 109 as final output 108 to the output module. Hence, even if the mathematical algorithm implemented by advisory module 102 does not provide a reliable recommendation, the advisory system is still able to provide a recommendation to the user, thereby avoiding frequent situations where the user does not receive a recommendation. This is an advantage, since situations where the advisory system does not provide a recommendation are dissatisfactory for the user, and they may even disturb the user or require further actions, such a an additional measurement of a blood glucose level, an additional consultation of a physician, or the like. Furthermore, the advisory system provides recommendations with a reliability that is known to be larger than a minimum reliability. In particular, the minimum reliability is determined by the reliability of the fall-back system and by the minimum reliability at which the supervisor module rejects the recommendation of the advisory model.
The output module 105 receives the final recommendation 108 and provides it to the user, e.g. via a user interface such as a display or the like.
Fig. 2 shows a block diagram of functional components of another embodiment of a medical advisory system. The medical advisory system corresponds to the system described in connection with fig .1. However, the system of fig. 2 comprises a plurality of advisory modules, designated 102a, 102b, ..., 102n, instead of just a single module. For example, the advisory system may comprise 2, 3, 4, 5, or even more advisory modules. Each of the advisory modules receives the input parameters 106 and each of the advisory modules generates a corresponding model output, designated 107a, 107b 107n. The model outputs are all fed into the supervisor module 103 which determines the reliability of the model outputs and generates a final recommendation from the model outputs or, if the supervisor module determines the model outputs not to be sufficiently reliable, from the fall-back system 104 as described above. An embodiment of a supervisor module will be described in greater detail below. Preferably, the advisory modules implement different algorithms or algorithms parameterised by different choices of parameters, thereby allowing the supervisor module to determine the reliability of the model outputs from a measure of similarity of the outputs from the different models.
It is understood that, in some embodiments, some of the advisory modules 102a, 102b, ..., 102n may require different input parameters then others. Hence, in an embodiment where all input parameters are fed to all advisory modules as illustrated in fig. 2, the individual advisory modules may disregard the parameters that are not required by the respective algorithm. In other embodiments, the input module may feed different sets of input parameters to different advisory modules.
Fig. 3 shows a block diagram of functional components of yet another embodiment of a medical advisory system. The medical advisory system corresponds to the system described in connection with fig.1. However, the system of fig. 3 comprises an advisory module 102 implementing an adaptive mathematical model. The advisory module 102 receives a set of input parameters 106 from the input module 101 and generates a model output 107 including information about a recommended action determined by the advisory module. The advisory module 102 implements an adaptive mathematical model and comprises a model module 301 , a data storage 304 for a set of model parameters, and an adaptor module 303. The model module 301 receives the input parameters 106, retrieves the model parameters from the data storage 304 via connection 305, and generates a model output 107 from the input parameters and according to the model parameters, i.e. the model module implements a mathematical model according to y = M(x; p) where x represents the input parameters, p the model parameters, y the model output and M the algorithm implemented by the model. The model module 301 further stores the model output in the data storage 304 for use in a subsequent model adaptation. Furthermore, in some embodiments, the received input parameters 106 are also stored in the data storage 304, for example together with a timestamp.
According to this embodiment, the input module 101 further receives one or more reference values 306 and feeds them to the adaptor module 303. For example, the reference values may comprise recommended advices determined by a physician or other expert for a given medical state of the patient. In other embodiments, where the advisory model comprises a prediction of a physiological parameter, the reference value may comprise an actual measurement of that physiological parameter at a time for which the parameter has been predicted by the model. The reference value(s) may be provided by the user via a user interface of the advisory system. For example, the user may enter a measured value of a physiological parameter and the time of measurement, or the user may indicate the recommended action received from a physician and a time for which that recommendation applies. In some embodiments, the advisory system may even request the user to enter a reference value, e.g. in a situation where a model output was determined to be unreliable, and the system has output a fall-back recommendation.
When the adaptor module 303 receives a reference value 306, the adaptor module retrieves the corresponding model output y, e.g. based on the time to which the reference value applies as indicated by the user. The adaptor module 303 further retrieves the current model parameters p and, optionally, the input x received at the time to which the reference values apply. Based on the received reference values and the retrieved data, the adaptor module determines a set of updated model parameters p' according to a suitable adaptation algorithm fa, e.g. according to p'= fa (p, y, yref, x), where yret is the reference value corresponding to the model output y. Examples of suitable adaptation algorithms are known in the art and include e.g. real-time back- propagation algorithms, reinforcement learning, and other optimization procedures.
It is an advantage of this embodiment, that the advisory system may be continuously adapted to the particular user, thereby improving the quality of the recommendations during operation. However, at the same time it is ensured by the supervisor module 103 and the fall-back system 104, that the advisory module does not produce unreliable results, e.g. do to erroneous reference values. It is understood that, in the embodiment of fig. 2 described above, one or more of the plurality of advisory modules may implement an adaptive model as described in connection with the advisory module of fig. 3.
Fig. 4 shows a block diagram of an embodiment of an output module of a medical advisory system. The output module receives the recommended action 108 generated by the supervisor module and presents it to the user as described above. According to this embodiment, the output module 105 comprises a final output filter 401 that implements a final level of output validation. The output filter 401 compares the recommended action 108 with a set of validation rules stored in a data storage 402. If the output filter determines that the recommended action 108 is in accordance with the validation rules, the output filter 401 presents the recommendation to the user via a suitable user interface. Otherwise, if the output filter determines that the recommended action 108 is not in accordance with the validation rules, the output filter 401 presents a corresponding message to the user, e.g. inviting the user to contact a physician, to measure a relevant physiological parameter, or the like. Hence, the final output 403 presented to the user comprises a valid recommended action or a suitable error message or invitation for alternative actions. Preferably, the validation rules determine whether a certain recommended action is reasonable in a given context, e.g. at a given time of day, a given time relative to other events, e.g. relative to meals, relative to previously recommended actions, or the like.
In the context of blood glucose control, examples of such validation rules include rules that prevent certain recommendations, such as "eat a snack" or "do exercise for 20 minutes" to be repeated several times and rules that prevent such recommendations to be given at certain times of the day, e.g. during sleeping hours. For example, a list of validation rules may include one or more of the following examples: "If it is sleeping hours, do not recommend exercise."
"If exercise has been done within the last two hours, do not recommend exercise."
"If insulin injection has been given within the last three hours, do not recommend insulin injection."
"If a meal has been eaten within the last hour, do not recommend a snack."
It is understood that in a computer-implemented implementation of such rules, the rules may be formulated in a formalised language.
Fig. 5 shows a block diagram of an embodiment of the supervisor module 103 shown in fig. 2. The supervisor module 103 receives the model outputs 107a, 107b, ..., 107n from a number of different advisory modules. The model outputs are fed into a combiner module that determines a recommended action from the received model outputs. For example, in an embodiment where each of the model outputs 107a, 107b 107n indicates a recommended action determined by the corresponding advisory module, the combiner module may determine the resulting recommended action as a majority vote of the recommendations of the advisory modules. In another embodiment, where the model outputs represent predictive blood glucose values, the combiner module may determine an average of the individual model outputs representing an improved prediction. From the improved prediction, the combiner module may determine a recommended action adequate for the predicted blood glucose value. The resulting combined recommendation is fed into a selection module 504.
The supervisor module further comprises a reliability module 502. The reliability module receives the model outputs 107a, 107b, ..., 107n, and determines a measure of reliability from the model outputs. The reliability module 502 compares the reliability measure with a threshold value stored in a data storage 503. If the reliability measure is higher than the threshold value, the reliability module controls the selection module 504 to select the recommended action determined by the combiner module 501 as the resulting output 108. Otherwise, i.e. if the reliability measure is below the threshold, the reliability module controls the selection module 504 to select the fall-back recommended action 109 determined by the fall-back system 104, as described above. Hence, the selection module 504 further receives the output 109 of the fall-back system 104.
For example, in the above-mentioned example where each model output represents a recommended action and where the combiner module determines the resulting recommendation according to a voting scheme, the reliability measure may be determined as the degree of consensus between the individual models, e.g. expressed as the number of votes for the winning recommendation, or the number of the votes for the winning recommendation relative to the next-highest number of votes, or the like. In the above example of the calculation of an average prediction from a number of individual predictions, the reliability measure may e.g. be the variance of the individual predictions.
Fig. 6 shows a block diagram of a medical advisory system. The medical advisory system 600 comprises a central processing unit 601 , a memory 602, and a user interface unit 603, both connected to the central processing unit, e.g. via a bus system. The user interface unit allows a user to enter input parameters into the system as well as further inputs such as user-commands invoking and/or controlling the various functions of the advisory system. Accordingly, the user interface comprises a user-input unit such as a keypad, a keyboard, a number of push buttons, a pointing device, a touch screen, or the like. The user interface is further controlled to present the recommended action and, optionally, additional information to the user. Hence, the user interface comprises an output unit, e.g. a display, an audio output device, or the like. The central processing unit 601 controls the operation of the advisory system and, in particular, implements the advisory modules, the supervisor module, and the fall-back system described above and below.
The memory 602 is adapted to store the computer program(s) implementing the advisory modules, the supervisor module, and the fall-back system described above and in the following, as well as any parameters or other data used by these programs, e.g. model parameters of the advisory models, threshold parameters for the supervisor module, rule tables for the fall-back system, and/or the like. The memory is further adapted to store the input parameters, e.g. as a log file for subsequent analysis or to be used by an adaptive model. It is understood that the memory block 602 may comprise one or more different memory devices, storage media, or memory sections, e.g. a RAM, a ROM, an EPROM, a removable storage medium, and/or the like.
Optionally, the advisory system may comprise one or more further interface units 604 for receiving information, e.g. sensor data from external sensors, and/or for sending/receiving information e.g. to/from a remote computer. Examples of data provided by the advisory system to a central computer or database server for further processing may include information about the input parameters, the recommended actions, log data, and/or the like.
It is understood that the advisory system may be implemented as a single device, e.g. a suitably programmed personal computer. When the advisory system is implemented as a hand-held device or a device worn by the user, e.g. as a suitably programmed hand-held computer, a PDA, a mobile telephone, a watch-like device, or the like, the advisory system may easily be carried around by the user and is thus available irrespective of the user's location etc. In other embodiments, the advisory system may be implemented as a distributed system, e.g. a client/server system. An example of a client server system is described in connection with fig. 7.
Fig. 7 shows a block diagram of a medical advisory system comprising a hand-held electronic device and a remote data processing system. The system comprises a hand-held device 700 and a server computer 705. The hand-held device, e.g. a mobile telephone, a PDA, or the like, provides a display 701 and a keypad 702, or another suitable user-interface for receiving input parameters and for presenting the recommended action to the user. The hand-held device sends the received input parameters via a communications network 704 to the server computer 705. For example, in an embodiment where the hand-held device is a mobile telephone, the communications network may be a cellular telecommunications network. The data may be communicated between the hand-held device and the server computer via a short message service, via a suitable network protocol, or the like. The server computer 705 comprises a suitable communications interface 706 for receiving data from the hand-held device and for sending data to the hand-held device. The server computer 705 further comprises the processing unit 601 and the memory or other storage means 602 as described above.
Hence, the advisory system may be incorporated in a telemedicine system, where a central computer provides a number of services to a user, and even allows supervision by or communication with a physician or other health personnel.
With reference to figs. 8-11 , examples of advisory models will be described in greater detail. Fig. 8 illustrates an advisory module based on look-up tables. The advisory module generally designated 102 receives one or more input parameters 106 and generates a model output 107 as described above. The advisory module comprises an input coding block 801 that generates a bit pattern 802 representing the input parameters). Based on the bit pattern 802, a number of address decoders 803 identify respective columns of a number of look-up tables 806. Hence, each look-up table is connected to the input via an address decoder. Each address decoder 803 is connected to at least a subset of the bits of the bit pattern 802, e.g. between 5 and 20 bits. However, other embodiments may use a different number of bits. The bits connected to each address decoder may be chosen randomly or by some training algorithm. The information from the columns identified by the address decoders is fed into an output block 809 that generates the model output 107. Hence, the advisory model generates a model output y = M( x, p) as a function M of the input parameters x and the entries p of the look-up tables.
The bit pattern 802 comprises a bit string representing the input values as exemplified by the bits labelled b1 , b, b3, b4, ..., bn , i.e. a string of ones and zeroes. As an example, the address decoder labelled AC1 in fig. 8 is connected to the bits b1 , b2, and b4. Each input variable is represented in a certain part of the bit pattern. For example, each input parameter may be encoded by a predetermined number of bits, e.g. 16, 32, or 64 bits. However, it is understood that in principle any bit resolution may be chosen for an input parameter. It is further understood that different input parameters may be encoded with the same or different bit resolutions.
Figs. 9a-c illustrate examples of an input layer coding in the advisory system of fig. 8. The input parameters may be encoded into a bit representation in many ways. For numerical parameters, e.g. a hart rate, blood glucose level, an insulin dosage, or the like, figs. 9a-b illustrate examples of suitable coding schemes. The coding scheme of fig. 9a is referred to as "thermometer coding", since the number of consecutive bits that are set to "1" correspond to the value of the input parameters. This is exemplified in fig. 9a by a bit string 802 where the fraction 901 of bits is set to "1" while the fraction 902 is set to "0". The encoding of fig. 9b is referred to as "neighbour coding" where a predetermined number of consecutive bits is set to "1" (as illustrated by the shaded area 901) while the remaining bits are set to "0" as illustrated by the white areas 902. The number of bits that are set to "1" is the same for all input values, but the position of the bits that are set to "1" in the bit string depends on the value of the input parameter, i.e. the bit pattern resembles a slider, the position of which indicates the value of the input parameter. Fig. 9c illustrates an example of the input coding of symbolic input values, e.g. the identification of the type insulin administered, the type of food consumed, or the like. In this example different parts of the bit string are assigned to each symbol or category, and the actual symbol or category entered is represented by setting the bits in a corresponding one of the parts to "1" and by setting the bits in the remaining parts to "0", as exemplified by the parts designated 901 and 902, respectively, of the bit string 802 in fig. 9c.
Fig. 10 illustrates one of the look-up tables of the model of fig. 8. The look-up table 806 is a matrix including rows 1002 and columns 1003. During operation, a column is selected by the address decoder 803 based on the values of the input bit pattern, as exemplified by column 1004 in fig. 10. The contents of the cells of the selected row are fed into the output block 809. There is one row for each possible recommended action and one column for each possible address that can be generated by the address decoder 803.
The address decoder 803 determines the address of one of the columns 1004 from the bit pattern, e.g. directly, by a hash coding scheme, or by any other suitable method. Hence, each look-up table may be considered as being indexed by a subset of the input bits. For example, when each bit pattern directly encodes one of the columns, and when n connections from the input bit pattern to the address decoder 803 are used, then the number of addressable columns in the corresponding look-up table is 2n. As the number of columns grows exponentially with the number of connections, it is preferred to use a compression technique or sparse coding technique for the look-up table, thereby allowing an efficient addressing even for many connections.
In one embodiment, the number of connections between the input bit pattern and the address decoder is the same for all look-up tables in the advisory module. Hence, the length of the input bit string divided by the number of connections from the input bit string to each of the address decoders determines the minimum number of look-up tables needed to make connections to all of the bits in the input string. In an embodiment, where the connections are selected randomly the actual number of look-up tables used may be considerably larger, e.g. twice or three-times as high, as that minimum number.
The output block 809 comprises a number of summation units 1001 , each summation unit corresponding to a row of the look-up table, i.e. to one the possible recommended actions.
As mentioned above, the mapping from the input parameters to the determined recommended action is determined by the content of the cells of the look-up tables. Hence, by determining the contents of the cells, the advisory system may be adapted to a specific patient, e.g. by an adaptation or "training" algorithm based on a set of training examples, each example comprising a set of input parameter values and the desired output, i.e. an indication of the desired recommended action for this set of input parameter values. In one embodiment, the advisory system based on look-up tables is trained according to the following procedure:
Initially, all the cells in each of the look-up tables are set to zero. During the training process, some of the cells are marked or assigned a number, normally a positive integer.
In particular, in one embodiment, the following steps are performed for each of the training examples: 1. The input parameter values are pre-processed resulting in a corresponding input bit string, and the bit string is fed into each of the address decoders. 2. Each address decoder determines a corresponding column of the look-up table connected to that address decoder, based on the set of bits of the input bit string that are connected to that address decoder. 3. For each look-up table, the row that corresponds to the target recommended action for the present training example is selected. 4. The value in the cell that corresponds to the selected row and the selected column is incremented by one. In one embodiment, each cell corresponds to a binary value. In this case the value of the cell is incremented only the first time the cell is selected, corresponding to setting a flag, thereby providing a compact and efficient coding.
It is noted that the training procedure described above is a "one pass" training process, thereby providing a fast training or adaptation. It is a further advantage that an initial training based on a set of training examples may subsequently be supplemented by additional examples. Hence, an incremental training, or even an "untraining" of selected examples, is possible. Once trained, i.e. once the values of the cells of the look-up tables are determined, e.g. according to the above procedure, the advisory module performs the following process during operation: 1. A set of input parameter values is fed into the input coding block 801. 2. The input coding block pre-processes the input parameter values and generates an input bit string 802. 3. For each look-up table 806, a corresponding sub-set of input bits is fed into the corresponding address decoder 803. 4. Each address decoder calculates a column number based on the bits represented at its connections with the input bit string, and selects that column in the corresponding loo-up table 806. 5. For each look-up table, each cell in the corresponding selected column that has a value greater than zero increments the corresponding one of the summation units 1001 of the output block 809.
Consequently, in one embodiment, after all look-up tables have been processed, the accumulated value in each summation unit corresponds to a number of votes for the corresponding recommended action. The largest possible number of votes is the number of look-up tables in the advisory module, and the smallest number is zero. The recommended action with the most votes is represented as the output by the system, corresponding to a so-called "winner-takes-all" procedure. If more than one recommended actions have received the same number of votes, i.e. the same value of the corresponding summation unit, they are all represented as outputs.
Hence, in the above, an advisory model based on look-up tables has been disclosed. For a more detailed description of a classification system based on adaptive look-up tables, reference is made to WO 99/67694 which is incorporated herein in its entirety by reference. In some embodiments, the output block 809 directly determines one or more reliability measures based on the contents of the summation units.
In the following, two examples of reliability measures that can immediately be calculated by the output block 809 will be described: A confidence measure and an ambiguity measure.
A confidence measure may be considered as answering the question: "How much do we believe in the result?" In one embodiment, the output block 809 calculates a confidence measure from the value of the summation unit of the "winner", i.e. the summation unit having the largest value, relative to the largest possible value, i.e. the number of look-up tables, i.e. according to
Lconfidence - Si / NLUT
Here, Si is the largest summation value, and NLUT is the total number of lookup tables. An example of such a confidence level is illustrated in table 1 below.
Figure imgf000031_0001
Table 1 : Example of a confidence level An ambiguity measure may be considered as answering the question: "Is the winner really the correct winner?" In one embodiment, the output block 809 calculates an ambiguity measure from the value of the summation unit of the "winner", i.e. the summation unit having the largest value, relative to the value of the summation unit having the second-largest value. For example, the ambiguity value La biguity may be expressed as
Lambiguity = (Si - S2) / NLUT, where Si is the largest summation value, S2 is the second-largest value, and NLUT is the total number of look-up tables. An example of such an ambiguity level is illustrated in table 2 below.
Figure imgf000032_0001
Table 2: Example of an ambiguity level
In the above tables, the confidence and ambiguity levels are related to expected success rates, i.e. to the percentage of correctly determined recommended actions for results having the corresponding confidence/ambiguity level. It is understood that the above tables are merely intended as illustrative examples. For a specific system, reference ambiguity levels may be determined by the following method:
1. A one-pass training of the look-up table advisory module is performed as described above. 2. A full leave-one-out cross-validation on all the training examples is performed by unlearning, testing and relearning the examples one by one. Hence, during each iteration of the cross-validation procedure, the advisory system is trained with all but one examples and tested on the example that was left out during training. 3. Based on the votes given to the tested examples, precise confidence and ambiguity levels can be calculated, e.g. by sorting the training examples in bins of vote intervals, and by calculating the error rate for each bin.
It is understood that a finer selection of confidence and ambiguity levels than shown in the tables can be calculated by the above procedure.
It is further understood that alternative reliability measures may be employed. For example, a reliability measure combining the two above measures can be calculated in different ways, dependent on the cost of different types of errors. In one embodiment, the reliability measure may be determined according to the following equation:
Reliability(y) = (LCOnfidence (x) * Lambiguity (x)) / Cost_factor(y),
where x is an input example and y is the classification made by the trained advisory system. The Cost_factor is a table or function that assigns a cost factor to each recommended action y.
Fig. 11 illustrates a diabetes advisory model for controlling the blood glucose value of a user, where the recommended action is determined on the basis of a prediction of the user's future blood glucose value. The advisory module generally designated 102 receives one or more input parameters 106 and generates a model output 107 as described above. The advisory module comprises a prediction module 1101 , a control module 1102, a data storage 1103, and an output module 1104. The prediction module receives the input parameters, e.g. the blood glucose value at time to and information about actual and/or anticipated intake of food and/or insulin and/or actual/anticipated physical exercise within a predetermined period of time around to. From the input parameters, the prediction module calculates a predicted blood glucose value for a predetermined later time t|. The prediction module may implement any suitable known prediction algorithm. Examples of such algorithms include an adaptive algorithm as described in V. Tresp et al., "Neural Network Modelling of Physiological Processes", in Hanson S. J. et al. (Eds.), Computational Learning Theory and Natural Learning Systems 2, MIT Press, 1994, the algorithm described in US patent no. 5,822,715, or the like. The predicted blood glucose value is fed into the control module 1102 which determines a recommended action based on the predicted blood glucose value and a predetermined control strategy stored in data storage 1103. The determined recommended action is fed into the output module 1104 which generates the model output. Examples of control strategies for blood glucose control are disclosed in R. Bellazzi et al., "Adaptive controllers for intelligent monitoring", artificial Intelligence in Medicine 7 (1995) 515-540, and in US patent no. 5,822,715. In some embodiments, the prediction module further determines a reliability measure 1105 and feeds the reliability measure into the output module 1104 which may incorporate the reliability measure in the model output 107. For example, the prediction module may implement a plurality of different prediction algorithms. The predicted blood glucose value of such an ensemble may be determined as the average of the individual predictions and the reliability measure may be determined as the variance of the individual predictions.
It is further understood that the prediction module and/or the control module may be adaptive. An example of an adaptive control strategy is disclosed in R. Bellazzi et al. (ibid.) Other examples of advisory models are based on a physiological model of the physiological process in question. Examples of physiological models in the context of diabetes management include the models described in US 5,822,715 and in "A physiological model of glucose-insulin interaction in type 1 diabetes mellitus", by E.D. Lehmann and T. Deutsch, J. Biomed. Eng. 1992, Vol. 14, May, pages 235-243.
In the following, another example of a reliability measure for an advisory system will be described. According to this example, the reliability measure is based on a sensitivity analysis, i.e. an analysis of how sensitive the system is to small changes in the input variables. A sensitivity analysis may be regarded as a "what if type of analysis where all the input variables are systematically changed the by a small step in "all directions" compared to the actual input, and the change in output (if any) is observed.
In one embodiment, a gradient map of the output of the advisory model or the output of the prediction module is determined at a given input point x. Such a gradient map may for example be calculated by presenting a series of input parameters Xk to the advisory system, the series being generated by incrementing/decrementing one or more of the input parameters by predetermined steps according to Xk = x + ΔXk. The gradient map can thus be estimated from the corresponding series of output values y = M(x + ΔXk, p). The gradient map is used to make an assessment of the systems reliability and/or brittleness in the given input point.
In order to determine reliability from a gradient map, all output changes in the gradient map are classified as "harmfull" or "not harmfull" with respect to the probability of increasing the risk of e.g. hypoglycaemia based on a medical assessment. This may be combined with an assessment of the certainty or sureness of the input value, where a small step change has produced the output change. For example, in the context of diabetes, the assessment of precision of input parameters may be done on the basis of experience from clinical measurements involving many persons with diabetes. The following table illustrates an example of the determination of the system reliability for each gradient in the map.
Figure imgf000036_0001
Table 3: Example of the assessment of sensitivity of an advisory system.
If one or more of the input variables produce a "system not reliable" assessment based on the sensitivity analyses, the system as such is not reliable in that working point.
The assessment table can be refined using more than two different values (ie "reliable", "somewhat reliable" and "not reliable") for the column parameters, thereby yielding a fuzzy assessment.
In the following, an example of a rule-based fall-back system will be described. According to this example, the rule-based fall-back system comprises an exhaustive set of state description points, e.g. defined by a set of conditions. Each point is associated with at least one valid recommendation.
The conditions for the state description points may comprise simple conditions and be related to a single recommendation, e.g. "if condition A then action B". However, alternatively or additionally, the system may comprise more complex rules comprising more than one condition and/or being associated to more than one recommendation. An example of such a complex rule may have the following structure: "If condition A and condition b and condition c and , then action x or action z". It is understood that an increasing complexity of rules may give rise to a combinatorial explosion of the number of rules.
In one embodiment, complex set of rules are processed by defining a set of state descriptor variables. In one embodiment, the set of state descriptor variables is selected as a subset of all the parameters available to the system. Preferably, the set of state descriptor variables is selected such that the amount of information provided by the selected set is high and, at the same time, redundant information and noise is eliminated. For example this may be achieved by an incremental selection process during the design of a rule-based fall-back system. In a first step, a subset of state descriptor variables is selected that have a high correlation with the intended parameter to be controlled. Starting from this subset, additional state descriptors may be added, and the performance of the resulting system may be tested and compared with the system without the additional state descriptors. This may e.g. be done by a cross-validation procedure. If the system with the added descriptor variables performs better than the system without the added variables, the incremental process may be continued by adding one or more further variables. If the addition of further variables does not yield an improvement in performance, the process is stopped, and the previous subset is selected as the final set of descriptor variables.
Preferably, each descriptor variable is defined such that its range is exhaustive, i.e. it covers the entire range of possible values, and mutually exclusive. Here the term "mutually exclusive value" is intended to mean that, if a given value is assigned to a variable, no other values are possible at the same time. For example, if a state descriptor variable can take the values "low", "medium", and "high", where each of the above values corresponds to an interval of measured values of a physiological parameter, these intervals should combine to the entire range of the physiological parameter, and the intervals should not overlap with each other.
An example of a rule for a diabetes type 1 patient could be: "If blood glucose (BG) is higher than 9, and a meal is coming up within an hour, and no exercise is planned, then increase next pre-prandial insulin injection with one unit". This rule can be put into a table form as follows:
Figure imgf000038_0001
Here, the BG measure is classified as "low", "OK", or "high". Hence, in this simple case, the description consists of four variables, which can take on three ("High", "OK", "Low") or two ("yes", "no") values.
Table 4 below illustrates an example of a set of rules and their corresponding conditions in a fall-back system:
Figure imgf000038_0002
Figure imgf000039_0001
In particular, table 4 is intended as an illustrative example of a set of rules that qualitatively tells what a type 1 diabetes patient should do in order to correct an out-of-normal range BG measurement. It is understood that, in a practical implementation, the ranges labelled "too high", "OK", "too low" may be replaced by actual blood glucose intervals. Similarly, an exercise, a meal, or insulin injection being "near" is preferably determined more precisely, e.g. within the next 15 or 30 minutes, the next hour, or the like. Furthermore, the actions may be defined more precisely, e.g. the terms "increase" and "decrease" may be qualified.
There are 24 different combinations of input variable values in this system
(3*2*2*2 = 24). Hence, the total description space consists of 24 four- dimensional points. It is possible to assign an input variable the symbolic value "*", as e.g. in the first row of table 4. This is a wildcard or "don't care" value, and it means that, independently of what value is assigned to that variable in an input, the result remains the same. Hence, an example containing one or more "don't care" values can be expanded to all the possible input values contained in it. In the above example, the first rule implies that, if the BG value is "OK", the "do nothing" action is recommended irrespective of the other variables.
It is understood that the set of rules may include additional and/or alternative rules including alternative or additional actions. For example, in some embodiments, special actions may be used. In some embodiments, the set of rules may include a symbolic action labelled "N/A". This label is used to describe combinations of input values that are forbidden, do not exist, or do not make sense.
The above example of a rule-based fall-back system provides a number of advantages, including: - Clear design requirements and good design overview. - Easy implementation of rules or "wisdom" formulated in natural language. - It is possible to ensure that all possible description states are validated. - It is possible to ensure an exhaustive search for matches in the existing example base when a new example is given. - It is possible to make a list of all examples that have not been assigned a result value yet. - There exists a strategy for constructing a necessary and sufficient input space using this framework. - It is simple to execute the rule-based fall-back system on different platforms. - It is possible to assign a reliability measure to every example in the example base.
In a preferred embodiment, the size of the input space of a rule-based fall- back system is selected sufficiently small to allow the validation of every rule in the rule base. For example, in one embodiment, the input space includes less than 500-1000 combinations. However, it is noted that in embodiments having larger input spaces, the input space may be divided up in smaller modules, e.g. by using known techniques for optimal feature extraction.
During operation, the rule-based fall-back system searches for a match between the input pattern and one ore more of the rules and examples in the rule base. If the rule base is exhaustive, at least one match will be found. The result value(s) of the matching example(s) are presented as valid results. In embodiments where the rule base is not exhaustive, a nearest neighbour search can be used if no match is found.
Another example of a rule-based fall-back system includes a set of rules that depends on a single input variable, e.g. a measured blood glucose level (BG). For example, the rule set may be expressed as follows:
IF (BG < 3.5) THEN (recommended action = "eat something and contact a doctor"); ELSE IF ((BG > 3.5) AND (BG < 8)) THEN (recommended action = "no action required");
ELSE recommended action = "take x units insulin" where x = (BG-5)/3.
Yet another example of a fall-back system may be based on an accepted set of guidelines for clinical practice. Examples of such guidelines include the "A Guide to Type 1 (Insulin-dependent) Diabetes Mellitus", European Diabetes Policy Group, International Diabetes Federation, European Region, the "ISDAP Consensus guidelines for the Management of Type 1 Diabetes Mellitus in Children and Adolescents", International Society for Pediatric and adolescent Diabetes, the "Practical Guide for Management of Type 2 Diabetes in Primary Care", based on the "Approved Guidelines for Type 2 Diabetes of the St Vincent Declaration Primary Care Diabetes Group", and the "ADA Clinical Practice Recommendations".

Claims

CLAIMS:
1. A medical advisory system for providing recommendations to a user for actions to be taken, the system comprising: - input means for receiving a number of input parameters; - processing means configured to determine from at least the input parameters a recommended action to be taken; and - output means for presenting information about the determined recommended action to a user;
wherein the processing means is configured to implement a plurality of mathematical advisory models each adapted to generate a respective model output from the received input parameters; and wherein the processing means is configured to determine the recommended action from the model output of one or more of the plurality of mathematical advisory models.
2. A medical advisory system according to claim 1 , wherein the plurality of mathematical advisory models comprises at least a first advisory model and a fall-back model; wherein the processing means is configured to select one of the first advisory model and the fall-back model based upon at least one of an input to and a model output of at least the first advisory model; and wherein the processing means is further configured to determine the recommended action from the selected model.
3. A medical advisory system according to claim 2, wherein the processing means is configured to determine a reliability measure for the model output of at least the first advisory model; and wherein the processing means is further configured to determine the recommended action from at least the first advisory model, if the determined reliability measure is above a predetermined threshold, and to determine the recommended action from said fall-back model, if the determined reliability measure is below the predetermined threshold.
4. A medical advisory system according to claim 2 or 3, wherein the fall-back model comprises a rule-based fall-back model.
5. A medical advisory system according to claim 3, wherein the rule-based fall-back model comprises an exhaustive list of ranges of input parameters and one or more respective recommended fall-back actions for each of the ranges of input parameters.
6. A medical advisory system according to any one of claims 3 through 5, wherein the processing means is adapted to determine the reliability measure from a comparison of at least a first model output of the first advisory model with at least a second model output of a second one of the plurality of mathematical advisory models.
7. A medical advisory system according to any one of claims 1 through 6, wherein the processing means is adapted to determine respective model outputs of each of at least a subset of the advisory models, the subset comprising a plurality of mutually different models, and to determine the recommended action from a combination of the determined model outputs.
8. A medical advisory system according to any one of claims 1 through 7, wherein at least one of the plurality of mathematical advisory models is an adaptive mathematical model.
9. A medical advisory system according to any one of claims 1 through 8, wherein at least one of the plurality of mathematical advisory models comprises a plurality of look-up tables, a corresponding plurality of address decoder modules, and a combiner module; wherein each look-up table includes a corresponding plurality of columns, each column comprising a plurality of table entries; wherein each of the address decoders is adapted to determine one of the plurality of columns of a corresponding one of the lookup tables; and wherein the combiner module is adapted to determine the model output of the mathematical advisory model from the table entries of the determined columns.
10. A medical advisory system according to any one of claims 1 through 9, wherein at least one of the plurality of mathematical advisory models comprises a prediction module for predicting a future value of a physiological parameter; and a control unit for determining a recommended action from at least the predicted future value of the physiological parameter.
11. A medical advisory system according to any one of claims 1 through 10, wherein at least the input means and the output means are provided by a hand-held electronic device.
12. A medical advisory system according to claim 11 , wherein the hand-held electronic device further comprises the processing means.
13. A medical advisory system according to claim 11 , wherein the medical advisory system further comprises a remote data processing system comprising the processing means; and wherein the hand-held electronic device comprises communications means for sending the received input parameters to the remote data processing system and for receiving the information about the recommended action from the remote data processing system.
14. A medical advisory system according to any one of claims 1 through 13, wherein the medical advisory system is adapted to determine a recommended action for controlling a blood glucose level of a diabetes patient.
15. A computer-implemented method of providing recommendations to a user for actions to be taken, the method comprising: - receiving a number of input parameters; - determining from at least the input parameters a recommended action to be taken; and - presenting information about the determined recommended action to a user;
wherein determining the recommended action further comprises - providing a plurality of mathematical advisory models; - determining one or more respective model outputs of one or more of the plurality of mathematical advisory models and from the received input parameters; and - determining the recommended action from the determined one or more model outputs.
16. A computer program comprising program code means adapted to execute the steps of the method according to claim 15, when said computer program is run on a data processing system.
17. A data processing system configured to perform the method according to claim 15.
PCT/DK2004/000742 2003-10-29 2004-10-28 Medical advisory system WO2005041103A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006537066A JP2007512588A (en) 2003-10-29 2004-10-28 Medical advice system
EP04762959A EP1683058A2 (en) 2003-10-29 2004-10-28 Medical advisory system
US11/410,450 US20060253296A1 (en) 2003-10-29 2006-04-25 Medical advisory system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DKPA200301599 2003-10-29
DKPA200301599 2003-10-29
US51890003P 2003-11-10 2003-11-10
US60/518,900 2003-11-10

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/410,450 Continuation US20060253296A1 (en) 2003-10-29 2006-04-25 Medical advisory system

Publications (2)

Publication Number Publication Date
WO2005041103A2 true WO2005041103A2 (en) 2005-05-06
WO2005041103A3 WO2005041103A3 (en) 2005-06-16

Family

ID=34524311

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DK2004/000742 WO2005041103A2 (en) 2003-10-29 2004-10-28 Medical advisory system

Country Status (4)

Country Link
US (1) US20060253296A1 (en)
EP (1) EP1683058A2 (en)
JP (1) JP2007512588A (en)
WO (1) WO2005041103A2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007116226A3 (en) * 2006-04-07 2008-03-13 Cambridge Entpr Ltd Blood glucose monitoring systems
JP2008176473A (en) * 2007-01-17 2008-07-31 Toshiba Corp Patient condition variation predicting device and patient condition variation-managing system
WO2009047569A2 (en) 2007-10-12 2009-04-16 Cambridge Enterprise Limited Substance monitoring and control in human or animal bodies
WO2012143505A2 (en) 2011-04-20 2012-10-26 Novo Nordisk A/S Glucose predictor based on regularization networks with adaptively chosen kernels and regularization parameters
CN101472543B (en) * 2006-05-02 2013-06-12 佛瑞德伯格曼保健有限公司 Moisture monitoring system
US9014986B2 (en) 2007-10-16 2015-04-21 Roche Diagnostics International Ag Method for storing a series of measurements
US9402953B2 (en) 2009-03-31 2016-08-02 Abbott Diabetes Care Inc. Integrated closed-loop medication delivery with error model and safety check

Families Citing this family (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6852104B2 (en) 2002-02-28 2005-02-08 Smiths Medical Md, Inc. Programmable insulin pump
US20080172026A1 (en) 2006-10-17 2008-07-17 Blomquist Michael L Insulin pump having a suspension bolus
EP1578262A4 (en) 2002-12-31 2007-12-05 Therasense Inc Continuous glucose monitoring system and methods of use
US8066639B2 (en) 2003-06-10 2011-11-29 Abbott Diabetes Care Inc. Glucose measuring device for use in personal area network
WO2005089103A2 (en) 2004-02-17 2005-09-29 Therasense, Inc. Method and system for providing data communication in continuous glucose monitoring and management system
US7977529B2 (en) * 2004-11-03 2011-07-12 Fred Bergman Healthcare Pty Ltd. Incontinence management system and diaper
US9636450B2 (en) 2007-02-19 2017-05-02 Udo Hoss Pump system modular components for delivering medication and analyte sensing at seperate insertion sites
US20080071580A1 (en) * 2005-06-03 2008-03-20 Marcus Alan O System and method for medical evaluation and monitoring
US8880138B2 (en) 2005-09-30 2014-11-04 Abbott Diabetes Care Inc. Device for channeling fluid and methods of use
US7766829B2 (en) 2005-11-04 2010-08-03 Abbott Diabetes Care Inc. Method and system for providing basal profile modification in analyte monitoring and management systems
US7826879B2 (en) 2006-02-28 2010-11-02 Abbott Diabetes Care Inc. Analyte sensors and methods of use
US7653425B2 (en) 2006-08-09 2010-01-26 Abbott Diabetes Care Inc. Method and system for providing calibration of an analyte sensor in an analyte monitoring system
US7620438B2 (en) 2006-03-31 2009-11-17 Abbott Diabetes Care Inc. Method and system for powering an electronic device
US8374668B1 (en) 2007-10-23 2013-02-12 Abbott Diabetes Care Inc. Analyte sensor with lag compensation
US8473022B2 (en) 2008-01-31 2013-06-25 Abbott Diabetes Care Inc. Analyte sensor with time lag compensation
US8346335B2 (en) 2008-03-28 2013-01-01 Abbott Diabetes Care Inc. Analyte sensor calibration management
US9392969B2 (en) 2008-08-31 2016-07-19 Abbott Diabetes Care Inc. Closed loop control and signal attenuation detection
US8140312B2 (en) 2007-05-14 2012-03-20 Abbott Diabetes Care Inc. Method and system for determining analyte levels
US7801582B2 (en) 2006-03-31 2010-09-21 Abbott Diabetes Care Inc. Analyte monitoring and management system and methods therefor
US8226891B2 (en) 2006-03-31 2012-07-24 Abbott Diabetes Care Inc. Analyte monitoring devices and methods therefor
US7618369B2 (en) 2006-10-02 2009-11-17 Abbott Diabetes Care Inc. Method and system for dynamically updating calibration parameters for an analyte sensor
US7558771B2 (en) * 2006-06-07 2009-07-07 Gm Global Technology Operations, Inc. System and method for selection of prediction tools
US20080306353A1 (en) * 2006-11-03 2008-12-11 Douglas Joel S Calculation device for metabolic control of critically ill and/or diabetic patients
US20080154642A1 (en) * 2006-12-21 2008-06-26 Susan Marble Healthcare Core Measure Tracking Software and Database
US20080199894A1 (en) 2007-02-15 2008-08-21 Abbott Diabetes Care, Inc. Device and method for automatic data acquisition and/or detection
WO2008101172A2 (en) * 2007-02-16 2008-08-21 Ohio University System and method for managing diabetes
US8732188B2 (en) 2007-02-18 2014-05-20 Abbott Diabetes Care Inc. Method and system for providing contextual based medication dosage determination
US8930203B2 (en) 2007-02-18 2015-01-06 Abbott Diabetes Care Inc. Multi-function analyte test device and methods therefor
US10860943B2 (en) 2007-02-22 2020-12-08 WellDoc, Inc. Systems and methods for disease control and management
US9754077B2 (en) 2007-02-22 2017-09-05 WellDoc, Inc. Systems and methods for disease control and management
US10872686B2 (en) 2007-02-22 2020-12-22 WellDoc, Inc. Systems and methods for disease control and management
US8170801B2 (en) * 2007-02-26 2012-05-01 Bp Exploration Operating Company Limited Determining fluid rate and phase information for a hydrocarbon well using predictive models
US8123686B2 (en) 2007-03-01 2012-02-28 Abbott Diabetes Care Inc. Method and apparatus for providing rolling data in communication systems
US20090027196A1 (en) * 2007-03-07 2009-01-29 Roland Schoettle System and method for premises monitoring and control using self-learning detection devices
US20080218338A1 (en) * 2007-03-07 2008-09-11 Optimal Licensing Corporating System and method for premises monitoring using weight detection
US20080228056A1 (en) 2007-03-13 2008-09-18 Michael Blomquist Basal rate testing using frequent blood glucose input
JP2008250725A (en) * 2007-03-30 2008-10-16 Nec Electronics Corp Interface circuit
WO2008130896A1 (en) 2007-04-14 2008-10-30 Abbott Diabetes Care, Inc. Method and apparatus for providing data processing and control in medical communication system
WO2008130897A2 (en) 2007-04-14 2008-10-30 Abbott Diabetes Care, Inc. Method and apparatus for providing data processing and control in medical communication system
US8140142B2 (en) 2007-04-14 2012-03-20 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in medical communication system
CA2683962C (en) 2007-04-14 2017-06-06 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in medical communication system
US7768387B2 (en) 2007-04-14 2010-08-03 Abbott Diabetes Care Inc. Method and apparatus for providing dynamic multi-stage signal amplification in a medical device
WO2009096992A1 (en) 2007-04-14 2009-08-06 Abbott Diabetes Care, Inc. Method and apparatus for providing data processing and control in medical communication system
US8665091B2 (en) 2007-05-08 2014-03-04 Abbott Diabetes Care Inc. Method and device for determining elapsed sensor life
US7928850B2 (en) 2007-05-08 2011-04-19 Abbott Diabetes Care Inc. Analyte monitoring system and methods
US8461985B2 (en) 2007-05-08 2013-06-11 Abbott Diabetes Care Inc. Analyte monitoring system and methods
US8456301B2 (en) 2007-05-08 2013-06-04 Abbott Diabetes Care Inc. Analyte monitoring system and methods
US9125548B2 (en) 2007-05-14 2015-09-08 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8260558B2 (en) 2007-05-14 2012-09-04 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8560038B2 (en) 2007-05-14 2013-10-15 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8103471B2 (en) 2007-05-14 2012-01-24 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8444560B2 (en) 2007-05-14 2013-05-21 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8239166B2 (en) 2007-05-14 2012-08-07 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US10002233B2 (en) 2007-05-14 2018-06-19 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US8600681B2 (en) 2007-05-14 2013-12-03 Abbott Diabetes Care Inc. Method and apparatus for providing data processing and control in a medical communication system
US7751907B2 (en) 2007-05-24 2010-07-06 Smiths Medical Asd, Inc. Expert system for insulin pump therapy
US8221345B2 (en) 2007-05-30 2012-07-17 Smiths Medical Asd, Inc. Insulin pump based expert system
EP2170158B1 (en) * 2007-06-27 2017-07-05 F. Hoffmann-La Roche AG Patient information input interface for a therapy system
CN101809577B (en) * 2007-07-23 2013-04-17 Fio公司 A method and system for collating, storing, analyzing and enabling access to collected and analyzed data associated with biological and environmental test subjects
US8834366B2 (en) 2007-07-31 2014-09-16 Abbott Diabetes Care Inc. Method and apparatus for providing analyte sensor calibration
US20090040874A1 (en) * 2007-08-08 2009-02-12 Rooney World Corp. Medication Reminder System and Method
US20090044964A1 (en) * 2007-08-16 2009-02-19 Optimal Innovations Inc. Utility Outlets as a Security System
US20090143725A1 (en) * 2007-08-31 2009-06-04 Abbott Diabetes Care, Inc. Method of Optimizing Efficacy of Therapeutic Agent
US20090101386A1 (en) * 2007-10-19 2009-04-23 Optimal Innovations Inc. Size unconstrained faceplate display for use with infrastructure device
US20090102679A1 (en) * 2007-10-19 2009-04-23 Optimal Innovations Inc. Infrastructure device with removable face plate for remote operation
US8409093B2 (en) 2007-10-23 2013-04-02 Abbott Diabetes Care Inc. Assessing measures of glycemic variability
US8377031B2 (en) 2007-10-23 2013-02-19 Abbott Diabetes Care Inc. Closed loop control system with safety parameters and methods
TWI377046B (en) * 2007-10-31 2012-11-21 Netown Corp A telemedicine device and system
US20090135006A1 (en) * 2007-11-26 2009-05-28 Optimal Innovations Inc. Infrastructure device with modular remote sensors
US20090137163A1 (en) * 2007-11-26 2009-05-28 Optimal Innovations Inc. Infrastructure device with modular replaceable sensors
US20090164239A1 (en) 2007-12-19 2009-06-25 Abbott Diabetes Care, Inc. Dynamic Display Of Glucose Information
WO2010009172A1 (en) 2008-07-14 2010-01-21 Abbott Diabetes Care Inc. Closed loop control system interface and methods
GB0813372D0 (en) * 2008-07-22 2008-08-27 Siemens Medical Solutions A confidence measure for comparing SUV between PET studies
US8622988B2 (en) 2008-08-31 2014-01-07 Abbott Diabetes Care Inc. Variable rate closed loop control and methods
US9943644B2 (en) 2008-08-31 2018-04-17 Abbott Diabetes Care Inc. Closed loop control with reference measurement and methods thereof
US8734422B2 (en) 2008-08-31 2014-05-27 Abbott Diabetes Care Inc. Closed loop control with improved alarm functions
US20100057040A1 (en) 2008-08-31 2010-03-04 Abbott Diabetes Care, Inc. Robust Closed Loop Control And Methods
US8986208B2 (en) 2008-09-30 2015-03-24 Abbott Diabetes Care Inc. Analyte sensor sensitivity attenuation mitigation
US8762072B2 (en) * 2008-10-02 2014-06-24 Koninklijke Philips N.V. Method of determining a reliability indicator for signatures obtained from clinical data and use of the reliability indicator for favoring one signature over the other
US10456036B2 (en) 2008-12-23 2019-10-29 Roche Diabetes Care, Inc. Structured tailoring
US9117015B2 (en) 2008-12-23 2015-08-25 Roche Diagnostics Operations, Inc. Management method and system for implementation, execution, data collection, and data analysis of a structured collection procedure which runs on a collection device
EP2382569A2 (en) * 2008-12-23 2011-11-02 Roche Diagnostics GmbH Management method and system for implementation, execution, data collection, and data analysis of a structured collection procedure which runs on a collection device
US20120011125A1 (en) 2008-12-23 2012-01-12 Roche Diagnostics Operations, Inc. Management method and system for implementation, execution, data collection, and data analysis of a structured collection procedure which runs on a collection device
US9918635B2 (en) * 2008-12-23 2018-03-20 Roche Diabetes Care, Inc. Systems and methods for optimizing insulin dosage
US10437962B2 (en) 2008-12-23 2019-10-08 Roche Diabetes Care Inc Status reporting of a structured collection procedure
US8849458B2 (en) * 2008-12-23 2014-09-30 Roche Diagnostics Operations, Inc. Collection device with selective display of test results, method and computer program product thereof
US20100169119A1 (en) * 2008-12-31 2010-07-01 Hussain Anwar A Systems and Methods for Delivering Continuous Quality Improvement to Complex Non-Manufacturing Industry
US20130035563A1 (en) * 2010-01-26 2013-02-07 Angelides Kimon J Progressively Personalized Wireless-Based Interactive Diabetes Treatment
US8812244B2 (en) * 2009-01-26 2014-08-19 EOS Health, Inc. Personalized wireless-based interactive diabetes treatment
US20100191075A1 (en) * 2009-01-26 2010-07-29 Kimon Angelides Progressively Personalized Decision-Support Menu for Controlling Diabetes
US8103456B2 (en) 2009-01-29 2012-01-24 Abbott Diabetes Care Inc. Method and device for early signal attenuation detection using blood glucose measurements
US8497777B2 (en) 2009-04-15 2013-07-30 Abbott Diabetes Care Inc. Analyte monitoring system having an alert
WO2010127050A1 (en) 2009-04-28 2010-11-04 Abbott Diabetes Care Inc. Error detection in critical repeating data in a wireless sensor system
WO2010127051A1 (en) 2009-04-29 2010-11-04 Abbott Diabetes Care Inc. Method and system for providing real time analyte sensor calibration with retrospective backfill
US9184490B2 (en) 2009-05-29 2015-11-10 Abbott Diabetes Care Inc. Medical device antenna systems having external antenna configurations
WO2011010462A1 (en) * 2009-07-23 2011-01-27 日本電気株式会社 Network state prediction device, mobile communication system, mobile communication method, and storage medium
DK3689237T3 (en) 2009-07-23 2021-08-16 Abbott Diabetes Care Inc Method of preparation and system for continuous analyte measurement
EP2456351B1 (en) 2009-07-23 2016-10-12 Abbott Diabetes Care, Inc. Real time management of data relating to physiological control of glucose levels
US8926561B2 (en) 2009-07-30 2015-01-06 Tandem Diabetes Care, Inc. Infusion pump system with disposable cartridge having pressure venting and pressure feedback
WO2011014851A1 (en) 2009-07-31 2011-02-03 Abbott Diabetes Care Inc. Method and apparatus for providing analyte monitoring system calibration accuracy
FI3988470T3 (en) 2009-08-31 2023-08-18 Abbott Diabetes Care Inc Displays for a medical device
US9314195B2 (en) 2009-08-31 2016-04-19 Abbott Diabetes Care Inc. Analyte signal processing device and methods
WO2011026148A1 (en) 2009-08-31 2011-03-03 Abbott Diabetes Care Inc. Analyte monitoring system and methods for managing power and noise
US9320461B2 (en) 2009-09-29 2016-04-26 Abbott Diabetes Care Inc. Method and apparatus for providing notification function in analyte monitoring systems
US8882701B2 (en) 2009-12-04 2014-11-11 Smiths Medical Asd, Inc. Advanced step therapy delivery for an ambulatory infusion pump and system
US8532933B2 (en) 2010-06-18 2013-09-10 Roche Diagnostics Operations, Inc. Insulin optimization systems and testing methods with adjusted exit criterion accounting for system noise associated with biomarkers
EP2624745A4 (en) 2010-10-07 2018-05-23 Abbott Diabetes Care, Inc. Analyte monitoring devices and methods
US20120173151A1 (en) 2010-12-29 2012-07-05 Roche Diagnostics Operations, Inc. Methods of assessing diabetes treatment protocols based on protocol complexity levels and patient proficiency levels
JP2012235869A (en) 2011-05-11 2012-12-06 Sony Corp Information processing apparatus and information processing method
US8766803B2 (en) 2011-05-13 2014-07-01 Roche Diagnostics Operations, Inc. Dynamic data collection
US8755938B2 (en) 2011-05-13 2014-06-17 Roche Diagnostics Operations, Inc. Systems and methods for handling unacceptable values in structured collection protocols
US9542532B1 (en) 2011-10-07 2017-01-10 Cerner Corporation Decision support recommendation optimization
US9317656B2 (en) 2011-11-23 2016-04-19 Abbott Diabetes Care Inc. Compatibility mechanisms for devices in a continuous analyte monitoring system and methods thereof
US8710993B2 (en) 2011-11-23 2014-04-29 Abbott Diabetes Care Inc. Mitigating single point failure of devices in an analyte monitoring system and methods thereof
WO2013078426A2 (en) 2011-11-25 2013-05-30 Abbott Diabetes Care Inc. Analyte monitoring system and methods of use
US20150025405A1 (en) * 2012-02-17 2015-01-22 Koninklijke Philips N.V. Acute lung injury (ali)/acute respiratory distress syndrome (ards) assessment and monitoring
US9180242B2 (en) 2012-05-17 2015-11-10 Tandem Diabetes Care, Inc. Methods and devices for multiple fluid transfer
US10132793B2 (en) 2012-08-30 2018-11-20 Abbott Diabetes Care Inc. Dropout detection in continuous analyte monitoring data during data excursions
US9968306B2 (en) 2012-09-17 2018-05-15 Abbott Diabetes Care Inc. Methods and apparatuses for providing adverse condition notification with enhanced wireless communication range in analyte monitoring systems
EP2901153A4 (en) 2012-09-26 2016-04-27 Abbott Diabetes Care Inc Method and apparatus for improving lag correction during in vivo measurement of analyte concentration with analyte concentration variability and range data
US9173998B2 (en) 2013-03-14 2015-11-03 Tandem Diabetes Care, Inc. System and method for detecting occlusions in an infusion pump
US20140343955A1 (en) * 2013-05-16 2014-11-20 Verizon Patent And Licensing Inc. Method and apparatus for providing a predictive healthcare service
US20150095117A1 (en) * 2013-09-30 2015-04-02 International Business Machines Corporation Managing key performance indicators
EP3087548A4 (en) 2013-12-26 2017-09-13 Tandem Diabetes Care, Inc. Safety processor for wireless control of a drug delivery device
EP4250313A3 (en) 2013-12-26 2023-11-22 Tandem Diabetes Care, Inc. Integration of infusion pump with remote electronic device
US20160103969A1 (en) * 2014-10-14 2016-04-14 CompuGroup Medical AG Chronic disease management and workflow engine
AU2016291569B2 (en) 2015-07-10 2021-07-08 Abbott Diabetes Care Inc. System, device and method of dynamic glucose profile response to physiological parameters
US10839302B2 (en) 2015-11-24 2020-11-17 The Research Foundation For The State University Of New York Approximate value iteration with complex returns by bounding
US10569016B2 (en) 2015-12-29 2020-02-25 Tandem Diabetes Care, Inc. System and method for switching between closed loop and open loop control of an ambulatory infusion pump
US11816539B1 (en) * 2016-06-14 2023-11-14 SurgeonCheck LLC Selection system for machine learning module for determining target metrics for evaluation of health care procedures and providers
KR101880718B1 (en) 2016-09-01 2018-08-17 네이버 주식회사 Method, system and user device for providing advice
WO2018086000A1 (en) * 2016-11-09 2018-05-17 Edan Instruments, Inc. Systems and methods for ultrasound imaging
US11596330B2 (en) 2017-03-21 2023-03-07 Abbott Diabetes Care Inc. Methods, devices and system for providing diabetic condition diagnosis and therapy
US11000236B2 (en) 2017-03-24 2021-05-11 Medtronic Minimed, Inc. Patient data management systems and conversational interaction methods
WO2018204568A1 (en) 2017-05-05 2018-11-08 Eli Lilly And Company Closed loop control of physiological glucose
JP7219227B2 (en) 2017-11-30 2023-02-07 テルモ株式会社 SUPPORT SYSTEMS, SUPPORT METHODS AND PROGRAMS
CN111542884B (en) 2017-12-21 2024-03-15 益首药物治疗股份公司 Closed loop control of physiological glucose
CA3125270A1 (en) * 2018-12-28 2020-07-02 Dexcom, Inc. Safety tools for decision support recommendations made to users of continuous glucose monitoring systems
US11721438B2 (en) * 2019-08-22 2023-08-08 International Business Machines Corporation Intelligent collaborative generation or enhancement of useful medical actions
US20210134431A1 (en) * 2019-11-05 2021-05-06 Baxter International Inc. Medical fluid delivery system including analytics for managing patient engagement and treatment compliance
WO2021110823A1 (en) * 2019-12-03 2021-06-10 Novo Nordisk A/S Self-benchmarking for dose guidance algorithms
US11796465B2 (en) 2020-02-06 2023-10-24 Samsung Electronics Co., Ltd. Method and system for predicting blood compound concentration of a target
WO2022086967A1 (en) * 2020-10-19 2022-04-28 Metabolic and Cardiovascular Institute of Florida, LLC An artificial intelligence-based, cognitive system and method for modifying subconscious brain habitualization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0621556A2 (en) * 1993-04-21 1994-10-26 Eastman Kodak Company A process for combining the results of several classifiers
US5701394A (en) * 1989-12-18 1997-12-23 Hitachi, Ltd. Information processing apparatus having a neural network and an expert system
EP0935212A1 (en) * 1998-02-05 1999-08-11 Intellix A/S N-Tuple or ram based neural network classification system and method
WO2000032258A1 (en) * 1998-11-30 2000-06-08 Novo Nordisk A/S A method and a system for assisting a user in a medical self treatment, said self treatment comprising a plurality of actions

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2758467C2 (en) * 1977-12-28 1985-04-04 Siemens AG, 1000 Berlin und 8000 München Device for the pre-programmable infusion of liquids
US5364346A (en) * 1985-12-20 1994-11-15 Schrezenmeir Juergen Process for the continuous and discontinuous administration of insulin to the human body
US4731726A (en) * 1986-05-19 1988-03-15 Healthware Corporation Patient-operated glucose monitor and diabetes management system
US4777953A (en) * 1987-02-25 1988-10-18 Ash Medical Systems, Inc. Capillary filtration and collection method for long-term monitoring of blood constituents
EP0290683A3 (en) * 1987-05-01 1988-12-14 Diva Medical Systems B.V. Diabetes management system and apparatus
US5216597A (en) * 1987-05-01 1993-06-01 Diva Medical Systems Bv Diabetes therapy management system, apparatus and method
US5005143A (en) * 1987-06-19 1991-04-02 University Of Pennsylvania Interactive statistical system and method for predicting expert decisions
DE3727644A1 (en) * 1987-08-19 1989-03-02 Bayer Ag FLUOROUS SUPEROPAKEMAIL FRITTEN
NL8702370A (en) * 1987-10-05 1989-05-01 Groningen Science Park METHOD AND SYSTEM FOR GLUCOSE DETERMINATION AND USEABLE MEASURING CELL ASSEMBLY.
US5362307A (en) * 1989-01-24 1994-11-08 The Regents Of The University Of California Method for the iontophoretic non-invasive-determination of the in vivo concentration level of an inorganic or organic substance
US5142484A (en) * 1988-05-12 1992-08-25 Health Tech Services Corporation An interactive patient assistance device for storing and dispensing prescribed medication and physical device
US5204670A (en) * 1988-08-29 1993-04-20 B. I. Incorporated Adaptable electric monitoring and identification system
US5222496A (en) * 1990-02-02 1993-06-29 Angiomedics Ii, Inc. Infrared glucose sensor
US5251126A (en) * 1990-10-29 1993-10-05 Miles Inc. Diabetes data analysis and interpretation method
WO1992012490A1 (en) * 1991-01-11 1992-07-23 Health Innovations, Inc. Method and apparatus to control diet and weight using human behavior modification techniques
US5370114A (en) * 1992-03-12 1994-12-06 Wong; Jacob Y. Non-invasive blood chemistry measurement by stimulated infrared relaxation emission
US5299121A (en) * 1992-06-04 1994-03-29 Medscreen, Inc. Non-prescription drug medication screening system
US5425764A (en) * 1992-07-30 1995-06-20 The University Of Toledo Bioartificial pancreas
SE500122C2 (en) * 1992-08-27 1994-04-18 Rudolf Valentin Sillen Method and apparatus for individually controlled, adaptive medication
US20010011224A1 (en) * 1995-06-07 2001-08-02 Stephen James Brown Modular microprocessor-based health monitoring system
US5956501A (en) * 1997-01-10 1999-09-21 Health Hero Network, Inc. Disease simulation system and method
US5459317A (en) * 1994-02-14 1995-10-17 Ohio University Method and apparatus for non-invasive detection of physiological chemicals, particularly glucose
US5536249A (en) * 1994-03-09 1996-07-16 Visionary Medical Products, Inc. Pen-type injector with a microprocessor and blood characteristic monitor
DE4415896A1 (en) * 1994-05-05 1995-11-09 Boehringer Mannheim Gmbh Analysis system for monitoring the concentration of an analyte in the blood of a patient
US5695949A (en) * 1995-04-07 1997-12-09 Lxn Corp. Combined assay for current glucose level and intermediate or long-term glycemic control
US5665065A (en) * 1995-05-26 1997-09-09 Minimed Inc. Medication infusion device with blood glucose data input
US5899998A (en) * 1995-08-31 1999-05-04 Medcard Systems, Inc. Method and system for maintaining and updating computerized medical records
FI118509B (en) * 1996-02-12 2007-12-14 Nokia Oyj A method and apparatus for predicting blood glucose levels in a patient
US5989917A (en) * 1996-02-13 1999-11-23 Selfcare, Inc. Glucose monitor and test strip containers for use in same
WO1997030778A1 (en) * 1996-02-23 1997-08-28 Circle Biomedical, Inc. Novel artificial pancreas
US5954640A (en) * 1996-06-27 1999-09-21 Szabo; Andrew J. Nutritional optimization method
JP2000515778A (en) * 1996-07-08 2000-11-28 アニマス コーポレーシヨン Implantable sensors and systems for in vivo measurement and control of body fluid component levels
US5937387A (en) * 1997-04-04 1999-08-10 Real Age, Inc. System and method for developing and selecting a customized wellness plan
US6012034A (en) * 1997-08-18 2000-01-04 Becton, Dickinson And Company System and method for selecting an intravenous device
US5997475A (en) * 1997-08-18 1999-12-07 Solefound, Inc. Device for diabetes management
US6269314B1 (en) * 1997-08-19 2001-07-31 Omron Corporation Blood sugar measuring device
US6024699A (en) * 1998-03-13 2000-02-15 Healthware Corporation Systems, methods and computer program products for monitoring, diagnosing and treating medical conditions of remotely located patients
DK1102559T3 (en) * 1998-09-30 2003-09-29 Cygnus Therapeutic Systems Method and apparatus for predicting physiological values
US6602469B1 (en) * 1998-11-09 2003-08-05 Lifestream Technologies, Inc. Health monitoring and diagnostic device and network-based health assessment and medical records maintenance system
US6540672B1 (en) * 1998-12-09 2003-04-01 Novo Nordisk A/S Medical system and a method of controlling the system for use by a patient for medical self treatment
US6167290A (en) * 1999-02-03 2000-12-26 Bayspec, Inc. Method and apparatus of non-invasive measurement of human/animal blood glucose and other metabolites
DE10006044A1 (en) * 2000-02-10 2001-08-16 Roche Diagnostics Gmbh System, useful for administering hormone for blood glucose regulation of patient, comprises regulation unit with controller for processing measured data, and device for administering hormone
US6572542B1 (en) * 2000-03-03 2003-06-03 Medtronic, Inc. System and method for monitoring and controlling the glycemic state of a patient
CN100448392C (en) * 2000-03-29 2009-01-07 弗吉尼亚大学专利基金会 Method, system and computer program product for the evaluation of glycemic control in diabetes from self-monitoring data
US6387349B1 (en) * 2001-03-26 2002-05-14 Council Of Scientific And Industrial Research Process for the microwave induced preparation of crystalline microporous titanium silicalite
US6544212B2 (en) * 2001-07-31 2003-04-08 Roche Diagnostics Corporation Diabetes management system
US20030199739A1 (en) * 2001-12-17 2003-10-23 Gordon Tim H. Printing device for personal medical monitors
US20030216628A1 (en) * 2002-01-28 2003-11-20 Bortz Jonathan David Methods and systems for assessing glycemic control using predetermined pattern label analysis of blood glucose readings
US7617115B2 (en) * 2003-02-11 2009-11-10 Cerner Innovation, Inc. System and method for risk-adjusting indicators of access and utilization based on metrics of distance and time
US7266400B2 (en) * 2003-05-06 2007-09-04 Orsense Ltd. Glucose level control method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701394A (en) * 1989-12-18 1997-12-23 Hitachi, Ltd. Information processing apparatus having a neural network and an expert system
EP0621556A2 (en) * 1993-04-21 1994-10-26 Eastman Kodak Company A process for combining the results of several classifiers
EP0935212A1 (en) * 1998-02-05 1999-08-11 Intellix A/S N-Tuple or ram based neural network classification system and method
WO2000032258A1 (en) * 1998-11-30 2000-06-08 Novo Nordisk A/S A method and a system for assisting a user in a medical self treatment, said self treatment comprising a plurality of actions

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CORDELLA L P ET AL: "Reliability parameters to improve combination strategies in multi-expert systems" PATTERN ANALYSIS AND APPLICATIONS SPRINGER-VERLAG UK, vol. 2, no. 3, 1999, pages 205-214, XP002326666 ISSN: 1433-7541 *
KUNCHEVA L I: "Switching between selection and fusion in combining classifiers: an experiment" IEEE TRANSACTIONS ON SYSTEMS, MAN AND CYBERNETICS, PART B (CYBERNETICS) IEEE USA, vol. 32, no. 2, April 2002 (2002-04), pages 146-156, XP002326667 ISSN: 1083-4419 *
KUNCHEVA L: "TWO-LEVEL CLASSIFICATION SCHEMES IN MEDICAL DIAGNOSTICS" INTERNATIONAL JOURNAL OF BIO-MEDICAL COMPUTING, ELSEVIER SCIENCE PUBLISHERS, SHANNON, IE, vol. 32, no. 3 / 4, 1 May 1993 (1993-05-01), pages 197-210, XP000387194 ISSN: 0020-7101 *
SHIFFMAN R N: "Representation of clinical practice guidelines in conventional and augmented decision tables." JOURNAL OF THE AMERICAN MEDICAL INFORMATICS ASSOCIATION : JAMIA. 1997 SEP-OCT, vol. 4, no. 5, September 1997 (1997-09), pages 382-393, XP002326668 ISSN: 1067-5027 *
SUEN C Y ET AL: "Multiple classifier combination methodologies for different output levels" MULTIPLE CLASSIFIER SYSTEMS. FIRST INTERNATIONAL WORKSHOP, MCS 2000. PROCEEDINGS (LECTURE NOTES IN COMPUTER SCIENCE VOL.1857) SPRINGER-VERLAG BERLIN, GERMANY, 2000, pages 52-66, XP002326665 ISBN: 3-540-67704-6 *
ULTSCH A ET AL: "CONKAT: a connectionist knowledge acquisition tool" PROCEEDINGS OF THE TWENTY-FOURTH ANNUAL HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES (CAT. NO.91TH0350-9) IEEE COMPUT. SOC. PRESS LOS ALAMITOS, CA, USA, vol. i, 8 January 1991 (1991-01-08), pages 507-513, XP010093283 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007116226A3 (en) * 2006-04-07 2008-03-13 Cambridge Entpr Ltd Blood glucose monitoring systems
CN101472543B (en) * 2006-05-02 2013-06-12 佛瑞德伯格曼保健有限公司 Moisture monitoring system
JP2008176473A (en) * 2007-01-17 2008-07-31 Toshiba Corp Patient condition variation predicting device and patient condition variation-managing system
WO2009047569A2 (en) 2007-10-12 2009-04-16 Cambridge Enterprise Limited Substance monitoring and control in human or animal bodies
US8977504B2 (en) 2007-10-12 2015-03-10 Cambridge Enterprise Limited Substance monitoring and control in human or animal bodies
EP2223251B1 (en) * 2007-10-12 2018-07-18 Cambridge Enterprise Limited Method and apparatus for monitoring a substance in human or animal bodies
US9014986B2 (en) 2007-10-16 2015-04-21 Roche Diagnostics International Ag Method for storing a series of measurements
US9402953B2 (en) 2009-03-31 2016-08-02 Abbott Diabetes Care Inc. Integrated closed-loop medication delivery with error model and safety check
US11246986B2 (en) 2009-03-31 2022-02-15 Abbott Diabetes Care Inc. Integrated closed-loop medication delivery with error model and safety check
WO2012143505A2 (en) 2011-04-20 2012-10-26 Novo Nordisk A/S Glucose predictor based on regularization networks with adaptively chosen kernels and regularization parameters
US10307109B2 (en) 2011-04-20 2019-06-04 Novo Nordisk A/S Glucose predictor based on regularization networks with adaptively chosen kernels and regularization parameters

Also Published As

Publication number Publication date
JP2007512588A (en) 2007-05-17
WO2005041103A3 (en) 2005-06-16
US20060253296A1 (en) 2006-11-09
EP1683058A2 (en) 2006-07-26

Similar Documents

Publication Publication Date Title
US20060253296A1 (en) Medical advisory system
US11664097B2 (en) Healthcare information technology system for predicting or preventing readmissions
Abdulhadi et al. Diabetes detection using machine learning classification methods
US8660857B2 (en) Method and system for outcome based referral using healthcare data of patient and physician populations
CA2303916C (en) Knowledge-based expert interactive system for pain
US8949082B2 (en) Healthcare information technology system for predicting or preventing readmissions
CN112017789B (en) Triage data processing method, triage data processing device, triage data processing equipment and triage data processing medium
CN112037922A (en) Pathological data analysis method and device, computer equipment and storage medium
Afsaneh et al. Recent applications of machine learning and deep learning models in the prediction, diagnosis, and management of diabetes: a comprehensive review
US11710572B2 (en) Experience engine-method and apparatus of learning from similar patients
CN115083555A (en) Community chronic disease assistant decision-making system
US20100088111A1 (en) System and method for obtaining, processing and evaluating individual blood type and ayurvedic core constitution (prakruti) to construct a personalized health risk assessment report
Qadri et al. Effective feature engineering technique for heart disease prediction with machine learning
Brause et al. Septic shock diagnosis by neural networks and rule based systems
Kiran et al. A gradient boosted decision tree with binary spotted hyena optimizer for cardiovascular disease detection and classification
Zitar et al. Towards neural network model for insulin/glucose in diabetics-II
Al-Khasawneh et al. A predictive E-Health information system: Diagnosing diabetes mellitus using neural network based decision support system
Alenizi et al. Machine learning approach for diabetes prediction
Saab et al. Comparison of Machine Learning Algorithms for Classifying Adverse-Event Related 30-ay Hospital Readmissions: Potential Implications for Patient Safety
CN113066531B (en) Risk prediction method, risk prediction device, computer equipment and storage medium
KR20230100770A (en) A system for providing personalized health management solutions based on personal health information
CN114743647A (en) Medical data processing method, device, equipment and storage medium
Pandey et al. Disease prediction using machine learning (Health Buddy)
Sumwiza et al. Enhanced cardiovascular disease prediction model using random forest algorithm
Raghavendra et al. DLMNN Based Heart Disease Prediction with PD-SS Optimization Algorithm

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2004762959

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11410450

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2006537066

Country of ref document: JP

WWP Wipo information: published in national office

Ref document number: 2004762959

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 11410450

Country of ref document: US