Heuristika: definīcija, piemēri un pielietojums problēmu risināšanā

Heuristika (eiristika) ir praktisks noteikumu kopums vai pieeja problēmu risināšanai, kas balstās uz vienkāršiem principiem, pieredzi un veselā saprāta. Tā parasti sniedz ātru, pragmatisku risinājumu, ja nav laika vai resursu meklēt formāli optimālu atbildi. Heuristika ir bieži noderīgāka nekā tīra nejaušība, taču nebūt nav garantija panākumiem: rezultāts var būt pietiekami labs, bet ne pareizākais vai optimālais.

Heuristikas cilvēks izstrādā, izmantojot intelektu, pieredzi un veselo saprātu. Vienkāršākās heuristikas piemērs ir Mēģinājums un kļūda, kas reizēm palīdz atrast risinājumu, bet var būt laikietilpīga un neefektīva. Citi pazīstami nosaukumi ir noteikums par īkšķi (rule of thumb) un "izglītoti minējumi" — ātras vadlīnijas, kas palīdz rīkoties nezināmā situācijā.

Dažkārt heuristikas ir ļoti neskaidras vai vispārīgas — piemēram, padoms "paskaties, pirms lec" sniedz virzienu rīcībai, savukārt "padomā par sekām" ir konkrētāks. Citreiz heuristikas veido virkni soļu vai testu. Piemēram, kad ārsti izmeklē pacientu, tie veic sēriju novērojumu un testu; iespējams, ka viņi neatklās problēmas izcelsmi 100% drošībā, taču šāda pieeja dod vislabākās iespējas nonākt pie pareizas diagnozi.

Datorzinātnē heuristika parasti nozīmē algoritmu vai algoritmisku stratēģiju, kas meklē labus, bet ne obligāti optimālus risinājumus. Heuristiski algoritmi ir īpaši noderīgi sarežģītās vai NP-grūtos problēmjautājumos, kur precīzs risinājums būtu pārāk laikietilpīgs. Tipiski piemēri no prakses:

  • A* meklēšanas algoritma heuristiska funkcija, kas novērtē atlikušo ceļa garumu;
  • greedy algoritmi, kas pieņem lokāli labākos lēmumus;
  • lokālās meklēšanas metodes (local search), piemēram, hill-climbing;
  • metaheuristikas, piemēram, ģenētiskie algoritmi vai simulēta anelēšana (simulated annealing), kas mēģina atrast labas pieejas globālājā meklējumā.

Heuristisku algoritmu galvenās priekšrocības ir vienkāršība, ātrums un spējas darboties ar nepilnīgu informāciju. To trūkumi — nav garantijas par risinājuma kvalitāti vai pareizību, var rasties lokālie maksimumi, kā arī atkarība no labi izvēlētas heuristikas funkcijas. Tāpēc datorzinātnē bieži salīdzina laiku, kas nepieciešams algoritma izpildei, ar iegūstamā risinājuma kvalitāti.

Psiholoģijā heuristikas apraksta kā domāšanas īsceļus, kas ļauj pieņemt lēmumus ātri, bet reizēm noved pie sistemātiskām kļūdām jeb kognitīvajām novirzēm. Piemēri: pieejamības heuristika (novērtējums pēc viegli aizdomājamas informācijas), pārstāvniecības heuristika (vispārināšana pēc atbilstības kādam prototipam) un enkurošanas efekts (lēmumi ietekmējas no sākotnējiem skaitļiem vai informācijas).

Lai heuristikas izmantotu drošāk un efektīvāk, ieteicams:

  • saprast, kādas pieņēmumu kļūdas konkrētā heuristika var radīt;
  • testēt heuristikas uz dažādiem datiem vai gadījumiem (verificēt rezultātus);
  • apvienot vairākas heuristikas vai lietot hibrīdas metodes, kur iespējams — salīdzināt ar eksakto risinājumu;
  • lietot heuristikas, kad ir ierobežots laiks, dati ir nepilnīgi vai problēma ir pārāk sarežģīta precīzai analīzei.

Kopsavilkumā: heuristika nav brīnumlīdzeklis, bet ļoti praktisks instruments gan ikdienas lēmumu pieņemšanā, gan tehniskās problēmu risināšanā. Saprātīga heuristiku izmantošana, kopā ar izpratni par to ierobežojumiem, ļauj ātri nonākt pie pietiekami labiem risinājumiem situācijās, kur formāli optimāls risinājums nav pieejams.

Fona informācija

Eiristikas ir māksla atrast piemērotu problēmas risinājumu, izmantojot ierobežotas zināšanas un maz laika. Formālāk runājot, heiristikas pamatā ir pieredze; tās var paātrināt risinājuma meklēšanu, izmantojot vienkāršus noteikumus. Pilnīga meklēšana var aizņemt pārāk ilgu laiku vai var būt pārāk sarežģīta.

Precīzāk runājot, heiristikas ir stratēģijas, kas izmanto viegli pieejamu, lai gan brīvi piemērojamu informāciju, lai kontrolētu problēmu risināšanu cilvēkos un mašīnās.

Eiristiku var izmantot dažās zinātnes jomās, bet ne citās: Savukārt teleskops, kura kļūda ir viens grāds, visticamāk, ir nelietojams, ja tas ir vērsts uz tālu esošu objektu. Tas pats teleskops, kas vērsts uz logu otrpus ielai, visticamāk, pieļaus šo kļūdu; viena grāda kļūda nebūs liela ietekme nelielā attālumā.

Eiristiku var izmantot, lai aplēstu atbildi, kas pēc tam kļūst skaidrāka, veicot precīzu risinājumu ļoti nelielā mērogā, iespējams, lai ietaupītu laiku, naudu vai darbaspēku projektā, piemēram, lai noteiktu, vai tilts būtu jābūvē no koka, akmens vai tērauda, var izmantot eiristisku pieņēmumu par to, cik lielu svaru paredzēts nest, un, kamēr tiek pabeigta precīza tilta projektēšana, var iegādāties atbilstošu vajadzīgā materiāla daudzumu.

Tomēr heiristikas izmantošana dažās ļoti tehniskās jomās var būt kaitīga - viens no piemēriem ir datorzinātne. Programmējot datoru, lai tas veiktu vairāk vai mazāk vēlamās darbības, var rasties nopietni traucējumi. Tāpēc datora uzdevumiem parasti jābūt diezgan precīziem. Tomēr ir dažas jomas, kurās datori var droši aprēķināt heiristiskus risinājumus, piemēram, Google meklēšanas tehnoloģija lielā mērā balstās uz heiristiku, radot meklēšanas vaicājumam "gandrīz trāpīgus" atbilstības variantus, ja precīzu atbilstību nav iespējams atrast. Tas ļauj lietotājam labot meklēšanas kļūdas. Piemērs: Ja, meklējot vārdu "Pīters Smits" un nespējot atrast precīzu vārdu, meklētājprogramma tā vietā heiristiski atrod "Pīts Smits", un personai, kas izmanto meklētājprogrammu, ir jāizlemj, vai Pīts un Pīters ir viena un tā pati persona.

Piemēri

Polya

Šeit ir vēl dažas citas bieži izmantotas heiristikas no Poļas 1945. gadā izdotās grāmatas "Kā to atrisināt" (How to Solve It):

  • Ja jums ir grūtības saprast problēmu, mēģiniet uzzīmēt attēlu.
  • Ja nevarat atrast risinājumu, mēģiniet pieņemt, ka jums ir risinājums, un mēģiniet noskaidrot, ko no tā varat iegūt ("strādāt atpakaļ").
  • Ja problēma ir abstrakta, mēģiniet izskatīt konkrētu piemēru.
  • Vispirms mēģiniet atrisināt kādu vispārīgāku problēmu: "izgudrotāja paradokss": vērienīgākam plānam var būt lielākas izredzes gūt panākumus.

Iepakošanas problēma

Viens no piemēriem, kur heiristikas ir noderīgas, ir sava veida iepakošanas problēma. Problēma sastāv no vairāku priekšmetu iesaiņošanas. Ir noteikumi, kas jāievēro. Piemēram, katram priekšmetam ir vērtība un svars. Tagad problēma ir iegūt vērtīgākos priekšmetus ar pēc iespējas mazāku svaru. Cits piemērs ir vairāku dažāda izmēra priekšmetu ievietošana ierobežotā telpā, piemēram, automašīnas bagāžniekā.

Lai iegūtu ideālu problēmas risinājumu, ir jāizmēģina visas iespējas. Tas bieži vien nav labs risinājums, jo to izmēģināšana aizņem daudz laika, un vidēji līdz risinājuma atrašanai ir jāizmēģina puse iespēju. Tāpēc lielākā daļa cilvēku sāk ar lielāko elementu, ievieto to un pēc tam mēģina ap to sakārtot pārējos elementus. Lielākoties tas dos labu risinājumu. Tomēr ir gadījumi, kad šāds risinājums ir ļoti slikts un ir jāizmanto cits paņēmiens.

Tāpēc šis ir heiristisks risinājums.

Iepakošanas problēmas piemērs. Šī ir viendimensiju (ar ierobežojumiem) Knapsack problēma: kuras kastes jāizvēlas, lai maksimāli palielinātu naudas summu un saglabātu kopējo svaru zem 15 kg? Daudzdimensiju problēmā varētu ņemt vērā kastu blīvumu vai izmērus; pēdējā no minētajām problēmām ir tipiska iepakošanas problēma. (Šajā gadījumā risinājums ir izvēlēties visas kastes, izņemot zaļo.)Zoom
Iepakošanas problēmas piemērs. Šī ir viendimensiju (ar ierobežojumiem) Knapsack problēma: kuras kastes jāizvēlas, lai maksimāli palielinātu naudas summu un saglabātu kopējo svaru zem 15 kg? Daudzdimensiju problēmā varētu ņemt vērā kastu blīvumu vai izmērus; pēdējā no minētajām problēmām ir tipiska iepakošanas problēma. (Šajā gadījumā risinājums ir izvēlēties visas kastes, izņemot zaļo.)

Jautājumi un atbildes

J: Kas ir heiristisks?


A.: Eiristikas ir praktisks problēmas risināšanas veids, kas ir labāks nekā nejaušība, bet ne vienmēr darbojas.

J: Kā tiek izstrādāta eiritika?


A: Cilvēks izstrādā eiristiku, izmantojot intelektu, pieredzi un veselo saprātu.

J: Kāda ir visvienkāršākā eiristikas metode?


A: Vienkāršākā eiritika ir mēģinājums un kļūda.

J: Kādi ir citi vienkāršo eiristiku nosaukumi?


A.: Citi vienkāršas eiristikas nosaukumi ir, piemēram, "īkšķa likums" un "izglītoti minējumi".

J: Vai eiristikā vienmēr ir izņēmumi?


A: Jā, tā kā eiristikas rezultāts nav drošs, vienmēr ir izņēmumi.

J: Kas ir diagnoze medicīnas jomā?


A: Diagnoze ir vesels posmu kopums, ko ārsti veic, izmeklējot pacientu, lai dotu sev vislabākās izredzes gūt panākumus.

J: Kas datorzinātnē ir "heiristika"?


A: Datorzinātnē heiristika ir sava veida algoritms, kas parasti var atrast diezgan labus risinājumus, bet nav garantijas vai pierādījuma, ka šie risinājumi ir pareizi.

AlegsaOnline.com - 2020 / 2025 - License CC3