لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 20 صفحه
قسمتی از متن .doc :
الگوریتم
هر برنامه، می بایست دارای یک طرح و یا الگو بوده تا برنامه نویس بر اساس آن عملیات خود را دنبال نماید.از دیدگاه برنامه نویسان ، هر برنامه نیازمند یک الگوریتم است . بعبارت ساده ، الگوریتم ، بیانه ای روشمند بمنظور حل یک مسئله بخصوص است . از منظر برنامه نویسان ،الگوریتم بمنزله یک طرح کلی و یا مجموعه دستورالعمل هائی است که با دنبال نمودن آنان ، برنامه ای تولید می گردد.
الگوریتم های میکرو در مقابل ماکرو
الگوریتم ها دارای ویژگی های متفاوتی می باشند . ما می توانیم در رابطه با الگوریتم استفاده شده به منظور نوشتن یک برنامه مشخص صحبت نمائیم . از این زاویه ، ما صرفا" در رابطه با الگوریتم در سطح ماکرو(macro level) ، صحبت نموده ایم . در چنین مواردی ، الگوریتم ارائه شده ، سعی در بدست آوردن جنبه های عمومی برنامه از طریق یک مرور کلی به برنامه در مقابل درگیر شدن در جزئیات را دارد.ما می توانیم در رابطه با الگوریتم ها ، از سطح "میکرو" صحبت نمائیم . از این زاویه ، به سطوح پایین تر رفته و به عوامل اساسی ونگهدارنده ای که یک جنبه خاص از برنامه را با یکدیگر مرتبط می نماید، صحبت کرد. مثلا" در صورتیکه شما دارای داده هائی هستید که می بایست قبل از استفاده مرتب گردند ،الگوریتم های مرتب سازی متعددی در این زمینه وجود داشته و می توان یکی از آنها را بمنظور تامین اهداف مورد نظر خود انتخاب نمود. انتخاب یک الگوریتم مرتب سازی ، صرفا" باعث حل شدن یکی از جنبه های متفاوت برنامه می گردد . پس از مرتب سازی داده ها ،می بایست از یک الگوریتم میکرو دیگر بمنظور نمایش داده ها ی مرتب شده استفاده گردد .
همانگونه که احتمالا" حدس زده اید ، ما می توانیم تمام الگوریتم های میکرو را بمنظور ایجاد یک الگوریتم ماکرو ، جمع آوری نمائیم . اگر ما با الگوریتم های میکرو ، آغاز نمائیم ، و حرکت خود را بسمت نمایش ماکروی یک برنامه ، پیش ببریم ، کاری را انجام داده ایم که موسوم به طراحی " پایین به بالا" (buttom-up) ، است . اگر ما فعالیت خود را با یک الگوریتم ماکرو آعاز و حرکت خود را بسمت پائین و الگوریتم های میکرو ، ادامه دهیم ، طراحی از نوع " بالا به پایین " (top-down) را انجام داده ایم .
شاید این سوال مطرح گردد که کدام روش بهتر است ؟ اگر شما تمام مقالاتی را که تاکنون در این زمینه نوشته شده اند را دنبال نمائید ، هرگز به یک نتیجه قابل قبول دست نخواهید یافت . هر رویکرد، دارای نکات مثبت و منفی مربوط به خود است . صرفنظر از رویکرد طراحی استفاده شده ، می بایست دارای الگوئی (طرحی) مناسب برای برنامه باشیم .حداقل، نیازمند یک اعلامیه از مسئله برنامه نویسی و یک طرح ( الگو) برای برخورد با مسئله ، خواهیم بود . پس از شناخت مسئله ، می توان نحوه حل مسئله را ترسیم کرد. شناخت عمیق و مناسب نسبت به مسئله ای که قصد حل آن را داریم ، شرط اساسی و ضروری برای طراحی یک برنامه است .با توجه به اینکه این اعتقاد وجود دارد که شناخت جامع و کلی از مسئله ای که حل آن را داریم ، بخشی ضروری در اولین مرحله برنامه نویسی است ، ما در ادامه از رویکرد "بالا - پایین "، تبعیـت می نمائیم . فراموش نکنیم که رویکرد فوق ، امکان مشاهده مجازی از هر مسئله برنامه نویسی را فراهم خواهد نمود.
مراحل پنج گانه
هر برنامه را صرفنظر از میزان پیچیدگی آن ، می توان به پنج مرحله اساسی تجزیه کرد :
مقدار دهی اولیه
ورودی
پردازش
خروجی
پاکسازی
در ادامه به بررسی هریک از مراحل فوق ، خواهیم پرداخت .
مرحله مقداردهی اولیه
مرحله مقداردهی اولیه ، اولین مرحله ای است که می بایست در زمان طراحی یک برنامه در رابطه با آن فکر کرد . مرحله فوق ، شامل تمامی عملیات مورد نیازی است که برنامه می بایست قبل ازبرقراری ارتباط با کاربر ، انجام دهد . در ابتدا ممکن است این موضوع که عملیاتی را قبل از برقراری ارتباط با کاربر می بایست انجام داد ، تا اندازه ای عجیب بنظر رسد ولی احتمالا" برنامه های زیادی را مشاهده نموده اید که در این راستا عملیات مشابهی را انجام می دهند. مثلا" ، در زمان استفاده از برنامه هائی نظیر Word ، Excel و یا برنامه های مشابه دیگر ، با چنین مواردی برخورد نموده ایم . مثلا" با انتخاب گزینه منو File ، می توان لیستی از فایل هائی را که با آنها کار کرده ایم در بخش انتهائی منوفوق ، مشاهده کرد. ( مشاهده آخرین فایل های استفاده شده در یک برنامه خاص ، با استفاده از جادو! میسر نشده است ) . برنامه مورد نظر شاید ، لیست فایل های اخیر را از دیسک خوانده و آنها را به لیست مربوطه در منوی File ، اضافه کرده باشد . با توجه به اینکه لیست فایل های فوق ، می بایست قبل از اینکه برنامه هر چیز دیگر را برای کاربر نمایش دهد ، خوانده و نمایش داده شوند ، می توان انجام عملیات فوق را نمونه ای از مرحله مقداردهی اولیه، در نظر گرفت.یکی دیگر از عملیات متداول که به این مرحله مرتبط می باشد ، خواندن فایل های Setup است . چنین فایل هائی ممکن است حاوی اطلاعاتی در رابطه با نام مسیرهائی باشند که بانک ها ی اطلاعاتی خاصی و یا فایل های ذخیره شده دیگری را بر روی دیسک را مشخص می نمایند . با توجه به نوع برنامه ای که اجراء می گردد ، فایل های Setup می توانند شامل اطلاعاتی در رابطه با فونت های نمایش ، نام و محل چاپگر ، رنگ های زمینه و رویه ، وضوح تصویر صفحه نمایشگر و اطلاعات مشابهی دیگر باشند . سایر برنامه ها ممکن است مستلزم خواندن اطلاعاتی در رابطه با اتصالات شبکه ، مجوزهای امنیتی و دستیابی به اینترنت ، رمزهای عبور و سایر اطلاعات حساس دیگر باشند . در چنین مواردی فایل های Setup دارای نقشی مهم خواهند بود.
لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 30 صفحه
قسمتی از متن .doc :
آموزش الگوریتم
تعریف الگوریتم به مجموعه ای از دستورالعمل ها که با زبان دقیق و قابل فهم به همراه جزییات لازم و کافی به گونه ای اجرا(انجام) شود که در نهایت هدف خاصی دنبال شود در یک الگوریتم موارد زیر باید مد نظر قرار گیرد1-هر الگوریتم باید دارای شروع و پایان باشد.2-استفاده از زبان ساده ، دقیق و قابل فهم در الگوریتم3-استفاده از جزییات کافی4-ترتیب اجرا(انجام) دستور العمل ها5-استفاده از حداقل دستورالعمل ها6-آگاهی از حداقل امکانات مجری الگوریتم7-تعمیم پذیری8- هر الگورتیم باید داری فعل باشد و مرجع آن نیز کاملا مشخص باشد.(فاعل افعال باید کاملا معلوم باشد). تذکر : منظور از زبان دقیق در یک الگوریتم یعنی اینکه هر کاربر در انجام دستورالعمل ها یک برداشت یکسان داشته باشد.تذکر 2 : حداقل توانایی های مجری الگوریتم های زیر شناخت اعداد ، توانایی انجام چهار عمل اصلی در ریاضی و مقایسه اعداد از نظر بزرگتر و کوچکتری است .مثال 0 : الگوریتم تلفن زدن1-شروع2-برداشتن گوشی3-انداختن سکه 50 ریالی4-گرفتن شماره5-مکالمه 6-گذاشتن گوشی7-پایانمثال 1 : الگوریتمی بنویسید که اعداد کوچکتر از 5 را چاپ نماید.1-شروع2-چاپ کن اعداد 1و2و3و43-پایانمثال 2 : الگوریتمی بنویسید که اعداد بین 10 و 20 را چاپ نماید.1-شروع2-چاپ کن اعداد 11و12و13و14و15و16و17و18و193-پایانمثال 3 : الگوریتمی بنویسید که یک عدد را از ورودی بگیرد و سپس آنرا چاپ نماید.روش اول :1-شروع2-دریافت کن عدد مورد نظر را3-چاپ کن عدد فوق را4-پایانمثال 4 :الگوریتمی بنویسید که دو عدد را از ورودی دریافت نموده ،حاصل جمع آنها را به عنوان نتیجه چاپ نماید.1-شروع2-دو عدد را از ورودی دریافت نموده ، در متغیرهای A,B قرار بدهC= A + B -3 -4چاپ کن C را -5پایانمثال 5 :الگوریتمی بنویسید که شعاع یک دایره را از ورودی بگیرد و محیط دایره مورد نظر را چاپ نماید. -1 شروع -2شعاع دایره را دریافت نموده ، در ظرفی بنام R ذخیره کن R -3را دو برابر کن و در عدد 3.14 ضرب کن (فرمول محاسبه محیط دایره( -4نتیجه حاصل از عمل مرحله 3 را در ظرفی بنام M قرار بده. -5محتویات M را چاپ کن -6پایانمثال 6:الگوریتمی بنویسید که طول و عرض یک مستطیل را از ورودی بگیرد و محیط و مساحت آنرا چاپ نماید. -1شروع -2عددی را به عنوان طول مستطیل دریافت کن و در ظرف T قرار بده -3عددی را به عنوان عرض مستطیل دریافت کن و در ظرف A قرار بده -4محتویات ظرف T را در ظرف A ضرب کن نتیجه را در ظرف Mo قرار بده. -5محتویات ظرف Mo را چاپ کن -6محتویات ظرف T را با محتویات ظرف A جمع کن و نتیجه را در ظرف S قرار بده -7محتویات ظرف S را دو برابر کن و در ظرف Ma قرار بده -8محتویات ظرف Ma را چاپ کن -9پایانمثال 7 :الگوریتمی بنویسید که عددی را از ورودی بگیرد و اگر عدد دریافت شده مثبت بود پیغام "Mosbat" در غیر اینصورت پیغام "Manfi" را چاپ نماید. -1شروع -2عددی را از ورودی بگیر و در ظرف N قرار بده -3اگر N > 0 بود آنگاه چاپ کن پیغام "Mosbat" در غیر اینصورت چاپ کن پیغام "Manfi" را -4پایانمثال 8:الگوریتمی بنویسید که عددی را از ورودی دریافت نماید اگر عدد دریافت شده زوج بود پیغام "Zoj" در غیر اینصورت پیغام "ّFard" را چاپ نماید. -1شروع -2عددی را از ورودی دریافت نموده ، در ظرفی بنام N قرار بده -3اگر باقی مانده تقسیم عدد بر 2 صفر بود چاپ کن "Zoj" در غیر اینصورت چاپ کن "Fard" -4پایاننکته : همانطور که در الگوریتم های بالا دیده می شود هر الگوریتم از 3 قسمت اساسی تشکیل شده است که بسته به نوع الگوریتم ممکن است یک یا دو قسمت از این سه قسمت را نداشته باشد این سه قسمت عبارتند از الف)ورودی های الگوریتمب)عملیات قابل انجام در الگوریتم(عملیات مورد نظر(ج)خروجی های الگوریتممثلا:
مثال 1 ورودی ندارد عملیاتی هم ندارد و فقط الگوریتم کافی است که اعداد مورد نظر را چاپ نماید.یعنی فقط خروجی دارد.در مثال 3 الگوریتم فقط دارای ورودی و خروجی است و سیستم عملیات خاصی که کاربر آن را معین کرده باشد انجام نمی دهد.در مثال 4 الگوریتم هر سه قسمت را دارا می باشد یعنی هم ورودی ، هم خروجی و هم عملیات خاص مورد نظر کاربر (یعنی جمع دو عدد را انجام می دهد(با توجه به موارد فوق گاهی اوقات ممکن است در یک الگوریتم یکی از سه قسمت فوق خود دارای چند مرحله باشد اما به هر حال قالب کلی همان سه قسمت فوق است اینک به ذکر الگوریتم هایی می پردازیم که یک قسمت ممکن است چند مرحله داشته باشد.
مثال 9 :الگوریتمی بنویسید که اعداد 1 تا 10 را بر روی صفحه نمایش چاپ کند. -1شروع ( I=1 ) -2در اینگونه الگوریتم ها به ظرف I شمارنده یا Counter می گویند -3چاپ کن I راI = I + 1 -4 -5اگر محتوای ظرف I کوچکتر یا مساوی 10 بود آنگاه برو به مرحله 3 -6پایاندر مرحله 2 از مثال فوق I مساوی یک قرار داده شده است باید به این نکته توجه داشته باشیم که این یک مساوی ریاضی به معنای معادل بودن نیست بلکه به معنای این است که مقدار یک را در ظرفی بنام I قرار بده .ضمنا از این به بعد به جای کلمه ظرف در کامپیوتر متغیر به کار می بریم که خود یک مفهوم است و عبارتست از :تعریف متغیر :هر متغیر یک خانه از حافظه اصلی(Ram) می باشد که در هر لحظه می تواند مقادیر مختلفی را به خود اختصاص دهد تذکر : زمانی که عدد یا داده جدیدی وارد یک متغیر گردد مقدار قبلی آن از بین می رود.تذکر :زمانی که مقدار یک متغیر را بخوانیم یا محتوای آن را چاپ نماییم مقدار متغیر تغییر نخواهد نمود.مثال برای درک بهتر متغیر :فرض کنیم دو متغیر با نامهای A,B با مقادیر 2و 4 داریم حال حاصل عبارت های زیر را ملاحظه نمایید.در هر عبارت نتیجه چه خواهد بود(الفA = A +1 ( A= 3 (بB = B + 3 ( B = 7(جB = A +1 ( A= 3 , B =4(دA = B +3 A = 7 , B=4(A= 7, B = 4 , C= 11((یC = A + B مثال 10 :الگوریتمی بنویسید که اعداد 10 تا 1 را بر روی صفحه نمایش چاپ کند.1-شروع2- 0I=1 3-چاپ کن I را4-یکی از I کم کن و نتیجه را دوباره در ظرف I قرار بده (یعنی ( I=I-1 5-اگر محتویات ظرف I بزرگتر یا مساوی 1 بود آنگاه برو به مرحله 36-پایانمثال 10: مثال11: الگوریتمی بنویسید که کلیه مضارب 2 که کوچکتر از 100 هستند را چاپ کند.مثال 12 : الگوریتمی بنویسید که کلیه مقسوم علیه های عدد 30 را چاپ کند(مقسوم علیه عددی است که عدد مورد نظر بر آن بخش پذیر است مثلا 5 مقسوم علیه 30 می باشد(مثال 12 : الگوریتمی بنویسید که کلیه مقسوم علیه های هر عدد را چاپ کند.مثال 13 : الگوریتمی بنویسید که یک عدد را دریافت کند و اول یا مرکب بودن آنرا معین نماید .(عدد اول عددی است که غیر از خودش و یک مقسوم علیه دیگری نداشته باشد.مثال 14: الگوریتمی بنویسید که کلیه مقسوم علیه های اول هر عدد را چاپ کند(مقسوم علیه عددی است که عدد مورد نظر بر آن بخش پذیر است مثلا 5 مقسوم علیه 30 می باشد(مثال 15: الگوریتمی بنویسید که بزرگترین مقسوم علیه مشترک دو عدد دلخواه را چاپ کند.(مثلا 6 بزرگترین مقسوم علیه مشترک دو عدد 18و 12 می باشد(مثال 16 : الگوریتمی بنویسید که محتویات دو متغیر دلخواه را با هم عوض کند.مثال 17 : الگوریتمی بنویسید که کوچکترین مضرب مشترک (کوچکترین مخرج مشترک) را محاسبه و چاپ کند(مثلا کوچکترین مضرب مشترک دو عدد 18و 12 عدد 36 می باشد(مثال 18: الگوریتمی بنویسید که سه مقدار از ورودی خوانده آنها را به طور نزولی در خروجی چاپ کند.مثال 19- الگوریتمی بنویسید که عددی را خوانده قدر مطلق آن را چاپ کند.مثال 20: الگورتیمی بنوسید که معادله درجه دوم AX2+BX+c=0 را حل کند .مثال 21: الگوریتمی بنویسید که تعداد N عدد را از ورودی خوانده تعداد اعداد منفی – صفر و مثبت را مشخص کند. مثال 22: الگوریتمی بنویسید که تعدادی عددرا از ورودی خوانده بزرگترین عدد را پیدا و چاپ کند.مثال 23: الگوریتمی بنویسید که فاکتوریل هر عدد دلخواه را محاسبه و چاپ کند.
navidba
25 آذر 1386, 16:17
تعریف فلوچارت(نمودار گردشی(در یک فلوچارت به جای هر یک از دستورالعمل های یک الگوریتم یک نماد (یا شکل) قرار می دهیم به یک فلوچارت الگوریتم تصویری نیز می گویند.نمادها و اشکال مورد استفاده در یک فلوچارت1-نماد شروع2-نماد پایان3-نماد دریافت یک داده1-3: نماد دریافت یک داده از طریق صفحه کلید4-نماد چاپ یک داده 1-4: نماد چاپ یک داده بر روی چاپگر2-4 :نماد چاپ یک داده بر روی صفحه نمایش
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 35
«کارایی الگوریتم مسیریابی شکسته شده برای شبکه های چندبخشی سه طبقه»
چکیده:
این مقاله شبکه های سویچنگ سه طبقه clos را از نظر احتمال bloking برای ترافیک تصادفی در ارتباطات چند بخشی بررسی می کند حتی چنانچه سویچ های ورودی توانایی چند بخشی را نداشته باشند و نیاز داشته باشند به تعداد زیاد وغیرمجازی از سویچهای میانی برای فراهم کردن این مسیرهایی که پلاک نشوند مطابق درخواستها مدل احتمالی این دید را به ما میدهد که احتمال پلاک شدن در آن بسیار کاهش یافته و تقریبا به صفر می رسد در ضمن اینکه تعداد سویچهای میانی بسیار کمتر از تعداد تئوریک آن است.
در این مقاله یک الگوریتم مسیریابی شکسته شده را فعال پلاک شدن در آن معدنی شده است برای اینکه قابلیت مسیریابی با fanout بالا را برآورده کند. ما همچنین مدل تحلیلی را بوسیله شبه سازی کردن شبکه بر روی
فهرست اصطلاحات: چند بخشی، ارزیابی عملکرد، مدل احتمالی، شبکه های سویچینگ
معدنی:
شبکه های clos بخاطر انعطاف پذیری وساده بود نشان بطور گسترده در شبکه های تلفن، ارتباطات Data و سیستمهای محاسبه ای موازی بکار برده می شوند. کارایی خیلی از برنامه های کاربردی بوسیله یک عمل چند بخشی موثر که پیغامی را به چند دریافت کننده بصورت همزمان می فرستد بهتر می شود. به عنوان مثال در سیستمهای چند پردازنده ای یک متغیر همزمان سازی قبل از آنکه پرازنده ا بکارشان ادامه دهند باید فرستاده شود. همانطوریکه برنامه های کاربردی به خدمات چند بخشی موثر که توسعه پیدا کرده نیاز دارند در طی چند سال اخیر حتی در شبکه های با دامنه عمومی طراحی سیستمهای سویچینگ که بطور موثر بادرخواستهای چندبخشی سروکار دارد نیز اهمیت پیدا کرده است.
تلاشهای زیادی برای سازگار کردن شبکه های clos (که در ابتدا برای ارتباطات نقطه به نقطه توسعه پیدا کرده بودند) برای آنکه با ارتباطات چند بخشی وفق پیدا کنند انجام شده است.شبکه clos چند بخشی با قابلیت پلاک نشدن هنوز بسیار گران در نظر گرفته میشوند برای همین کارایی آن را روی پیکربندی های کوچکتر از معمول در نظر نمی گیرند.
یک شبکه clos سه طبقه بوسیله نشان داده می شود که سویچهای طبقه ورودی m سویچهای لایه میانی و سویچهای لایه خروجی است، هر کدام از سویچهای لایه ورودی تاپورت ورودی خارجی دارند و به هر کدام از سویچهای لایه میانی اتصال دارد بنابراین ارتباط بین طبقه ورودی وطبقه میانی وجود دارد . هر سویچ طبقه خروجی عدد پورت خروجی دارد و به هر کدام از سویچها یک درخواست اتصال نشان داده میشود به شکل c(x,y) که در آن x یک سویچ ورودی و را یک مجموعه مقصد از سویچهای خروجی است.
چندی /1 درجه fanout درخواست نامیده می شود. به یک مجموعه از درخواستهای اتصال سازگار گفته می شود اگر جمع تصادفات هر کدام از سویچهای ورودی از بزرگتر نباشد وجمع تصادفات کدام از سویچهای خروجی بزرگتر از نباشد.
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 35
الگوریتم(پایگاه داده ها)
چکیده : در این گزارش ما به بررسی ویژگی های الگوریتمهای کنترل همروندی توزیعی که بر پایه مکانیزم قفل دو مرحله ای(2 Phase Locking) ایجاد شده اند خواهیم پرداخت. محور اصلی این بررسی بر مبنای تجزیه مساله کنترل همروندی به دو حالت read-wirte و write-write میباشد. در این مقال، تعدادی از تکنیکهای همزمان سازی برای حل هر یک از قسمتهای مساله بیان شده و سپس این تکنیکها برای حل کلی مساله با یکدیگر ترکیب میشوند.
در این گزارش بر روی درستی و ساختار الگوریتمها متمرکز خواهیم شد. در این راستا برای ساختار پایگاه داده توزیعی یک سطحی از انتزاع را در نظر میگیریم تا مساله تا حد ممکن ساده سازی شود.
1. مقدمه : کنترل همروندی فرآیندی است که طی آن بین دسترسی های همزمان به یک پایگاه داده در یک سیستم مدیریت پایگاه داده چند کاربره هماهنگی بوجود میآید. کنترل همروندی به کاربران اجازه میدهد تا در یک حالت چند برنامگی با سیستم تعامل داشته باشند در حالیکه رفتار سیستم از دیدگاه کاربر به نحو خواهد بود که کاربر تصور میکند در یک محیط تک برنامه در حال فعالیت است. سخت ترین حالت در این سیستم مقابله با بروز آوری های آزار دهنده ای است که یک کاربر هنگام استخراج داده توسط کاربر دیگر انجام میدهد. به دو دلیل ذیل کنترل همروندی در پایگاه داده های توزیعی از اهمیت بالایی برخوردار است:
کاربراان ممکن است به داده هایی که در کامپیوترهای مختلف در سیستم قرار دارند دسترسی پیدا کنند.
یک مکانیزم کنترل همروندی در یک کامپیوتر از وضعیت دسترسی در سایر کامپیوترها اطلاعی ندارد.
مساله کنترل همروندی در چندین سال قبل کاملا مورد بررسی قرار گفته است و در خصوص پایگاهدادههای متمرکز کاملا شناخته شده است. در خصوص این مسال در پایگاه داده توزیعی با توجه به اینکه مساله در حوزه مساله توزیعی قرار میگیرد بصورت مداوم راهکارهای بهبود مختلف عرضه میشود. یک تئوری ریاضی وسیع برای تحلیل این مساله ارائه شده و یک راهکار قفل دو مرحله ای به عنوان راه حل استاندارد در این خصوص ارائه شده است. بیش از 20 الگوریتم کنترل همروندی توزیعی ارائه شده است که بسیاری از آنها پیاده سازی شده و در حال استفاده میباشند.این الگوریتمها معمولا پیچیده هستند و اثبات درستی آنها بسیار سخت میباشد. یکی از دلایل اینکه این پیچیدگی وجود دارد این است که آنها در اصطلاحات مختلف بیان میشوند و بیان های مختلفی برای آنها وجود دارد. یکی از دلایل اینکه این پیچدگی وجود دارد این است که مساله از زیر قسمتهای مختلف تشکیل شده است و برای هر یک از این زیر قسمتها یک زیر الگوریتم ارائه میشود. بهترین راه برای فائق آمدن بر این پیچدگی این است که زیر مساله ها و الگوریتمهای ارائه شده برای هر یک را در ی.ک سطح از انتزاع نگاه داریم.
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 25
9) الگوریتم های ژنتیکی به کاربره شده در مدیریت ترافیک هوایی
افزایش ترافیک هوایی، از زمان شروع تجارت هوایی، باعث مشکل اشباع در فرودگاهها، یا مکانهای فضایی شده است. در حالی که هواپیماها ارتقاء می یابند و اتوماتیک تر می شوند. اما هنوز کنترل ترافیکی بر پایه تجربیات انسان است. مطالعه حاضر ، دو مشکل مدیریت ترافیک هوایی (ATM) را به جزء بیان می کند، که برای آنها راه حل های بر پایه الگوریتم ژنتیکی وجود دارد. اولین کاربرددر رابطه با مشکل enroute است و دومین کاربرد در مورد مشکلات مدیریت ترافیکی در سکوهای فرودگاهها است.
9.1) راه حل درگیریهای Enroute = کنترل ترافیک هوایی (ATC) می تواند توسط یک سرس از فیلترها نشان داده شود، جایی که هر فیلتر یک ؟ خاص دارد و افق های خاص محیطی و موقتی را اداره می کند. 5 سطح (لِوِل) قابل تشخیص است. در دوره طولانی (بشتر از 6 ماه) ترافیک در یک روش میکروسکوپی می تواند برنامه ریزی شود. برای مثال مردم با یک نمودار ترافیکی روبرو هستند که اندازه های کمیته ، که برنامه های ساعتی و موافقت با ارتش را مورد توجه قرار داده است، به کاربرده می شود برای فرهنگ هواپیمایی در زمانهای اوج یعنی بعد ظهر جمعه.
در دوره کوتاهتر ، معمولاً در مورد تنظیمات قبل ، صحت می شود. این مورد شامل برنامه ریزی کردن روز ترافیک ، یک یا دو روز قبل تر می شود. در این مرحله ، اشخاص ایدة مشخصی درباره بیشتر برنامه ی پرواز و ظرفیت کنترل هر مرکز دارند. حداکثر جریان هواپیما که می تواند یک قطر را سوراخ کند. ظرفیت قطر نامیده می شود. این عمل توسط CFMU3 انجام می شود. ترافیک میان آتلانتیک برای مثال در این مرحله مورد توجه قرار می گیرد. راههای هوایی، تنظیم ساعت های پرواز و حالت هوا مورد توجه قرار می گیرد. به طور کل این شغل توسط FMP4 در هر مرکز صورت می گیرد. آخرین فیلتر ، فیلتر تاکتیکال است که با کنترل داخل یک قطر بستگی دارد. زمان متوسطی که یک هواپیما در یک بخش صرف می کند حدود 15 دقیقه است. اینجا میزان رویت کنترل کننده کمی بالاتر از میزان دریافت طرحهای پرواز است چند دقیقه قبل از ورود هواپیما به بخش. کنترل کننده وظیفه چک کردن، حل اختلافات و همپایه بودن با بخش های همسایه را تضمین می کند. در این حالت تعیین تعریف برخورد مطلوب است. دو هواپیما با هم برخورد دارندوقتی که فاصله جدایی افقی بین آنها کمتر 5 مایل باشد و تفاوت انها در ارتفاع کمتر از 1000 فیت باشد. روش هایی که توسط کنترل کننده برای حل این برخورد به کار می رود بر پایه مسائل زیر است.
بر روی تجارب قبلی و هر دانش خلاقی. وقتی که چند جفت از هواپیماها در اختلاف مشابهی با هم تماس دارند، آنها با ساده کردن مشکلات شروع می کنند که فقط اختلافات ابتدایی را داشته باشند.
برای حل فیلتر اضطراری به نظر نمی رسد که مداخله کند به جز مواردی که سیستم کنترل دچار نقض شده یا اینکه ضعیف شده است. برای کنترل کننده ، آشیانه اطمینان مسیر هر هواپیما را با افق موقت چند دقیقه ایی پیش بینی می کنند. از موقعیت های رادار و الگوریتم های ادامه دار استفاده می کند و یک اخطار را در لحظه برخورد بوجود می آورد. این یک راه حلی را برای برخورد پیشنهاد نمی کند. به طور کل TCAS به نظر می رسد که از چنین تصادفی جلوگیری کند. پیش بینی موقت کمتر از یک دقیقه است (بین 25 تا 40 ثانیه) بنابر این بسیار دیر است برای کنترل کننده مانور هواپیما را، همانطور که تخمین زده شده که نیاز به حداقل زمان 1 تا 2 دقیقه برای آنالیز کردن موقعیت دارد راه حلی را پیدا کنند و آنرا به هواپیماها اطلاع دهند. به طور عمومی TCAS، هواپیمای اطاف را جستجو می کند و به خلبان برای حل برخورد پیشنهاداتی می کند. این فیلتر باید برخورد غیر قابل پیش بینی را حل می کند، برای مثال وقتی که یک هواپیما از سطح پرواز خود بالاتر رفته است یا یک مشکل تکنیکی که به طور قابل توجهی ارتفاع آنرا پایین آورده است. کاربردهای پیشنهاد شده در این بخش با فیلتر تاکتیکال ارتباط دارند: دانستن موقعیت هواپیما در لحظه حاضر و موقعیت بعدی آنها، را بوجود نمی آورد. راه حل برای پایه چندین تصور است. یک هواپیما نمی تواند سرعت خود را تغییر دهد (یا بسیار آرام باید این کار را بکند) مگر در مواقع فرود. نباید اینطور تصور شود که یک هواپیما با سرعت انی پرواز می کند، به غیر مواردی که سطح بندی می شود و هیچ بادی وجود ندارد. به علاوه در طول فرود و بلند شدن ، مسیر آن یک خط صاف نیست. هواپیماها در مسیر چرخش خود در فشار هستند. به طور عمومی خلبانها مانور افقی را به عمودی ترجیح می دهند مگر در هنگام بلند شدن یا نشستن. اگر چه امروزه خلبانهای اتوماتیک قرتمندتر از خلبانهای انسانی هستند (در موقعیت های نرمال پرواز) برای مواقعی که حقیقی به نظر می رسد توجه کردن به این مسیرها که توسط انسانها قابل دسترسی نیست.
خلبان. نامطمئنی بین سرعت فرود آمدن و بلند شدن بسیار زیاد است (بین 10% و 50% سرعت عمودی). در طول مسافرت ، نااطمینانی در سرعت کاهش می یابد. بعد از آن ، نا اطمینانی به همراه گذشت زمان بیشتر نمی شود، همانطور که یک هواپیما، ارتفاع خود را کاملاً خوب نگه داشته است. تقریباً غیر ممکن است که به دنبال راه حل های آنالیتکی برای حل مشکل برخورد باشیم . اما، اصلی ترین مشکل از پیچیدگی مشکل بوجود می آید. بخش اول این فصل ، به معرفی بعضی از توضیحات می پردازد که حل مشکل برخورد برای ما قابل فهم تر می کند و بخش دوم به تاریخچه ایی کوتاه از الگوریتمهای آزمایش شده برای این مشکل و محدودیتهای آن می پردازد. قسمت سوم مدلهای مشکل را به جزء بررسی می کند و پیشرفت الگوریتم ژنیتکی برای حل مشکل در بخش چهارم وجود دارد که با آمارهای ؟ بدست آمده دنبال می شود.
1.1.9) پیچیدگی حل مشکل برخورد= یک برخورد را می توان به صورت زیر توضیح داد:
یک برخورد یعنی برخوردی بین دو هواپیما در طول یک زمان داده شده از مسیر پیش بینی شده، گرفتن نااطمینانیها در مسیر.
کلاسهای معادل مربوطه به عنوان دسته و مجموعه برخورد هواپیما یا مجموعه ایی از اندازه n می تواند شامل شود به برخوردهای قوی n. توجه کردن به فقط هواپیمای افقی ، نشان می دهد که تمام راه حل های قابل قبول شامل 2n(n-1) اجزای مرتبط، تحت این تصور که یک متر مناسب به کاربرده شده که نیاز دارد به اجراهای زیادی از الگوریتم جستجو بنابر این برای مجموعه هواپیمای 6،32768 عضو متصل پیشنهاد می شود. در حقیقت اگر عملکرد هواپیما مورد توجه قرار گیرد، تمام اجزای مرتبط لازم نیست که مورد بررسی قرار گیرد. با آرام کردن محدودیت های جدا کننده، مشکل شبیه یک مشکل جهانی می شود که حداقل شامل بهینه های داخلی می شود مانند اجزای متصل. اضافه کردن بعد عمودی خصوصیت ترکیبی مشکل را کم نمی کند.
2.1.9) وجود مترهای حل کننده:
اولین پروژه اتوماتیک کنترل ترافیک ، آمریکایی بود و در شروع دهه 80 بوجود امد، اما قادر به حل مجموعه سایز 3 یا بیشتر نبود. پروژه اروپایی ARC2000 یک متر از نارساییهای ممتر لوله چهار بعدی را پیشنهاد کرد که مسیر n+1+h هواپیما در محیط n که قبلاً مسیرش محاسبه شده بود. ارتقاء دهد.
این مدلها شکیات را مورد توجه قرار ندادند و قادر نبودند با حجم عظیم ترافیک مواجه شوند. در نهایت پروژه تجربی اروپایی FREER در سال 1995 کامل شد. و پیشنهاد کرد که می تواند برخورد هواپیماها را حل کند. مشکل همپایه بودن بین هواپیماها با به کار بردن قوانین قبلی هدایت می شد ، که مانند استفاده