الگوریتم ها در کامپیوتر ها اعمال مشخص و واضحی هستند که بصورت پی در پی و در جهت رسیدن به هدف خاصی انجام می شوند.حتی در تعریف الگوریتم این گونه آمده است که الگوریتم عبارت است از مجموعه ای ازاعمال واضح که دنبال ای از عملیات را برای رسیدن به هدف خاصی دنبال می کنند.آنچه در این تعریف خود نمایی می کند کلمه دنباله می باشد که به معنای انجام کار ها بصورت گام به گام می باشد. این امر مشخص می کند که همه چیز در الگوریتم های سنتی باید قدم به قدم برای کامپیوتر مشخص و قابل فهم و درک باشد.حتی در اولین الگوریتمهای هوش مصنوعی نیز بر همین پایه و کار قدم به قدم بنا نهاده شده اند.
در اواخرقرن بیستم رویکرد به الگوریتم های جدید صورت گرفت که علتهای مختلفی داشت مثل حجیم بودن میزان محاسبات برخی مسایل و بالا بودن مرتبه زمانی الگوریتم های سنتی در مورد این مسایل باعث شد نیاز به الگوریتمهای جدید احساس شود.همچنین برخی کارهای انسان که هنوز قابل انجام توسط کامپیوتر نبودندو یا به بخوبی توسط کامپیوتر انجام نمی شدند باعث این رویکرد شد.
مهمترین الگوریتمهای جدید عبارتند از :1- شبکه های عصبی 2- منطق فازی 3- محاسبات تکاملی
شبکه عصبی چیست ؟
این سوال که آیا انسان توانا تر است یا کامپیوتر موضوعی است که ذهن بشر را به خود مشغول کرده است.
اگر جواب این سوال انسان است چرا کامپیوتر اعمالی مانند جمع و ضرب و محاسبات پیچیده را در کسری از ثانیه انجام می دهد، حال آنکه انسان برای انجام آن به زمان زیادی نیازمند است. واگر جواب آن کامپیوتر است چرا کامپیوتر از اعمالی مانند دیدن و شنیدن که انسان به راحتی آنها را انجام می دهدعاجزاست.جواب این مسئله را باید در ذات اعمال جستجو کرد . اعمال محاسباتی اعمالی هستند سریالی و پی در پی به همین دلیل توسط کامپیوتر به خوبی انجام می شوند.حال آنکه اعمالی مانند دیدن وشنیدن کارهای هستند موازی که مجمو عه ای از داده های متفاوت و متضاد در آنها تفکیک و پردازش می شوندو به همین دلیل توسط انسان به خوبی انجام می شوند. در واقع مغز انسان اعمال موازی را به خوبی درک و آنها را انجام می دهدو کامپیوتر اعمال سریالی را بهتر انجام می د هد.حال باید دیدآیا می توان این اعمال موازی و در واقع ساختار مغز انسان را به نوعی در کامپیوتر شبیه سازی کرد و آیا می توان امکان یادگیری که از جمله توانایی های انسان است به نوعی در کامپیوتر مدل سازی نمود.این کار به نوعی در انسان هم انجام می شود و زمان انجام آن عمدتا در کودکی است.به عنوان مثال یک کودک ممکن است یک شی مانند چکش را نشناسد اما هنگامی که آن را می بیند واسم آن را یاد می گیرد و سپس چند چکش متفاوت را می بینداین شی را بخوبی می شناسدو اگر بعد از مدتی چکشی را که تا کنون آن را ندیده است ببیند به راحتی تشخیص می دهد که شی مورد نظر یک چکش است و تنها از نظر جزئیات با چکش های مشابه که قبلا دیده است تفاوت دارد.
لازم به ذکر است که شبکه های عصبی تنها در یادگیری کاربرد ندارند، بلکه تمام مسائل جدید وکلاسیک توسط آنها قابل حل می باشد.اما آنچه شبکه های عصبی بدان نیازمند است مثالها و نمونه های مفید وکافی است که بتواند به خوبی فضای مسئله را پوشش دهند.حال باید دیدچگونه می توان شبکه عصبی انسان را به نوعی شبیه سازی نمود، برای این کار نخست به ساختار مغز و سیستم عصبی انسان نگاهی گذرا می اندازیم.
مغز انسان یکی از پیچیده ترین اعضای بدن است که تا کنون نیز به درستی شناخته نشده است و شاید اگر روزی به درستی شناخته شودبتوان شبیه سازی بهتری از آن انجام داد و به نتایج بهتری درباره هوش مصنوعی رسید.تحقیقات در مورد شبکه های عصبی نیز از زمانی آغاز شد که رامون سگال درباره ساختار مغز و اجزای تشکیل دهنده آن اطلاعات و نظراتی ارائه کرد. او در اوایل قرن بیستم مغز را به عنوان اجتماعی از اجزای کوچک محاسباتی دانست و آنها را نرون نامید.امروزه ما می دانیم که بیشتر فعالیتهای انسان را نرونها انجام می دهندو در کوچکترین فعالیتهای حیاتی انسان مانند پلک زدن نیز نقش حیاتی و اساسی دارند.این نکته هم بسیار جالب است بدانید که در بدن ما حدود نرون وجود دارد که هر کدام از این نرونها با نرون دیگر در ارتباط هستند.نرونها شکلها و انواع مختلفی دارند، اما به طور عمده در سه دسته تقسیم بندی می شوند. اما نرون ها از نظری دیگر به دو دسته تقسیم می شوند:1- نرونهای داخلی مغز که در فاصله های حدود 100میکرون به یکدیگر متصلند ونرونهای خارجی که قسمتهای مختلف مغز را به یکدیگر و مغز را به ماهیچه ها و اعضای حسی را به مغز متصل می کنند.اما همانطور که گفتیم نرونها از نظری دیگر به سه دسته تقسیم می شوند که عبارتند از:
1- نرونهای حسی : کاری که این نرونها انجام می دهند این است که اطلاعات را از اندام های حسی بدن به مغز و نخاع می رسانند.
2- نرونهای محرک :این نرونهافرمانهای مغز و نخاع را به ماهیچه ها و غدد و سایر اندام های حسی و تحت فرمان مغز می رسانند.
3- نرونهای ارتباطی : این نرونها مانندیک ایستگاه ارتباطی بین نرونهای حسی ونرونهای محرک عمل می کنند .
گفتنی است که نرون ها در همه جای بدن هستند وبه عنوان عنصر اصلی مغز محسوب می شوندوبه تنهایی مانند یک واحد پردازش منطقی عمل می کنند نحوه عملیات نرون بسیار پیچیده است و هنوز در سطح میکروسکوپی چندان شناخته شده نیست ، هر چند قوانین پایه آن نسبتا روشن است. هر نرون ورودی های متعددی را پذیرا است که با یکدیگر به طریقی جمع می شوند. اگر در یک لحظه تعداد ورودی های فعال
نرون به حد کفایت برسدنرون نیز فعال شده و آتش می کند. در غیر این صورت نرون به صورت غیر فعال و آرام باقی می ماند.حال به بررسی اجزاءخود نرون می پردازیم:
نرون از یک بدنه اصلی تشکبل شده است که به آن سوما گفته می شود. به سوما رشته های نا منظم طولانی متصل است که به آنها دندریت می گویند. قطر این رشته ها اغلب از یک میکرون نازکتر است و اشکال شاخه ای پیچیده ای دارند.شکل ظریف آنها شبیه شاخه های درخت بدون برگ است که هر شاخه بارها وبارها به شاخه های نازکتری منشعب می شود.دندریت ها نقش اتصالاتی را دارندکه ورودی هارا به نرون ها می رساند.این سلولها می توانندعملیاتی پیچیده تر از ععملیات جمع ساده را بر ورودی های خود انجام دهند، از این رو عمل جمع ساده را می توان به عنوان تقریب قابل قبولی از عملیات واقعی نرون به حساب آورد.
یکی از عناصر عصبی متصل به هسته نرون آکسون نامیده می شود.این عنصر بر خلاف دندریت از نظر الکتریکی فعال است و به عنوان خروجی نرون عمل می کند. آکسون همیشه در روی خروجی سلولها مشاهده می شوند لیکن اغلب در ار تباط های بین نرونی غایب اند.در این مواقع خروجی ها و ورودی ها هر دو بر روی دندریت هاواقع می شوند. آکسون وسیله ای غیر خطی است که در هنگام تجاوز پتانسیل ساکن داخل هسته از حد معینی پالس ولتاژی را به میزان یک هزارم ثانیه ، به نام پتانسیل فعالیت ، تولید می کند. این پتانسیل فعالیت در واقع یک سری از پرش های سریع ولتاژ است.رشته آکسون در نقطه تماس معینی به نام سیناپس قطع می شود ودر این مکان به دندریت سلول دیگر وصل می گردد. در واقع این تماس به صورت اتصال مستقیم نیست بلکه از طریق ماده شیمیایی موقتی صورت می گیرد.سیناپس پس از آنکه پتانسیل آن از طریق پتانسیل های فعالیت در یافتی از طریق آکسون به اندازه کافی افزایش یافته از خود ماده شیمیایی منتقل کننده عصبی ترشح می کند.برای این ترشح ممکن است به دریافت بیش از یک پتانسیل فعالیت نیاز باشد. منتقل کننده عصبی ترشح شده در شکاف بین آکسون ودندریت پخش می شودو باعث می گرددمی گردد که دروازه های موجود در دندریت ها فعال شده و باز شود و بدین صورت یون های شارژ شده وارد دندریت می شوند. این جریان یون است که باعث می شود پتانسیل دندریت افزایش یافته و باعث یک پالس ولتاژ در دندریت شودکه پس از آن منتقل شده و وارد بدن نرون دیگر می گردد. هر دندریت ممکن است تحت تأثیرتعداد زیادی سیناپس باشد وبدین صورت اتصالات داخلی زیادی را ممکن می سازد. در اتصالات سیناپسی تعداد دروازه های باز شده بستگی به مقدار منتقل کننده عصبی آزاد شده داردو همچنین به نظر می رسدکه پاره ای سیناپس ها باعث تحریک دندریت ها می شوند در صورتی که پاره ای سیناپس ها دندریت ها را از تحریک باز می دارند. این به معنای تغییر پتانسیل محلی دندریت ها در جهت مثبت یا منفی می باشد.یک نرون خود به تنهایی می تواند دارای ورودی های سیناپسی متعددی در روی دندریت های خود باشد و ممکن است با خروجی های سیناپسی متعددی به دندریت های نرون دیگر وصل شود.
یادگیری در سیستم های بیولوژیک
تصور می شود یادگیری هنگامی صورت می گیرد که شدت اتصال یک سلول و سلول دیگر در محل سیناپس ها اصلاح می گردد.به نظر می رسد که این مقصود از طریق ایجاد سهولت بیشتر در میزان آزاد شدن
ناقل شیمیایی حاصل می گردد. این حالت باعث می شود که دروازه های بیشتری روی دندریت های سمت مقابل باز شود و به این صورت باعث افزایش میزان اتصال دو سلول شود. تغییر میزان اتصال نرون ها به صورتی که باعث تقویت تماس های مطلوب شود از مشخصه های مهم در مدل های شبکه های عصبی است.