PHP, Á¤±ÔºÐÆ÷ ³¼ö »ý¼º, °¡¿ì½º ºÐÆ÷ ·£´ý ¹ß»ý ÇÔ¼ö Normal Distribution |
|
|
 |
14³â Àü |
ÀϹÝÀûÀÎ ³¼ö ¹ß»ý ÇÔ¼ö´Â, ¸ðµç ³¼öµéÀÌ °°Àº È®·ü·Î ³ª¿À´Â ´ÜÀϺÐÆ÷(Uniform Distribution)ÀÇ ³¼ö¸¦ Ãâ·ÂÇÕ´Ï´Ù.
±× ·±µ¥ ¸¸¾à, Áß°£°ªÀÌ °¡Àå ¸¹ÀÌ ³ª¿À°í, ±Ø´ÜÀûÀÎ °ªÀ¸·Î °¥¼ö·Ï Àû°Ô ³ª¿À´Â, Á¾ ¸ð¾çÀÇ Ä¿ºê¸¦ °¡Áø Á¤±ÔºÐÆ÷(Normal Distribution) Áï, °¡¿ì½º ºÐÆ÷(Gaussian Distribution)ÀÇ ·£´ýÇÑ ³¼ö¸¦ »ý¼ºÇÏ·Á¸é ´ÙÀ½ ¿¹Á¦ÀÇ gaussianRandom() À̶ó´Â ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù.
°¡¿ì½Ã¾È ·£´ý »ý¼º ÇÔ¼ö ¿¹Á¦
¼Ò½º ÆÄÀϸí: example.php
<html>
<head>
<title>PHP Example</title>
</head>
<body>
<?php
// Á¤±ÔºÐÆ÷ ³¼ö 30°³ Ãâ·Â
for ($i = 0; $i < 30; $i++) {
echo gaussianRandom(), "<br />\n";
}
// Á¤±ÔºÐÆ÷ÀÇ ³¼ö 1°³ »ý¼ºÇÏ¿© ¹ÝȯÇÏ´Â ÇÔ¼ö
// Æò±Õ = 0, Ç¥ÁØÆíÂ÷ = 1
function gaussianRandom() {
do {
$v1 = 2 * (mt_rand() / mt_getrandmax()) - 1; // -1.0 ~ 1.0 ±îÁöÀÇ °ª
$v2 = 2 * (mt_rand() / mt_getrandmax()) - 1; // -1.0 ~ 1.0 ±îÁöÀÇ °ª
$s = $v1 * $v1 + $v2 * $v2;
} while ($s >= 1 || $s == 0);
$s = sqrt( (-2 * log($s)) / $s );
return $v1 * $s;
}
?>
</body>
</html>
|
|
̵̧ : 344 |
̵̧
¸ñ·Ï
|
|