تولید اعداد تصادفی

دانشنامه عمومی

توجه: این صفحه صرفا به صورت عمومی درباره الگوریتم های شبیه ساز تولید اعداد تصادفی یا random number generator algorithms می باشد. اگر نیاز به دانستنی های مرتبط با این موضوع در علوم کامپیوتری دارید، به این صفحه مراجعه نمایید  : Pseudorandom generator .
یک تاس قرمز دستگاه یا تابع یا تولید کننده ای است که یک یا یک سری اعداد را به صورت تصادفی تولید می کند.
در ساده ترین مثال ممکن، با استفاده از تاس یک عدد از بین یک تا شش انتخاب شده و یا یک عدد ده رقمی با کنار هم قرار دادن نتیجه ده پرتاب، تولید می شود. این یک عدد رندوم است. مثلا 2561421121.
می توان به جای تاس از هر وسیله ای دیگری که نمایانگر نوعی عدد باشد ( مانند سکه ) نیز استفاده کرد.
این روش hardware random - number generators ( HRNG ) نام دارد. اعداد تولید شده در این روش تصادفی هستند و به هیچ روش منطقی نمی توان نتیجه را پیش بینی کرد.
در کامپیوتر ها همه محاسبات بر مبنای منطق و صفر و یک می باشد بنابراین یک کامپیوتر توانایی ساخت یک عدد تصادفی حقیقی را ندارد؛ از این رو، کامپیوتر ها از توابع شبیه ساز اعداد تصادفی استفاده می کنند. به این مدل از توابع تصادفی pseudo - random number generators ( PRNG ) گفته میشود. این تولید کننده ها الگوی مشخصی دارند و با استفاده از ترکیب مواردی مختلف اعداد تصادفی را تولید و در کنار همدیگر قرار می دهند.
به دلیل ماهیت اعداد تصادفی ( که از ناآگاهی در مورد عوامل ایجاد کننده آن منشا می گیرد ) ، می توان با دسترسی به پارامتر ها و عوامل موثر در ایجاد یک عدد مشخص، آن عدد را مجددا تولید کرد. با این حال الگوریتم و روش تولید این اعداد و نیز پارامتر های موثر به راحتی قابل تشخیص نیستند.
نمونه ای از توابع شبه تصادفی، تابعی که با استفاده از زمان و تعدادی عملگر، یک دنباله اعداد را تولید می کند و به خروجی می فرستد. اگر دوباره از تابع دنباله ی اعداد تصادفی را بخواهیم، به علت تغییر زمان، خروجی متفاوت خواهد بود. اگر دوباره همان زمان اولیه را با همان الگوریتم به تابع دهیم، هر چند بار که تابع را فراخوانی کنیم، اعداد یکسانی را تولید خواهد کرد.
متد ها و روش های زیادی برای بدست آوردن دنباله ی اعداد تصادفی وجود دارد. هر چند در مورد توابع شبه تصادفی بررسی های فراوانی نمایانگر غیر قابل پیشبینی بودن این اعداد هستند؛ با این وجود از این متد ها در حوزه کریپتوکارنسی استفاده نمیشود. برای این منظور cryptographically secure pseudo - random number generators ( CSPRNG ) تولید شده اند که برای تولید اعداد تصادفی که به عنوان کلید اختصاصی در این حوزه شناخته می شوند، استفاده می شود.
عکس تولید اعداد تصادفی
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلف

پیشنهاد کاربران

بپرس