4.3. Двумерная модель 2 случайных блужданий

 

      Рассмотрим блуждание пьяного на плоскости, каждый шаг которого равновероятен в любую сторону и направлен под углом в 45 градусов к осям системы координат - х и у. Как далеко он будет от фонаря через n беспорядочных шагов, каково наиболее вероятное расстояние от фонаря после n шагов? Можно промоделировать кривую его движения с помощью генератора случайных чисел. После моделирования большого числа таких опытов можно определить вероятное расстояние от исходной точки.

1.     Будем считать, что фонарь расположен в начале системы координат х, у.

Примем, что первая цифра двузначного случайного числа означает +1 по оси х, если получается нуль или четное число и –1, если число нечетное.

Рис. 6. Блок-схема модели поведения пьяного прохожего.

 

1.     Вторая цифра этого числа соответствует +-1 по оси у аналогичным способом.

2.     Точка (xn, yn) определяет положение пьяного после n шагов.

3.     Расстояние пьяного от фонаря после n шагов определяется выражением dn2=xn2+yn2.

Рассмотрим пример, допустим, первые 5 случайных чисел оказались 36, 35, 68, 90 и 35. Построим табл. 1, предполагая, что пьяница начинает двигаться с координаты (0, 0).

Таблица 1

Шаг

Первая цифра

Вторая цифра

Расположение точки (xn, yn)

1

3

6

(-1, 1)

2

3

5

(-2, 0)

3

6

8

(-1, 1)

4

9

0

(-2, 2)

5

3

5

(-3, 1)

 

То есть, после 5 шагов расстояние от центра будет d5=(x52+y52)1/2=3.16. Перемещения пьяницы для первых пяти шагов показаны на рис. 7.

 

Рис. 7. Траектория случайного блуждания

 

Затем эта оценка усредняется по серии экспериментов. Сравните ее с аналитическим решением dn=a(n)1/2.

То есть, наиболее вероятное расстояние от фонаря после n шагов равно длине шага а, умноженной на (n)1/2. Текст программы, реализующий это моделирование, приведен ниже.

 

5 CLS

10 SCREEN 9

20 X0=320:Y0=175

30 INPUT “ВВЕДИТЕ ЧИСЛО ШАГОВ”;N

35 RANDOMIZE

40 FOR I=1 TO N

50 A=INT(RND(1)*100)

60 X=A\10

70 Y=A MOD 10

80 X1=X0:Y1=Y0

90 IF X MOD 2=0 THEN X0=X0+10 ELSE X0=X0-10

100 IF Y MOD 2=0 THEN Y0=Y0+10 ELSE Y0=Y0-10

110 LINE (X1, Y1)-(X0, Y0), I MOD 15

115 FOR J=1 TO 30000:NEXT

120 NEXT

125 PRINT X0,Y0

127 CIRCLE(X0,Y0),5

130 PRINT”РАССТОЯНИЕ ОТ СТОЛБА”;SQRT(((X0-320)/10)^2+((Y0-175)/10)^2)140 PRINT”ТЕОРЕТИЧЕСКИ ПРЕДСКАЗЫВАЕМОЕ”;SQR(N)