Upload
lamthuy
View
324
Download
17
Embed Size (px)
Citation preview
..
AnyLogic 6
2012
2
- .
: .. AnyLogic 6. / ... . 2-, . . : , 2012. - , AnyLogic 6.7. , .
, . AnyLogic.
, 2012 .., 2012
3
. 5 5 1. AnyLogic 6
1.1. 61.2. 121.3. 16
2. Balls 172.1. 172.2. 192.3. 202.4. 22
3. 243.1. 243.2. 253.3. 253.4. 293.5. 333.6. 323.7. 36
4. - 374.1. 384.2. 384.3. 384.4. 43
5 6. : 455.1. 455.2. 465.3. 495.4. 505.5. 525.6. 54
7. 567.1. 567.2. 577.3. 577.4. 577.5. 587.6. 59
8. 608.1. 608.2. 618.3. 638.4. 64
9. 669.1. 669.2. 669.3. 67
4
9.4. 679.5. 719.6. 72
10 11. : 7410.1. 7410.2. 7510.3. 7710.4. 7810.5. 79
12. . 8712.1. 8712.2. 8812.3. 92
15 16. 9415.1. 9415.2. 9515.3. 109
110- 110
5
. , .
AnyLogic, - .
6, , , , . , , 5 6 AnyLogic, .
AnyLogic -. . AnyLogic , , , , .
, . 10% , , .
AnyLogic .
, . AnyLogic 5, AnyLogic 6, XJ Technologies. .
1
ANYLOGIC
AnyLogic Balls, , , AnyLogic.
.
: , , : Java, Pascal Basic,
Windows, .
AnyLogic 6, Balls, - .
1.1.
AnyLogic, . , , AnyLogic, - XJ Technologies ( ) .
, ("X") .
/ Balls. . - . 1.1.
AnyLogic : , , , . 1.1
6
7
. .
. , : ; ..
AnyLogic.
, .
- , - (*).
+ -.
, .
:
. . , . , .
, .
.
(), , :
, , .
: , , .
, .
-, .
, , .
: , , .
.
:
http://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/statecharts/Statecharts.html
, , , , , . .
.
. , , , , .., . .
, AnyLogic. / .
8
. 1.1
AnyLogic , . . - , .
AnyLogic. , ,
. , . Balls : Ball Root. (. 1.2) Ball , , Root .
Simulation, , . . AnyLogic , . AnyLogic :
"" -
: "", -, , AnyLogic Professional.
. 1.2
1.1.1.
Ball, ( , Vx V), (g, r, k, x0 y0) statechart (. 1.3).
AnyLogic .
. 1.3
, Vx x ,
9
http://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/config/Creating%20an%20Experiment.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/variation/Parameter%20Variation.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/optimization/Optimization.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/experiments/Compare%20Runs%20Experiment.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/experiments/Monte%20Carlo%20Experiment.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/experiments/Sensitivity%20Analysis%20Experiment.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/experiments/Calibration%20Experiment.htmlhttp://127.0.0.1:4591/help/topic/com.xj.anylogic.help/html/experiments/Custom_Experiment.html
Vx x. , , . , .
Root Root. (. 1.1) Root ball Ball .
1.1.2.
. - . (. 1.4) .
. 1.4
, g Ball 4 : , , . : (double), (9.81) , Ball.
1.1.3.
, . 1.3, , Movement . , :
(. 1.5). , k, . .
, . . , , , .
. 1.5
1.1.4.
, , . Balls Root .
, . . . , , , , . ., . - , . . 1.6
11 . 1.6 , Y
r , , r ball Ball. , , , .
Root. , , . , . .
, Y y 500 . , Y , , Y .
, Balls .
1.2.
. .
1.2.1.
.
AnyLogic
. , .
. 1.7
, . 1.7., Main.
, , , . 1.8. , .
12
, . 1.8:
( , . ).
. 1.8
1.2.2.
. 1.8. "" "" . , , . .
13
, .
1.2.3.
AnyLogic , .
, . , .
, , . , , , .
/ , , . ( 1 ).
, .
1.2.4.
:
.
.
.
( : )
. .
.
/ . , .
1.2.5.
14
,
, .1.9. . , .
. 1.9
Ball, Y Vy. AnyLogic , . . . - , . 1.10.
. , , .
. 1.10
, .
15
16
1.3.
1. ? 2. balls? 3. balls . 4. balls ? 5. ? 6. ? 7. ? 8. ? 9. ? 10. ? 11. ? 12. ? 13. AnyLogic? 14. AnyLogic? 15. ? 16. ? 17. balls ?
2
BALLS
AnyLogic Balls, , ().
.
: , , . Java
Windows, AnyLogic.
AnyLogic 6, Balls, - .
Balls, AnyLogic.
2.1.
, , . , .
t0, . Ball, () . t0, -1 (. 2.1). t0 , "" . ,
17
(. 2.2), : t0 = time();
time() .
. 2.1
t0 -1, . ( 0.3 .), Root, (), (. 2.3):
time()
19
Root .
2.2.
.
ball1 (. 2.4). , Ball.
. 2.3
. 2.4
0 0 200 300 .
,
. ( ) ball. Ball1. , Bll.x, Ball. Bll.t0 Bll1.x, Ball1. Bll1.t0 (. 2.5). X Y Ball1.r Ball.r.
. 2.5
.
.
2.3.
,
Vx Vy.
. , x 0. x, .
Ball, Vx 0 uniform(-100, 100).
20
Ball (-100, +100) . Vy.
21
0
, :
,
. , 500500 . Ball :
, Vy .
.
, , . ement, . 2.6.
,
Mov
. 2.6
= 500 - r && vx > 0
Vx
vx = -(1 - k) * vx;
. , .
, :
, , . 2.7:
t0 = time();
.
. 2.7
, . (5+)
. (5)
., . (5)
,
. (4)
, . (4)
,
2.4.
1.
2. , , 3. , 0,5 4. , , Y. (5) 5. , - , 0,5 . (5) 6. , 20%. (4) 7. , 1 , 2 8. , , 9. , , - , . (4) 10. , . (4) 11. , - , . (4) 12. , . (4) 13. ,
22
23
. (3)
,
, 1 . (3)
. (4) 14. 15. , , . (3) 16. . (3) 17. 18. . (3)
3
. . .
.
: , , , , , ,
Java, AnyLogic.
- 2, AnyLogic,
AnyLogic 6, - .
3.1.
, , . :
;)(3
bxx
dtdx
= ,0xxdtdb
=
: , 0 , b , eps.
b eps, b.
24
3.2.
AnyLogic. , / .
, / / .
: _:\_\, heart . . heart .
. . , . Main, Simulation. .
. Main, . , Heart ( Main). Heart Main. .
AnyLogic Java , Java. , .
3.3.
b, 0 eps, 0 - . b .
:
dx/dt = ( 3 - b)/eps
, 0. AnyLogic . , .
, Heart. stock. Heart .
25
stock (. 3.2) .
0, , . . 3.2, dx/dt = :
(x - *x*x - b) /eps
AnyLogic 6.6 , . , , . . 3.1. . 3.1
. .
b db/dt = 0. . b 0. b 0 : , .
. 3.2 26
. , . : . .
( F7. , Java. . (. 3.3): , 0 eps.
. 3.3
[] . - , . , , , . , , , , , , .
. 0 = 0.5, eps = 0.01. Heart. 0, 0.5. . eps 0.01 . : . - . 3.4.
27
, .
. 3.4
. 3.5
6.6 AnyLogic , , ,
28
, : , . .3.5.
, b, db/dt = 0. , , . 3.6. . 3.6
, , .
3.4.
, - . , : (. 3.7). b .
. 3.7
. 3.8
, , . , Simulation, . 3.8.
, Simulation, . 3.9.
29
, .
. 3.9
3.5.
AnyLogic , , . : .
1, , , . , "", , AnyLogic .
, , . 3.10.
AnyLogic, , . , MS Excel.
. 3.10
b b . , . .
30
http://127.0.0.1:2154/help/topic/com.xj.anylogic.help/html/data/Viewing.html?resultof=%22%d0%be%d0%ba%d0%bd%d0%be%22%20%22%d0%be%d0%ba%d0%bd%22%20%22%d0%b8%d0%bd%d1%81%d0%bf%d0%b5%d0%ba%d1%82%d0%b0%22%20%22%d0%b8%d0%bd%d1%81%d0%bf%d0%b5%d0%ba%d1%82%22%20#inspect#inspecthttp://127.0.0.1:2154/help/topic/com.xj.anylogic.help/html/data/Viewing.html?resultof=%22%d0%be%d0%ba%d0%bd%d0%be%22%20%22%d0%be%d0%ba%d0%bd%22%20%22%d0%b8%d0%bd%d1%81%d0%bf%d0%b5%d0%ba%d1%82%d0%b0%22%20%22%d0%b8%d0%bd%d1%81%d0%bf%d0%b5%d0%ba%d1%82%22%20#chart#chart
. 3.11
. , , . X , Y b. . , . 3.11.
. 3.12
x b, . 10, .3.13.
AnyLogic . , , , , , . .
, .
31
, , . 3.12.
. 3.13
3.6.
, AnyLogic , . , - , , , .
Heart. .
3.6.1.
, . . - . . oval, Y , , X Y , .
32
3.6.2.
, , , . AnyLogic : : . (, , . .) . . , . , .
, . : , - ; 2.
, . 3.14.
. 3.14
. (0 eps) , .
33
3.6.3.
AnyLogic , .
, .
Heart . x0, , , 0 1. , . 3.15. .
eps, 0,01 0,5.
. 3.15
3.6.4.
Heart . . , Century Gothic, , 22. (, Y) (20, 10).
34
http://127.0.0.1:2154/help/topic/com.xj.anylogic.help/html/presentation/Text.html
, , : . : dx/dt=(x-^3-b)/s db/dt=-0. . 0 = 0.6 . , . , .
, . , , , .
. 3.16
, . 3.16, , . , / .
, , . 35
36
. .
3.7.
1. , , . (5+)
2. . (5) 3. . (5) 4. , , , Y
X. (5) 5. ? (4) 6. ? (4) 7. ? (4) 8. ? (4) 9. ? (4) 10.
? (4) 11. ? (4) 12. ? (4) 13. ? (3) 14. ,
? (3) 15. , ? (3) 16. ? (3) 17. Java? (3) 18. ? (3)
37
4
-
:
. . . ; .
.
: , , , , , ,
Java, AnyLogic.
- 3, AnyLogic,
AnyLogic 6, - .
- AnyLogic.
-, . , , , , . , . , , .
4.1.
- (""). "" 10 .
, - . : , .
4.2.
, . . 4.1 , 258 .
. 4.1
4.3.
"", , . , : "", 10 , , , , .
DCounter. Model. , .
4.3.2.
. . . , , .
, . .
4.3.1.
Gen. DCounter / . Gen.
38
http://127.0.0.1:2810/help/topic/com.xj.anylogic.help/html/interaction/Ports.htmlhttp://127.0.0.1:2810/help/topic/com.xj.anylogic.help/html/interaction/Connector.html
Gen . ,
Gen. , . , , . - , 1/frequency. frequency , . Gen frequency 2.
4.3.1.1.
, Gen , , . 4.1. Gen , 80 , 100. , , 1.
. 4.2
( : ). , , . , . . 4.2.
39
(Gen) (Model) , . , , . 4.2. .
, . . , -, . Gen, tick, . 4.3.
. 4.3
Gen - .
4.3.1.2.
1/frequency tick. event, frequency. - Object tick. :
tick.send ( new Object( ) );
4.3.2.
Counter. - . n, , : tick overflow. n Counter = 0.
4.3.2.1.
. Counter 60100. . . ( ) 0 , , . : SansSerif, 72, . n, . , . 4.4.
40
. 4.4
4.3.2.2.
: tick overflow Counter, . 4.4.
, tick, n 10 overflow , . , n 1 , tick, , n 9. n 0, overflow . tick (. 4.5). . 4.5
overflow, , , tick.
41
4.3.3.
Model Gen Counter, .
42
,
1. .
3. .
. 4.7
4.3.3.1.
, ,
, Model (
Gen), Counter. , . 4.6.
. 4.6
. - , .
2. , ( ). ,
. -
(.
4.7).
.
. 4.8. .
. 4.8
4.4.
1. , . (5+)
2. , , . (5+)
3. , . (5+)
4. , , - . (5)
5. , , . (5)
6. , , . (5)
7. , = 0 , . (5)
8. , , . (5)
9. 16- , . (5) 10. , -
, . (4) 11. ,
. (4) 12. , . (4)
43
44
13. , . (4)
14. , . (4)
15. - , . (3) 16. , AnyLogic. (3) 17. , AnyLogic ? (3) 18. . (3) 19. , . (3)
45
5 6
:
:
; , ; ; ;
.
: , , , , Java, AnyLogic.
- 4, AnyLogic, .
AnyLogic 6, - .
, .
5.1.
, , : (), ( ), (), () ( ).
. .
5.2.
Svetofor Model.
, , Model . Model
_, , AnyLogic , . . 5.1.
. 5.1
, , .
, , . 5.2.
. 5.2
1. , 2. ( , ), 3. , 4. , 5. , ""
.
, , , , , . - , . . - . , , , .
(. 5.3). ( ), ( ), ( ), stop ( ) ( ).
: ( ), (- ). , ( ) .
46
, . 5.3.
. , . . , .
1. 10 ,
47
2. 7 ,
3. 4 ,
4. 10
5. 4 .
1 .
, t1, , 10 (. 5.4).
. 5.3
.
. . 5.4
:
. 1 .
. , .
, . . Model. : , ,
48
. 5.5
1.
2.
3. ,
t
e4.
5.
. , ,
, : , (. 5.5).
: false.
, . , , stop ,
.
.
=true;, = false; (. 5.6). ,
, .
. 5.6
, . . rue, fals . stop , true , false .
.
49
5.3.
( ),
:
? red: gray
,
? yellow: gray
, .
.
, (. 5.7). , . , - . , 45 ( ).
, red (), gray (). Java:
:
? green: gray
red, yellow, green gray
. 5.7
50
.4.
, , : (), ( )
.
: . _ t12
. fireEvent( ),
5
, .
(). , . Model, _, (. 5.8).
,
_. 3 _ . , , . _, t12 , . 5.8.
_. , , , .
. 5.8
, , , stop. , , . , .
, _ t5 stop. , _ t6 , _ t11 , . 5.9.
AnyLogic
, . , , :
.fireEvent()
51
, t5 _
t11 _ :
_.firvnt("")
:
_.fireEvent(""),
. 5.9
52
, , , .
, _ t12 , String, "", . 5.9.
, _ t6 , String, "".
, . .
, . , , . .
5.5.
, .
, , . Model , . 5.10 : .
. 5.10
5.9
.
,
.
, . : = true.
, , Model c false. , . false
53
, .
,
, , .
.
.
. ,
.
_ : =false.
,
.
, , . , _ 5.11.
10 , , .
, . 10 , . T , , ..
(. . false),
.
. 5.11
54
5.6.
1. ,
5 1 . (5+) 2. ,
, . (5+)
3. , ( ),
5. ,
, 6.
. (5) 4. ,
, . (5) . (5)
, . (5)
7. , (4)
8. , , . (4)
9. , 5 ( ), . 0 . ( ),
10. , 3- , . ; , . (4)
11. , . (3)
12. ), . (3)
, ,
. (3)
_1 _2 ? (3) 15. , ,
16.
, ( ), ..
: ( + ) .
, ,
: . 5 . 3 60 . (4)
:
(
13.
14.
, 15 . (3) ? (3)
17. , ,
55
19. , . (3)
, 10 . (3)
18. - ? (3)
7
, , ;
.
.
, AnyLogic.
AnyLogic, , .
AnyLogic 6, - .
l
g
(x, y)
. : , , , , , .
7.1.
l. .
. 7.1
56
7.2.
:
1, ;
; : mg,
, ; , mg
;
7.3.
.
=dtd ; ;)sin( 2 =
lg
dtd
);sin(= lx )cos(= ly
- , -
, - ( , - ).
0)0(;0)0(
==
7.4.
. alpha omega l, mu g, alpha, alpha0. , , . 7.1.
. 7.2
57
: , , alpha omega. , alpha omega ,
. 7.3. omega 0. l, mu, g alpha0 .
2)sin( =l
gdtd ,
*2 ( ), .. , . ,
: =l
gdtd )sin(
.
7.5.
. . , , (0,0), . , .
. 7.3
, , , X Y 0,
58
59
dX dY , .7.2. , (0, 0) (x, y). .
: .
: , editBox, l mu, .
alpha omega , alpha omega.
. 7.3 .
7.6.
1. , . (5++)
2. , . (5+) 3. ,
, . (5+) 4. ,
. (5+) 5. ,
. (5) 6. , . (5)? 7. ,
. (5) 8. ,
(), . . (5)
9. , , 2 . (5)
10. , . (5)
11. , . (4)
12. , , . (4)
13. , . (4)
14. , . (3) 15. ,
, . (3) 16. ,
, . (3) 17. ? (3) 18. , ,
? (3)
8
;
.
.
, , AnyLogic.
7. AnyLogic, .
AnyLogic 6, - .
, ( ), ( ).
8.1.
. , (. . 8.1) , .. . , ( L+l) ( l), :
.
=dtd ; ;)sin( 2
+
=lL
gdtd );sin()( += lLx )cos()( += lLy
60
.
=dtd ; ;)sin( 2 =
lg
dtd
61
);sin()sin( PinLlx +=
)cos()cos( PinLly += , :
- , - , - , .
: 0)0(
;0)0(==
8.2.
, , , . , , , . . 8.1
Pin
L
g
(x, y)
l
: , , alpha omega, : L, l, mu, alphaPin, g alpha0. . 8.1. , alpha0 .
, .8.2, . ( _), ( _) . , , , omega .
. 8.2
, , , . 0. , ( >0) Pin , -(2 - Pin). _ _:
alpha >= alphaPin && omega>0 || alpha 0
, , :
V = V_
62
omega* *(L+l) l = omega_
omega = omega_*(L+l)/l
omega_ =omega*l/(L+l),
: V V_ , ;
omega omega_ , .
- , . 8.3.
. 8.3
, omega . isStateActive( ). , .isStateActive(_) true. , false. omega d(omega)/dt= :
.isStateActive(_) ? -g*sin(alpha)/l - mu*omega*abs(omega) : -g*sin(alpha)/(L+l) - mu*omega*abs(omega)
_, omega
;)sin( 2 =l
gdtd .)sin( 2
+
=lL
gdtd
. alpha .
8.3.
, . (, Y) , , :
: L * sin(alphaPin) Y: L * cos(alphaPin)
. L, l.
L . L ( l) , , .
( ) . , , .. . :
)sin(: LX , )cos(: LY .
, , , .. , :
)sin(: LX , )cos(: LY
, . , , isStateActive( ).
L : L*sin(.isStateActive(_)? alpha: alphaPin) Y.
l , .. x y, X Y . , dx: L x, x X, ..:
x - L*sin(.isStateActive(_)? alpha: alphaPin)
dy:
, . 8.4, 63
.
. 8.4
8.4.
1. , 1 (). . (5+)
2. , , , . (5+)
3. , . , . (5+)
4. , , , , , . (5)
5. , alphaPin < 0. (5)
6. , . (5)
7. , 2-
64
65
, . . . (5) 8. ,
, , . (4) 9. , ,
. . (4)
10. , . (4)
11. , . (4)
12. , , . (4)
13. , . (4)
14. , , . (3)
15. , 20%. (3)
16. . (3)
17. ? (3) 18. , ?
(3)
66
9
; ; .
.
, : , , ,
AnyLogic.
AnyLogic.
AnyLogic 6, - .
.
9.1.
(/) 1 100 /. , .
9.2.
:
1 , ;
; : mg
, .
9.3.
.
: y Y, Vx Vy (. . 9.1). :
Vxdtdx
= ; Vydtdy
=
:
2VxKdt
dVx= ; 2VyKg
dtdVy
= , K ,
g = 9,81 .
:
x = 0, y = 0;
Vx = V0 * cos(), Vy = V0 * sin().
V
Vx
Vy
. 9.1
9.4.
, , . , , . , , . . .
, , . . . :
67
1. . 2. . 3. (,
). 4. (, ). 5. . 6. . 7. .
9.4.1.
68
Polet ( ).
. 4 , Y, Vx Vy. 4 , , . 9.2. . 9.2
, , .9.3.
: d(vy)/dt = -g K*Vy2, Vy K*Vy2 , , .. , . , :
d(vy)/dt = -g K*Vy*|Vy|.
Vx.
, , g, K, V0 . 4 , g, k, v0, a : 9,81; 0,01; 100; 1 .
. 9.3
. , : .
X x, Y y , . 9.4.
. 9.4
, , . 9.5.
, , . , .
. 9.5
69
D , , : x . , .
, . 13.6.
y < 0, .. . , D , D = x. . , , , . . finishSimulation(), . . 9.6
, .
9.4.2.
, | . . , , Optimum. .
. , . , D. root, root.D.
= 500, , . , , ( ).
, .. , . : , 0 1800, a 0, 3.1415, 1, . 9.7. , , . .
70
9.5.
, . 9.8. , . X , Y - , , .
. 9.7
, , . : , , . . 9.8
71
72
, .
. , copy , .
.
9.6.
1. , , , , , 15 /. (5+)
2. , 10 /. (5)
3. , 10 /. (5)
4. , : h < hmax/10, = 0,02; h >= hmax/10, = 0,01. (hmax , ). (5)
5. , , , = 0,01. (5)
6. , , . (5)
7. , : = 0, = 0,5. (5)
8. , . (5)
9. , , . (5)
10. , , 10 . (5)
11. , , . (5)
12. , , . . (5)
13. , , , .. . (5)
14. , , , ..
73
. . (5) 15. ,
, , 1 . , 15 . . (5)
16. , : = 0, = 0,1. (4)
17. , : = 0,1 = 0. (4)
74
10 11
:
; ;
.
, : , - , Java, AnyLogic.
AnyLogic; AnyLogic.
AnyLogic 6, , - .
, : , . , . . . . , ; . . . .
10.1.
. , , . 10.1
. . . , . , , , . , , vr , , , . 10.1.
75
. 10.1
vx X
Y
vy v
v1
v2
vn1
vr1
vn2
vr2
10.2.
: , .
10.2.1.
, Ball, , .
: r , max Ymax , , V , g .
: y Y, vx vy (. . 10.1). :
Vxdtdx
= ; Vydtdy
= ; gdt
dVy= .
vx , .. .
, Ball color Color, (, ), ( 0 255).
, , , - : new Color(255, 127, 255).
, uniform_discr(255), , 0 255:
new Color(uniform_discr(255), uniform_discr(255), uniform_discr(255)).
color new Color .
Ball , . , , . 10.2.
. 10.2
V , , .
10.2.2.
( g=0) vx vy, , :
, , .
76
, . , .
, r . , , .
checkHit(), , , null, . , vx vy . 10.1., bounceBall.
10.2.3.
, , Ball, 10. (max, Ymax, g, r) Ball , .
, Main checkHit() Ball, , , : return b1.
, : return null;
checkHit() bounceBall, this . this . Ball checkHit(), , Main.
10.3.
: r , y color.
Ball , , , , Main 10 r . , () , .
10.3.1.
, r .
77
r, , .. , .
Main, r, Main. balls r, . 10.3. r, Main r, Ball . , r , r - , r .
. 10.3
, r ( Main). g .
10.4.
( balls) , , :
if( balls.size() > 0 ) remove_balls( balls.random() )
, , size(), , remove_balls(), , balls.random().
, 3 get(), ( 0). , , 3 :
remove_balls( balls.get(3)).
( balls ll), , :
78
79
add_balls(), .
:
add_activeObjectName(parameter1, parameter2, ...) , activeObjectName ( balls), , . 10.3.
. .
, Main, Main (, ..).
, Main get_Main(). , , "":
get_Main().add_balls()
: () :
get_Main().remove_balls( this ) , this .
10.5.
.
10.5.1.
1. , , checkHit(), , , r. , , .
2. , , , 2 ( ). , . 3. ( , ) getIndex().
80
1. :
1. 2 , . 2. N . N
0 10. 3. , ,
N. 4. . (5)
2. :
1. 3- : , .
2. : 10%, 10% .
a. , 2 . 1- ( RGB : 150, 150, 0). 2- ( RGB : 10, 10, 10).
b. 1- , : = 150 15 + 1 = 136. = 150 15 + 1 = 136. = 0 0 + 1 = 1.
c. 2- , : = 10 1 + 15 = 24. = 10 1 + 15 = 24. = 10 1 + 0 = 9.
3. , R, G, B. (5)
3. :
1. 2 : (r = 15) (r = 5). , (15 5 ), . .
- =20 0
2. . .
81
-
=16 1
3. . (5)
4. :
1. r : , , 2 , .
2. 40 , . 3. 2,5 2
(r = 15 ). 4. ,
. . (5)
5. :
1. 3- : , .
2. :
a. . b. , = 0,
= 255, , 255 . c. ,
= 0 , , 255, = 0.
d. , 2 . 1- ( RGB : 255, 0, 255). 2- ( RGB : 0, 255, 255).
e. , : = 255. = 255. = 0. .
3. , 2 , .. , .
4. , . 5. ,
R, G, B. (5)
82
6. :
1. 2 , . 2. , . 3.
. 4.
. 5. . 6.
. (5)
7. :
1. 2 , . 2.
0,3. 3. 3
0,1. 4. ,
. (4)
8. :
1. :
a. RGB- N . 255 , .
b. RGB- N . 0 , .
2. , N 10 50. 3. , . 4. , ,
. 5. .
, R, G, B. (4)
9. :
1. : a. RGB N . b. RGB .
2. . , 0,5 2 . , .
3. . , R, G, B. (4)
83
10. :
1. , , .
2. ( ) .
3. ( ) , RGB- .
4. . , R, G, B. (4)
11. :
1. 2 - . , .
2. 15 ( 5 50 ). . .
3. 0.3 ( , ).
4. 0.1. (4)
12. :
1. . .
- =20 0
2. . 10 ( 5 50 ) 3 .
3. . (4)
13. :
1. r : , , 50%, 50%.
2. 40 , . 3. 4 2 ,
84
15, . 4. ,
R, G, B. (4)
14. , (.. ), , . . 0.3. . (4)
15. :
1. 2 . 0,3.
2. , 2 . = 0. . .
3. , . (4)
16. :
1. 2 . , .
2. 15 . . .
3. 0.5. , . .
4. . (4)
17. :
1. 3- : , .
2. , .
3. .
4. , . (4)
18. :
1. , , , .
2. , , .
3. , ( ,
85
). (4)
19. :
1. , , , . .
2. . = 15 . 5 60 .
3. , . (4)
20. :
1. 2 , . 2. ( 4
40 ). 3. , RGB-
. 4. ,
. 5. .
.(4)
21. :
1. (N), , , . - .
2. , N 1 10. 3. . 4. ,
. (4)
22. :
1. r : , 2 , .
2. 60 , (). 3. 1,5 2
. (4)
23. :
1. 3- : , .
2.
86
. 3. ,
. 4. ,
. (4)
24. :
1. 2 - . , 0,2.
2. , 2 . = 0. .
3. ( ), . . (4)
25. , .
1. . 2. .
. 3. . (4)
26. , , 2 , . . (3)
27. , , 80 , . . (3)
87
12
.
;
.
, : , , , Java, AnyLogic.
AnyLogic; AnyLogic.
AnyLogic 6, - .
, , . , ( , , , , , , ..), , , , . .
12.1.
, . , , ; ; .. , , .
, . , .
88
, " ", , . , , , .
" " , .
12.2.
. 9000. , .
12.2.1. PERSON
Person, . , . . X Y: 0 0, : 3 3, .
: color.
, color Color :
randomTrue( 0.5 ) ? Color.blue : Color.green
, color, 50%, , .
, , . , Person boolean. Main.
12.2.2. MAIN
Main, people, environment ( ), . 12.1.
people , environment , Person. .
environment, , . , 2D, , ,
. , , 8 , , , 4 .
, , , 0,7.
, . 12.2. 500 650, .
402 402,
48 X Y, blanchedAlmond. ,
,
(
) 50 X Y.
. 12.1
, 0 1. , 1% . : :
= limitMin( 0, - 0.01 );
setControlValueToDefault( slider );
+ :
= limitMax( + 0.01, 1 );
limitMin - 0.01, 0, limitMax + 0.01, 1.
setControlValueToDefault .
89
90
: :, , . : :
format( * 100) + "%" - .
, , Simulation 500 650, . .
12.2.3.
, , . Person . :
int = 0; Agent[] = getNeighbors(); // - if( == null ) { = true; // - return;} // for( Agent a : ) // if(((Person)a).color == color)// ++; // -
//, / : = ( >= get_Main(). * .length);
:
if(! && randomTrue(0.3))// , . 0,3 jumpToRandomEmptyCell(); //
.
12.2.4.
. :
, , , , .
people . - . :
: people_ : - : item.
(.. ,
) item.
, .. true.
, : , . , , people_().
people_ .
. 12.2
. . :
91
92
: : people.people_()
. , : , . 12.2.
, .
12.3.
AnyLogic, : , , ..
1. , 1- , - - , 2- , - - . (5)
2. , , , . , . (5)
3. , , . (5)
4. . . (5)
5. . (5)
6. , ( 0 8). (5)
7. , ( 0 8). (5)
8. , ( 0 8). (5)
9. , 3 , , , . (5)
10. , , . (4)
11. , , - . (4)
12. , , . (4)
13. , , - - . (4)
14. , , . (4)
93
15. ? (3) 16.
. (3) 17.
? (3)
94
15-16
- ; ; - .
.
: - , ; AnyLogic.
AnyLogic,
AnyLogic 6.6, - .
. , ( , , ), , .. , , , .
AnyLogic , , - , , , ..
15.1.
, / ( ) - .
, , . , , , , . , AnyLogic.
15.2.
. .
15.2.1.
, , . . , . . .
.
tlanta_shema.
jpg.
, . 15.1.
95
a
. 15.1
,
.
. 15.2
, , . , .
, , . 15.2
, .
, , .., 15.3. , ,
.
. ( ) / , . . 15.3.
. 15.3
( ) / , , . 15.4.
.
,
. . 15.4
, 15.5. __ . , .
. 15.5
96
15.2.2.
. . AnyLogic , .
.
, , , (, , , ..). , , .
. Main :
pedSource pedGoTo pedSink pedConfiguration pedGround.
, 15.6, .
. 15.6
, , , .
.
PedGround , , .. , . - . - , . , . AnyLogic .
PedGround (, ) : group, , .15.7.
PedSource . , . .
97
. 15.7
PedGround, , . (PedGround) PedGround: pedGround, . 15.8.
98 . 15.8
, . . ( , ) (, ). . , .
, . 250/hour(), .. 250 .
, 20 : , .. 20 .
, , , : uniform(0.25,0.35), , / uniform(0.7,1.2), . 15.8. PedGoTo. ( ). , .
, , . , . , , , . __ ( , ) (, ), . 15.9. , , .
. 15.9
PedSink . . .
PedConfiguration , .
99
, , (, , ..), . 15.10.
. 15.10
, . .
15.2.3.
, . , , .
, . , . . 15.11
100
, , _, . 15.11. , , .. . .
.
PedServices PedService , . 15.12.
. 15.12
PedServices (, ). , , , ..).
, PedService.
( ) , ( ).
, , ( , ): _.
: . : . , , . , , . .
: uniform(20.0*second(), 60.0*second()). , 20 60 , . 15.13.
PedService , , , PedServices.
(PedServices) PedServices, , (). PedServices.
101
. 15.13
. , , .
, . PedSelectOutput.
PedSelectOutput . , PedSelectOutput, .
PedSelectOutput , .
PedSelectOutput PedGoTo, , . 15.14. . 15.14
pedSelectOutput: : pedSelectOutput_med; , . (.
1) . (. 2) 93 7, , . 15.15. , 7% .
102
. 15.15
pedGoTo1: : _; (, ): .
, , .
15.2.4.
, , , 1 . 60 .
, Simulation:Main , . . , . , 3600 () .
, , : 01.07.2012 10:00:00 01.07.2012 11:00:00 , .15.16.
. 15.16
103
.
15.2.5.
, . Ped, , , . AnyLogic , , .
Pioner, Ped, division, .
| Java . Pioner Ped () ( ). .
: division / int. toString() . .
Java , . , .
. PedSource Ped Pioner, .15.17.
. 15.17
, Pioner, division ( ), Ped.
104
, . 3 .
PedSource :
if (uniform() < 0.33){ped.division =1; ped.setColor(Color.blue);} else if (uniform() < 0.66){ped.division = 2; ped.setColor(Color.red);} else {ped.division = 3; ped.setColor(Color.green);}
PedSource Pioner (1, 2 3) (, ).
.
15.2.6.
10 , 10:20. , .
PedWait, , PedArea, .
PedArea PedWait , . 15.18.
. 15.18
_, . 15.19.
(, , ) PedArea , : _, : pedGround.
PedWait: : pedWait_med;
105
(PedArea): pedArea; : ( free()).
, , , . , , PedWait freeAll(), OUT.
event:
: ;
(): 01.07.2012 10:05:00;
: 600; :
pedWait_med.freeAll().
, ( ) . . 15.19
15.2.7.
, , , .
, , PedWait , , . .
: _ . , , .
PedArea, pedArea_rasp _.
106 PedWait pedSelectOutput_med
pedGoTo, pedWait_rasp, pedArea_rasp : ( free()).
, , .
3 , . 15.20. . 15.20
1 :
for(Pioner p: pedArea_rasp.peds) {if(p.division==1) pedWait_rasp.free( p ); };
, "" for. () . , pedArea_rasp Pioner division. 1, free() .
, Pioner, - Ped, division, Pioner. - . pedArea_rasp Ped Pioner.
2 3, , .
. PedSelectOutput, pedWait_rasp pedGoTo, PedGoTo. . 15.21.
107. 15.21
pedSelectOutput: : pedSelectOutput_rasp; : ( ); 1: ((Pioner)ped).division == 1; 2: ((Pioner)ped).division == 2; 3: ((Pioner)ped).division == 3.
pedSelectOutput division , , .
3
. 15.22
pedGoTo: : pedGoTo_1.
pedGoTo1:
108 : pedGoTo_2;
109
(, ): ___2.
pedGoTo2: : pedGoTo_3; (, ): ___3.
, , . 15.22. ___2 ___3.
, .
15.3.
1. , 1, 2 3 , . (4)
2. , , , . (4)
3. 3 , . (4)
4. , , . (5)
110
1. : ./ . ... .:, 2004, 440.
2. .. . AnyLogic 5.0. .: -, 2005. 400 .: .
3. .. AnyLogic // . - .: - " ", 2005, N12, . 03-14.
4. .. : . . 10-11 . : , 2005. 144 .
5. AnyLogic / ... : , 2008.
-
1. http://www.xjtek.ru AnyLogic. , , , .
2. http://www.gpss.ru/ - , . 3. http://headwire.narod.ru/ -
, AnyLogic. 4. http://www.exponenta.ru/soft/Others/mvs/mvs.asp -
VMS: , , , .
http://www.xjtek.ru/http://www.gpss.ru/http://headwire.narod.ru/http://www.exponenta.ru/soft/Others/mvs/mvs.asp