Modell-iskola

Szakmai témák 1 013 hozzászólás
#789
Cauchy írta #788

Igen, az már nem egy konkrét adatból kiszámolt elõrejelzés, hanem egy véletlennel kombinált valószínûségi elõrejelzés. A kérdés itt arra vonatkozott, hogy ha lefuttatok 1 konkrét adatsorból egy elõrejelzést, akkor az…

Na, van egy rakat példa, amikor mégsem ugyanaz lesz, a wikipédia cikk alapján:
- számpontosság, memóriaszûke, lapozófájl, pontosságvesztés máshogy és máshogy
- konkurencia, versenyhelyzet, deadlock (és timeout)
- optimalizálás (ha már 3 órája futok és még mindig csak 72 óránál járok, csökkentem a pontosságot, hogy befejezzem 6 óra múlva): ez függ teljesítményingadozástól, hardwer throttling (túlmelegedés elllen) stb. hogy mennyi idõ alatt hová jut
És nyilván akkor nemdetermenisztikus egy algoritmus, ha nem akarja a végeredményt
kiszámolni, csak egy jó közelítést. Ez pedig pont az elõrejelzések témaköre nevet
Nyilván elméletileg ugyanannak kéne kijönnie, ha nincs véletlenszám-generálás az elõrejelzésben, és minden pont ugyanannyira pontos, minden komponens hibátlan, csakhogy ez sose igaz: de még egyszerûbb programoknál is rendszeres, hogy más futás más eredményt hoz. Sõt, szoftverfejlesztésnél ezek a legjobban utált problémák: tízbõl egyszer jön elõ típusú hiba. Nehéz levadászni, debugolni és megjavítani. Ilyen tuti van a modell-elõrejelzésekben, és valószínûleg a hibakezelõ algoritmus már akkora változást hoz, ami a kimenetelre is rányomja a bélyegét. Elfailel egy egyszerû fájl-írás, egy OS API hívás "Internal error"-t mond és még sorolhatnám: ki tudja, ezek mitõl függnek, de néha elõjönnek, néha nem nevet És ha egy számítás eredménye dob hibát, a hibakezelés lehet eldobja az egészet és egy nagy 0-val helyettesíti az eredményt, ami máris eltorzítja az eredményt pl. egy bonyolult számításnál akár jelentõsen. Máskor meg nem jön elõ...
Minél nagyobb egy rendszer, annál több az ilyen hibalehetõség, és ezeket részben ugyan ki kell küszübülni, de teljesen nem lehet, egyszerûen fel kell készülni rá: hibakezelés.

Több év alatt emlékszem 1-2 esetre, amikor megakadt a GFS frissítés, illetõleg nem is voltak friss képek sehol (WZ, Meteociel). Persze ez lehet webszerver, feltöltés, network hiba is, nem csak az algoritmusban egy végzetes hiba.
Pécs
#788
Usrin írta #787

Egy számítógép mûködése nyilván 100%-ig determinisztikus. Akárhány billiószor próbáljuk vele kiszámolni, mennyi 6x6, egyszer sem fogja rá azt mondani, hogy 35,9. Szántszándékkal viszont lehet olyan algoritmust írni…

Igen, az már nem egy konkrét adatból kiszámolt elõrejelzés, hanem egy véletlennel kombinált valószínûségi elõrejelzés.

A kérdés itt arra vonatkozott, hogy ha lefuttatok 1 konkrét adatsorból egy elõrejelzést, akkor az eredmény függ-e attól a géptõl, amelyiken lefuttattam (függhet, ha más a számpontosság mondjuk a kevesebb memória vagy más számábrázolás miatt), illetve ha ugyanazzal a bemenõadatokkal többször lefuttatjuk ugyanazon a gépen, akkor lehet-e más az eredmény (ha nem tartalmaz az elõrejelzés véletlengenerátort, akkor ugyanaz lesz az eredmény)
#787
Cauchy írta #786

Ezt nem értem, az egyenletek megoldása nem hiszem, hogy függene ezektõl.

Egy számítógép mûködése nyilván 100%-ig determinisztikus. Akárhány billiószor próbáljuk vele kiszámolni, mennyi 6x6, egyszer sem fogja rá azt mondani, hogy 35,9. Szántszándékkal viszont lehet olyan algoritmust írni (lásd: véletlenszám-generátor), ami többször lefuttatva más-más eredményt ad, és az idõjárási modellekben is lehetnek ilyenek.

Nondeterministic algorithm (Wikipedia): Link
Pécs
#786
tpeti írta #785

Elvileg két futás között ugyanazon a gépen olyasmi miatt lehet probléma, hogy változik a hõmérséklet függvényében a vezetõk ellenállása, más sebességgel történik az adat írása a memóriába, HDD-re, proci másképp…

Ezt nem értem, az egyenletek megoldása nem hiszem, hogy függene ezektõl.
Szentendre
#785
Cauchy írta #783

Szerintem pedig ugyanazokkal az adatokkal ugyanazzal a géppel ugyanaz az eredmény fog születni, pontosan az azonos kerekítések miatt...

Elvileg két futás között ugyanazon a gépen olyasmi miatt lehet probléma, hogy változik a hõmérséklet függvényében a vezetõk ellenállása, más sebességgel történik az adat írása a memóriába, HDD-re, proci másképp melegszik. Lehet, hogy apró eltérések, de mégse adják ugyanazt az eredményt.
#784
Cauchy írta #783

Szerintem pedig ugyanazokkal az adatokkal ugyanazzal a géppel ugyanaz az eredmény fog születni, pontosan az azonos kerekítések miatt...

Én is így gondolnám, ha nem nálam hozzáértõbb mondta volna. Ráadásul magam is futottam bele programozás során, hogy determinisztikus algó is adott más és más eredményeket. Meg is találtam: Link nevet Nem ma volt szofttech vizsgám vidám így a beszélgetés se tegnap történt nevet
Pécs
#783
Rudolfking írta #782

Errõl annó volt egy vitánk (vagy itt, vagy a hosszútávúban) és talán Antibulvár mondta, hogy de, lehetséges, hogy újrafuttatva más lesz az eredmény, mert bizonyos diffegyenleteket sorba fejtéssel és közelítéssel oldanak…

Szerintem pedig ugyanazokkal az adatokkal ugyanazzal a géppel ugyanaz az eredmény fog születni, pontosan az azonos kerekítések miatt...
#782
yakin írta #781

Nem lehetséges, hogy ugyanazt a modellfutást, ugyanazzal az adatokkal ugyanazon a gépen futtatva is más lenne a hosszú távú elõrejelzés?

Errõl annó volt egy vitánk (vagy itt, vagy a hosszútávúban) és talán Antibulvár mondta, hogy de, lehetséges, hogy újrafuttatva más lesz az eredmény, mert bizonyos diffegyenleteket sorba fejtéssel és közelítéssel oldanak meg, amikben soklehet a véges pontosság miatti eltérés, ezek végül összehalmozódva más eredményhez vezethetnek.