বিপরীতমুখী ম্যাট্রিক্স এবং তার ইতিবাচক নির্দিষ্ট প্রতিসাম্য ম্যাট্রিক্সের নির্ধারক নির্ধারণের জন্য দ্রুততম অ্যালগরিদম কী?


10

একটি ইতিবাচক নির্দিষ্ট প্রতিসাম্য ম্যাট্রিক্স দেওয়া, বিপরীতমুখী ম্যাট্রিক্স এবং এর নির্ধারক গণনার জন্য দ্রুততম অ্যালগরিদম কী? যে সমস্যার জন্য আমি আগ্রহী, তার জন্য ম্যাট্রিক্সের মাত্রা 30 বা তার চেয়ে কম।

  1. উচ্চ নির্ভুলতা এবং গতি সত্যই প্রয়োজনীয়। (মিলিয়ন ম্যাট্রিক পরীক্ষা করা হয়)
  2. নির্ধারকটি প্রয়োজনীয় each প্রতিটি গণনায়, বিবিধ ম্যাট্রিক্সের মাত্র একটি উপাদান প্রয়োজন। ধন্যবাদ!

আপনার কি এই জাতীয় লক্ষ লক্ষ ম্যাট্রিককে উল্টাতে হবে? অন্যথায়, গতি কোনও সমস্যা হওয়া উচিত নয়।
ওল্ফগ্যাং ব্যাঙ্গার্থ

আমি আপনার শিরোনাম এবং প্রশ্নটি স্বচ্ছতার জন্য সম্পাদনা করেছি। যদি আমি কোনও ত্রুটি করে থাকি তবে দয়া করে আমাকে জানান।
জেফ অক্সবেরি

@ ওল্ফগ্যাং ব্যাঙ্গার্থ হ্যাঁ, গতি বিবেচনা করা উচিত।
আদেশ দিন

1
আপনি কি জানেন যে বিপরীতমুখী ম্যাট্রিক্সের কোন উপাদানটি প্রয়োজন? অথবা এটি এলোমেলো প্রবেশ হতে পারে?
11:41 '

2
@Orders আপনার মন্তব্য এবং সম্পাদনা contradicting মনে: আপনি প্রয়োজন এক বিপরীত উপাদান, বা সব তাদের?
ফেডেরিকো পোলোনি

উত্তর:


12

যে সমস্যার জন্য আমি আগ্রহী, তার জন্য ম্যাট্রিক্সের মাত্রা 30 বা তার চেয়ে কম।

ওল্ফগ্যাংবাংয়ের্থ নোট হিসাবে, আপনার যদি এই ম্যাট্রিক্সের একটি বিশাল সংখ্যা (মিলিয়ন, বিলিয়ন) না থাকে তবে ম্যাট্রিক্স ইনভার্সনের কার্য সম্পাদন কোনও সমস্যা নয়।

একটি ইতিবাচক নির্দিষ্ট প্রতিসাম্য ম্যাট্রিক্স দেওয়া, বিপরীতমুখী ম্যাট্রিক্স এবং এর নির্ধারক গণনার জন্য দ্রুততম অ্যালগরিদম কী?

গতি যদি কোনও সমস্যা হয় তবে আপনার নিম্নলিখিত প্রশ্নের উত্তর দেওয়া উচিত:

  • আপনার কি সত্যিই পুরো বিপরীত দরকার? (অনেক অ্যাপ্লিকেশনকে একটি সুস্পষ্ট বিপরীত গঠনের প্রয়োজন হয় না))
  • আপনার কি সত্যিকারের নির্ধারক দরকার? (নির্ধারকগণ অসাধারণ, তবে গণ্য বিজ্ঞানে অবশ্যই এটি শ্রবণ নয়))
  • আপনার কি উচ্চ নির্ভুলতার প্রয়োজন? (কম নির্ভুলতা অ্যালগরিদমগুলি দ্রুততর হতে থাকে))
  • একটি সম্ভাব্যতা প্রায় যথেষ্ট হবে? (সম্ভাব্য অ্যালগরিদমগুলি দ্রুত হতে থাকে))

আপনার একটি ছোট, ধনাত্মক সুনির্দিষ্ট ম্যাট্রিক্সকে উল্টানো এবং এর নির্ধারক গণনা করার সমস্যার স্ট্যান্ডার্ড প্রতিক্রিয়া হ'ল কোলেস্কি পচন হবে। যদিA=LLTতাহলে det(A)=i=1nlii2এবং ।det(A1)=i=1nlii2

ধরে নেওয়া যাক হল দ্বারা , Cholesky পচানি প্রায় মধ্যে নির্ণিত করা যেতে পারে flops, যা একটি এল ইউ পচানি অর্ধেক খরচ সম্পর্কে। তবে এই জাতীয় অ্যালগরিদমকে "দ্রুত" হিসাবে বিবেচনা করা হবে না। একটি এলোমেলোভাবে LU পচনAnnn3/3(১) আপনি যদি সত্যই প্রচুর পরিমাণে ম্যাট্রিক তৈরি করতে চান, তবে এটি বিবেচনার জন্য দ্রুততর অ্যালগরিদম হতে পারে, (২) ফ্যাক্টরাইজেশনটি সত্যই আপনার আবেদনের সীমিত পদক্ষেপ এবং (3) এলোমেলোভাবে অ্যালগরিদম ব্যবহারে যে কোনও ত্রুটি ঘটেছে তা হ'ল গ্রহণযোগ্য। আপনার ম্যাট্রিকগুলি স্পার্স অ্যালগরিদমগুলি সার্থক হওয়ার পক্ষে সম্ভবত খুব ছোট, সুতরাং দ্রুত অ্যালগরিদমের জন্য কেবলমাত্র অন্যান্য সুযোগগুলির জন্য অতিরিক্ত ম্যাট্রিক্স কাঠামো (যেমন, ব্যান্ডেড), বা শোষণ সমস্যা কাঠামোর প্রয়োজন হবে (উদাহরণস্বরূপ, সম্ভবত আপনি চতুরতার সাথে আপনার অ্যালগরিদমের পুনর্গঠন করতে পারেন যাতে আপনি না আর কোনও ম্যাট্রিক্স বিপরীত বা তার নির্ধারক গণনা করা দরকার) need দক্ষ নির্ধারক অ্যালগরিদমগুলি প্রায়শই একটি রৈখিক সিস্টেম সমাধান করার ব্যয় হয়, একটি ধ্রুবক ফ্যাক্টরের মধ্যে তাই লিনিয়ার সিস্টেমগুলির জন্য ব্যবহৃত একই যুক্তি নির্ধারকগুলিও গণনার ক্ষেত্রে প্রযোজ্য।


কেবল একটি সংক্ষিপ্ত দ্রষ্টব্য: যদি , একটি একক উপাদান গণনা করতে একজনের কেবলমাত্র এর তম কলাম গণনা করা উচিত । একবার কোলেস্কি ফ্যাক্টরিয়েশন গণনা করা হয়, এটি সমস্ত শূন্যের একটি আরএইচএস ভেক্টরের সাথে সম্মতি এবং সারি কেবল একটি একক দ্বারা এগিয়ে এবং পিছনের বিকল্প দ্বারা সম্পন্ন হয় । যেহেতু গণনা করা বাধাগ্রস্থ হতে পারে , তাই সেরা ক্ষেত্রে সবচেয়ে খারাপ ক্ষেত্রে for যেখানে একটিকে পুরো পিছনে গণনা করতে হবে এবং এগিয়ে বিকল্প B=A1bijjBjbijbnn=lnn2b11
স্টেফানো এম

@ স্টেফানোএম আরও ভাল, আপনি গণনা শুরুর আগে আপনার ম্যাট্রিক্সকে অনুমতি দিতে পারেন যাতে আপনি সর্বদা সেরা ক্ষেত্রে থাকেন।
ফেডেরিকো পোলোনি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.