কার্যকর করার জন্য শক্তিশালী অ্যালগরিদম খুব জটিল


67

বৈধ ইউটিলিটির কয়েকটি অ্যালগরিদম কী কী যা বাস্তবায়নের জন্য খুব জটিল?

আমাকে পরিষ্কার করে দেওয়া যাক: আমি বর্তমান অ্যাসিম্পটোটিক অনুকূল ম্যাট্রিক্সের গুণ গুণ অ্যালগরিদম (কপারস্মিথ-উইনোগ্রেড) এর মতো অ্যালগরিদম খুঁজছি না, যা বাস্তবায়নের পক্ষে যুক্তিযুক্ত তবে এর একটি ধ্রুবক রয়েছে যা বাস্তবে এটি অকেজো করে তোলে। আমি এমন অ্যালগরিদমগুলির সন্ধান করছি যা বুদ্ধিমানভাবে ব্যবহারিক মান থাকতে পারে তবে কোডটি এতোটাই কঠিন যে এগুলি কখনও প্রয়োগ করা হয়নি, কেবল অত্যন্ত কৃত্রিম সেটিংসে প্রয়োগ করা হয়নি, বা কেবল উল্লেখযোগ্য বিশেষ উদ্দেশ্যে ব্যবহারের জন্য প্রয়োগ করা হয়েছে।

এছাড়াও স্বাগত হ'ল কাছাকাছি-অসম্ভব-থেকে-বাস্তবায়িত অ্যালগরিদমগুলিতে ভাল অ্যাসিমেটটিকস রয়েছে তবে সম্ভবত আসল কর্মক্ষমতা রয়েছে।


1
এই সিডব্লিউ তৈরি করে, যেহেতু এটি দীর্ঘ তালিকা হতে পারে।
সুরেশ ভেঙ্কট

4
'কাছাকাছি-অসম্ভব-বাস্তবায়নের' জন্য কোনও মেট্রিক আছে? তত্ত্ব আছে যে এটি সংজ্ঞায়িত করে?
ত্বিক বোস

@ মেচকো, সম্ভবত সবচেয়ে ক্ষুদ্রতম টিউরিং মেশিনের আকারের নীচে একটি বেউন্ড যা একটি টুরিং মেশিনের বর্ণনা দেয় যা অ্যালগরিদমের বাস্তবায়ন। :)
রাদু গ্রেগোর

@ রাদু জিরিগোর এটি কোনও স্বীকৃত মেট্রিক বা একটি যা বিকাশ করা উচিত? আমি মনে করি (আপাতত) এখানে একটি সরল, অস্থাবর লাইন রয়েছে যা 'মেহকে সংজ্ঞায়িত করে, এটির পক্ষে উপযুক্ত নয়' ...: ডি
Rত্বিক বোস

4
কপারস্মিথ-উইনোগ্রাড প্রয়োগ করার পক্ষে যুক্তিযুক্ত যে পরামর্শটি নিয়ে আমি আগ্রহী। উচ্চ পর্যায়ের ছদ্ম-কোডে কেউ কি কখনও কোনও বাস্তবায়ন লিখিত দেখেছেন এবং কেউ কি কখনও প্রতিরোধের অনুমান করেছেন?
রাফেল

উত্তর:


33

চ্যাজেল একটি সাধারণ বহুভুজকে ত্রিভঙ্গীকরণের জন্য একটি রৈখিক সময় অ্যালগোরিদম দিয়েছেন । স্কিয়েনা লিখেছিলেন (p.575, অ্যালগরিদম ডিজাইনের ম্যানুয়াল) যে এটি "এটি অস্তিত্বের প্রমাণ হিসাবে আরও বেশি যোগ্যতা অর্জন করতে যথেষ্ট আশাবাদী"


3
অ্যালগরিদমের কি যুক্তিসঙ্গত প্রতিবন্ধকতা রয়েছে?
jbapple

সমস্যাটির জন্য এটি কি একমাত্র লিনিয়ার সময় অ্যালগরিদম?
থমাস আহলে

2
@ থমাস অহলে আমি বিশ্বাস করি এটিই একমাত্র পরিচিত ডিটারমিনিস্টিক লিনিয়ার টাইম অ্যালগরিদম। আমাতো, গুডরিচ এবং রামোসের একটি সহজ র্যান্ডমাইজড রয়েছে: cs.princeton.edu/courses/archive/fall05/cos528/handouts/…
সাশো নিকোলভ

আমার জ্ঞান অনুসারে চ্যাজেলের লিনিয়ার টাইম সাদৃশ্য বহুভুজ ত্রিভুজ্যরণ অ্যালগরিদম কখনই বাস্তবায়িত হয় নি এবং সম্ভবত কখনও কখনও তার জটিলতার কারণে হবে না এবং ধ্রুবকগুলি বেশি হওয়ার কারণে এটি অনুশীলনে বিকল্পগুলির সাথে প্রতিযোগিতা করতে সক্ষম হবে না। যদিও প্রধান তাত্ত্বিক প্রাপ্তি। র‌্যাল্ফ বোল্যান্ড
র‌্যাল্ফ বোল্যান্ড

আমি আবার জিজ্ঞাসা করব: অ্যালগরিদমের কি যুক্তিসঙ্গত ধ্রুবক রয়েছে?
ব্যবহারকারী 1271772

29

Risch অ্যালগরিদম প্রাথমিক antiderivatives কম্পিউটিং জন্য। উইকিপিডিয়া অনুসারে কোনও সফ্টওয়্যার প্যাকেজ জটিলতার কারণে পুরো অ্যালগরিদম বাস্তবায়নের জন্য পরিচিত নয়।


3
উইকিপিডিয়ায় এটিও নির্দেশ করা হয়েছে যে এটি একটি অ্যালগরিদম নয় একটি অর্ধ-অ্যালগরিদম কারণ এটি ধ্রুবক সমস্যা সমাধানের জন্য হিউরিস্টিকস প্রয়োজন।
sclv

হিউরিস্টিকস কী? আপনি আরও কিছু পড়ার জন্য কিছু লিঙ্ক দিতে পারেন?
zygimantus

22

কোনও নির্দিষ্ট অল্প বয়স্ককে বাদ দেওয়া গ্রাফগুলিতে জড়িত জিনিসগুলির জন্য "পলটাইম" অ্যালগোরিদম অনুমান করতে রবার্টসন-সিউমার ফলাফলগুলি ব্যবহার করে এমন যে কোনও অ্যালগরিদম সমস্যা জিজ্ঞাসা করছে। তাদের ফলাফলের মধ্যে ধ্রুবক লুকানো "গ্যালাকটিক"।


3
এটি কার্যকর করা কি কঠিন বা কেবল একটি বিশাল ধ্রুবক রয়েছে?
লেভ রেইজিন

5
হ্যাঁ, এটি ভাল উদাহরণের মতো দেখায় না। যদি আমি সঠিকভাবে বুঝতে পারি তবে প্রশ্নটি আলগোরিদিম সম্পর্কে যা ব্যবহারিক হতে পারে (সুতরাং সম্ভবত 'ছোট' ধ্রুবক) তবে এটি বাস্তবায়নের পক্ষে খুব জটিল। অবশ্যই, পুরো প্রশ্নটি বিভিন্ন ব্যাখ্যার জন্য উন্মুক্ত :-)
আর্যভট্ট

5
সমস্যা হ'ল ধ্রুবকটি নাবালকের খুব বড় তালিকা থেকে আসে যা একটি নির্দিষ্ট সম্পত্তির জন্য বাদ দিতে হয়। প্রদত্ত সম্পত্তির জন্য বাদ পড়া অপ্রাপ্তবয়স্কদের কাঙ্ক্ষিত তালিকা উত্পন্ন করার কোনও উপায় আমি জানি না, সুতরাং এটি কেবল একটি স্কেল সমস্যা নয়।
সুরেশ ভেঙ্কট

2
উদাহরণস্বরূপ, আমরা টরাসটিতে এম্বেডযোগ্য গ্রাফগুলির জন্য বাদ দেওয়া অপ্রাপ্তবয়স্কদের তালিকাও জানি না।
ডেরিক স্টোলি

17
এখানে সমস্যাটি আরও গভীর বলে মনে হচ্ছে: নাবালিকাদের তালিকা উত্পন্ন করার কার্যকর কোনও উপায় নেই , সুতরাং এটি আসলে কোনও অ্যালগোরিদম লাভ করে না। বেশিরভাগ ক্ষুদ্র-বন্ধ হওয়া বৈশিষ্ট্যগুলি বাদ দেওয়া অপ্রাপ্তবয়স্কদের অসীম তালিকা সরবরাহ করে, যদি কেউ সরাসরি যৌক্তিক অভিব্যক্তিটি অনুবাদ করে। রবার্টসন-সিমুর উপপাদ্য (ওয়াগনার কনজেকচার) আমাদের বলে যে বাদ দেওয়া অপ্রাপ্তবয়স্কদের একটি সীমাবদ্ধ তালিকা সেই অসীম তালিকার মধ্যে লুকিয়ে আছে, তবে তাত্ত্বিক প্রকৃতপক্ষে তাদের সন্ধানে একেবারে কোনও সহায়তা দেয় না। সুতরাং রবার্টসন-সিউমার সাধারণত একটি খাঁটি অস্তিত্বের প্রমাণের দিকে পরিচালিত করে।
অ্যান্ড্রেস সালামন

16

O(n)O(log2nB)B

কাগজটি 55 পৃষ্ঠার দীর্ঘ এবং এটির উপসংহারে ধ্রুবকগুলিতে বেশ কয়েকটি উন্নতি লক্ষ করা গেছে যা লেখক জায়গার কারণে বর্ণনা করেন না। এটি আমার সন্দেহ করেছে যে সম্ভবত ধ্রুবকগুলি এত গ্যালাকটিক নয় এবং এই ডেটা স্ট্রাকচারটি "বৈধ উপযোগ" হতে হবে, বিশেষত যেহেতু এটি বহুবার উদ্ধৃত হয়েছে।


12

কিয়ান কর্তৃক রৈখিক সময়ের উচ্চতর অর্ডার প্যাটার্ন ইউনিফিকেশন অ্যালগরিদম এএফআইএকের জটিলতার কারণে কখনও প্রয়োগ করা হয়নি।


ভাগ্যক্রমে এখনও এর জন্য ব্যবহারিক অ্যালগরিদম রয়েছে। অটোমেটেড যুক্তির হ্যান্ডবুকটি বলছে যে এটি পলটাইমে করা যেতে পারে (যেখানে এটি কিয়ানের অ্যালগোরিদম তুলে ধরেছে ঠিক তার পাশেই) যাতে এটি দুর্দান্ত।
জেক

11

কোনও নির্দিষ্ট পৃষ্ঠে কোনও গ্রাফ এম্বেড করা যায় কিনা তা পরীক্ষা করার জন্য লিনিয়ার-টাইম অ্যালগরিদম।

কেন-আইচি কাওরবায়াশি, বোজন মোহার, ব্রুস এ রিড: একটি স্বেচ্ছাসেবী পৃষ্ঠগুলিতে এম্বেডিং গ্রাফ এবং সীমান্ত বৃক্ষের প্রস্থের গ্রাফের জেনাসের জন্য একটি সরল লিনিয়ার সময় অ্যালগরিদম। FOCS 2008: 771-780।

বোজন মোহার: একটি স্বেচ্ছাসেবী পৃষ্ঠে এম্বেডিং গ্রাফগুলির জন্য একটি লিনিয়ার সময় অ্যালগরিদম। সিয়াম জে। স্বচ্ছ ম্যাথ। 12 (1): 6-26 (1999)


1
জেনাসের উপর বৃহত সূচকীয় (sic) নির্ভরতার কারণে এটি প্রয়োগ করা হলেও ব্যবহারিক মান হওয়ার সম্ভাবনা নেই।
জেফি

8

অনুশীলনে এটি কতটা কার্যকর হতে পারে তা আমি নিশ্চিত নই (যদিও আমি প্রোটিন ভাঁজ এবং তুলনা, সেইসাথে আরএনএ মাধ্যমিক কাঠামোর ভবিষ্যদ্বাণী সম্পর্কেও ভাবছি) তবে ওল্ফগ্যাং হ্যাকান গিঁটটি কিনা তা সিদ্ধান্ত নেওয়ার জন্য প্রথম বহু-কালীন অ্যালগরিদম দিয়েছিলেন সরল লুপ ( থিওরি ডর নর্মলফ্লাচেন। অ্যাক্টা ম্যাথ। 105, 1961, পৃষ্ঠা 245--375)। আমার মনে আছে,, সমস্ত দশক পরেও এটি প্রয়োগ করা খুব জটিল।

উইকিপিডিয়াকে যদি বিশ্বাস করা হয় তবে পরে আরও বেশ কয়েকটি অ্যালগরিদম দেওয়া হয়েছিল এবং "এই অ্যালগরিদমের জটিলতা বোঝা পড়াশোনার একটি সক্রিয় ক্ষেত্র"।


4
হাকেন প্রথম অ্যালগরিদম দিয়েছিলেন, তবে এটি বহুপদী সময়ে চলে না; আসলে, কোনও পলি-টাইম অ্যালগরিদম (বা এনপি-কঠোরতার ফলাফল) জানা যায় না। সাম্প্রতিক কাজগুলি গিঁট তুচ্ছতা হ্যাক করেছে (হাকেনের সাধারণ-পৃষ্ঠের গঠনের মাধ্যমে) পূর্ণসংখ্যা প্রোগ্রামিংয়ে, যা সাধারণত অনুশীলনে সমাধান করার জন্য দ্রুত হয়।
জেফি

3

গাছের পচন এবং সম্ভবত ফিবোনাকির স্তুপ


14
ফিবোনাচি স্তূপগুলি বাস্তবায়নের পক্ষে অবশ্যই খুব জটিল নয়; সেগুলি প্রয়োগ করা হয়েছে, এবং পরীক্ষা করা হয়েছে। তাদের সাথে সমস্যাটি বরং এটি যে চলমান সময়গুলিতে অবিরাম ধ্রুবক কারণগুলির কারণে তাদের ব্যবহারিক পারফরম্যান্সটি অন্য কিছু গাদাগুলির মতো তেমন ভাল নয়।
ডেভিড এপস্টিন

1
আমি গাছের পচনের সন্ধান করার জন্য একটি প্যাকেজ লিখেছিলাম এবং yaroslavvb.blogspot.com/2011/01/ বিল্ডিং- জংশন- ttts.html
ইয়ারোস্লাভ

2
আমার কোডটি কেবল একটি বৈজ্ঞানিক গাছ-পচন, শাখা-ও-আবদ্ধ এবং গতিশীল প্রোগ্রামিং পদ্ধতির মতো অনুকূল নয় ... আমি অনুমান করছি যে আপনি বোদলেেন্ডারের "একটি লিনিয়ার সময় অ্যালগোরিদম ..." বলতে চাইছেন? আমি এর কোনও বাস্তবায়ন দেখিনি
ইয়ারোস্লাভ বুলাটোভ

4
2O(k3)O(n)

3
আমি মনে করি এটিই সেরা বাস্তবায়ন প্রচেষ্টা: hein.roehrig.name/dipl
দিয়েগো ডি

1

পারফেক্ট হ্যাশ কনস্ট্রাকশন ( https://en.wikedia.org/wiki/Liveect_hash_function#Con تعمیر ) স্থির বা অবিচ্ছিন্নভাবে পরিবর্তিত কীগুলির সাথে কোনও ব্যবহারের ক্ষেত্রে প্রয়োগ করা হবে (যেমন রাউটারগুলিতে শীর্ষ স্তরের ডোমেনের নাম, সংকলকগুলির কীওয়ার্ড বা ফাংশন নাম) স্ট্যান্ডার্ড লাইব্রেরিতে) তবে শেষবারের মতো আমি দেখেছি কোনও বাস্তবায়ন খুঁজে পেলাম না।

প্যারামিট্রিক অনুসন্ধান অনেকগুলি অনুকূল অপ্টিমাইজেশান সমস্যা সমাধান করতে পারে, যার মধ্যে এমন কিছু কিছু দেখা যায় যা তাদের বহু-কালীন সময়ে এনপি-হার্ড হওয়া উচিত। সুনামযুক্ত কাগজ প্যারাম্যাট্রিক অনুসন্ধান ব্যবহারিক প্রয়োগকে প্যারামেট্রিক অনুসন্ধানের বৈকল্পিক করে তোলে , তবে এখনও আমি মনে করি না এটি ব্যবহারিক সফ্টওয়্যারটিতে প্রয়োগ করা হয়েছে।

knO(nlogn+k)O((n+k)logn)


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