คำถามติดแท็ก linear-algebra

คำถามเกี่ยวกับอัลกอริทึม / การคำนวณเชิงพีชคณิตเชิงเส้นรวมถึงการแก้ปัญหาของระบบเชิงเส้นปัญหากำลังสองน้อยที่สุด eigenproblems และเรื่องอื่น ๆ

4
การเปลี่ยนแปลงมุมฉากดีกว่าการกำจัดแบบเกาส์เซียนเมื่อไหร่?
ดังที่เราทราบวิธีการเปลี่ยนมุมฉาก (การหมุนของ Givens และการสะท้อนกลับของเจ้าของ) สำหรับระบบของสมการเชิงเส้นนั้นมีราคาแพงกว่าการกำจัดแบบเกาส์เซียน แต่ในทางทฤษฎีมีคุณสมบัติเสถียรภาพที่ดีกว่าในแง่ที่ว่าพวกเขาไม่ได้เปลี่ยน แม้ว่าฉันจะรู้เพียงตัวอย่างทางวิชาการของเมทริกซ์ที่ถูกทำลายโดยการกำจัดแบบเกาส์ด้วยการหมุนบางส่วน และมีความเห็นทั่วไปว่าเป็นไปได้ยากที่จะพบกับพฤติกรรมแบบนี้ในทางปฏิบัติ (ดูบันทึกการบรรยายนี้ [pdf] ) ดังนั้นเราจะหาคำตอบของหัวข้อได้จากที่ไหน? การใช้งานแบบขนาน? ปรับปรุง? ..

3
การแก้
ฉันมีการฝึกอบรมและG Aกระจัดกระจายและn × nมีnมาก (สามารถเรียงตามลำดับได้หลายล้าน) Gคือเมทริกซ์สูงn × mมีmค่อนข้างเล็ก ( 1 < m < 1,000 ) และแต่ละคอลัมน์สามารถมีเพียงหนึ่งเดียว1รายการที่มีส่วนที่เหลือเป็น0 's เช่นว่าG T G =ฉัน Aมีขนาดใหญ่มากมันจึงยากที่จะกลับด้านและฉันสามารถแก้ปัญหาระบบเชิงเส้นเช่นAAAAGGGAAAn×nn×nn\times nnnnGGGn×mn×mn\times mmmm1<m<10001<m<10001 \lt m \lt 1000111000GTG=IGTG=IG^TG = IAAAAx=bAx=bAx = bซ้ำ ๆ กันโดยใช้วิธีการ subspace ของ Krylov เช่นBiCGStab(l)BiCGStab(l)\mathrm{BiCGStab}(l)แต่ฉันไม่มีA−1A−1A^{-1}อย่างชัดเจน ฉันต้องการแก้ระบบของรูปแบบ: (GTA−1G)x=b(GTA−1G)x=b(G^TA^{-1}G)x = bโดยที่xxxและbbbเป็นเวกเตอร์ความยาวmmmวิธีหนึ่งในการทำคือใช้อัลกอริธึมการวนซ้ำภายในอัลกอริทึมการวนซ้ำเพื่อแก้ปัญหาA−1A−1A^{-1}สำหรับการวนซ้ำของอัลกอริทึมการวนซ้ำรอบนอกแต่ละครั้ง อย่างไรก็ตามการคำนวณนี้มีราคาแพงมาก ฉันสงสัยว่ามีวิธีที่ง่ายกว่าในการแก้ปัญหานี้หรือไม่

2
ห้องสมุดสำหรับการแก้ปัญหาระบบเชิงเส้นหร็อมแหร็ม
มีห้องสมุดที่แตกต่างกันจำนวนมากที่ช่วยแก้ระบบสมการเชิงเส้นหร็อมแหร็ม แต่ฉันพบว่ามันยากที่จะเข้าใจว่าความแตกต่างคืออะไร เท่าที่ผมสามารถบอกได้ว่ามีสามแพคเกจที่สำคัญ: Trilinos , PETScและIntel MKL พวกเขาสามารถแก้เมทริกซ์แบบเบาบางพวกมันทั้งหมดนั้นเร็ว (เท่าที่ฉันสามารถบอกได้ว่าฉันไม่สามารถหาเกณฑ์มาตรฐานที่แข็งแกร่งสำหรับพวกมัน) และพวกมันทั้งหมดสามารถต่อขนานกันได้ สิ่งที่ฉันไม่สามารถค้นหาได้คือความแตกต่าง ดังนั้นความแตกต่างระหว่างระบบเชิงเส้นที่กระจัดกระจายแตกต่างกันคืออะไร?

3
ระบบเส้นตรงแบบสมมาตรและคงที่สามารถแก้ไขได้ในเวลาสมการกำลังสองหลังจากการคำนวณล่วงหน้าหรือไม่
คือมีO(n3+n2k)O(n3+n2k)O(n^3+n^2 k)วิธีการที่จะแก้ปัญหาkkkเชิงเส้นระบบของฟอร์ม(Di+A)xi=bi(Di+A)xi=bi(D_i + A) x_i = b_iที่เป็นเมทริกซ์เมจิคงที่และD ฉันเป็นเมทริกซ์ทแยงมุมบวก?AAADiDiD_i ตัวอย่างเช่นถ้าแต่ละDiDiD_iเป็นสเกลาร์ก็พอเพียงที่จะคำนวณ SVD ของ อย่างไรก็ตามการแบ่งนี้สำหรับDทั่วไปเนื่องจากการขาดการสับเปลี่ยนAAADDD อัปเดต : คำตอบคือ "ไม่" ไม่มีใครมีสัญชาตญาณที่น่าสนใจว่าทำไม? ไม่มีคำตอบหมายความว่าไม่มีวิธีที่ไม่จำเป็นในการบีบอัดข้อมูลระหว่างผู้ให้บริการที่ไม่เปิดใช้งานสองคน มันไม่ได้เป็นเรื่องที่น่าประหลาดใจนัก แต่มันเป็นการดีที่จะเข้าใจมันมากขึ้น

1
การอัพเดทในแนวทแยงของเมทริกซ์แน่นอนบวกที่เป็นสมมาตร
เป็น n × nสมมาตรบวกแน่นอน (SPD) เมทริกซ์เบาบาง Gเป็นเมทริกซ์ทแยงมุมเบาบาง nมีขนาดใหญ่ ( n > 10,000) และจำนวนที่ไม่ใช่ศูนย์ใน Gโดยปกติคือ 100 ~ 1,000AAAn×nn×nn \times nGGGnnnnnnGGG ได้รับการแยกตัวประกอบในรูปแบบ cholesky เป็น L D L TAAALDLTLDLTLDL^T T วิธีการปรับปรุงและDได้อย่างมีประสิทธิภาพเมื่อกลายเป็น+ G ?LLLDDDAAAA+GA+GA+G

3
ฉันควรใช้แนวทางใดเมื่อค้นหาวิธีการกำหนดเงื่อนไขเบื้องต้นที่ดีสำหรับปัญหาเฉพาะ
สำหรับการแก้ปัญหาของระบบเชิงเส้นขนาดใหญ่โดยใช้วิธีวนซ้ำมันมักจะน่าสนใจที่จะแนะนำการปรับสภาพล่วงหน้าเช่นแก้แทนโดยที่ถูกใช้ที่นี่สำหรับการปรับสภาพซ้ายของระบบ . โดยทั่วไปแล้วเราควรมีและให้พื้นฐานสำหรับการแก้ปัญหาที่มีประสิทธิภาพ (มากขึ้น) หรือลดทรัพยากรการคำนวณ (เช่นที่เก็บข้อมูลหน่วยความจำ) เปรียบเทียบกับโซลูชันของระบบดั้งเดิม ( เช่นเมื่อ ) อย่างไรก็ตามเราควรใช้แนวทางใดในการเลือกผู้ตั้งเงื่อนไขล่วงหน้า ผู้ฝึกหัดทำสิ่งนี้อย่างไรสำหรับปัญหาเฉพาะของพวกเขาM - 1 ( A x = b ) M M - 1 ≈ A - 1 M = AA x = bAx=bAx=bM- 1( A x = b )M−1(Ax=b)M^{-1}(Ax=b)MMMM- 1≈- 1M−1≈A−1M^{-1}\approx A^{-1}M= AM=AM=A

5
โทษประสิทธิภาพ 20% สำหรับการออกแบบซอฟต์แวร์ที่ดี
ฉันกำลังเขียนห้องสมุดขนาดเล็กสำหรับการคำนวณเมทริกซ์กระจัดกระจายเป็นวิธีการสอนตัวเองให้ใช้ประโยชน์จากการเขียนโปรแกรมเชิงวัตถุได้ดีที่สุด ฉันทำงานหนักมากในการสร้างแบบจำลองวัตถุที่ดีซึ่งชิ้นส่วน (เมทริกซ์กระจัดกระจายและกราฟที่อธิบายโครงสร้างการเชื่อมต่อของพวกเขา) เป็นคู่ที่หลวมมาก ในมุมมองของฉันเองรหัสนั้นสามารถขยายได้และสามารถบำรุงรักษาได้มากขึ้น อย่างไรก็ตามมันค่อนข้างช้ากว่าถ้าฉันใช้วิธีทู่ เพื่อทดสอบข้อเสียของการมีแบบจำลองวัตถุนี้ฉันเขียนชนิดเมทริกซ์กระจัดกระจายใหม่ซึ่งทำให้การห่อหุ้มของกราฟต้นแบบเพื่อดูว่าจะทำงานได้เร็วเท่าใด ตอนแรกมันดูเยือกเย็นมาก รหัสที่ฉันเคยภูมิใจที่รันช้ากว่ารุ่น 60% โดยไม่มีการออกแบบซอฟต์แวร์ที่หรูหรา แต่ฉันสามารถทำการเพิ่มประสิทธิภาพระดับต่ำได้ไม่กี่ครั้ง - การใส่ฟังก์ชั่นและเปลี่ยนลูปนิดหน่อยโดยไม่ต้องเปลี่ยน API เลย ด้วยการเปลี่ยนแปลงเหล่านี้ตอนนี้ช้ากว่าคู่แข่งเพียง 20% ซึ่งนำมาสู่คำถามของฉัน: ฉันควรยอมรับการสูญเสียประสิทธิภาพมากแค่ไหนถ้ามันหมายความว่าฉันมีโมเดลวัตถุที่ดี

2
ค่า Null-space ของเมทริกซ์หนาแน่นแบบสี่เหลี่ยมผืนผ้า
ได้รับเมทริกซ์หนาแน่น∈ R เมตร× n , ม> > n ; ม. x ( เมตร) ≈ 100000สิ่งที่เป็นวิธีที่ดีที่สุดที่จะหาพื้นฐาน null พื้นที่ภายในบางอดทนε ?A∈Rm×n,m>>n;max(m)≈100000A∈Rm×n,m>>n;max(m)≈100000A \in R^{m \times n}, m >> n; max(m) \approx 100000 ϵϵ\epsilon จากพื้นฐานนั้นฉันสามารถพูดได้หรือไม่ว่า cols บางอันนั้นขึ้นอยู่กับเส้นตรงภายในϵϵ\epsilon ? กล่าวอีกนัยหนึ่งว่ามีการคำนวณพื้นฐานของช่องว่าง null คอลัมน์ใดของAAAต้องถูกลบออกเพื่อให้ได้เมทริกซ์ที่ไม่อยู่ในตำแหน่ง? การอ้างอิงได้รับการชื่นชม

4
ทำไมเจ้าของบ้านไม่สามารถสะท้อนเมทริกซ์ในแนวทแยงได้?
เมื่อคำนวณ QR factorization ในทางปฏิบัติเราใช้การสะท้อนของเจ้าของบ้านในการลดส่วนของเมทริกซ์ ฉันรู้ว่าสำหรับการคำนวณค่าลักษณะเฉพาะของเมทริกซ์สมมาตรสิ่งที่ดีที่สุดที่คุณสามารถทำได้กับการสะท้อนของเจ้าของบ้านคือการทำให้มันอยู่ในรูปแบบสามมิติ มีวิธีที่ชัดเจนที่จะดูว่าทำไมมันจึงไม่สามารถทแยงมุมแบบนี้ได้อย่างสมบูรณ์? ฉันพยายามอธิบายสิ่งนี้อย่างง่าย ๆ แต่ฉันไม่สามารถนำเสนอได้อย่างชัดเจน

2
เกณฑ์การหยุดสำหรับตัวแก้เชิงเส้นแบบวนซ้ำที่ใช้กับระบบเกือบเอกพจน์
A x = bAx=ขAx=bAAAλ0λ0\lambda_0AAARn: = b - A xnRn=ข-Axnr_n:=b-Ax_nn v λ 0 A v = λ 0 v∥ rn∥ / ∥ r0∥ &lt; t o l‖Rn‖/‖R0‖&lt;เสื้อโอล.\|r_n\|/\|r_0\|<tolnnnโวลต์โวลต์vλ0λ0\lambda_0A v = λ0โวลต์Aโวลต์=λ0โวลต์Av=\lambda_0v. สมมติว่าส่วนที่เหลือเริ่มต้นR0R0r_0มีขนาดใหญ่แล้วมันอาจเกิดขึ้นที่เราหยุดที่∥ rn∥ / ∥ r0∥ &lt; t o l‖Rn‖/‖R0‖&lt;เสื้อโอล.\|r_n\|/\|r_0\|<tolแต่ข้อผิดพลาดxn- xxn-xx_n-xยังคงมีขนาดใหญ่ ตัวบ่งชี้ข้อผิดพลาดที่ดีกว่าคืออะไรในกรณีนี้ คือ∥ xn- xn - 1∥‖xn-xn-1‖\|x_{n}-x_{n-1}\|ผู้สมัครที่ดี?

2
มีวิธีใดบ้างที่จะทำ
คำถาม: สมมติว่าคุณมีสองแตกต่างกัน (ปัจจัย) preconditioners สำหรับสมมาตรบวกแน่นอนเมทริกซ์: ≈ B T B และ ≈ C T C , ที่แปรผกผันกันของปัจจัยB , B T , C , C Tมีความง่ายต่อการใช้AAAA ≈ BTBA≈BTBA \approx B^TBA ≈ CTค,A≈คTค,A \approx C^TC,B , BT, C,CTB,BT,ค,คTB, B^T, C, C^T เมื่อใดจึงเป็นไปได้ที่จะใช้ข้อมูลจากทั้ง และCเพื่อสร้างเงื่อนไขเบื้องต้นที่ดีกว่าBหรือCอย่างเดียว?BBBคคCBBBคคC

3
การคำนวณที่มีประสิทธิภาพของเมทริกซ์ผกผันสแควร์รูท
ปัญหาที่พบบ่อยในสถิติคือการคำนวณค่าผกผันสแควร์รูทของเมทริกซ์แน่นอนบวกที่เป็นสมมาตร อะไรจะเป็นวิธีที่มีประสิทธิภาพสูงสุดในการคำนวณสิ่งนี้? ฉันเจอวรรณกรรมบางเล่ม (ซึ่งฉันยังไม่ได้อ่าน) และมีรหัส R เล็กน้อยที่นี่ซึ่งฉันจะทำซ้ำที่นี่เพื่อความสะดวก # function to compute the inverse square root of a matrix fnMatSqrtInverse = function(mA) { ei = eigen(mA) d = ei$values d = (d+abs(d))/2 d2 = 1/sqrt(d) d2[d == 0] = 0 return(ei$vectors %*% diag(d2) %*% t(ei$vectors)) } d = (d+abs(d))/2ผมไม่แน่ใจว่าทั้งหมดผมเข้าใจบรรทัด มีวิธีที่มีประสิทธิภาพมากกว่าในการคำนวณเมทริกซ์ผกผันสแควร์รูทหรือไม่? การวิจัยeigenการเรียกฟังก์ชัน …

3
วิธี multigrid เพื่อแก้ปัญหา PDE
ฉันต้องการคำอธิบายง่ายๆของ Multigrid Method หรือวรรณกรรมบางอย่างเกี่ยวกับเรื่องนี้ ฉันคุ้นเคยกับวิธีการวนซ้ำรวมถึง BiCGStab, CG, GS, Jacobi และการปรับเงื่อนไขล่วงหน้า แต่ฉันเป็นผู้เริ่มต้นด้วยวิธีการแบบหลายจุด บางคนสามารถอธิบายรายละเอียดนี้หรืออย่างน้อยก็ให้รหัสเทียมหรือซอร์สโค้ดอย่างชัดเจนแม้จะมีวรรณกรรมที่ดีสำหรับผู้เริ่มต้น ขอบคุณ!

4
วิธีแก้ปัญหาของระบบเชิงเส้นของสมการสามารถประมาณค่าสำหรับตัวแปรแรกเท่านั้นหรือไม่
ฉันมีระบบเชิงเส้นของสมการขนาด mxm โดยที่ m มีขนาดใหญ่ อย่างไรก็ตามตัวแปรที่ฉันสนใจเป็นเพียงตัวแปร n ตัวแรก (n มีค่าน้อยเมื่อเทียบกับ m) มีวิธีที่ฉันสามารถประมาณโซลูชันสำหรับค่า m แรกโดยไม่ต้องแก้ไขระบบทั้งหมดหรือไม่ ถ้าใช่การประมาณนี้จะเร็วกว่าการแก้ระบบเชิงเส้นเต็มหรือไม่

1
สามารถใช้วิธีการ subspace ของ Krylov ได้อย่างราบรื่นสำหรับ multigrid หรือไม่?
เท่าที่ฉันทราบตัวแก้แบบหลายตัวใช้ตัวทำซ้ำแบบซ้ำซ้อนเช่น Jacobi, Gauss-Seidel และ SOR เพื่อลดความผิดพลาดที่ความถี่ต่าง ๆ สามารถใช้วิธีการ subspace ของ Krylov (เช่น gradient conjugate, GMRES และอื่น ๆ ) ได้หรือไม่? ฉันไม่คิดว่าพวกมันถูกจัดอยู่ในประเภท "สมูทเทนเนอร์" แต่พวกเขาสามารถใช้เพื่อประมาณโซลูชันกริดแบบหยาบ เราคาดหวังได้ไหมว่าการลู่เข้าหากันของสารละลายเหมือนกับวิธีมาตรฐานหลายจุด หรือมันขึ้นอยู่กับปัญหา?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.