هوش مصنوعی چیست؟

هوش مصنوعی چیست؟

Image result for ai

 

 

هوش مصنوعی چیست؟

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

هوش مصنوعی، هوش ماشین هاست! در واقع شاخه ای از علوم کامپیوتر است که قصد دارد راه حل های الگوریتمی را ارائه کند تا بتوانیم به وسیله آنها در ماشین ها هوشمندی ایجاد کنیم. اما این تعریف کافی نیست؛ اول از همه باید بدانیم که تعریف هوشمندی چیست و بعد باید منظور از ماشین را دربیابیم:

استدلال، منطق، تصمیم گیری ؛ این ها توانایی هستند که شما از آنها استفاده می کنید. پس شما هوشمند هستید. اگر این توانایی ها را در کامپیوتر هم ایجاد کنیم، آنگاه به ماشین هوشمند دست می یابیم! به همین سادگی … ولی به جز این ها چیز های دیگری هم در رابطه با تعریف هوشمندی وجود دارند که دانستن آنها را می توان مهم ارزیابی کرد. در واقع بحث هایی که در مورد هوشمندی و هوش مصنوعی مطرح شده است؛ تنها به دوره ی امروزه ی ما و قرن ۲۱ مربوط نمی شود، بلکه از سال ۱۹۵۰ این مباحث به طور جدی مطرح شد

– پیشینه ی هوش مصنوعی:

باید گفت که از این نظر هوش مصنوعی یکی از غنی ترین تاریخ ها را دارد، منتها در قصه ها!  ماشین ها و مخلوقات مصنوعی باشعور، اولین بار در افسانه های یونان باستان مطرح شدند. شبه انسان ها باور داشتند که باید یک تمدن بزرگ را تشکیل دهند؛ تندیس ها و مجسمه های انسان نما در مصر و یونان به حرکت در آمده بودند و … حتی در مواردی این قصه ها، پای جابر بن حیّان و چند تن دیگر را هم به سازندگان موجودات مصنوعی باز کردند.

از قصه ها که بگذریم ؛ فیلسوف ها و ریاضی دان ها از مدت ها پیش مباحث مربوط به استدلال و منطق را پیش کشیدند و امروزه این مباحث به صورت قرار دادی، به رسمیت پذیرفته شده است. این گونه منطق ها اساس کامپیوتر های دیجیتال و برنامه پذیر شده اند. یکی از افرادی که نقش اساسی و مهمی در این مورد ایفا کرد آقای آلن تورینگ بود

نظریه تورینگ:

تئوری تورینگ مبتنی بر این بود که می توانیم با استفاده از نشانه ها و اعدادی مانند ۰ و ۱، هر استدلال ریاضی ای را در کامپیوتر عملی کنیم. همزمان با این نظریه کشف های تازه ای در زمینه ی عصب شناسی، نظریه اطلاعات و فرمانشناسی، به وقوع پیوسته بود. این پیشرفت ها الهام بخش گروهی کوچک از پژوهشگران شد تا به طور جدی به مساله ایجاد یک مغز الکترونیکی رسیدگی نمایند

– تست تورینگ:

در سال ۱۹۵۰، آلن تورینگ مقاله ای را در رابطه با هوش مصنوعی منتشر ساخت که بعد ها به تست تورینگ مشهور شد. در این مقاله عنوان شده بود که اگر فردی از پشت یک دیوار یا هر چیز جدا کننده دیگری، با کامپیوتر مکالمه کتبی داشته باشد و نداند که طرف مقابلش انسان نیست و پس از پایان مکالمه نیز متوجه این موضوع نشود، آنگاه می توان کامپیوتر را ماشینی هوشمند نامید زیرا توانسته است که در برابر یک انسان به اندازه کافی از استدلال و منطق استفاده کند. تست تورینگ تا حدی توانست هوش مندی را توجیه کند ولی فقط ((تا حدی))! اما از آن زمان تا کنون ماشینی اختراع نشده است که توانسته باشد این تست را با موفقیت بگذراند. هر چند زبان AIML ابداع شد، اما این زبان هرگز به این حد از هوش مصنوعی دست نیافت.

تیمی که در زمینه هوش مصنوعی تحقیق می کردند، در تابستان سال ۱۹۵۶، کنفرانسی را در محوطه کالج دارتموس برگزار کردند. این کنفرانس به همراه افرادی مانند جان مک کارتی، ماروین مینسکی، آلین نویل و هربت سیمون که برای دهه ها پیشتازان تحقیق برای هوش مصنوعی بودند انجام شد. آنها و دانش آموزان آنها، برنامه ای نوشته بودند که حقیقتا برای عده زیادی از مردم شگفت آور بود. این برنامه می توانست مشکلات نوشتاری در جبر را حل کند، استدلال های منطقی را اثبات کند و به زبان انگلیسی سخن بگوید. در اواسط دهه ی ۱۹۶۰، بودجه سنگینی برای دایرکردن آزمایشگاه های تحقیقاتی در گرداگرد دنیا، از سوی حوزه ی دفاعی ایالات متحده آمریکا، اختصاص داده شد. پیشتازان هوش مصنوعی درباره آینده آن در جهان بسیار خوش بین بودند. هربت سیمون پیشبینی کرده بود که در مدت ۲۰ سال، کامپیوتر های هوشمند می توانند، هر کاری را که انسان انجام می دهد، انجام دهند. در واقع مشکلات بزرگی که در آن زمان برای ایجاد هوش مصنوعی وجود داشت، اساسا حل شده بود

مقایسه، استدلال و حل مسائل:

خیلی زود توسعه دهندگان هوش مصنوعی به این نتیجه رسیدند که باید در الگوریتم های خود از نحوه حل مساله ((گام به گام)) استفاده کنند. در واقع انسان ها هم معمولا برای حل مواردی از جمله: ساختن پازل و … از این روش استفاده می کنند. آنها همچنین توانستند که پس از دهه های ۸۰ و ۹۰ الگوریتم های موفقیت آمیزی را برای درک داده ها و اطلاعات نا کامل عرضه کنند که این الگوریتم ها از احتمالات، برای درک این اطلاعات استفاده می کردند.

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

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

نمایش معلومات:

نمایش معلومات و مهندسی معلومات مرکز توجه در پژوهش های هوش مصنوعی بودند. بسیاری از دستگاه های حل مساله برای حل مسائل نیازمند معلومات گسترده و وسیعی بودند این معلومات عبارت می شد از : شناختن اشیاء، خواص و اقلام- شناختن روابط بین اشیاء- درک موقعیت، نوع واقعه و زمان و مکان- علت ها و تاثیر عوامل و بسیاری چیز های دیگر…

و سخت ترین مشکلات درباره نمایش اطلاعات و معلومات عبارت بود از:

۱- استدلال پیش فرض و مسائل نسبی: دانسته ی یک فرد از یک چیز برابر است با پنداشت او از آن چیز، برای مثال وقتی نام پرنده به گوش کسی می خورد، معمولا یک موجود کوچک را به یاد می آورد با صدای زیبا و قابلیت پرواز؛ در حالی که این موضوع برای همه ی پرندگان صدق نمی کند. مثلا پنگوئن هیچکدام از این ویژگی ها را ندارد! جان مک کارتی این موضوع را به عنوان یک مسئله نسبی در سال ۱۹۶۹ کشف کرد. برای هر قضاوت صحیح (در تعریف عام) که محققان هوش مصنوعی، سعی در پیاده سازی آن داشتند، تعداد زیادی استثنا وجود داشت. بنابر این، آنها به این نتیجه دست یافتند که در قضاوت عام، نمی توان یک چیز را مطلقا درست یا غلط دانست بلکه همه چیز نسبی است. مثلا وقتی به شما می گویند که فلان شخص، خوب است یا بد؟ شما اول به مواردی توجه می کنید که مهم تر هستند و بر این اساس در مورد خوبی و بدی قضاوت می کنید. در حالی که هیچ کس مطلقا خوب یا بد نیست! در واقع شما اول به مواردی اهمیت می دهید که مهم تر است. محققان هوش مصنوعی هم با پیاده کردن چنین الگوریتمی توانستند این مشکلات را حل کنند.

۲- سطح وسیع اطلاعات مورد نیاز برای قضاوت عام: منظور از قضاوت عام، همان نحوه قضاوتی است که در بالا توضیح داده شد که شما به نکاتی که بیشتر اهمیت دارند، امتیاز بیشتری اختصاص می دهید و آنها را ملاک قضاوت خود قرار می دهید. اما این نوع قضاوت، شاید در زندگی روزمره ما کار عادی ای شده باشد؛ اما در واقع برای کامپیوتر این کار نیاز به اطلاعات پایه ای زیادی در زمینه هستی شناسی و شناخت ویژگی های موجودات دارد. محققان هوش مصنوعی می بایست، مفاهیم دقیق و پیچیده ای را با دست خود، به کامپیوتر می فهماندند. کار بزرگی که انجام شد این بود که توانستند کامپیوتر را قادر سازند که از منابع اطلاعاتی (نظیر اینترنت امروزی) ، مفاهیمی را کسب کند و از این راه به اطلاعات خود در این باره بیافزاید.

۳- استفاده از زبان Sub-Symbolic برای توضیح بعضی مفاهیم در قضاوت عام: بسیاری از معلوماتی که مردم دارند، چیز هایی است که نمی توان آن ها را تصویر کرد و یا توضیح داد. برای مثال یک شطرنج باز ماهر، از قرار دادن یک مهره در یک وضعیت خاص پرهیز می کند زیرا احساس می کند که این کار خطرناک است و یا یک کارشناس و منتقد هنری با نگاه کردن به یک مجسمه و یا یک نقاشی تشخیص می دهد که آن جعلی و تقلبی است. پیاده کردن چنین الگوریتم هایی با استفاده از زبان سمبلیک ممکن نبود و باید از زبان دیگری بر پایه Sub-Symbolic استفاده می شد. قبل از هر چیز باید، توضیح مختصری از این دو را به شما ارائه کنیم:

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

اما روش Sub-Symbolic تا حد زیادی متفاوت است. این روش از شبکه های عصبی برای پردازش اطلاعات استفاده می کند. این شبکه های عصبی از واحد های ورودی، واحد های پنهان و واحد های خروجی تشکیل شده اند که همگی با یکدیگر ارتباط دارند. این واحد ها گاهی سلول عصبی نیز، خطاب می شوند. همانطور که گفته شد، این سلول های عصبی با یک دیگر ارتباط دارند. اما چیزی که باید بدانید این است که اطلاعات در بین این ارتباطات، پردازش می شوند و بر این اساس ممکن است یک سلول عصبی در پردازش اطلاعات موثر و یا کم اثر باشد. در عوض، در شبکه های عصبی تمامی اجزا مهم تلقی می شود. چون هیچ کدام از آنها به تنهایی نمی توانند، اطلاعات را پردازش کنند ولی وقتی تمام اجزا با هم کار کنند، موجب ایجاد یک عملکرد هوشمند می شوند.

برای این که این روش را بهتر درک کنید، به این مثال توجه نمایید: یک مورچه تنها را در نظر بگیرید، طبعا نه کاری می تواند بکند و نه اثری دارد، اما وقتی مجموعه ای از این مورچه ها جمع می شوند و یک کلونی را تشکیل می دهند، آنگاه جامعه ای از آنها درست می شود که در کلیت، هوشمند و موثر است، به طوری که حتی ما هم با دانستن راز های زندگی جمعی مورچه ها، به فکر فرو می رویم! همین کار را هم می توان با شبکه های عصبي انجام داد و يک شبه مغز را ايجاد کرد.

– برنامه ریزی:

موجودات و به طور کلی، چیز های هوشمند، باید بتوانند هدف هایی را برای خود تعیین کرده و به آنها دست یابند. برای این کار اولا لازم است که تصوری از آینده خود داشته باشیم. یعنی وضع کنونی هدف مورد نظر را در نظر بگیریم و پیش بینی کنیم که تصمیماتی که خواهیم گرفت، چگونه می تواند بر آن تاثیر بگزارد. پس از این کار باید، برای رسیدن به بهترین نتیجه؛ از بین گزینه هایی که داریم، بهترین و سودمند ترین آنها را انتخاب نماییم.

پس تصمیم گیری و برنامه ریزی از این روش، کاری است که بدون هوشمندی، نمی توان آن را انجام داد و فقط موجودات هوشمند از پس آن بر می آیند!

در مسائل کلاسیکی که در مورد برنامه ریزی وجود داشت، عامل هوشمند می توانست فرض کند که تنها یک چیز (هدف مورد نظر) در جهان فعال است و احتمالا می توان نتیجه آن را تغییر داد. بنا بر این هدف مورد نظر تعیین می شد و برای آن راه حل هایی ارائه می گردید. همچنین عامل هوشمند – که میتواند برنامه و یا هر چیز دیگری باشد – به طور مرتب و دائمی چک می کرد که پیشگویی هایش درست باشد و اگر اینطور نبود، راه حل مورد نظر برای هدفش را تغییر می داد.

در این مورد می توانید یک روبوت را در نظر بگیرید که می خواهد از یک مسیر مارپیچ عبور نماید. این روبوت ابتدا هر یک از این مسیر ها را امتحان می کند و اگر هر کدام از آنها به بن بست، بر خورد، آن را به حافظه می سپارد تا دوباره تکرارش نکند و این عمل را آنقدر ادامه می دهد که راه خودش را بیابد! ( این يک تعریف بسيار ساده بود)

– یادگیری:

ایجاد امکان یادگیری برای ماشین ها، همواره از پژوهش های اصلی در زمینه ی هوش مصنوعی بوده است. یادگیری بدون نظارت: قابلیت یادگیری الگو ها، از اطلاعات ورودی را فراهم میکند. یادگیری نظارت شده هم، می تواند هردو امکان: طبقه بندی و عبرت عددی را ایجاد کند.

طبقه بندی این امکان را می دهد که کامپیوتر بتواند تشخیص دهد که چه چیز هایی را می توان در یک گروه خاص گنجاند. عبرت عددی (Regression takes) نیز به این صورت عمل می کند که بعد از دادن چیز هایی به عنوان ورودی به کامپیوتر و مشخص کردن خروجی دقیق آنها، کامپیوتر می تواند روابط بین ورودی و خروجی را کشف کرده و الگوریتم ها و توابع پیوسته ای را برای آنها تعیین کند. این روش برای به وجود آوردن الگوریتم های بسیار پیچیده، مفید خواهد بود.

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

اما چیزی که باید هم اکنون به آن اشاره کرد، عملیات تقویت یادگیری است. این کار به این صورت انجام می پذیرد که تئوری تصمیم گیری کامپیوتر آنالیز شده و برداشت های سودمند آن تئوری، مورد تاکید قرار می گیرند. در واقع کار های درست با تشویق (به صورت اولویت دادن) و کار های غلط با تنبیه (به صورت امتیاز منفی) پاسخ داده می شوند و به همین خاطر یادگیری کامپیوتر به طور مرتب بهبود می یابد.

یادداشت: آنالیز الگوریتم های یادگیری ماشین ها، شاخه ای از علوم نظری کامپیوتر است که با نام تئوری یادگیری کامپیوتری شناخته می شود.

پردازش زبان طبیعی:

پردازش زبان طبیعی یا Natural Language Processing، به ماشین های هوش مند این قابلیت را می دهد که زبان انسان ها را بخوانند و آنها را متوجه شوند. بسیاری از تحقیقات به این نتیجه رسید که برای ایجاد قدرت کافی برای سیستم پردازش زبان طبیعی، نیاز است که اطلاعات زیاد و کاملی را به این سیستم ارائه کنیم که می تواند با استفاده از خواندن متن های موجود در اینترنت انجام شود.

برنامه هایی که هم اکنون در زمینه پردازش زبان طبیعی درست عمل می کنند، از امکاناتی مانند: بازیابی اطلاعات، جستجو در متن ها و امکان ترجمه ماشینی بهره مند اند.

– حرکت و جا به جا کردن اجسام: تحقیقات در زمینه روبوتیک، بیش از هر چیزی به هوش مصنوعی وابسته است. روبات ها برای موارد بسیار زیادی نیاز به هوشمندی دارند که از جمله آنها می توان مواردی مانند: مسیر یابی ، جا به جا کردن، این که بدانند کجا هستند، این که درکی از محیط خود داشته باشند و بتوانند برای حرکت به سوی نقطه خاصی، برنامه ریزی نمایند و هدف خود را تعیین کنند. بدین ترتیب هوش مصنوعی برای روبات ها بسیار پر کاربرد است و تقریبا در تمام زمینه های ذکر شده از آن استفاده  می نمایند

ادراک:

درک ماشینی، به آنها این امکان را می دهد که بتوانند با استفاده از سنسور های ورودی خود، نظیر: دوربین، میکروفون ها و دیگر سنسور های عجیب و غریب (!) ؛ از محیط خود برداشت صحیحی داشته و بتواند محیط پیرامون خود را درک کند. در اصل، بینایی کامپیوتری این امکان را می دهد که کامپیوتر بتواند چیز هایی که می بیند را مورد تجزیه و تحلیل قرار دهد. چند مورد از آنالیز های معروف در روبات ها عبارت است از : آنالیز صحبت و صدا ها و تشخیص منظور، آنالیز چهره ها و تشخیص حالات آن ها. مانند: خشم، ناراحتی، خنده و … ، آنالیز اشیاء پیرامون و تشخیص آنها .

با استفاده از انواع آنالیز ها و تجزیه و تحلیل هایی که در بالا ذکر شدند، روبات ها قادر خواهند بود که بسیار هوشمند تر از قبل عمل کنند. مثلا در جا به جایی اجسام شیشه ای، دقت بیشتری کنند. برای کسی که ناراحت و عصبانی است، جک تعریف نکند! و سلام را با خدا حافظ پاسخ ندهد.

ابتکار وخلاقیت:

یکی از شاخه های مهم، هوش مصنوعی سعی در ایجاد قوه ی خلاقیت در کامپیوتر دارد. پیاده سازی ابتکار و خلاقیت در هوش مصنوعی، هم از نظر فلسفی و هم از نظر فیزیولوژی قابل توجیه می باشد. همچنین از نظر عملی هم با پیاده سازی یک الگوریتم مخصوص که خروجی هایی هوشمندانه و متفکرانه تولید نماید، امکان پذیر است. این شاخه معمولا با نام های: درک مصنوعی (Artificial Intuition) و پندار مصنوعی (Artificial Imagination) شناخته می شود.  برای پرهیز از پیچیده شدن مقاله، توضیح بیشتری نمی دهیم اما می توانید مباحث مربوط به این دو را نیز در سایت های دیگر دنبال نمایید

هوش عمومی:

برای پیاده سازی هوش عمومی روی کامپیوتر نیاز است که از تمامی توانایی های بالقوه ی هوش مصنوعی استفاده کنیم. برای مثال مترجم متن گوگل را در نظر بگیرید؛ می دانیم که این مترجم در حال حاضر با خطا های بسیاری رو به رو است. حال اگر بخواهیم که اشکالات کار ترجمه، حل شود؛ می توانیم از هوش عمومی استفاده نماییم: برای ترجمه خوب باید اول بفهمیم که نویسنده از چه استدلال ها و چه دلایلی برای مطرح کردن یک منظور خاص استفاده می کند.( به کار گیری جنبه درک استدلال و منطق)، همچنین باید بدانیم که موضوعی که درباره آن صحبت می شود چیست.(درک و جمع آوری اطلاعات). مرحله بعدی کار ما این است که مقصود نویسنده از جملات را پیدا کنیم؛ مثلا بفهمیم که دارد انتقاد می کند یا تعریف. (هوش اجتماعی). پس از این کار ها و در نظر گرفتن موارد فوق می توانیم به ترجمه یک متن بپردازیم.

 فرمان شناسی و شبیه سازی مغز:

در بین دهه های ۱۹۴۰ تا ۱۹۵۰، تعدادی از پژوهشگران توانستند، ارتباطی را بین علم عصب شناسی، نظریه اطلاعات و فرمان شناسی کشف کنند. نظریه اطلاعات، شاخه ای از ریاضیات کاربردی و مهندسی الکترونیک است که به تعیین و تعریف اطلاعات می پردازد. نظریه اطلاعات در ابتدا به بررسی راه حل هایی برای تعریف حد و حدود پردازش سیگنال ها می پرداخت و در کار هایی مانند فشرده سازی، ذخیره و رد و بدل کردن اطلاعات استفاده می شد. پس از آن، نظریه اطلاعات به سرعت وسعت پیدا کرد و اکنون در زمینه های گسترده ای از جمله پردازش زبان طبیعی، رمز گذاری و استنباط آماری استفاده می شود.

تعدادی از این پژوهشگران، به منظور پیاده سازی هوش مصنوعی (هر چند ناقص) در آن زمان، از شبکه های الکترونیکی استفاده کردند. پس از آن تحقیقات در این باره بیشتر هم شدند و معمولا در انجمن های علمی دانشگاه های پرینستون (Princeton) آمریکا و Ratio Club انگلستان، نتایج این تحقیقات ارائه می شد. با این که در این مورد، زحمت بسیاری کشیده شد، ولی در عمل، استفاده از روش های شبیه سازی به مغز، در آن زمان نتوانست راه به جایی ببرد و سر انجام در سال ۱۹۶۰ متوقف شد. زیرا تحقیقات بر روی این مساله علاوه بر این که بازدهی کمی داشتند، بسیار پر دردسر، پر هزینه، سخت و وقت گیر بودند پس استفاده از زبان سمبلیک، از همه ی جهات صرفه بیشتری نسبت به این مورد داشت

استفاده از زبان سمبلیک:

اواسط دهه ی ۱۹۵۰، زمانی بود که دسترسی به کامپیوتر های دیجیتالی عملا ممکن شده بود. در همان زمان بود که کاوش ها برای “ممکن کردن شبیه سازی هوش انسان در کامپیوتر با استفاده از سمبل ها و نماد ها”،  شروع شد. مرکز پژوهش ها در این زمینه روی چند دانشگاه مهم، متمرکز شده بود. یعنی دانشگاه های : ام آی تی، سی ام یو و استنفورد آمریکا. هر یک از این دانشگاه ها سعی داشتند تا سبک مخصوص به خود را در تحقیقات پیاده سازی کنند.

شبیه سازی شناختی شبیه سازی روش حل مساله توسط انسان ها:

هربت سیمون، اقتصاد دان و آلن نویل، مطالعه هایی در مورد توانایی حل مسئله توسط انسان ها انجام دادند و تلاش کردند که به مطالعه های خود رسمیت ببخشند. در واقع کار این دو فرد بود که اساس و بنیان هوش مصنوعی شد و تحقیقات جدی و پرثمری را در این باره پایه ریزی کرد. تیم تحقیقاتی آنها از نتایج آزمایشات روانشناختی انجام شده، استفاده می کرد تا بتوانند، برنامه هایی را طراحی کنند که شیوه حل مسائل توسط انسان ها را شبیه سازی نماید. (درک مساله، جمع آوری اطلاعات و آگاهی از جزئیات، پردازش اطلاعات ، حل مساله و آزمایش راه حل) مرکز تحقیقات در این مورد، دانشگاه سی ام یو بود. سر انجام این روش، پدید آمدن Soar بود که یک معماری نرم افزاری برای موارد این چنینی را عرضه می کرد.

در واقع اساس کار آنها در شبیه سازی شناختی، این بود که: سعی کنند؛ نحوه فکر، درک،شناخت و حل مسائل توسط انسان را در کامپیوتر شبیه سازی کنند تا بدین وسیله بتوانند، رفتار کامپیوتر را به انسان که نزدیک کنند

روش مبنی بر منطق:

برخلاف هربت سیمون و آلن نویل؛ جان مک کارتی احساس می کرد که ماشین ها نیازی به شبیه سازی نحوه فکر انسان ها ندارند! بلکه در عوض باید سعی کنیم تا ماهیت و اساس، استدلال و حل مسائل را بیابیم و نیازی نیست، توجه کنیم که آیا انسان ها دقیقا از همان روش ها برای استدلال خود کمک می گیرند یا خیر.

آزمایشگاه او در دانشگاه استنفورد، تحقیقاتش را روی استفاده از منطق قراردادی برای حل انواع و اقسام مسائل متمرکز کرده بود. همچنین تحقیقات و یافته های این آزمایشگاه شامل روش هایی برای پیاده سازی: نمایش اطلاعات، برنامه ریزی و یادگیری می شد. منطق قرار دادی شامل قوانین منطقی ای می شود که به اثبات رسیده اند، مانند قوانین دمورگان و …. (ترکیب های فصلی، عطفی،شرطی، دو شرطی و …)

تحقیقات متمرکز این تیم در دانشگاه ادینبرگ منجر به گسترش علوم مربوط به برنامه نویسی منطقی (Logic Programming) و پدید آمدن زبانی به نام پرولُگ (Prolog) شد

روش غیر منطقی یا ((نا متعارف))!

پژوهشگران در دانشگاه ام آی تی (از جمله: ماروین مینسکی و سیمور پیپرت) این نکته را دریافتند که حل مسائل مشکل و پیچیده، چه در منطق کامپیوتری و چه در پردازش زبان طبیعی، دارای یک فرمول یک پارچه و خاص نیست. در واقع هیچ فرمول و قانون ثابتی (مانند منطق) وجود ندارد که بتواند، تمام جوانب هوش مندی را دربر بگیرد. راجر اسچنک روش غیر منطقی یا نا متعارف را به عنوان راه حلی برای حل مسائل توضیح داد ( درست بر خلاف راه حل هایی که دانشگاه های سی ام یو و استنفورد توضیح داده بودند.)

شعور و تحلیل و قضاوت عام انسان ها و یا تعبیری که به آن Commonsense knowledge bases  نیز نمونه هایی از روش غیر منطقی و ( از نظر منطقی نا متعارف هستند). می توانید برای بهتر فهمیدن این مساله به تعریف قضاوت عام در بخش اول مطلب مراجعه کنید اما این را بدانید که اگر فهم این مساله برای شما نسبتا آسان است، برای کامپیوتر بسیار سخت بود، چون در آن زمان، محققان پرتلاش باید با دستان خود این مباحث را به کامپیوتر می فهماندن و این مساله فوق العاده مشکل بود اما دست کم امکان پذیر بودن آن برای توسعه هوشمندی، محققان را دلگرم به ادامه تلاش های خود می کرد.

بانک ادراک و اطلاعات:

در سال ۱۹۷۰، یعنی زمانی که کامپیوتر های با حافظه های بیشتر وارد بازار شدند. محققان هر سه جنبه ای که در بالا ذکر شد؛ تلاش های خود را برای تولید معرفت و ادراک در نرم افزار های هوش مصنوعی، شروع کردند. این انقلاب اطلاعات و ادراک، موجب شد تا سیستم های هوشمند، بیش از پیش گسترش یابند و این را می توان اولین موفقیت مشترک، در زمینه هوش مصنوعی دانست.

این انقلاب اطلاعاتی و ادراکی باعث افزایش برنامه های هوش مصنوعی شد هر چند بعضی از این برنامه ها ساده بودند، ولی از این رو نیاز به اطلاعات بیشتر همواره از سوی این برنامه ها طلب می شد و با بیشتر شدن اطلاعات باز هم برنامه های بیشتری تولید می شد. پس این مساله به صورت چرخه ای در آمده بود که باعث بیشتر شدن پیشرفت هوش مصنوعی در این دوره شد.

– استفاده از زبان های بر پایه Sub-Symbolic:

در طی دهه ی ۱۹۶۰، زبان های سمبلیک، توانستند به موفقیت های بزرگی در شبیه سازیِ ادراک و شعور و هوشمندیِ سطح بالا، در برنامه های استدلالی و اثباتی (هر چند کوچک) برسند. در آن دوره استفاده از شبکه های عصبی تقریبا کمرنگ شده بود. هرچند که در سال های دهه ی ۱۹۷۰، همانطور که در بالا گفته شد، زبان سمبلیک گسترش زیادی پیدا کرد؛ اما این موفقیت، باعث این نشد که محققان نسبت به شبکه های عصبی، نا امید شوند.

در دهه ی ۱۹۸۰، در حالی که هنوز تحقیقات در باره زبان های سمبلیک ادامه داشت، عده ای معتقد بودند که زبان سمبلیک هیچگاه نخواهد توانست که تمامی اعمال هوشمند انسان را شبیه سازی نماید. آن ها، ادراک کامل، الگوشناسی و الگویابی، یادگیری و موفقیت در زمینه های روبوتیک را، انحصاری برای زبان های Sub-Symbolic می دانستند. پس به همین دلیل عده ای از محققان تحقیقات بیشتر در مورد زبان Sub-Symbolic را شروع کردند.

محققانی در زمینه های وابسته به علم روبوتیک، مانند رادنی بروکس؛ استفاده از زبان های سمبلیک در هوش مصنوعی را رد کردند و ترجیه دادند که روی مهندسی مسائل و مشکلات پایه ای تمرکز کنند تا بتوانند به حرکت و اعمال بهتر در ربات ها دست پیدا کنند.کار های این گروه از پژوهشگران، تحقیقات در زمینه ی فرمانشناسی و زبان Sub-Symbolic را دوباره احیا کرد. کار های آنان همزمان با پیشرفت هایی بود که در زمینه هایی از جمله: نظریه تجسم ذهنی، که یکی از شاخه های وابسته به ((شبیه سازی شناختی)) بود؛ انجام می شد. همانطور که به یاد دارید، شبیه سازی شناختی سعی می کرد که رفتار انسان ها در زمینه هایی مانند: حرکت، ادراک، احساسات و تفکر را شبیه سازی نماید. شبیه سازی این موارد هم نیاز به سطح بالاتری از هوشمندی داشت که محققان سعی در ایجاد آن داشتند.

– هوش الگوریتمی:

Computational Intelligence یا هوش الگوریتمی، که به نوعی به شبکه های عصبی وابسته بود، توسط دیوید رامل هارت و چند تن دیگر در اواسط دهه ی ۱۹۸۰ احیا شد. هم اکنون مواردی از جمله سیستم های فازی و محاسبات تکاملی، از مواردی هستند که از دل هوش الگوریتمی بیرون آمده اند
سیستم های فازی، یک نوع سیستم کنترلی هستند که بر پایه منطق فازی فعالیت می کنند، کار این گونه سیستم ها ، تجزیه و تحلیل منطقی داده های ورودی آنالوگ؛ و تبدیل آنها به دیجیتال است. یعنی داده ها را میگیرد و به دیجیتال تبدیل میکند. اما به یک نکته ی مهم توجه داشته باشید: برنامه هایی که نوشته می شوند، دیجیتال هستند و بر پایه ۰ و ۱، یعنی اطلاعات را یا درست می دانند، یا غلط (بر اساس منطق) اما دنیا و جهان حقیقی این گونه نیست، در همانگونه که بعضی از متخصصان هوش مصنوعی گفته بودند، منطق نمی تواند تمام جوانب انسانی را در کامپیوتر عملی سازد؛ در جهان واقعی نیز هیچ چیز مطلقا درست یا نادرست نیست، و همه چیز تا حدی درست و تا حدی نادرست است؛ تا حدی خوب و تا حدی بد است؛ تا حدی مشکل و تا حدی آسان است. سیستم های فازی درکی این چنینی از مسائل دارند؛              یعنی چیزی بین ۰ و ۱ !

برای این که این مفاهیم برای شما مبهم نباشد، لازم است به چند مثال در زندگی روزمره خود، روی بیاوریم. ما می توانیم از اطلاعاتی که مبهم هستند، نتیجه گیری صحیحی داشته باشیم، منطق فازی هم قصد انجام چنین کاری را دارد. مثلا ما می توانیم با در نظر گرفتن دمای هوا، تعیین کنیم که چه نوع لباسی بپوشیم. این داده مبهم است چون ما از دما بر حسب درجه سانتی گراد، خبر نداریم ولی می توانیم دمای نسبی را احساس کنیم. مثلا بگوییم هوا گرم است و این دما دقیق نیست؛ چون برای یک اسکیمو دمای ۱۲ درجه متعادل است. اما یک افریقایی در این دما، می لرزد! اما هر دوی آنها با توجه به گرمی و سردی هوا (از نظر خودشان) در مورد نوع لباس خود تصمیم گیری می کنند.

بیشتر مطالعه کنید:

http://searchcio.techtarget.com/definition/AI

https://en.wikipedia.org/wiki/Artificial_intelligence

https://www.theguardian.com/technology/artificialintelligenceai

کاربرد هوش مصنوعی در بازی

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *