در این بخش به معرفی سورس کد پیاده سازی پروتکل leach در متلب Matlab پرداخته شده است. این سورس کد در مورد پیاده سازی یکی از معروف ترین پروتکل های خوشه بندی در شبکه حسگر بی سیم یعنی پروتکل لیچ Leach است. برای کسانی که در مورد پیاده سازی روش های خوشه بندی تحقیق می کنند پیشنهاد می شود از نحوه جالب کدنویسی و پیاده سازی این سورس کد استفاده کنند.
تیم طراحی و تولید پی استور از اولین تیمهای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف تولید محتوای تخصصی فعال هستند.
پروتکل leach
پروتکل leach شناختهشدهترین روش خوشهبندی در شبکه های حسگر بی سیم است. در این روش، خوشهبندی بر اساس یک روش توزیعشده، انجام می شود. پروتکل leach به انتخاب شدن سرخوشه ها بهصورت تصادفی و با یک احتمال ثابت تأکید دارد. (تمام گره ها از احتمالی یکسان برای سرخوشه شدن برخوردارند.) گره ها همگن فرض می شوند(گره ها دارای انرژی اولیه یکسانی هستند).
در این الگوریتم حسگرها به صورت تصادفی در یک ناحیه توزیع و ثابت در نظر گرفته می شوند. آنها در گروه ها یا خوشه هایی دسته بندی می شوند و هر گروه یک سرخوشهای دارد که در هر ناحیه از طریق سر خوشهاش با سینک که در مرکز شبکه قرار دارد بهصورت مستقیم ارتباط برقرار می کند. بهاینترتیب هم تعداد ارسال و دریافت ها در شبکه کاهش می یابد و هم داده های زائد که به علت نزدیکی حسگرهای یک خوشه به یکدیگر تولید می شوند حذف می شوند.
عملکرد پروتکل leach
عملکرد پروتکل leach از دوره هایی متشکل از چندین دور Round تشکیل می شود. احتمال بهینه سرخوشه شدن گره ها برابر است و ثابت در نظر گرفته می شود. تعداد بهینه خوشهها بر اساس توزیع مناسب بین تمام حسگرها و کمینه نمودن مصرف انرژی انتخاب می شود. هر دوره از دور تشکیلشده است. درصورتیکه گره در دور فعلی سرخوشه شود تا انتهای دوره دیگر سرخوشه نخواهد شد.
گره برای سرخوشه شدن یک عدد تصادفی در بازه صفر تا یک انتخاب و عدد تصادفی موردنظر را با حد آستانه مقایسه می کند. درصورتیکه عدد انتخابی کوچکتر از حد آستانه باشد گره در دور فعلی سرخوشه می شود. اگر حسگر در این دور سرخوشه نشود احتمال سرخوشه شدن خود را افزایش می دهد و این کار را تا زمانی ادامه می دهد که در دور آخر این احتمال به ۱ برسد.
گره هایی که هنوز در دوره فعلی سرخوشه نشدهاند متعلق به مجموعه G هستند و در هر دور احتمال سرخوشه شدن آنها افزایش می یابد . (رابطه زیر)
در این رابطه r مشخصکننده دور فعلی است و مقدار اولیه آن صفر است. انتخاب این رابطه در پروتکل leach به صورتی بوده که گره هایی که اخیراً سرخوشه نبوده اند در دور فعلی سرخوشه شوند؛ زیرا می توان انتظار داشت که این گره ها نسبت به گره هایی که اخیراً وظیفه سرخوشه بودن را (که انرژی زیادی مصرف می کند) بر عهده داشتهاند، انرژی بیشتری دارند.
می توان انتظار داشت که در هر دور، هر گره بهطور متوسط یکبار سرخوشه شود. وقتی یک گره سرخوشه می شود، احتمال سرخوشه شدن حسگر تا دوره بعدی صفر شده و احتمال گره هایی که در دور فعلی سرخوشه نشده اند افزایش می یابد. مجموعه G شامل حسگرهایی است که تاکنون سرخوشه نشده اند و در زمان t قابلیت سرخوشه شدن را دارند. احتمال سرخوشه شدن آنها از طریق رابطه زیر به دست میآید.
مراحل عملیاتی پروتکل leach
پروتکل leach دارای چهار مرحله عملیاتی پیشنهاد، تشکیل گروه، ایجاد زمانبندی و انتقال داده است، در مرحله پیشنهاد سرخوشه با یک پیام خود را به گرههای دیگر معرفی می نماید. حسگرها از این پیشنهادها، نزدیکترین سرخوشه را انتخاب نموده و درخواست عضویت را برای آن ارسال می کنند. گره سرخوشه یک زمانبندی برای اعضا ایجاد و آن را به حسگرهای عضو ارسال می کند. گره ها در زمانبندی اعلامشده داده های خود را به سرخوشه ارسال می کنند و سرخوشه با جمعآوری و ترکیب داده ها آن را به سینک ارسال می کند. مصرف انرژی گره های سرخوشه به دلیل جمعآوری اطلاعات گروه های عضو، ترکیب و ارسال داده ترکیبشده به سینک که در فاصله دورتری قرار دارد بیشتر از گره های عضو است. با انتخاب تصادفی سرخوشه و درنتیجه چرخش نقش سرخوشه بین گره ها، مصرف انرژی بین آنها بهخوبی توزیع می شود.
پیاده سازی پروتکل LEACH در متلب
پیاده سازی پروتکل مبتنی بر خوشه بندی leach در متلب + سورس کد شامل 14 فایل .m می باشد که بصورت زیپ شده است و توسط کارشناسان پی استور کاملا تست شده است و پی استور کیفیت محتوای سورس کد را تضمین می کند. در ادامه خروجی های ارائه شده پس از اجرای فایل start.m را مشاهده می کنید. تصویر زیر نحوه استقرار گره های حسگر و گره سینک را نشان می دهد که در هر بار اجرا گره های حسگر بسته به تعدادشان بصورت تصادفی در یک منطقه پخش می شوند.
سه خروجی مربوط به تعداد بسته های ارسالی به ایستگاه پایه، تعداد گره های غیر فعال و مجموع انرژی گره ها در هردور در زیر آمده است.
ویدئوی معرفی محصول
مباحث مرتبط با الگوریتم لیچ در شبکه
اطلاعات تکمیلی محصول
نام محصول: | پیاده سازی پروتکل leach در متلب |
---|---|
نوع محصول: | سورس کد |
حجم فایل: | 8 کیلوبایت |
فرمت فایل: | m. در قالب متلب |
قابل اجرا در: | Matlab 2014 و بالاتر |
تضمین کیفیت و گارانتی بازگشت هزینه
توجه: کیفیت این محصول توسط پی استور تضمین شده و در صورت عدم رضایت از محصول، به انتخاب شما:
- ۱۰۰ درصد مبلغ پرداختی در حساب کاربری شما شارژ میشود.
- و یا 80 درصد مبلغ پرداختی به حساب بانکی شما عودت داده میشود.
پیاده سازی پروتکل leach در متلب
تاریخ انتشار: | 4 فروردین 1397 |
---|---|
تاریخ بروزرسانی: | 20 آبان 1399 |
حجم فایل: | 8 کیلوبایت |
فرمت فایل | m. در قالب متلب |
مدت زمان: | 1.0 |
هماهنگی با: | Matlab 2014 و بالاتر |
سفارش تدریس: | توضیحات تکمیلی |
تاکنون 12 نفر این محصول را تهیه کرده اند و 3 نظر برای آن ثبت شده است.
نظرات و دیدگاه ها
قوانین ثبت دیدگاه
- لطفاً دیدگاه های خود را فارسی تایپ کنید.
- دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
- از درج دیدگاه های تکراری پرهیز نمایید.
- سوالات تخصصی خودتان را از طریق تیکت پشتیبانی مطرح کنید.
پیاده سازی پروتکل leach در متلب
هزینه سفارش: 129,000 تومان
تاریخ انتشار: | 4 فروردین 1397 |
---|---|
تاریخ بروزرسانی: | 20 آبان 1399 |
حجم فایل: | 8 کیلوبایت |
فرمت فایل | m. در قالب متلب |
مدت زمان: | 1.0 |
هماهنگی با: | Matlab 2014 و بالاتر |
سفارش تدریس: | توضیحات تکمیلی |
3 بازخورد (مشاهده نظرات)
هزینه سفارش: 129,000 تومان
فاطمه
سلام آیا می توان به کمک این طراحی پروتکل لیچ رو بهبود داد
مدیریت و پشتیبانی
سلام و وقت بخیر
بله در این پیاده سازی الگوریتم لیچ در متلب پیاده سازی شده و شما با تغییر پارامترهای موجود در کد این الگوریتم می توانید این الگوریتم رو بهبود بدید. به عنوان نمونه لیچ برای انتخاب سرخوشه یک روش ساده و اصولاً رندومیک رو اجرا می کنه شما باید کاری کنید که انتخاب سرخوشه ها بر اساس معیارهایی همچون میزان انرژی باقیمانده گره ها، فاصله تا سینک و … انجام بشه
فاطمه
سلام آیا می توان به کمک این طراحی پروتکل لیچ رو بهبود داد
مدیریت و پشتیبانی
نظرات و دیدگاه های خود را با ما درمیان بگذارید.