تور لحظه آخری
امروز : چهارشنبه ، 7 آذر 1403    احادیث و روایات:  امام صادق (ع):كسى كه كارهاى خود را به خدا بسپارد همواره از آسايش و خير و بركت در زندگى برخوردار اس...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

ویزای چک

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

 






آمار وبسایت

 تعداد کل بازدیدها : 1834561128




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

آموزش تشکیل هوش مصنوعی در بازیهای رایانه | مقدماتی -


واضح آرشیو وب فارسی:سایت ریسک: آموزش تشکیل هوش مصنوعی در بازیهای رایانه | مقدماتی Mahdi_Rashed 04 بهمن 1389, 21:12سلام به دوستان عزیز در مجید آنلاین . بلاخره بعد از مدتها میخوام یک سری آموزش در باره ساخت و تشکیل هوش مصنوعی یا Artificial Intelligence یا AI در بازی های رایانه 3بعدی در این تاپیک قرار بدم. آموزشها رو از یکی از جزوه های آموزشی معروفترین استاد دانشگاه Full sail و MIT ترجمه میکنم و در اینجا قرار میدم . این جزوه رو از یکی از دانشجوهای دانشگاه Full Sail گرفتم که دوستم هست و اونجا تحصیل میکنه . این جزوه اموزشی راه های طراحی یک هوش مصنوعی رو آموزش میده و روش ها و نظریه های مختلف رو توضیح داده ولی آموزش برنامه نویسی به یک زبان خاص رو شامل نمیشه . به نحوی آمده و همه جزییات هوش مصنوعی رو توضیح داده به طوری که بشه روی خیلی از زبانهای برنامه نویسی مخصوص بازی شبیه خانواده C پیاده کرد . بنابراین اگر دوست دارید مستقیماً برنامه نویسی رو یاد بگیرید این جزوه رو به شما توصیه نمیکنم ولی اگه میخواید همه مفاهیم هوش مصنوعی بازی ها رو یاد بگیرید و بعد خودتون یک هوش مصنوعی رو طراحی کنید این جزوه بسیار عالیه . اگر بخوایم این جزوه رو با کلاسهای دانشگاه های خودمون آموزش بدیم یک سری درس 8 واحدی هست که در 2 ترم مختلف 4 واحدی ارائه میشه . اولی آموزش مقدمات و تاریخچه های هوش مصنوعی هست و بعد هم آموزش حرفه ای اون که شامل یک پروژه طراحی هوش مصنوعی به عنوان پروژه پایان ترم هست. دسته بندی اموزش مقدماتی: آشنایی با هوش مصنوعی تعریف کلی هوش مصنوعی تاریخچه هوش مصنوعی در بازیهای رایانه کاربرد هوش مصنوعی در بازی های رایانه دسته بندی های هوش مصنوعی دسته بندی قبل از سال 2000 هوش مصنوعی با اجرای خطی هوش مصنوعی با اجرای کلی دسته بندی بعد از سال 2000 هوش مصنوعی استاتیک (آموزش در دوره تکمیلی) هوش مصنوعی دینامیک (آموزش در دوره تکمیلی) هوش مصنوعی با اجرای خطی تعریف الگوریتم اجرایی در سیستم محاسن و معایب نظریهای مربوطه نظریه خط قرمز نظریه گذر خطی نظریه انکار عمل (در هوش مصنوعی با اجرای خطی) هوش مصنوعی با اجرای کلی تعریف الگوریتم اجرایی در سیستم محاسن و معایب نظریه های مربوطه نظریه حق انتخاب نظریه اجرای اشتباه دستور یا تلفیق غیر مجاز دستوری نظریه رادیکال بازگشتی نظریه انکار عمل (در هوش مصنوعی با اجرای کلی) => نکته: من تاجایی که تونستم با بهترین و نزدیک ترین معنی به موضوع کلی متون رو ترجمه کردم. اگر باز هم مشکلی بود دیگه منو ببخشید.:) Mahdi_Rashed 04 بهمن 1389, 22:08آشنایی با هوش مصنوعی: 1: تعریف کلی هوش مصنوعی: هوش مصنوعی یکی از عناصر مهم در بازیهای رایانه ای میباشد که باعث میشود تا اجزای طابع آن رفتاری طبیعی تر و نزدیکتر به واقعیت داشته باشند. هوش مصنوعی یکی از اجزای جدایی ناپذیر از بازیها میباشد که نبود آن باعث کسل کننده شدن بازی میشود. هوش مصنوعی را میتون به وسیله ی یک زبان برنامه نویسی ساده طراحی و ارائه کرد و با استفاده از یک کامپایلر ان را به موتورهای طراحی بازی پیوند زد یا عملکرد بیشتری داشته باشند. هر سیستم هوش مصنوعی از 3 جز ساده ی گیرنده دستور، پردازش کننده ی دستور و اجرا کننده دستور تشکلی شده که مهمترین بخشهای آن اول پردازش و بعد اجرای آن است. اگرچه که گیرنده دستور هم نقش مهمی را ایفا میکند ولی اهمیت موارد 2 و 3 بیشتر میباشد. گیرنده دستور: گیرنده دستور شامل یک یا چندین متغیر زمانی، مکانی و ... میباشد که با توجه به نوع و زمان و حالت سیستم هوش مصنوعی تعداد متغیر های آن متفاوت است. به طور کلی تعداد متغیر هایی که گیرنده دریافت میکند خود یک متغیر است. تعداد متغیر مانند یک LOD ولی برای هوش مصنوعی میباشد. هنگامی که دستوری از طرف هسته موتور طراحی بازی برای گیرنده فرستاده میشود به چندین فیلتر مختلف عبور میکند تا زمان و مکان و ترتیب اجرای دستور قبل از پردازش مدیریت شود. گیرنده دستور در یک هوش مصنوعی استاندارد باید دارای سیستم مدیریت و ارتباط real time با پایگاه داده و در برخی مواقع باید دارای پایگاه داده مخصوص خود باشد. پردازش کننده: دقیقاً شبیه پردازش داده ها در یک CPU ، دستورات گرفته شده از طرف گیرنده دستور در هوش مصنوعی باید پردازش شوند تا بر اساس آن دستورات اجاریی جدید صادر شود. به عنوان یک مثال هنگامی که یک کارکتر هوشمند ( کارکتری که دارای هوش مصنوعی استاندارد باشد ) صدایی را در میدان جنگ میشنود به آن صدا مشکوک شده و به دنبال علت آن برود. در اینجا صدای ایجاد شده از طریق گیرنده دستور هوش مصنوعی کارکتر به پردازش گر میرود. اگر پردازش گر دارای برنامه نویسی درست و مدیریت شده ای باشد نتیجه کار بروز رفتار مشکوک شدن در کارکتر است. پس مدیریت برنامه نویسی در پردازش کننده بسیار مهم است. این مدیریت شامل نوع دستور گرفته شده است که بر حسب زمان و مکان فرق دارد. به عنوان مثال اگر سرباز در بین 4 خانه ایستاده باشد و از خانه شماره 3 یک صدا به عنوان دستور به هوش مصنوعی کارکتر وارد شود در یک پردازش درست و استاندارد کارکتر باید مستقیماً به خانه شماره 3 برود و علت آن را پیدا کند ولی اگر هوش مصنوعی بدون مدیریت طراحی شده باشد سرباز به ترتیب از خانه 1 تا 4 را برای پیدا کردن علت میگردد. پردازش کننده هر دستور از 3 بخش پردازش اولیه، پردازش مرکزی و مدیریت خروجی تشکیل شده. در پردازش اولیه دستوری که از طرف گیرنده دریافت شده است بر حسب موارد مختلف مانند زمان و مکان و نوع دریافت طبقه بندی و با توجه به اهمیت آن به واحد پردازش مرکزی فرستاده میشوند تا دوباره بر اساس موارد از پیش تعیین شده نوع رفتار خروجی و موقعیت آن مشخص شود. و در اخر به بخش مدیریت پردازش فرستاده میشوند تا بر اساس ترتیب اجرای یک رفتار طبقه بندی شده و به بخش اجرا کننده دستور فرستاده شوند. اجرا کننده: هنگامی که دستوری از طرف پردازش کننده برای اجرا کننده فرستاده شود، این بخش با توجه به داده ها و منابع و ذخایر موجو مانند فایلهای حرکتی یک کارکتر دستور را اجرا میکند. ساده ترین مثال راه رفتن کارکتر به سمتی که صدا در آنجا ایجاد شده. اجرا کننده ها معمولاً از یک بخش ویژه در پایگاه اطلاعات استفاده میکنند که در آن کلیه منابع و ذخایر بازی به صورت یک کد کوتاه طبقه بندی شده اند. البته اجرا کننده میتواند دستور را بدون اینکه از این منابع استفاده کند اجرا کند. مانند دستورات آزاد کننده یا حذف کننده دستور قبلی. به عنوان مثال کارکتر دستوری را داشته که با توجه به آن باید از نقطه A به B حرکت میکرده. ولی در این مسیر اتفاقی رخ میدهد که کارکتر از از اجرای این دستور باز میدارد. در این حالت هوش مصنوعی به جای Load کردن یک فایل جدید حرکتی یا هر نوع فایل دیگر کلیه اطلاعات مربوط به حرکت از A به B را unload میکند و به اصطلاح به حالت پایدار در می آید. نکته: در یک هوش مصنوعی استاندارد فاصله دریافت دستور تا اجرای آن باید بین 0.06 تا 0.1 ثانیه باشد. این متغیر میتواند نسبت به شرایط مکانی تغییر کند. به عنوان مثال هنگامی که کارکتر در اثر یک انفجار بزرگ گیج میشود این فاصله میتواند تا 5 ثانیه افزایش پیدا کند. 2: تاریخچه هوش مصنوعی در بازیهای رایانه: هوش مصنوعی برای اولین بار در سال 1958 در یم بازی بسیار ساده به نام Tennis For Two طراحی و پیاده سازی شد. این بازی دارای یک خط افقی برای زمین بازی و یک خط عمودی کوتاه به عنوان تور بازی تنیس و یک دایره به عنوان توپ بود. در این بازی کاربر باید با استفاده از کلیدهای چپ یا راست هنگام نزدیک شدن توپ به زمین آن را به زمین مقابل که یک کاربر هوش مصنوعی بود پرتاب میکرد. این نوع هوش مصنوعی به عنوان هوش مصنوعی با اجرای خطی یک دستور شناخته میشد که یکی از روش های آن اجرای ماتریس خطی در هر بار جابجایی توپ بین زمین بود. این نوع هوش مصنوعی تا سالها در بسیاری ازکنسولهای بازی استفاده میشد و بسیاری از شرکتهای سازنده این کنسولها با اضافه کردن کدها و دستورات جدید این نوع هوش مصنوعی را گسترش میدادند تا این که برای اولین بار شرکت سگا در یکی از کنسولهایش هوش مصنوعی جدیدی ابداع کرد که توانایی اجرای چندین دستور را با هم را داشت . البته این هوش مصنوعی باز هم یکی از زیر مجموعه های هوش مصنوعی با اجرای خطی دستور به شمار میرفت ولی محدوده استفاده آن بیشتر بود. هوش مصنوعی با اجرای کلی دستورات برای اولین بار در موتور طراحی بازی doom که اولین موتور طراحی بازی بود به کار گرفته شد و بازی های رایانه از سال 1988 وارد نسل جدیدی از بازی ها کرد. هوش مصنوعی با اجرای کلی دستور کمک بسیار زیادی در طراجی بازیهایی 3بعدی FPS کرد . بعد از موتور طراحی بازی doom موتور طراحی بازی Build engine که امروزه هم مورد استفاده مبتدی های رایانه و طراحی بازی قرار میگیرد از این نوع هوش مصنوعی جدید استفاده کرد. البته Build engine دومین موتور طراحی بازی نبود ولی از نظر استفاده از هوش مصنوعی جدید دومین موتور محسوب میشود. همچنین در سال 1992 برای اولین بار هوش مصنوعی با اجرای خطی در بازیهای استراتژیک مورد استفاده قرار گرفت. 3: کاربرد هوش مصنوعی در بازیهای رایانه: شاید شما هم به عنوان یک کاربر رایانه و طراح بازیهای رایانه فکر کنید که هوش مصنوعی فقط در طراحی بازی استفاده میشود. به غیر از استفاده از این صنعت در بازیهای رایانه و روباتهای صنعتی یا غیر صنعتی از یک سیستم هوش مصنوعی متوان در سیستم های GPS و نرم افزارهای مختلف استفاده نیز استفاده کرد. اما چون بحث ما آموزش هوش مصنوعی در بازیهای رایانه است از بحث اصلی خارج نمیشویم. از هوش مصنوعی در همه نوع از بازیهای رایانه ای استفاده میشود. بازیهای شبیه سازی ورزشی و غیره، جنگی یا استراتژیک و یا آموزشی. به طور کلی از هوش مصنوعی در هر شی موجود در بازی که رفتاری را از خود نشان دهد استفاده میکنیم. تنها مسئله مهم نوع استفاده و انتخاب درست سیستم هوش مصنوعی با توجه به بازی است که آموزش آن در جلسات اینده ارائه خواهد شد. Mahdi_Rashed 05 بهمن 1389, 11:20دسته بندیهای هوش مصنوعی: دسته بندی های قبل از سال 2000: این دسته بندی ها شامل موتور های طراحی بازی قدیمی میشود که از سیستم های هوش مصنوعی خطی یا کلی استفاده میکردند. هوش مصنوعی با اجرای خطی: اولین نوع هوش مصنوعی در بازیهای رایانه ای بود که طریقه کار ان اجرای یک سری دستور از پیش تعیین شده توسط طراح بود. این دستورات به صورت خطی کامپایل میشدند اما پس از مدتی و با گسترش این نوع هوش مصنوعی امکان استفاده چند هوش مصنوعی با اجرای خطی در یک بازی میسر شد. هوش مصنوعی با اجرای کلی: بعد از هوش مصنوعی با اجرای خطی به وجود آماد. سیستم کاری آن به این گونه بود که تعدادی دستور از پیش تعیین شده را از طراح به عنوان ورودی دریافت میکرد و قبل از اجرای کامل بازی به صورت کامل همه آنها را پردازش میکرد و با استفاده از معادلات مختلف و نسبتاً پیچیدیده آنها را به اطلاعات مربوط به کاراکتر تبدیل و مورد استفاده قرار میداد. این نوع هوش مصنوعی نسبت به نوع اجرای خطی پردازش کمتری را در محیط بازی انجام میداد و ظرفیت پذیرش داده های ورودی آن نسبت به انواع قبلی بسیار بیشتر بود. دسته بندی های بعد از سال 2000: با ورود به نسل جدید بازی ها و پدید آمدن بسیاری از موتور های طراحی بازی نظیر Unreal Engine 1 کلیه بخشهای طراحی بازی تغییرات عمده ای کرد. به عنوان مثال سیستم رندرینگ 3بعدی Voxel value جای خود را به DirectX و بعد OpenGL داد. در همین دوره سیستم های هوش مصنوعی تغییرات بسیار زیادی کرد و سیستم های محاسبه گر جدیدی به آنها اضافه شد که میتوان به path finder و Pylon اشاره کرد. هوش مصنوعی استاتیک: نوعی هوش مصنوعی در بازیهای نسل جدید است که با دریافت اطلاعات و پردازش آنها دستورات هوش مصنوعی را مستقیماً و بدون واسطه انجام میدهد. (آموزش در دوره تکمیلی) هوش مصنوعی دینامیک: نوعی هوش مصنوعی که پس از دریافت و پردازش اطلاعات دریافت شده با در نظر گرفتن متغیرهای محیطی و زمانی مختلف ان دستور را اجرا میکند. یعنی ممکن است که در هنگام اجرای یک دستور از هوش مصنوعی ناگهان تصمیم خود را عوض کرده و دستور جدیدی را که درافت کرده اجرا کند. (آموزش در دوره تکمیلی) Mahdi_Rashed 06 بهمن 1389, 13:58هوش مصنوعی با اجرای خطی: تعریف: شبیه یک سیستم داس هوش مصنوعی با اجرای خطی نیز دستورات گرفته شده را خط به خط پردازش و اجرا میکند. هوش مصنوعی با اجرای خطی در اصل یک سیستم بسیار پیچیده از ترکیب زبانهای ماشین و ماتریسهای پیچیده با معادلات ریاضی است. این هوش مصنوعی در اولین بار در سال 1958 یک بازی بسیار ساده به نام Tennis For two استفاده شد که از یک ترکیب ماتریسی ساده برای کاربر CPU دستوراتی را برای شناسایی محل توپ و حرکت دادن صفحه راکت تنیس به سمت توپ استفاده میکرد. هوش مصنوعی با اجرای خطی ثمره تلاش 3ساله 120 محقق رایانه و ریاضیدان بود که در اولین نگاه خود بزرگترین یافته بشر در دهه 1950 است. هوش مصنوعی با اجرای خطی پس از مدتها کار و تلاش سر انجام با انجام 1500 مورد تغییر و ارتقای برنامه نویسی توسط برنامه نویسان شرکت سگا به نسل بعدی خود ارتقا پیدا کرد که توانایی اجرای چند تابع هوش مصنوعی خطی در آن را دارا بود. البته این نوع هوش مصنوعی تا 7 سال در انحصار شرکت سگا و کنسولهای بازی آنها بود. نسلهای قدیمی و اولیه هوش مصنوعی با اجرای خطی فقط یک تابع را دریافت میکردند و کارکتر های تابع را به یک مسیر مشخص با هدف مشخص بفرستد ولی در نسل جدید با اضافه شدن چند لایه دیگر به سیستم هوش مصنوعی در هر مرحله بازی میشد تا 5 نوع کارکتر با هدف و مسیر جداگانه داشت . الگوریتم اجرایی در سیستم ها: در حال حاظر این نوع هوش مصنوعی از الگوریتم بسیار بسیار ساده ای ساخته میشود که یک دانشجوی با اطلاعات بسیار کم و جزیی میتواند آن را برنامه نویسی کند ولی در دهه 1950 این الگوریتم به دلیل نبود نرم افزارهای برنامه نویسی و سیستم عاملها کاری بسیار سخت بوده است . الگوریتم این نوع سیستم هوش مصنوعی از 5 بخش جداگانه تشکیل میشد. 1: اولین بخش شناساگر قوانین نام دارد که از طریق بردها و سخت افزارهای دستگاه اجرا کننده بازی اطلاعات جزیی شبیه قوانین بازی را دریافت میکند. این قوانین شامل محدودیتهای حرکتی بازکن دریافت کننده هوش مصنوعی، نوع حرکتها، احتمالاتی که در طی بازی پیش می آید و ... . پس از دریافت این قوانین دستگاه به خودی خود آماده اجرای کلی سیستم هوش مصنوعی میشود ولی در این حالت اطلاعات دریافت شده فقط جنبه سمبلیک داشته و استفاده ای را در محیط بازی ندارند . پس نیاز است تا این اطلاعات که به اصطلاح به انها اطلاعات خام گفته میشود به بخشی هدایت شوند تا از این اطلاعات یک اجرا کننده قوانین ساخته بشود. چرا که شناساگر قوانین فقط توانایی شناسایی این قوانین را دارد و نمیتواند آنها را اجرا کند. پس اطلاعات خام به بخش دیگری به نام اجرا کننده قوانین فرستاده میشود. 2: اجراکننده قوانین پس از دریافت داده های خام از شناساگر قوانین آنها را طی یک مرحله پردازشی اصلی و یک مرحله طبقه بندی، قوانین را مدیریت و آماده استفاده میکند. این بخش نسبتاً زمان زیادی را برای محاسبه میبرد. اطلاعات در اولین مرحله پردازش میشوند . یعنی هر یک از قوانین که وارد این بخش میشود باید به عکس العملی متصل شود که هنگام زیر پا گذاشته شدن این قوانین در کمترین زمان ممکن اجرا شود. مثلاً در صورتی که کاربر CPU در حال خروج از محدوده بازی بود بلافاصله راه او بسته شود. پس از این مرحله اطلاعات باید طبقه بندی بشوند تا اجرا آنها سریع تر باشد. پس در مرحله طبقه بندی این قوانین به سطوحی که برنامه نویسان تعیین میکنند طبقه بندی میشوند. مثلاً در جاهایی که باید جلو ادامه حرکت کاراکتر گرفته شود در یک طبقه یا حرکاتی که در موقعیت های خاص نباید انجام دهد در یک طبقه دیگر. پس از این مرحله قوانین آماده استفاده در محیط بازی هستند . این اطلاعات طبقه بندی و مدیریت شده در بخشی از حافظه همراه اطلاعات دیگر نگه داری میشوند تا تابع های مختلف آنها را فراخوانی کند. 3: بخش سوم که شاید در بسیاری از زبانهای برنامه نویسی امروزی نیز وجود داشته باشد Listener است که همیشه منتظر یک عمل است تا عکس و العملی را اجرا کند . Listener به 2 نوع تقسیم میشود. World Listener و Local Listener که کار این دو در حالی که از هم جدا است ولی باید با هم باشد( ترجمش رو خودمم نفهمیدم - فکر کنم اشتباه ترجمه کردم - ببخشید ) World Listener: این بخش همیشه منتظر عملهایی است که کاراکتر CPU با انجام یک کار قوانینی که از قبل شناسایی و پردازش شده اند را زیر پا میگذارد. در واقع World listener همیشه یک رابطه دائمی بین قوانین و رفتار کاراکتر دارد که در صورتی که رفتار از محدوده قوانین خارج شد از اجرای آن جلگیری شود. یعنی هنگامی که کاراکتر از محدوده بازی خارج میشود Listener رفتار را برای قوانین و بخش اجار کننده قوانین میفرستد و دستور منع حرکت را برای listener و از Listener برای کاراکتر میفرستد. در این حالت کاراکتر دیگر به حرکت خود که قانون شکنی را به همراه دارد خودداری میکند. Local Listener: هنگام اجرای بازی با توجه به دستوری که ما به آن میدهیم -یعنی سطح سختی بازی از آسان تا خیلی سخت- اجرا میکند. هر یک از سطوح سختی بازی دارای اطلاعاتی است که کاراکتر CPU را با توجه به آن اطلاعات و متغیر ها مجبود به انجام عکس العمل میکند. این اطلاعات شامل سرعت، نوع حرکت، سرعت هدفگیری یا تیر انداری و... میشود که با بالا رفتن سطح سختی بازی بیشتر میشود. البته این نوع Listener بعدها به هوش مصنوعی با اجرا خطی اضافه شد. نکته : در مقایسه با سیستم های هوش مصنوعی امروزی Listener همان دریافت کننده دستور در هوش مصنوعی استاندارد است. 4: بخش چهارم پردازش کننده دستوراتی است که از Listener به اجرا کننده قوانین و بر عکس را بر عهده دارد. این بخش از سیستم هوش مصنوعی حافظه بیشتری نسبت به دیگر بخشها دارد چرا که باید چندین کار را بر روی یک دستور به طور همزمان انجام دهد. هنگامی که دستوری از Listener برای اجرا کننده یا برعکس ارسال میشود پردازش کننده باید اختصات اولیه و مختصات مقصد را به صورت اعداد و ارقام ریاضی دریافت کند و طی پردازش آنها را به ماتریس های اجرایی برای کاراکتر ها تبدیل کند. این پردازش به جز مختصات میتواند اطلاعاتی شبیه سرعت و دقت و درصد خطا و... نیز باشد. پس از پردازش و قبل از اجرا دستور یا قانون پردازش کننده اطلاعات را به بخش اجرا کننده ی نهایی میفرستد تا این دستورات با استفاده از رابط های گرافیکی و منابع بازی در صفحه نمایش اجرا شود. 5: این بخش که بعدها در بازیهایی با گرافیک بالاتر اضافه شد پس از دریافت داد ها از پردازش کننده با رجوع به رابطهای گرافیک و منابع گرافیکی بازی نوع حرکت را در صفحه نمایش پیاده میکند . البته قبل از پیاده سازی این اطلاعات یک نسخه از آن را برای اجرا کننده قوانین میفرستد تا عکس العمل های مورد نیاز نیر صورت بگیرد. Mahdi_Rashed 10 بهمن 1389, 10:11محاسن و معایب: سیستم هوش مصنوعی با اجرای خطی از برخی نظرها دارای محاسنی میباشد که شاید در سیستم های هوش مصنوعی دیگر وجود نداشته باشد ولی در عین حال دارای معایب و کمبود هایی نیز هست. محاسن: - نتیجه ی محاسباتی که کاراکتر تبعیت کننده انجام میدهد درست مطابق خواسته طراح بازی و هوش مصنوعی هست. - امکان بروز خطاهایی که باعث ایجاد یک باگ کلی در سیستم بازی شوند بسیار کم است. - این نوع هوش مصنوعی به دلیل این که از یک الگوریتم محاسباتی مشخصی پیروی میکند دارای حجم پردازشی پایینی در سیستم ها و رایانه های امروزی است. معایب: - سادگی بیش از اندازه با توجه به حجم پردازشی پایین که استفاده از این نوع هوش مصنوعی را در بازیهای امروزی غیر ممکن کرده. - محاسبه بر پایه ریاضی ممکن است برای اجرا در موتور های طراحی بازی نسل جدید مشکل ایجاد کند. - غیر طبیعی بودن رفتارها اگر این سیستم هوش مصنوعی برای کارکتر ها استفاده شود. بهترین گزینه برای استفاده از این هوش مصنوعی در بازیهای امروزی استفاده آن برای سیستمهای غیر کارکتری است. - نبود تابع برخوردی برای اجرای یک دستور Mahdi_Rashed 15 بهمن 1389, 12:45نظریهای مربوطه: نظریه ها یا اصلهای برنامه نویسی و ساخت هوش مصنوعی عواملی هستند که سیستم کلی هوش مصنوعی را از انجام یک عمل که توسط بخشهای سیستم هوش مصنوعی دریافت، پردازش و برای عکس العمل آماده شده خودداری کنند. علل پدید امدن این عمل وجود برخی رادیکالها و معادلات پیچیده اس است که نه انسان و نه رایانه ها قادر به شناسایی آنها نیستند و تنها راه حل جلوگیری از این عمل استفاده از دستوراتی هست که در مقابل اشتباهات سیستم هوش مصنوعی انجام میشوند. به طور کلی هوش مصنوعی این اصول را زیر پا گذاشته و یک عمل را انجام نمیدهد و یا اشتباه انجام میدهد و در مقابل دستورات اجرایی نسبت به پوشاندن یا تعمیر اشتباه انجام شده دست به کار میشوند. نمونه های بیشتر در تعاریف این اصول ارائه شده. نظریه خط قرمز: در طراحی یک هوش مصنوعی خط قرمز به معنای همان قوانین و حدودی است که برای یک کاراکتر تبعیت کننده تعریف میشود . این نظریه وقتی به وجود میاید که سیستم هوش مصنوعی در حین انجام یک دستور، دستوری را صادر کند که خلاف دستورات و محدودیت های کارکتر باشد. در این حالت به دلیل به وجود آمدن یک سری متغیر های دارای رادیکالهای گنگ ( در مورد ریاضی چیزی نمیدونم ممکنه که بد ترجمه کرده باشم) سیتسم توانایی محاسب هم زمان آنها را با دستورات در جریان نداشته و ناچار میشود تا قوانین جدیدی را با زبان ریاضی و ماتریس برای کاراکتر تعریف کند تا دستور جدید را اجرا و از ادامه اجرای دستورات جاری خودداری کند. این نظریه فقط و فقط یک راه حل داشته و آن تزریق کد ها و دستوراتی هستند که معادلات ریاضی با یک سطح پیچیدگی خاص را از قوانین تحمیل شده به کاراکتر بیابند و آنها را از بین ببرند. معمولاً از دستورات kill در زبانها ماشین استفاده میشود. نظریه خط قرمز به دلیل این که دستور جدید وارد شده به هوش مصنوعی کاراکتر مخالف یکی از دستورات و قوانین خود کاراکتر یا دستورات کلی بازی است به این نام یعنی خط قرمز نام گرفته است. این نظریه برای همه ی سیستم های هوش مصنوعی وجود دارد ولی برای اولین با� سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 587]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن