چکيده
امروزه، روش هاي هوش مصنوعي نه تنها كاربرد در مسائل مربوط به زبان شناسي، پردازش تصوير، رباتيكز
دارند، بلكه درزمينه هاي نرم افزاري و طراحي سيستم هاي بهينه نيز راه يافته اند. طراحي يك نرم افزار خوب و
نگهداري آن، يكي از دغدغه هاي اصلي برنامهنويسان است. نرم افزار خوب نرم افزاري است كه در برابر تغييرات
انعطاف پذير و قابل استفاده ي مجدد باشد و همچنين قابليت نگهداري بالايي داشته باشد. متأسفانه دلايلي
همچون هزينه بالا، كمبود وقت و سهل انگاري برنامهنويسان اغلب منجر به ايجاد ساختارهاي پيچيده و سخت
در سيستم هاي نرم افزاري مي شود. وجود چنين ضدالگوهايي در سيستم هاي نرم افزاري منجر به عدم توانايي
نگهداري آن سيستم ها در برابر تغييرات و درنهايت باعث از بين رفتن آن سيستم در بازه ي بلندمدت مي شود.
به خاطر همين موضوع شناسايي درست و دقيق ضدالگوهاي نرم افزاري در سيستم ها جزو يكي از مهم ترين
مباحث پژوهش در 01 سال اخير در حوزه ي هوش مصنوعي شده است كه نه تنها منجر به افزايش دقت
شناسايي ضدالگوها شده بلكه به برنامه نويسان امكانات جديدي را براي تصحيح و بازسازي ضدالگوهاي موجود
در سيستم مي دهد.
در ايننن پننژوهش روش هنناي شناسننايي ضنندالگوهاي نننرم افننزاري بننا رويكننرد هننوش مصنننوعي مننرور و
طبقه بندي شده اند و همچنين مزايا و معايب اين كارها موردبررسي قرارگرفته اند. هدف از اين پنژوهش نانان
دادن نياز تحقيقات بياتر در اين زمينه و همچنين انگيزه دادن براي ارائه روش هاي هوش مصنوعي اي اسنت
كه نه تنها باعث شناسايي ساده تر و دقيق تر ضدالگوهاي ننرم افنزاري شنوند بلكنه نگاشنت بهتنري از سناختار
پيچيده ي كد ارائه دهند و هوشمندانه تر فرايند شناسايي را انجام دهند.