Mohamad
04-15-2011, 09:56 PM
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-1.jpg (http://www.narenji.ir/)
هوش مصنوعی یکی از مقوله هایی است که در علوم کامپیوتر، اهمیت فراوان دارد و تغییرات در هوش مصنوعی می توانند تحولات گسترده ای را در فناوری اطلاعات پدید بیاورند. در این مقاله قصد داریم که هوش مصنوعی را به شما معرفی کنیم. علاوه بر این چند روبات مطرح را نیز به شما معرفی خواهیم کرد. سعی ما بر این است که این مقاله بتواند به اندازه کافی راهنمای شما باشد. پس با کلیک روی ادامه مطلب ما را همراهی کنید.
- هوش مصنوعی چیست؟
هوش مصنوعی، هوش ماشین هاست! در واقع شاخه ای از علوم کامپیوتر است که قصد دارد راه حل های الگوریتمی را ارائه کند تا بتوانیم به وسیله آنها در ماشین ها هوشمندی ایجاد کنیم. اما این تعریف کافی نیست؛ اول از همه باید بدانیم که تعریف هوشمندی چیست و بعد باید منظور از ماشین را دربیابیم:
استدلال، منطق، تصمیم گیری ؛ این ها توانایی هستند که شما از آنها استفاده می کنید. پس شما هوشمند هستید. اگر این توانایی ها را در کامپیوتر هم ایجاد کنیم، آنگاه به ماشین هوشمند دست می یابیم! به همین سادگی ... ولی به جز این ها چیز های دیگری هم در رابطه با تعریف هوشمندی وجود دارند که دانستن آنها را می توان مهم ارزیابی کرد. در واقع بحث هایی که در مورد هوشمندی و هوش مصنوعی مطرح شده است؛ تنها به دوره ی امروزه ی ما و قرن 21 مربوط نمی شود، بلکه از سال 1950 این مباحث به طور جدی مطرح شد.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-2.jpg (http://www.narenji.ir/)
- پیشینه ی هوش مصنوعی:
باید گفت که از این نظر هوش مصنوعی یکی از غنی ترین تاریخ ها را دارد، منتها در قصه ها! ماشین ها و مخلوقات مصنوعی باشعور، اولین بار در افسانه های یونان باستان مطرح شدند. شبه انسان ها باور داشتند که باید یک تمدن بزرگ را تشکیل دهند؛ تندیس ها و مجسمه های انسان نما در مصر و یونان به حرکت در آمده بودند و ... حتی در مواردی این قصه ها، پای جابر بن حیّان و چند تن دیگر را هم به سازندگان موجودات مصنوعی باز کردند.
از قصه ها که بگذریم ؛ فیلسوف ها و ریاضی دان ها از مدت ها پیش مباحث مربوط به استدلال و منطق را پیش کشیدند و امروزه این مباحث به صورت قرار دادی، به رسمیت پذیرفته شده است. این گونه منطق ها اساس کامپیوتر های دیجیتال و برنامه پذیر شده اند. یکی از افرادی که نقش اساسی و مهمی در این مورد ایفا کرد آقای آلن تورینگ بود.
نظریه تورینگ:
تئوری تورینگ مبتنی بر این بود که می توانیم با استفاده از نشانه ها و اعدادی مانند 0 و 1، هر استدلال ریاضی ای را در کامپیوتر عملی کنیم. همزمان با این نظریه کشف های تازه ای در زمینه ی عصب شناسی، نظریه اطلاعات و فرمانشناسی، به وقوع پیوسته بود. این پیشرفت ها الهام بخش گروهی کوچک از پژوهشگران شد تا به طور جدی به مساله ایجاد یک مغز الکترونیکی رسیدگی نمایند.
- تست تورینگ:
در سال 1950، آلن تورینگ مقاله ای را در رابطه با هوش مصنوعی منتشر ساخت که بعد ها به تست تورینگ مشهور شد. در این مقاله عنوان شده بود که اگر فردی از پشت یک دیوار یا هر چیز جدا کننده دیگری، با کامپیوتر مکالمه کتبی داشته باشد و نداند که طرف مقابلش انسان نیست و پس از پایان مکالمه نیز متوجه این موضوع نشود، آنگاه می توان کامپیوتر را ماشینی هوشمند نامید زیرا توانسته است که در برابر یک انسان به اندازه کافی از استدلال و منطق استفاده کند. تست تورینگ تا حدی توانست هوش مندی را توجیه کند ولی فقط ((تا حدی))! اما از آن زمان تا کنون ماشینی اختراع نشده است که توانسته باشد این تست را با موفقیت بگذراند. هر چند زبان AIML ابداع شد، اما این زبان هرگز به این حد از هوش مصنوعی دست نیافت.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-3.jpg (http://www.narenji.ir/)
- و بعد ...
تیمی که در زمینه هوش مصنوعی تحقیق می کردند، در تابستان سال 1956، کنفرانسی را در محوطه کالج دارتموس برگزار کردند. این کنفرانس به همراه افرادی مانند جان مک کارتی، ماروین مینسکی، آلین نویل و هربت سیمون که برای دهه ها پیشتازان تحقیق برای هوش مصنوعی بودند انجام شد. آنها و دانش آموزان آنها، برنامه ای نوشته بودند که حقیقتا برای عده زیادی از مردم شگفت آور بود. این برنامه می توانست مشکلات نوشتاری در جبر را حل کند، استدلال های منطقی را اثبات کند و به زبان انگلیسی سخن بگوید. در اواسط دهه ی 1960، بودجه سنگینی برای دایرکردن آزمایشگاه های تحقیقاتی در گرداگرد دنیا، از سوی حوزه ی دفاعی ایالات متحده آمریکا، اختصاص داده شد. پیشتازان هوش مصنوعی درباره آینده آن در جهان بسیار خوش بین بودند. هربت سیمون پیشبینی کرده بود که در مدت 20 سال، کامپیوتر های هوشمند می توانند، هر کاری را که انسان انجام می دهد، انجام دهند. در واقع مشکلات بزرگی که در آن زمان برای ایجاد هوش مصنوعی وجود داشت، اساسا حل شده بود.
- زمستانی سخت برای هوش مصنوعی:
علیرغم چیز هایی که در بالا گفته شد، تیم مذکور، در شناخت و رفع برخی از مشکلات هوش مصنوعی با شکست مواجه شد، در سال 1970 در مقابل انتقادات آقای جیمز لایتهیل از انگلستان و فشار های مداوم کنگره برای کم کردن بودجه برای پروژه های بزرگ، دولت های انگلیس و آمریکا تمام پژوهش های به نتیجه نرسیده برای هوش مصنوعی را لغو کردند و در اندک سالیان بعد از آن، به سختی برای هوش مصنوعی، بودجه اختصاص داده می شد. این دوره را زمستان هوش مصنوعی یا A.I winter می نامند.
به زودی در سال 1980، پژوهش ها بر روی هوش مصنوعی از سر گرفته شد و این امر مدیون این بود که سیستم های هوشمند، به موفقیت های تجاری دست یافتند. سیستم های هوشمند، ترکیب هایی از هوش مصنوعی بودند که مهارت و دانش و توان تجزیه تحلیلی یک متخصص را شبیه سازی می کردند. در سال 1985، هوش مصنوعی به بازار یک میلیارد دلاری دست یافت و در همان زمان پروژه ی کامپیوتر های نسل پنجم ژاپن، که متوقف شده بود، از سر گرفته شد و بودجه ای برای تحقیقات آکادمیک در این زمینه در نظر گرفته شده بود. اما در سال 1987 باز هم چرخ گردان به گونه ای دیگر چرخید و بازار فروش ماشین های پردازش لیست (Lisp Machines) (با زبان Lisp) که با مشکلاتی موجه بودند، نابود شد و در یک ثانیه تمام آبروی هوش مصنوعی را هم با خود برد. پس این بار زمستان طولانی تر و سخت تری برای هوش مصنوعی فرارسید.
- پس از آن، بهاری نو :
پس از این مشکلات، در دهه 1990 و نزدیک به قرن بیست و یکم، هوش مصنوعی به یکی از بزرگ ترین موفقیت های خود دست یافت. اگر چه چیز هایی پشت پرده ماندند ولی هوش مصنوعی در زمینه های مهمی مانند استدلال و منطق، داده کاوی، تشخیص های پزشکی و طیف های گسترده ای از تکنولوژی و صنعت به کار گرفته می شد.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-4.jpg (http://www.narenji.ir/)
- مقایسه، استدلال و حل مسائل:
خیلی زود توسعه دهندگان هوش مصنوعی به این نتیجه رسیدند که باید در الگوریتم های خود از نحوه حل مساله ((گام به گام)) استفاده کنند. در واقع انسان ها هم معمولا برای حل مواردی از جمله: ساختن پازل و ... از این روش استفاده می کنند. آنها همچنین توانستند که پس از دهه های 80 و 90 الگوریتم های موفقیت آمیزی را برای درک داده ها و اطلاعات نا کامل عرضه کنند که این الگوریتم ها از احتمالات، برای درک این اطلاعات استفاده می کردند.
برای حل مسائل سخت، بیشتر این الگوریتم ها به کامپیوتر های بزرگ و قدرتمندی برای پردازش نیاز داشتند. بسیاری از این الگوریتم ها به مقدار زیادی حافظه (رم) نیاز داشتند و حتی در صورت فراهم آمدن آن، با وجود سخت افزار های آن زمان، مدت مورد نیاز برای پردازش نجومی بود. بنابر این می توان این مساله را دریافت که: جستجو برای الگوریتم های بهتر و موثر تر در آن زمان، از اولویت های اصلی پژوهشگران هوش مصنوعی بود.
انسان برای حل مسائل خود خیلی سریع عمل می کند. چیزی که باید فهمید این است که اگر چه انسان در جمع و تفریق اعداد از کامپیوتر شکست می خورد، اما مساله فقط جمع و تفریق نیست. در واقع اولین گام برای حل مساله درک آن است و این چیزی است که برای انسان بسیار ساده و برای کامپیوتر ها بسیار سخت است. بر این اساس آنها به تحقیقات زیادی پرداختند و به این نتیجه رسیدند که باید برای بازدهی بیشتر از شبکه های عصبی استفاده کنند. این کار به آنها کمک می کرد تا بتوانند به ساختار اعصاب و مغز انسان و سایر حیوانات نزدیک تر شوند.
- نمایش معلومات:
نمایش معلومات و مهندسی معلومات مرکز توجه در پژوهش های هوش مصنوعی بودند. بسیاری از دستگاه های حل مساله برای حل مسائل نیازمند معلومات گسترده و وسیعی بودند این معلومات عبارت می شد از : شناختن اشیاء، خواص و اقلام- شناختن روابط بین اشیاء- درک موقعیت، نوع واقعه و زمان و مکان- علت ها و تاثیر عوامل و بسیاری چیز های دیگر...
و سخت ترین مشکلات درباره نمایش اطلاعات و معلومات عبارت بود از:
1- استدلال پیش فرض و مسائل نسبی: دانسته ی یک فرد از یک چیز برابر است با پنداشت او از آن چیز، برای مثال وقتی نام پرنده به گوش کسی می خورد، معمولا یک موجود کوچک را به یاد می آورد با صدای زیبا و قابلیت پرواز؛ در حالی که این موضوع برای همه ی پرندگان صدق نمی کند. مثلا پنگوئن هیچکدام از این ویژگی ها را ندارد! جان مک کارتی این موضوع را به عنوان یک مسئله نسبی در سال 1969 کشف کرد. برای هر قضاوت صحیح (در تعریف عام) که محققان هوش مصنوعی، سعی در پیاده سازی آن داشتند، تعداد زیادی استثنا وجود داشت. بنابر این، آنها به این نتیجه دست یافتند که در قضاوت عام، نمی توان یک چیز را مطلقا درست یا غلط دانست بلکه همه چیز نسبی است. مثلا وقتی به شما می گویند که فلان شخص، خوب است یا بد؟ شما اول به مواردی توجه می کنید که مهم تر هستند و بر این اساس در مورد خوبی و بدی قضاوت می کنید. در حالی که هیچ کس مطلقا خوب یا بد نیست! در واقع شما اول به مواردی اهمیت می دهید که مهم تر است. محققان هوش مصنوعی هم با پیاده کردن چنین الگوریتمی توانستند این مشکلات را حل کنند.
2- سطح وسیع اطلاعات مورد نیاز برای قضاوت عام: منظور از قضاوت عام، همان نحوه قضاوتی است که در بالا توضیح داده شد که شما به نکاتی که بیشتر اهمیت دارند، امتیاز بیشتری اختصاص می دهید و آنها را ملاک قضاوت خود قرار می دهید. اما این نوع قضاوت، شاید در زندگی روزمره ما کار عادی ای شده باشد؛ اما در واقع برای کامپیوتر این کار نیاز به اطلاعات پایه ای زیادی در زمینه هستی شناسی و شناخت ویژگی های موجودات دارد. محققان هوش مصنوعی می بایست، مفاهیم دقیق و پیچیده ای را با دست خود، به کامپیوتر می فهماندند. کار بزرگی که انجام شد این بود که توانستند کامپیوتر را قادر سازند که از منابع اطلاعاتی (نظیر اینترنت امروزی) ، مفاهیمی را کسب کند و از این راه به اطلاعات خود در این باره بیافزاید.
3- استفاده از زبان Sub-Symbolic برای توضیح بعضی مفاهیم در قضاوت عام: بسیاری از معلوماتی که مردم دارند، چیز هایی است که نمی توان آن ها را تصویر کرد و یا توضیح داد. برای مثال یک شطرنج باز ماهر، از قرار دادن یک مهره در یک وضعیت خاص پرهیز می کند زیرا احساس می کند که این کار خطرناک است و یا یک کارشناس و منتقد هنری با نگاه کردن به یک مجسمه و یا یک نقاشی تشخیص می دهد که آن جعلی و تقلبی است. پیاده کردن چنین الگوریتم هایی با استفاده از زبان سمبلیک ممکن نبود و باید از زبان دیگری بر پایه Sub-Symbolic استفاده می شد. قبل از هر چیز باید، توضیح مختصری از این دو را به شما ارائه کنیم:
در واقع اساس کار زبان های سمبلیک بر پایه استدلال و نتیجه گیری و به طور کلی، منطق است. در این گونه زبان ها برای متغیر ها و توابع مقدار های مشخصی در نظر گرفته می شود و بدین وسیله، هر متغیر حاوی بخشی از اطلاعات برنامه و هر تابع حاوی بخشی از قوانین استنباطی برنامه است.
اما روش Sub-Symbolic تا حد زیادی متفاوت است. این روش از شبکه های عصبی برای پردازش اطلاعات استفاده می کند. این شبکه های عصبی از واحد های ورودی، واحد های پنهان و واحد های خروجی تشکیل شده اند که همگی با یکدیگر ارتباط دارند. این واحد ها گاهی سلول عصبی نیز، خطاب می شوند. همانطور که گفته شد، این سلول های عصبی با یک دیگر ارتباط دارند. اما چیزی که باید بدانید این است که اطلاعات در بین این ارتباطات، پردازش می شوند و بر این اساس ممکن است یک سلول عصبی در پردازش اطلاعات موثر و یا کم اثر باشد. در عوض، در شبکه های عصبی تمامی اجزا مهم تلقی می شود. چون هیچ کدام از آنها به تنهایی نمی توانند، اطلاعات را پردازش کنند ولی وقتی تمام اجزا با هم کار کنند، موجب ایجاد یک عملکرد هوشمند می شوند.
برای این که این روش را بهتر درک کنید، به این مثال توجه نمایید: یک مورچه تنها را در نظر بگیرید، طبعا نه کاری می تواند بکند و نه اثری دارد، اما وقتی مجموعه ای از این مورچه ها جمع می شوند و یک کلونی را تشکیل می دهند، آنگاه جامعه ای از آنها درست می شود که در کلیت، هوشمند و موثر است، به طوری که حتی ما هم با دانستن راز های زندگی جمعی مورچه ها، به فکر فرو می رویم! همین کار را هم می توان با شبکه های عصبي انجام داد و يک شبه مغز را ايجاد کرد.
- برنامه ریزی:
موجودات و به طور کلی، چیز های هوشمند، باید بتوانند هدف هایی را برای خود تعیین کرده و به آنها دست یابند. برای این کار اولا لازم است که تصوری از آینده خود داشته باشیم. یعنی وضع کنونی هدف مورد نظر را در نظر بگیریم و پیش بینی کنیم که تصمیماتی که خواهیم گرفت، چگونه می تواند بر آن تاثیر بگزارد. پس از این کار باید، برای رسیدن به بهترین نتیجه؛ از بین گزینه هایی که داریم، بهترین و سودمند ترین آنها را انتخاب نماییم.
پس تصمیم گیری و برنامه ریزی از این روش، کاری است که بدون هوشمندی، نمی توان آن را انجام داد و فقط موجودات هوشمند از پس آن بر می آیند!
در مسائل کلاسیکی که در مورد برنامه ریزی وجود داشت، عامل هوشمند می توانست فرض کند که تنها یک چیز (هدف مورد نظر) در جهان فعال است و احتمالا می توان نتیجه آن را تغییر داد. بنا بر این هدف مورد نظر تعیین می شد و برای آن راه حل هایی ارائه می گردید. همچنین عامل هوشمند - که میتواند برنامه و یا هر چیز دیگری باشد – به طور مرتب و دائمی چک می کرد که پیشگویی هایش درست باشد و اگر اینطور نبود، راه حل مورد نظر برای هدفش را تغییر می داد.
در این مورد می توانید یک روبوت را در نظر بگیرید که می خواهد از یک مسیر مارپیچ عبور نماید. این روبوت ابتدا هر یک از این مسیر ها را امتحان می کند و اگر هر کدام از آنها به بن بست، بر خورد، آن را به حافظه می سپارد تا دوباره تکرارش نکند و این عمل را آنقدر ادامه می دهد که راه خودش را بیابد! ( این يک تعریف بسيار ساده بود)
- یادگیری:
ایجاد امکان یادگیری برای ماشین ها، همواره از پژوهش های اصلی در زمینه ی هوش مصنوعی بوده است. یادگیری بدون نظارت: قابلیت یادگیری الگو ها، از اطلاعات ورودی را فراهم میکند. یادگیری نظارت شده هم، می تواند هردو امکان: طبقه بندی و عبرت عددی را ایجاد کند.
طبقه بندی این امکان را می دهد که کامپیوتر بتواند تشخیص دهد که چه چیز هایی را می توان در یک گروه خاص گنجاند. عبرت عددی (Regression takes) نیز به این صورت عمل می کند که بعد از دادن چیز هایی به عنوان ورودی به کامپیوتر و مشخص کردن خروجی دقیق آنها، کامپیوتر می تواند روابط بین ورودی و خروجی را کشف کرده و الگوریتم ها و توابع پیوسته ای را برای آنها تعیین کند. این روش برای به وجود آوردن الگوریتم های بسیار پیچیده، مفید خواهد بود.
اجازه دهید تا در این مورد مثالی بزنیم: وقتی در حال رانندگی هستید و به عابران پیاده نگاه می کنید، می توانید تا حد زیادی تشخیص دهید که آنها قصد چه کاری را دارند. مثلا می خواهند از خیابان رد شوند یا این که تاکسی بگیرند و یا این که فقط سر جای خود ایستاده اند. خب، این کار برای من و شما نسبتا ساده است اما اساسا برای نوشتن الگوریتم آن برای کامپیوتر، از دست یک انسان کاری ساخته نیست. با استفاده از روش عبرت عددی می توان با روش های خاص این مورد را با مثال های زیادی به کامپیوتر و برنامه ی مربوطه نشان داد و به تدریج الگوریتم مورد نیاز را تحویل گرفت.
اما چیزی که باید هم اکنون به آن اشاره کرد، عملیات تقویت یادگیری است. این کار به این صورت انجام می پذیرد که تئوری تصمیم گیری کامپیوتر آنالیز شده و برداشت های سودمند آن تئوری، مورد تاکید قرار می گیرند. در واقع کار های درست با تشویق (به صورت اولویت دادن) و کار های غلط با تنبیه (به صورت امتیاز منفی) پاسخ داده می شوند و به همین خاطر یادگیری کامپیوتر به طور مرتب بهبود می یابد.
یادداشت: آنالیز الگوریتم های یادگیری ماشین ها، شاخه ای از علوم نظری کامپیوتر است که با نام تئوری یادگیری کامپیوتری شناخته می شود.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-5.jpg (http://www.narenji.ir/)
- پردازش زبان طبیعی:
پردازش زبان طبیعی یا Natural Language Processing، به ماشین های هوش مند این قابلیت را می دهد که زبان انسان ها را بخوانند و آنها را متوجه شوند. بسیاری از تحقیقات به این نتیجه رسید که برای ایجاد قدرت کافی برای سیستم پردازش زبان طبیعی، نیاز است که اطلاعات زیاد و کاملی را به این سیستم ارائه کنیم که می تواند با استفاده از خواندن متن های موجود در اینترنت انجام شود.
برنامه هایی که هم اکنون در زمینه پردازش زبان طبیعی درست عمل می کنند، از امکاناتی مانند: بازیابی اطلاعات، جستجو در متن ها و امکان ترجمه ماشینی بهره مند اند.
- حرکت و جا به جا کردن اجسام: تحقیقات در زمینه روبوتیک، بیش از هر چیزی به هوش مصنوعی وابسته است. روبات ها برای موارد بسیار زیادی نیاز به هوشمندی دارند که از جمله آنها می توان مواردی مانند: مسیر یابی ، جا به جا کردن، این که بدانند کجا هستند، این که درکی از محیط خود داشته باشند و بتوانند برای حرکت به سوی نقطه خاصی، برنامه ریزی نمایند و هدف خود را تعیین کنند. بدین ترتیب هوش مصنوعی برای روبات ها بسیار پر کاربرد است و تقریبا در تمام زمینه های ذکر شده از آن استفاده می نمایند.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-6.jpg (http://www.narenji.ir/)
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-7.jpg (http://www.narenji.ir/)
- ادراک:
درک ماشینی، به آنها این امکان را می دهد که بتوانند با استفاده از سنسور های ورودی خود، نظیر: دوربین، میکروفون ها و دیگر سنسور های عجیب و غریب (!) ؛ از محیط خود برداشت صحیحی داشته و بتواند محیط پیرامون خود را درک کند. در اصل، بینایی کامپیوتری این امکان را می دهد که کامپیوتر بتواند چیز هایی که می بیند را مورد تجزیه و تحلیل قرار دهد. چند مورد از آنالیز های معروف در روبات ها عبارت است از : آنالیز صحبت و صدا ها و تشخیص منظور، آنالیز چهره ها و تشخیص حالات آن ها. مانند: خشم، ناراحتی، خنده و ... ، آنالیز اشیاء پیرامون و تشخیص آنها .
با استفاده از انواع آنالیز ها و تجزیه و تحلیل هایی که در بالا ذکر شدند، روبات ها قادر خواهند بود که بسیار هوشمند تر از قبل عمل کنند. مثلا در جا به جایی اجسام شیشه ای، دقت بیشتری کنند. برای کسی که ناراحت و عصبانی است، جک تعریف نکند! و سلام را با خدا حافظ پاسخ ندهد.
- هوش اجتماعی:
احساسات و مهارت های اجتماعی، دو بخش مهم از هوش مندی را تشکیل می دهند. اولا، باعث می شود که ماشین هوشمند بتواند عکس العمل طرف مقابل را در برابر یک رفتار خاص، تشخیص دهد. که این کار با درک از انگیزه فرد و احساسات او عملی خواهد شد.
ثانیا؛ برای تعامل بهتر بین انسان و کامپیوتر، ماشین هوشمند باید بتواند که احساساتی را از خود بروز دهد. در بد ترین حالت، این امر باید به صورت نشان دادن احساسات ضعیف در گفتار و با کمال ادب انجام گیرد و در بهترین حالت باید با حساسیت طبیعی و مناسب در برابر انسان همراه باشد. در واقع سعی بر این است که کامپیوتر طوری عمل کند که اگر با لحن بدی با او حرف زدید، با کمال ادب به شما پاسخی مناسب با لحن خودتان دهد. و بالعکس!
نکته مهم: مساله کمال ادب بسیار مهم است چون کامپیوتر در صورت عدم رعایت این موضوع، موجودیت خودش را به خطر خواهد انداخت و در این صورت نیاز به یک الگوریتم برای کشتی گیری انسان و کامپیوتر (یا ربات) هم به شدت احساس می شود. (معمولا انسان ها اعصاب ندارند و خیلی زود درگیر می شوند.)
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-8.jpg (http://www.narenji.ir/)
- ابتکار وخلاقیت:
یکی از شاخه های مهم، هوش مصنوعی سعی در ایجاد قوه ی خلاقیت در کامپیوتر دارد. پیاده سازی ابتکار و خلاقیت در هوش مصنوعی، هم از نظر فلسفی و هم از نظر فیزیولوژی قابل توجیه می باشد. همچنین از نظر عملی هم با پیاده سازی یک الگوریتم مخصوص که خروجی هایی هوشمندانه و متفکرانه تولید نماید، امکان پذیر است. این شاخه معمولا با نام های: درک مصنوعی (Artificial Intuition) و پندار مصنوعی (Artificial Imagination) شناخته می شود. برای پرهیز از پیچیده شدن مقاله، توضیح بیشتری نمی دهیم اما می توانید مباحث مربوط به این دو را نیز در سایت های دیگر دنبال نمایید.
- هوش عمومی:
برای پیاده سازی هوش عمومی روی کامپیوتر نیاز است که از تمامی توانایی های بالقوه ی هوش مصنوعی استفاده کنیم. برای مثال مترجم متن گوگل را در نظر بگیرید؛ می دانیم که این مترجم در حال حاضر با خطا های بسیاری رو به رو است. حال اگر بخواهیم که اشکالات کار ترجمه، حل شود؛ می توانیم از هوش عمومی استفاده نماییم: برای ترجمه خوب باید اول بفهمیم که نویسنده از چه استدلال ها و چه دلایلی برای مطرح کردن یک منظور خاص استفاده می کند.( به کار گیری جنبه درک استدلال و منطق)، همچنین باید بدانیم که موضوعی که درباره آن صحبت می شود چیست.(درک و جمع آوری اطلاعات). مرحله بعدی کار ما این است که مقصود نویسنده از جملات را پیدا کنیم؛ مثلا بفهمیم که دارد انتقاد می کند یا تعریف. (هوش اجتماعی). پس از این کار ها و در نظر گرفتن موارد فوق می توانیم به ترجمه یک متن بپردازیم.
شاید بپرسید که اگر مساله فقط این است، پس چرا گوگل کاری نمی کند ؟ در این مورد باید گفت که شاید در زبان ساده باشد اما به کار گیری چنین الگوریتم هایی با خطای بسیار کم، در حال حاضر عملا امکان پذیر نیست. البته این الگوریتم ها در ترجمه گوگل استفاده می شوند ولی خطای آنها زیاد است. برای کم کردن این گونه خطا ها، راهی که کارشناسان پیشنهاد می کنند، استفاده از شبکه های عصبی و زبان Sub-Symbolic است.
هوش مصنوعی یکی از مقوله هایی است که در علوم کامپیوتر، اهمیت فراوان دارد و تغییرات در هوش مصنوعی می توانند تحولات گسترده ای را در فناوری اطلاعات پدید بیاورند. در این مقاله قصد داریم که هوش مصنوعی را به شما معرفی کنیم. علاوه بر این چند روبات مطرح را نیز به شما معرفی خواهیم کرد. سعی ما بر این است که این مقاله بتواند به اندازه کافی راهنمای شما باشد. پس با کلیک روی ادامه مطلب ما را همراهی کنید.
- هوش مصنوعی چیست؟
هوش مصنوعی، هوش ماشین هاست! در واقع شاخه ای از علوم کامپیوتر است که قصد دارد راه حل های الگوریتمی را ارائه کند تا بتوانیم به وسیله آنها در ماشین ها هوشمندی ایجاد کنیم. اما این تعریف کافی نیست؛ اول از همه باید بدانیم که تعریف هوشمندی چیست و بعد باید منظور از ماشین را دربیابیم:
استدلال، منطق، تصمیم گیری ؛ این ها توانایی هستند که شما از آنها استفاده می کنید. پس شما هوشمند هستید. اگر این توانایی ها را در کامپیوتر هم ایجاد کنیم، آنگاه به ماشین هوشمند دست می یابیم! به همین سادگی ... ولی به جز این ها چیز های دیگری هم در رابطه با تعریف هوشمندی وجود دارند که دانستن آنها را می توان مهم ارزیابی کرد. در واقع بحث هایی که در مورد هوشمندی و هوش مصنوعی مطرح شده است؛ تنها به دوره ی امروزه ی ما و قرن 21 مربوط نمی شود، بلکه از سال 1950 این مباحث به طور جدی مطرح شد.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-2.jpg (http://www.narenji.ir/)
- پیشینه ی هوش مصنوعی:
باید گفت که از این نظر هوش مصنوعی یکی از غنی ترین تاریخ ها را دارد، منتها در قصه ها! ماشین ها و مخلوقات مصنوعی باشعور، اولین بار در افسانه های یونان باستان مطرح شدند. شبه انسان ها باور داشتند که باید یک تمدن بزرگ را تشکیل دهند؛ تندیس ها و مجسمه های انسان نما در مصر و یونان به حرکت در آمده بودند و ... حتی در مواردی این قصه ها، پای جابر بن حیّان و چند تن دیگر را هم به سازندگان موجودات مصنوعی باز کردند.
از قصه ها که بگذریم ؛ فیلسوف ها و ریاضی دان ها از مدت ها پیش مباحث مربوط به استدلال و منطق را پیش کشیدند و امروزه این مباحث به صورت قرار دادی، به رسمیت پذیرفته شده است. این گونه منطق ها اساس کامپیوتر های دیجیتال و برنامه پذیر شده اند. یکی از افرادی که نقش اساسی و مهمی در این مورد ایفا کرد آقای آلن تورینگ بود.
نظریه تورینگ:
تئوری تورینگ مبتنی بر این بود که می توانیم با استفاده از نشانه ها و اعدادی مانند 0 و 1، هر استدلال ریاضی ای را در کامپیوتر عملی کنیم. همزمان با این نظریه کشف های تازه ای در زمینه ی عصب شناسی، نظریه اطلاعات و فرمانشناسی، به وقوع پیوسته بود. این پیشرفت ها الهام بخش گروهی کوچک از پژوهشگران شد تا به طور جدی به مساله ایجاد یک مغز الکترونیکی رسیدگی نمایند.
- تست تورینگ:
در سال 1950، آلن تورینگ مقاله ای را در رابطه با هوش مصنوعی منتشر ساخت که بعد ها به تست تورینگ مشهور شد. در این مقاله عنوان شده بود که اگر فردی از پشت یک دیوار یا هر چیز جدا کننده دیگری، با کامپیوتر مکالمه کتبی داشته باشد و نداند که طرف مقابلش انسان نیست و پس از پایان مکالمه نیز متوجه این موضوع نشود، آنگاه می توان کامپیوتر را ماشینی هوشمند نامید زیرا توانسته است که در برابر یک انسان به اندازه کافی از استدلال و منطق استفاده کند. تست تورینگ تا حدی توانست هوش مندی را توجیه کند ولی فقط ((تا حدی))! اما از آن زمان تا کنون ماشینی اختراع نشده است که توانسته باشد این تست را با موفقیت بگذراند. هر چند زبان AIML ابداع شد، اما این زبان هرگز به این حد از هوش مصنوعی دست نیافت.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-3.jpg (http://www.narenji.ir/)
- و بعد ...
تیمی که در زمینه هوش مصنوعی تحقیق می کردند، در تابستان سال 1956، کنفرانسی را در محوطه کالج دارتموس برگزار کردند. این کنفرانس به همراه افرادی مانند جان مک کارتی، ماروین مینسکی، آلین نویل و هربت سیمون که برای دهه ها پیشتازان تحقیق برای هوش مصنوعی بودند انجام شد. آنها و دانش آموزان آنها، برنامه ای نوشته بودند که حقیقتا برای عده زیادی از مردم شگفت آور بود. این برنامه می توانست مشکلات نوشتاری در جبر را حل کند، استدلال های منطقی را اثبات کند و به زبان انگلیسی سخن بگوید. در اواسط دهه ی 1960، بودجه سنگینی برای دایرکردن آزمایشگاه های تحقیقاتی در گرداگرد دنیا، از سوی حوزه ی دفاعی ایالات متحده آمریکا، اختصاص داده شد. پیشتازان هوش مصنوعی درباره آینده آن در جهان بسیار خوش بین بودند. هربت سیمون پیشبینی کرده بود که در مدت 20 سال، کامپیوتر های هوشمند می توانند، هر کاری را که انسان انجام می دهد، انجام دهند. در واقع مشکلات بزرگی که در آن زمان برای ایجاد هوش مصنوعی وجود داشت، اساسا حل شده بود.
- زمستانی سخت برای هوش مصنوعی:
علیرغم چیز هایی که در بالا گفته شد، تیم مذکور، در شناخت و رفع برخی از مشکلات هوش مصنوعی با شکست مواجه شد، در سال 1970 در مقابل انتقادات آقای جیمز لایتهیل از انگلستان و فشار های مداوم کنگره برای کم کردن بودجه برای پروژه های بزرگ، دولت های انگلیس و آمریکا تمام پژوهش های به نتیجه نرسیده برای هوش مصنوعی را لغو کردند و در اندک سالیان بعد از آن، به سختی برای هوش مصنوعی، بودجه اختصاص داده می شد. این دوره را زمستان هوش مصنوعی یا A.I winter می نامند.
به زودی در سال 1980، پژوهش ها بر روی هوش مصنوعی از سر گرفته شد و این امر مدیون این بود که سیستم های هوشمند، به موفقیت های تجاری دست یافتند. سیستم های هوشمند، ترکیب هایی از هوش مصنوعی بودند که مهارت و دانش و توان تجزیه تحلیلی یک متخصص را شبیه سازی می کردند. در سال 1985، هوش مصنوعی به بازار یک میلیارد دلاری دست یافت و در همان زمان پروژه ی کامپیوتر های نسل پنجم ژاپن، که متوقف شده بود، از سر گرفته شد و بودجه ای برای تحقیقات آکادمیک در این زمینه در نظر گرفته شده بود. اما در سال 1987 باز هم چرخ گردان به گونه ای دیگر چرخید و بازار فروش ماشین های پردازش لیست (Lisp Machines) (با زبان Lisp) که با مشکلاتی موجه بودند، نابود شد و در یک ثانیه تمام آبروی هوش مصنوعی را هم با خود برد. پس این بار زمستان طولانی تر و سخت تری برای هوش مصنوعی فرارسید.
- پس از آن، بهاری نو :
پس از این مشکلات، در دهه 1990 و نزدیک به قرن بیست و یکم، هوش مصنوعی به یکی از بزرگ ترین موفقیت های خود دست یافت. اگر چه چیز هایی پشت پرده ماندند ولی هوش مصنوعی در زمینه های مهمی مانند استدلال و منطق، داده کاوی، تشخیص های پزشکی و طیف های گسترده ای از تکنولوژی و صنعت به کار گرفته می شد.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-4.jpg (http://www.narenji.ir/)
- مقایسه، استدلال و حل مسائل:
خیلی زود توسعه دهندگان هوش مصنوعی به این نتیجه رسیدند که باید در الگوریتم های خود از نحوه حل مساله ((گام به گام)) استفاده کنند. در واقع انسان ها هم معمولا برای حل مواردی از جمله: ساختن پازل و ... از این روش استفاده می کنند. آنها همچنین توانستند که پس از دهه های 80 و 90 الگوریتم های موفقیت آمیزی را برای درک داده ها و اطلاعات نا کامل عرضه کنند که این الگوریتم ها از احتمالات، برای درک این اطلاعات استفاده می کردند.
برای حل مسائل سخت، بیشتر این الگوریتم ها به کامپیوتر های بزرگ و قدرتمندی برای پردازش نیاز داشتند. بسیاری از این الگوریتم ها به مقدار زیادی حافظه (رم) نیاز داشتند و حتی در صورت فراهم آمدن آن، با وجود سخت افزار های آن زمان، مدت مورد نیاز برای پردازش نجومی بود. بنابر این می توان این مساله را دریافت که: جستجو برای الگوریتم های بهتر و موثر تر در آن زمان، از اولویت های اصلی پژوهشگران هوش مصنوعی بود.
انسان برای حل مسائل خود خیلی سریع عمل می کند. چیزی که باید فهمید این است که اگر چه انسان در جمع و تفریق اعداد از کامپیوتر شکست می خورد، اما مساله فقط جمع و تفریق نیست. در واقع اولین گام برای حل مساله درک آن است و این چیزی است که برای انسان بسیار ساده و برای کامپیوتر ها بسیار سخت است. بر این اساس آنها به تحقیقات زیادی پرداختند و به این نتیجه رسیدند که باید برای بازدهی بیشتر از شبکه های عصبی استفاده کنند. این کار به آنها کمک می کرد تا بتوانند به ساختار اعصاب و مغز انسان و سایر حیوانات نزدیک تر شوند.
- نمایش معلومات:
نمایش معلومات و مهندسی معلومات مرکز توجه در پژوهش های هوش مصنوعی بودند. بسیاری از دستگاه های حل مساله برای حل مسائل نیازمند معلومات گسترده و وسیعی بودند این معلومات عبارت می شد از : شناختن اشیاء، خواص و اقلام- شناختن روابط بین اشیاء- درک موقعیت، نوع واقعه و زمان و مکان- علت ها و تاثیر عوامل و بسیاری چیز های دیگر...
و سخت ترین مشکلات درباره نمایش اطلاعات و معلومات عبارت بود از:
1- استدلال پیش فرض و مسائل نسبی: دانسته ی یک فرد از یک چیز برابر است با پنداشت او از آن چیز، برای مثال وقتی نام پرنده به گوش کسی می خورد، معمولا یک موجود کوچک را به یاد می آورد با صدای زیبا و قابلیت پرواز؛ در حالی که این موضوع برای همه ی پرندگان صدق نمی کند. مثلا پنگوئن هیچکدام از این ویژگی ها را ندارد! جان مک کارتی این موضوع را به عنوان یک مسئله نسبی در سال 1969 کشف کرد. برای هر قضاوت صحیح (در تعریف عام) که محققان هوش مصنوعی، سعی در پیاده سازی آن داشتند، تعداد زیادی استثنا وجود داشت. بنابر این، آنها به این نتیجه دست یافتند که در قضاوت عام، نمی توان یک چیز را مطلقا درست یا غلط دانست بلکه همه چیز نسبی است. مثلا وقتی به شما می گویند که فلان شخص، خوب است یا بد؟ شما اول به مواردی توجه می کنید که مهم تر هستند و بر این اساس در مورد خوبی و بدی قضاوت می کنید. در حالی که هیچ کس مطلقا خوب یا بد نیست! در واقع شما اول به مواردی اهمیت می دهید که مهم تر است. محققان هوش مصنوعی هم با پیاده کردن چنین الگوریتمی توانستند این مشکلات را حل کنند.
2- سطح وسیع اطلاعات مورد نیاز برای قضاوت عام: منظور از قضاوت عام، همان نحوه قضاوتی است که در بالا توضیح داده شد که شما به نکاتی که بیشتر اهمیت دارند، امتیاز بیشتری اختصاص می دهید و آنها را ملاک قضاوت خود قرار می دهید. اما این نوع قضاوت، شاید در زندگی روزمره ما کار عادی ای شده باشد؛ اما در واقع برای کامپیوتر این کار نیاز به اطلاعات پایه ای زیادی در زمینه هستی شناسی و شناخت ویژگی های موجودات دارد. محققان هوش مصنوعی می بایست، مفاهیم دقیق و پیچیده ای را با دست خود، به کامپیوتر می فهماندند. کار بزرگی که انجام شد این بود که توانستند کامپیوتر را قادر سازند که از منابع اطلاعاتی (نظیر اینترنت امروزی) ، مفاهیمی را کسب کند و از این راه به اطلاعات خود در این باره بیافزاید.
3- استفاده از زبان Sub-Symbolic برای توضیح بعضی مفاهیم در قضاوت عام: بسیاری از معلوماتی که مردم دارند، چیز هایی است که نمی توان آن ها را تصویر کرد و یا توضیح داد. برای مثال یک شطرنج باز ماهر، از قرار دادن یک مهره در یک وضعیت خاص پرهیز می کند زیرا احساس می کند که این کار خطرناک است و یا یک کارشناس و منتقد هنری با نگاه کردن به یک مجسمه و یا یک نقاشی تشخیص می دهد که آن جعلی و تقلبی است. پیاده کردن چنین الگوریتم هایی با استفاده از زبان سمبلیک ممکن نبود و باید از زبان دیگری بر پایه Sub-Symbolic استفاده می شد. قبل از هر چیز باید، توضیح مختصری از این دو را به شما ارائه کنیم:
در واقع اساس کار زبان های سمبلیک بر پایه استدلال و نتیجه گیری و به طور کلی، منطق است. در این گونه زبان ها برای متغیر ها و توابع مقدار های مشخصی در نظر گرفته می شود و بدین وسیله، هر متغیر حاوی بخشی از اطلاعات برنامه و هر تابع حاوی بخشی از قوانین استنباطی برنامه است.
اما روش Sub-Symbolic تا حد زیادی متفاوت است. این روش از شبکه های عصبی برای پردازش اطلاعات استفاده می کند. این شبکه های عصبی از واحد های ورودی، واحد های پنهان و واحد های خروجی تشکیل شده اند که همگی با یکدیگر ارتباط دارند. این واحد ها گاهی سلول عصبی نیز، خطاب می شوند. همانطور که گفته شد، این سلول های عصبی با یک دیگر ارتباط دارند. اما چیزی که باید بدانید این است که اطلاعات در بین این ارتباطات، پردازش می شوند و بر این اساس ممکن است یک سلول عصبی در پردازش اطلاعات موثر و یا کم اثر باشد. در عوض، در شبکه های عصبی تمامی اجزا مهم تلقی می شود. چون هیچ کدام از آنها به تنهایی نمی توانند، اطلاعات را پردازش کنند ولی وقتی تمام اجزا با هم کار کنند، موجب ایجاد یک عملکرد هوشمند می شوند.
برای این که این روش را بهتر درک کنید، به این مثال توجه نمایید: یک مورچه تنها را در نظر بگیرید، طبعا نه کاری می تواند بکند و نه اثری دارد، اما وقتی مجموعه ای از این مورچه ها جمع می شوند و یک کلونی را تشکیل می دهند، آنگاه جامعه ای از آنها درست می شود که در کلیت، هوشمند و موثر است، به طوری که حتی ما هم با دانستن راز های زندگی جمعی مورچه ها، به فکر فرو می رویم! همین کار را هم می توان با شبکه های عصبي انجام داد و يک شبه مغز را ايجاد کرد.
- برنامه ریزی:
موجودات و به طور کلی، چیز های هوشمند، باید بتوانند هدف هایی را برای خود تعیین کرده و به آنها دست یابند. برای این کار اولا لازم است که تصوری از آینده خود داشته باشیم. یعنی وضع کنونی هدف مورد نظر را در نظر بگیریم و پیش بینی کنیم که تصمیماتی که خواهیم گرفت، چگونه می تواند بر آن تاثیر بگزارد. پس از این کار باید، برای رسیدن به بهترین نتیجه؛ از بین گزینه هایی که داریم، بهترین و سودمند ترین آنها را انتخاب نماییم.
پس تصمیم گیری و برنامه ریزی از این روش، کاری است که بدون هوشمندی، نمی توان آن را انجام داد و فقط موجودات هوشمند از پس آن بر می آیند!
در مسائل کلاسیکی که در مورد برنامه ریزی وجود داشت، عامل هوشمند می توانست فرض کند که تنها یک چیز (هدف مورد نظر) در جهان فعال است و احتمالا می توان نتیجه آن را تغییر داد. بنا بر این هدف مورد نظر تعیین می شد و برای آن راه حل هایی ارائه می گردید. همچنین عامل هوشمند - که میتواند برنامه و یا هر چیز دیگری باشد – به طور مرتب و دائمی چک می کرد که پیشگویی هایش درست باشد و اگر اینطور نبود، راه حل مورد نظر برای هدفش را تغییر می داد.
در این مورد می توانید یک روبوت را در نظر بگیرید که می خواهد از یک مسیر مارپیچ عبور نماید. این روبوت ابتدا هر یک از این مسیر ها را امتحان می کند و اگر هر کدام از آنها به بن بست، بر خورد، آن را به حافظه می سپارد تا دوباره تکرارش نکند و این عمل را آنقدر ادامه می دهد که راه خودش را بیابد! ( این يک تعریف بسيار ساده بود)
- یادگیری:
ایجاد امکان یادگیری برای ماشین ها، همواره از پژوهش های اصلی در زمینه ی هوش مصنوعی بوده است. یادگیری بدون نظارت: قابلیت یادگیری الگو ها، از اطلاعات ورودی را فراهم میکند. یادگیری نظارت شده هم، می تواند هردو امکان: طبقه بندی و عبرت عددی را ایجاد کند.
طبقه بندی این امکان را می دهد که کامپیوتر بتواند تشخیص دهد که چه چیز هایی را می توان در یک گروه خاص گنجاند. عبرت عددی (Regression takes) نیز به این صورت عمل می کند که بعد از دادن چیز هایی به عنوان ورودی به کامپیوتر و مشخص کردن خروجی دقیق آنها، کامپیوتر می تواند روابط بین ورودی و خروجی را کشف کرده و الگوریتم ها و توابع پیوسته ای را برای آنها تعیین کند. این روش برای به وجود آوردن الگوریتم های بسیار پیچیده، مفید خواهد بود.
اجازه دهید تا در این مورد مثالی بزنیم: وقتی در حال رانندگی هستید و به عابران پیاده نگاه می کنید، می توانید تا حد زیادی تشخیص دهید که آنها قصد چه کاری را دارند. مثلا می خواهند از خیابان رد شوند یا این که تاکسی بگیرند و یا این که فقط سر جای خود ایستاده اند. خب، این کار برای من و شما نسبتا ساده است اما اساسا برای نوشتن الگوریتم آن برای کامپیوتر، از دست یک انسان کاری ساخته نیست. با استفاده از روش عبرت عددی می توان با روش های خاص این مورد را با مثال های زیادی به کامپیوتر و برنامه ی مربوطه نشان داد و به تدریج الگوریتم مورد نیاز را تحویل گرفت.
اما چیزی که باید هم اکنون به آن اشاره کرد، عملیات تقویت یادگیری است. این کار به این صورت انجام می پذیرد که تئوری تصمیم گیری کامپیوتر آنالیز شده و برداشت های سودمند آن تئوری، مورد تاکید قرار می گیرند. در واقع کار های درست با تشویق (به صورت اولویت دادن) و کار های غلط با تنبیه (به صورت امتیاز منفی) پاسخ داده می شوند و به همین خاطر یادگیری کامپیوتر به طور مرتب بهبود می یابد.
یادداشت: آنالیز الگوریتم های یادگیری ماشین ها، شاخه ای از علوم نظری کامپیوتر است که با نام تئوری یادگیری کامپیوتری شناخته می شود.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-5.jpg (http://www.narenji.ir/)
- پردازش زبان طبیعی:
پردازش زبان طبیعی یا Natural Language Processing، به ماشین های هوش مند این قابلیت را می دهد که زبان انسان ها را بخوانند و آنها را متوجه شوند. بسیاری از تحقیقات به این نتیجه رسید که برای ایجاد قدرت کافی برای سیستم پردازش زبان طبیعی، نیاز است که اطلاعات زیاد و کاملی را به این سیستم ارائه کنیم که می تواند با استفاده از خواندن متن های موجود در اینترنت انجام شود.
برنامه هایی که هم اکنون در زمینه پردازش زبان طبیعی درست عمل می کنند، از امکاناتی مانند: بازیابی اطلاعات، جستجو در متن ها و امکان ترجمه ماشینی بهره مند اند.
- حرکت و جا به جا کردن اجسام: تحقیقات در زمینه روبوتیک، بیش از هر چیزی به هوش مصنوعی وابسته است. روبات ها برای موارد بسیار زیادی نیاز به هوشمندی دارند که از جمله آنها می توان مواردی مانند: مسیر یابی ، جا به جا کردن، این که بدانند کجا هستند، این که درکی از محیط خود داشته باشند و بتوانند برای حرکت به سوی نقطه خاصی، برنامه ریزی نمایند و هدف خود را تعیین کنند. بدین ترتیب هوش مصنوعی برای روبات ها بسیار پر کاربرد است و تقریبا در تمام زمینه های ذکر شده از آن استفاده می نمایند.
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-6.jpg (http://www.narenji.ir/)
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-7.jpg (http://www.narenji.ir/)
- ادراک:
درک ماشینی، به آنها این امکان را می دهد که بتوانند با استفاده از سنسور های ورودی خود، نظیر: دوربین، میکروفون ها و دیگر سنسور های عجیب و غریب (!) ؛ از محیط خود برداشت صحیحی داشته و بتواند محیط پیرامون خود را درک کند. در اصل، بینایی کامپیوتری این امکان را می دهد که کامپیوتر بتواند چیز هایی که می بیند را مورد تجزیه و تحلیل قرار دهد. چند مورد از آنالیز های معروف در روبات ها عبارت است از : آنالیز صحبت و صدا ها و تشخیص منظور، آنالیز چهره ها و تشخیص حالات آن ها. مانند: خشم، ناراحتی، خنده و ... ، آنالیز اشیاء پیرامون و تشخیص آنها .
با استفاده از انواع آنالیز ها و تجزیه و تحلیل هایی که در بالا ذکر شدند، روبات ها قادر خواهند بود که بسیار هوشمند تر از قبل عمل کنند. مثلا در جا به جایی اجسام شیشه ای، دقت بیشتری کنند. برای کسی که ناراحت و عصبانی است، جک تعریف نکند! و سلام را با خدا حافظ پاسخ ندهد.
- هوش اجتماعی:
احساسات و مهارت های اجتماعی، دو بخش مهم از هوش مندی را تشکیل می دهند. اولا، باعث می شود که ماشین هوشمند بتواند عکس العمل طرف مقابل را در برابر یک رفتار خاص، تشخیص دهد. که این کار با درک از انگیزه فرد و احساسات او عملی خواهد شد.
ثانیا؛ برای تعامل بهتر بین انسان و کامپیوتر، ماشین هوشمند باید بتواند که احساساتی را از خود بروز دهد. در بد ترین حالت، این امر باید به صورت نشان دادن احساسات ضعیف در گفتار و با کمال ادب انجام گیرد و در بهترین حالت باید با حساسیت طبیعی و مناسب در برابر انسان همراه باشد. در واقع سعی بر این است که کامپیوتر طوری عمل کند که اگر با لحن بدی با او حرف زدید، با کمال ادب به شما پاسخی مناسب با لحن خودتان دهد. و بالعکس!
نکته مهم: مساله کمال ادب بسیار مهم است چون کامپیوتر در صورت عدم رعایت این موضوع، موجودیت خودش را به خطر خواهد انداخت و در این صورت نیاز به یک الگوریتم برای کشتی گیری انسان و کامپیوتر (یا ربات) هم به شدت احساس می شود. (معمولا انسان ها اعصاب ندارند و خیلی زود درگیر می شوند.)
http://www.narenji.ir/images/stories/authors2/keyvan/1/narenjisai/Narenjis-AI-8.jpg (http://www.narenji.ir/)
- ابتکار وخلاقیت:
یکی از شاخه های مهم، هوش مصنوعی سعی در ایجاد قوه ی خلاقیت در کامپیوتر دارد. پیاده سازی ابتکار و خلاقیت در هوش مصنوعی، هم از نظر فلسفی و هم از نظر فیزیولوژی قابل توجیه می باشد. همچنین از نظر عملی هم با پیاده سازی یک الگوریتم مخصوص که خروجی هایی هوشمندانه و متفکرانه تولید نماید، امکان پذیر است. این شاخه معمولا با نام های: درک مصنوعی (Artificial Intuition) و پندار مصنوعی (Artificial Imagination) شناخته می شود. برای پرهیز از پیچیده شدن مقاله، توضیح بیشتری نمی دهیم اما می توانید مباحث مربوط به این دو را نیز در سایت های دیگر دنبال نمایید.
- هوش عمومی:
برای پیاده سازی هوش عمومی روی کامپیوتر نیاز است که از تمامی توانایی های بالقوه ی هوش مصنوعی استفاده کنیم. برای مثال مترجم متن گوگل را در نظر بگیرید؛ می دانیم که این مترجم در حال حاضر با خطا های بسیاری رو به رو است. حال اگر بخواهیم که اشکالات کار ترجمه، حل شود؛ می توانیم از هوش عمومی استفاده نماییم: برای ترجمه خوب باید اول بفهمیم که نویسنده از چه استدلال ها و چه دلایلی برای مطرح کردن یک منظور خاص استفاده می کند.( به کار گیری جنبه درک استدلال و منطق)، همچنین باید بدانیم که موضوعی که درباره آن صحبت می شود چیست.(درک و جمع آوری اطلاعات). مرحله بعدی کار ما این است که مقصود نویسنده از جملات را پیدا کنیم؛ مثلا بفهمیم که دارد انتقاد می کند یا تعریف. (هوش اجتماعی). پس از این کار ها و در نظر گرفتن موارد فوق می توانیم به ترجمه یک متن بپردازیم.
شاید بپرسید که اگر مساله فقط این است، پس چرا گوگل کاری نمی کند ؟ در این مورد باید گفت که شاید در زبان ساده باشد اما به کار گیری چنین الگوریتم هایی با خطای بسیار کم، در حال حاضر عملا امکان پذیر نیست. البته این الگوریتم ها در ترجمه گوگل استفاده می شوند ولی خطای آنها زیاد است. برای کم کردن این گونه خطا ها، راهی که کارشناسان پیشنهاد می کنند، استفاده از شبکه های عصبی و زبان Sub-Symbolic است.