چکیده
طبق آیین نامه وضع شده توسط سازمان غذا و داروی ایالات متحده و انجمن آمریکایی خون ، برای تولید پلاکتها، واحدهای اهدایی باید در شش ساعت بعد از زمان اهدای در یک مرکز فرآوری پردازش شوند. در این مقاله، با توجه به زمان موردنیاز برای فرآوری واحدهای خون اهدا شده برای تولید پلاکت، عملیات زمانبندی نوبت اهدا سایتهای اهدای خون مطالعه می کنیم. به طور خاص، با توجه به شبکه اهدای خون سازمان جمعآوری خون، سعی میکنیم زمانبندی نوبت اهدا و جمعآوری را در مکانهای اهدای خون هماهنگ کنیم تا تولید پلاکت به حداکثر برسد. ما مسئله مورد نظر را زمانبندی نوبت اهدا و جمعآوری یکپارچه مینامیم. ما ابتدا یک مدل برنامه ریزی خطی عدد صحیح مختلط برای مسئله ارائه می دهیم. سپس، الگوریتم ابتکاری به نام الگوریتم مبتنی بر برنامهریزی عدد صحیح را پیشنهاد میکنیم. ما یک مطالعه محاسباتی را برای آزمایش عملکرد مدل و الگوریتم ارائه شده از نظر کیفیت حل و بازده محاسباتی در مواردی از مرکز خون واقع در هوستون، TX انجام میدهیم.
کلید واژهها: جمعآوری خون، برنامهریزی نوبت اهدا، تولید پلاکت،خوشهبندی و برنامهریزی عدد صحیح مختلط
مقدمه
خون یکی از محصولات حیاتی مورد نیاز برای درمانهای پزشکی از جمله درمان سرطان، جراحیهای ارتوپدی و قلبی عروقی، پیوند عضو و مغز و درمان اختلال خون است. در ایالات متحده، هر دو ثانیه یک بیمار به خون یا فرآوردههای خونی نیاز دارد و روزانه بیش از 41000 اهدا خون برای برآوردن تقاضا لازم است. در بسیاری از کشورها ، مردم همچنان به دلیل عرضه ناکافی محصولات خون در حال مرگ هستند. طبق قوانینی که توسط سازمان غذا و داروی ایالات متحده (FDA) تعیین شده است، حدود 38٪ از جمعیت واجد شرایط اهدا خون در ایالات متحده هستند، اما فقط 3٪ از جمعیت در سال خون اهدا می کنند. هنگامی که یک اهداکننده خون اهدا میکند، این خون اهدا شده (که به آن خون کامل نیز گفته میشود) با سانتریفیوژ کردن خون، اجزای آن جدا میشود.
سه فرآورده اصلی خون مورد استفاده در انتقال خون گلبولهای قرمز، پلاکتها و پلاسما است. پلاسما برای بیماران سوختگی استفاده میشود. گلبولهای قرمز برای هر بیمار نیاز به تزریق خون مورد نیاز است. آنها عمدتاً برای درمان کم خونی، جراحی، درمان اختلالات خونی و برای نوزادان نارس استفاده میشوند. سرانجام، پلاکتها برای معالجه بیماران سرطانی، قربانیان تصادف و مالاریا، بیماران آسم و سایر افراد با مشکلات لخته شدن خون استفاده میشود. اگرچه تمام این محصولات ماندگاری محدود دارند ، اما پلاکت ها به دلیل طول عمر کوتاه آنها (5-9 روز) مهمترین آن هستند. در ایالات متحده ، FDA و انجمن آمریکایی بانک خون AABB جمع آوری، فرآوری و ذخیره خون و اجزای آن را تنظیم میکنند مطابق این آیین نامهها ، خون کامل باید در مدت 8 ساعت بعد از اهدای خون برای استخراج پلاکتها پردازش شود. استخراج پلاکتها به طور کلی در یک مرکز فرآوری مرکزی انجام میشود. از آنجا که پردازش حدود 2 ساعت طول می کشد، هر واحد خون اهدایی که در محل اهدای خون یا در یک وسیله نقلیه جمع آوری بیش از 6 ساعت قبل از پردازش باقی بماند ، نمیتواند برای تولید پلاکت استفاده شود. با این حال، این واحدها هنوز هم می توانند برای استخراج سایر فرآوردههای خونی مورد استفاده قرار گیرند. اکثر سازمانهای جمع آوری خون به منظور بهبود کارکنان و تجهیزات ، با برنامه زمانبندی مستقر فعالیت می کنند . این همچنین زمان انتظار اهدا کنندگان را کاهش می دهد که برای اهداهای بعدی اهداکنندگان مکرر مهم است. علاوه بر این، از آنجا که زمان اهدا بر تولید پلاکت و همچنین به دلیل محدودیت زمانی پردازش 6 ساعته تأثیر میگذارد ، همزمان سازی برنامههای قرار ملاقات و جمعآوری میتواند باعث افزایش عرضه پلاکت شود.
در این مقاله ، ضمن در نظر گرفتن محدودیت زمانی پردازش در تولید پلاکت ، زمانبندی جمعآوری و نوبت اهدا را در سایتهای اهدا بررسی میکنیم. به طور خاص، ما به منظور به حداکثر رساندن تولید پلاکت، مسئله هماهنگی برنامه های جمعآوری و نوبت اهدا را مطالعه می کنیم. ما این مسئله را مسئله زمانبندی نوبت اهدا و جمعآوری یکپارچه ICASP مینامیم. سایتهای اهدا ظرفیتهایی دارند که میتوان تعدادی اهدا را همزمان انجام داد. ما ناوگان وسایل نقلیه برای جمعآوری واحدهای خون اهدا شده از محلهای اهدا داریم. با استفاده از تعداد تخمینی اهداکنندگان که هر روز در هر محل اهدا قرار ملاقات میگذارند، سعی میکنیم زمانبندی جمعآوری و قرار ملاقاتها را همزمان برای عرضه پلاکت بهبود یابیم.
در ICASP ، فرض می کنیم که سایت های اهدای به خوشه هایی تقسیم می شوند که در آن هر وسیله نقلیه به یک خوشه منفرد اختصاص داده شده است و سایتهای اهدای یک خوشه توسط همان وسیله نقلیه بازدید میشود.
این فرض خوشه بندی عملی تر است و در برنامه های دنیای واقعی مورد استفاده قرار می گیرد زیرا نیاز به هماهنگی بازدیدهای وسایل نقلیه مختلف به همان محل اهدای را برطرف می کند. ما ابتدا یک فرمول برنامهریزی یرخطی عدد صحیح مختلط برای ICASP ایجاد میکنیم و سپس آن را خطی می کنیم. سپس ، ما یک الگوریتم ابتکاری به نام الگوریتم مبتنی بر برنامهریزی عدد صحیح IPBA پیشنهاد میکنیم تا یک حل مناسب پیدا کنید. در IPBA ، ابتدا مکانهای اهدایی را با استفاده از یک نوع از الگوریتم خوشه بندی مشهور k-means خوشه بندی میکنیم و سپس برنامه های جمع آوری و بازدیدها را برای هر خوشه تعیین می کنیم. مشارکت اصلی ما در این مقاله توسعه راهکارهای حل برای هماهنگ کردن زمانبندی قرار ملاقاتها و جمعآوری در زنجیره خون به منظور بهبود دسترسی به پلاکت است، که قبلاً در ادبیات مورد مطالعه قرار نگرفته است. با توجه به اهمیت پلاکتها در روشهای پزشکی ، انتظار می رود نتایج این مطالعه تأثیر اجتماعی چشمگیری داشته باشد
مرور ادبیات
مطالعه ما با سایر مقالات تجزیه و تحلیل عملیات جمع آوری خون در نحوه انجام زمانبندیهای نوبت اهدا متفاوت است. از آنجا که زمانبندیهای نوبت اهدا (بر همین اساس زمان اهدای) بر زمانبندی جمعآوری تأثیر می گذارد، به جای این که فرض کنیم نوبت اهدا در یک سایت اهدای به طور یکنواخت در طول روز توزیع میشود، ما زمانبندیهای نوبت اهدا و جمعآوری را به روشی یکپارچه تعیین میکنیم تا بتوانیم عرضه پلاکت را بهبود بخشد.
تعریف مسئله
در ICASP ، با فرض اینکه ما می توانیم قرارهای اهدا خون را در هر زمان و در ساعات کاری برنامهریزی کنیم ، میخواهیم برنامههای نوبت اهدا و جمعآوری برای سایتهای اهدایی را با هدف حداکثر تولید پلاکت تعیین کنیم. ما یک مثال ساده را ارائه می دهیم (به شکل 1 مراجعه کنید) برای نشان دادن اهمیت همزمان سازی زمانبندیهای نوبت اهدا و جمعآوری برای به حداکثر رساندن تولید پلاکت. در شکل 1، ما یک مرکز پردازش، دو سایت اهدا و یک وسیله نقلیه برای جمعآوری خون اهدا شده از این محلهای اهدایی داریم. زمان سفر مربوطه در هر کمان داده شده است. ما فرض می کنیم که هر سایت اهدایی به مدت 4 ساعت از 8 صبح 12 باز است و 8 اهدا روزانه در هر سایت اهدا انجام میشود. علاوه بر این ، فرض میکنیم که انجام هر اهدا یک ساعت طول میکشد ، و هر اهدا میتواند در یکی از فواصل 1 ساعته بعدی 8-9 صبح ، 9-10 صبح ، 10-11 صبح ، 11-12 برنامهریزی شود هر سایت اهدا می تواند 4 اهدا را همزمان ، یعنی Ci= 4 انجام دهد. سرانجام، فرض میکنیم که خون اهدا شده باید در مدت 6 ساعت از زمان اهدای اهدا پردازش شود تا پلاکتها استخراج شوند. این بدان معنا است که واحدهای خون اهدا شده در فاصله زمانی 8-9 صبح باید حداکثر 3 بعدازظهر به مرکز پردازش تحویل داده شوند. برای سادگی ، فرض میکنیم که برای همه مکان ها fi =0 ، و مرکز پردازش در طول روز باز حداکثر مقدار قابل جمع آوری و پردازش 12 واحد است. برای جمع آوری 12 واحد خون ، وسیله نقلیه باید ساعت 7 صبح از مرکز پردازش خارج شود و به ترتیب در ساعت 10 صبح و 12 بعد از ظهر به ترتیب مکانهای اهدای 1 و 2 مراجعه کند. اما اگر زمانبندی جمعآوری و قرار ملاقاتها با هم در نظر گرفته شود ، میتوانیم با برنامهریزی 4 اهدا در هر یک از فواصل 8-9 صبح و 9-10 صبح در محل اهدای 1 و اجرای برنامه برای سایت دوم اهدا، کلیه واحدهای اهدا شده را جمعآوری کنیم.
مدل برنامهریزی خطی عدد صحیح مختلط
در ICASP ، هدف این است که تعداد واحدهای خون اهدا شده که برای تولید پلاکتها پردازش میشوند ، به حداکثر برسد.
عملکرد هدف به شرح زیر است
محدودیتهای مربوط به تور
محدودیتهای (2) و (3) اطمینان حاصل میکند که هر سایت اهدا در هر تور یکبار بازدید میشود.
محدودیت (4) تعادل جریان برای همه مکانها برآورده میکند.
محدودیت (5) تضمین میکند نمیتوانید یک تور با اندیس (زیروند) خاصی را اجرا کنید، مگر اینکه همه تورهای با اندیسهای کوچکتر اجرا شوند.
محدودیت (6) تضمین میکنند که اگر وسیله نقلیه k مرکز پردازش را برای انجام تور ترک کند، به مرکز پردازش باز میگردد.
محدودیت (7) اطمینان حاصل میدهد که اگر وسیله نقلیه k مرکز پردازش را برای اجرای تور m ترک نکند، هیچ یک از سایتهای اهدای در آن تور مورد بازدید قرار نمیگیرند.
در ICASP ، ما یک ساختار خوشهای را فرض میکنیم که در آن همه مکانهای اهدا در یک خوشه با یک وسیله نقلیه بازدید میشوند و یک وسیله نقلیه فقط در یک خوشه به سایت های اهدای مراجعه میکند.
برای خوشه بندی سایتهای اهدای، محدودیت (8) را اضافه میکنیم.
محدودیتهای زمانی ورود
محدودیتهای (9)- (11) زمان ورود یک وسیله نقلیه به یک سایت اهدا را در یک تور مشخص میکند.
محدودیت (12) تضمین میکند یک سایت اهدا قبل از زمان بازگشایی آن قابل بازدید نیست.
محدودیت (13) اطمینان حاصل کنید که در صورت عدم بازدید، زمان بازدید از سایت اهدا در اولین تور یک وسیله نقلیه برای آن تعیین میشود.
محدودیتهای (14) و (15) زمان ورود یک وسیله نقلیه به مرکز پردازش پس از اجرای تور تعیین میشود.
محدودیت (16) و (17) تضمین میکند اگر از سایت اهدای i در وسیله نقلیه k در تور m بازدید نشود، ما ximk را برابر با زمان بازدید از این سایت اهدای در تور قبلی با همان وسیله نقلیه، یعنی xi(m-1)k، قرار میدهیم.
محدودیت (18) اطمینان میدهد هنگامی که یک سایت اهدا بازدید شده است، تعداد واحدهای خون اهدا اضافه شده از سایت جمعآوری میشود و برای تولید پلاکت استفاده میشود.
محدودیتهای مقادیر جمعآوری شده
برای محاسبه تعداد واحدهای اهدایی که می توان در هنگام بازدید یک وسیله نقلیه از سایت اهدا برنامهریزی و جمعآوری کرد، باید آخرین زمان vimk را پیدا کنیم که توسط آن باید تمام اهدا که در این تور انتخاب میشوند به پایان برسد.
محدودیتهای (19) و (20) اطمینان میدهد که اهداهایی که در تور انجام میشود، دیرتر از زمان بازدید وسیله نقلیه و زمان بسته شدن محل اهدای به پایان رسیده است.
محدودیتهای (21) و (22) تضمین میکند اگر از سایت اهدای i در وسیله نقلیه k در تور m بازدید نشود، ما vimk را برابر با آخرین زمان بازدید از این سایت اهدا در تور قبلی با همان وسیله نقلیه، یعنی vi(m-1)k ، قرار میدهیم.
محدودیتهای (23) - (25)، با استفاده از vimk، تعداد واحدهای اهدایی که میتوانید از سایت اهدا در تور m با وسیله نقلیه k جمعآوری کنید، تعیین میشود.
محدودیت(23) مقدار جمعآوری در هر بازدید نمیتواند بیش از مقداری زمانبندی شده باشد.
محدودیت(24)، مقداری که میتواند در هر تور جمع شود، نمیتواند از مقداری که میتوانسته پس از آخرین بازدید تا کنون، در همان مرکز اهدا شود، بیشتر باشد.
محدودیت (25) با توجه به زمان رسیدن وسیله نقلیه به مرکز پردازش و محدودیت زمانی پردازش S، مقدار خونی که میتواند جمعآوری شود را محدود میکنند.
محدودیتها (24) و (25) خطی نیستند، اما میتوانیم آنها را با استفاده از متغیرهای عدد صحیح کمکی به صورت زیر خطیسازی کنیم.
محدودیتهای (31) - (36) بیانگر دامنهی متغیرهای تصمیمگیری بیان میکند.
نتایج محاسباتی
برای حل ICASP از الگوریتم ابتکاری مبتنی بر برنامهریزی عدد صحیح استفاده شده است. جدول 1 نشان می دهد که مدل ریاضی MILP قادر به یافتن راه حل مناسب در 8 ساعت نیست. وقتی محدودیت زمانی را به 24 ساعت افزایش می دهیم، حلهای ما در مقایسه با زمان 8 ساعته، حلهای به مراتب بهتری پیدا میکنیم. متوسط اختلاف بهینه حلهای بدست آمده برای MILP به مدت 24 ساعت، 83/5٪ است. IPBA قادر است حلهایی با متوسط اختلاف بهینه 2.74٪ پیدا کند و میانگین زمان اجرای الگوریتم حدود 12 دقیقه است. اگرچه برای برخی از موارد ما می توانیم با اجرای مدل MILP به مدت 24 ساعت راه حل بهتری پیدا کنیم ، اما به طور متوسط IPBA در مدت زمان کمتری حلهایی با 3٪ شکاف بهینه کمتر پیدا میکند. میانگین زمان اجرای IPBA به شدت به تعداد دفعاتی که الگوریتم را اجرا میکنیم بستگی دارد. اعداد ارائه شده در جدول 1 بر اساس 100 دور مرحله خوشه بندی است. هنگامی که الگوریتم را با 50 خوشه آزمایش کردیم، متوسط اختلاف بهینه 3.25٪ و متوسط زمان اجرای 3.41 دقیقه را مشاهده کردیم.
نتیجهگیری
براساس آیین نامه، واحدهای خون اهدا شده باید طی شش ساعت از زمان اهدای اهدا به منظور استخراج پلاکتها پردازش شوند. پردازش در یک مرکز پردازش مرکزی انجام میشود و این محدودیت زمانی پردازش، سازمانهای جمع آوری خون را مجبور میکند تا برنامه های جمعآوری و قرار ملاقاتها را در سایتهای اهدای خون در شبکه خود هماهنگ کنند. در این مقاله، مسئله زمانبندی نوبت اهدا و جمعآوری یکپارچه ICASP را معرفی میکنیم ، که در آن هدف ما حداکثر رساندن تعداد واحدهای خون اهدا شده است که می توانند در مدت زمان پردازش برای تولید پلاکت به یک مرکز پردازش منتقل شوند. ما با هماهنگسازی برنامههای قرار ملاقات و جمعآوری، این هدف را محقق میکنیم. ابتدا، ما یک فرمول برنامهریزی خطی عدد صحیح مختلط برای ICASP ایجاد میکنیم. سپس، الگوریتم ابتکاری را به نام الگوریتم مبتنی بر برنامهریری عدد صحیحIPBAپیشنهاد میکنیم. در IPBA ، ما از یک نوع وسیله نقلیه برای فرمولاسیون خطی عدد صحیح مختلط استفاده می کنیم. اجرای مدل ریاضی و الگوریتم ابتکاری بر روی 30 نمونه تولید شده بر اساس دادههای واقعی از مرکز خون منطقهای در هوستون ، انجام می شود. نتایج نشان می دهد که الگوریتم ابتکاری پیشنهادی حلهای بهتری را در مدت زمان کمتری نسبت به فرمول ریاضی ارائه میدهد.