نمایش نتایج 1 تا 16 از 16

نام تاپیک: الگوریتم لیله

  1. #1
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    الگوریتم لیله

    سلام
    یه جدول m در n خونه داریم که تو هر خونه مقداری عدد وجود داره،به نظر شما دوستان چطوری میشه از خونه اولی که شما هستین تا خونه آخر جدول ، طوری حرکت کرد که در انتها مطمئن بود مسیری رو انتخاب کردین که بزرگترین اعداد رو انتخاب کردین
    یعنی الگوریتم انتخاب بزرگترین اعداد در مسیر حرکت.
    البته شرط حرکت فقط راست و پایین هستش و به سمت دیگه ایی نمیتونین برین ،ضمن اینکه مسیر تکراری مجاز نیست
    اگه منظورمو متوجه نشدید عکس ضمیمه رو ببینید
    Name:  Leyley.JPG
Views: 104
Size:  31.1 کیلوبایت

  2. #2
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    بهترین نظر رو برای یه کار خوب دعوت میکنم،پس اگه میتونید جواب بدین و شانستونو امتحان کنید

  3. #3

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    سلام
    یه جدول m در n خونه داریم که تو هر خونه مقداری عدد وجود داره،به نظر شما دوستان چطوری میشه از خونه اولی که شما هستین تا خونه آخر جدول ، طوری حرکت کرد که در انتها مطمئن بود مسیری رو انتخاب کردین که بزرگترین اعداد رو انتخاب کردین
    یعنی الگوریتم انتخاب بزرگترین اعداد در مسیر حرکت.
    البته شرط حرکت فقط راست و پایین هستش و به سمت دیگه ایی نمیتونین برین ،ضمن اینکه مسیر تکراری مجاز نیست
    اگه منظورمو متوجه نشدید عکس ضمیمه رو ببینید
    Name:  Leyley.JPG
Views: 104
Size:  31.1 کیلوبایت
    روش‌های حریصانه و پویا دو راه حل ممکن ساده هستن که دومی به جواب بهینه قطعی می‌رسه، اما اولی ممکنه بهینه‌ترین نباشه.
    اما اگه ابعاد صفحه خیلی بزرگ باشه برنامه‌ریزی پویا هم اونطور که باید در زمان خوبی جواب نمی‌ده و باید سراغ روش‌های ابتکاری و فرا ابتکاری مربوط به مباحث هوش مصنوعی رفت.

  4. #4

    نقل قول: الگوریتم لیله

    جواب دوستمون درسته
    البته می شه از ژنتیک هم استفاده کرد اما به نظر من همون حریصانه جواب می ده

  5. #5
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط مسعود اقدسی فام مشاهده تاپیک
    روش‌های حریصانه و پویا دو راه حل ممکن ساده هستن که دومی به جواب بهینه قطعی می‌رسه، اما اولی ممکنه بهینه‌ترین نباشه.
    اما اگه ابعاد صفحه خیلی بزرگ باشه برنامه‌ریزی پویا هم اونطور که باید در زمان خوبی جواب نمی‌ده و باید سراغ روش‌های ابتکاری و فرا ابتکاری مربوط به مباحث هوش مصنوعی رفت.

    مسعود بیشتر توضیح بده
    همون روش های اولتو

  6. #6

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    مسعود بیشتر توضیح بده
    همون روش های اولتو
    روش حریصانه یعنی اینکه در هر مرحله خانه‌ای از خانه‌های مجاور رو انتخاب کنیم که بیشترین مقدار رو داره. شکل شما دقیقا به روش حریصانه پیش رفته. فقط اینکه سطر سوم از آخر به جای حرکت از 5 به 1 از 5 به 4 می‌ره که نتیجه رو هم بزرگتر از مسیری که شما انتخاب کردید به دست می‌یاره. اما مشکل این روش در ساختاری مثل اعداد زیر مشخص می‌شه:


    1 1 1 100
    2 1 1 1
    3 1 1 1
    4 1 1 1


    روش حریصانه با شروع از عدد 1 عدد 2 در سطر پایین رو انتخاب می‌کنه و به همین ترتیب پایین می‌ره و آخر سر مجموع کل 13 به دست می‌یاد. در حالیکه اگه به سمت عدد 100 حرکت می‌کرد به 116 می‌رسید.
    برنامه‌ریزی پویا این مشکل رو حل می‌کنه. توضیح این روش مفصله. از لینک‌های زیر می‌تونید کمک بگیرید:



    در واقع این مساله مثل پیدا کردن کوتاهترین مسیر از یه شهر به شهر دیگه با استفاده از شهرهای میانیه. هر خانه یه گره از گراف جهت داری رو تشکیل می‌ده که جاده بین شهرهای مجاور و طول اونها رو مشخص کرده. با استفاده از برنامه‌ریزی پویا روش فلوید-وارشال برای حل مساله قبلا ابداع شده:


    http://fa.wikipedia.org


    البته الگوریتم دایجسترا هم هست که باید بررسی بشه.

    روش‌هایی مثل ژنتیک و PSO و مورچگان و غیره روش‌های ابتکاری و فرا ابتکاری هستن که بحث مفصلی نیاز دارن. می‌تونید از این پیوند استفاده کنید:

    آخرین ویرایش به وسیله مسعود اقدسی فام : پنج شنبه 21 اردیبهشت 1391 در 14:14 عصر

  7. #7
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    البته که بهتره از روش پویا حل بشه
    فکر میکنم حریصانه مرتبه اش ، نمایی هم می شه!!

  8. #8

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    البته که بهتره از روش پویا حل بشه
    فکر میکنم حریصانه مرتبه اش ، نمایی هم می شه!!
    بستگی داره از کدوم روش حریصانه استفاده کنید. روش اول نمایی نمی‌شه. چون در هر مرحله بالاخره یکی از دو گزینه انتخاب می‌شه، که m + n مرحله خواهد داشت. یعنی در کل (O( m + n می‌شه که خطیه. روش فلوید- وارشال هم قبلا ثابت شده از مرتبه درجه سه هستش. روش دایجسترا هم اگه اشتباه نکنم از مرتبه درجه دو می‌شه.
    فرق دایجسترا و فلوید-وارشال در اینه که دایجسترا فقط مسیر از یه مبدا مشخص به هر مقصدی رو مشخص می‌کنه. اما فلوید- وارشال از هر مبدا به هر مقصد رو در انتها تولید می‌کنه که برای مساله‌ی شما چندان مورد نیاز نیست.
    البته همه‌ی این روش‌ها به صورت پیشفرض برای کوتاهترین مسیر (کمینه کردن) تعریف شده که برعکس مساله‌ی شماست. ولی می‌شه با کمی تغییر به همون مساله تبدیل کرد.
    باز اگه دوستان نظر دیگه‌ای دارن خوشحال می‌شم بحث کنیم.

  9. #9
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    مسعود اقدسی فام اگه می شه راجع به الگوریتم پویا راهکاری پیشنهاد بده

  10. #10

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    مسعود اقدسی فام اگه می شه راجع به الگوریتم پویا راهکاری پیشنهاد بده
    همین پیشنهادی که دادم راجع به استفاده از دایجسترا یا فلوید رو بررسی کنید. البته دایجسترا پویا نیست. هر راهکار دیگه‌ای پیشنهاد بدم در واقع چیزی شبیه فلوید (برای پویا) می‌شه که فقط اسمش فلوید نیست! چون کلیت مساله همون مساله کوتاهترین مسیر از شهر گوشه چپ بالا به راست پایینه. درسته که مساله‌ی شما بزرگترین مسیر رو می‌خواد؛ اما کافیه اعداد رو معکوس کنید تا به کوتاهترین تبدیل بشه. مثلا عدد 2 بشه یک دوم و عدد 10 بشه یک دهم. در این حالت عدد بزرگتر به عدد کوچکتر تبدیل می‌شه.

  11. #11
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    تعداد حرکات در تمامی مسیرها مساویه،فقط مقادیر مهمه که زیادتر نداشته باشه
    منظورتونو بیشتر توضیح بدین
    اگه میشه با شبه کد بگین

  12. #12

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    تعداد حرکات در تمامی مسیرها مساویه،فقط مقادیر مهمه که زیادتر نداشته باشه
    منظورتونو بیشتر توضیح بدین
    اگه میشه با شبه کد بگین
    شما الگوریتم فلوید-وارشال رو سوای مساله‌ی خودتون مطالعه کنید. تا من ادامه رو بگم.

  13. #13
    کاربر دائمی آواتار alireza.zahani
    تاریخ عضویت
    آبان 1389
    محل زندگی
    آمل
    پست
    466

    نقل قول: الگوریتم لیله

    این پروژه رو نگاه کنید و نظرتونو بگید
    آخرین ویرایش به وسیله alireza.zahani : جمعه 05 خرداد 1391 در 23:07 عصر

  14. #14

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    ضمیمه 87448
    این پروژه رو نگاه کنید و نظرتونو بگید
    کل مسیرهای ممکن رو یکی یکی بررسی و مجموعشون رو محاسبه می‌کنه. در نهایت بیشترین عدد رو به عنوان مسیر جواب مشخص می‌کنه.

    این یه راه حل کاملا معمولیه که همه‌ی فضای جواب رو بررسی می‌کنه که بهترین رو پیدا کنه. اگه ابعاد صفحه زیاد باشه کارا نیست.

  15. #15
    کاربر تازه وارد آواتار torisoft
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    مشهد
    پست
    53

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط alireza.zahani مشاهده تاپیک
    بهترین نظر رو برای یه کار خوب دعوت میکنم،پس اگه میتونید جواب بدین و شانستونو امتحان کنید
    این چیزیکه شما میگید که اصلا احتیاج به این همه الگوریتم و روش ابتکاری و اینا نداره.
    فقط کافیه داخل هر خونه ای که هستید اعداد سمت راست و پایین رو چک کنید هر کدوم بزرگتر بود برید به همون خونه.
    نمیدونم یا من متوجه نشدم یا شما خیلی مسئله رو پیچیده کردید ؟؟؟؟

  16. #16

    نقل قول: الگوریتم لیله

    نقل قول نوشته شده توسط torisoft مشاهده تاپیک
    این چیزیکه شما میگید که اصلا احتیاج به این همه الگوریتم و روش ابتکاری و اینا نداره.
    فقط کافیه داخل هر خونه ای که هستید اعداد سمت راست و پایین رو چک کنید هر کدوم بزرگتر بود برید به همون خونه.
    نمیدونم یا من متوجه نشدم یا شما خیلی مسئله رو پیچیده کردید ؟؟؟؟
    این روش رو اگه تمام پست‌ها رو مطالعه می‌کردید بررسی کردیم. یه روش حریصانه که لزوما به جواب بهینه نمی‌رسه.

تاپیک های مشابه

  1. تکنیکهای طراحی الگوریتم - روش تقسیم و تسخیر
    نوشته شده توسط Kambiz در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 14
    آخرین پست: پنج شنبه 02 آبان 1392, 19:27 عصر
  2. تکنیکهای طراحی الگوریتم - مقدمه
    نوشته شده توسط Kambiz در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 12
    آخرین پست: سه شنبه 13 تیر 1391, 09:45 صبح
  3. کسی الگوریتم تبدیل تقویم میلادی به شمسی را دارد ؟
    نوشته شده توسط فارسی ساز در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 20
    آخرین پست: شنبه 30 مهر 1390, 14:00 عصر
  4. نوشتن الگوریتم تر کیب اعداد
    نوشته شده توسط maryam206 در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 6
    آخرین پست: یک شنبه 25 اردیبهشت 1390, 10:05 صبح
  5. الگوریتم اوقات شرعی
    نوشته شده توسط said ali در بخش برنامه نویسی در Delphi
    پاسخ: 4
    آخرین پست: شنبه 12 مهر 1382, 16:30 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •