هوش مصنوعی به هوشی که یک ماشین از خود نشان میدهد و یا به دانشی در کامپیوتر که سعی در ایجاد آن دارد گفته میشود بیشتر نوشته ها و مقاله های مربوط به هوش مصنوعی آن را دانش شناخت و طراحی مامورهای هوشمند تعریف کرده اند یک مامور هوشمند سیستمی است که با شناخت محیط اطراف خود شانس موفقیت خود را بالا میبرد جان مکارتی که واژه هوش مصنوعی را در سال 1956 استفاده
قیمت فایل فقط 6,900 تومان
هوش مصنوعی
فهرست مطالب
عنوان صفحه
چكیده......................................................................................................................... 1
مقدمه ........................................................................................................................ 2
فصل اول : كلیات موضوع
تعریف و طبیعت هوش مصنوعی............................................................................... 7
پیدایش و پیشرفت هوش مصنوعی ......................................................................... 8
هوش مصنوعی و هوش انسانی................................................................................ 12
شاخههای هوش مصنوعی........................................................................................ 14
فلسفهٔ هوش مصنوعی............................................................................................ 27
انواع هوش مصنوعی ................................................................................................ 53
كاربرد هوش مصنوعی ............................................................................................ 57
معمای هوش الكترونیك ، مبانی و شاخههای علم هوش مصنوعی........................... 59
چالشهای بنیادین هوشمصنوعی............................................................................. 64
فصل دوم : هوش مصنوعی در بازیهای كامپیوتری
هوش مصنوعی در بازیهای كامپیوتری.................................................................. 71
بازیهای تأثیرگذار در هوشمصنوعی .................................................................... 88
فصل سوم : تكنیك ها وزبانهای برنامه نویسی هوش مصنوعی
تكنیك ها وزبانهای برنامه نویسی هوش مصنوعی........................................118
مثالی از برنامهنویسی شیءگرا در شبكههای عصبی و هوش مصنوعی.....163
سخن آخر.............................................................................................................179
فهرست منابع.......................................................................................................180
چكیده
هدف از این پروژه آشنائی با هوش مصنوعی به عنوان سمبل ونماد دوران فراصنعتی و نقش و كاربرد آن در صنایع و مؤسساتتولیدی میباشد. بدین منظور، این موضوع در قالب 3 فصل ارائه میشود. در (فصل اول) كلیات هوش مصنوعی موردمطالعه قرار میگیرد و سئوالاتی نظیر این كه هوش مصنوعیچیست؟ تفاوت هوشمصنوعی و هوش طبیعی (انسانی) درچیست؟ شاخههای عمده هوش مصنوعی كدامند؟ و نهایتأ، اجزایهوش مصنوعی نیز تشریح میشود ،كاربردهای هوش مصنوعیدر صنایع و مؤسساتتولیدی، بخصوص در زمینهسیستمهای خبره وآدموارهها مورد مطالعه وتجزیه و تحلیل قرارمیگیرد. ودر فصل دوم به بررسی هوش مصنوعی در بازی های كامپیوتری و در فصل سوم به بررسی تكنیك برنامه نویسی در هوش مصنوعی مورد مطالعه قرار می گیرد .
مقدمه
هوش مصنوعی به هوشی که یک ماشین از خود نشان میدهد و یا به دانشی در کامپیوتر که سعی در ایجاد آن دارد گفته میشود. بیشتر نوشته ها و مقاله های مربوط به هوش مصنوعی آن را "دانش شناخت و طراحی مامورهای هوشمند تعریف کرده اند. یک مامور هوشمند سیستمی است که با شناخت محیط اطراف خود, شانس موفقیت خود را بالا میبرد جان مکارتی که واژه هوش مصنوعی را در سال 1956 استفاده نمود, آن را دانش و مهندسی ساخت ماشین های هوشمند" تعریف کرده است. تحقیقات و جستجوهایی انجام شده برای رسیدن به ساخت چنین ماشین هایی مرتبط با بسیاری از رشته های دانشیک دیگر میباشد, مانند دانش کامپیوتر, روانشناسی, فلسفه, عصب شناسی, دانش ادراک, تئوری کنترل, احتمالات, بهینه سازی و منطق.
« هوش مصنوعی، دانش ساختن ماشین ها یا برنامههای هوشمند است. » همانگونه كه از تعریف فوق-كه توسط یكی از بنیانگذاران هوش مصنوعی ارائه شده است- برمیآید،حداقل به دو سؤال باید پاسخ داد:
1ـ هوشمندی چیست؟
2ـ برنامههای هوشمند، چه نوعی از برنامهها هستند؟تعریف دیگری كه از هوش مصنوعی میتوان ارائه داد به قرار زیر است:
« هوش مصنوعی، شاخهایست از علم كامپیوتر كه ملزومات محاسباتی اعمالی همچون ادراك (Perception)، ستدلال(reasoning) و یادگیری(learning) را بررسی كرده و سیستمی جهت انجام چنین اعمالی ارائه میدهد.»و در نهایت تعریف سوم هوش مصنوعی از قرار زیر است:
«هوش مصنوعی، مطالعه روشهایی است برای تبدیل كامپیوتر به ماشینی كه بتواند اعمال انجام شده توسط انسان را انجام دهد.» به این ترتیب میتوان دید كه دو تعریف آخر كاملاً دو چیز را در تعریف نخست واضح كردهاند.
1ـ منظور از موجود یا ماشین هوشمند چیزی است شبیه انسان.
2ـ ابزار یا ماشینی كه قرار است محمل هوشمندی باشد یا به انسان شبیه شود، كامپیوتر است. هر دوی این نكات كماكان مبهم و قابل پرسشند. آیا تنها این نكته كه هوشمندترین موجودی كه میشناسیم، انسان است كافی است تا هوشمندی را به تمامی اعمال انسان نسبت دهیم؟ حداقل این نكته كاملاً واضح است كه بعضی جنبههای ادراك انسان همچون دیدن و شنیدن كاملاً ضعیفتر از موجودات دیگر است. علاوه بر این، كامپیوترهای امروزی با روشهایی كاملاً مكانیكی(منطقی) توانستهاند در برخی جنبههای استدلال، فراتر از تواناییهای انسان عمل كنند. بدین ترتیب، آیا میتوان در همین نقطه ادعا كرد كه هوش مصنوعی تنها نوعی دغدغه علمی یا كنجكاوی دانشمندانه است و قابلیت تعمق مهندسی ندارد؟(زیرا اگر مهندسی، یافتن روشهای بهینه انجام امور باشد، به هیچ رو مشخص نیست كه انسان اعمال خویش را به گونهای بهینه انجام میدهد). به این نكته نیز باز خواهیم گشت. اما همین سؤال را میتوان از سویی دیگر نیز مطرح ساخت، چگونه میتوان یقین حاصل كرد كه كامپیوترهای امروزین، بهترین ابزارهای پیادهسازی هوشمندی هستند؟
رؤیای طراحان اولیه كامپیوتر از بابیج تا تورینگ، ساختن ماشینی بود كه قادر به حل تمامی مسائل باشد، البته ماشینی كه در نهایت ساخته شد(كامپیوتر) به جز دسته ای خاص از مسائلقادر به حل تمامی مسائل بود. اما نكته در اینجاست كه این «تمامی مسائل» چیست؟ طبیعتاً چون طراحان اولیه كامپیوتر، منطقدانان و ریاضیدانان بودند، منظورشان تمامی مسائل منطقی یا محاسباتی بود. بدین ترتیب عجیب نیست، هنگامی كه فوننیومان سازنده اولین كامپیوتر، در حال طراحی این ماشین بود، كماكان اعتقاد داشت برای داشتن هوشمندی شبیه به انسان، كلید اصلی، منطق(از نوع به كار رفته در كامپیوتر) نیست، بلكه احتمالاً چیزی خواهد بود شبیه ترمودینامیك!
به هرحال، كامپیوتر تا به حال به چنان درجهای از پیشرفت رسیده و چنان سرمایهگذاری عظیمی برروی این ماشین انجام شده است كه به فرض این كه بهترین انتخاب نباشد هم، حداقل سهلالوصولترین و ارزانترین و عمومیترین انتخاب برای پیادهسازی هوشمندیست. بنابراین ظاهراً به نظر میرسد به جای سرمایهگذاری برای ساخت ماشینهای دیگر هوشمند، میتوان از كامپیوترهای موجود برای پیادهسازی برنامههای هوشمند استفاده كرد و اگر چنین شود، باید گفت كه طبیعت هوشمندی ایجاد شده حداقل از لحاظ پیادهسازی، كاملاً با طبیعت هوشمندی انسانی متناسب خواهد بود، زیرا هوشمندی انسانی، نوعی هوشمندی بیولوژیك است كه با استفاده از مكانیسمهای طبیعی ایجاد شده، و نه استفاده از عناصر و مدارهای منطقی. در برابر تمامی استدلالات فوق می توان این نكته را مورد تاُمل و پرسش قرار داد كه هوشمندی طبیعی تا بدان جایی كه ما سراغ داریم، تنها برمحمل طبیعی و با استفاده از روش های طبیعت ایجاد شده است. طرفداران این دیدگاه تا بدانجا پیش رفتهاند كه حتی ماده ایجاد كننده هوشمندی را مورد پرسش قرار داده اند، كامپیوتر از سیلیكون استفاده می كند، در حالی كه طبیعت همه جا از كربن سود برده است. مهم تر از همه، این نكته است كه در كامپیوتر، یك واحد كاملاً پیچیده مسئولیت انجام كلیه اعمال هوشمندانه را بعهده دارد، در حالی كه طبیعت در سمت و سویی كاملاً مخالف حركت كرده است. تعداد بسیار زیادی از واحدهای كاملاً ساده (بعنوان مثال از نورونهای شبكه عصبی) با عملكرد همزمان خود (موازی) رفتار هوشمند را سبب می شوند. بنابراین تقابل هوشمندی مصنوعی و هوشمندی طبیعی حداقل در حال حاضر تقابل پیچیدگی فوق العاده و سادگی فوق العاده است. این مساُله هم اكنون كاملاً به صورت یك جنجال(debate) علمی در جریان است. در هر حال حتی اگر بپذیریم كه كامپیوتر در نهایت ماشین هوشمند مورد نظر ما نیست، مجبوریم برای شبیهسازی هر روش یا ماشین دیگری از آن سود بجوییم.
تعریف و طبیعت هوش مصنوعی
هنوز تعریف دقیقی که مورد قبول همهٔ دانشمندان این علم باشد برای هوش مصنوعی ارائه نشدهاست، و این امر، به هیچ وجه مایهٔ تعجّب نیست. چرا که مقولهٔ مادر و اساسیتر از آن، یعنی خود هوش هم هنوز بطور همهجانبه و فراگیر تن به تعریف ندادهاست. در واقع، میتوان نسلهایی از دانشمندان را سراغ گرفت که تمام دوران زندگی خود را صرف مطالعه و تلاش در راه یافتن جوابی به این سؤال عمده نمودهاند که: هوش چیست؟
اما اکثر تعریفهایی که در این زمینه ارایه شدهاند بر پایه یکی از ۴ باور زیر قرار میگیرند:
شاید بتوان هوش مصنوعی را این گونه توصیف کرد:«هوش مصنوعی عبارت است از مطالعه این که چگونه کامپیوترها را میتوان وادار به کارهایی کرد که در حال حاضر انسانها آنها رابهتر انجام میدهند».
پیدایش و پیشرفت هوش مصنوعی
در اواسط دهه 1990، یك بازی تیراندازی اول شخص منتشر شد كه به كاربر امكان میداد بازی را برای خود سفارشی (Customize) كند. این بازی، Quake بود كه در فناوری ساخت بازیهای كامپیوتری یك نوآوری محسوب میشد. Quake اولین بازی سهبعدی واقعی است. به این معنی كه بهصورت بلادرنگ در سه بعد رندر میشود. (پیش از آن spiritها یا گرافیكهای دوبعدی به صورت سهبعدی شبیهسازی میشدند). چیزهای دیگری نیز در این بازی وجود داشت كه موردتوجه قرار گرفت؛ مانند نشانه گرفتن سلاح به بالا یا پایین. زیرا حركتدادن سلاح به بالا یا پایین نیازمند پردازش در بعد سوم، یعنی عمق یا ارتفاع در یك محیط سهبعدی است.
بازی Quake از موجودات مجازی هوشمند (bot) هر چند با هوش مصنوعی كم، بهره برده بود. هوش مصنوعی یكbot در بازیهای تیراندازی اول شخص، میتواند در دو بخش بررسی شود: یكی ناوبری و حركت، و دیگری مبارزه. اگر بخواهیم رفتار bot نزدیك به رفتار یك انسان باشد، پیادهسازی آن بسیار پیچیدهتر از هوشمصنوعی در مبارزه است. هر چند پیادهسازی هوش مصنوعی در مبارزه نیز با هر استاندارد و روشی آسان نیست.
برای اینكه باتها بتوانند حركت كنند، باید بتوانند درباره اشیا و موجودات پیرامون خود یاد بگیرند. این ایده بسیار اساسی، میتواند به بخشهای بیشتری مانند قابلیت آنالیز هنگام حركت در یك جهت خاص و سپس قابلیت پیدا كردن اشیا و شخصیتهای مجازیِ مقابل در یك مرحله بازی گسترش یابد. این ایدهها شاید ساده به نظر برسند، ولی واقعاً اینگونه نیست؛ چرا كه یك bot باید بتواند در برابر دو چیز واكنش درستی داشته باشد: دیوارها و فضاهای خالی. دیوارها شامل همه چیزهایی است كه نمیتوان از آن عبور كرد؛ مانند خود یك دیوار، نرده، شخصیتهای مجازی، جعبهها، پلههای رو به بالا و ... فضاهای خالی نیز هر جایی است كه زمین همواره نیست یا دچار شكستگی است؛ مانند یك چاله، پلههای رو به پایین و ... . برای رویارویی با این دو مانع، یك روش خوب، افزایش كارایی تابع جستجو است. این تابع كه در بازی Quake معرفی شد، به بات امكان میدهد یك خط را از یكی از بُعدهای X-Y-Z تا بُعد بعدی جستجو كند و اطلاعاتی مانند اینكه <این خط به كجا میرود، چه چیزی آن را قطع میكند و ...> را دریافت كند.
دو روش برای گذشتن یكبات از یك مرحله، بیشتر مورد استفاده قرار میگیرد: روش نخست از گرههای گراف وضعیت و روش دوم از مسیرهای (path) آن استفاده میكند. در یك محیط براساس روش گره، گرهها در قسمت قوانین بهینهسازی مرحله (level) كه به وسیله سازنده یك bot تعریف شده است قرار دارند. هر گره میتواند اطلاعات بات درباره قسمت خاصی از محیط را بدهد. وضعیت مبارزه، كاربردهای زیادی برای تعدادی از الگوریتمهای جستجو یا پروسه تصمیمگیری دارد. در یك مبارزه، باید برای تشخیص اینكه كدام كار برای بات بهتر است حركتهای رقیب پیشبینی شود.
روش Minimax، در مواقعی كه یك تابع هیورستیك خوب (یك هیورستیك برخلاف الگوریتم، ممكن است به یك پاسخ قطعی نرسد) در دست باشد، میتواند یك حركت خوب را انجام دهد. از آنجا كه minimax روش كندی است، میتوان از Partial Minimax استفاده كرد كه در الگوریتمهای تصمیمگیری به كار میرود؛ هر چند این روش هنوز چندان پذیرفته نشده است. پژوهشگران هوش مصنوعی پیشنهاد میكنند، تنها زمانی از Partial Minimax استفاده كنید كه یك گزینه بدیهی در دست داشته باشید (زمانی كه متغیر minimax با ارزش بیشتر كاملا بهتر از متغیر دیگر باشد). در غیر اینصورت اگر ارزش همه متغیرها نزدیك به هم است، از استراتژی دیگری استفاده كنید. حال آنكه در یك بازی بلادرنگ برای یكbot معمولاً گزینه بدیهی وجود ندارد تا آن را برگزینید. هر گزینه به یك استراتژی متفاوت وابسته است كه bot میتواند آن را انتخاب كند.
شاید بسیاری از طرفداران روش minimax به ارزش سرعت، هنگام بررسی كارایی یك بات در بازی بلادرنگ واقف نیستند؛ مانند كمترین زمانی كه یك بات نیاز دارد تا درباره یك تصمیم بیندیشد، گزینههای بیشتری كه برای تصمیمگیری ایجاد میكند، كیفیت واكنش بهتر و سطح خبرگی. به یاد داشته باشید كه یك بات در برابر مغز یك انسان كه میتواند دنیای سهبعدی را با كمك حس و تخیل خود تفسیر كند، قرار میگیرد. برای نمونه در یك مبارزه، یك بات نیاز به نشانهگیری به سوی دشمن خود، پیشبینی حركت آن و... دارد كه همه، بدون داشتن درك واقعی از محیطی كه در آن قراردارد انجام میشود.
برای دستیابی به بیشترین سرعت، بیشتر از الگوریتم *A استفاده میشود. هر چند این الگوریتم پیشرفته نیست، ولی سرعت بالایی دارد. پیچیدگی زمانی این الگوریتم ((O(log h(n است كه (h(n پیچیدگی تابع هیورستیك است. *A یك الگوریتم جستجوی "اول عمق" است كه هیورستیك آن را كنترل میكند و میتواند مناسبترین شاخه بعدی گراف را حدس بزند و در هر عمق، تنها شاخهای كه ارزش هیورستیك بهتری دارد، گسترش مییابد.
هوش مصنوعی و هوش انسانی:
برای شناخت هوش مصنوعی شایسته است تا تفاوت آن را با هوشانسانی به خوبی بدانیم. مغز انسان از میلیاردها سلول یا رشته عصبیدرست شده است و این سلولها به صورت پیچیدهای به یكدیگرمتصلاند. شبیهسازی مغز انسان میتواند از طریق سختافزار یا نرمافزارانجام گیرد. تحقیقات اولیه نشان داده است شبیهسازی مغز، كاریمكانیكی و ساده میباشد. برای مثال، یك كرم دارای چند شبكه عصبیاست. یك حشره حدود یك میلیون رشته عصبی دارد و مغز انسان ازهزار میلیارد رشته عصبی درست شده است. با تمركز و اتصال رشتههایعصبی مصنوعی میتوان واحد هوش مصنوعی را درست كرد.
هوش انسانی بسیار پیچیدهتر و گستردهتر از سیستمهای رایانهایاست و توانمندیهای برجستهای مانند: استدلال، رفتار، مقایسه، آفرینشو بكار بستن مفهومها را دارد.
هوش انسانی توان ایجاد ارتباط میان موضوعها و قیاس ونمونه سازیهای تازه را دارد. انسان همواره قانونهای تازهای میسازد و یاقانون پیشین را در موارد تازه بكار میگیرد. توانایی بشر در ایجادمفهومهای گوناگون در دنیای پیرامون خود، از ویژگیهای دیگر اوست.مفهومهای گستردهای همچون روابط علت و معلولی، رمان و یامفهومهای سادهتری مانند گزینش وعدههای خوراك (صبحانه، ناهار وشام) را انسان ایجاد كرده است. اندیشیدن در این مفهومها و بكاربستنآنها، ویژه رفتار هوشمندانه انسان است.
هوش مصنوعی در پی ساخت دستگاههایی است كه بتوانندتوانمندهای یاد شده (استدلال، رفتار، مقایسه و مفهوم آفرینی) را از خودبروز دهند. آنچه تاكنون ساخته شده نتوانسته است خود را به این پایهبرساند، هر چند سودمندیهای فراوانی به بار آورده است.
نكته آخر اینكه، یكی از علل رویارویی با مقوله هوش مصنوعی،ناشی از نامگذاری نامناسب آن میباشد. چنانچه جان مككارتی در سال1956 میلادی آن را چیزی مانند «برنامهریزی پیشرفته» نامیده بود شاید جنگ و جدلی در پیرامون آن رخ نمیداد.
جهت دریافت فایل هوش مصنوعی لطفا آن را خریداری نمایید
قیمت فایل فقط 6,900 تومان
برچسب ها : هوش مصنوعی , دانلود هوش مصنوعی , اینترنت , هوش مصنوعی در بازیهای كامپیوتری , کامپیوتر , بازیهای تأثیرگذار در هوشمصنوعی , پیدایش و پیشرفت هوش مصنوعی , نرم افزار , سخت افزار , سایت , وب سایت , , پروژه دانشجویی , دانلود پژوهش , دانلود تحقیق , پایان نامه , دانلود پروژه