একটি অ্যালগরিদম শব্দ এবং সম্পূর্ণ বলতে কী বোঝায়?


33

আমি শব্দ এবং সম্পূর্ণরূপে বিভিন্ন ব্যাখ্যা শুনেছি । আমি বুঝতে পেরেছি যে সম্পূর্ণতা মানেই যদি এর সমাধান থাকে তবে সমাধান পাওয়া। অ্যালগরিদম বলতে কী বোঝায় তা শোনানো

একটি অ্যালগরিদম শব্দ এবং সম্পূর্ণ বলতে কী বোঝায়?


আমি আপনাকে পরামর্শ দিয়েছি যে আপনি যে উত্তরটি মেনে নিয়েছেন সেটিকে যদি ভুল হয় তবে তা পুনর্বিবেচনা করুন।
ব্ল্যাকজ্যাক

উত্তর:


50

এগুলি যুক্তির সাথে সম্পর্কিত হিসাবে খুব নির্দিষ্ট শর্তাদি।

এখানে কিছু সূচনা পয়েন্ট:

http://en.wikipedia.org/wiki/Soundness

http://en.wikipedia.org/wiki/Completeness_(logic)

মূলত, স্বচ্ছতা (একটি অ্যালগোরিদমের) এর অর্থ হল যে অ্যালগরিদম অসত্য নয় এমন কোনও ফল দেয় না। উদাহরণস্বরূপ, যদি আমার কাছে বাছাই করা অ্যালগরিদম থাকে যা কখনও কখনও বাছাই করা তালিকাটি ফেরত দেয় না, অ্যালগরিদমটি সাউন্ড হয় না।

সম্পূর্ণতা, অন্যদিকে, এর অর্থ হল অ্যালগরিদম সমস্ত সম্ভাব্য ইনপুটগুলিকে সম্বোধন করে এবং কোনওটি মিস করে না। সুতরাং, যদি আমার বাছাই করা অ্যালগরিদমটি কোনও অরসোর্টড তালিকাকে কখনই ফিরিয়ে না দেয় তবে number নম্বর থাকা তালিকায় কেবল কাজ করতে অস্বীকৃতি জানায়, এটি সম্পূর্ণ হবে না not

এটি সম্পূর্ণ এবং সুস্পষ্ট যদি এটি সমস্ত ইনপুটগুলিতে কাজ করে (প্রোগ্রামের বিশ্বে শব্দার্থগতভাবে বৈধ) এবং সর্বদা উত্তরটি সঠিকভাবে পায়।


ধন্যবাদ। দৃ sound়তার অর্থ কী তা নিয়ে আমি সত্যিই বিভ্রান্ত ছিলাম । আমি একাধিক উত্তর পাচ্ছিলাম।
mutelogan

খুশি যদি এটি সাহায্য করে ... :)
এরিক ডায়েটারিচ

13
একটি উদাহরণ বাইনারি অনুসন্ধান হবে, এটি শব্দ, তবে এটি সম্পূর্ণ নয়। এটি অ-বাছাই করা তালিকায় কাজ করতে পারে না।
মালফিস্ট

3
@ ম্যালফিস্ট কিন্তু 'প্রোগ্রামের জগতের' তালিকা অনুসারে বাছাই করা নয়?
আন্দ্রেস

1
"একটি অ্যালগোরিদম অবৈধ ইনপুটগুলিতে দুর্ব্যবহার করে" শব্দ বা সম্পূর্ণতা প্রভাবিত করে না, সুতরাং বাইনারি অনুসন্ধান বা তুলনা প্রাসঙ্গিক উভয়ই প্রাসঙ্গিক নয় - উভয়ই অ্যালগরিদম কার্যকর এবং বৈধ ইনপুটগুলির জন্য সম্পূর্ণ।
ব্লেজারব্লেড

15

আমি এরিক ডায়েট্রিচের উত্তর খুঁজে পেলাম একটি বাজে বিভ্রান্তিকর। নিম্নলিখিতটি আরও ভাল:

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

দুটি গুরুত্বপূর্ণ বিষয়:

  1. শব্দহীনতা একটি দুর্বল গ্যারান্টি। এটি প্রতিশ্রুতি দেয় না যে এ শেষ হবে।
  2. দৃound়তা এবং সম্পূর্ণতা সম্পর্কিত ধারণা; প্রকৃতপক্ষে তারা একে অপরের যৌক্তিক কথোপকথন। অর্থাত্ সাগ্রহ বলে যে কোনও উত্তর যদি ফিরে আসে তবে উত্তরটি সত্য। সম্পূর্ণতা বলে যে কোনও উত্তর যদি ফিরে আসে তবে সত্য।

উদাহরণ হিসাবে বিবেচনা করুন একটি বাছাই করা অ্যালগরিদম এ যা সংখ্যার একটি তালিকা ইনপুট হিসাবে প্রাপ্ত হয়। আমরা বলি যে প্রতিবার যদি এটির ফলাফল ফেরত দেয় তবে ফলাফলটি বাছাই করা তালিকার শোনাল A তেমনি, আমরা বলি যে এটিকে সম্পূর্ণ করা হয়েছে যদি আমরা কোনও সংখ্যার তালিকা দিই তবে যে কোনও সময় বাছাই করা তালিকা ফেরত দেওয়ার গ্যারান্টি দেয়।


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

1
কেবল স্পষ্ট করে বলতে গেলে, আপনি যখন "সম্পূর্ণতা বলেন যে উত্তর যদি ফিরে আসে তবে সত্য হয়", আপনি কী উত্তরটি সঠিক "সঠিক"?
দইস

1
"যদি উত্তর ফিরে আসে তবে সত্য হয়" এর অর্থ আক্ষরিক অর্থে "যদি কোনও উত্তর ফিরে আসে তবে এটি সত্য"। এছাড়াও, উত্তরগুলি "সত্য" হতে পারে না, কেবল সঠিক। সফ্টওয়্যারেনজেনারিং.স্ট্যাকেক্সেঞ্জাওএ / অ / ৩১১11649 / ২২২7777 আরও সঠিক।
ব্লেজারব্লেড

2

এই পদগুলি গণনা তত্ত্ব থেকে এসেছে, সুতরাং এগুলি সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের প্রসঙ্গে তুলনামূলক তত্ত্বের প্রসঙ্গে বেশি অর্থবহ

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

boolean some_function(string argument){...}

আমরা এই ফাংশনটিকে সম্পূর্ণ কল বলি যদি এটি ভাষাটির সদস্য যে প্রতিটি যুক্তির জন্য সত্য হয়। আমরা এটি শব্দ বলি যদি এটি ভাষাটির সদস্য নয় এমন প্রতিটি যুক্তির জন্য মিথ্যা করে।

অন্য কথায়, এটি সম্পূর্ণরূপে যদি আমরা এটি সত্য হিসাবে প্রত্যাবর্তন করতে চাই এবং সর্বদা সত্য ফিরে আসে, এবং যখন আমরা এটি মিথ্যা প্রত্যাবর্তন করতে চাই তখন তা সর্বদা মিথ্যা হয়।

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

এটি আমার মতামত যে এই শর্তাদি সিদ্ধান্ত সমস্যার ডোমেনের বাইরে সাধারণীকরণ করে না, তাই কোনও সাধারণ ক্রিয়াকলাপটি নিয়ে আলোচনা করার সময় তাদের মধ্যে পার্থক্যটি আসলেই অর্থবহ নয়।


-2

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

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

এখানে চিত্র বর্ণনা লিখুন

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