دانلود مقاله هوش مصنوعی، دانش ساختن ماشین‌‌ ها یا برنامه‌های هوشمند

Word 384 KB 17910 58
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۲۴,۰۰۰ تومان
قیمت: ۱۹,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • همانگونه که از تعریف فوق-که توسط یکی از بنیانگذاران هوش مصنوعی ارائه شده است- برمی‌آید،حداقل به دو سؤال باید پاسخ داد:
    1 هوشمندی چیست؟
    2 برنامه‌های هوشمند، چه نوعی از برنامه‌ها هستند؟
    تعریف دیگری که از هوش مصنوعی می‌توان ارائه داد به قرار زیر است:
    « هوش مصنوعی، شاخه‌ایست از علم کامپیوتر که ملزومات محاسباتی اعمالی همچون ادراک (Perception)، استدلال(reasoning) و یادگیری(learning) را بررسی کرده و سیستمی جهت انجام چنین اعمالی ارائه می‌دهد.»
    و در نهایت تعریف سوم هوش مصنوعی از قرار زیر است:
    «هوش مصنوعی، مطالعه روش‌هایی است برای تبدیل کامپیوتر به ماشینی که بتواند اعمال انجام شده توسط انسان را انجام دهد.»
    به این ترتیب می‌توان دید که دو تعریف آخر کاملاً دو چیز را در تعریف نخست واضح کرده‌اند.
    1 منظور از موجود یا ماشین هوشمند چیزی است شبیه انسان.
    2 ابزار یا ماشینی که قرار است محمل هوشمندی باشد یا به انسان شبیه شود، کامپیوتر است.
    هر دوی این نکات کماکان مبهم و قابل پرسشند.

    آیا تنها این نکته که هوشمندترین موجودی که می‌شناسیم، انسان است کافی است تا هوشمندی را به تمامی اعمال انسان نسبت دهیم؟

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

    به این نکته نیز باز خواهیم گشت.

    اما همین سؤال را می‌توان از سویی دیگر نیز مطرح ساخت، چگونه می‌توان یقین حاصل کرد که کامپیوترهای امروزین، بهترین ابزارهای پیاده‌سازی هوشمندی هستند؟
    رؤیای طراحان اولیه کامپیوتر از بابیج تا تورینگ، ساختن ماشینی بود که قادر به حل تمامی مسائل باشد، البته ماشینی که در نهایت ساخته شد(کامپیوتر) به جز دسته ای خاص از مسائل قادر به حل تمامی مسائل بود.

    اما نکته در اینجاست که این «تمامی مسائل» چیست؟

    طبیعتاً چون طراحان اولیه کامپیوتر، منطق‌دانان و ریاضیدانان بودند، منظورشان تمامی مسائل منطقی یا محاسباتی بود.

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

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

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

    تعداد بسیار زیادی از واحدهای کاملاً ساده (بعنوان مثال از نورون‌های شبکه عصبی) با عملکرد همزمان خود (موازی) رفتار هوشمند را سبب می شوند.

    بنابراین تقابل هوشمندی مصنوعی و هوشمندی طبیعی حداقل در حال حاضر تقابل پیچیدگی فوق العاده و سادگی فوق العاده است.

    این مساُله هم اکنون کاملاً به صورت یک جنجال(debate) علمی در جریان است.
    در هر حال حتی اگر بپذیریم که کامپیوتر در نهایت ماشین هوشمند مورد نظر ما نیست، مجبوریم برای شبیه‌سازی هر روش یا ماشین دیگری از آن سود بجوییم.
    تاریخ هوش مصنوعی
    هوش مصنوعی به خودی خود علمی است کاملاً جوان.

    در واقع بسیاری شروع هوش مصنوعی را 1950 می‌ دانند زمانی که آلن تورینگ مقاله دوران‌ساز خود را در باب چگونگی ساخت ماشین هوشمند نوشت (آنچه بعدها به تست تورینگ مشهور شد) تورینگ درآن مقاله یک روش را برای تشخیص هوشمندی پیشنهاد می‌کرد.

    این روش بیشتر به یک بازی شبیه بود.



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

    طبیعتاً یک مکالمه بین شما و شخص آن سوی دیوار می‌تواند صورت پذیرد.

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

    اول این که موضوع ادراکی صوت را کاملاً از صورت مساُله حذف کند و این تست هوشمندی را درگیر مباحث مربوط به دریافت و پردازش صوت نکند و دوم این که بر جهت دیگری هوش مصنوعی به سمت نوعی از پردازش زبان طبیعی تاکید کند.
    در هر حال هر چند تاکنون تلاش‌های متعددی در جهت پیاده سازی تست تورینگ صورت گرفته مانند برنامه Eliza و یا AIML (زبانی برای نوشتن برنامه‌‌‌‌هایی که قادر به chat کردن اتوماتیک باشند) اما هنوز هیچ ماشینی موفق به گذر از چنین تستی نشده است.
    در هر حال هر چند تاکنون تلاش‌های متعددی در جهت پیاده سازی تست تورینگ صورت گرفته مانند برنامه Eliza و یا AIML (زبانی برای نوشتن برنامه‌‌‌‌هایی که قادر به chat کردن اتوماتیک باشند) اما هنوز هیچ ماشینی موفق به گذر از چنین تستی نشده است.

    همانگونه که مشخص است، این تست نیز کماکان دو پیش فرض اساسی را در بردارد: 1ـ نمونه کامل هوشمندی انسان است.

    2ـ مهمترین مشخصه هوشمندی توانایی پردازش و درک زبان طبیعی است.

    درباره نکته اول به تفصیل تا بدین جا سخن گفته ایم؛ اما نکته دوم نیز به خودی خود باید مورد بررسی قرارگیرد.

    این که توانایی درک زبان نشانه هوشمندی است تاریخی به قدمت تاریخ فلسفه دارد.

    از نخستین روزهایی که به فلسفه(Epistemology) پرداخته شده زبان همیشه در جایگاه نخست فعالیت‌های شناختی قرار داشته است.

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

    با این ملاحظات می‌توان درک کرد که چرا آلن تورینگ تنها گذر از این تست متظاهرانه زبانی را شرط دست‌یابی به هوشمندی می‌داند.

    تست تورینگ اندکی کمتر از نیم‌قرن هوش مصنوعی را تحت تاُثیر قرار داد اما شاید تنها در اواخر قرن گذشته بود که این مسئله بیش از هر زمان دیگری آشکار شد که متخصصین هوش مصنوعی به جای حل این مسئله باشکوه ابتدا باید مسائل کم‌اهمیت‌تری همچون درک تصویر (بینایی ماشین) درک صوت و… را حل کنند.

    به این ترتیب با به محاق رفتن آن هدف اولیه، اینک گرایش‌های جدیدتری در هوش مصنوعی ایجاد شده‌اند.

    در سال‌های آغازین AI تمرکز کاملاً برروی توسعه سیستم‌هایی بود که بتوانند فعالیت‌های هوشمندانه(البته به زعم آن روز) انسان را مدل کنند، و چون چنین فعالیت‌هایی را در زمینه‌های کاملاً خاصی مانند بازی‌های فکری، انجام فعالیت‌های تخصصی حرف‌های، درک زبان طبیعی، و….

    می‌دانستند طبیعتاً به چنین زمینه‌هایی بیشتر پرداخته شد.

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

    مک‌کارتی که پیشتر اشاره شد، از بنیان‌گذاران هوش مصنوعی است این روند را آنقدر اغراق‌آمیز می‌داند که می‌گوید: «محدود کردن هوش مصنوعی به شطرنج مانند این است که علم ژنتیک را از زمان داروین تا کنون تنها محدود به پرورش لوبیا کنیم.» به هر حال دستاورد تلاش مهندسین و دانشمندان در طی دهه‌های نخست را می‌توان توسعه تعداد بسیار زیادی سیستم‌های خبره در زمینه‌های مختلف مانند پزشکی عمومی، اورژانس، دندانپزشکی، تعمیرات ماشین،…..

    توسعه بازی‌های هوشمند، ایجاد مدل‌های شناختی ذهن انسان، توسعه سیستمهای یادگیری،….

    دانست.

    دستاوردی که به نظر می‌رسد برای علمی با کمتر از نیم قرن سابقه قابل قبول به نظر می‌رسد.

    AIهای متخصص: این نمونه از نرم افزارها برای انجام یکسری کارهای تخصصی طراحی شده اند و به طبع از قابلیتهای بالایی نیز برخودار میباشند.

    اینگونه برنامه ها معمولاً به یک بانک اطلاعاتی بسیار وسیع مجهز میباشند که آنها را قادر به پاسخگویی به سوالات کاربران میسازد.

    در حقیقت این برنامه ها برای رشته هایی مانند پزشکی، مهندسی و...

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

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

    این ناتوانی از آنجا ناشی میشود که این دسته از برنامه ها توانایی generalization یا عمومیت دادن را ندارند.

    منظور از generalization و یا عمومیت دادن چیست؟

    منظور از generalization توانایی خلق کردن اطلاعات جدید بر اساس اطلاعات قدیمی است.

    تمامی انسان ها از این توانایی برخوردار هستند اگرچه ماشین ها به طور کامل و همانند انسان چنین توانایی را ندارند.

    برای درک بهتر موضوع به این مثال ساده توجه کنید: جان در یک کمپانی کار میکند.

    در محل کار او کابلهایی وجود دارد که توسط یکسری اشکال خواص علامت گذاری شده اند و نشانگر این موضوع هستند که این کابل ها حامل برق میباشند.

    جان در محل دیگری یکسری کابل با علائم مشابه را مشاهده میکند و نتیجه میگیرد که این کابل ها نیز حاوی جریان برق هستند.

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

    این انقلاب در اقتصاد امروز و نظم جامعه، به همان میزان انقلاب صنعتی در قرن 19 تأثیر دارداین تحولات قادر است الگوی فکری و فرم زندگی هر فرد را تغییر دهد.

    انقلاب کامپیوتر توان ذهنی ما را گسترش می دهد.

    عملکرد اولیه برنامه نویسی هوش مصنوعی (AI) ایجاد ساختار کنترلی مورد لزوم برای محاسبه سمبولیک است خصوصیات این ساختارها به مقدار زیادی موجب تشخیص خصوصیاتی می شود که یک زبان کاربردی می بایستی فراهم کند.

    در این مقدمه به یک سری خصوصیات مورد نظر برای زبان برنامه نویسی سمبولیک می پردازیم و زبانهای برنامه نویسی LISP و PROLOG را معرفی خواهیم کرد.

    این دو زبان علاوه بر این که از مهمترین زبانهای مورد استفاده در هوش مصنوعی هستند، خصوصیات semantic و syntactic آنها نیز باعث شده که آنها شیوه ها و راه حل های قوی برای حل مسئله ارئه کنند.

    تأثیر قابل توجه این زبانها بر روی توسعه AI از جمله توانائی آنها به عنوان «ابزارهای فکر کردن» می باشد که از جمله نقاط قوت آنها در زبانهای برنامه نویسی می باشد.

    همان طور که هوش مصنوعی مراحل رشد خود را طی می کند زبانهای LISP و PROLOG بیشتر مطرح می شوند.

    این زبانها کار خود را در محدوده توسعه و prototype سازی سیستم های AI در صنعت و دانشگاهها دنبال می کنند.

    اطلاعات در مورد این زبانها به عنوان بخشی از مهارت هر برنامه نویس AI می باشد ما به بررسی این دو زبان در هوش مصنوعی می پردازیم.

    آنــــچه را کـــه نمی دانیم موجب دردسر و گرفتاری ما نخواهد شد، بلکه دردسرها از دانسته ها سرچشمه می گیرند.

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

    این خلاصه ها به ما اجازه شناخت و درک کامل موارد دریافت شده در حوزه خاص را می دهند .

    اگر ما وارد یک خانه شویم که به خوبی ساخته شده باشد ، راههای خود را به اطراف پیدا خواهیم کرد .

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

    خلاصه پردازی به ما حس شناخت خانه های متفاوت را می دهد .

    یک تصویر ممکن است بیانی قوی تر از هزاران کلمه داشته باشد ، اما یک خلاصه مشخصاً بیان کننده خصوصیات مهم یک کلیت از نوع تصویر است .

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

    که اعضاء به خصوص خود را مشخص می کند .

    این کاهش جزئیات به وسیله قدرت توصیف و پیش بینی یک نظریه ارزشمند جبران می شود .

    خلاصه سازی یکی از ابزارهای اساسی شناخت و ارزیابی کلیت های جهان اطراف ما و همچنین ساختار ذهنی ما است .

    در حقیقت این پروسه به طور مداوم براساس دانش و اطلاعات صورت می گیرد .

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

    خلاصه پردازی طبقه بندی شده (سلسله مراتبی ) : ساختار و سازمان آزمایش و تجربه در ارتباط با توصیفات کلاس های خلاصه سازی یکی از ابزارهای شناخت رفتار و ساختار سیستم های مرکب است که شامل برنامه های کامپیوتر می شوند .

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

    یک الگوریتم دارای خصوصیات مربوط به خود می باشد که کاملاً آن را از برنامه ای که آن را به کار می برد جدا می سازد .

    به عنوان مثال دو نوع کاربر متفاوت جستجوی باینری را در نظر بگیرید .

    یکی از آنها یعنی Fortran از محاسبات و طبقه بندی استفاده می کند و دیگری یعنی Ctt از Pointer استفاده می کند که بتواند در جستجوی درون شاخه های binary کاربرد داشته باشد .

    اگر دقیق تر نگاه کنیم این برنامه ها مثل هم می باشند چون اگر جز این باشد کاربردهای آنها نیز تفاوت خواهد شد .

    جداسازی الگوریتم از که مورد استفاده در کاربرد آن یکی از نمونه های خلاصه سازی سلسله مراتبی می باشد .

    Allen New ell بین سطح دانش و سطح نشانه ها برای توصیف یک سیستم هوشمند تفاوت قائل شده است.

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

    بحث مربوط به توجه به منطق به عنوان یک زبان یک نمونه از مواردی است که به سطح نشانه پرداخته است.

    علاوه بر سطح نشانه سطح دانش است که توجه آن به مقدار و محتوی اطلاعات یک برنامه و شیوه استفاده از آن اطلاعات می باشد.

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

    به دلیل اینکه کاربرها برنامه ها را در قالب دانش و توانایی خودشان می شناسند بنابراین حائز اهمیت است که برنامه های AI دارای یک سطح خصوصیات اطلاعاتی باشند.

    جداسازی اصل دانش و اطلاعات از ساختار کنترل این نظریه را آشکار می سازد و توسعه رفتار سطح دانش را ساده می سازد.

    همانند این نیز سطح نشانه ای یک زبان توصیفی را تشریح می کند که شبیه قوانین و روشهای تولید یا منطق براساس دانش و اطلاعات می باشد.

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

    کاربرد بیان سطح نشانه ای شامل یک سطح دوره پائین تر از ساختار برنامه می شود و بیانگر یک سری ملاحظات طراحی اضافی می شود.

    اهمیت نظریه چند مرحله ای نسبت به طراحی سیستم نمی تواند بیش از این مورد توجه قراار گیرد.

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

    همچنین موجب می شود که اصول تئوری هوش مصنوعی عاری از کاربردهای خاص یا زبان برنامه نویسی باشد .

    این همچنین به ما قدرت توصیف یک کاربرد را می دهد و تاثیر گذاری خود را بر روی ماشین دیگر اثبات می کند بدون اینکه بر رفتارش در سطوح بالاتر تاثیر بگذارد .

    سطح اطلاعات توصیف کننده توانائی های یک سیستم هوشمند است.

    محتوی دانش و اطلاعات مستقل از شکل پذیری مورد استفاده برای بیان آن است به همان اندازه که زبان بیان کاملا مؤثر می باشد .

    توجه به سطح دانش شامل سؤالاتی از این قبیل است: از این سیستم چه چیزی ساخته خواهد شد؟

    چه اشیا و چه ارتباطی در آن محدوده مؤثر و مفید است ؟

    چگونه یک اطلاعات جدید به سیستم اضافه می گردد؟

    آیا واقعیات در طی زمان تغییر می کنند؟

    چگونه و چطور سیستم نیازمند است که دلائل اطلاعات خود را ثابت کند؟

    آیا محدوده ارتباطی دارای یک طبقه بندی درست و شناخته شده است؟

    آیا این محدوده شامل یک سری اطلاعات نادرست و غیر ممکن است؟

    تجزیه و تحلیل دقیق در این سطح یک گام مبهم در طراحی کلی ساختار یک برنامه می باشد.

    در سطح نشانه تصمیمات درباره ساختارها صورت می گیرد که برای بیان و ایجاد دانش مورد استفادده قرار می گیرند.

    انتخاب یک زبان برای بیان یک مورد مربوط به سطح نشانه می باشد.

    منطق یکی از چندین نوع اشکال است که اصولا در حال حاضر برای بیان دانش و اطلاعات در دسترس می باشد.

    زبان بیان نه تنها می بایستی توانایی بیان اطلاعات مورد لزوم برای کاربر را داشته باشد بلکه می بایستی خلاصه و قابل توصیف و دارای کاربرد مؤثر باشد و می بایستی به برنامه نویس برای دستیابی و سازماندهی اصل و اساس اطلاعات کمک کند.

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

    به عنوان مثال بدون تاثیرگذاری رفتار و عملکرد یک تحلیل گر برنامه که اساس منطقی داشته باشد می بایستی تاثیر ناپذیر از انتخاب بین یک سری جزئیات و یک مجموعه و دسته بایزی باشد تا بتواند یک جدول مربوط به نشانه ها را به کار برد.

    این تصمیمات کاربردی هستند و می بایستی در سطح نشانه قابل رؤیت باشند .

    بسیاری از الگوریتم و ساختمان داده ها در کاربرد بیان زبان AI به کار می روند که از روشهای معمول علم کامپیوتر می باشند مثل شاخه ها و جداول بایزی.

    دیگر موارد در رابطه با AI بسیار تخصصی هستند و به گونه یک که مستعار بیان می شوند که از طریق متن و بخش های مربوط به LISP و PROLOG بیان می شوند .

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

    با این حال سبک برنامه نویسی مطلوب احتیاج به این دارد که ما یک خلاصه داده ای بسازیم که بین خصوصیات ویژه یک زبان برنامه نویسی و لایه های بالای آن قرار گیرد .

    نیازهای منحصر به فرد برنامه نویسی سطح نشانه ای تأثیر به روی طراحی و استفاده از زبانهای برنامه نویسی AI ایجاد می کند .

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

    و محدودیت های فیزیکی کامپیوتر می بایستی بر روی منابعی همچون حافظه و سرعت پردازشگر تأ کید کند .

    روش های PROLOG , LISP در جهت مستعاذل کردن نیازهای سطح نشانه و نیازهای نهفته در ساختار هر دو منبع مورد استفاده می باشند و هم چنین یک هدف هوشمند و ذهنی با اهمیت می باشند .

    در دنباله ما از ساختارهای سطح اطلاعات در محیطهای برنامه نویسی بر روی یک زبان کاربردی صحبت خواهیم کرد و سپس به مصزفی زبانهای عمده AI یعنی PROLOG , LISP می پردازیم .

    خصوصیات مطلوب یک زبان AI یکی از خصوصیات و ویژگیهای مهم خلاصه سازی سلسله مراتبی در ساختار برنامه غیر حساس بودن سطوح بالاتر نهفته در کاربرد زبان می باشد .

    این مشاهده در عمل سنجیده می شود که همراه با سیستم های موفق دانش مدار می باشد که در زبانهای برنامه نویسی مختلفی مثل Pascal , C , Ctt , Java , PROLOG , LISP و حتی Fortran به کار می رود .

    برنامه های مختلفی اصولاً در PROLOG , LISP و سپس در C به کار گرفته می شوند تا بتواند تاثیرپذیری و انتقال پذیری بهتر ایجاد کنند.

    در هر دوی این موارد رفتار و عملکرد در سطح نشانه به طور قطع بی اثر می باشد.

    با این حال محدودیتهای خلاصه سازی در یک برنامه جامع بیان می شود که کامل نمی باشد .

    ساختار سطح بالاتر باعث ایجاد ساختارهای قوی بر روی لایه های زیرین می شود و نیاز به این دارد که برنامه نویسی AI بر روی سطح نشانه ای قرار گیرد که در سطح زبان تکرار می شوند.

    به عنوان مثال ساختارهای اطلاعاتی مورد لزوم برای ادغام سمبولیک خود را مقید به اشکال تکراری مثل فلش ها و لیست ها نمی کنند.

    اهداف و پیش بینی های منطقی ابزارهای کاربردی طبیعی تر و انعطاف پذیرتر خواهند بود.

    علاوه بر این به دلیل مشکلات موجود در بسیاری از مسائل مربوط به AI اغلب توسعه را قبل از اینکه یک شناخت کامل از نهایت فرم برنامه داشته باشیم شروع می کنیم.

    توسعه AI لزوما در طبیعت به صورت کشف و تجزیه و آزمایش است.

    این نیاز هم چنین وابسته به یک زبان و ابزارهایی است که باید فراهم ساخت .

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

    در پنــج زیر گـــروه بعدی ما به صورت جزئی و کامل در مورد نیازهایی که ساختارهای سطح نشانه ای برنامه های AI که بر روی کاربرد زبان دارند بحث می کنیم.

    این موارد عبارتند از : 1.

    پشتیبانی از محاسبه سمبولیک 2.

    انعطاف پذیری کنترل 3.

    پشتیبانی از متدولوژی و روش های برنامه نویسی جستجویی 4.

    پویایی 5.

    مستنند سازی خوب و واضح 6.

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

    ولی تمامی آنها نهایتاً به عنوان عملکردهایی بر روی نشانه ها به کار می روند .

    این روش در تئوری نشانه های آقای Simon , Newell آمده است .

    تئوری های سیستم فیزیکی نشانه نیاز اصلی برای زبان برنامه نویسی است که کاربردهای یک سری از عملیات سمبولیک را آسان می کند .

    حتی شبکه های عصبی و دیگر شکل های ضروری محاسبه می بایستی شامل اطلاعات سمبولیک در ورودیها و خروجی هایشان باشند .

    انواع کاربردها و اطلاعات دادهای عددی تاکید شان بر روی زبانهای برنامه نویسی معمول است که برای کاربردهای جستجوی الگوریتمی یا بیان زبان AI مناسب نمی باشند.

    علاوه بر این یک زبان AI می بایستی ساختار ایجاد نشانه های اولیه را ساده سازد و بر روی آنها کار کند.

    این یکی از مهمترین نیازهای یک زبان برنامه نویسی AI می باشد.

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

    خصوصیات بارز یک محدوده ممکن است به گونه یک سری واقعیات منطقی بیان شود.

    از طریق استفاده از متغیرها امکان ایجاد واقعیات کلی درابره ارتباط بین اهداف در یک محدوده به وجود می آید.

    PROLOG یک زبان برنامه نویسی کلی است که بر اساس پیش بینی محاسباتی است.

    به عنوان یک کاربرد رسمی منطق PROLOG بعضی اوقات مستقیما به عنوان یک زبان در سطح نشانه مورد استفاده قرار می گیرد.

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

    PROLOG ممکن است برای کاربرد در جستجوی الگوریتم ها یک سیستم محافظ و یک شبکه سمانتیکی مورد استفاده قرار گیرد.

    یک ابزار مهم دیگر برای ساخت ساختارهای نشانه لیست می باشد یک لیست شامل یک سری عناصر می شود که در آن هر عنصر ممکن است حتی یک لیست و یک نشانه باشد.

    چند نمونه از لیست ها با استفاده از ساختار برنامه نویسی LISP عبارتند از : (این یک لیست است) (این هست) (یک لیست) (از لیست ها) (زمانها (بعلاوه 13)(بعلاوه 23) ) ((123)(456)(789)) توجه داشته باشیم که اینها نمونه هایی می باشند که شامل لیستهای درون لیست های دیگر می شود این موجب می شود که ارتباطات ساختاری ایجاد گردد.

    قدرت لیست ها عمدتا در نتیجه توانایی بیان هر نوع ساختار نشانه ای بدون در نظر گرفتن پیچیدگی یا عملکردهایی که می باید از آن پشتیبانی کند می باشد.

    این شامل شاخه ها گراف های اولیه یک سری مشخصه های منطقی جهت ها اصول اطلاعاتی کلیدی می شود.

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

    لیست ها یک سری بلوک های مهم می باشند که PROLOG , LASP که موجب می شود که کاربر را با عناصر اطلاعاتی و عملیاتی برای دستیابی و تاکید بر آنها در درون یک سری ساختارهای پیچیده مهیا سازد.

    در حالیکه PROLOG مستقیما به محاسبات پیش بینی شده وابسته است و شامل یک سری لیست به عنوان ابزارهای بیان می شود.

    LISP لیست را به عنوان اصول انواع داده ها و برنامه ها مورد استفاده قرار می دهد.

    تمامی ساختارهای LISP از لیست ها ساخته می شوند و زبان فراهم کردن یک سری ابزارهای قوی برای ترکیب اینها (ساختارها) را به عهده دارد و توصیف کننده عملیات جدید برای ایجاد توسعه و تغییر آنها است.

    یک شکل کردن ساختار LISP و توانائی توسعه آن توصیف هر نوع زبانی را برای ساختار آن ساده می سازد .

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

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

    در حقیقت مشکل بتوان تصور کرد که هوشمندی می تواند از طریق توسعه گام به گام مراحل ثابت که بوسیله برنامه های معمول کامپیوتری نشان داده می شود حاصل شود.

    خوشبختانه این تنها راه سازماندهی محاسبات نمی باشد.

    یکی از مهمترین و در عین حال قدیمی ترین نمونه های مربوط به ساخت یک برنامه AI سیستم تولید می باشد.

    در سیستم تولیدی برنامه شامل یک سری قوانین می شود.

    در منطق اطلاعات این قوانین به گونه ای تنظیم می شود که بوسیله الگوی اطلاعات در یک نوع مسئله داده شده قابل تشخیص باشد.

    قوانین تولید می تواند به هر گونه که پاسخگوی آ“ موقعیت خاص باشد برنامه ریزی شود.

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

    بنــــابراین AI از یک تعداد متفاوتی ساختارهای کنترلی استفاده می کند که بسیاری از انها مرتبط با سیستم های تولید می باشند و همه آنها تابع الگو می باشند .

    کنترل الگویی موجب می شود که اطلاعات با توجه به نیاز به خصوصیات یک نوع مسئله خاص به کار گرفته شود.

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

    بنابراین حائز اهمیت می باشد که یک زبان AI بتواند آن را مستقیما ایجاد کند و یا توسعه الگوی کنترل را ساده سازد.

    در PROLOG یکی کردن و جستجوی الگوریتم ها در درون خود زمان ساخته می شوند و قلب و اساس PROLOG را تشکیل می دهند .

    با استفاده از این یکی کردن الگوریتم ها به سادگی می توان هر نوع الگوی ساختاری کنترلی را ایجاد کرد .

    LISP مستقیماً الگوی انطبقی ایجاد نمی کند اما محاسبات سمبولیک آن موجب گسترش ساده مربوط به زبان ساده ساختار الگوی منطق شونده و توصیف کننده اولیه ساختار می شود.

    یکی از مزایای این نظریه این است که الگوی تطبیق و کنترل ساختارهای همراه با آن ممکن است به سادگی برای تطبیق با نیازهای یک مسئله بخصوص خود را منطبق سازد.

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

    ولی آنها نیاز به یک کنترل انعطاف پذیر را نفی نمی کنند.

    شبکه های عصبی می بایستی توانایی حرکتی شکل گیری خودشان را داشته باشند .

    عوامل متکی به پیام هستند که از بین ماحوبهای مختلف می گذرد.

    الگوریتم های ژنتیکی نیاز به ایجاد واحد های شمارش به عنوان جمعیت کاندید شده حل مسئله دارند.

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

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

    به دلیل طبیعت و ذات و نوع بخصوص AI به ندرت این احتمال به وجود می آید که بتوان ویژگیهای درست و کاملی از شکل نهایی یک برنامه AI قبل از ساخت حداقل یک proto type بدست آورد.

    اغلب موارد شناخت مسئله برنامه مربوط می شود به حل موارد درگیر مسئله از طریق توسعه برنامه .

    دلایل آن عبارت است از :

هوش مصنوعي چيست ؟ « هوش مصنوعي، دانش ساختن ماشين‌‌ ها يا برنامه‌هاي هوشمند است. همانگونه که از تعريف فوق-که توسط يکي از بنيانگذاران هوش مصنوعي ارائه شده است- برمي‌آيد،حداقل به دو سؤال بايد پاسخ داد: 1 هوشمندي چيست؟ 2 برنامه‌هاي هوشمند، چه نوعي از

هوش مصنوعي (artificial intelligence) را بايد عرصه? پهناور تلاقي و ملاقات بسياري از دانش‌ها، علوم، و فنون قديم و جديد دانست. ريشه‌ها و ايده‌هاي اصلي آن را بايد در فلسفه، زبان‌شناسي، رياضيات، روان‌شناسي، نورولوژي، و فيزيولوژي نشان گرفت و شاخه‌ها، فروع

هوش مصنوعي را بايد عرصه? پهناور تلاقي و ملاقات بسياري از دانشها، علوم، و فنون قديم و جديد دانست. ريشه‌ها و ايده‌هاي اصلي آن را بايد در فلسفه، زبان‌شناسي، رياضيات، روان‌شناسي، نورولوژي، و فيزيولوژي نشان گرفت و شاخه‌ها، فروع، و کاربردهاي گونه‌گونه و ف

« هوش مصنوعي، دانش ساختن ماشين‌‌ ها يا برنامه‌هاي هوشمند است. همانگونه که از تعريف فوق-که توسط يکي از بنيانگذاران هوش مصنوعي ارائه شده است- برمي‌آيد،حداقل به دو سؤال بايد پاسخ داد: 1 هوشمندي چيست؟ 2 برنامه‌هاي هوشمند، چه نوعي از برنامه‌ها هستند؟ ت

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

خلاصه اي درباره LISP و PROLOG به وسيله برآورده کردن نيازهاي گفته شده، LISP و PROLOG هر دو داراي زبانهاي برنامه نويسي غني و کاملي هستند وقتي که اين زبانها را فرا مي گيريم، دانشجو در ذهن و فکر درباره روشهايي که آنها به وسيله ويژگيهاي خاص هر زبان پش

محل اجراي طرح : شهرستان ميانه ساختمان شماره يک منطقه دو دانشگاه آزاد اسلامي همکاران طرح : 1- مهندس مجيد شکوفي ( مربي ) 2- حاتم قضائي ( دانشجوي رشته کامپيوتر ) 3- غلامرضا چمن خواه ( دانشجوي رشته کامپيوتر ) تاريخ ارائه طرح به واحد : 30/10/1381 تار

1-مقدمه توسعه سريع ترکيبات ساختاري نساجي (TSC ها) بازار و فرصت هاي پژوهشي جديدي را براي صنعت نساجي و دانشمندان اين رشته ايجاد کرده است. ترکيبات نساجي سه بعدي، بر طبق، يکپارچگي ساختاري شان داراي يک شبکه دسته تارها در يک حالت يکنواخت مي باشد، که نتي

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

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

ثبت سفارش
تعداد
عنوان محصول