Bu daraxtga o'xshaydi, lekin unday emas
Shunday qilib, biz daraxtni satr sifatida ko'rsatishimiz kerak.Bu erda bizga karva daraxtlarining kuchi yordam beradi. Boshlash uchun daraxtda topilishi mumkin bo'lgan funktsiyalar, o'zgaruvchilar va konstantalar to'plami haqida qaror qabul qilish kerak. O'zgaruvchilar va konstantalar daraxt barglariga mos keladi va terminallar deb ataladi, funktsiyalar - daraxtning qolgan (ichki) tugunlariga terminal bo'lmaganlar deyiladi. Funktsiyalar turli xil argumentlarga ega bo'lishi mumkinligiga ham e'tibor qaratish lozim, shuning uchun bizga bunday bilim kerak bo'ladi ("arnost", - bu so'z mutaxassislar og'zidan jimgina yugurdi).Natijada kodlash jadvali, masalan, bu:
Bu yerda n, +, *, agar funksiyalar; 2 - doimiy; a va b o'zgaruvchilardir. Haqiqiy masalalarda jadval og'irroq, bunday to'plam bilan va kvadrat tenglamani yechish mumkin emas. Shuni ham yodda tutish kerakki, nolga bo'linmaslik va apokalipsisning boshqa stsenariylariga yo'l qo'ymaslik uchun barcha funktsiyalar haqiqiy raqamlarning butun to'plamida aniqlanishi kerak (yaxshi yoki vazifada qanday to'plamdan foydalansangiz). Aks holda, siz qorovulda o'tirishingiz, noldan logarifmlarni ushlashingiz va keyin u bilan nima qilishni aniqlab olishingiz kerak bo'ladi. Biz mag'rur odamlar emasmiz, bunday variantlarni hisobga olmaganda, biz oson yo'ldan boramiz.
Biz eng issiq joyga - o'tish joyiga qaytamiz. Dasturni kesib o'tish operatsiyalari uchun quyidagi shartlarni qo'yamiz: birinchidan, ikkita kesishuvchi individlar ikkita nasl beradi (ya'ni populyatsiya soni doimiy); ikkinchidan, kesib o'tish natijasida avlodlar, ma'lum darajada, ikkala ota-onaning xususiyatlariga ega bo'lishi kerak (ya'ni, olma olma daraxtidan juda uzoqqa aylanmasligi kerak). Endi biz dastur qanday taqdim etilishini bilib oldik - bu satrlar yoki daraxtlar to'plamimi.Shunga ko'ra, ularni iplar yoki daraxtlar sifatida kesib o'tish mumkin.
Daraxtlarni kesib o'tish - tasodifiy tanlangan novdalar almashinuvi. String kesishish bir necha usullar bilan amalga oshirilishi mumkin: bir nuqtali rekombinatsiya (bo'lak-bo'lak yopishtirish), ikki nuqtali rekombinatsiya, elementlarni elementlar almashinuvi va boshqalar. Ularni qo'shimchali iboralar bilan uzun murakkab jumlalar bilan tasvirlash mumkin, lekin diagrammaga bir qarash.nima ekanligini tushunish uchun etarli:
Shuni ta'kidlash kerakki, rekombinatsiyada yopishtirish joylari tasodifiy tanlanadi, xuddi elementlarni elementlarning kesishishida bo'lgani kabi, almashinuv ma'lum bir ehtimollik bilan amalga oshiriladi.Daraxtlarni irsiyat nuqtai nazaridan kesib o'tish yanada istiqbolli ko'rinadi, ammo uni amalga oshirish qiyinroq.
Do'stlaringiz bilan baham: |