李力,汪火明,李輝
1.華中科技大學同濟醫院 計算機中心,湖北 武漢,430030;2.華中科技大學同濟醫學院附屬精神衛生中心,湖北 武漢,430030
醫囑擺藥等差數列模型算法研究
李力1,汪火明1,李輝2
1.華中科技大學同濟醫院 計算機中心,湖北 武漢,430030;2.華中科技大學同濟醫學院附屬精神衛生中心,湖北 武漢,430030
本文通過對醫囑和擺藥業務的分析,提出了基于等差數列模型的醫囑擺藥算法,該算法的實現對醫院擺藥過程的自動化具有重要的促進作用。
醫囑;擺藥;等差數列;數學模型
我國《醫療機構藥事管理辦法》明確提出醫院住院藥房實行藥學專業技術人員單劑量調配藥品。如何充分利用規范的臨床醫囑,提高遵醫囑擺藥的準確性,方便病區用藥,計算機化的臨床醫囑擺藥管理的研究和應用便顯得越發重要[1],擺藥的算法值得深入研究與探討。
1.1 醫囑及屬性設計[2-3]
分析藥療醫囑可以得到 Orders 定制的幾個重要屬性,如表1所示。
“最后執行日期”的解釋和使用,站在護士執行醫囑角度,護士需要考慮 :① 當天是否需要去執行醫囑 ;② 當天執行后,下一次執行醫囑的執行周期和具體執行日期;③執行日期當日的用藥量。因此,對今天執行而言記錄的是上次用藥的日期,執行后還需要提前知道了下次用藥日期,記錄下來以便做好準備。如 11 月 12 日新開醫囑,1 次 /日,初始是空,表示還沒執行過,今天要執行一次;執行后,下一次需要執行的日期是 11 月 13 日,保存到該字段 ;對于 1 次 /2 日,首次執行日可以在 12 日,也可在 13 日,一般首次執行日取當前日期,即 11 月 12 日(當然也可按逢單號或逢雙日執行),那么下一次執行就是在 14 日,將 11月 14日保存到該字段。

表1 Orders的重要屬性
站在藥房擺藥角度,今天擺藥工作是上次擺藥的最后擺藥日期,是本次擺藥的截止日期,記錄下來便于下次擺藥的時間計算。因擺藥天數可以不同 (日常工作是1日擺藥,特殊情況可能多日擺藥,如擺 3天的藥),會給出幾天的藥,以滿足臨床用藥需要。如果最后擺藥日期是11月12日,今天 12 日需擺 2 天的藥,可知應該將 13 日、14 日的用藥擺出,并將 11 月 14 日(對護士執行而言是有藥可用的最后執行日期)保存到該字段。
1.2 擺藥分析[4]
分析藥房擺藥業務,核心工作之一就是遵醫囑按單劑量提前給出調配藥品(具體執行日由護士安排)。有如下需求 :① 需對長期醫囑、臨時醫囑擺藥 ;② 按給藥途徑擺藥 ;③ 按指定擺藥天數擺藥,如 1 日擺藥,多日擺藥(節假日)。④ 指定病人擺藥 ;⑤ 可手工調節擺藥結果,對自動擺藥結果人工調整,如經審核后需要更換擺藥規格、數量。
當然,只有按系統設計規范下達的醫囑,計算機才能按設計好的算法完成擺藥。另外,在計算機輔助計算下,除可提供當次擺藥總量外,還能提供與之對應的具體執行日期表,可用于護士領藥時的比對和在執行日期上參考。
2.1 擺藥算法數學模型
分析遵醫囑執行和擺藥業務不難發現,護士執行醫囑的日期構成了數列 {Daten},已經知道了護士醫囑執行頻次間隔(每個執行周期)是數列的公差d,護士已經知道上次執行日期 a0,現在考慮今天(數 b)后 1 天或幾天是否需要執行醫囑,如果需要,具體日期是那些?這也正是藥房擺藥關心的需求,其中擺藥天數(1日或多日擺藥)就是今天之后的差距 Gap。
另外要注意醫囑信息中執行頻次(Freq_C)的不同。當間隔時間 Freq_I = 1 則表示 1 天里執行的次數(如 2 次/日),當 (Freq_I > 1) ∨ (Freq_I > Freq_C ) 則表示每間隔天數里要有執行的天數 (如 2 次 /3 日 )。
等差數列的數學模型問題如圖1所示。

圖1 等差數列的數學模型
對應 Freq_C=1 :構成等差數列模型,已知一數列 {an},公差是 d,現已知項 a0,當前數 b,以及 b 后 Gap,求 a0后是否存在數列項,存在的條件 Solv_con ?如存在,求數量 N,及各項 ai。
對應 Freq_C > 1 :與上例不同點只是構成數列的項是一個向量,即 an是個向量,所有執行周期內執行日期構成了一個矩陣 Am*c(c=Freq_C )。如 2 次 /3 日,就可能在第i個執行周期(該公差段)的項是 αi=(ai1, ai2),其中 ai1、ai2表示需要執行的日期。而其中的 ai1、ai2的求解是按數列 {an}的求解得到結果(是 ai1)后去求向量的各個數,可按均勻規則給出。如 3 個位置中放 2 個數,可放到 1 和 3 的位置,對應服藥表示了用藥的均勻性。因而解的結果是一個矩陣An*c(n=N_performdays,c= Freq_C)。
2.2 算法實現
相關變量定義描述與數據示例如表2所示。

表2 變量定義描述與數據示例
具體算法如下:
(1)有解條件(擺藥條件)。
Solv_con = (Disp_Date-LastPerform_day+1) / Freq_I≥1 ?成立則進入下面的計算公式,給出下一次用藥天數和最后執行日期。
(2)對新開醫囑(最后執行日期 LastPerform_day 為空)。
首先,直接給變量賦初始值。
N_performdays = 1 (首次執行按 1 次考慮,新開醫囑當天執行用藥量 :Q_per * 1):
Perform_day = Curr_day (可遵醫囑如雙號執行給出日期);
LastPerform_day = Curr_day 。
然后,可看成不是新開醫囑,按下面算法計算下一次可執行的天數和可執行日期。
因 此, 首 次 藥 房 擺 出 的 總 擺 藥 量 : Q_per *(1+ N_ performdays * Freq_C)。
(3)對不是新開醫囑。①下一次執行的天數(周期數):N_performdays = [((Disp_Date - LastPerform_day)+ N_ DispDays)/ Freq_I](取上整);② 用藥總量△:Q_per *(Freq_C *N_performdays);③ 下一次具體執行日期:Perform_days= { LastPerform_day+i * Freq_I,i=1,.., N_ performdays } ;④ 最后執行日期:LastPerform_day = LastPerform_day + N_performdays * Freq_I,保存下來;⑤越界舍棄:根據醫囑的停止時間,需要考慮舍棄超界的可能執行次數及執行日期。對c次/日,還需考慮醫囑首日執行次數的舍棄,如3次/日,首日可舍棄2次,則取1次執行。
注 :上述算法中對 Freq_C 次 / Freq_I日(如 3 次 /7 日)情況說明:
(1)由于 Freq_C>1,所求 N_performdays 準確地講求的是執行周期數。
上 述 算 法 中 只 是 簡 單 地 按(1 次 /I日 )得 到 N_ performdays(乘上 C,總用藥量不會有錯),但沒有給出各服藥周期里具體執行日期。算法求得 Perform_days 的結果是每個向量的最小數,即矩陣 A 的第一列 ;LastPerform_ day 是最后一個向量的最小數。 一般醫院在擺藥時也不需要求出各個執行日期,因此往往就不再考慮各執行周期內執行日期了。
(2)各執行周期內執行日期計算算法:
只給出了按簡單遞加規則的算法,可以做按均勻規則算。見示例說明。
Perform_days[i,j]=LastPerform_day + i * Freq_I+ j 。式中i=1…N_performdays ;j=1… Freq_C -1
2.3 示例說明(見表2)

表2 示例說明

假設給出了 11 月 12 日新開醫囑,下面針對執行頻率描述為 2 次 /3 日給出執行次數與執行日期,其中用 N 表示N_performdays,藥量計算略去。如下是擺藥示意圖與計算過程。
這個基于等差數列模型的擺藥算法不僅能得到準確的用藥量,而且也克服了目前擺藥工作中護士常說的“當日的藥拿不到”,需要下一條臨時醫囑加以配合才行的現象。同時如果需要還可以給出下一次需要執行醫囑的具體日期,供護士參考。本文探討的算法是擺藥計算的核心,程序代碼在實現上還需考慮其他一些參數信息,如跨月數據的計算,開、停日期用藥的調整。
醫囑擺藥系統的實現與應用提高了中心擺藥室管理的效率 , 減少了對中心擺藥室管理的工作量 , 減輕了工作負擔 ,避免了人為差錯。為此,系統的實施與應用上還需要做好藥品基本信息數據的定義,醫囑的規范錄入;建立醫院一種行之有效的擺藥中心作業模式[5],臨床與藥房的積極配合,如藥房保證充足的庫存,對當日新開的長期醫囑,根據病區需要及時給予擺藥。
[1] 張曉華,馮博華.臨床醫囑擺藥管理的應用研究[J].中醫藥管理雜志,2007,15(10):769-272
[2] 李力,李金,袁鑫,等.基于規范的醫療服務價格體系系統設計與實現[J].中國數字醫學,2008,3(6):30-32
[3] 李力,汪火明.臨床信息系統中促進合理用藥細節研究[J].醫學信息學,2008,(11):32-34
[4] 龍其生,張磊.醫院信息管理中擺藥模式及算法的探討[J].中國藥房,1998,9(4):164-166
[5] 李賢文,石磊,吳新榮,等.基于醫院信息系統擺藥中心作業模式的研究[J].中國藥房,2005,16(4):267-268.
[6] 肖懷玉.醫院信息系統藥庫管理子系統的優化方向[J].首都醫藥,2007,4(22):33-34.
[7] 李晉,張宏亮,楊榮,吳新榮.基于醫院信息系統的臨床藥師模塊研發的探討[J].今日藥學,2008,18(5):37-38.
[8] 付炬炫,李麗娜.醫院信息管理系統下中心擺藥室的藥品管理[J].現代中西醫結合雜志,2004,13(13):140.
Research of Doctor's Advice and Drugs Dispensing Algorithm Based on Arithmetic Sequence Model
LI Li1,WANG Huo-ming1,LI hui2
1.Computer Center,Tongji Hospital of Huazhong University of Science and Technology, Wuhan Hubei 430030, China;2. Mental Health Center, Tongji Medical College of Huazhong University of Science and Technology, Wuhan Hubei 430030, China
Through the analysis of the doctor's advice and drug dispensing, this paper proposed the doctor's advice and drug dispensing algorithm based on arithmetic series model algorithm. The implementation of the algorithm plays an important role in promoting hospital drug dispensing automation.
doctor's advice; drug dispensing; arithmetic sequence; mathematical model
R95
B
10.3969/j.issn.1674-1633.2011.06.033
1674-1633(2011)06-0092-03
2010-10-23
2010-11-24
作者郵箱:lilee@tjh.tjmu.edu.cn