Основы искусственного интеллекта: учебное пособие


Download 428.17 Kb.
bet25/54
Sana11.02.2023
Hajmi428.17 Kb.
#1189651
1   ...   21   22   23   24   25   26   27   28   ...   54
Bog'liq
Основы искусственного интеллекта учебное пособие

Imperativ dasturlash tarixan birinchi apparat tomonidan qo'llab-quvvatlanadigan dasturlash metodologiyasidir ­. U klassik fon ­Neyman modeliga yo'naltirilgan bo'lib, u uzoq vaqt davomida keng amaliy ­qo'llanilgan yagona apparat arxitekturasi bo'lib qoldi.
Imperativ dasturlash kalkulyator holatining ketma-ket o'zgarishini tavsiflashga asoslanadi. Agar kalkulyator zamonaviy kompyuter sifatida tushunilsa, uning holati uning barcha xotira hujayralarining qiymatlari, protsessor holati (jumladan, joriy buyruq ko'rsatgichining qiymati ­) va barcha tegishli qurilmalar bo'ladi. Bu erda yagona ma'lumotlar strukturasi - bu chiziqli tartiblangan manzillarga ega bo'lgan hujayralar (manzil-qiymat juftlari) ketma-ketligi.
Ushbu hisoblash modelini qo'llab-quvvatlaydigan tillar ­kalkulyatorning holatlari orasidagi o'tish funktsiyasini tavsiflash uchun ixcham vositadir.
Matematik model sifatida imperativ ­dasturlash algoritmlarni tavsiflash uchun kompyuter asrining boshida taklif qilingan mavhum hisoblash qurilmasi Turing-Post mashinasidan foydalanadi.
Bu erda asosiy sintaktik tushuncha operator bo'lib ­, bunday operatorlarning bir nechta navlari (guruhlari) mumkin. Birinchi guruh atom operatorlari bo'lib ­, ularning hech bir qismi mustaqil operator bo'lmaydi (masalan, tayinlash operatorlari, shartsiz ­o'tish, protsedura chaqiruvi va boshqalar). Ikkinchi guruh tuzilmaviy bayonotlar bo‘lib, ular boshqa gaplarni yangi, kattaroq gapga (masalan, qo‘shma gap ­, tanlov bayoni, sikl bayoni va boshqalar) birlashtiradi.
tuzilma bayonotida belgilangan tartibda bajariladi . ­Agar u qo`shma gap bo`lsa, unda unga kiritilgan gaplar yozilish tartibi bo`yicha bajariladi.
Strukturalashning an'anaviy vositasi bu pastki dastur ( ­protsedura yoki funktsiya). Subprogrammalar ­parametrlar va mahalliy ta'riflarga ega va ularni ­rekursiv chaqirish mumkin. Funktsiyalar o'z ishi natijasida qiymatlarni qaytaradi.
Imperativ dasturlash tillari ketma-ket ko'rsatmalardan foydalangan holda va ularni ma'lumotlarga qo'llash orqali ma'lumotlarni bosqichma-bosqich manipulyatsiya qiladi. Eng mashhur va keng tarqalgan imperativ dasturlash tillari Gorban, Aldo1 ­, Pasca1, C.
har qanday buyruqlarning ketma-ket bajarilishi tabiiy bo'lgan muammolarni hal qilish uchun eng mos keladi . ­Masalan, zamonaviy apparat vositalarini boshqarish: ­deyarli barcha zamonaviy kompyuterlar majburiy bo'lganligi sababli, ushbu metodologiya sizga juda samarali bajariladigan kodni olish imkonini beradi. Biroq, muammoning murakkabligi oshgani sayin, imperativ ­dasturlar kamroq va kamroq o'qiladi.
Imperativ metodologiyaning eng muhim ishlanmasi ­tizimli imperativ dasturlash metodologiyasi bo'lib ­, u global ma'lumotlardan va shartsiz tarmoq operatoridan foydalanishdan voz kechish, ­kuchli ulanishga ega modullarni ishlab chiqish va ularning boshqa modullardan mustaqilligini ta'minlashdan iborat. Ushbu yondashuv ­ikkita asosiy tamoyilga asoslanadi:

Edsger Deykstra strukturaviy yondashuvning yaratuvchisi hisoblanadi. Shuningdek, u tizimli dasturlashni ­dasturlarning to'g'riligini isbotlash usullari bilan birlashtirishga (afsuski, ommaviy dasturlash uchun mutlaqo mos emas) harakat qildi [1].­

  1. Ob'ektga yo'naltirilgan dasturlash metodologiyasi

Ushbu yondashuv ob'ektlarning parchalanishidan foydalanadi, bunda ­tizimning statik tuzilishi ­ob'ektlar va ular o'rtasidagi munosabatlar nuqtai nazaridan tavsiflanadi va tizimning xatti-harakati ­ob'ektlar orasidagi xabarlar nuqtai nazaridan tavsiflanadi.
Ob'ektli fikrlashning paydo bo'lishiga ­modellashtirish va ma'lumotlarni taqdim etish, foydalanuvchi grafik interfeyslari va tizimlarni dasturlash ­("jarayon" tushunchasi bilan) ta'sir ko'rsatdi. Haqiqiy tizimlarni modellashtirish ­sohasidagi tadqiqotlar ularda sodir bo'ladigan ob'ektlar - ­ob'ektlar va hodisalarni tabiiy tavsiflash vositalarini yaratish zaruratini keltirib chiqardi. Keyinchalik, inkapsulyatsiya (mavhum ma'lumotlar turlari), meros va polimorfizm kabi tushunchalar an'anaviy tuzilgan dasturlash uchun juda ­foydali qo'shimchalar bo'lib chiqdi. Ularni juda samarali amalga oshirish qobiliyati bugungi kunda ­keng qo'llaniladigan ob'ektga yo'naltirilgan dasturlash tillarini yaratishga olib keldi ­.
"Sof" ob'ektga yo'naltirilgan ­dasturlashning (OOP) hisoblash modeli ob'ektga ­xabar yuboradigan faqat bitta operatsiyani aniq qo'llab-quvvatlaydi ­. Bunday xabarlar ­ob'ektlar bo'lgan parametrlarga ega bo'lishi mumkin; xabarning o'zi ham ob'ektdir.
Ob'ekt xabarlarni qayta ishlash vositalari (usullari) to'plamiga ega. Ob'ektda shuningdek maydonlar mavjud - bu ob'ekt uchun "shaxsiy" o'zgaruvchilar, ularning qiymatlari boshqa ob'ektlarga havolalar. Ob'ekt maydonlaridan biri bu ob'ekt tomonidan qayta ishlanmagan barcha xabarlar yuboriladigan ­ajdod ob'ektiga havolani saqlaydi . Xabarlarni qayta ishlash va yo'naltirishni tavsiflovchi tuzilmalar odatda ­berilgan ob'ektning ­klassi deb ataladigan alohida ob'ektga bo'linadi , ob'ektning o'zi esa ko'rsatilgan sinfning namunasi deb ataladi.
"Sof" ob'ektga yo'naltirilgan tillarning sintaksisida ­hamma narsa ob'ektlarga xabarlar yuborish shaklida yozilishi mumkin. Ob'ektga yo'naltirilgan tillardagi sinf ­o'xshash xususiyatlar, atributlar va xatti-harakatlarga ega bo'lgan ob'ektlar to'plamining tuzilishi va ishlashini tavsiflaydi ­. Bu yerdagi ob'ekt tabiiy ravishda ­qandaydir sinfga tegishli bo'lib, o'zining ichki holatiga ega. Boshqa tomondan, ­usullar faollashtirilishi mumkin bo'lgan funktsional xususiyatlardir.
Ob'ektga yo'naltirilgan dasturlashda ­uchta asosiy xususiyat aniqlanadi:
1   ...   21   22   23   24   25   26   27   28   ...   54




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling