স্মুটেড বিশ্লেষণ একাডেমিয়ার বাইরে ব্যবহার করা হয়?


24

ধীরে ধীরে বিশ্লেষণটি কি অ্যালগোরিদমের মূল স্ট্রিম বিশ্লেষণের পথ খুঁজে পেয়েছিল ? অ্যালগরিদম ডিজাইনারদের কি তাদের অ্যালগোরিদমগুলিতে স্মুটেড বিশ্লেষণ প্রয়োগ করা সাধারণ?


11
লোকেরা একাডেমিয়ার বাইরে তাদের অ্যালগোরিদমে কোনও ধরণের জটিল বিশ্লেষণ প্রয়োগ করে?
ডেভ ক্লার্ক

2
@ ডেভ ক্লার্ক কী বলে; হতে পারে তার কঠোর (বা তুচ্ছ) বিশ্লেষণের জন্য জিজ্ঞাসা করা উচিত । আমি প্রত্যাশা করি যে অনেক অনুশীলনকারী তাদের অ্যালগোরিদমগুলি দেখুন, লুপ নীড়ের গভীরতা গণনা করুন এবং বলবেন: "এটি !"! O(n3)
রাফেল

3
সিম্প্লেক্স ব্যতীত স্মুথড বিশ্লেষণের কোনও ব্যবহারের সন্ধান করার সময় আমি কৌশলটি আবিষ্কার করে এমন একজনের দ্বারা স্নাতকৃত একটি তালিকা পেয়েছি ।
রাফেল

1
@ ডেভ ক্লার্ক আইবিএম বা এইচপি বা এনটিটিতে কর্মরত লোকদের সম্পর্কে কীভাবে? তাদের কি এ জাতীয় বিশ্লেষণ ব্যবহার করা উচিত নয়?
মার্কোস ভিলাগ্রা

1
পছন্দ করুন
কেভিন

উত্তর:


12

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


2
সমস্যাটি হ'ল এ পর্যন্ত, ধীরে ধীরে বিশ্লেষণের জন্য বড় সাফল্যগুলি বর্তমান অনুশীলনকে ব্যাখ্যা করার ক্ষেত্রে হয়েছে, তাই অনুশীলনকারীরা কেবল "এটি ভাল যে আমি যা করে যাচ্ছি তার সমস্ত কিছু বোঝার জন্য দেখানো যেতে পারে" বলে প্রতিক্রিয়া জানাতে পারে :) :)। আমি জানি না যে কেউ এই মুহূর্তে স্বল্প বিশ্লেষণের স্বল্প-জ্ঞাত হিউরিস্টিক কারণ ব্যবহার করার সিদ্ধান্ত নিয়েছে।
সুরেশ

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

3

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

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

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

পরিশেষে, ধীরে ধীরে বিশ্লেষণ হ'ল একটি হিউরিস্টিক যা ব্যাখ্যা করতে ব্যবহার করা যেতে পারে যে কেন তাদের খারাপ অবস্থার তুলনায় অ্যালগোরিদমগুলি অনুশীলনে আরও ভাল কাজ করে - কারণ যেহেতু কিছু ইনপুট কিছু অর্থে "এলোমেলো"। যদি কেউ সান্নিধ্যের পদ্ধতিটি ব্যবহার করে তবে অ্যালগোরিদমের আচরণটি আনুমানিকভাবে ব্যবহার করতে এই হিউরিস্টিক ব্যবহার করা যেতে পারে।


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