1-Amaliy mashg’ulot Mavzu: Optimallashtirish va nisbiylik Ishdan maqsad



Download 94,83 Kb.
bet1/2
Sana18.08.2021
Hajmi94,83 Kb.
#150784
  1   2
Bog'liq
1-amaliyot


612-17gr. Esonaliyev M

1-Amaliy mashg’ulot

Mavzu: Optimallashtirish va nisbiylik

Ishdan maqsad: Masalaning yechimini topishning optimal usulini ishlab chiqishni о‘rganish. Massivning eng katta yoki eng kichik elementini topishning optimal usullarini aniqlash.

Uslubiy kо‘rsatmalar: Optimizatsiya – bu matematika, informatika va ilmiy izlanishlar masalalarida cheklangan chiziqli yoki chiziqli bо‘lmagan tenglama yoki tengsizliklarning chekli vektor fazosidagi bir qancha sohalardagi butun funksiyaning ekstremumini topishdir. Optimizatsiya masalalarini yechish nazariyasini matematik dasturlash о‘rganadi.

Loyihalash jarayonida odatda obyekt parametrlari strukturasi va qiymatlariga qarab eng yaxshi usul aniqlab olinadi. Agar optimizatsiya obyekt parametrining optimal qiymati bilan bog‘langan bо‘lsa, unda bu optimizatsiya parametri optimizatsiya deyiladi. Standart matematik masala quyidagi kо‘rinishda shakllantiriladi. f(χ) funksiyaning kо‘p sondagi X lar orasida χ elementlar orasida f(χ*) minimal qiymatini beruvchi χ* elementni toppish kerak. Masalani yechishda tо‘g‘ri yechimni berish uchun quyidagilarni yechish kerak bо‘ladi:



  • Kо‘pincha yо‘l qо‘yilgan X lar

X =  |  )≤0, i = 1, …, m}

  • Butun funksiyani kо‘rsatish

f : X   R

  • Qidiruv kriteriyasi (max yoki min).

Shunda f(x) masalasini yechilish natijasida quyidagilardan biri hosil bо‘ladi:

  • X =  .

  • f( ) butun funksiya quyidan chegaralanmagan.

  • c)   X :  *) ).

  • Agar  * bo’lsa,  ) topilsin.

Endi optimizatsiyani dasturlash tomonidan kо‘rib chiqamiz. Optimizatsiya – bu dasturning effektivligini yaxshilash maqsadida tizimni modifikatsiyalanishi. Bunda tizim bitta kompyuter dasturi, raqamli qurilma, kompyuterlar tо‘plami yoki hatto internetga о‘xshash butun tarmoq bо‘lishi mumkin. Hech bо‘lmaganda tо‘liq optimizatsiyalash optimal tizimni olish hisoblanadi. Tо‘g‘risini aytadigan bо‘lsak opitimizatsiyalash jarayonidagi optimal tizim har doim ham yetarli bо‘lib hisoblanmaydi. Optimallangan tizim odatda faqat bitta masala yoki foydalanuvchilar guruhi uchun tegishli bо‘ladi. Bu masala yoki foydalanuvchilar guruhidagi optimallashtirishga masalani yechishda, xotira hajmidan yо‘qotish evaziga bо‘lsa ham vaqt sarfini kamaytirish; xotira muhim bо‘lgan ilovalarda esa xotiraga kam murojat qiluvchi algoritmlardan foydalanish orqali masalani hal qilish kabilar kirishi mumkin.

Ba’zi masalalar kо‘pincha samarali bajariladi. Masalan, C tilidagi 1 dan N gacha bо‘lgan barcha butun sonlar yig‘indisini topuvchi dasturni olaylik:

int i, sum = 0;

For (i = 1; i <= N; i++)

sum+=i;

Kо‘rinib turganiday bu kodda unchalik ham murakkablik yо‘q. Bu kodga quyidagicha о‘zgartirish kiritamiz:

Int sum = (N*(N+1))/2

“Optimizatsiya” odatda anglanilganidek tizimning о‘zida funksionallikni saqlashidir. Biroq unumdorlikni sezilarli yaxshilash ortiqcha funksionalliklarni olib tashlash orqali ham amalga oshirish mumkin. Masalan, dastur 100tadan kо‘p element kiritishga talab qilmasa dinamik xotiradan emas static xotiradan foydalanish amalga oshiriladi.

Protsessor vaqtini sarflash bо‘yicha optimizatsiya odatda matematik hisblashga ega katta solishtirma og‘irlikka hisoblovchi protsessor uchun juda muhim. Bu yerda dasturchi dastur kodini yozish paytida bir qancha optimizatsiyalash usullari keltirilgan.


  • Ma’lumotlar obyekti initsializatsiyasi. Qaysidir ma’lumotlar obyekti qismining kо‘pgina dasturlarida initsializatsiyalash (boshlang‘ich qiymatni о‘zlashtirish) zarurati mavjud. Bunday boshlang‘ich qiymatlarni о‘zlashtirish yoki dastur boshida yoki sikl oxirida amalga oshiriladi. Boshlang‘ich qiymat berish protsessorning qimmatli vaqtini tejaydi. Masalan, agar gap sikldan foydalanib massivni initsializatsiyalash haqida ketayotgan bо‘lsa, bu massivni tо‘g‘ridan tо‘g‘ri о‘zlashtirishni e’lon qilishdan kо‘ra kamroq samarali bо‘ladi.

  • Arifmetik operatsiyalarni dasturlash.

Massivning eng katta yoki eng kichik elementini aniqlashning juda kо‘p usullari mavjud bо‘lib, ulardan eng oddiy va universal usuli bu solishtiriluvchi elementgacha bо‘lgan eng kichik yoki eng katta elementlarni ketma-ket keyingilari bilan solishtirish usulidir.

int FindMax (int* mass, int count)

{

If (count < 1) return null; int max = mass [0];



for (int i = 1; i < count; i++) if (mass[i] > max)

max = mass[i]; return max;

}

Bu usulning qolgan usullardan ustun tomoni shundaki, bu usul ixtiyoriy massiv uchun ishlaydi va har qanday dasturlash tili uchun dastur kodini yozish oson va resurs kam talab etiladi.



Bu usulning yagona kamchiligi shundan iboratki bu bu usul orqali juda katta hajmdagi massivlarda sekin ishlashidir.

Bu usullardan tashqari izlashning binar usuli mavjud bо‘lib u juda katta hajmli massivlar uchun ishlatish mumkin. Lekin bu usul uchun juda kо‘p kompyuter resursi talab etiladi.






Download 94,83 Kb.

Do'stlaringiz bilan baham:
  1   2




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish