Source (বীজ * 9301 + 49297) এর মূল উত্স% 233280` এলোমেলো অ্যালগরিদম?


9

আপনি যদি বীজযুক্ত (সিউডো) র‌্যান্ডম নম্বর জেনারেটর তৈরির উদাহরণ অনুসন্ধান করেন তবে আপনি এ জাতীয় স্টাফগুলিতে দৌড়াবেন (নির্দিষ্ট উদাহরণ http://indiegamr.com/generate-repeatable-random-numbers-in-js/ ):

// the initial seed
Math.seed = 6;

// in order to work 'Math.seed' must NOT be undefined,
// so in any case, you HAVE to provide a Math.seed
Math.seededRandom = function(max, min) {
    max = max || 1;
    min = min || 0;

    Math.seed = (Math.seed * 9301 + 49297) % 233280;
    var rnd = Math.seed / 233280;

    return min + rnd * (max - min);
}

এই নির্দিষ্ট নম্বরগুলি (9301, 49297, 233280) এবং অ্যালগোরিদম বারবার ব্যবহার করা হয়, তবে কারও কাছে এটির একটি নির্দিষ্ট উল্লেখ নেই বলে মনে হয়। কে এই অ্যালগরিদম আবিষ্কার এবং বিতরণ পরীক্ষা? এখানে কোন কাগজ বা উদ্ধৃত করার মতো কিছু আছে?


5
এটি একটি রৈখিক একত্রিত জেনারেটর তবে মোটামুটি ছোট সময়কালের সাথে (কেবল 233 কে যখন 32 বিট ইন্টিতে 4 বিলিয়ন পিরিয়ড থাকে
রাচেট ফ্রিক

1
লোকেরা প্রায়শই বই থেকে সরাসরি কোড অনুলিপি করে, তাই এটি সম্ভবত কোনও পুরাতন বই থেকে কোথাও এসেছে এবং বেশ কয়েকবার অনুলিপি করা হয়েছে। এটি একটি সীমাবদ্ধ কেস হিসাবেও উপস্থিত হয়। সম্ভবত সহায়ক: heydari.persiangig.com/Ebooks/ প্রয়োগকৃত_ক্রিপটো-
ব্যারিকার্টার

2
মূল যাই হোক না কেন, সেগুলি বীজ গণনার জন্য ব্যবহার করা ভয়ানক মান।

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

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

উত্তর:


7

গুগল বইয়ের তাত্ক্ষণিক অনুসন্ধানে এই সংখ্যাগুলি দেখায় (9301, 49297, 233280) বিভিন্ন সংখ্যায় উল্লেখ করা হয়েছে:

  • FORTRAN 77 এ সংখ্যার রেসিপি
  • সি ++ তে সংখ্যার পদ্ধতিগুলির পরিচিতি
  • সিজিআই বিকাশকারীর রিসোর্স: টিসিএল এবং পিইআরএল ওয়েব প্রোগ্রামিং
  • ইঞ্জিনিয়ার এবং বিজ্ঞানীদের জন্য কার্যকর ফোর্টরান 77
  • জাভাস্ক্রিপ্ট বিকাশ
  • সমস্ত সি
  • সংক্ষেপে জাভা উদাহরণ
  • সেমিনিয়ামিক্যাল অ্যালগোরিদম
  • মেকানিক্স একটি ভূমিকা

জর্জ এলমার ফোরসিথে, মাইকেল এ। ম্যালকম, ক্লিভ বি মোলার (প্রেন্টাইস-হল) রচিত গাণিতিক গণনার জন্য 1977 সালের কম্পিউটার পদ্ধতি হ'ল , যদিও বইটি পাঠ্যটি কোথায় ব্যবহার করা হয়েছে তা গুগল দেখায় নি তাই এটি যাচাই করা যায় না।

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

সংখ্যাসূচক রেসিপি বই সিরিজের অতিশয় জনপ্রিয়, এবং 1986 সাল থেকে মুদ্রণ করা হয়েছে।


1
বাহ, উত্তর যদি এখানে না থাকে তবে আমি জানি না এটি কোথায় হবে। ধন্যবাদ .. // আমি এই সংখ্যাটি বিশেষ কেন এটি নির্দিষ্ট নির্দিষ্ট গবেষণার দিকে নির্দেশ করতে সক্ষম হবার আশাবাদী, তবে এটি যথেষ্ট suff 9301 দুটি প্রাইম (71x131) এর একটি পণ্য, 49297 একটি প্রধান - সহজাত আমি মনে করি এটি প্রাসঙ্গিক হতে হবে। 233280 প্রাইম নয় - এটি 2x2x2x2x2x2x2x3x3x3x3x3x3x5 (বা 2 ^ 6 * 3 ^ 5 * 5) এর
সমান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.