دانلود پروژه های پژوهشی در رابطه با یک چارچوب ... - منابع مورد نیاز برای پایان نامه : دانلود پژوهش های پیشین |
عنوان صفحه
شکل ۲-۱: یک معماری کلی برای محاسبات پوشیدنی ۱۲
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
شکل ۲-۲: درخت اتکاپذیری ۱۶
شکل ۲-۳: رابطه علت و معلول نقص، خطا و شکست ۱۸
شکل ۲-۴: جنبه های تحمل خطا از نظر معماری یک کامپیوتر پوشیدنی ۲۶
شکل ۳-۱: یک معماری پیشنهادی برای محاسبات پوشیدنی ۴۲
شکل ۳-۲: طرح کلی معماری پیشنهادی ۴۳
شکل ۳-۳: معماری سختافزاری یک Body Node 44
شکل ۳-۴: معماری سختافزاری یک Master Node 45
شکل ۳-۵: معماری سختافزاری یک Mobile Node 45
شکل ۳-۶: یک معماری برای نظارت بر سلامت ۴۷
شکل ۳-۷: یک معماری مبتنی بر ایستگاه مبنا ۴۸
شکل ۳-۸: برقراری ارتباط بین Body Node و Master Node در حالت اول ۵۱
شکل ۳-۹: برقراری ارتباط بین Body Node و Master Node در شبکه A و در حالت دوم ۵۲
شکل ۳-۱۰: افزونگی TMR برای ماژول سنسور در Body Nodeها ۵۵
شکل ۳-۱۱: افزونگی standby برای ماژول سنسور در Body Nodeها ۵۶
شکل ۳-۱۲: الگوریتم تعویض سنسور ۵۷
شکل ۳-۱۳: برقراری ارتباط بین Mobile Node و Master Node در حالت اول ۶۶
شکل ۳-۱۴: برقراری ارتباط بین Master Node و Mobile Node در شبکه A و در حالت دوم ۶۶
شکل ۳-۱۵: افزونگی standby برای ماژول گیرنده در Master Nodeها ۶۸
شکل ۳-۱۶: برقراری ارتباط بین Mobile Node و Body Node در شبکه A 72
شکل ۳-۱۷: تحمل خرابی باتری Master Node در شبکه های چند Master Nodeی که فاقد Master Node فیزیکی افزونه هستند ۷۵
شکل ۴-۱: دیاگرام انتقال حالت یک سیستم تک مؤلفهای ۹۳
شکل ۴-۲: یک سیستم standby با یک مؤلفهی افزونه ۹۴
شکل ۴-۳: دیاگرام انتقال حالت یک سیستم standby با یک مؤلفهی افزونه ۹۴
شکل ۴-۴: قابلیت اطمینان در Body Nodeها ۹۶
شکل ۴-۵: قابلیت اطمینان در Master Nodeها ۱۰۰
شکل ۴-۶: قابلیت اطمینان در معماریها ۱۰۳
چکیده
خرابی در سیستمهای با کاربردهای حساس، می تواند فاجعههای جبرانناپذیری را رقم بزند. طراحی این دسته از سیستمها باید به گونه ای باشد که در صورت رخداد خطا، قادر به انجام صحیح وظایف خود باشند، به علاوه تا حد ممکن از بروز خطا جلوگیری شود. از اینرو تحملپذیری در برابر خطا برای سیستمهایی با کاربردهای حساس یک نیاز حیاتی است. کامپیوترهای پوشیدنی نمونه ای از این سیستمها هستند که امروزه به صورت گسترده در کاربردهای حساس از جمله حوزه سلامت مورد استفاده و توجه محققان قرار گرفتهاند. به عنوان مثال خطای این سیستمها برای بیماری که کیلومترها از دکتر خود یا بیمارستان فاصله دارد می تواند عواقب جبران ناپذیری را به همراه داشته باشد. لذا تحملپذیری محاسبات پوشیدنی در برابر خطا ضروری است و باید به صورت جدی مورد مطالعه قرار گیرد. در تحقیق حاضر مشخص می شود که با وجود اهمیت موضوع، در این زمینه تحقیق زیادی صورت نگرفته است. از اینرو با مطالعه کارهای دیگران و بررسی معماریهای موجود، در این تحقیق یک معماری سه لایهای متشکل از محاسبات پوشیدنی، محاسبات سیار و محاسبات ابری ارائه می شود. عملکرد صحیح سیستمهای استفاده کننده از این معماری، یک چالش است. در این تحقیق به منظور حل چالش ذکر شده، یک چارچوب تحمل خطا برای معماری فوق ارائه می شود. همچنین، اثبات می شود که این چارچوب تحمل خطا قابلیت اطمینان را افزایش میدهد.
واژه های کلیدی: محاسبات ابری، محاسبات سیار، محاسبات پوشیدنی، تحملپذیری خطا، گره ارباب، گره بدن، گره سیار
فصل اول
کلیات تحقیق
۱-۱ مقدمه
در دهههای اخیر تکنولوژیهای محاسباتی به دلیل پیشرفتهای چشمگیرشان همواره مورد توجه علوم مختلف بوده اند. این فناوریها با داشتن مزایای بسیاری از جمله کاهش هزینهها، افزایش دقت و سرعت، یاریگر سایر علوم بوده اند. کامپیوترها و فناوریهایشان به دلیل نقش مادر داشتن، در حال استفاده شدن در سایر فیلدهای علمی هستند.
در بین شاخه های مختلف علمی بعضی از حوزه ها از جمله حوزه سلامت حیاتی هستند. از سویی فناوریهای محاسباتی پا را فراتر نهادهاند و وارد این حوزه ها شده اند. در واقع کاربردهای حیاتی مجذوب پیشرفتها و مزایای چشمگیر این تکنولوژیها شده اند. امروزه کاربردهایی از جمله حوزه سلامت و درمان که نیاز به حداقل زمان پاسخ دارند با بهره گیری از این تکنولوژیها به پیشرفتهای عظیمی دستیافتهاند.
خطا در سیستمهای محاسباتی اجتنابناپذیر است اما در طرف مقابل در کاربردهای حیاتی ریسک معنا ندارد. پس باید سعی شود که عملکرد و کارایی سیستم با وجود این خطاها حفظ شود. این کار باید بگونهای انجام گیرد که سیستم از کار نیافتد بطوریکه بتواند به درستی کار کند. برای دستیابی به اهداف ذکر شده، سیستم باید در برابر خطا تحملپذیر باشد.
در واقع یک سیستم بدون در نظر گرفتن ملاحضات پایداری نمیتواند مورد رضایت کاربر واقع شود، اهمیت این موضوع در سیستمهایی که در معرض خرابی بیشتری هستند، به چشم می آید به خصوص در امر سلامت که تأخیر یا خرابی خسارتهای جبرانناپذیری در پی خواهد داشت که حتی ممکن است منجر به مرگ بیمار گردد. با توجه به اینکه مطالعات زیادی درباره تحملخطا برای محاسبات پوشیدنی در حوزه سلامت صورت نگرفته است، اینگونه مطالعات به ویژه در حوزه سلامت میتوانند مبنایی برای کارهای علمی آینده باشند.
در حال حاضر سه فناوری محاسبات ابری، محاسبات سیار و محاسبات پوشیدنی مطرحترین و عالیترین مباحث دنیای محاسبات میباشند که با کمک هم میتوانند بسیاری از مشکلات حوزه سلامت را حل کنند. در ادامه به منظور آشنایی بیشتر، تاریخچه این سه تکنولوژی مهم شرح داده می شود.
۱-۱-۱ تاریخچه رایانش ابری
در شبکه های کامپیوتری به صورت نمادین شبکه اینترنت را به شکل ابر نمایش می دهند. زیرا اینترنت همانند یک ابر جزئیات پیچیده و فنیاش را از دید کاربران مخفی نگه میدارد. این در حالیست که در دهه ۱۹۶۰ اصول و مفاهیم رایانش ابری توسط جان مک کارتی شرح داده شد. وی اظهار داشت که «رایانش ممکن است روزی به عنوان یکی از صنایع همگانی سازماندهی شود». همچنین در سال ۱۹۶۶ کتابی تحت عنوان «مشکل صنعت همگانی رایانه» توسط پارک هیل داگلاس نوشته شد که در آن تقریباً تمام ویژگیهای رایانش ابری مطرح شد.
سرانجام سایت آمازون از سال ۲۰۰۶ تصمیم به ارائه سرویس به کاربران با بهره گرفتن از رایانش ابری نمود. در واقع سایت آمازون با پیادهسازی بستر ابری بر روی مرکز دادهاش نقش مهمی را در توسعه و معرفی رایانش ابری داشت. با گذشت زمان رایانش ابری مورد توجه محققان و دیگر غولهای رایانهای از جمله گوگل قرار گرفت.
۱-۱-۲ تاریخچه محاسبات ابری موبایل
واژه «محاسبات ابری متحرک» تنها در مدت کوتاهی بعد از مفهوم «محاسبات ابری» در اواسط سال ۲۰۰۷ معرفی شد که توجهات را به خود به عنوان یک گزینهی تجاری سودآور جلب کرده است و باید گفت که توسعه و کارکردِ هزینه برنامه های موبایل را کاهش میدهد. محاسبات ابری متحرک از طرف کاربران موبایل به عنوان یک تکنولوژی جدید برای دستیابی به تجربهای غنی از سرویسهای گوناگون موبایل با هزینۀ کم است و از طرف محققان به عنوان یک راه حلِ امید بخش برای IT میباشد. کاربران موبایل میتوانند برنامه های موبایل را بر روی دستگاههای راه دور و از طریق شبکه های بیسیم اجرا کنند. محاسبات ابری متحرک اشاره دارد به یک زیرساخت که ذخیرهسازی داده و پردازشِ داده، هر دو در بیرون از دستگاه موبایل اتفاق میافتند. با مطالعهای که توسطJuniper Research صورت گرفته است استفادهی روزافزون از محاسبات سیار مشهود میباشد، این تحقیق بیان میکند که انتظار میرود مصرف کننده و بازار تجاری برای برنامههای درخواستی سیار مبتنی بر ابر تا سال ۲۰۱۴ تا بیش از ۵/۹ بیلیون دلار افزایش یابد.
۱-۱-۳ تاریخچه کامپیوترهای پوشیدنی
اگر کامپیوترهای پوشیدنی را بدین صورت تعریف کنیم که کامپیوترهایی هستند با قابلیت پوشده شدن بر بدن میتوان گفت که اولین کامپیوتر پوشیدنی یک ساعت جیبی است که در اوایل قرن شانزدهم ساخته شد. این نوع کامپیوترها به مرور توسعه یافتند بطوریکه در سال ۱۹۶۱ پدر تئوری اطلاعات یعنی ادوارد. او. تورپ[۱] کامپیوتری در ابعاد پاکت سیگار ساخت. این ابزار قادر به پیش بینی چرخش رولت[۲] بود. در سال ۱۹۷۷ کالینز[۳] جلیقهای برای افراد نابینا طراحی کرد همچنین در این سال شرکت HP ساعتی را ساخت که دارای ماشین حساب جبری بود. استیو مان[۴] در سال ۱۹۸۱ به منظور کنترل فلش دوربین عکاسی، کولهپشتی کامپیوتری را طراحی کرد. در سال ۱۹۸۶ ریانش کوچگری توسط استیو رابرتز[۵] مطرح شد. وی یک دوچرخه کهWinnebiko II نامیده میشد را ساخت. یک کامپیوتر و یک صفحه کلید در این دوچرخه تعبیه شده بود بطوریکه او میتوانست در هنگام حرکت تایپ کند. ادگار ماتیاس[۶] و مایک رویسی[۷] در سال ۱۹۹۴ یک کامپیوتر مچی را ابداع کردند. در همین سال محققان شرکت IBM یک کامپیوتر کمری ساختند. همچنین در سال ۱۹۹۴ مایک لامینگ[۸] و مایک فلاین[۹] یک کامپیوتر پوشیدنی تحت عنوانForget Me Not اختراع کردند که بر روی سر نصب میشد.
در دهه ۱۹۹۰ واژه سایبورگ[۱۰] مطرح شد. به انسانی که وسایلی از قبیل مخزن اکسیژن، به عملکرد عادی بدنش کمک می کنند یا اعضایی از بدنش را کنترل می کنند، سایبورگ گفته می شود. دکتر استیو ماندر سال ۱۹۹۴ یک وبکم بیسیم پوشیدنی ساخت، به ایشان سایبورگ زنده میگویند زیرا وی مخترع ابزارهای پوشیدنی زیادی است که بطور روزمره از آنها استفاده می کند. پروفسور کوین وارویک[۱۱] نیز یک سایبورگ زنده میباشد که در سال ۱۹۹۸ با انجام عمل جراحی یک قطعه سیلیکونی فرستنده-گیرنده خودکار بر روی بازویش کار گذاشته شد، با این کار او اولین انسانی بود که یک کامپیوتر در بدنش کاشته شد. کامپیوتر مذکور به وی این امکان را میدهد که به هنگام عبور از راهروها و دفاتر بخش دانشگاهی که او در آن کار میکند، درها باز شوند، همچنین این قطعه چراغها، بخاریها و کامپیوترها را بصورت اتوماتیک برایش روشن می کند و حتی تعداد ایمیلهایش را به او ابلاغ می کند.
اما از سال ۲۰۰۰ به بعد کامپیوترهای پوشیدنی با زندگی انسانها عجین شدند به گونه ای که هر روزه توسط کاربران برای انجام فعالیتهای مختلف استفاده میشوند. دکتر «روزبه جعفری» محقق ایرانی و استادیار دانشگاه دالاس به منظور نظارت بر وضعیت سلامت افراد، رایانه پوشیدنی بیسیم در ابعاد یک دکمه طراحی کرد که براحتی بر روی بدن نصب میشد. وی به دلیل این اختراع، در سال ۲۰۱۲ برنده جایزه بنیاد ملی علوم CAREERشد.
۱-۲ بیان مسأله
هر چقدر که سیستم حساستر باشد و در معرض مشکلات بیشتری قرار گیرد، مدیریت وقایع و رخدادها واجبتر میگردد. تحمل خطا یک نگرانی عمده برای تضمین در دسترس بودن و قابلیت اطمینان خدمات حیاتی و همچنین کارکرد درست سیستمهای نرمافزاری و سخت افزاری است. به منظور به حداقل رساندن تأثیر خرابی بر روی سیستم و کارکرد صحیح و موفق سیستم، خرابی باید پیش بینی شده و فعالانه مدیریت و کنترل گردد. روشهای تحمل خطا در واقع برای پیش بینی این خرابیها و انجام یک اقدام مناسب قبل از خرابی میباشد.
سهتایی فناوریهای روز شامل محاسبات پوشیدنی، محاسبات موبایل و محاسبات ابری پایه بسیاری از کاربردها و فناوریهای روز است. از جمله این فنآوریها محاسبات فراگیر مراقبتهای پزشکی است. علاوه بر محدودیتها و خطرهای موجود در ذات فنآوریهای موبایل و پوشیدنی، کاربردهای سلامت نیز نیازمند توجه بسیار خاص است که بدون خطا بودن سیستم یکی از ضروریات آنها است. لذا میبایست تحمل خطا در این سیستمها، مورد مطالعه قرار داد.
این درحالیست که تاکنون از این جنبه به موضوع نگاه نشده بود که سه فناوری ذکر شده به شرط در نظر گرفتن تحمل خطا، به کمک یکدیگر ایفای نقش کنند.
۱-۳ اهمیت و ضرورت تحقیق
پدیده های طبیعی و غیر طبیعی روزمره بشر امروزی با تکنولوژی همراه شده است. از میان این تکنولوژیها تلفنهای هوشمند و همراه به علاوه کامپیوترهای پوشیدنی نقش بسیار مهمی را در زندگی بشر بازی می کنند. رایانههای پوشیدنی در حوزههای زیادیاز قبیل:ورزش، مدل کردن رفتار، سامانههای نظارت بر سلامت و فناوری اطلاعات کاربرد دارند. سازمانهای دولتی، نظامی و بخش بهداشت و درمان هماکنون به طور روزمره از این رایانههای پوشیدنی استفاده میکنند. از این رایانه هااکثراً برای طب از راه دور و کنترل بیماران نیز استفاده می شود، به بیان دیگر از مهمترین کاربردهای کامپیوترهای پوشیدنی استفاده از آنها در حوزه سلامت است.
به علاوه شاهد افزایش تمایل استفاده از وسایل قابل حمل سبک برای دسترسی به خدمات از طریق اینترنت بجای کامپیوترهای شخصی هستیم. کامپیوترهای پوشیدنی و همراه با محدودیتهای زیادی از جمله محدودیتهای محاسباتی و سایر منابع روبرو هستد. از آنجاییکه چنین وسایلی، امکانات پردازشی قوی ندارند (به عبارتی علاقه ای به داشتنِ چنین امکاناتی ندارند)، پس چه کسی قدرت پردازشی را تامین خواهد کرد؟ پاسخ به این سوال در رایانش ابر نهفته است.
امروزه دنیای کامپیوترها در حال حرکت به سمت ذخیره کردن و پردازش اطلاعات به صورت آنلاین است. Cloud Computing که در زبان فارسی تحت عناوین «محاسبات ابری»، «رایانش ابری»، «پردازش ابری» و «کامپیوتر ابری» شهرت یافته است، به معنی به کارگیری قابلیت های کامپیوتری بر مبنای اینترنت است. در واقع قابلیت های کامپیوتری به صورت یک سرویس اینترنتی به کاربر عرضه می شود. ایده اصلی رایانش ابری را میتوان چنین بیان نمود: ارائه خدمات نرمافزاری و سخت افزاری از طریق اینترنت، به کاربران و سازمانها در تمام سطوح. نرمافزار، قدرت پردازشی، ظرفیت ذخیره سازی داده و پایگاه داده، از جمله خدماتی هستند که در سیستم ابری از طریق شرکتهای فراهم کننده منابع زیرساخت مثل آمازون در اختیار کاربران قرار میگیرد. در رایانش ابری کاربران در اِزای میزان استفاده و خدماتی که دریافت می کنند هزینه پرداخت مینمایند یعنی سیستم (a pay-per-use) در این فناوری استفاده میگردد.
استفاده از رایانش ابری مزایای زیادی را به همراه دارد، مزایایی از قبیل: عدم نیاز کاربران به کامپیوترهای قدرتمند و گران قیمت، کارایی بهینه و سریع کامپیوترهای شخصی کاربران، صرفهجویی در هزینه خرید و آپدیت برنامه ها و نرمافزارهای گران قیمت، ظرفیت نامحدود حافظه در اختیار کاربران، محافظت از تمام داده ها و اطلاعات کاربران(قابلیت اعتماد)، امکان دسترسی سهل و آسان به داده ها و اطلاعات شخصی توسط کاربران در هر لحظه و مکان، قابلیت مستقل از سخت افزار، دسترسی و کار همزمان چندین کاربر بر روی اسناد و پروژه ها(اشتراک آسان) و لذا گزینهای بسیار مناسب برای استفاده در محاسبات همراه و پوشیدنی است.
در حقیقت وقتی که تحرک کاربر و محاسبات دستگاههای متحرک را بخواهیم پشتیبانی کنیم گزینه محاسبات ابری موبایل مطرح می شود. قابلیت حرکت یکی از ویژهگیهای محیط محاسباتی است که باعث می شود کاربر به فعالیتش و استفاده از ابر در حین حرکت ادامه دهد.
با تمام این اوصاف، محاسبات ابری، محاسبات موبایل و کامپیوترهای پوشیدنی شامل مشکلاتی از قبیل: امنیت، تحملپذیری در برابر خطا، حریم خصوصی افراد و یکپارچگی داده ها هستند، که نیاز به بررسی دارند. هنگامی که از کامپیوترهای پوشیدنی در حوزه سلامت استفاده می شود، نیاز به تحملخطا بیش از پیش حائز اهمیت است. اگر سیستمهای حوزه سلامت در برابر خطا تحملپذیر نباشند ممکن است مشکلات جبران ناپذیری را برای بیمار به همراه داشته باشند تا حدی که منجر به مرگ بیمار شوند. قابلیت اطمینان در سیستمهایی با کاربردهای حساس، یک نیاز حیاتی بوده و این نوع سیستمهاباید طوری طراحی شوند تا بتوانند با وجود خرابی به وظیفۀ خود به طور مناسب ادامه دهند. لذا با توجه به اهمیت موضوع، به یک چارچوب تحملخطا برای محاسبات پوشیدنی در حوزه سلامت، نیاز است که در تحقیق حاضر مورد بررسی قرار میگیرد.
۱-۴ اهداف تحقیق
محاسبات سیار و محاسبات پوشیدنی به دلیل طبیعتشان دارای توان بالای پردازشی نیستند. از طرفی انجام کارهای محاسباتی بدون داشتن سختافزار قدرتمند و نرمافزار گران قیمت، یک نیاز است که توسط رایانش ابری برطرف می شود. لذا رایانش ابری به منظور رفع محدودیتهای محاسبات سیار و محاسبات فراگیر می تواند بهترین گزینه باشند. بنابراین ارائه یک معماری برای همکاری سه تکنولوژی محاسبات ابری، محاسبات سیار و محاسبات پوشیدنی، اولین هدف این تحقیق میباشد.
شبکه های حسگر بیسیم درحال استفاده شدن در محاسبات فراگیر از قبیل: حوزه سلامت، نظارت محیطی، مدیریت ساختمان، نظارت سازمانها و دستگاه های بزرگ هستند. اما اغلب به دلیل عوامل طبیعی و غیرطبیعی مانند زیاد گرم شدن، رسوب شیمیایی سطح سنسور، توان کم باتری و غیره دقت قرائتهای سنسورهای الکترونیکی کاهش مییابد و یا حتی عملکرد سیستم مختل می شود. دیگر هدف این تحقیق بررسی خطاهای پایدار و ناپایدار در شبکه های پوشیدنی میباشد.
تشخیص و مکان یابی خطا یکی از کلیدیترین اقدامات ابتدایی در برخورد با خطا میباشد. تا زمانیکه یک خطا تشخیص داده نشود نمی توان آنرا برطرف کرد به علاوه نمی توان اقدامات جبرانی را در سیستم به منظور کاهش اثر خطا انجام داد. به بیانی بعد از تشخیص و مکان یابی خطا میتوان به صورتی کارا آنرا مدیریت کرد. لذا تکنیکهای تشخیص و مکان یابی خطا در شبکه های پوشیدنی و مدیریتشان به عنوان یک هدف کلیدی، مورد بررسی قرار میگیرند.
همواره امکان ظهور خطا و خرابی در سیستمهای مختلف وجود دارد. سیستمی موفق است که بتواند با وجود خطاها و خرابیها بیشترین سرویسها را ارائه دهد. به عبارتی در کاربردهای حیاتی از جمله کاربردهای حوزه سلامت، تحملپذیر بودن سیستم ضروری است. همواره سیستمهای مختلف روشهای متفاوتی از تحمل خطا را مورد استفاده قرار می دهند. بررسی روشهای مختلف تحمل خطا در محاسبات پوشیدنی و فراگیر، از دیگر اهداف این تحقیق میباشد.
در زمینه تحمل خطا الگوریتمها و راهکارهای مختلفی ارائه شده است. پژوهشگران مختلف به منظور حل مسأله تحمل خطا راه حلهای مختلفی را ارائه دادهاند و از جهات مختلفی به موضوع نگاه کرده اند. به چالش کشیدن این راهحلها از اهداف مهم این تحقیق میباشد به عبارتی سعی بر این است که از دیدگاهی متفاوت به ارزیابی الگوریتمها و راه حلهای ارائه شده، پرداخته شود.
حوزه سلامت یک حوزه حیاتی است که از محاسبات پوشیدنی استفاده می کند. عواقب خطا و خرابی در این حوزه ممکن است قابل جبران نباشد از اینرو در این حوزه ریسک معنا ندارد. اما متأسفانه با توجه به اهمیت موضوع در فصل دوم از این تحقیق مشخص می شود که در این زمینه تحقیق زیادی صورت نگرفته است. لذا مهمترین هدف این پایان نامه ارائه یک چارچوب تحمل خطا برای محاسبات پوشیدنی در حوزه سلامت میباشد.
۱-۵ فرضیه های تحقیق
محاسبات پوشیدنی دارای مزایای بیشماری میباشند اما این واقعیت را نمی توان کتمان کرد که کامپیوترهای پوشیدنی بدون در نظر گرفتن محدودیتها و خرابیهای ممکن قابل استفاده نیستند. همچنین محاسبات سیار دارای محدودیتهای فراوانی هستند که قابلیت اطمینان آنها را برای کاربردهای حساس کاهش میدهد. به علاوه محاسبات ابری بر بستر اینترنت بوده و اگر توسط محاسبات موبایل مورد استفاده قرار بگیرد ممکن است در عملکرد آنها مشکلاتی پیش آید.
این سه فناوری به کمک هم میتوانند بسیاری از مشکلات بیماران را حل کنند. اما محدودیتهای آنان، خطری برای انجام صحیح عملکرد آنها است. لذا برای عملکرد صحیح این سه فناوری و همکاری آنها با هم، نیاز به یک چارچوب تحمل خطا است.
۱-۶ ساختار پایان نامه
در ادامه در فصل دوم تعاریف و مفاهیم اولیه به تفضیل شرح داده میشوند و همچنین تحقیقات انجام شده توسط محققان پیشین به صورت مفصل مورد بررسی قرار میگیرد. در فصل سوم که مهمترین فصل این پایان نامه است نتایج حاصل شده در قالب یک چارچوب تحملخطا برای محاسبات پوشیدنی در حوزه محاسبات فراگیر مراقبتهای پزشکی، ارائه می شود. سپس یک جمعبندی و نتیجه گیری در فصل چهارم مطرح می شود. در انتها فصل پنجم به بیان پیشنهادات و کارهای آتی می پردازد.
فصل دوم
ادبیات و سابقه پژوهش
۲-۱ مقدمه
خرابی در سیستمهای با کاربردهای حساس، می تواند فاجعههای جبرانناپذیری را رقم بزند. طراحی این دسته از سیستمها باید به گونه ای باشد که در صورت رخداد خطا، قادر به انجام صحیح وظایف خود باشند، به علاوه تا حد ممکن از بروز خطا جلوگیری شود. از اینرو تحملپذیری در برابر خطا برای سیستمهایی با کاربردهای حساس یک نیاز حیاتی است. کامپیوترهای پوشیدنی نمونه ای از این سیستمها هستند که امروزه به صورت گسترده در کاربردهای حساس از جمله حوزه سلامت مورد استفاده و توجه محققان قرار گرفتهاند. به عنوان مثال خطای این سیستمها برای بیماری که کیلومترها از دکتر خود یا بیمارستان فاصله دارد می تواند عواقب جبران ناپذیری را به همراه داشته باشد. لذا تحملپذیری محاسبات پوشیدنی[۱۲] در برابر خطا ضروری است و باید به صورت جدی مورد مطالعه قرار گیرد.
برای مطالعه تحملپذیری خطا در محاسبات پوشیدنی، نیاز به در نظر گرفتن محیط عملیاتی و غیر عملیاتی است. کامپیوترهای پوشیدنی برای غلبه بر برخی مشکلات و کاستیها، از امکانات سایر تکنولوژیها بهره میبرند. یک معماری سه لایه برای فعالیت محاسبات پوشیدنی در [۱] ارائه شده است که این معماری از سه فناوری محاسبات پوشیدنی، محاسبات سیار[۱۳] و محاسبات ابری[۱۴] بهره میبرد.
محاسبات پوشیدنی و محاسبات سیار دارای محدودیتهای زیادی از قبیل محدودیتهای محاسباتی و محدودیتهای منبع هستند، ولی به دلیل مزایای زیادی که در اختیار هم قرار می دهند، نمی توان آنها را در دنیای آینده محاسبات بدون دیگری تصور کرد . از طرفی برای رفع محدودیت پردازشی آنها از رایانش ابری استفاده شده است. لذا با توجه به محبوبیت و مزایای زیاد این سه تکنولوژی، هیچکدام را نمی توان از چرخهی محاسبات حذف کرد و از سوی دیگر آینده به تنهایی متعلق به هیچکدام از این سه تکنولوژی نیست. شکل ۲-۱ معماری سه لایهای پیشنهاد شده در [۱] را نشان میدهد.
محاسبات پوشیدنی
محاسبات سیار
محاسبات ابری
شکل ۲-۱: یک معماری کلی برای محاسیات پوشیدنی [۱]
در این معماری کلی، کامپیوترهای پوشیدنی اطلاعاتشان را از محیط میگیرند و به کامپیوترهای سیار میفرستند. سپس کامپیوترهای سیار به منظور گرفتن سرویسهای مورد نیاز میتوانند با ابرها ارتباط برقرار کنند.
خدمات حیاتی باید در برابر خطا تحملپذیر باشند، و سیستم باید تحت هر شرایطی به فعالیتش ادامه دهد. لذا با بهره گرفتن از روشهای تحمل خطا باید خرابیها را پیش بینی کرد و اقدامات لازم را قبل از خرابی انجام داد. بنابراین در ادامه برای سازماندهی این مطالعه، از این معماری کلی استفاده می شود.
۲-۲ ادبیات تحقیق
محاسبات پوشیدنی امکان اتصال دستگاههای محاسبهگر سیار[۱۵] را به محیط پیرامون یا بدن جاندار فراهم می کند [۲][۳]. امکان انجام محاسبات به صورت سیار و همچنین اتصال دستگاه سیار به سایر شبکه ها یا ابزارها در هر زمان و هر مکان، توسط محاسبات سیار فراهم می شود [۴]. انجام کارهای محاسباتی و تحلیل داده ها با بهره گرفتن از سختافزار قدرتمند و نرمافزار گران قیمت، یک نیاز است که توسط رایانش ابری برطرف می شود [۵]. در رایانش ابری سرویسها بنا به تقاضای سرویسگیرنده، توسط مراکز داده و از طریق اینترنت ارائه میشوند [۶][۷]. محاسبات سیار و محاسبات پوشیدنی برای برقراری توازن بین سیار بودن و قدرت محاسباتی، خواهان توان بالای پردازشی نیستند. لذا میتوان از رایانش ابری برای رفع این محدودیتها استفاده کرد.
۲-۲-۱ کاربردهای محاسبات پوشیدنی
محاسبات پوشیدنی در بسیاری از کاربردها از قبیل تشخیص فعالیتهای فرد[۱۶][۸][۹][۱۰][۱۱][۱۲]، تشخیص افتادن[۱۷][۱۳][۱۴][۱۵][۱۶][۱۷]، کاربردهای سلامت و بهداشت [۱۸][۱۹][۲۰][۲۱][۲۲]، تحلیل فعالیتهای ورزشکاران [۲۳][۲۴][۲۵]، حوزه های کشاورزی [۲۶]، نظامی [۲۷]، سرگرمی و قمار [۲۸]، مورد استفاده قرار میگیرند. این استفادههای وسیع نشان می دهند که گرایش سیستمهای محاسباتی آینده به سمت ناهمگنی و فراگیری است [۲۹].
مسئله تشخیص فعالیتهای انسانی به دلیل نقشِ مادر بودن در سایر مسئلهها به عنوان یک مسئله کلاسیک مورد توجه قرار گرفته است. تشخیص فعالیتهای انسانی در حوزه های وسیعی از جمله حوزه سلامت [۳۰][۳۱][۳۲]، ورزش [۳۳][۳۴]، نظامی، سرگرمیها و بازیها، مسائل حفاظتی و غیره استفاده می شود .
در حوزه سلامت به دلیل هزینهها و محدودیتها نمی توان بیماران را در بیمارستانها و کلینیکهای پزشکی برای مدت طولانی نگهداری کرد. به علاوه، کنترل علائم حیاتی بیمار توسط افراد به صورت پیوسته و در دراز مدت، کسل کننده است بطوریکه ممکن است فرد ناظر برداشتِ اشتباهی را از داده های گردآوری شده داشته باشد. در اینگونه نظارتها فرد ناظر، باید تخصص یا مهارت لازم را برای کنترل علائم حیاتی بیمار داشته باشد. از طرفی هم یک متخصص مانند یک دکتر نمیتواند به مدت طولانی مسئول کنترل یک بیمار باشد زیرا بیماران زیادی به تخصص او و درمان شدن نیاز دارند. برای غلبه بر محدودیتهای ذکر شده، شبکه های پوشیدنی میتوانند یک گزینه خوب باشند [۳۵][۳۶][۳۷]. از مزایای این شبکه ها این است که کنترل وضعیت بیمار به صورت اتوماتیک و پیوسته، در دراز مدت صورت میگیرد. به علاوه دکتر می تواند در هر زمان و در هر مکانی از وضعیت سلامت بیمارش آگاه باشد. از طرفی، فرد بیمار فقط دستگاه پوشیدنی را میپوشد و هیچگونه نیازی به داشتن مهارت ها و تخصصهای خاص ندارد. علاوه بر موارد ذکر شده، باید خاطرنشان کرد که شبکه های پوشیدنی ارزان هستند و قابل استفاده توسط تمامی سطوح طبقاتی جامعه هستند.
مسائل تحلیل ورزشکاران یکی دیگر از کاربردهای شبکه های پوشیدنی است [۳۸][۳۹][۴۰]. رشته های مختلف ورزشی همواره خواهان استفاده از آخرین تکنولوژیهای روز بوده اند. با توجه به شرایط پر استرس مسابقات، تحلیل ورزشکاران در شرایط مسابقه یک مسئله چالشدار میباشد. لذا با کمک شبکه های پوشیدنی میتوان با هزینهای ارزان و به صورت دقیقی عملکرد ورزشکاران را تحلیل کرد. به طور مثال این شبکه ها میتوانند مشخص کنند که یک فوتبالیست چند کیلومتر دویده است؟ به طور تقریبی چقدر انرژی مصرف کرده است؟ چند پاس داده است؟ و یا چند شوت کرده است؟
با وجود کاربردهای روبه افزایش محاسبات پوشیدنی، تهدیدها و چالشهایی این فناوری را به مخاطره می اندازد [۴۱][۴۲]. برای مثال تحملپذیری در برابر خطا از این موارد میباشد. برای حصول تحملپذیری خطا تکنیکهای مختلفی استفاده می شود و مفاهیم زیادی مورد بهره برداری قرار میگیرد، برای مثال بررسی کیفیت داده های سنسورها می تواند مفید باشد. کاربردهای گوناگون از کامپیوترهای پوشیدنی در صورتی میتوانند اُمیدبخش و مفید باشند که بتوانند جریان کیفیت دادهی بالایی را در بازههای زمانی طولانی مدت مهیا کنند. کیفیت داده ها دارای معیارهای شناخته شده مرتبط بودن، به موقع بودن، دقت، در دسترس بودن، مقایسهپذیری و انسجام، میباشند [۴۳]. در شبکه های پوشیدنی پایداری، دقت، قابلیت مقاومت در مقابل خطرات از جمله فاکتورهای پر اهمیتِ کیفیت داده ها میباشند. فاکتورهای کیفیت داده باید در گردآوری، ذخیرهسازی و پردازش داده ها مورد توجه قرار گیرند.
تحمل خطا در سیستمهای محاسباتی بویژه در محاسبات پوشیدنی ضروری است. در سیستمهایی که در برابر خطا تحملپذیرند با وجود خطا سیستم باید قادر به انجام درست وظایف و ارائه سرویس باشد [۴۴][۴۵][۴۶]. در اینگونه سیستمها باید سرویسهای ارائه شده دارای کیفیت و شفافیت باشند. شبکه های پوشیدنی در کاربردهای وسیعی میتوانند مورد استفاده قرار گیرند که بسیاری از این کاربردها حیاتی هستند لذا بکارگیری مکانیزم های تحمل خطا در این شبکه ها حائز اهمیت است. از آنجایی که در بسیاری از کاربردهای حیاتی ریسک معنا ندارد، خرابی این سیستمها می تواند خسارات جبرانناپذیری را رقم بزند. بنابراین همواره باید سعی شود که با بهره گرفتن از روشهای تحمل خطا از شکست سیستم جلوگیری شود.
۲-۲-۲ تحملپذیری خطا در محاسبات پوشیدنی
با پیشرفت تکنولوژی، سیستمهای کامپیوتری پیچیدهتر شده اند. این درحالیست که طراحی سیستم پوشیدنی باید بگونهای باشد که با بروز نقص در قسمت های مختلف، سیستم دچار نقص عمده نشود. همچنین سیستم مذکور باید عملکرد صحیح خود را حفظ کند و در عین حال که کارایی کلی سیستم پایین می آید، برآورده شدن هدف نهایی سیستم ضروری است. با توجه به موارد بیان شده، تعریف سیستم پوشیدنی تحملپذیر خطا بدین شرح میباشد: یک سیستم پوشیدنی تحملپذیر خطا، سیستمی است که می تواند وظایفش را با وجود خطاها و خرابیهای نرمافزاری و سختافزاری، به درستی انجام دهد.
به دلیل افزایش استفاده از کامپیوترها در کاربردهای مختلف از زندگی بشر، تحملپذیری خطا برای سیستمهای مختلف، همواره مورد توجه محققان و طراحان بوده است. اما متأسفانه تحملپذیری خطا در محاسبات پوشیدنی، کمتر مورد بحث و بررسی قرار گرفته است. این در حالیست که به علت اهمیت مسأله، تحملپذیری خطا یک ویژگی بسیار مهم در تمام سیستمهای کامپیوتری میباشد.
با وجود تحقیقات فراوانی که درباره سیستمهای پوشیدنی انجام گرفته است، این تکنولوژی هنوز در عمل و در برخی از کاربردها مورد استفاده قرار نمیگیرد. میتوان دلیل اصلی این امر را آسیبپذیر بودن آنها نسبت به خطاها و خرابیها دانست. با توجه به دلیل فوق میتوان نتیجه گرفت که ایجاد تحملپذیری خطا در محاسبات پوشیدنی یک نیاز است. با در نظر گرفتن تحملپذیری خطا، با وجود خرابی در سیستم میتوان کارایی سیستم پوشیدنی را در حد قابل توجهای باقی نگه داشت. در این صورت با بروز خطا و خرابی برای تعدادی از مؤلفه ها، سیستم از ادامه انجام کار باز نمیماند و حداقل بحرانیترین وظایفی که برایش در نظر گرفته شده است را به صورت صحیح انجام میدهد.
در ادامه با ذکر سه سناریو بیان می شود که چرا تحملپذیری خطا در محاسبات پوشیدنی مهم است؟
سناریوی۱: سارا پیرزنی است که در شهر بروجرد به تنهایی زندگی می کند. وی به دلیل رنج بردن از نارسایی قلبی و فشار خون بالا به پزشک مراجعه کرد. با توجه به شرایط جسمانیاش پزشک تشخیص داد که او باید تا آخر عمر تحت نظر قرار بگیرد. به دلیل اینکه نگهداری سارا در بیمارستان برای چندین سال امکان پذیر نبود، پزشک معالج پیراهن هوشمندی را به او داد که این پیراهن قادر به کنترل علائم حیاتی بیمار بود. حسگرهای تعبیه شده در پیراهن، اطلاعات را از بدن بیمار میگرفتند و از طریق تلفن همراه بیمار، به پزشک معالج ارسال میکردند. پزشک نیز در مواقعی که بیمار وضعیت جسمانی خوبی نداشت، براساس این اطلاعات تصمیم گیریهای لازم را اتخاذ میکرد.
در ماه های ابتدایی این پیراهن بخوبی علائم حیاتی بیمار را کنترل میکرد. اما یک روز با وجود اینکه سارا شرایط جسمانی مطلوبی داشت، کنترل کننده ضربان قلبش[۱۸] علائم نامنظمی را به کامپیوتر پزشک ارسال میکرد. پزشک معالج که در آن روز در بروجرد نبود با مشاهده این علائم ، داروهایی را برای او در نظر گرفت و سریعاً با بیمارستان تماس گرفت. بلافاصله بیمارستان چند پرستار را به منظور تزریق آمپولها و مصرف داروها به خانهی او فرستاد. تیم پرستاری به محض معاینه بیمار متوجه سلامت و سالم بودنش شد. علت این تشخیص اشتباه، خرابی دستگاه بود که این مسئله باعث تحمیل هزینه به بیمارستان و بیمار گردید.
سناریوی۲: سیزده شیر نادر در آفریقا وجود دارد که هر کدام از آنها با بیماریها و خطرات طبیعی گوناگونی روبرو هستند. لذا پژوهشگران به منظور جلوگیری از انقراضِ نسل این شیرهای نادر، تصمیم به انجام اقداماتی گرفتند. با توجه به اینکه نگهداری آنها در قفس و در بلند مدت مقدور نبود، پژوهشگران تصمیم گرفتند که از شیرها در زیستگاههای طبیعی و بدون محدودیت نگهداری کنند. لذا آنها گوشوارههایی به گوش شیرها نصب کردند. گوشوارههای مذبور هوشمند بودند، به طوری که قادر بودند اطلاعاتی را در مورد وضعیت سلامت شیرها، برای پژوهشگران ارسال کنند. با آمدن فصل گرمِ تابستان، هنگامی که شیرها در زیر آفتاب سوزان قرار میگرفتند، گوشوارهها به درستی کار نمیکردند. به بیانی دیگر عملکرد حسگرهای این پوشیدنیهای هوشمند تحت تأثیر دما قرار میگرفت.
سناریوی۳: سوزان زن جوانی است که به بیماری ناشناختهای مبتلا بود از اینرو هرازگاهی به صورت ناگهانی غش میکرد و به زمین میافتاد. به تشخیص پزشک معالج، در زمان غش نباید جسم بیمار تکان میخورد. همچنین به منظور بازگشت فوری سلامت سوزان به حالت طبیعی، آمپولهایی تجویز شد تا بلافاصله بعد از هر بار غش به وی تزریق شوند. اما مشکل این بود که در هنگام غش مردم عادی از بیماری سوزان خبر نداشتند و با تکان دادن جسم او بلافاصله وی را به بیمارستان انتقال میدادند، از طرفی پزشکان هم از تزریق آمپولها بیخبر بودند. از اینرو پزشک معالج سعی کرد که مشکل را با یک گیرِ سر هوشمند حل کند.
عملکرد گیر سر هوشمند بدین صورت بود که در زمانی که سوزان غش میکرد، از طریق بلندگوی تعبیه شده در آن پیامِ «جسم بیمار را حرکت ندهید و برای کمک بلوتوث گوشیهایتان را روشن کنید» مدام پخش میشد، سپس گیر مذکور توسط بلوتوث پیامی را برای همه افرادی که بلوتوثشان روشن بود میفرستاد. متن پیام به افراد هشدار میداد که جسم بیمار را تکان ندهند و اورژانس را خبر کنند. همچنین در آن پیام، سابقه بیماری سوزان و نام آمپولها و دستورالعمل استفاده از آنها ذکر شده بود. اوضاع به خوبی پیش میرفت تا اینکه یک روز در اتوبوس سوزان دوباره غش کرد. گیرِ سر هوشمند دو بار پیام صوتی را پخش کرد. اما مسافران اتوبوس علیرغم اینکه بلوتوثهای گوشیهایشان را روشن کرده بودند، به دلیل خالی شدن باتری گیرِ سر هوشمند، هیچ پیامی را دریافت نکردند.
۲-۳ اتکاپذیری
سیستمهای محاسباتی با پنج ویژگی عملکرد[۱۹]، کارایی[۲۰]، اتکاپذیری[۲۱]، امنیت[۲۲] و هزینه شرح داده میشوند. اتکاپذیری یعنی مقدار توانایی یک سیستم در فراهم کردن سرویسهایی که قابلیت اطمینان قابل قبول دارند. مطابق شکل ۲-۲، مفاهیم مربوط به اتکاپذیری به سه دسته یعنی ویژگیها، تهدیدها و ابزارها تقسیم میشوند که در ادامه به شرح این مفاهیم پرداخته می شود.
شکل ۲-۲: درخت اتکاپذیری
۲-۳-۱ ویژگیهای اتکاپذیری یک سیستم
دسترسپذیری، قابلیت اطمینان، ایمنی، تمامیت و نگهداشتپذیری ویژگیهایی هستند که اتکاپذیری یک سیستم را مشخص می کنند. در ادامه به شرح این ویژگیها پرداخته می شود.
قابلیت اطمینان را با R(t) نشان می دهند، در واقع R(t) تابعی از زمان میباشد که یک احتمال شرطی را بیان می کند. احتمال شرطی بدین صورت است که، یک سیستم در طول مدت زمانِ (t0,t1) صحیح عمل کند، به شرط اینکه سیستم مذبور در زمان t0، به صورت صحیح شروع به کار کرده باشد.
باید خاطرنشان کرد که تفاوت بین تحملپذیری خطا و قابلیت اطمینان، بسیار مهم است. تحملپذیری خطا یک تکنیک است که قادر به افزایش قابلیت اطمینان میباشد. اما یک سیستم تحملپذیر خطا، لزوماً قابلیت اطمینان بالایی ندارد.
به طور مثال میتوان سیستمی طراحی نمود که قابلیت تحمل خطای بالایی داشته باشد، اما احتمال رخ دادن خطا و خرابی در این سیستم آنقدر بالا باشد که قابلیت اطمینان را بصورت زیادی کاهش دهد. یا برعکس، میتوان با بهره گرفتن از مؤلفه های بسیار خوب سیستمی طراحی نمود که هر مؤلفه با احتمال بسیار پایینی دچار خطا و خرابی شود، اما در صورت رخ دادن این اتفاق کار سیستم قطعاً متوقف می شود. در واقع این سیستم قابلیت اطمینان زیاد و قابلیت تحملخطای کمی را دارد.
دسترسپذیری را با A(t) نشان می دهند، در واقع A(t) تابعی از زمان میباشد که به صورت یک احتمال شرطی تعریف می شود. احتمال شرطی اینکه در لحظه t، سیستم صحیح عمل نماید و در دسترس باشد.
دسترسپذیری و قابلیت اطمینان از هم متفاوتند، بدین صورت که قابلیت اطمینان در یک بازه زمانی تعریف می شود اما دسترسپذیری در یک لحظه از زمان معنا دارد. با توجه به تعریف دسترسپذیری، اگر خطا در یک سیستم بصورت دورهای ظاهر شود، این امکان وجود دارد که آن سیستم از دسترسپذیری خوبی برخوردار باشد زیرا که طول مدت زمانی که خطا در سیستم ظاهر می شود می تواند کوتاه باشد.
ایمنی بیانگر این است که یک سیستم ایمن باید دارای سه ویژگی باشد. الف) در دسترس باشد و درست کار کند. ب)دارای سازگاری داده باشد. و ج)مانع از دسترسی افراد غیر مجاز به سیستم شود.
تمامیت و سازگاری داده به این مورد اشاره می کنند که در سیستم تغییرات نامناسب سیستمی رخ ندهد. به عنوان مثال داده های ذخیره شده در سیستم با یکدیگر ضدیت نداشته باشند.
قابلیت نگهداری، در اکثر سیستمها یکی از مهمترین اهداف میباشد. قابلیت نگهداری یعنی تحمل اصلاحات و تعمیرات، به عبارتی یعنی هنگامی که یک سیستم دچار مشکلی شد به راحتی قابل تعمیر باشد. قابلیت نگهداری را که با M(t) نشان می دهند که تابعی ا
فرم در حال بارگذاری ...
[جمعه 1401-04-17] [ 08:37:00 ب.ظ ]
|