Hogyan kell megoldani az alábbi általános m ismeretlenes n-ed fokú (minimum másodfokú) egyenletrendszert, ahol m és n>1 természetes számok?
Adva van az alábbi
a11*x11^(p11)*b11*y11^(q11) + a12*x12^(p12)*b12*y12^(q12)
+ .... + a1m*x1m^(p1m)*b1m*y1m^(q1m) = c1
a21*x21^(p21)*b21*y21^(q21) + a22*x22^(p22)*b22*y22^(q22)
+ .... + a2m*x2m^(p2m)*b2m*y2m^(q2m) = c2
.
.
.
an1*xn1^(pn1)*bn1*yn1^(qn1) + an2*xn2^(pn2)*bn2*yn2^(qn2)
+ .... + anm*xnm^(pnm)*bnm*ynm^(qnm) = cn
egyenletrendszer, ahol
a11, a12, ..., a1m, a21, a22, ..., a2m, an1, an2, anm, valamint b11, b12, ..., b1m, b21, b22, ..., b2m, bn1, bn2, bnm, továbbá c1, c2, ..., cn valós együtthatók p11, p12, . , p21, p22, . , pm1, pm2, pmn és q11, q12, . , q21, q22, . , qm1, qm2, ... , qmn természetes indexek, valamint x11, x12, ... , xmn, y11, y12, ... , ymn valós ismeretlenek.
"Azonban az ilyen típusú problémák kezelésének az az útja."
Nem feltétlen. Az egyenletek egyszerűsödnek, ha a modellt egyszerűsítjük, és igen sok esetben ez az útja az ilyen problémák kezelésének.
Vagy az egyenletben szereplő paraméterekre korlátot szabunk, ami a valósággal is összhangban van. Így az egyenletben tehetőek elhanyagolások. Nem ritkán a gyakorlatban elegendő a kritikus esetek vizsgálata. (A megoldás hová tart pl.)
"Mégpedig a technológia fejlődésével egyre nagyobb lehetőségekkel."
Igaz, a számítógépek számítási kapacitása nő, de a lehetőségek még most is erősen korlátozottak. Még ha egy egyszerű lineáris algebrai egyenletrendszert is veszünk, ha több millió egyenlet van, a programfutási idő nagy lesz, jellemzően exponenciálisan nő. Pedig az algoritmus ismert száz éve, lásd. Gauss-Jordan elimináció, stb.
a gauss elimináció neked miota exponenciális? :D
ezek kivul viszont egyetértek veled.
illetve amit a kérdező kérdezett az lényegesen bonyolultabb mintsem gauss-eliminálni lehessen...
mondom, ha tul nagyok a kitevők és sok az egyenlet, egyszeruen nem oldod meg és kész :D
Akkor írd meg a Gauss-elimináció algoritmusát valamilyen nyelven. Ábrázold a futási időt az egyenletek számának a függvényében. Milyen tendenciát kapsz? Mert hogy nem lineárisat, hanem egy progresszív karakterisztikájú görbét azt garantálom! (egyes numerikus vizsgálatok szerint ezt a tendenciát hatványfüggvénnyel is szokás közelíteni).
Mellesleg a felhozott példám pedig csak hozzávetőleges, hogy legyen mihez viszonyítani. Lehet ugyanis dobálózni numerikus matematikával, meg ilyesmi, de kérem, legyen viszonyítási alap is. Könnyen belátható, hogy a Gauss-eliminációval megoldott lineáris algebrai egyenletrendszerek futási idejével alúlról becsülhetjük a kérdező egyenletrendszerének a numerikus megoldási programfutási idejét.
Ha túl sok az egyenlet, vagy azok részenként bonyolultak, akkor lehetetlen a megoldás, ahogy korábban is írtam. Nemlineáris rendszernél meg főleg. Ha forciklust használsz, akkor az viszonylag kis számításigényű, de sok ideig fut. Ha meg vektorizált programozást használsz, akkor nagy lesz a számításigény, lefagy a rendszer.
Szóval ez van most, a számítógépi kapacitás is csak korlátozott lehetőséget nyújt. Persze vannak kifinomultabb megoldások, párhuzamosítás, a számítások több processzoron való futtatása, vagy több számítógépen való egyidejű futtatás, esetleg más algoritmus használata, ritkamátrixként való kezelés, stb. Ezek persze elég messze vezetnek, komoly programozási ismereteket követelnek meg, amelyekbe bele sem mennék, mert a kérdés nem erre vonatkozott...
"Akkor írd meg a Gauss-elimináció algoritmusát valamilyen nyelven. Ábrázold a futási időt az egyenletek számának a függvényében. Milyen tendenciát kapsz? Mert hogy nem lineárisat, hanem egy progresszív karakterisztikájú görbét azt garantálom! (egyes numerikus vizsgálatok szerint ezt a tendenciát hatványfüggvénnyel is szokás közelíteni)."
nyilván nem lineáris... de igy kb n^3 ös gondolom.
"de igy kb n^3 ös gondolom."
Ezt miből gondolod, kifejtenéd részletesebben? (Egyébként közel vagy a köbös közelítéssel a valósághoz, ha megcsinálod a programot amit mondtam átlagosan 2.8 körüli kitevő fog adódni).
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!