لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 36 صفحه
قسمتی از متن .doc :
چکیده
این مقاله الگوریتمی جدید برای مسئله برنامه ریزی مسیرکلی به یک هدف ، برای ربات متحرک را با استفاده از الگوریتم ژنتیک ارائه می دهد .الگوریتم ژنتیک برای یافتن مسیر بهینه برای ربات متحرک جهت حرکت در محیط استاتیک که توسط نقشه ای با گره ها و لینک ها بیان شده است ،بکار گرفته شده است.موقعیت هدف و موانع برای یافتن یک مسیر بهینه در محیط دو بعدی داده شده است .هر نقطه اتصال در شبکه ژنی است که با استفاده از کد باینری ارائه شده است.تعداد ژن ها در یک کروموزوم تابعی از تعداد موانع در نقشه (نمودار)می باشد.
بنابراین از یک کروموزوم با طول ثابت استفاده کردیم.مسیر ربات ایجاد شده ، در مفهوم کوتاهترین مسیر ،بهینه است .ربات دارای محل آغاز و محل هدف تحت فرضیه ای است که ربات از هر محل فقط یکبار می گذرد یا اصلا نمی گذرد.نتایج بدست آمده در شبیه سازی ؛قدرت الگوریتم پیشنهادی را تایید می نماید.
مقدمه
مسئله طراحی مسیر ربات متحرک را می توان بصورت ذیل بیان کرد:
داده های مسئله (محل شروع،محل هدف، نقشه ای دو بعدی مسیرهاکه شامل موانع ساکن می باشد).هدف بدست آوردن یک مسیر بدون تصادم بین دو نقطه خاص در ایفای معیار بهینه سازی با در نظر گرفتن محدودیت ها (به احتمال زیاد:کوتاهترین مسیر)می باشد. مسئله طراحی مسیر از نظر محاسباتی بسیار پر هزینه است.
با اینکه حجم زیادی از تحقیقات برای حل بیشتر این مسائل انجام شده است،با این وجود،روش های معمول ،غیر قابل انعطاف می باشند.
1.اهداف مختلف بهینه سازی و تغییرات اهداف
2. عدم قطعیت ها در محیط ها
3. محدودیت های متفاوت برای منابع محاسباتی
مرور و بازنگری روش های موجود برای حل مسئله طراحی مسیر ،در [1] ارائه شده است . روش های زیادی برای ایجاد یک مسیر بهینه از قبیل برنامه ریزی دینامیک و روش های تبدیل مسافت گزارش شده است .
در روش برنامه ریزی دینامیک اگر نقطه ی شروعSP و نقطه ی هدف GP باشد ، نقطه ی زیر هدف IP است.و روش تولید مسیر ،نحوه تعیین توالی زیر اهداف است که زیر اهداف خود از مجموعه IP (I=1,2,3,…) انتخاب می شوند.ما باید تمام مسیرهای ممکن را بررسی کرده و مسیر با کمترین مقدار هزینه را به عنوان مسیر بهینه انتخاب نمائیم.توان محاسباتی بسیار فراوانی بویژه در محیط های دارای زیر اهداف فراوان مورد نیاز است . در روش تبدیل مسافت ،کارطراحی مسیر ،محیطی را با شبکه یکنواخت می پوشاند و فواصل را از طریق فضای خالی ،از سلول هدف،منتشر می کند.قسمت پیشین موج مسافت ،حول موانع و در نهایت از طریق تمامی فضاهای آزاد در محیط جریان می یابد.برای هر نقطه شروع در محیط نمایانگر محل اولیه ربات متحرک ،کوتاهترین مسیر به مقصد،از طریق رفتن به قسمت پائین و از طریق شیب دارترین مسیر نزولی رسم شده است.با این وجود به هنگام وجود دو سلول یا بیشتر جهت گزینش با همان حداقل تبدیل فاصله ابهام مسیرهای بهینه وجود دارد. دو روش مذکور ملزم توان محاسباتی بسیار بالا در محیطی است که دارای تعداد زیاد اهداف فرعی (زیر اهداف)و موانع است.
محققان روش های فراوان را برای حل مسائل طراحی مسیر ربات های متحرک با وجود موانع ایستا و متحرک بر مبنای soft computing ،بیان کرده اند. soft computing متشکل از منطق فازی،شبکه های عصبی و محاسبات تکاملی است (الگوریتم های ژنتیک و تکاملی GA & EA).تاکنون تلاش های زیادی در استفاده از منطق فازی برای طراحی و برنامه ریزی حرکت ربات متحرک وجود داشته است .اخیرا استفاده از محاسبات تکاملی رواج فراوانی پیدا کرده و در واقع روشی است که به منظور بکارگیری در موقعیت هایی که دانش اولیه راجع حل مسئله وجود نداشته و یا اطلاعات محدود می باشد،قابلیت استفاده به گونه ای موثرتر،عمومی تر و راحت تر را داراست.
الگوریتم های ژنتیکی و تکامکلی نیازمند اطلاعات اشتقاقی یا برآوردهای فرمال اولیه از راه حل نیستند و از آنجائیکه طبیعتا تصادفی می باشند دارای قابلیت جستجوی کل فضای جواب با احتمال بیشتر پیدا کردن بهینه عمومی می باشند.
می توان تحقیق قبلی راجع طراحی مسیر را به صورت یکی از دو روش مقابل طبقه بندی کرد: مبتنی بر مدل و مبتنی بر سنسور .
در حالت مبتنی بر مدل ،مدل های منطقی از موانع شناخته شده ،برای تولید تصادم بدون مسیر بکار گرفته می شوند.در حالیکه در روش مبتنی بر سنسور ، کشف و اجتناب از موانع ناشناخته است.در این مقاله الگوریتمی جدید جهت بدست آوردن مسیر بهینه بر مبنای مدل پیشنهاد شده است.
ادامه مطالب مقاله بصورت ذیل مرتب شده اند :
در بخش 2 ،مقدمه ای مختصر راجع الگوریتم ژنتیک ارائه شده است .در بخش 3 ،فرمول سازی مسئله مورد بررسی واقع شده،در بخش 4 الگوریتم پیشنهادی ، معرفی و در بخش 5 نتایج شبیه سازی نشان داده شده است.
1.مسیریابی
مسئله مسیریابی ربات در چند حالت قابل بررسی است :
در یک مفهوم می توان مسیریابی روبات را در قالب تعقیب خط (عموما مسیری از پیش تعیین شده با رنگ متفاوت از زمینه ) معرفی نمود.روبات هایی با این کاربرد تحت عنوان مسیریاب شناخته می شوند . یکی از کاربرد های عمده این ربات ، حمل و نقل وسایل و کالاهای مختلف در کارخانجات ، بیمارستان ها ، فروشگاه ها ، کتابخانه ها و ... میباشد .
ربات تعقیب خط تا حدی قادر به انجام وظیفه کتاب داری کتابخانه ها می باشد . به این صورت که بعد از دادن کد کتاب ، ربات با دنبال کردن مسیری که کد آن را تعیین میکند ، به محلی که کتاب در آن قرار گرفته می رود و کتاب را برداشته و به نزد ما می آورد .مثال دیگر این نوع ربات در بیمارستان های پیشرفته است ، کف بیمارستان های پیشرفته خط کشی هایی به رنگ های مختلف به منظور هدایت ربات های مسیریاب به محل های مختلف وجود دارد . (مثلا رنگ قرمز به اتاق جراحی یا آبی به اتاق زایمان.) بیمارانی که توانایی حرکت کردن و جا به جا شدن را ندارند و باید از ویلچر استفاده کنند ، این ویلچر نقش ربات تعقیب خط را دارد ، و بیمار را از روی مسیر مشخص به محل مطلوب می برد .
با توجه به وجود موانع (استاتیک و دینامیک) در محیط ،مسیریابی روبات در مفهومی کاربردی تر ،پیمودن مسیر مبدا تا مقصد بدون برخورد با موانع می باشد.مسلما با وجود تعداد زیاد موانع ،تعداد مسیرهای قابل عبور روبات بسیار زیاد خواهد بود و یقینا انتخاب کوتاه ترین مسیر توسط روبات برای حرکت از مبدا به مقصد ،دارای ارزش اجرایی بالایی خواهد بود.در این مقاله چنین مسئله ای مورد بررسی واقع شده است.نقاط مبدا و مقصد و نیز محل موانع به عنوان ورودی داده شده است ،نیز می دانیم موانع ایستا می باشند (در حالت وجود موانع پویا در عین نزدیکی بیشتر به شرایط واقعی ،روش های مورد استفاده بسیار پیچیده خواهند بود)و مسئله در حالت دو بعدی بررسی می شود (روبات بر روی صفحه حرکت می نماید). برای این منظور الگوریتم های مسیریابی با هدف انتخاب کوتاهترین مسیر قابل استفاده می باشند ،الگوریتم هایی که به منظور مسیریابی در شبکه ها قابلیت استفاده دارند.با این وجود در این
لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 36 صفحه
قسمتی از متن .doc :
چکیده
این مقاله الگوریتمی جدید برای مسئله برنامه ریزی مسیرکلی به یک هدف ، برای ربات متحرک را با استفاده از الگوریتم ژنتیک ارائه می دهد .الگوریتم ژنتیک برای یافتن مسیر بهینه برای ربات متحرک جهت حرکت در محیط استاتیک که توسط نقشه ای با گره ها و لینک ها بیان شده است ،بکار گرفته شده است.موقعیت هدف و موانع برای یافتن یک مسیر بهینه در محیط دو بعدی داده شده است .هر نقطه اتصال در شبکه ژنی است که با استفاده از کد باینری ارائه شده است.تعداد ژن ها در یک کروموزوم تابعی از تعداد موانع در نقشه (نمودار)می باشد.
بنابراین از یک کروموزوم با طول ثابت استفاده کردیم.مسیر ربات ایجاد شده ، در مفهوم کوتاهترین مسیر ،بهینه است .ربات دارای محل آغاز و محل هدف تحت فرضیه ای است که ربات از هر محل فقط یکبار می گذرد یا اصلا نمی گذرد.نتایج بدست آمده در شبیه سازی ؛قدرت الگوریتم پیشنهادی را تایید می نماید.
مقدمه
مسئله طراحی مسیر ربات متحرک را می توان بصورت ذیل بیان کرد:
داده های مسئله (محل شروع،محل هدف، نقشه ای دو بعدی مسیرهاکه شامل موانع ساکن می باشد).هدف بدست آوردن یک مسیر بدون تصادم بین دو نقطه خاص در ایفای معیار بهینه سازی با در نظر گرفتن محدودیت ها (به احتمال زیاد:کوتاهترین مسیر)می باشد. مسئله طراحی مسیر از نظر محاسباتی بسیار پر هزینه است.
با اینکه حجم زیادی از تحقیقات برای حل بیشتر این مسائل انجام شده است،با این وجود،روش های معمول ،غیر قابل انعطاف می باشند.
1.اهداف مختلف بهینه سازی و تغییرات اهداف
2. عدم قطعیت ها در محیط ها
3. محدودیت های متفاوت برای منابع محاسباتی
مرور و بازنگری روش های موجود برای حل مسئله طراحی مسیر ،در [1] ارائه شده است . روش های زیادی برای ایجاد یک مسیر بهینه از قبیل برنامه ریزی دینامیک و روش های تبدیل مسافت گزارش شده است .
در روش برنامه ریزی دینامیک اگر نقطه ی شروعSP و نقطه ی هدف GP باشد ، نقطه ی زیر هدف IP است.و روش تولید مسیر ،نحوه تعیین توالی زیر اهداف است که زیر اهداف خود از مجموعه IP (I=1,2,3,…) انتخاب می شوند.ما باید تمام مسیرهای ممکن را بررسی کرده و مسیر با کمترین مقدار هزینه را به عنوان مسیر بهینه انتخاب نمائیم.توان محاسباتی بسیار فراوانی بویژه در محیط های دارای زیر اهداف فراوان مورد نیاز است . در روش تبدیل مسافت ،کارطراحی مسیر ،محیطی را با شبکه یکنواخت می پوشاند و فواصل را از طریق فضای خالی ،از سلول هدف،منتشر می کند.قسمت پیشین موج مسافت ،حول موانع و در نهایت از طریق تمامی فضاهای آزاد در محیط جریان می یابد.برای هر نقطه شروع در محیط نمایانگر محل اولیه ربات متحرک ،کوتاهترین مسیر به مقصد،از طریق رفتن به قسمت پائین و از طریق شیب دارترین مسیر نزولی رسم شده است.با این وجود به هنگام وجود دو سلول یا بیشتر جهت گزینش با همان حداقل تبدیل فاصله ابهام مسیرهای بهینه وجود دارد. دو روش مذکور ملزم توان محاسباتی بسیار بالا در محیطی است که دارای تعداد زیاد اهداف فرعی (زیر اهداف)و موانع است.
محققان روش های فراوان را برای حل مسائل طراحی مسیر ربات های متحرک با وجود موانع ایستا و متحرک بر مبنای soft computing ،بیان کرده اند. soft computing متشکل از منطق فازی،شبکه های عصبی و محاسبات تکاملی است (الگوریتم های ژنتیک و تکاملی GA & EA).تاکنون تلاش های زیادی در استفاده از منطق فازی برای طراحی و برنامه ریزی حرکت ربات متحرک وجود داشته است .اخیرا استفاده از محاسبات تکاملی رواج فراوانی پیدا کرده و در واقع روشی است که به منظور بکارگیری در موقعیت هایی که دانش اولیه راجع حل مسئله وجود نداشته و یا اطلاعات محدود می باشد،قابلیت استفاده به گونه ای موثرتر،عمومی تر و راحت تر را داراست.
الگوریتم های ژنتیکی و تکامکلی نیازمند اطلاعات اشتقاقی یا برآوردهای فرمال اولیه از راه حل نیستند و از آنجائیکه طبیعتا تصادفی می باشند دارای قابلیت جستجوی کل فضای جواب با احتمال بیشتر پیدا کردن بهینه عمومی می باشند.
می توان تحقیق قبلی راجع طراحی مسیر را به صورت یکی از دو روش مقابل طبقه بندی کرد: مبتنی بر مدل و مبتنی بر سنسور .
در حالت مبتنی بر مدل ،مدل های منطقی از موانع شناخته شده ،برای تولید تصادم بدون مسیر بکار گرفته می شوند.در حالیکه در روش مبتنی بر سنسور ، کشف و اجتناب از موانع ناشناخته است.در این مقاله الگوریتمی جدید جهت بدست آوردن مسیر بهینه بر مبنای مدل پیشنهاد شده است.
ادامه مطالب مقاله بصورت ذیل مرتب شده اند :
در بخش 2 ،مقدمه ای مختصر راجع الگوریتم ژنتیک ارائه شده است .در بخش 3 ،فرمول سازی مسئله مورد بررسی واقع شده،در بخش 4 الگوریتم پیشنهادی ، معرفی و در بخش 5 نتایج شبیه سازی نشان داده شده است.
1.مسیریابی
مسئله مسیریابی ربات در چند حالت قابل بررسی است :
در یک مفهوم می توان مسیریابی روبات را در قالب تعقیب خط (عموما مسیری از پیش تعیین شده با رنگ متفاوت از زمینه ) معرفی نمود.روبات هایی با این کاربرد تحت عنوان مسیریاب شناخته می شوند . یکی از کاربرد های عمده این ربات ، حمل و نقل وسایل و کالاهای مختلف در کارخانجات ، بیمارستان ها ، فروشگاه ها ، کتابخانه ها و ... میباشد .
ربات تعقیب خط تا حدی قادر به انجام وظیفه کتاب داری کتابخانه ها می باشد . به این صورت که بعد از دادن کد کتاب ، ربات با دنبال کردن مسیری که کد آن را تعیین میکند ، به محلی که کتاب در آن قرار گرفته می رود و کتاب را برداشته و به نزد ما می آورد .مثال دیگر این نوع ربات در بیمارستان های پیشرفته است ، کف بیمارستان های پیشرفته خط کشی هایی به رنگ های مختلف به منظور هدایت ربات های مسیریاب به محل های مختلف وجود دارد . (مثلا رنگ قرمز به اتاق جراحی یا آبی به اتاق زایمان.) بیمارانی که توانایی حرکت کردن و جا به جا شدن را ندارند و باید از ویلچر استفاده کنند ، این ویلچر نقش ربات تعقیب خط را دارد ، و بیمار را از روی مسیر مشخص به محل مطلوب می برد .
با توجه به وجود موانع (استاتیک و دینامیک) در محیط ،مسیریابی روبات در مفهومی کاربردی تر ،پیمودن مسیر مبدا تا مقصد بدون برخورد با موانع می باشد.مسلما با وجود تعداد زیاد موانع ،تعداد مسیرهای قابل عبور روبات بسیار زیاد خواهد بود و یقینا انتخاب کوتاه ترین مسیر توسط روبات برای حرکت از مبدا به مقصد ،دارای ارزش اجرایی بالایی خواهد بود.در این مقاله چنین مسئله ای مورد بررسی واقع شده است.نقاط مبدا و مقصد و نیز محل موانع به عنوان ورودی داده شده است ،نیز می دانیم موانع ایستا می باشند (در حالت وجود موانع پویا در عین نزدیکی بیشتر به شرایط واقعی ،روش های مورد استفاده بسیار پیچیده خواهند بود)و مسئله در حالت دو بعدی بررسی می شود (روبات بر روی صفحه حرکت می نماید). برای این منظور الگوریتم های مسیریابی با هدف انتخاب کوتاهترین مسیر قابل استفاده می باشند ،الگوریتم هایی که به منظور مسیریابی در شبکه ها قابلیت استفاده دارند.با این وجود در این
لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 36 صفحه
قسمتی از متن .doc :
چکیده
این مقاله الگوریتمی جدید برای مسئله برنامه ریزی مسیرکلی به یک هدف ، برای ربات متحرک را با استفاده از الگوریتم ژنتیک ارائه می دهد .الگوریتم ژنتیک برای یافتن مسیر بهینه برای ربات متحرک جهت حرکت در محیط استاتیک که توسط نقشه ای با گره ها و لینک ها بیان شده است ،بکار گرفته شده است.موقعیت هدف و موانع برای یافتن یک مسیر بهینه در محیط دو بعدی داده شده است .هر نقطه اتصال در شبکه ژنی است که با استفاده از کد باینری ارائه شده است.تعداد ژن ها در یک کروموزوم تابعی از تعداد موانع در نقشه (نمودار)می باشد.
بنابراین از یک کروموزوم با طول ثابت استفاده کردیم.مسیر ربات ایجاد شده ، در مفهوم کوتاهترین مسیر ،بهینه است .ربات دارای محل آغاز و محل هدف تحت فرضیه ای است که ربات از هر محل فقط یکبار می گذرد یا اصلا نمی گذرد.نتایج بدست آمده در شبیه سازی ؛قدرت الگوریتم پیشنهادی را تایید می نماید.
مقدمه
مسئله طراحی مسیر ربات متحرک را می توان بصورت ذیل بیان کرد:
داده های مسئله (محل شروع،محل هدف، نقشه ای دو بعدی مسیرهاکه شامل موانع ساکن می باشد).هدف بدست آوردن یک مسیر بدون تصادم بین دو نقطه خاص در ایفای معیار بهینه سازی با در نظر گرفتن محدودیت ها (به احتمال زیاد:کوتاهترین مسیر)می باشد. مسئله طراحی مسیر از نظر محاسباتی بسیار پر هزینه است.
با اینکه حجم زیادی از تحقیقات برای حل بیشتر این مسائل انجام شده است،با این وجود،روش های معمول ،غیر قابل انعطاف می باشند.
1.اهداف مختلف بهینه سازی و تغییرات اهداف
2. عدم قطعیت ها در محیط ها
3. محدودیت های متفاوت برای منابع محاسباتی
مرور و بازنگری روش های موجود برای حل مسئله طراحی مسیر ،در [1] ارائه شده است . روش های زیادی برای ایجاد یک مسیر بهینه از قبیل برنامه ریزی دینامیک و روش های تبدیل مسافت گزارش شده است .
در روش برنامه ریزی دینامیک اگر نقطه ی شروعSP و نقطه ی هدف GP باشد ، نقطه ی زیر هدف IP است.و روش تولید مسیر ،نحوه تعیین توالی زیر اهداف است که زیر اهداف خود از مجموعه IP (I=1,2,3,…) انتخاب می شوند.ما باید تمام مسیرهای ممکن را بررسی کرده و مسیر با کمترین مقدار هزینه را به عنوان مسیر بهینه انتخاب نمائیم.توان محاسباتی بسیار فراوانی بویژه در محیط های دارای زیر اهداف فراوان مورد نیاز است . در روش تبدیل مسافت ،کارطراحی مسیر ،محیطی را با شبکه یکنواخت می پوشاند و فواصل را از طریق فضای خالی ،از سلول هدف،منتشر می کند.قسمت پیشین موج مسافت ،حول موانع و در نهایت از طریق تمامی فضاهای آزاد در محیط جریان می یابد.برای هر نقطه شروع در محیط نمایانگر محل اولیه ربات متحرک ،کوتاهترین مسیر به مقصد،از طریق رفتن به قسمت پائین و از طریق شیب دارترین مسیر نزولی رسم شده است.با این وجود به هنگام وجود دو سلول یا بیشتر جهت گزینش با همان حداقل تبدیل فاصله ابهام مسیرهای بهینه وجود دارد. دو روش مذکور ملزم توان محاسباتی بسیار بالا در محیطی است که دارای تعداد زیاد اهداف فرعی (زیر اهداف)و موانع است.
محققان روش های فراوان را برای حل مسائل طراحی مسیر ربات های متحرک با وجود موانع ایستا و متحرک بر مبنای soft computing ،بیان کرده اند. soft computing متشکل از منطق فازی،شبکه های عصبی و محاسبات تکاملی است (الگوریتم های ژنتیک و تکاملی GA & EA).تاکنون تلاش های زیادی در استفاده از منطق فازی برای طراحی و برنامه ریزی حرکت ربات متحرک وجود داشته است .اخیرا استفاده از محاسبات تکاملی رواج فراوانی پیدا کرده و در واقع روشی است که به منظور بکارگیری در موقعیت هایی که دانش اولیه راجع حل مسئله وجود نداشته و یا اطلاعات محدود می باشد،قابلیت استفاده به گونه ای موثرتر،عمومی تر و راحت تر را داراست.
الگوریتم های ژنتیکی و تکامکلی نیازمند اطلاعات اشتقاقی یا برآوردهای فرمال اولیه از راه حل نیستند و از آنجائیکه طبیعتا تصادفی می باشند دارای قابلیت جستجوی کل فضای جواب با احتمال بیشتر پیدا کردن بهینه عمومی می باشند.
می توان تحقیق قبلی راجع طراحی مسیر را به صورت یکی از دو روش مقابل طبقه بندی کرد: مبتنی بر مدل و مبتنی بر سنسور .
در حالت مبتنی بر مدل ،مدل های منطقی از موانع شناخته شده ،برای تولید تصادم بدون مسیر بکار گرفته می شوند.در حالیکه در روش مبتنی بر سنسور ، کشف و اجتناب از موانع ناشناخته است.در این مقاله الگوریتمی جدید جهت بدست آوردن مسیر بهینه بر مبنای مدل پیشنهاد شده است.
ادامه مطالب مقاله بصورت ذیل مرتب شده اند :
در بخش 2 ،مقدمه ای مختصر راجع الگوریتم ژنتیک ارائه شده است .در بخش 3 ،فرمول سازی مسئله مورد بررسی واقع شده،در بخش 4 الگوریتم پیشنهادی ، معرفی و در بخش 5 نتایج شبیه سازی نشان داده شده است.
1.مسیریابی
مسئله مسیریابی ربات در چند حالت قابل بررسی است :
در یک مفهوم می توان مسیریابی روبات را در قالب تعقیب خط (عموما مسیری از پیش تعیین شده با رنگ متفاوت از زمینه ) معرفی نمود.روبات هایی با این کاربرد تحت عنوان مسیریاب شناخته می شوند . یکی از کاربرد های عمده این ربات ، حمل و نقل وسایل و کالاهای مختلف در کارخانجات ، بیمارستان ها ، فروشگاه ها ، کتابخانه ها و ... میباشد .
ربات تعقیب خط تا حدی قادر به انجام وظیفه کتاب داری کتابخانه ها می باشد . به این صورت که بعد از دادن کد کتاب ، ربات با دنبال کردن مسیری که کد آن را تعیین میکند ، به محلی که کتاب در آن قرار گرفته می رود و کتاب را برداشته و به نزد ما می آورد .مثال دیگر این نوع ربات در بیمارستان های پیشرفته است ، کف بیمارستان های پیشرفته خط کشی هایی به رنگ های مختلف به منظور هدایت ربات های مسیریاب به محل های مختلف وجود دارد . (مثلا رنگ قرمز به اتاق جراحی یا آبی به اتاق زایمان.) بیمارانی که توانایی حرکت کردن و جا به جا شدن را ندارند و باید از ویلچر استفاده کنند ، این ویلچر نقش ربات تعقیب خط را دارد ، و بیمار را از روی مسیر مشخص به محل مطلوب می برد .
با توجه به وجود موانع (استاتیک و دینامیک) در محیط ،مسیریابی روبات در مفهومی کاربردی تر ،پیمودن مسیر مبدا تا مقصد بدون برخورد با موانع می باشد.مسلما با وجود تعداد زیاد موانع ،تعداد مسیرهای قابل عبور روبات بسیار زیاد خواهد بود و یقینا انتخاب کوتاه ترین مسیر توسط روبات برای حرکت از مبدا به مقصد ،دارای ارزش اجرایی بالایی خواهد بود.در این مقاله چنین مسئله ای مورد بررسی واقع شده است.نقاط مبدا و مقصد و نیز محل موانع به عنوان ورودی داده شده است ،نیز می دانیم موانع ایستا می باشند (در حالت وجود موانع پویا در عین نزدیکی بیشتر به شرایط واقعی ،روش های مورد استفاده بسیار پیچیده خواهند بود)و مسئله در حالت دو بعدی بررسی می شود (روبات بر روی صفحه حرکت می نماید). برای این منظور الگوریتم های مسیریابی با هدف انتخاب کوتاهترین مسیر قابل استفاده می باشند ،الگوریتم هایی که به منظور مسیریابی در شبکه ها قابلیت استفاده دارند.با این وجود در این
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 6
کاربرد داده ساختارهای جنبشی در مسیریابی شبکههای حسگر متحرک
کامیار رفعتی، نعیم اصفهانی، محمد قدسی
چکیده
یکی از موضوعات مطرح در طراحی الگوریتمها بحث شبکههای حسگر میباشد. این شبکهها متشکل از مجموعهای از واحدهای متحرک و مستقل از هم با توان مصرفی و پردازشی محدود است که از طریق فرستندههای رادیویی با یکدیگر در ارتباطند و اقدام به جمعآوری اطلاعات مینمایند. مسالهی مسیریابی در این شبکهها به گونهای که حداقل انرژی مصرف شود، از دسته مسائل غیر چند جملهای سخت میباشد که ارائه راه حلهای تقریبی مناسب موضوع برخی از تحقیقات در این زمینه است. در بیشتر مدلهای ارائه شده فرض بر ثابت بودن حسگرها است؛ در این مقاله سعی میشود الگوریتمی برای مسیریابی در شبکهی حسگرهای متحرک ارائه شود. با توجه به ماهیت جنبشی این شبکهها ، استفاده از داده ساختارهایی که بتواند ساختار زیر درخت فراگیر را به صورت بهینه نگاهداری نمایند بسیار سودمند است. در این تحقیق از داده ساختار جنبشی برای نگاهداری زیر درخت فراگیر استفاده شده است. در این مقاله این روش ارایه و بررسی میشود و نشان میدهیم که باعث کاهش پیچیدگی محاسباتی مسیریابی در این شبکهها میشود.
کلمات کلیدی
الگوریتم، شبکههای حسگر، مسیریابی، داده ساختارهای جنبشی، کوچکترین زیر درخت فراگیر محلی
Kinetic Data Structures for Routing Problem in Mobile Sensor Networks
Kamyar Rafati, Naeem Esfahani, Mohammad Ghodsi
Abstract
“Sensor networks” is an important topic in computer science and algorithm design. These networks are constructed from a set of independent mobile units with limited power and process capability. These units communicate and gather information using radio transmitters. The problem of routing in these networks with minimum power consumption is a NP-hard problem. Therefore, many researches use approximation algorithms for this problem. Most of the proposed models work with fixed sensors. In this paper, we propose an algorithm for routing in mobile sensor networks. According to the inherent kinetic structure of such networks, the use of a kinetic data structure which efficiently maintains minimum spanning tree (MST) is useful. In this paper, we present such structure for our problem and show that this method reduces the time complexity of routing in sensor networks.
Keywords
Algorithm, Sensor Networks, Routing, Kinetic Data Structures, Minimum Spanning Trees
مقدمه
با ظهور ارتباطات بیسیم بین عناصر مختلف و به دنبال آن مسئله شبکههای بی سیم و متحرک، توجه بسیاری از اندیشمندان رشته علوم کامپیوتر به مسائل موجود در این شبکه از قبیل مسیریابی معطوف شد. اما این شبکهها پاسخگوی تمام نیازها در زمینه ارتباطات بی سیم نبودند. به همین منظور مدل شبکههای ویژه ارائه شد که در آنها ارتباطات از طریق فرستندهها و گیرندههای رادیویی با فاصله ارتباطی محدود انجام میگرفت و در ضمن ساختار یکپارچه مرکزی برای مسیریابی و مدیریت ندارند. در قدم بعدی محدودیت توان مصرفی و عملیاتی نیز به مدل فوق افزوده شد و مدل شبکه حسگر معرفی شد.
شبکه های حسگر کاربرد بسیار وسیعی دارند. مثلا حسگرهای تشخیص آتش سوزی در یک جنگل و یا شهر همچنین حسگرهای تشخیص تشعشعات هستهای در یک رآکتور هستهای، نمونههایی از این کاربردها هستند.
ویژگیهای شبکههای حسگر را میتوان به اجمال به این موارد تقسیم نمود: 1. انرژی محدود عناصر .2. پهنای باند محدود .3. شبکه بدون ساختار و متغیر با زمان .4. کیفیت پایین ارتباطات .5. قدرت محاسبات محدود در عناصر.
از جمله مسائل مطرح در زمینه شبکههای حسگر، بحث مسیریابی در این شبکهها است. الگوریتمهای متفاوتی برای این مسئله ارائه شده است. الگوریتمهای ارائه شده را میتوان به دو دسته همگن و ناهمگن تقسیم نمود. الگوریتمهای همگن فرض را بر یکسان بودن عناصر شبکه (از نظر برد فرستنده) میگذارند. الگوریتمهای ناهمگن از انعطافپذیری بیشتری برخوردار هستند. الگوریتمهای ناهمگن با توجه به اطلاعاتی استفاده میکنند به سه دسته تقسیم میشوند. 1- بر مبنای محل : در آنها محل دقیق عناصر مشخص میباشد. 2- بر مبنای جهت : در آنها فرض میشود که هر کس جهت نسبی همسایگانش را نسبت به خود میداند. 3- بر مبنای همسایه : در آنها فرض میشود که شناسه همسایهها در اختیار است.
الگوریتمهای ارائه شده را از یک منظر دیگر میتوان به دو دسته متمرکز و نامتمرکز نیز تقسیم نمود. در الگوریتمهای متمرکز، یک ناظر خارجی در سیستم وجود دارد که مسئولیت مسیریابی را به عهده دارد. البته فرض وجود چنین ناظری اولا با ماهیت شبکههای حسگر سازگار نیست در ضمن قابلیت مقیاسپذیری ندارد.
از جمله روشهای رایج در زمینه مسیریابی استفاده از درخت فراگیر کمینه است. اما به دو دلیل که در ادامه خواهیم دید، استفاده از آنها در این شبکهها محبوبیت پیدا نکرده است. اولا پیدا کردن کوچکترین درخت فراگیر یک الگوریتم ماهیتا متمرکز است و دوما به علت آنکه هزینه ساخت آن بالاست و در این شبکهها - به علت متحرک بودن عناصر - نیاز است که مرتبا این درخت ساخته شود.
در این مقاله یک الگوریتم برای مسیریابی در شبکههای حسگر بر مبنای کوچکترین درخت فراگیر ارائه میشود ولی سعی شده که مشکلات ذکر شده در بالا در آن پاسخ داده شود. برای این منظور اولا از کوچکترین درخت فراگیر محلی استفاده شده است که نیاز ناظر را از بین میبرد و همچنین از یک ساختار جنبشی برای نگهداری آن استفاده میشود که مشکل هزینه تغییرات را از بین میبرد.
در زمینه مسیریابی در شبکههای حسگر کارهای گوناگونی انجام شده است ولی در تمام آنها فرض بر ثابت بودن ساختار شبکه در طول حیات شبکه است. همچنین داده ساختارهای گوناگونی برای نگاهداری اجزای شبکه مطرح شده است ولی اکثر آنها هزینه به روز رسانی بالایی دارند و همچنین برای مسئله مسیریابی مناسب نیستند. لذا در این مقاله تلاش شد تا فرضهای مطرح شده بسیار به محیط واقعی شبیه باشند که تا زمان نوشتن این مقاله کاری با این درجه شباهت با محیط واقعی پیدا نکردیم. نتیجه حاصل نیز هزینه نگاهداری و به روز رسانی کمینهای دارد که برای حسگر های با انرژی محدود مناسب است.
در بخشهای بعدی ابتدا یک الگوریتم برای کوچکترین درخت فراگیر محلی ارائه میشود. سپس یک روش جنبشی برای نگهداری کوچکترین درخت فراگیر ارائه میشود. در ادامه الگوریتم اصلی که ترکیبی از این دو روش است معرفی میشود و بعضی خواص آن اثبات میشود . در انتها پیچیدگی الگوریتم و نتیجهگیری آورده شده است.
کوچکترین درخت فراگیر محلی
در این قسمت روشی برای ساخت کوچکترین زیر درخت فراگیر به صورت محلی ارائه میشود. ایده اصلی از روش ارائه شده توسط لی و همکارانش [1] گرفته شده است.
الگوریتم ساخت این درخت در دو فاز انجام میشود. در مرحله اول اطلاعات بین عناصر شبکه تبادل میشود و در مرحله دوم هر عنصر به صورت مجزا کوچکترین زیر درخت فراگیر را برای خود میسازد. در ادامه هر یک از دو فاز را به تفضیل شرح میدهیم.
فاز تبادل اطلاعات : در این فاز همانند مدل بردار فاصله در مسیریابی درون دامنهای عمل میشود. به این صورت که هر عنصر در شبکه اطلاعات خود را از تمام عناصر شبکه به صورت یک بردار فاصله به همسایگانش می فرستد. به علت اینکه عناصر از وجود تمام عناصر دیگر آگاه نیستند استفاده از شناسه الزامی است. پس از اتمام این فاز ، تمام عناصر و یا گرههای شبکه ، اطلاعات کل شبکه را در اختیار دارند.
فاز ساخت کوچکترین زیر درخت فراگیر : در این فاز ، همانند فاز دوم در روش ارائه شده توسط لی و همکارانش [1] ، هر گره با استفاده از الگوریتمی مانند پریم [4] کوچکترین زیر درخت فراگیر را می سازد. در الگوریتم پریم درخت حاصل یکتا نیست زیرا در مواردی که فاصله دو گره از یک گره یکسان باشد به صورت اتفاقی یکی از آنها انتخاب میشود. ولی به منظور اینکه تمام عناصر دید یکسانی از این درخت داشته باشند ، ما تابع فاصله را به صورت زیر تغییر دادهایم تا همیشه درخت یکتایی تولید شود.
که در آن برابر فاصله راس از راس است. در انتهای این فاز هر عنصر یک درخت فراگیر دارد که در تمام گرههای مختلف شبکه یکسان هستند و در حقیقت روی آن توافق شده است. در صورتی که عناصر شبکه در یک صفحه باشند اثبات می شود که بزرگترین درجه راسهای درخت حداکثر 6 میشود. این نکته باعث کاهش قابل توجهی از انرژی مصرفی هر گره میشود.
تا این مرحله هر گره ، کوچکترین زیر درخت فراگیر لازم برای مسیریابی را ساخته است. در بخش بعد روشی برای نگهداری بهینه این درخت در موارد وجود حرکت و یا حذف و ایجاد گرههای جدید با کمک یک داده ساختار جنبشی ارائه میشود.
کوچکترین درخت فراگیر پارامتری و جنبشی
برای مدل کردن ساختار جنبشی گرهها میتوان روشهای مختلفی را پیش گرفت. در ابتداییترین حالت میتوان فرض کرد معادلهی حرکت گرهها دقیقا مشخص است و بر پایهی آن داده ساختار مساله را حل کرد. مشکل این روش این است که اولا معادلهی حرکت یک گره ممکن است بسیار پیچیده باشد و بدست آوردن اطلاعات لازم از آن کار سادهای نباشد؛ دوما ماهیت معادلهی حرکت یک گره یک مفهوم پیوسته است و برای ما مناسبتر است اگر بتوانیم آن را به صورت یک مفهوم گسسته مدل کنیم. بنابراین از مدل معرفی شده توسط آگاروال و همکارانش [2] استفاده میکنیم که در آن به جای در نظر گرفتن معادلهی حرکت یک گره، تغییرات وزن یک یال را داریم و آن را یک تابع خطی در نظر میگیریم و برای گسسته کردن این تابع از رابطهی برای یال استفاده میکنیم. در این تابع دو عدد و دو عدد حقیقی هستند و به عنوان یک پارامتر گسسته تغییر کرده و باعث تغییر وزن یالها میشود. به طور کلی دو دسته الگوریتم جنبشی برای حل مسالهی کوچکترین درخت فراگیر داریم که هر کدام را میتوان با دیگری شبیهسازی نمود:
الگوریتم جنبشی ساختاری: که در آن یالها اضافه و حذف میشوند و تغییر وزن را با حذف و اضافه کردن یال شبیهسازی میکنیم.
الگوریتم جنبشی تابعی: که توانایی تغییر وزن یالها را دارد و اضافه و حذف یالها را با استفاده از یک عدد بسیار بزرگ به عنوان وزن یال حذف شده شبیهسازی میکند.
یکی از تکنیکهایی که در این روش استفاده میشود روش تنک کردن است که عملا روش تقسیم و حل میباشد. در این روش گراف را به صورت بازگشتی به تعدادی دسته تقسیم میکنیم. نکتهای این تقسیم بندیها دارند این است که درخت نهایی حاصل از گراف به راحتی از کنار هم قرار دادن جوابهای زیر درختها حاصل از زیر گرافها بدست میآید. اپستین و همکارانش [7] نشان دادند که این عمل نتیجهی درستی میدهد. فرناندز و همکارانش [8] نیز نشان دادند که این روش برای مسالهی پارامتری نیز درست کار میکند و هزینهی آن را نیز محاسبه کردند.
نقطهی عطف این روش مطرح کردن ایدههای هندسهی محاسباتی در کاربرد تئوری گرافهاست؛ نشان داده میشود که میتوان اطلاعات مربوط به گرهها را توسط پوش محدب نگهداری کرد؛ به این ترتیب که با توجه به دستهبندی که انجام میشود، مجموعههایی داریم که برای داشتن درخت فراگیر باید یکی از یالها را انتخاب و حذف کرد. اگر در این انتخاب بزرگترین عنصر مجموعه را حذف کنیم درخت ما کمینه خواهد بود. در اینجا جنبش باعث میشود که این بزرگترین عنصر با تغییر که حاصل از جنبش است عوض شود و برای داشتن کوچکترین درخت فراگیر مجبور به تعویض یال شویم. با استفاده از پوش محدب میتوانیم در زمان بزرگترین یال جدید را پیدا کنیم و جای یال قبلی را با آن عوض کنیم. روند کار به این ترتیب است که با استفاده از تبدیل هو [Hough59] معادلهی وزن یالها بر اساس را تبدیل به نقاط میکنیم. در مسالهی دوگان بدست آمده خطی که بر دو پوش محدب مماس میشود مشخص میکند کدام دو خط باید جابجا شوند. این دو نقطهی پیدا شده در عمل نشان دهندهی بیشترین رشد وزن در یالهایی که در درخت هستند و بیشترین کاهش وزن در یالهایی که در درخت نیستند میباشند و اگر قرار باشد جای دو یال عوض شود باید این دو یال باشند. دو یال میتوانند در جابجایی روابط زیر را با هم داشته باشند:
جابجایی درون افرازی: هر دو در یک افراز هستند.
جابجایی افراز دوگان: یالی که روی درخت فراگیر کمینه بود -باید حذف شود- در یکی از افرازهایی است که یک سر یال دیگر در آن است.
جابجایی بین افرازی: دو یال رابطههای بالا را با هم ندارند.
به طور کلی با اضافه کردن راس میتوانیم کاری کنیم که یک گراف فقط شامل راسهایی با درجهی 3 یا 1 باشد و عملا حالت دودویی داشته باشد. برای گراف داده شده هم این کار را انجام میدهیم . سپس برای جلوگیری از گسترش اطلاعات مربوط به تغییر مکان یک گره در کل گراف، اقدام به افراز گرهها میکنیم. و با توجه به رابطهی دو یال که با هم عوض میشوند، اقدام در جهت بروز رسانی درخت مینماییم. افراز انجام شده باعث میشود که تغییرات حتیالامکان محلی باقی بمانند و از حدی که لازم نیست فراتر نروند.
کوچکترین درخت فراگیر محلی با نگهداری به کمک داده ساختار جنبشی
در دو بخش قبل ، روشهایی برای ساخت کوچکترین زیر درخت فراگیر محلی و همچنین ساختاری جنبشی برای نگاهداری کوچکترین زیر درخت فراگیر آشنا معرفی شدند. متاسفانه هیچ کدام از این روشها برای شبکههای حسگر مناسب نیستند. کوچکترین زیر درخت فراگیر محلی به علت تغییرات زیاد در محل عناصر شبکه حسگر هزینه بسیار بالایی را ، هم از نظر انرژی و هم از نظر پیغامهای رد و بدل شده ، دارد. در مقابل داده ساختار جنبشی ارائه شده نیز با وجود اینکه هزینه به روز رسانی مناسبی دارد ولی به علت اینکه محلی نیست لذا بایستی که تغییرات آن در همه سیستم منعکس شود که نیازمند ارتباطات بسیار زیادی در شبکه میباشد.
در این بخش مدلی ارائه میشود که در آن سعی شده است که از مزایای هر دو روش فوق استفاده شود و مدلی مناسب برای ساخت و نگاهداری کوچکترین زیر درخت فراگیر در شبکههای حسگر ارائه شود.
این الگوریتم در دو مرحله انجام می شود. در مرحله اول به کمک الگوریتم محلی داده شده در بخش 2 تمام گرههای شبکه یک زیر درخت فراگیر ایجاد میکنند. نکته قابل توجه این است که در پایان این مرحله تمام عناصر شبکه دید یکسانی از شبکه دارند. در مرحله دوم هر گره به کمک داده ساختار ارائه شده در بخش 3 ، این درخت ایجاد شده را در صورت بروز تغییرات به روز میکند. سپس تغییرات
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 6
کاربرد داده ساختارهای جنبشی در مسیریابی شبکههای حسگر متحرک
کامیار رفعتی، نعیم اصفهانی، محمد قدسی
چکیده
یکی از موضوعات مطرح در طراحی الگوریتمها بحث شبکههای حسگر میباشد. این شبکهها متشکل از مجموعهای از واحدهای متحرک و مستقل از هم با توان مصرفی و پردازشی محدود است که از طریق فرستندههای رادیویی با یکدیگر در ارتباطند و اقدام به جمعآوری اطلاعات مینمایند. مسالهی مسیریابی در این شبکهها به گونهای که حداقل انرژی مصرف شود، از دسته مسائل غیر چند جملهای سخت میباشد که ارائه راه حلهای تقریبی مناسب موضوع برخی از تحقیقات در این زمینه است. در بیشتر مدلهای ارائه شده فرض بر ثابت بودن حسگرها است؛ در این مقاله سعی میشود الگوریتمی برای مسیریابی در شبکهی حسگرهای متحرک ارائه شود. با توجه به ماهیت جنبشی این شبکهها ، استفاده از داده ساختارهایی که بتواند ساختار زیر درخت فراگیر را به صورت بهینه نگاهداری نمایند بسیار سودمند است. در این تحقیق از داده ساختار جنبشی برای نگاهداری زیر درخت فراگیر استفاده شده است. در این مقاله این روش ارایه و بررسی میشود و نشان میدهیم که باعث کاهش پیچیدگی محاسباتی مسیریابی در این شبکهها میشود.
کلمات کلیدی
الگوریتم، شبکههای حسگر، مسیریابی، داده ساختارهای جنبشی، کوچکترین زیر درخت فراگیر محلی
Kinetic Data Structures for Routing Problem in Mobile Sensor Networks
Kamyar Rafati, Naeem Esfahani, Mohammad Ghodsi
Abstract
“Sensor networks” is an important topic in computer science and algorithm design. These networks are constructed from a set of independent mobile units with limited power and process capability. These units communicate and gather information using radio transmitters. The problem of routing in these networks with minimum power consumption is a NP-hard problem. Therefore, many researches use approximation algorithms for this problem. Most of the proposed models work with fixed sensors. In this paper, we propose an algorithm for routing in mobile sensor networks. According to the inherent kinetic structure of such networks, the use of a kinetic data structure which efficiently maintains minimum spanning tree (MST) is useful. In this paper, we present such structure for our problem and show that this method reduces the time complexity of routing in sensor networks.
Keywords
Algorithm, Sensor Networks, Routing, Kinetic Data Structures, Minimum Spanning Trees
مقدمه
با ظهور ارتباطات بیسیم بین عناصر مختلف و به دنبال آن مسئله شبکههای بی سیم و متحرک، توجه بسیاری از اندیشمندان رشته علوم کامپیوتر به مسائل موجود در این شبکه از قبیل مسیریابی معطوف شد. اما این شبکهها پاسخگوی تمام نیازها در زمینه ارتباطات بی سیم نبودند. به همین منظور مدل شبکههای ویژه ارائه شد که در آنها ارتباطات از طریق فرستندهها و گیرندههای رادیویی با فاصله ارتباطی محدود انجام میگرفت و در ضمن ساختار یکپارچه مرکزی برای مسیریابی و مدیریت ندارند. در قدم بعدی محدودیت توان مصرفی و عملیاتی نیز به مدل فوق افزوده شد و مدل شبکه حسگر معرفی شد.
شبکه های حسگر کاربرد بسیار وسیعی دارند. مثلا حسگرهای تشخیص آتش سوزی در یک جنگل و یا شهر همچنین حسگرهای تشخیص تشعشعات هستهای در یک رآکتور هستهای، نمونههایی از این کاربردها هستند.
ویژگیهای شبکههای حسگر را میتوان به اجمال به این موارد تقسیم نمود: 1. انرژی محدود عناصر .2. پهنای باند محدود .3. شبکه بدون ساختار و متغیر با زمان .4. کیفیت پایین ارتباطات .5. قدرت محاسبات محدود در عناصر.
از جمله مسائل مطرح در زمینه شبکههای حسگر، بحث مسیریابی در این شبکهها است. الگوریتمهای متفاوتی برای این مسئله ارائه شده است. الگوریتمهای ارائه شده را میتوان به دو دسته همگن و ناهمگن تقسیم نمود. الگوریتمهای همگن فرض را بر یکسان بودن عناصر شبکه (از نظر برد فرستنده) میگذارند. الگوریتمهای ناهمگن از انعطافپذیری بیشتری برخوردار هستند. الگوریتمهای ناهمگن با توجه به اطلاعاتی استفاده میکنند به سه دسته تقسیم میشوند. 1- بر مبنای محل : در آنها محل دقیق عناصر مشخص میباشد. 2- بر مبنای جهت : در آنها فرض میشود که هر کس جهت نسبی همسایگانش را نسبت به خود میداند. 3- بر مبنای همسایه : در آنها فرض میشود که شناسه همسایهها در اختیار است.
الگوریتمهای ارائه شده را از یک منظر دیگر میتوان به دو دسته متمرکز و نامتمرکز نیز تقسیم نمود. در الگوریتمهای متمرکز، یک ناظر خارجی در سیستم وجود دارد که مسئولیت مسیریابی را به عهده دارد. البته فرض وجود چنین ناظری اولا با ماهیت شبکههای حسگر سازگار نیست در ضمن قابلیت مقیاسپذیری ندارد.
از جمله روشهای رایج در زمینه مسیریابی استفاده از درخت فراگیر کمینه است. اما به دو دلیل که در ادامه خواهیم دید، استفاده از آنها در این شبکهها محبوبیت پیدا نکرده است. اولا پیدا کردن کوچکترین درخت فراگیر یک الگوریتم ماهیتا متمرکز است و دوما به علت آنکه هزینه ساخت آن بالاست و در این شبکهها - به علت متحرک بودن عناصر - نیاز است که مرتبا این درخت ساخته شود.
در این مقاله یک الگوریتم برای مسیریابی در شبکههای حسگر بر مبنای کوچکترین درخت فراگیر ارائه میشود ولی سعی شده که مشکلات ذکر شده در بالا در آن پاسخ داده شود. برای این منظور اولا از کوچکترین درخت فراگیر محلی استفاده شده است که نیاز ناظر را از بین میبرد و همچنین از یک ساختار جنبشی برای نگهداری آن استفاده میشود که مشکل هزینه تغییرات را از بین میبرد.
در زمینه مسیریابی در شبکههای حسگر کارهای گوناگونی انجام شده است ولی در تمام آنها فرض بر ثابت بودن ساختار شبکه در طول حیات شبکه است. همچنین داده ساختارهای گوناگونی برای نگاهداری اجزای شبکه مطرح شده است ولی اکثر آنها هزینه به روز رسانی بالایی دارند و همچنین برای مسئله مسیریابی مناسب نیستند. لذا در این مقاله تلاش شد تا فرضهای مطرح شده بسیار به محیط واقعی شبیه باشند که تا زمان نوشتن این مقاله کاری با این درجه شباهت با محیط واقعی پیدا نکردیم. نتیجه حاصل نیز هزینه نگاهداری و به روز رسانی کمینهای دارد که برای حسگر های با انرژی محدود مناسب است.
در بخشهای بعدی ابتدا یک الگوریتم برای کوچکترین درخت فراگیر محلی ارائه میشود. سپس یک روش جنبشی برای نگهداری کوچکترین درخت فراگیر ارائه میشود. در ادامه الگوریتم اصلی که ترکیبی از این دو روش است معرفی میشود و بعضی خواص آن اثبات میشود . در انتها پیچیدگی الگوریتم و نتیجهگیری آورده شده است.
کوچکترین درخت فراگیر محلی
در این قسمت روشی برای ساخت کوچکترین زیر درخت فراگیر به صورت محلی ارائه میشود. ایده اصلی از روش ارائه شده توسط لی و همکارانش [1] گرفته شده است.
الگوریتم ساخت این درخت در دو فاز انجام میشود. در مرحله اول اطلاعات بین عناصر شبکه تبادل میشود و در مرحله دوم هر عنصر به صورت مجزا کوچکترین زیر درخت فراگیر را برای خود میسازد. در ادامه هر یک از دو فاز را به تفضیل شرح میدهیم.
فاز تبادل اطلاعات : در این فاز همانند مدل بردار فاصله در مسیریابی درون دامنهای عمل میشود. به این صورت که هر عنصر در شبکه اطلاعات خود را از تمام عناصر شبکه به صورت یک بردار فاصله به همسایگانش می فرستد. به علت اینکه عناصر از وجود تمام عناصر دیگر آگاه نیستند استفاده از شناسه الزامی است. پس از اتمام این فاز ، تمام عناصر و یا گرههای شبکه ، اطلاعات کل شبکه را در اختیار دارند.
فاز ساخت کوچکترین زیر درخت فراگیر : در این فاز ، همانند فاز دوم در روش ارائه شده توسط لی و همکارانش [1] ، هر گره با استفاده از الگوریتمی مانند پریم [4] کوچکترین زیر درخت فراگیر را می سازد. در الگوریتم پریم درخت حاصل یکتا نیست زیرا در مواردی که فاصله دو گره از یک گره یکسان باشد به صورت اتفاقی یکی از آنها انتخاب میشود. ولی به منظور اینکه تمام عناصر دید یکسانی از این درخت داشته باشند ، ما تابع فاصله را به صورت زیر تغییر دادهایم تا همیشه درخت یکتایی تولید شود.
که در آن برابر فاصله راس از راس است. در انتهای این فاز هر عنصر یک درخت فراگیر دارد که در تمام گرههای مختلف شبکه یکسان هستند و در حقیقت روی آن توافق شده است. در صورتی که عناصر شبکه در یک صفحه باشند اثبات می شود که بزرگترین درجه راسهای درخت حداکثر 6 میشود. این نکته باعث کاهش قابل توجهی از انرژی مصرفی هر گره میشود.
تا این مرحله هر گره ، کوچکترین زیر درخت فراگیر لازم برای مسیریابی را ساخته است. در بخش بعد روشی برای نگهداری بهینه این درخت در موارد وجود حرکت و یا حذف و ایجاد گرههای جدید با کمک یک داده ساختار جنبشی ارائه میشود.
کوچکترین درخت فراگیر پارامتری و جنبشی
برای مدل کردن ساختار جنبشی گرهها میتوان روشهای مختلفی را پیش گرفت. در ابتداییترین حالت میتوان فرض کرد معادلهی حرکت گرهها دقیقا مشخص است و بر پایهی آن داده ساختار مساله را حل کرد. مشکل این روش این است که اولا معادلهی حرکت یک گره ممکن است بسیار پیچیده باشد و بدست آوردن اطلاعات لازم از آن کار سادهای نباشد؛ دوما ماهیت معادلهی حرکت یک گره یک مفهوم پیوسته است و برای ما مناسبتر است اگر بتوانیم آن را به صورت یک مفهوم گسسته مدل کنیم. بنابراین از مدل معرفی شده توسط آگاروال و همکارانش [2] استفاده میکنیم که در آن به جای در نظر گرفتن معادلهی حرکت یک گره، تغییرات وزن یک یال را داریم و آن را یک تابع خطی در نظر میگیریم و برای گسسته کردن این تابع از رابطهی برای یال استفاده میکنیم. در این تابع دو عدد و دو عدد حقیقی هستند و به عنوان یک پارامتر گسسته تغییر کرده و باعث تغییر وزن یالها میشود. به طور کلی دو دسته الگوریتم جنبشی برای حل مسالهی کوچکترین درخت فراگیر داریم که هر کدام را میتوان با دیگری شبیهسازی نمود:
الگوریتم جنبشی ساختاری: که در آن یالها اضافه و حذف میشوند و تغییر وزن را با حذف و اضافه کردن یال شبیهسازی میکنیم.
الگوریتم جنبشی تابعی: که توانایی تغییر وزن یالها را دارد و اضافه و حذف یالها را با استفاده از یک عدد بسیار بزرگ به عنوان وزن یال حذف شده شبیهسازی میکند.
یکی از تکنیکهایی که در این روش استفاده میشود روش تنک کردن است که عملا روش تقسیم و حل میباشد. در این روش گراف را به صورت بازگشتی به تعدادی دسته تقسیم میکنیم. نکتهای این تقسیم بندیها دارند این است که درخت نهایی حاصل از گراف به راحتی از کنار هم قرار دادن جوابهای زیر درختها حاصل از زیر گرافها بدست میآید. اپستین و همکارانش [7] نشان دادند که این عمل نتیجهی درستی میدهد. فرناندز و همکارانش [8] نیز نشان دادند که این روش برای مسالهی پارامتری نیز درست کار میکند و هزینهی آن را نیز محاسبه کردند.
نقطهی عطف این روش مطرح کردن ایدههای هندسهی محاسباتی در کاربرد تئوری گرافهاست؛ نشان داده میشود که میتوان اطلاعات مربوط به گرهها را توسط پوش محدب نگهداری کرد؛ به این ترتیب که با توجه به دستهبندی که انجام میشود، مجموعههایی داریم که برای داشتن درخت فراگیر باید یکی از یالها را انتخاب و حذف کرد. اگر در این انتخاب بزرگترین عنصر مجموعه را حذف کنیم درخت ما کمینه خواهد بود. در اینجا جنبش باعث میشود که این بزرگترین عنصر با تغییر که حاصل از جنبش است عوض شود و برای داشتن کوچکترین درخت فراگیر مجبور به تعویض یال شویم. با استفاده از پوش محدب میتوانیم در زمان بزرگترین یال جدید را پیدا کنیم و جای یال قبلی را با آن عوض کنیم. روند کار به این ترتیب است که با استفاده از تبدیل هو [Hough59] معادلهی وزن یالها بر اساس را تبدیل به نقاط میکنیم. در مسالهی دوگان بدست آمده خطی که بر دو پوش محدب مماس میشود مشخص میکند کدام دو خط باید جابجا شوند. این دو نقطهی پیدا شده در عمل نشان دهندهی بیشترین رشد وزن در یالهایی که در درخت هستند و بیشترین کاهش وزن در یالهایی که در درخت نیستند میباشند و اگر قرار باشد جای دو یال عوض شود باید این دو یال باشند. دو یال میتوانند در جابجایی روابط زیر را با هم داشته باشند:
جابجایی درون افرازی: هر دو در یک افراز هستند.
جابجایی افراز دوگان: یالی که روی درخت فراگیر کمینه بود -باید حذف شود- در یکی از افرازهایی است که یک سر یال دیگر در آن است.
جابجایی بین افرازی: دو یال رابطههای بالا را با هم ندارند.
به طور کلی با اضافه کردن راس میتوانیم کاری کنیم که یک گراف فقط شامل راسهایی با درجهی 3 یا 1 باشد و عملا حالت دودویی داشته باشد. برای گراف داده شده هم این کار را انجام میدهیم . سپس برای جلوگیری از گسترش اطلاعات مربوط به تغییر مکان یک گره در کل گراف، اقدام به افراز گرهها میکنیم. و با توجه به رابطهی دو یال که با هم عوض میشوند، اقدام در جهت بروز رسانی درخت مینماییم. افراز انجام شده باعث میشود که تغییرات حتیالامکان محلی باقی بمانند و از حدی که لازم نیست فراتر نروند.
کوچکترین درخت فراگیر محلی با نگهداری به کمک داده ساختار جنبشی
در دو بخش قبل ، روشهایی برای ساخت کوچکترین زیر درخت فراگیر محلی و همچنین ساختاری جنبشی برای نگاهداری کوچکترین زیر درخت فراگیر آشنا معرفی شدند. متاسفانه هیچ کدام از این روشها برای شبکههای حسگر مناسب نیستند. کوچکترین زیر درخت فراگیر محلی به علت تغییرات زیاد در محل عناصر شبکه حسگر هزینه بسیار بالایی را ، هم از نظر انرژی و هم از نظر پیغامهای رد و بدل شده ، دارد. در مقابل داده ساختار جنبشی ارائه شده نیز با وجود اینکه هزینه به روز رسانی مناسبی دارد ولی به علت اینکه محلی نیست لذا بایستی که تغییرات آن در همه سیستم منعکس شود که نیازمند ارتباطات بسیار زیادی در شبکه میباشد.
در این بخش مدلی ارائه میشود که در آن سعی شده است که از مزایای هر دو روش فوق استفاده شود و مدلی مناسب برای ساخت و نگاهداری کوچکترین زیر درخت فراگیر در شبکههای حسگر ارائه شود.
این الگوریتم در دو مرحله انجام می شود. در مرحله اول به کمک الگوریتم محلی داده شده در بخش 2 تمام گرههای شبکه یک زیر درخت فراگیر ایجاد میکنند. نکته قابل توجه این است که در پایان این مرحله تمام عناصر شبکه دید یکسانی از شبکه دارند. در مرحله دوم هر گره به کمک داده ساختار ارائه شده در بخش 3 ، این درخت ایجاد شده را در صورت بروز تغییرات به روز میکند. سپس تغییرات