Komentarai Prisijungti
Viršuje: Seniausi | Naujausi
loggo 2010-10-27 23:01
Tas uždavinys, jei spręsti jį pačiam, užtruktų visą dieną, net jei lauke būtų ir 6 žiedai. Akivaizdžiai pusė komentuotojų nesupranta uždavinio esmės.
Turint 6 žiedus, galimų maršrutų yra 720 (skaičiavimo logikos neaiškinsiu, Borland tai jau padarė).
Straipsnyje minimi 100 žiedų.
Aplankyti 100 žiedų galima.... pasiruoškit...
93326215443944152681699238856266700490715968264381621468592963895
21759999322991560894146397615651828625369792082722375825118521091
6864000000000000000000000000 būdų. Ar bent vienas įsivaizduojat, koks didelis tai skaičius?
Paprasčiau, tai galima užrašyti kaip 9.3326... × 10^157. Tai yra devyni, padauginta iš dešimties šimtą penkiasdešimt septynis kartus. Tai yra tas pats, kas parašyti skaičių iš devyneto ir šimtas penkiasdešimt septynių nulių. Milijardas turi devynis nulius.
Palyginimui, VISATOJE yra 10^80 atomų. [teoriškai] Dešimtyje visatų būtų 10^81 atomų. Tūkstantyje visatų būtų 10^83 atomų. O tame uždavinyje yra maždaug 10^158 variantų.
Paprasta kalba tariant, tas uždavinys turi milijardą milijardų milijardų milijardų milijardų milijardų milijardų milijardų milijonų kartų daugiau variantų, nei visatoje yra atomų.
Tai dabar pamėginkite paaiškinti, jog superkompiuteris 'negali' taip ilgai užtrukti, spręsdamas tą uždavinį.
HAL9000 2010-10-27 23:04
Negi tu manai, jog mokslininkai čia būtų kažką skelbę dėl tokių elementarių dalykų?
Čia ir yra esmė, kad tai ką tu kalbi (kad iš esamo taško palygina, ką toliau reiktų rinktis) - tai seniai seniai suformuluotas metodas spręsti keliaujančio pirklio uždaviniui. Jis vadinasi "Artimiausio kaimyno metodas". Kai kuriais atvejais jis gali būti gan efektyvus, ypač kai visi atstumai daugiau mažiau panašūs, bet lygiai taip pat šis metodas gali žiauriai susimauti. Vat ir eina kalba apie tai, kad jei daryti prielaidą, kad bitės remiasi lygtais paprastu artimiausio kaimyno metodu, tai niekaip netelpa į jų pasiektą labai gerą rezultatą. Tai mokslininkai bando pirmiausia jų elgesyje įžvelgt kažkokį gudrų dar netaikytą metodą, kuris kartu (kaip spėjama) ir paprastas, ir kartu labai efektyvus. Kai atras, pavadins pvz. BTA (bee traveling algorithm )
loggo 2010-10-27 23:06
Šiaip visai logiškai skamba, jog bitės naudojasi per milijonus metų išvystytu algoritmu. Bet visai logiška ir tai, kad organinio kompiuterio galimybės (smegenų) dar ganėtinai pranoksta silikoninio kompiuterio galimybes. Kažkada, berods, tech.lt rašė, jog galingiausias pasaulio komp. prilygsta žiurkės smegenims.
Ir kai pagalvoji, juk visai normaliai tai skamba:
Smegenys turi apdoroti itin aukštos kokybės vaizdą, atkeliaujantį per akis;
apdoroti itin aukštos kokybės garsus;
kvapus;
šilumos jutimą;
skausmo jutimą;
vykdyti nenustojamą organų darbą, palaikyti organizmo funkcijas (kelti, žeminti temp., kelti/žeminti širdies darbą,.....);
interpretuoti ir analizuoti aukštos kokybės vaizdą, garsą, kvapus, jutimus,...;
priimti sprendimus, kaip kūnui elgtis esant dabartiniams pojūčiams (vaizdui, kvapui, jutimams,...);
na ir t.t.
Kai tuo tarpu, paprastas stalinis silikoninis kompiuteris vos susidoroja su 720p vaizdo ir garso atkūrimu ir paprastų Java žaidimų bei kelių 'foninių' programų leidimu vienu metu. Taip, silikoninis kompiuteris žymiai greičiau atlieka esminius matematinius veiksmus, bet tai viskas. Visu kitku biologinis kompiuteris pastarąjį pranoksta.
HAL9000 2010-10-27 23:15
Ir šiam teiginiui pateiksiu kontrapavyzdį. Imkim, tarkim, kuprinės uždavinį (Knapsack problem), ir tarkim turiu 30-40 daiktų (objektų), kurių vertes ir tūrius (mases) žinau. Reikia atrasti optimalų rinkinį daiktų, kurie telpa į duoto dydžio kuprinę ir kad jų bendra vertė būtų didžiausia. Dar ir kaip bus efektyvus brute force metodas, kai užsikoduosiu binarine eilute (1-imti daiktą, 0 - neimti) ir greit prabėgsiu visas kombinacijas nuo 0...0 iki 1...1 - ir turėsiu labai greitai garantuotą optimalų sprendinį. Taigi, yra daug atvejų, kai efektyviausi yra bruteforce metodai, nes kam kurti euristikas kažkokias, jei greit galiu pagal uždavinio dimensiją perrinkti viską. Vat kai dimensija per didelė - va tada ir prireiks euristinių algoritmų, kurie peržiūri kur kas mažiau sprendinių kandidatų ir protingai atmeta potencialiai nieko gero nežadančius.
HAL9000 2010-10-27 23:22
Tau gal naujiena, bet yra tokia mokslo šaka - dirbtiniai neuronų tinklai (DNT), iš dirbtinio intelekto srities. Tai jau pradžioje susipažįstant su DNT, tampa aišku, jog mes šiai dienai negalime net su pačiais galingiausiais kompais ir jų tinklais sumodeliuot pilnai žmogaus smegenų veiklos - per daug sudėtingas biologinių neuronų tinklas. Bet tikimasi tą padaryt, kai ateis kvantinių kompiuterių era. Pas žmogų smegenyse esančių neuronų skaičius ženkliai didesnis už skaičių, su kuriuo pajėgia susidorot imitaciniai modeliai. Tai nėra ko stebėtis, kad mūsų smegenys veikia tūkstančius kartų sparčiau nei bet koks superkompiuterių tinklas.
tomechek 2010-10-28 01:17
http://en.wikipedia.org/wiki/Silicon
Angliškai silicone ir silicon - skamba beveik vienodai, bet prasme visiškai kitokia.
Panašiai neseniai per TV pasakė, kad lium. lemputėse yra Merkurijaus.
ImCat 2010-10-28 12:40
Straipsnelis su tokia sensacinga antrašte pamiršo pažymėti, kad tyrime buvo naudotos 4 gėlės… Abejoju, ar tai toks neįveikiamas uždavinys superkompiuteriui :)
"We analyzed bee flight movements in an array of four artificial flowers maximizing interfloral distances."
http://www.journals.uchicago.edu/doi/abs/10.1086/657042
tomokoja 2010-10-28 20:23
Cha! tai su keturiai ziedais jie ta dare? o cia visi kad diskutuoja kiek milijardu metu kompui reiktu apskaiciuot vaje, tie britu mokslininkai tikri mokslo sviesuoliai, tada idomu kiek kartu bitei leido pabandyt ta marsruta su 4 ziedais kol priejo isvadu, 1?
jordanbn2 2010-10-31 16:18
Būtent taip, todėl kad kompiuteris standartinę užduotį skaičiuoja neoptimaliai, per daug parametrų, per daug tikrinimų, praktinėms užduotim reik optimizuot programinę įrangą kad nebūtų atliekami nereikalingi skaičiaimai.
jordanbn2 2010-10-31 17:55
O dabar paklausk saves kiek laiko uztruksi skaiciuodamas optimaliausią variantą tarp 17 žiedų be kompiuterio? Tikrai ne para. Su 100 žiedų sudėtingiau, bet bitė tą sugebėjimą įgijo per milijonus metų. Taigi prastas algoritmas vis del to.
jordanbn2 2010-10-31 19:29
rograma turetu naudoti kaimynines geles principa atsizvelgdama i visuma. jei noreim idealaus varianto bus sunku o jei nelabai idealaus tai gana paprasta
tikman 2010-11-03 22:48
cia paskaicius tai man atrodo kad tos SUPER bites yra dievai,pranoksta visa zmonija.
Žilva 2011-08-21 21:46
Kaip smagu buvo skaityti visus komentarus, tiesiog mirti iš juoko galima. Iškarto matosi kur komentuoja visiškai nieko apie programavimą neišmanantys žmonės, tiesiog norintys išlieti savo minčių srautą (veikiau jau srutas). Tokiems asmenims pirmiausia patarčiau susipažinti kas yra "Algoritmo sudėtingumas" vėliau "Grafų teorija" po to kas yra "Hamiltono ciklas" galiausiai pamėginti išspręsti šį uždavinį su 1000 arba jeigu jums bus per lengva 10000 viršūnių (gėlių). Sėkmės!
Komentuoti gali tik registruoti lankytojai.
Neregistruotiems lankytojams komentavimas uždraustas siekiant sumažinti
paviršutiniškų, beverčių ir įžeidinėjančių žinučių kiekį.
Bitės pranoksta superkompiuterius, atskleidė tyrimas