صحیح شدن ارزش چندین قانون و در نتیجه فعال شدن آنها گردد. هر ترتیبی از اجرای این قوانین، می تواند نتایج متفاوتی را به دنبال داشته باشد که در این صورت این مجموعه از قوانین، مجموعه قوانین ناسازگار نامیده میشوند. یک استراتژی رفع ناسازگاری ترتیبی را برای اجرای این مجموعه از قوانین تعیین مینماید.
( اینجا فقط تکه ای از متن فایل پایان نامه درج شده است. برای خرید متن کامل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
سیستمهای هوشمند از قبیل سیستمهای مبتنی بر قانون، ابزارهای برنامه ریزی، و ساختارهای وابسته به دانش، از استراتژی های متفاوتی برای رفع ناسازگاری استفاده می کنند] ۲[.
در این پژوهش در ابتدا در رابطه با این شیوه های متفاوت توضیحاتی ارائه میگردد و پس از آن ایدهایی که به منظور رفع ناسازگاری در سیستم پیشنهادی بکار برده شده، شرح داده می شود. سیستم پیشنهادی یک سیستم تصمیمهمیار هوشمند است که به منظور یاری رساندن به یک بازیکن در یک بازی استراتژیک بلادرنگ طراحی و پیادهسازی شده و شرح ساختار و ویژگیهای آن در فصول آتی آمده است. همچنین در این پایان نامه در ارتباط با سیستمهای تصمیمهمیار هوشمند و ساختارهای مختلفی که محققان برای پیادهسازی این سیستمها در نظر گرفتهاند، نیز مطالبی ارائه شده است.
رفع ناسازگاری
در بسیاری از سیستمهای مبتنی بر قانون، موتور استنتاج، یک مولفهی نرمافزاری است که در هنگام اجرای برنامهی کاربردی، بر روی مجموعهایی از قوانین، استنتاج می کند. از جمله مهمترین وظایفی که توسط موتور استنتاج صورت میگیرد، رفع ناسازگاری است] ۴۷[. به طور کلی، رفع ناسازگاری، یک استراتژی، برای انتخاب ترتیب اجرای قوانین است هنگامی که بیش از یک قانون بتواند اجرا شود.
برای رفع ناسازگاری روشهای مختلفی وجود دارد. سادهترین راهحل، انتخاب تصادفی قوانین است. در برخی از استراتژیها، از جمله مهمترین فاکتورهایی که در انتخاب قوانین موثر است مقدار اولویتی است که توسط سازندهی سیستم به هر قانون اختصاص داده می شود که در این روش برای قوانین با الویت یکسان باید از روش دیگری استفاده گردد. روشهای خبرهتر از اطلاعات آماری مرتبط با موفقیتها و عدم موفقیتهای پیشین در هنگام بکار بردن قوانین مختلف، به منظور پیبردن به احتمال موفقیت، استفاده می کنند. همچنین برخی از روشها، هزینه های قوانین را که نشاندهنده تلاشهایی است که حلکننده مسئله برای انجام اعمال بدان نیازمند است (مانند زمان) بحساب میآورند] ۲[.
روشی که در این پژوهش به منظور رفع ناسازگاری بکار برده شده، با در نظر گرفتن یک خط استنتاج جداگانه برای هر یک از قوانین ناسازگار در طی روند استنتاج، تمامی حالات ممکن برای اولویت بندی در اجرای قوانین را تحت پوشش قرار میدهد.
سیستمهای تصمیمهمیار و سیستمهای تصمیمهمیار هوشمند
به طور کلی، اخذ تصمیم، یکی از مهمترین و حساسترین فعالیتهایی است که در هر سازمان و یا تشکیلاتی صورت میگیرد] ۴۸[. برای پشتیبانی و حمایت از این روند پیچیده، دستهی متنوعی از سیستمهای اطلاعاتی مستقل بنام سیستمهای تصمیمهمیار، در طی دو دهه گذشته به وجود آمدهاند. این سیستمها به صورت ابزارهای مبتنی بر کامپیوتری که به منظور پشتیبانی از روند پیچیده اخذ تصمیم و حل مسئله ایجاد میشوند، تعریف و در جهت ایجاد محیطی برای تحلیل مسائل، ساخت مدلها و شبیهسازی رویهی تصمیم گیری و برنامه های تصمیمگیرندگان طراحی میگردند] ۴۹[.
این سیستمهای اطلاعاتی، که به منظور حمایت فعل و انفعالی از تمامی مراحل روند اخذ تصمیم یک کاربر، طراحی میشوند، میتوانند شامل تکنولوژیهایی برگرفته از زمینه های علمی مختلف شامل حسابداری، علوم شناختی، علوم کامپیوتر، اقتصاد، مهندسی، مدیریت، آمار و … باشند و اغلب از سه مولفهی زیرسیستم داده، زیر سیستم مدل (که دارای مکانیزمی برای پردازش داده میباشد) و زیرسیستم ارتباط با کاربر، تشکیل شده اند] ۱۹[.
اگرچه، سیستمهای تصمیمهمیار با بکار بردن منابع اطلاعاتی و ابزارهای تحلیل گوناگون، شرایط بهتر و با کیفیت بیشتری را برای تصمیمگیرندگان فراهم میسازند و داشتن یک نقش حمایتی به جای جایگزینی کامل افراد در روند اخذ تصمیم، از اهداف اصلی آنهاست] ۱۲[، اما نمی توان آنها را به عنوان یک همیار هوشمند برای تصمیمگیرندگان در نظر گرفت. سیستمهای تصمیمهمیار هوشمند، برای مسائل عمومیایی که به تصمیم گیریهای مکرر نیاز دارند، مفید و از لحاظ اقتصادی مقرون به صرفه هستند. این سیستمهای محاورهایی مبتنی بر کامپیوتر، برای حل مسائل نیمه ساختیافته، از، ترکیب داده و دانش تخصصی و مدلهایی که برای حمایت از تصمیمگیرندگان در سازمانها بکار میرود، با تکنیکهای هوش مصنوعی، استفاده می کنند] ۵۰[.
تعاریف مختلفی از تفاوتهای میان یک سیستم تصمیمهمیار و یک سیستم تصمیمهمیار هوشمند وجود دارد که این امر به دلیل وجود انواع مختلف سیستمهای تصمیمهمیار هوشمند میباشد. در این سیستمها، عملکرد هوشمندانه در تصمیم گیری، با بهبودهایی نظیر ارتقاء سیستم مدیریت پایگاه مدل و یا تقویت فاصل کاربر با بهره گرفتن از تکنیکهای گوناگون هوش مصنوعی مانند پردازش زبان طبیعی و یا سایر تکنیکهای مشابه، میسر شده است. همچنین، این نوع از سیستمها با حمایت از مسائلی با عدم قطعیت، امکان پشتیبانی از محدوده وسیعتری از تصمیمات را فراهم ساخته و میتوانند قلمروهایی را کنترل و مدیریت نمایند که در آنها روند تصمیم گیری پیچیدهتر بوده و علاوه بر مهارت و خبرگی، به ارزیابی اثر راهحل پیشنهادی نیز نیاز دارد. از دیگر مزایای سیستمهای تصمیمهمیار هوشمند نسبت به سیستمهای تصمیمهمیار، بهبود سازگاری در تصمیمات، بهبود تشریح و تفسیر و توجیه پیشنهادات ارائه شده توسط سیستم میباشد] ۱۹[.
Holsapple و Whinston از اولین محققانی بودند که به طراحی و مطالعه سیستمهای تصمیمهمیار هوشمند، پرداختند] ۵۱[. آنها مشخصههای زیر را برای این سیستمها پیشنهاد دادند:
این سیستمها شامل انواع مختلف دانش که نمودهای انتخاب شدهایی از دنیای تصمیمگیرنده را توصیف می کنند، میباشند.
این سیستمها دارای توانایی بدست آوردن و نگهداری دانش توصیفی[۲] مانند نگهداری رویداد[۳] و انواع دیگر دانش هستند.
این سیستمها میتوانند دانش را به شیوه های مختلف تولید نموده و ارائه دهند.
آنها میتوانند دانشی را برای ارائه یا بدست آوردن دانش جدید، انتخاب نمایند.
این سیستمها میتوانند به صورت مستقیم (هوشمند) با تصمیمگیرنده در ارتباط باشند.
اگرچه این سیستمها حامیانی هوشمند و انسانگونه در روند تصمیم گیری هستند، اما تصمیمگیرندگان باید تصمیمات نهایی و بحرانی را خود اتخاذ نمایند.
هدف از این پایان نامه
هدف از این پایان نامه، ارائه یک سیستم تصمیمهمیار هوشمند است که در هنگام وقوع ناسازگاری، برای هر یک از قوانین ناسازگار، یک خط استنتاج مجزا را در نظرگرفته و با پیشبرد استنتاج در هر یک از این خطوط، امکان آگاهی از نتایج انتخاب هر یک از راه حلهای ممکن را برای تصمیمگیرنده فراهم میسازد. این سیستم، یک سیستم مبتنی بر قانون است که به منظور یارینمودن یک بازیکن در یک بازی استراتژیک بلادرنگ طراحی و پیادهسازی شده است.
در این پژوهش، روشهای گوناگونی که به منظور رفع ناسازگاری در سیستمهای هوشمند بکار برده شده و نیز ساختارهای مختلفی که برای سیستمهای تصمیمهمیار هوشمند مورد استفاده قرار گرفته، بررسی و ارائه شده است.
نگاه کلی به فصول پایان نامه
مطالب عنوان شده در این پایان نامه در قالب هفت فصل آورده شدهاند. در فصل دوم، روشهای گوناگون رفع ناسازگاری شرح داده شده و فصل سوم به بیان ساختارهایی که برای سیستمهای تصمیمهمیار هوشمند در تحقیقات مختلف ارائه شده، می پردازد. در فصل چهارم بازیهای کامپیوتری استراتژیک بلادرنگ معرفی و ویژگیهای سیستمهای مربوط به این نوع از بازیها مطرح شده است. فصل پنجم، ساختار و مولفههای سیستم پیشنهادی و نیز روش رفع ناسازگاری بکار برده شده در این سیستم را شرح میدهد. ارزیابی سیستم پیشنهادی و نتایج آن در فصل ششم آورده شده و فصل انتهایی نیز به نتیجه گیری و ارائه کارهای آیندهی می پردازد.
فصل دوم
روشهای رفع ناسازگاری
روشهای رفع ناسازگاری
مقدمه
رفع ناسازگاری، یک استراتژی، جهت انتخاب ترتیب اجرای قوانین است هنگامی که بیش از یک قانون بتواند اجرا شود. به طورکلی، در سیستمهایی که رفع ناسازگاری در روند استنتاج آنها صورت میگیرد، موتور استنتاج یک رویهی سه مرحلهایی شناسایی- رفع - عمل را بر روی مجموعه قوانین اعمال می کند [۱]:
شناسایی: تشخیص قوانینی که میتوانند اجرا گردند و قراردادن آنها در مجموعه ناسازگاری.
رفع: استفاده از یک استراتژی به منظور انتخاب یک قانون از مجموعه ناسازگاری.
عمل: اجرای قانون منتخب و افزودن نتایج آن به حافظه کاری[۴].
در استراتژی های رفع ناسازگاری، لیست اجرا[۵]، فهرستی از تمامی قوانینی است که شرایط آنها ارضاء شده ولی هنوز اجرا نشدهاند. این لیست، همانند یک پشته[۶] عمل می کند و قانونی که در بالای آن قرار دارد، پیش از سایر قوانین موجود در آن اجرا میگردد. یک استراتژی رفع ناسازگاری، ترتیبی را برای اجرای قوانین موجود در لیست اجرا با اولویت یکسان تعیین مینماید.
در این فصل در رابطه با روشهایی که به منظور رفع ناسازگاری در سیستمهای مختلف بکار برده می شود، توضیحاتی ارائه شده است. این توضیحات، در ابتدا استراتژی های سادهتر و در ادامه روشهایی با پیچیدگی بیشتر را شرح میدهد.
برخی استراتژی های ساده برای رفع ناسازگاری
به طور کلی به منظور رفع ناسازگاری در بسیاری از سیستمها، از روشهای سادهایی استفاده شده که در ادامه در رابطه با هر یک از این استراتژیها توضیحات مختصری ارائه میگردد [۱]:
استراتژی تصادفی: در این استراتژی، به هر فعالسازی[۷]، یک عدد تصادفی نسبت داده می شود که به منظور تعیین مکان قرارگیری آن فعالسازی، در میان فعالسازیهایی با اولویت یکسان، بکار برده خواهد شد. در برخی از سیستمها، این عدد تصادفی هنگامی که استراتژی تغییر مییابد نیز نگاه داشته می شود تا در هنگام انتخاب مجدد این استراتژی ترتیبی مشابه، تولید گردد.
استراتژی عمقی: در این استراتژی، قوانینی که بتازگی فعال شده اند، در لیست اجرا، در بالای تمامی قوانین با اولویت یکسان قرار میگیرند. به عنوان مثال، فرض کنید در یک مجموعه قوانین و حقایق، حقیقت fact-a منجر به فعالسازی قوانین rule-1 و rule-2 گردد و حقیقت fact-b منجر به فعالسازی قوانین rule-3 و rule-4 گردد. حال اگر حقیقت fact-a پیش از حقیقت fact-b وارد سیستم گردد، قوانین rule-3 و rule-4 در بالای قوانین rule-1 و rule-2 در لیست اجرا قرار خواهند گرفت. مکان rule-1 نسبت به rule-2 و rule-3 نسبت به rule-4، قراردادی خواهد بود.
استراتژی عرضی: در این استراتژی، قوانینی که بتازگی فعال شده اند، در پایین تمامی قوانین با اولویت یکسان قرار میگیرند. به عنوان مثال، فرض کنید در یک مجموعه قوانین و حقایق، حقیقت fact-a منجر به فعالسازی قوانین rule-1 و rule-2 گردد و حقیقت fact-b منجر به فعالسازی قوانین rule-3 و rule-4 گردد. حال اگر حقیقت fact-a پیش از حقیقت fact-b وارد سیستم گردد، قوانین rule-1 و rule-2 در بالای قوانین rule-3 و rule-4 در لیست اجرا قرار خواهند گرفت. در این روش نیز مکان rule-1 نسبت به rule-2 و rule-3 نسبت به rule-4، قراردادی خواهد بود.
استراتژی سادگی[۸]: در این استراتژی، در میان قوانین با اولویت یکسان، قوانینی که بتازگی فعال شده اند، در بالای تمامی قوانین فعالشده با مشخصه[۹]ی یکسان و یا بیشتر، قرار میگیرند. مشخصهی یک قانون با تعداد مقایسههایی که باید در قسمت سمت چپ[۱۰] یک قانون انجام گیرد، تعیین می شود. هر مقایسه با یک ثابت و یا متغیرهایی که سابقاً مقید شده اند، یک واحد به مشخصهی قانون میافزاید. همچنین هر فراخوانی تابع که در قسمت سمت چپ یک قانون انجام گیرد، نیز مشخصهی قانون را یک واحد افزایش میدهد. توابع بولی and، or و not، مشخصهی یک قانون را تغییر نمیدهند، اما آرگومانهای آنها سبب تغییر مشخصه میگردند. فراخوانی توابع در صورتی که در داخل یک فراخوانی تابع صورت گیرند نیز سبب افزایش مشخصه نمیگردند. به عنوان مثال مشخصهی قانونی که در زیر تعریف شده است، ۵ میباشد.
مقایسه با یک ثابت، مقایسه متغیر ورودی x با انقیاد قبلی آن و فراخوانی توابع numberp، < و >، هر یک، یک واحد به مشخصهی قانون میافزاید و فراخوانی توابع and و + تاثیری در مقدار مشخصه نخواهد داشت.
استراتژی پیچیدگی[۱۱]: در این استراتژی، در میان قوانین با اولویت یکسان، قوانینی که بتازگی فعال شده اند، در بالای تمامی قوانین فعالشده با مشخصهی یکسان و یا کمتر، قرار میگیرند.
استراتژی LEX[12]: در این استراتژی در ابتدا، تازگی (تأخر)[۱۳] نهاد الگوهایی[۱۴] که منجر به فعالسازی قانون شده اند، به منظور تعیین مکان قرارگیری قانون فعالشده، بکار برده میشوند. هر حقیقت و نمونه[۱۵]، ذاتا ً با یک “برچسب زمان” که نشاندهنده تازگی نسبی آن در مقایسه با هر حقیقت و یا نمونه دیگری در سیستم است، نشانهگذاری میگردد. نهاد الگوهای مربوط به فعالسازی هر قانون به منظور تعیین مکان قرارگیری، به ترتیب نزولی مرتب میگردند. یک فعالسازی با نهاد الگوهایی با تازگی بیشتر، پیش از فعالسازیهایی با نهاد الگوهایی با تازگی کمتر قرار میگیرد. برای تعیین ترتیب قرارگیری دو فعالسازی، برچسبهای زمان مرتب شده دو فعالسازی، با شروع از دو بزرگترین برچسب زمان، یک به یک مقایسه میگردند. این مقایسه باید تا هنگامی که برچسب زمان یک فعالسازی، بزرگتر از برچسب زمان متناظر با آن از فعالسازی دیگر، باشد ادامه یابد. فعالسازی با برچسب زمان بزرگتر پیش از سایر فعالسازیها در لیست اجرا قرار میگیرد. اگر یک فعالسازی نهاد الگوهای بیشتری نسبت به سایر فعالسازیها داشته باشد و برچسب زمانهای مقایسه شده، همگی مساوی باشند، فعالسازی با برچسب زمانهای بیشتر پیش از سایر فعالسازیها در لیست اجرا قرار میگیرد. اگر دو فعالسازی دارای تازگی دقیقاً مساوی باشند، فعالسازی با مشخصهی بیشتر در بالای فعالسازی با مشخصهی کمتر قرار میگیرد. برچسب زمان یک عامل شرطی not، کمتر از برچسب زمان یک نهاد الگو میباشد.
به عنوان نمونه، شش فعالسازی زیر را در نظر بگیرید (کاما در پایان هر فعالسازی نشاندهنده حضور یک عامل شرطی not میباشد). در این مثال فرض بر این است که برچسب زمان حقایق، مشابه با اندیس آنها باشد.
لیستی که در زیر آمده، ترتیبی است که استراتژی LEX برای اجرا در نظر میگیرد.
برطبق این استراتژی، ترتیب اجرای قوانین از بالا به پایین خواهد بود.
استراتژی MEA[16]: در این استراتژی در ابتدا، برچسب زمان اولین نهاد الگوی مربوط به اولین الگو، به منظور تعیین مکان قرارگیری قانون فعالشده، بکار برده می شود. فعالسازیایی که برچسب زمان اولین الگوی آن بزرگتر از برچسب زمان اولین الگوی سایر فعالسازیها باشد، پیش از سایر فعالسازیها در لیست اجرا قرار میگیرد. اگر دو فعالسازی دارای دو برچسب زمان متناظر با اولین الگوی مساوی باشند، از استراتژی LEX برای تعیین مکان قرارگیری فعالسازیها استفاده میگردد. به عنوان مثال، ترتیبی که این استراتژی برای اجرای شش فعالسازی مثال قبل در نظر میگیرد، به صورت زیر (از بالا به پایین) خواهد بود.
رفع ناسازگاری با بهره گرفتن از یک مقدار سودمندی
از جمله استراتژی های دیگری که برای رفع ناسازگاری بکار برده می شود، استفاده از یک مقدار سودمندی[۱۷] است. در این روش که در ساختار شناختی[۱۸] ACT-R نیز اعمال شده [۲]، به هر قانون i، یک مقدار سودمندی Ui نسبت داده می شود و در هنگام وقوع ناسازگاری، قانون با بیشترین مقدار Ui انتخاب میگردد (). این مقدار سودمندی برای هر قانون به صورت زیر تعریف میگردد:
(۲-۱)
که در آن، Pi احتمال پیش بینی شده برای تحقق هدف پس از اجرای قانون i، Ci میانگین هزینه قانون (میانگین مدت زمان لازم برای رسیدن به هدف)، G پارامتر مقدار هدف (که معمولا بر حسب واحدهای زمانی اندازه گیری می شود) و مقدار پیش بینی شده برای نویز هدف میباشد. یک عدد تصادفی است که از یک توزیع نرمال با میانگین صفر و واریانس بدست می آید. این روش رفع ناسازگاری، مشخصههای حل مسئله توسط انسان مانند احتمال تطبیق و تاثیر انتخاب را مدل می کند. در حقیقت، سودمندی، تابعی از احتمال موفقیت و مقدار هدف میباشد.
نویز ξ در رفع ناسازگاری، کاندید مناسبی برای مدلسازی سطوح مختلف خبرگی است. بررسیهای صورت گرفته [۳] نشان میدهد که با افزایش واریانس نویز ، یک مدل حل مسئله خبره ممکن است مانند یک مدل حل مسئلهی بیتجربه رفتار کند.