لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 6
الگوریتم فلوید برای یافتن کوتاه ترین مسیر
یک مشکل متداول در سفره های هوایی هنگامی که پرواز مستقیم وجود نداشته باشد تعیین کوتاه ترین مسیر پرواز از شهری به شهر دیگر است . حال الگوریتمی طراحی می کنیم که این مسئله و مسائل مشابه را حل کند . نخست لازم است نظریه گراف ها را مرور کنیم . شکل یک گراف جهت دار و موضون را نشان می دهد به خاطر دارید که در نمایش تصویری گراف ها دایره نشان گر راس ها و خط میان دو دایره نشان دهنده یال ها هستند . اگر هر یال دارای جهت باشد گراف را گراف جهت دار یا دیاگراف می گویند . هنگام رسم یال ها در این گونه گراف ها از پیکان برای نشان دادن جهت استفاده می کنیم در یک دیاگراف بین دو راس امکان وجود دو یال است که جهت آنها مخالف هم هست. برای مثال درشکل یک یال از v1 به v2 و یکی از v2 به v1 وجود دارد.اگر این یال ها با مقادیری همراه باشند این مقادیر را وزن و گراف حاصل را موزون می خوانند.
در این جا فرض می کنیم که این مقادیر غیر منفی است.گرچه این مقادیر را معولاً وزن می نامند در بسیاری از از کابردها نشانگر فاصله است.بنابراین مسیر را به عنوان فاصله میان راسی تا راس دیگر در نظر می گیرند.در یک گراف جهت دار مسیر مجموعه ای از راس هاست به طوری که از یک راس تا راس دیگر یک یال وجود دارد. مسیری از یک راس به خود آن راس را چرخه می گویند.
اگر مسیری هیچگاه دوبار از یک راس نگذرد مسیر ساده نامیده می شود.توجه کنید که یک مسیر ساده هرگز حاوی زیر مسیری که چرخه ای باشد نیست.طول یک مسیر در گراف موزون حاصل جمع اوزان مسیر است. در یک گراف ناموزون طول مسیر صرفاً عبارت است از تعداد رئوس موجود در آن است.
مسئله ای که کاربردهای فراوان دارد یافتن کوتاهترین مسیر از راسی به رئوس دیگر است. واضح است کوتاهترین مسیر باید مسیری ساده باشد. در شکل سه مسیر ساده از v1 به v2 وجود دارد یعنی [v1,v2,v3] [v1,v4,v3] [v1,v2,v4,v3] .چون
Length[v1,v2,v3]=1+3=4
Length[v1,v4,v3]=1+2=3
Length[v1,v2,v4,v3]=1+2+2=5
[v1,v4,v3]کوتاهترین مسیر ازv1 به v3 است.همانطور که پیش از این گفته شد یک کاربرد متداول کوتاهترین مسیر تعیین کوتاهترین مسیر میان دو شهر است.
مسئله کوتاهترین یک مسئله بهینه سازی است. برای هر نمونه از مسئله بهینه سازی ممکن است بیش از یک راه حل وجود داشته باشد.هریک از راه حل های پیشنهادی دارای مقداری مرتبط با آن است و حل نمونه آن حلی است که دارای مقدار بهینه است.مقدار بهینه حداقل است یا حد اکثر در مورد مسئله کوتاهترین مسیر یک حل پیشنهادی مسیری از یک راس به راس دیگر بود .مقدار آن طول مسیر و مقدار بهینه حداقل طول است.
چون ممکن است بیش از یک کوتاهترین مسیر از راسی به راس دیگر وجود داشته باشد مسئله ما یافتن هر یک از این کوتاهترین مسیر هاست.یک الگوریتم واضح برای این مسئله تعیین طول همه مسیرها برای هر راس از ان راس به هریک از رئوس دیگر است.اما زمان این الگوریتم بدتر از زمان نمایی است. برای مثال فرض کنید از هر راس به همه رئوس دیگر یک یال وجود دارد .در این صورت زیر مجموعه ای از همه مسیر ها عبارت است از مجموعه ای خواهد بود که از راس نخست شروع می شود و به راسی دیگر ختم می شود و از همه رئوس دیگر عبور می کنند.چون راس دوم در چنین مسیری می تواند هریک از n-2 راس باشد راس سوم در چنین مسیری می تواند هر یک از n-3 راس باشد...
و راس دومی به آخری روی چنین مسیری فقط می تواند یک راس باشد.تعداد کل مسیرها از یک راس که از همه رئوس دیگر بگذرد عبارت است از :
(n-2)(n-3)…1=(n-2)!
که بد تر از حالت نمایی است. در بسیاری از مسائل بهینه سازی با همین وضعیت مواجه هستیم . یعنی الگوریتمی که همه حالت های ممکن را در نظر بگیرد زمان آن نمایی یا بدتر است.
با استفاده از برنامه نویسی پویا یک الگوریتم زمانی درجه سوم برای مسئله کوتاهترین مسیر ایجاد می کنیم. نخست الگوریتمی طرح می کنیم که فقط طول کوتاهترین مسیرها را تعیین کند. سپس آن را طوری اصلاح می کنیم که کوتاهترین مسیر را نیز ایجاد کند .یک گراف موزون حاوی n راس را با یک آرایه w نشان می دهند که در آن
اگر یالی بین , باشد وزن یال
اگر یالی بین , نباشد w[i][j]=
اگر i=j باشد 0
چون راس vj وقتی مجاور راس vi خوانده می شود که یالی بین vj و vi باشد به این آرایه نمایش ماتریس همجواری یک گراف می گویند .اگر بتوانیم راهی برای محاسبه مقادیر d از مقادیر w بیابیم الگوریتمی برای مسئله کوتاهترین مسیر خواهیم داشت این هدف با ایجاد n+1 آرایه قابل حصول است که وداریم : =طول کوتاهترین مسیر از VI به VJ فقط با استفاده از رئوس موجود در مجموعه {V1,V2,….VK} به عنوان رئوس واسطه پیش از انکه نشان دهیم چرا به این ترتیب قادر به محاسبه D از روی W هستیم معنی عناصر این آرایه ها را توضیح می دهیم .
مثال چند مقدار از را به عنوان مثال برای گراف شکل حل می کنیم.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری که از v2 آغاز می شود نمی تواند از v2 بگذرد
برای این گراف ها اینها مساویند زیرا با گنجاندن v3 مسیر جدیدی از v2 به v5 بدست نمی آید
.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری به v5 منتهی می شود نمی تواند از v5 بگذرد.
آخرین مقدار محاسبه شده طول کوتاهترین مسیر از V2 به V5 است که مجاز به عبور از هر یک از رئوس دیگر است .یعنی طول کوتاهترین مسیر است.
بنابراین برای تعیین D از روی W فقط باید راهی برای بدست آوردن از روی بیابیم.
مراحل استفاده از برنام نویسی پویا برای رسیدن به این هدف عبارت است از :
ارائه یک ویژگی (فرایند بازگشتی که با آن بتوان را از روی محاسبه کرد.
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 6
الگوریتم فلوید برای یافتن کوتاه ترین مسیر
یک مشکل متداول در سفره های هوایی هنگامی که پرواز مستقیم وجود نداشته باشد تعیین کوتاه ترین مسیر پرواز از شهری به شهر دیگر است . حال الگوریتمی طراحی می کنیم که این مسئله و مسائل مشابه را حل کند . نخست لازم است نظریه گراف ها را مرور کنیم . شکل یک گراف جهت دار و موضون را نشان می دهد به خاطر دارید که در نمایش تصویری گراف ها دایره نشان گر راس ها و خط میان دو دایره نشان دهنده یال ها هستند . اگر هر یال دارای جهت باشد گراف را گراف جهت دار یا دیاگراف می گویند . هنگام رسم یال ها در این گونه گراف ها از پیکان برای نشان دادن جهت استفاده می کنیم در یک دیاگراف بین دو راس امکان وجود دو یال است که جهت آنها مخالف هم هست. برای مثال درشکل یک یال از v1 به v2 و یکی از v2 به v1 وجود دارد.اگر این یال ها با مقادیری همراه باشند این مقادیر را وزن و گراف حاصل را موزون می خوانند.
در این جا فرض می کنیم که این مقادیر غیر منفی است.گرچه این مقادیر را معولاً وزن می نامند در بسیاری از از کابردها نشانگر فاصله است.بنابراین مسیر را به عنوان فاصله میان راسی تا راس دیگر در نظر می گیرند.در یک گراف جهت دار مسیر مجموعه ای از راس هاست به طوری که از یک راس تا راس دیگر یک یال وجود دارد. مسیری از یک راس به خود آن راس را چرخه می گویند.
اگر مسیری هیچگاه دوبار از یک راس نگذرد مسیر ساده نامیده می شود.توجه کنید که یک مسیر ساده هرگز حاوی زیر مسیری که چرخه ای باشد نیست.طول یک مسیر در گراف موزون حاصل جمع اوزان مسیر است. در یک گراف ناموزون طول مسیر صرفاً عبارت است از تعداد رئوس موجود در آن است.
مسئله ای که کاربردهای فراوان دارد یافتن کوتاهترین مسیر از راسی به رئوس دیگر است. واضح است کوتاهترین مسیر باید مسیری ساده باشد. در شکل سه مسیر ساده از v1 به v2 وجود دارد یعنی [v1,v2,v3] [v1,v4,v3] [v1,v2,v4,v3] .چون
Length[v1,v2,v3]=1+3=4
Length[v1,v4,v3]=1+2=3
Length[v1,v2,v4,v3]=1+2+2=5
[v1,v4,v3]کوتاهترین مسیر ازv1 به v3 است.همانطور که پیش از این گفته شد یک کاربرد متداول کوتاهترین مسیر تعیین کوتاهترین مسیر میان دو شهر است.
مسئله کوتاهترین یک مسئله بهینه سازی است. برای هر نمونه از مسئله بهینه سازی ممکن است بیش از یک راه حل وجود داشته باشد.هریک از راه حل های پیشنهادی دارای مقداری مرتبط با آن است و حل نمونه آن حلی است که دارای مقدار بهینه است.مقدار بهینه حداقل است یا حد اکثر در مورد مسئله کوتاهترین مسیر یک حل پیشنهادی مسیری از یک راس به راس دیگر بود .مقدار آن طول مسیر و مقدار بهینه حداقل طول است.
چون ممکن است بیش از یک کوتاهترین مسیر از راسی به راس دیگر وجود داشته باشد مسئله ما یافتن هر یک از این کوتاهترین مسیر هاست.یک الگوریتم واضح برای این مسئله تعیین طول همه مسیرها برای هر راس از ان راس به هریک از رئوس دیگر است.اما زمان این الگوریتم بدتر از زمان نمایی است. برای مثال فرض کنید از هر راس به همه رئوس دیگر یک یال وجود دارد .در این صورت زیر مجموعه ای از همه مسیر ها عبارت است از مجموعه ای خواهد بود که از راس نخست شروع می شود و به راسی دیگر ختم می شود و از همه رئوس دیگر عبور می کنند.چون راس دوم در چنین مسیری می تواند هریک از n-2 راس باشد راس سوم در چنین مسیری می تواند هر یک از n-3 راس باشد...
و راس دومی به آخری روی چنین مسیری فقط می تواند یک راس باشد.تعداد کل مسیرها از یک راس که از همه رئوس دیگر بگذرد عبارت است از :
(n-2)(n-3)…1=(n-2)!
که بد تر از حالت نمایی است. در بسیاری از مسائل بهینه سازی با همین وضعیت مواجه هستیم . یعنی الگوریتمی که همه حالت های ممکن را در نظر بگیرد زمان آن نمایی یا بدتر است.
با استفاده از برنامه نویسی پویا یک الگوریتم زمانی درجه سوم برای مسئله کوتاهترین مسیر ایجاد می کنیم. نخست الگوریتمی طرح می کنیم که فقط طول کوتاهترین مسیرها را تعیین کند. سپس آن را طوری اصلاح می کنیم که کوتاهترین مسیر را نیز ایجاد کند .یک گراف موزون حاوی n راس را با یک آرایه w نشان می دهند که در آن
اگر یالی بین , باشد وزن یال
اگر یالی بین , نباشد w[i][j]=
اگر i=j باشد 0
چون راس vj وقتی مجاور راس vi خوانده می شود که یالی بین vj و vi باشد به این آرایه نمایش ماتریس همجواری یک گراف می گویند .اگر بتوانیم راهی برای محاسبه مقادیر d از مقادیر w بیابیم الگوریتمی برای مسئله کوتاهترین مسیر خواهیم داشت این هدف با ایجاد n+1 آرایه قابل حصول است که وداریم : =طول کوتاهترین مسیر از VI به VJ فقط با استفاده از رئوس موجود در مجموعه {V1,V2,….VK} به عنوان رئوس واسطه پیش از انکه نشان دهیم چرا به این ترتیب قادر به محاسبه D از روی W هستیم معنی عناصر این آرایه ها را توضیح می دهیم .
مثال چند مقدار از را به عنوان مثال برای گراف شکل حل می کنیم.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری که از v2 آغاز می شود نمی تواند از v2 بگذرد
برای این گراف ها اینها مساویند زیرا با گنجاندن v3 مسیر جدیدی از v2 به v5 بدست نمی آید
.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری به v5 منتهی می شود نمی تواند از v5 بگذرد.
آخرین مقدار محاسبه شده طول کوتاهترین مسیر از V2 به V5 است که مجاز به عبور از هر یک از رئوس دیگر است .یعنی طول کوتاهترین مسیر است.
بنابراین برای تعیین D از روی W فقط باید راهی برای بدست آوردن از روی بیابیم.
مراحل استفاده از برنام نویسی پویا برای رسیدن به این هدف عبارت است از :
ارائه یک ویژگی (فرایند بازگشتی که با آن بتوان را از روی محاسبه کرد.
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 6
الگوریتم فلوید برای یافتن کوتاه ترین مسیر
یک مشکل متداول در سفره های هوایی هنگامی که پرواز مستقیم وجود نداشته باشد تعیین کوتاه ترین مسیر پرواز از شهری به شهر دیگر است . حال الگوریتمی طراحی می کنیم که این مسئله و مسائل مشابه را حل کند . نخست لازم است نظریه گراف ها را مرور کنیم . شکل یک گراف جهت دار و موضون را نشان می دهد به خاطر دارید که در نمایش تصویری گراف ها دایره نشان گر راس ها و خط میان دو دایره نشان دهنده یال ها هستند . اگر هر یال دارای جهت باشد گراف را گراف جهت دار یا دیاگراف می گویند . هنگام رسم یال ها در این گونه گراف ها از پیکان برای نشان دادن جهت استفاده می کنیم در یک دیاگراف بین دو راس امکان وجود دو یال است که جهت آنها مخالف هم هست. برای مثال درشکل یک یال از v1 به v2 و یکی از v2 به v1 وجود دارد.اگر این یال ها با مقادیری همراه باشند این مقادیر را وزن و گراف حاصل را موزون می خوانند.
در این جا فرض می کنیم که این مقادیر غیر منفی است.گرچه این مقادیر را معولاً وزن می نامند در بسیاری از از کابردها نشانگر فاصله است.بنابراین مسیر را به عنوان فاصله میان راسی تا راس دیگر در نظر می گیرند.در یک گراف جهت دار مسیر مجموعه ای از راس هاست به طوری که از یک راس تا راس دیگر یک یال وجود دارد. مسیری از یک راس به خود آن راس را چرخه می گویند.
اگر مسیری هیچگاه دوبار از یک راس نگذرد مسیر ساده نامیده می شود.توجه کنید که یک مسیر ساده هرگز حاوی زیر مسیری که چرخه ای باشد نیست.طول یک مسیر در گراف موزون حاصل جمع اوزان مسیر است. در یک گراف ناموزون طول مسیر صرفاً عبارت است از تعداد رئوس موجود در آن است.
مسئله ای که کاربردهای فراوان دارد یافتن کوتاهترین مسیر از راسی به رئوس دیگر است. واضح است کوتاهترین مسیر باید مسیری ساده باشد. در شکل سه مسیر ساده از v1 به v2 وجود دارد یعنی [v1,v2,v3] [v1,v4,v3] [v1,v2,v4,v3] .چون
Length[v1,v2,v3]=1+3=4
Length[v1,v4,v3]=1+2=3
Length[v1,v2,v4,v3]=1+2+2=5
[v1,v4,v3]کوتاهترین مسیر ازv1 به v3 است.همانطور که پیش از این گفته شد یک کاربرد متداول کوتاهترین مسیر تعیین کوتاهترین مسیر میان دو شهر است.
مسئله کوتاهترین یک مسئله بهینه سازی است. برای هر نمونه از مسئله بهینه سازی ممکن است بیش از یک راه حل وجود داشته باشد.هریک از راه حل های پیشنهادی دارای مقداری مرتبط با آن است و حل نمونه آن حلی است که دارای مقدار بهینه است.مقدار بهینه حداقل است یا حد اکثر در مورد مسئله کوتاهترین مسیر یک حل پیشنهادی مسیری از یک راس به راس دیگر بود .مقدار آن طول مسیر و مقدار بهینه حداقل طول است.
چون ممکن است بیش از یک کوتاهترین مسیر از راسی به راس دیگر وجود داشته باشد مسئله ما یافتن هر یک از این کوتاهترین مسیر هاست.یک الگوریتم واضح برای این مسئله تعیین طول همه مسیرها برای هر راس از ان راس به هریک از رئوس دیگر است.اما زمان این الگوریتم بدتر از زمان نمایی است. برای مثال فرض کنید از هر راس به همه رئوس دیگر یک یال وجود دارد .در این صورت زیر مجموعه ای از همه مسیر ها عبارت است از مجموعه ای خواهد بود که از راس نخست شروع می شود و به راسی دیگر ختم می شود و از همه رئوس دیگر عبور می کنند.چون راس دوم در چنین مسیری می تواند هریک از n-2 راس باشد راس سوم در چنین مسیری می تواند هر یک از n-3 راس باشد...
و راس دومی به آخری روی چنین مسیری فقط می تواند یک راس باشد.تعداد کل مسیرها از یک راس که از همه رئوس دیگر بگذرد عبارت است از :
(n-2)(n-3)…1=(n-2)!
که بد تر از حالت نمایی است. در بسیاری از مسائل بهینه سازی با همین وضعیت مواجه هستیم . یعنی الگوریتمی که همه حالت های ممکن را در نظر بگیرد زمان آن نمایی یا بدتر است.
با استفاده از برنامه نویسی پویا یک الگوریتم زمانی درجه سوم برای مسئله کوتاهترین مسیر ایجاد می کنیم. نخست الگوریتمی طرح می کنیم که فقط طول کوتاهترین مسیرها را تعیین کند. سپس آن را طوری اصلاح می کنیم که کوتاهترین مسیر را نیز ایجاد کند .یک گراف موزون حاوی n راس را با یک آرایه w نشان می دهند که در آن
اگر یالی بین , باشد وزن یال
اگر یالی بین , نباشد w[i][j]=
اگر i=j باشد 0
چون راس vj وقتی مجاور راس vi خوانده می شود که یالی بین vj و vi باشد به این آرایه نمایش ماتریس همجواری یک گراف می گویند .اگر بتوانیم راهی برای محاسبه مقادیر d از مقادیر w بیابیم الگوریتمی برای مسئله کوتاهترین مسیر خواهیم داشت این هدف با ایجاد n+1 آرایه قابل حصول است که وداریم : =طول کوتاهترین مسیر از VI به VJ فقط با استفاده از رئوس موجود در مجموعه {V1,V2,….VK} به عنوان رئوس واسطه پیش از انکه نشان دهیم چرا به این ترتیب قادر به محاسبه D از روی W هستیم معنی عناصر این آرایه ها را توضیح می دهیم .
مثال چند مقدار از را به عنوان مثال برای گراف شکل حل می کنیم.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری که از v2 آغاز می شود نمی تواند از v2 بگذرد
برای این گراف ها اینها مساویند زیرا با گنجاندن v3 مسیر جدیدی از v2 به v5 بدست نمی آید
.
برای هر گراف اینها مساویند زیرا کوتاهترین مسیری به v5 منتهی می شود نمی تواند از v5 بگذرد.
آخرین مقدار محاسبه شده طول کوتاهترین مسیر از V2 به V5 است که مجاز به عبور از هر یک از رئوس دیگر است .یعنی طول کوتاهترین مسیر است.
بنابراین برای تعیین D از روی W فقط باید راهی برای بدست آوردن از روی بیابیم.
مراحل استفاده از برنام نویسی پویا برای رسیدن به این هدف عبارت است از :
ارائه یک ویژگی (فرایند بازگشتی که با آن بتوان را از روی محاسبه کرد.
شرح مختصر : شبکههای عصبی مصنوعی Artificial Neural Network – ANN) ) یا به زبان سادهتر شبکههای عصبی سیستمها و روشهای محاسباتی نوینی هستند برای یادگیری ماشینی، نمایش دانش، و در انتها اعمال دانش به دست آمده در جهت بیشبینی پاسخهای خروجی از سامانههای پیچیده. ایده اصلی این گونه شبکهها (تا حدودی) الهامگرفته از شیوه کارکرد سیستم عصبی زیستی، برای پردازش دادهها، و اطلاعات به منظور یادگیری و ایجاد دانش قرار دارد. عنصر کلیدی این ایده، ایجاد ساختارهایی جدید برای سامانه پردازش اطلاعات است. این سیستم از شمار زیادی عناصر پردازشی فوق العاده بهمپیوسته با نام نورون تشکیل شده که برای حل یک مسأله با هم هماهنگ عمل میکنند و توسط سیناپسها(ارتباطات الکترومغناطیسی) اطلاعات را منتقل میکنند. در این شبکهها اگر یک سلول آسیب ببیند بقیه سلولها میتوانند نبود آنرا جبران کرده، و نیز در بازسازی آن سهیم باشند. این شبکهها قادر به یادگیریاند. مثلا با اعمال سوزش به سلولهای عصبی لامسه، سلولها یاد میگیرند که به طرف جسم داغ نروند و با این الگوریتم سیستم میآموزد که خطای خود را اصلاح کند. یادگیری در این سیستمها به صورت تطبیقی صورت میگیرد، یعنی با استفاده ازمثالها وزن سیناپسها به گونهای تغییر میکند که در صورت دادن ورودیهای جدید، سیستم پاسخ درستی تولید کند. توافق دقیقی بر تعریف شبکه عصبی در میان محققان وجود ندارد؛ اما اغلب آنها موافقند که شبکه عصبی شامل شبکهای از عناصر پردازش ساده (نورونها) است، که میتواند رفتار پیچیده کلی تعیین شدهای از ارتباط بین عناصر پردازش و پارامترهای عنصر را نمایش دهد. منبع اصلی و الهام بخش برای این تکنیک، از آزمایش سیستم مرکزی عصبی و نورونها (آکسونها، شاخههای متعدد سلولهای عصبی و محلهای تماس دو عصب)نشأت گرفتهاست، که یکی از قابل توجهترین عناصر پردازش اطلاعات سیستم عصبی را تشکیل میدهد. در یک مدل شبکه عصبی، گرههای ساده (بطور گسترده نورون، نئورونها، “PE” ها (عناصر پردازش) یا واحدها) برای تشکیل شبکهای از گرهها، به هم متصل شده اند،به همین دلیل به آن، اصطلاح”شبکههای عصبی” اطلاق میشود. در حالی که یک شبکه عصبی نباید به خودی خود سازگارپذیر باشد، استفاده عملی از آن بواسطه الگوریتمهایی امکان پذیر است، که جهت تغییر وزن ارتباطات در شبکه (به منظور تولید سیگنال موردنظر) طراحی شده باشد. با استفاده از دانش برنامهنویسی رایانه میتوان ساختار دادهای طراحی کرد که همانند یک نرون عمل نماید. سپس با ایجاد شبکهای از این نورونهای مصنوعی به هم پیوسته، ایجاد یک الگوریتم آموزشی برای شبکه و اعمال این الگوریتم به شبکه آن را آموزش داد. این شبکهها برای تخمین (Estimation) و تقریب (Approximation)کارایی بسیار بالایی از خود نشان دادهاند. گستره کاربرد این مدلهای ریاضی بر گرفته از عملکرد مغز انسان، بسیار وسیع میباشد که به عنوان چند نمونه کوچک میتوان استفاده از این ابزار ریاضی در پردازش سیگنالهای بیولوییکی، مخابراتی و الکترونیکی تا کمک در نجوم و فضا نوردی را نام برد.
فهرست :
مقدمه ای بر شبکههای عصبی مصنوعی
تاریخچه شبکههای عصبی مصنوعی
شبکه عصبی چیست؟
شبکه عصبی چه قابلیتهائی دارد؟
الهام از طبیعت
شبکه های عصبی در مقایسه با کامپیوترهای سنتی
مسائل مناسب برای یادگیری شبکه های عصبی
پرسپترون
الگوریتم یادگیری پرسپترون
الگوریتم gradient descent
مشکلات روش gradient descent
تقریب افزایشی gradient descent
الگوریتم Back propagation
قدرت نمایش توابع
انواع آموزش شبکه
برخی زمینه های شبکه های عصبی
سبکهای معماری شبکههای عصبی
قواعد یادگیری در شبکههای عصبی
آموزش شبکههای عصبی
آموزش unsupervised یا تطبیقی (Adaptive)
تفاوتهای شبکههای عصبی با روشهای محاسباتی متداول و سیستمهای خبره
انواع یادگیری برای شبکه های عصبی
یادگیری با ناظر
یادگیری تشدیدی
یادگیری بدون ناظر
معایب شبکه های عصبی
مزیتهای شبکه های عصبی
سیستم خبره
سیستم خبره چیست؟
ساختار یک سیستم خبره
استفاده از منطق فازی
مزایا و محدودیتهای سیستمهای خبره
کاربرد سیستمهای خبره
چند سیستم خبره مشهور
مروری بر کاربردهای تجاری
بازاریابی
بانکداری و حوزه های مالی
پیش بینی
سایر حوزه های تجاری
کاربرد مدلهای شبکه عصبی در پیشبینی ورشکستگی اقتصادی شرکتهای بازار بورس
کاربرد مدل شبکه عصبی در پیشبینی ورشکستگی شرکتهای بازار بورس
تبیین مفهوم ورشکستگی
متغیرهای مدل تحقیق
اطلاعات شرکتهای نمونه تحقیق
تعیین مدل شبکه عصبی سه لایه برای پیشبینی ورشکستگی شرکتها
تعیین مدل بهینه شبکه عصبی چهار لایه برای پیشبینی ورشکستگی شرکتها
مقایسه مدلهای شبکه عصبی سه و چهار لایه برای پیشبینی ورشکستگی اقتصادی
پیشبینی ورشکستگی اقتصادی شرکتها در سالهای و
روند ورشکستگی اقتصادی شرکتهای بازار بورس در دوره ـ
جمعبندی و نتیجهگیری
منابع
تعداد صفحات:23
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 20
الگوریتم
هر برنامه، می بایست دارای یک طرح و یا الگو بوده تا برنامه نویس بر اساس آن عملیات خود را دنبال نماید.از دیدگاه برنامه نویسان ، هر برنامه نیازمند یک الگوریتم است . بعبارت ساده ، الگوریتم ، بیانه ای روشمند بمنظور حل یک مسئله بخصوص است . از منظر برنامه نویسان ،الگوریتم بمنزله یک طرح کلی و یا مجموعه دستورالعمل هائی است که با دنبال نمودن آنان ، برنامه ای تولید می گردد.
الگوریتم های میکرو در مقابل ماکرو
الگوریتم ها دارای ویژگی های متفاوتی می باشند . ما می توانیم در رابطه با الگوریتم استفاده شده به منظور نوشتن یک برنامه مشخص صحبت نمائیم . از این زاویه ، ما صرفا" در رابطه با الگوریتم در سطح ماکرو(macro level) ، صحبت نموده ایم . در چنین مواردی ، الگوریتم ارائه شده ، سعی در بدست آوردن جنبه های عمومی برنامه از طریق یک مرور کلی به برنامه در مقابل درگیر شدن در جزئیات را دارد.ما می توانیم در رابطه با الگوریتم ها ، از سطح "میکرو" صحبت نمائیم . از این زاویه ، به سطوح پایین تر رفته و به عوامل اساسی ونگهدارنده ای که یک جنبه خاص از برنامه را با یکدیگر مرتبط می نماید، صحبت کرد. مثلا" در صورتیکه شما دارای داده هائی هستید که می بایست قبل از استفاده مرتب گردند ،الگوریتم های مرتب سازی متعددی در این زمینه وجود داشته و می توان یکی از آنها را بمنظور تامین اهداف مورد نظر خود انتخاب نمود. انتخاب یک الگوریتم مرتب سازی ، صرفا" باعث حل شدن یکی از جنبه های متفاوت برنامه می گردد . پس از مرتب سازی داده ها ،می بایست از یک الگوریتم میکرو دیگر بمنظور نمایش داده ها ی مرتب شده استفاده گردد .
همانگونه که احتمالا" حدس زده اید ، ما می توانیم تمام الگوریتم های میکرو را بمنظور ایجاد یک الگوریتم ماکرو ، جمع آوری نمائیم . اگر ما با الگوریتم های میکرو ، آغاز نمائیم ، و حرکت خود را بسمت نمایش ماکروی یک برنامه ، پیش ببریم ، کاری را انجام داده ایم که موسوم به طراحی " پایین به بالا" (buttom-up) ، است . اگر ما فعالیت خود را با یک الگوریتم ماکرو آعاز و حرکت خود را بسمت پائین و الگوریتم های میکرو ، ادامه دهیم ، طراحی از نوع " بالا به پایین " (top-down) را انجام داده ایم .
شاید این سوال مطرح گردد که کدام روش بهتر است ؟ اگر شما تمام مقالاتی را که تاکنون در این زمینه نوشته شده اند را دنبال نمائید ، هرگز به یک نتیجه قابل قبول دست نخواهید یافت . هر رویکرد، دارای نکات مثبت و منفی مربوط به خود است . صرفنظر از رویکرد طراحی استفاده شده ، می بایست دارای الگوئی (طرحی) مناسب برای برنامه باشیم .حداقل، نیازمند یک اعلامیه از مسئله برنامه نویسی و یک طرح ( الگو) برای برخورد با مسئله ، خواهیم بود . پس از شناخت مسئله ، می توان نحوه حل مسئله را ترسیم کرد. شناخت عمیق و مناسب نسبت به مسئله ای که قصد حل آن را داریم ، شرط اساسی و ضروری برای طراحی یک برنامه است .با توجه به اینکه این اعتقاد وجود دارد که شناخت جامع و کلی از مسئله ای که حل آن را داریم ، بخشی ضروری در اولین مرحله برنامه نویسی است ، ما در ادامه از رویکرد "بالا - پایین "، تبعیـت می نمائیم . فراموش نکنیم که رویکرد فوق ، امکان مشاهده مجازی از هر مسئله برنامه نویسی را فراهم خواهد نمود.
مراحل پنج گانه
هر برنامه را صرفنظر از میزان پیچیدگی آن ، می توان به پنج مرحله اساسی تجزیه کرد :
مقدار دهی اولیه
ورودی
پردازش
خروجی
پاکسازی
در ادامه به بررسی هریک از مراحل فوق ، خواهیم پرداخت .
مرحله مقداردهی اولیه
مرحله مقداردهی اولیه ، اولین مرحله ای است که می بایست در زمان طراحی یک برنامه در رابطه با آن فکر کرد . مرحله فوق ، شامل تمامی عملیات مورد نیازی است که برنامه می بایست قبل ازبرقراری ارتباط با کاربر ، انجام دهد . در ابتدا ممکن است این موضوع که عملیاتی را قبل از برقراری ارتباط با کاربر می بایست انجام داد ، تا اندازه ای عجیب بنظر رسد ولی احتمالا" برنامه های زیادی را مشاهده نموده اید که در این راستا عملیات مشابهی را انجام می دهند. مثلا" ، در زمان استفاده از برنامه هائی نظیر Word ، Excel و یا برنامه های مشابه دیگر ، با چنین مواردی برخورد نموده ایم . مثلا" با انتخاب گزینه منو File ، می توان لیستی از فایل هائی را که با آنها کار کرده ایم در بخش انتهائی منوفوق ، مشاهده کرد. ( مشاهده آخرین فایل های استفاده شده در یک برنامه خاص ، با استفاده از جادو! میسر نشده است ) . برنامه مورد نظر شاید ، لیست فایل های اخیر را از دیسک خوانده و آنها را به لیست مربوطه در منوی File ، اضافه کرده باشد . با توجه به اینکه لیست فایل های فوق ، می بایست قبل از اینکه برنامه هر چیز دیگر را برای کاربر نمایش دهد ، خوانده و نمایش داده شوند ، می توان انجام عملیات فوق را نمونه ای از مرحله مقداردهی اولیه، در نظر گرفت.یکی دیگر از عملیات متداول که به این مرحله مرتبط می باشد ، خواندن فایل های Setup است . چنین فایل هائی ممکن است حاوی اطلاعاتی در رابطه با نام مسیرهائی باشند که بانک ها ی اطلاعاتی خاصی و یا فایل های ذخیره شده دیگری را بر روی دیسک را مشخص می نمایند . با توجه به نوع برنامه ای که اجراء می گردد ، فایل های Setup می توانند شامل اطلاعاتی در رابطه با فونت های نمایش ، نام و محل چاپگر ، رنگ های زمینه و رویه ، وضوح تصویر صفحه نمایشگر و اطلاعات مشابهی دیگر باشند . سایر برنامه ها ممکن است مستلزم خواندن اطلاعاتی در رابطه با اتصالات شبکه ، مجوزهای امنیتی و دستیابی به اینترنت ، رمزهای عبور و سایر اطلاعات حساس دیگر باشند . در چنین مواردی فایل های Setup دارای نقشی مهم خواهند بود.