검색어 입력폼

binomial과 uniform을 사용한 프로그램

등록일 2005.06.18 한글파일한컴오피스 (hwp) | 18페이지 | 가격 3,000원

소개글

확률과 정론시간에 한 프로그램으로서
binomial과 uniform을 비교하는 프로그램을
수학적으로 그리고 시뮬레이션을 사용한 방법으로
버퍼를 사용했을 때의 효과를 적용한 프로그램입니다.
모두 각각 3개의 프로그램 소스와 discussion그리고
결과 화면을 첨가했습니다. 총 18페이지입니다.

컴파일 실행환경

비쥬얼 C

본문내용

이번 레포트는 우리가 실제 사용되는 사용자(통화를 원하는 사람)와 그리고 사용가능한 선로, 그 리고 선로부족으로 인하여 통화를 미쳐 못하게 되는 경우를 직접 프로그램화 하는 것으로서, 이때 발생하는 discarded_rate가 효율적인 값(1%미만)이 되게 우리가 그때의 선로의 수(Multiplexer)와 그에 따른 discarded_rate값을 구하는 프로그램이다. 위에서 구현한 프로그램은 활성화된 총 패킷 수(generated), 와 거부된 패킷의 수를 이용하여 discard_rate값을 구해주었는데, 이 과정을 수학적으로 유도해가면서 코딩하였다. 여기서 활용한 아이디어는 활성화된 패킷의 경우의 수를 0에서부터 48사이의 값을 준 다음에 각 경우마다 활성화된 패킷에 활성화된 패킷의 수를 곱해주고, discartded된 합도 같은 방법에 의해서 계산한다.

3번째 프로그램은 Uniform한 경우와 Binomial한 경우를 비교하기 위한 목적으로 만든 프로그램으로서 2번째에 버퍼를 사용한 프로그램과는 약간 차별을 두었다. 이 프로그램에서 버퍼는 포함시키지 않았으며, Uniform한 경우와 Binomial한 경우만을 비교하기 위해서 binor[i] = bino(n,p), uniform[i] = rand()%49 를 포함시켰다. 이 두가지 경우는 Uniform과 Binomial한 패킷값을 받는 방법의 차이를 두고 있는데, 우선 bino()함수에서는 중앙값에 많은 수의 패킷이 몰리는 경향을 띄는 반면에 rand()에서는 0~48까지의 패킷값을 고르게 받는다는 특징이 있다. 이 두 경우를 비교함으로서 우리는 binomial한 값이 얼마나 discarded값을 줄일 수 있으며, 서로 같은 확률일때 활성화 시킬수 있는 최소한의 패킷수가 binomial할 때 월등히 많은 수의 패킷을 처리 해줄 수 있다는 것에서 binomial이 uniform한 경우보다도 패킷의 효율성면에서 우수하다고 할 수 있겠다.


#include <stdio.h>
#include <math.h> // pow()함수를 사용하기 위한 헤더

#define SUCCESS 1
#define FAILURE 0
#define BUFFER 10000
#define B_BUF 10000
#define A 16807.0 // 랜덤한 수를 입력시켜주는 수
#define M 2147483647.0

double bino(int,double); // binomial function
double rnd(); // 난수 발생기, 랜덤한값 발생

static double r_seed = 1.0;
int binor[BUFFER]; // bino에서 발생한 random한 값을 배열에 저장
int uniform[B_BUF]; // rand()에서 방생한 값을 배열에 저장
int paket[49]; // 0~48값에 대응되는 count값을 저장하기 위한 배열

void main() {
int i,mux,a,cnt,k;
int n = 48;
double discard_rate, p, buf;
double generated=0, discarded=0; //총 발생한 패킷의 양과 총 발생한 discarded값을 저장하는 변수

for(p=0.1; p<=0.9; p+=0.1) { // probability가 0.1 ~ 0.9일때
buf=0, discard_rate= 0;
generated=0, discarded=0;
printf("***Probability is %.1f일때***\n",p);

for(i=0; i<10000; i++) // 10000번을 <font color=aaaaff>..</font>
다운로드 맨위로