কোনও এলোমেলো সংখ্যার জেনারেটর কি কখনও একই রকম বীজ প্রদান করে বিভিন্ন আউটপুট উত্পাদন করতে পারে?


10

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


আপনি যে বিষয়ে কথা বলছেন তা হ'ল সিউড-এলোমেলো-নম্বর জেনারেটর, নির্দিষ্ট হওয়া উচিত।
মার্সেল

বেশিরভাগ ভাষা বীজকে নির্দিষ্ট না করেই এলোমেলো সংখ্যা জেনারেটর ইনস্ট্যান্ট করার সম্ভাবনা দেয় যাতে বীজটিও "এলোমেলো" হয়। বীজ ব্যবহার করার একটি কারণ রয়েছে।
নিল

1
@ নীল: এই ক্ষেত্রে এখনও একটি বীজ রয়েছে, এটি কেবল অন্তর্নিহিত, সাধারণত সিস্টেমের সময়।
মাইকেল বর্গওয়ার্ট

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

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

উত্তর:


15

আমি জানতে আগ্রহী যে সেখানে কোনও অ্যালগরিদম বিদ্যমান আছে যেমন ডেটটাইম.নাউ বা হালকা সেন্সর থেকে উত্পন্ন কোনও নম্বর ইত্যাদির জন্য এলোমেলোভাবে অন্যান্য উত্সগুলিতে নির্ভর না করে অভিন্ন ইনপুট প্রদেয় অভিন্ন আউটপুট সরবরাহ করতে সক্ষম if

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

তদ্ব্যতীত, নিয়তিবাদ হয় কম্পিউটার হার্ডওয়্যার সবচেয়ে গুরুত্বপূর্ণ নকশা লক্ষ্য। একই ইনপুট দেওয়া একই আউটপুট উত্পাদন করে না এমন একটি সিপিইউ বেশিরভাগ উদ্দেশ্যে সম্পূর্ণ বেহুদা হবে।


14

না, একটি সিউডো-এলোমেলো সংখ্যা জেনারেশন অ্যালগরিদম সর্বদা একই বীজ প্রদান করে একই আউটপুট উত্পাদন করে (তাই সিউডো- ট্রানডম)।

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

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


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

7

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

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


হ্যাঁ, আপনি কী বলছেন তা আমি বুঝতে পারি। আমি নতুন কিছু বাস্তবায়নের চেষ্টা করছি না, এটি ছিল গভীর রাত কৌতূহল।
কন্ডিশন

1

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

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