IRE: Inductive Rule Extraction

IRE: Inductive Rule Extraction

استخراج قانون استقرائی
IRE: Inductive Rule Extraction

IRE: Inductive Rule Extraction

استخراج قانون استقرائی

مالتی پلکسر

مالتی‌پلکسر دستگاهی است که یکی از چند سیگنال دیجیتال یا آنالوگ ورودی‌هایش را انتخاب کرده و سپس آن ورودی انتخاب‌شده را به یک خط خروجی هدایت می‌کند. تسهیم‌کننده‌ای با n به توان 2ورودی،  nخط انتخاب دارد که این خطوط انتخاب مشخص می‌کنند که کدام خط ورودی باید به خط خروجی هدایت شود.  

از تسهیم‌کننده‌ها برای افزایش مقدار اطلاعاتی که در یک مدت‌زمان مشخص با یک پهنای باند مشخص بر روی شبکه ارسال می­شود مورد استفاده قرار می­گیرد. یک تسهیم‌کننده الکترونیکی به چند سیگنال امکان می‌دهد تا از یک دستگاه یا منبع به‌صورت اشتراکی استفاده کنند. برای مثال می‌توان یک تبدیل‌کننده آنالوگ به دیجیتال یا یک خط ارتباطی را در بین خطوط ورودی به اشتراک گذاشت.

یک دی‌مالتی‌پلکسر دستگاهی است که یک خط ورودی و چندین خط خروجی دارد که هر بار خط ورودی‌اش را به یکی از چند خط خروجی هدایت می‌کند. یک مالتی‌پلکسر را می‌توان مانند یک سوئیچ چند ورودی یک خروجی فرض کرد و یک دی‌مالتی‌پلکسر را به‌مانند یک سوئیچ یک ورودی با چند خروجی.

مالتی پلکسر چگونه کار می­کند؟

نوعی مالتی پلکسر که به طور رایج MUX نامیده می­شود، به انتخاب کردن یک خروجی از تعداد زیادی ورودی در دسترس برمی­گردد. پروفسر شانکر بالاچندرن مالتی پلکسینگ را به عنوان یک روشی که تعداد زیادی واحد اطلاعات را از طریق تعداد کمی کانال یا خطوط منتقل می­کند و یک مالتی پلکسر دیجیتال یک مدار منطق ترکیبی است که اطلاعات باینری را از یکی، تعداد زیاد خطوط ورودی انتخاب می­کند و آن را به یک خط سیگنال خروجی هدایت می­کند.

اصول مالتی پلکسرها

بهترین راه برای درک مالتی پلکسر با نگاه کردن به یک تک قطب چندگانه است. در این سوئیچ چندین ورودیD0، D1، D2  و D3 وجود دارد ولی فقط یک پین خروجی دارد.  از دکمه کنترل برای انتخاب یکی از چهار داده موجود استفاده می­شود و این داده­ها در سمت خروجی منعکس می­شوند.  به این ترتیب کاربر می­تواند سیگنال مورد نیاز را در بین بسیاری از سیگنال­های موجود انتخاب کند.

این یک نمونه ساده از یک مالتی پلکسر مکانیکی است. اما در مدار الکترونیکی که شامل سوئیچینگ با سرعت بالا و انتقال داده است، باید بتوانیم ورودی مورد نیاز را خیلی سریع با استفاده از مدارهای دیجیتال انتخاب کنیم. سیگنال­های کنترلS1 و S0 دقیقاً همین کار را براساس سیگنالی که به آنها داده می­شود یک ورودی از موردهای زیادی که وجود دارد را انتخاب می کنند.  بنابراین سه اصطلاح اساسی و  پایه­ای در هر مالتی پلکسر عبارتند از:

·       پین های ورودی

·       پین خروجی

·       سیگنال کنترل

پین­های ورودی: پین­های سیگنال موجود هستند که باید یکی از آنها انتخاب شود. این سیگنال­ها می­توانند یک سیگنال دیجیتال یا یک سیگنال آنالوگ باشند.

پین خروجی: یک مالتی پلکسرفقط یک پین خروجی دارد. سیگنال پین ورودی انتخاب شده توسط پین خروجی ارائه می­شود.

پین کنترل یا انتخاب: از پین­های کنترل برای انتخاب سیگنال پین ورودی استفاده می­شود. تعداد پین­های کنترل در مالتی پلکسر به تعداد پین­های ورودی بستگی دارد. یک مالتی پلکسر4 ورودی دارای 2 پین سیگنال است.

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

به طور کلی، انتخاب هر خط ورودی در مالتی‌پلکسر از طریق چند ورودی جداگانه که به آنها «خطوط کنترلی» گفته می‌شود صورت می‌گیرد. بر اساس وضعیت باینری ورودی‌های کنترلی که ممکن است HIGH یا LOW باشند، داده‌ی ورودی متناسب مستقیماً به خروجی وصل می‌شود. به طور معمول هر مالتی‌پلکسر n2 خط ورودی داده‌ و n خط ورودی کنترلی دارد.

به این نکته توجه داشته باشید که مالتی‌پلکسرها کاملاً با انکودرها (Encoder) متفاوتند. در انکودرها یک داده‌ی ورودی n بیتی به چند خروجی سوئیچ می‌شود. مقدار قرار گرفته در خطوط خروجی بیانگر معادل BCD پایه‌ی ورودی فعال است.

همانگونه که در شکل زیر نشان داده شده، می‌توان با استفاده از چند گیت NAND ساده یک مالتی‌پلکسر با دو خط ورودی و یک خط خروجی (مالتی‌پلکسر 2 به 1) ساخت.

متدولوژی حل

الگوریتم­های ژنتیک از اصول انتخاب طبیعی داروین برای یافتن فرمول بهینه جهت پیش بینی یا تطبیق الگو استفاده می­کنند. قانون انتخاب طبیعی بدین صورت است که تنها گونه‌هایی از یک جمعیت ادامه نسل می‌دهند که بهترین خصوصیات را داشته باشند و آن­هایی که این خصوصیات را نداشته باشند به تدریج و در طی زمان از بین می‌روند. موتور الگوریتم ژنتیک یک جمعیت اولیه تصادفی از پاسخ های ممکن برای مسئله ایجاد می­کند که هریک از این پاسخ­ها در قالب یک کروموزوم دارای تعدادی ژن ( هر ژن نماینده ی یک مجهول مسئله می­باشد) بوده و به صورت مناسبی کدگذاری شده­اند. در مرحله بعدی هر کروموزوم در برابر مجموعه­ای از معیارها مورد آزمایش قرار می­گیرد. تابع برازش با توجه به میزان موفقیت هر کروموزوم در حل مسئله ارزش آن­ها را معین می­کند. سپس بر اساس این ارزش­ها کروموزوم­ها به ترتیب صعودی به نزولی مرتب می شوند تا x% از آنها حفظ شده و بقیه حذف شوند. برای جایگزینی این کروموزوم­های حذف شده، کروموزوم­های باقی­مانده به نحوی دو به دو انتخاب شده و تولید فرزند می­کنند. یک نحوه­ی این انتخاب اینست که مجموعه کوچکی از کروموزوم­ها به صورت تصادفی انتخاب شده و سپس از بین این کروموزوم­ها، دو کروموزومی که دارای ارزش بیشتری هستند به­عنوان والدین برای تولید فرزند انتخاب می­شوند. شرایط خاتمه الگوریتم­های ژنتیک عبارتند از:

·        بودجه اختصاص داده شده تمام شود(زمان محاسبه/پول)

·        یک فرد(فرزند تولید شده) پیدا شود که مینیمم (کمترین)ملاک را برآورده کند

·        بیشترین درجه برازش فرزندان حاصل شود یا دیگر نتایج بهتری حاصل نشود

·        بازرسی دستی

·        ترکیب­های بالا

روش­های نمایش

قبل از این که یک الگوریتم ژنتیک برای یک مسئله اجرا شود، یک روش برای کد کردن ژنوم­ها به زبان کامپیوتر باید به کار رود. یکی از روش­های معمول کد کردن به صورت رشته های باینری است(رشته های ۰و۱). یک راه حل مشابه دیگر کدکردن راه حل­ها در آرایه­ای از اعداد صحیح یا اعشاری است،که دوباره هر جایگاه یک جنبه از ویژگی­ها را نشان می­دهد. الگوریتم­های ژنتیکی که برای آموزش شبکه­های عصبی استفاده می­شوند، از این روش بهره می­گیرند. سومین روش برای نمایش صفات در یک الگوریتم ژنتیک یک رشته از حروف است که هر حرف دوباره نمایش دهنده یک خصوصیت از راه حل است. در این مساله ما از کدگذاری عدد صحیح استفاده کردیم، به این­صورت که هر کروموزوم توالی گره­های تقاضا در مسیرها را نشان می­دهد.

روش های انتخاب

روش های مختلفی برای الگوریتم­های ژنتیک وجود دارند که می­توان برای انتخاب کروموزوم­های والد از آن­ها استفاده کرد. تعدادی از این روش­ها عبارتند از:

·       انتخاب Elitist : مناسبترین عضو هر اجتماع انتخاب می­شود.

·       انتخاب Roulette : یک روش انتخاب است که در آن عنصری که عدد برازش(تناسب) بیشتری داشته باشدانتخاب می­شود.

·       انتخاب Scaling : به موازات افزایش متوسط عدد برازش جامعه،سنگینی انتخاب هم بیشتر می شود وجزئی­تر. این روش وقتی کاربرد دارد که مجموعه دارای عناصری باشد که عدد برازش بزرگی دارند وفقط تفاوت­های کوچکی آن­ها را از هم تفکیک می­کند.

·        انتخاب Tournament : یک زیر مجموعه از کروموزوم­های یک جامعه انتخاب می­شوند و اعضای آن مجموعه با هم رقابت می­کنند و سرانجام فقط دو کروموزوم از هر زیر گروه برای تولید انتخاب می­شوند.

عملگر تقاطع:

در این عملگر که Crossover نام دارد، ۲ کروموزوم برای معاوضه ژن­هایشان انتخاب می­شوند. این فرآیند براساس فرآیند ترکیب کروموزوم­ها در طول تولید مثل در موجودات زنده شبیه سازی شده است. اغلب روش­های معمول      Crossover  از نوع Single-point Crossover هستند، که نقطه تعویض در جایی تصادفی بین ژن­های کروموزوم­ها است. بخش اول قبل از نقطه و بخش دوم سگمنت بعد از آن ادامه پیدا می­کند،که هر قسمت برگرفته از یک والد است.

عملگر جهش:

این عملگر دقیقاً مثل جهش در موجودات زنده است که عبارت است از تغییر یک ژن به دیگری. در الگوریتم ژنتیک جهش تغییر کوچکی در یک ژن از کد کروموزوم ایجاد می­کند.

 

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد