সংখ্যাযুক্ত রেসিপিগুলির আধুনিক কোন বিকল্প বিদ্যমান? [বন্ধ]


21

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

পুরানো সংস্করণগুলি আজকাল অনলাইনে বিনামূল্যে পাওয়া যায়।

দুর্ভাগ্যক্রমে, আমি মনে করি এটি এখন কেবলমাত্র একটি historicতিহাসিক টোম হিসাবে কার্যকর। "সফ্টওয়্যার ইঞ্জিনিয়ারিং" অনুশীলনগুলি আমার কাছে পুরানো বলে মনে হয়েছে এবং প্রকৃত সামগ্রীটি সাহিত্যের সাথে তাল মিলিয়েছে না।

আধুনিক প্রোগ্রামার পরিবর্তে এর মতো আরও ব্যাপকভাবে এখনও পৌঁছনোযোগ্য রেফারেন্সগুলির দিকে নজর দেওয়া উচিত?


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

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

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

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

3
কোডটি কেমন তা কে যত্ন করে? এটিকে সুন্দরভাবে গুটিয়ে রাখুন এবং কখনও এটিকে দেখুন না।
ডেভিড হেফারনান

উত্তর:


7

সংখ্যাসূচক রেসিপিগুলির ক্ষেত্রে, আমাদের দুটি জিনিস দরকার - আলগোরিদিমগুলি প্রোগ্রামিং বাস্তবায়নে কীভাবে অনুবাদ করে এবং দ্বিতীয়টি, একটি রেফারেন্স বাস্তবায়ন যা বইয়ের জিনিস।

বুক + রেফারেন্স সফ্টওয়্যারটির কোনও সংমিশ্রণ নেই বলে মনে হচ্ছে । তবে কিছু ভাল রেফারেন্স সফটওয়্যার রয়েছে এবং এর মধ্যে কয়েকটি এ জাতীয় অ্যালগরিদমের ভিত্তিতে কাগজগুলির রেফারেন্স সরবরাহ করে।

এখানে কিছু রেফারেন্সের (বেশিরভাগ ওপেন সোর্স) লাইব্রেরির একটি তালিকা রয়েছে যা সহায়তা করতে পারে:

  1. জিএনইউ বৈজ্ঞানিক গ্রন্থাগার
  2. ল্যাপাক এটির একটি ব্যবহারকারী ম্যানুয়াল হিসাবে একটি ভাল বই রয়েছে সেখানে ল্যাপাক ++ এবং অন্যান্য (টিএনটি) প্রাপ্ত / সম্পর্কিত প্যাকেজগুলিও রয়েছে। দেখুন এই আরও তথ্যের জন্য।
  3. লিনিয়ার বীজগণিতকে বুস্ট করুন
  4. সাঁজোয়া জাহাজ
  5. Blas

অন্যান্য নির্দিষ্ট জিনিস হয়

  1. পরিসংখ্যানগত মডেলগুলির জন্য অ্যাফোফেনিয়া
  2. অশ্বশাবক
  3. FFTW
  4. আর প্যাকেজ - এবং একটি বই
  5. OpenCV
  6. ইন্টেল ম্যাথ কার্নেল লাইব্রেরি
  7. জন্য প্যাটার্ন স্বীকৃতি

আপনি " ওপেন সোর্স সরঞ্জামগুলির সাথে ডেটা বিশ্লেষণ "ও পরীক্ষা করে দেখতে পারেন ।

আমি তুলনা একটি বিশাল তালিকা যদিও আমি সবকিছু যাচাই না।
http://www.netlib.org/utk/people/JackDongarra/la-sw.html


4

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

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

এনআরটিকে নথের মতোই ভাবেন: আপনি কখনই সেই বই থেকে কোডটি আপনার প্রকল্পে পেস্ট করতে পারবেন না।


3

ব্যক্তিগতভাবে আমি এটি পছন্দ করি, এটি যে স্তরটি আমি বুঝতে পারি তা সম্পর্কে

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

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

বিকল্প উচ্চ মানের সংখ্যাসূচক libs একটি প্রস্তাবিত সংগ্রহটি http://www.netlib.org/ এ রয়েছে

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