PDA

View Full Version : سوال: گرافهایی با n راس که یک ریخت نباشند



13601360
یک شنبه 03 خرداد 1388, 20:39 عصر
با سلام به همه دوستان عزیز
یک سوال ازتون داشتم
آیا یک روال مشخصی وجود داره تا گراف هایی با n راس که یک ریخت نباشند را رسم کرد. منظورم یک روال مشخص دستی هست. چون قرار این رو با یک زبان پیاده سازی کنم ولی هیچ نظمی در ترسیم این گراف ها پیدا نکردم.
دوستان پیشنهادی ندارند.
خواستم از ماتریس مجاورت استفاده کنم تا حالات مجاز رو پیدا کنم ولی نشد.
برای مثال با 3 راس ما می تونیم 4 تا گراف رسم کنیم که یک ریخت نیستند.
ممنون از لطف همه دوستان

tdkhakpur
یک شنبه 03 خرداد 1388, 21:57 عصر
گراف هایی با n راس که یک ریخت نباشند
سلام:
کمی بیشتر از درخواستتون توضیح بدید حتما راهمناییت میکنم.
موفق باشی.

13601360
یک شنبه 03 خرداد 1388, 23:28 عصر
ممنون از توجهتون دوست عزیز
مثلا برای 3 راس ما کلا 8 گراف مختلف از نظر تعداد یال می تونیم رسم کنیم.اما داخل این 8 تا گراف بعضی ها یک ریخت هستند یا شبیه هم هستند نه لزوما از نظر ظاهری. در عکس زیر گراف های با 3 راس غیر یک ریخت رسم شده است.


http://i44.tinypic.com/2q2igxz.jpg


شما هر گراف دیگری با 3 راس رسم کنید با یکی از گراف های بالا یک ریخت میشه.
حالا می خوام یک روال مشخص برای رسم این گراف ها پیدا کنم.
تا طبق اون بتونم برنامه رو پیاده سازی کنم.

pesar irooni
دوشنبه 04 خرداد 1388, 15:03 عصر
سلام
دو گراف ایزومورف مسلما تعداد ند ها و یالهاشون برابره.
میتونی با بررسی اینکه گرافی که داری رسم میکنی دارای یالهای یکسانی با گراف قبلی هست یا نه؟ اگه نباشه پس یه شکل دیگه از گرافهات رو پیدا کردی.
در اصل کافیه ایزومورف بودن رو برای اونهایی بررسی کنی که یالهای یکسانی دارند. این کارت رو نصف میکنه.

13601360
دوشنبه 04 خرداد 1388, 15:18 عصر
دوست عزیز ممنون از توجهتون
اما از این روش نمیشه.چون لزوما دو گراف با تعداد رئوس و یال برابر یک ریخت نیستند
مثل


http://i40.tinypic.com/o6icmq.jpg

tdkhakpur
دوشنبه 04 خرداد 1388, 15:45 عصر
سلام:
نمیدونم تا چه حد میتونی تو برنامه نوسی ویراژ بدید ولی یه راه راحتتر و بهتر اینه که هر کاری رو که برای نود یا گراف بالایی انجام دادی توسط یه کد برای گراف بعدی ارسال کن تا در حین تولید گراف جدید این کد که مشخص میکنه گرافتون باید چه مشخصاتی باید داشته باشه که با بالایی برابری نکنه.
موفق باشی.

pesar irooni
سه شنبه 05 خرداد 1388, 00:26 صبح
لزوما دو گراف با تعداد رئوس و یال برابر یک ریخت نیستند
این که مسلمه
من گفتم با بررسی این مورد میتونی نصف کلی سربار پردازشی برنامتون رو پایین بیارید. مثلا برای 3 راس. اول سه راس بدون هیچ یالی میشه یه گراف. بعد یک یال اضافه میکنی و اینجا با توجه به اینکه این گراف از نظر تعداد یالها با گراف قبلی برابر نیست پس ایزومورف هم نیست. حالا حالتهای سه راس با یک یال رو فقط با هم مقایسه میکنی که کدوماش ایزومورف هست که حذف کنی(در حالت کلی میگم).

13601360
سه شنبه 05 خرداد 1388, 19:50 عصر
من نمی خوام از روش مقایسه استفاده کنم. می خوام یه روشی رو پیدا کنم که مطمئن باشم گراف مورد نظر تولیدی یک ریخت نیست.یعنی مستقیما گراف مجاز رو ترسیم کنم.با استفاده از ماتریس مجاورت یه راهی پیدا کردم ولی همه گراف ها رو تولید نمی کنه.
مقایسه یه مشکلی هم داره ملاک مقایسه من برای تشخیص یک ریختی چی باشه. تعداد یال برابر ملاک نمی تونه باشه یا درجه هر راس گراف. هر کدوم یه محدودیت هایی دارند.
دوستان اگر ایده ای داشتند خوشحال می شم بگید
ممنون از لطف همه دوستانی که تا اینجا همراه من بودند