Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Concurrency control wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Relational model wikipedia , lookup
Functional Database Model wikipedia , lookup
Temporal Reasoning and Planning in Medicine Temporal Mediators: Integration of Temporal Reasoning and Temporal-Data Maintenance Yuval Shahar MD, PhD Temporal Reasoning and Temporal Maintenance DB Temporal reasoning supports inference tasks involving time-oriented data; often connected with artificial-intelligence methods Temporal data maintenance deals with storage and retrieval of data that has multiple temporal dimensions; often connected with database systems Both require temporal data modelling TM Clinical decision-support application TR Examples of TemporalMaintenance Systems TSQL2, a bitemporal-database query language (Snodgrass et al., Arizona) TNET and the TQuery language (Kahn, Stanford/UCSF) The Chronus/Chronus2 projects (Stanford) Examples of Temporal-Reasoning Systems RÉSUMÉ M-HTP TOPAZ TrenDx A Typical TM and TR Application: Automated Support to Therapy by Clinical Guidelines/Protocols Clinical guidelines/protocols contain recommendations for medical interventions that are predicated on the observation of: relevant temporal patterns of these states relevant patient states CCTG-522 Recommendation Modify the standard dose of AZT for a patient if, during treatment with the protocol, the patient experiences a second episode of moderate anemia that has persisted for more than two weeks Protocol-Based Decision Support System Presents patient-specific recommendations Needs a method for verifying the presence of time-oriented patient conditions in a database Information Mismatch Temporal Abstraction Defined as the creation of high-level summaries of time-oriented data Necessary because clinical databases usually store raw, time-stamped data protocols often require information in high-level terms Temporal Patterns Temporal Maintenance Defined as the storage of time-oriented data and the selective retrieval of that data based on some time-oriented constraint Necessary because clinical conditions may be defined as temporal patterns temporal order temporal duration temporal context Temporal Data Manager Performs temporal abstraction of time-oriented data temporal maintenance Used for tasks such as finding in a patient database which patients fulfil eligibility conditions (expressed as temporal patterns), assessing the quality of care by comparison to predefined timeoriented goals, or visualization temporal patterns in the patient data Embedding A Temporal Data Manager Within a Guideline-Support System Can be embedded within a larger decision support framework, e.g., EON Mediates all access to the external clinical database Two Implementation Strategies Application Application Temporal Data Management Temporal Data Management Database 1) Extend DBMS Database 2) Extend Application Problems Extending DBMS Application Temporal data management methods implemented in DBMS: are Temporal Data Management Database limited to producing very simple abstractions are often databasespecific Problems Extending Applications Temporal data management methods implemented in applications: some functions of the DBMS are application-specific Application Temporal Data Management duplicate Database Our Strategy Separates data management methods from the application and the database Decomposes temporal data management into two general tasks: abstraction temporal maintenance Application Temporal Abstraction Temporal Querying temporal Database The Tzolkin Temporal Mediator Architecture Application Query Results Tzolkin Knowledge Base Temporal Abstraction Module TemporalQuerying Module Abstraction Knowledge Database RÉSUMÉ: Temporal Abstraction Creates summaries of time-oriented data Clinical data is usually stored as “low-level” data Protocols often specify conditions as “high-level”, interval-based concepts Is domain-independent Has a tool that facilitates knowledge acquisition and maintenance Temporal Abstraction of Hb Chronus: Temporal Maintenance Provides temporal extensions to SQL Historical relational model Each tuple has two time stamps Time stamps conferred special status Temporal algebra that supports temporal manipulations Closed algebra Complete for the temporal conditions found in protocols Chronus TimeLine SQL (TL-SQL) GRAIN SELECT FROM WHERE WHEN WEEK 2ND problem_name problems_table problem_name = ‘Hb’ START_TIME BEFORE 1/1/99 Coupling RÉSUMÉ and Chronus Integrates temporal abstraction and temporal query processing Allows retrieval of summaries of clinical data using time-oriented conditions Modify the standard dose of AZT for a patient if, during treatment with the protocol, the patient experiences a second episode of moderate anemia that has persisted for more than two weeks SQLA Interface Language Based on SQL Supports temporal queries Detects when abstractions are requested and computes them on the fly GRAIN CONTEXT SELECT FROM WHERE WHEN WEEK CCTG-522 2ND problem_name problems_table problem_name = ‘HbState’ and value = ‘moderate anemia’ DURATION (start, stop) > 2 Query-Evaluation Algorithm A Detailed Example GRAIN CONTEXT SELECT FROM WHERE WHEN WEEK CCTG-522 2ND problem_name problems_table problem_name = ‘HbState’ and value = ‘moderate anemia’ DURATION (start, stop) > 2 Loading the Domain Knowledge Examine the context clause of the SQLA statement, which contains a reference to a knowledge base Use the reference to locate and load the appropriate knowledge base Detecting the Need for Abstractions Find non-SQLA terms in WHERE clause Blood State (“HbState” and “moderate anemia”) Look up terms in RESUME KB If look-up succeeds, Tzolkin needs to compute abstractions (“HbState”) HbState Hb WBCState WBC PltState Plt Loading the Data Primitives Locate the requested abstraction in the RESUME KB Blood State (“HbState”) Find the primitive parameters (leaves of the tree) below it (“Hb”) Load all patient data of these parameter types into RESUME HbState Hb WBCState WBC PltState Plt Generating the Interpretation Contexts within RÉSUMÉ Find the types of events and abstractions that can induce a context (via a dynamic induction relation of contexts) (context CCTG522 can be induced by event: “enroll-CCTG 522”) Locate patient-specific instances of these events (patient enrolled in CCTG 522 on 10/10/1999) Compute all abstractions that can induce a context (recursive process) RESUME will then generate the appropriate contexts Invoking RÉSUMÉ and Chronus Execute RESUME to compute the requested abstractions The computed abstractions are stored in the database RESUME signals Tzolkin when it is done Then execute Chronus to retrieve the results Future Research Directions Enhancement of the query language Addition of truth-maintenance capabilities to the database Addition of “what-if” query support Provision of complete dynamic (goal-directed) query computation