agents that have desires and adaptive behaviors using
play

Agents that Have Desires and Adaptive Behaviors (Using Stochastic - PDF document

Agents that Have Desires and Adaptive Behaviors (Using Stochastic Cellular Automata) December 4, 2002 ` 1 9 T | agent, scaView.cpp AtTraining() 9 P J agent


  1. Agents that Have Desires and Adaptive Behaviors (Using Stochastic Cellular Automata) December 4, 2002 ` � 1 9 � � � � T � � � � � � � � � | � agent, scaView.cpp � � AtTraining() 9 � � P � J � agent � � � � � . D � implement Blumberg � Model[ ? ] � @ � �� � � � | � agent. � �/ I � � stochastic cellular automata(SCA) � implement � update \ / � � � ] P . 9 � � � � � |� agent � � ` � � � � E ] � � � � J E y ` � � � � � T ( ` r � � , E ] � � \ � , � � � � X � O � � } , Q � ` � r � , � � � � � \ � .) D � 9 � � � � � | � agent, � T � ` � � v � � v X = b � � T � � � . Blumberg � model x � A � % , � � b � � component. Internal Varaible(IV) � � � � x / 3 � V , �| q A � ! ` � � growth rate, damping rate � q A � 3 � � � � � � � � � � ( � ; � . Releasing Mechanism(RM) � � � � � � 3 � � k . Level of Interest � � � � x � ` � � � � ` X s � � � ( . Action Selection Module Releasing Mechanism Environment Internal Behavior Variable Motor Controller Level of Intereset 1

  2. Deterministic Cellular automata(DCA) � � � � � Von Neumann [ ? , ? ] � � � . � �� � � � discrete cellular space U, 4 � / ) X, Y, Q, N, � 4 � function Υ, δ , β , Ω, � � : 1. X � input � / ) 2. Y � output � / ) 3. Q � state � / ) 4. N � � � &� n ; � / ) 5. Υ X � � � �� � & 8 = Q → ⊗ N Q 6. δ X � � X � � ` � � � � �� � Q X × ⊗ N Q → Q 7. β X � � output % � � � � Y ⊗ N Q → Y 8. Ω X � J � cellular automata ; � � output � Y � � � ⊗ N Q → ⊗ N ( Q × Y ) Stochastic cellular automata (SCA) � � Y.C. Lee � [ ? ] � � � , � � U, X, Q, N, Υ �� L , � � δ � β � � ^ � , � � � F � G, �. � � SCA, X | �^ b � �� ; � � � , X | Ω �� � �3 F � G � . 1. F: X × ⊗ N Q → , E y x, n, q, � D3 � � ^ � f ( x, n, q ) � ∀ x ∈ X, ∀ n ∈ N, f ( x, n, q ) = 1 q ∈ Q 2. G: ⊗ N Q → Y , E y n, y, � D3 � � ^ � g ( n, y ) � ∀ n ∈ N, g ( n, y ) = 1 y ∈ Y 2

  3. algorithm � 1 2 � l � � 2.1 E y & � � agent � � � � D3 ln1.txt � , E y � � � agent � � � � D 3 vd1.txt � , 3 initialize � ` � , � sample.txt copy 8 n � � � � ln1.txt � , � n y IV � 6 � � � ( E y time � money � T � � , damp � � , � growth � � ) J � � random � � � . Q � E y N g iteration, | ! � ] � � sample.txt copy � vd1.txt, � random � � � IV � 6 � � � . Q � � Blumberg � model � E ln1.txt, vd1.txt � � � � update, � � � | W � ( E y � � � � T � � � � ), T � � | � @ � . Q � � � SCA � ] � � E � � � agent � IV � update, � � W �� g iteration. 2.2 Blumberg’s Life-like Equation TimePay � update 2 P � : TimePay = TimePay + Increase Time IV � �� update, update 2 P � : # B − 1 � IV i ( t + 1) = IV i ( t ) × damp IV i + growthIV i − gain j,IV i × B j j =0 LI � Update 2 P � : LI i ( t + 1) = LI i ( t ) × damp LI i + growth LI i − B i × bRate LI i RM � q A & � RM � � P � X �� , � Update 2 P � : Stimulus t ( t + 1) = Find ( s i ( t + 1) , dMin i , dMax i ) · Filter ( s i ( t + 1)) · Weight ( s i ( t + 1) , Opti ) RM i ( t + 1) = Clamp ( TemporalFilter ( t, rm i ( t )) , Stimulus i ( t + 1) , min i , max i ) 3

  4. B � q A RM, RIV, IV, LI � �X �� , � 2 P � : � B i ( t + 1) = Max [( LI i ( t + 1) · Combine ( RM ki , k � � IV j ( t + 1)) − ig mi · v m ( t + 1)) , 0] j m t � q A B X �� � � � � �X � � � money � � W9 K . 2.3 Stochastic Cellular Automata x i � internal variable(IV) � X E T � � 6 � variable. x i = n ⇒ 3 x i 9 � p � � t 9 random � n � ' � 1. � : x 0 = 5 : x 0 (0) = 1 x 0 (3) = 1 x 0 (12) = 1 x 0 (40) = 1 x 0 (50) = 1 x 1 = 3: x 1 (3) = 1 x 1 (41) = 1 x 1 (52) = 1 x 2 = 1 : x 2 (13) = 1 x 3 = 4 : x 3 (2) = 1 x 3 (40) = 1 x 3 (41) = 1 4

  5. x 3 (52) = 1 x 4 = 3: x 4 (2) = 1 x 4 (13) = 1 x 4 (50) = 1 x 5 = 2: x 5 (3) = 1 x 5 (50) = 1 5

  6. S(j) � � � x 0 ( j ) � x 5 ( j ) X x W � function X X �� . � function � : 5 � ( x i ( j − 1) + x i ( j ) + x i ( j + 1)) × 4 i S ( j ) = i =0 � : S (0) = 1 × 4 0 = 1 S (2) = 1 × 4 0 + 1 × 4 1 + 1 × 4 3 + 1 × 4 4 + 1 × 4 5 = 1349 S (3) = 1 × 4 0 + 1 × 4 1 + 1 × 4 3 + 1 × 4 4 + 1 × 4 5 = 1349 S (12) = 1 × 4 0 + 1 × 4 2 + 1 × 4 4 = 273 S (40) = 1 × 4 0 + 1 × 4 1 + 2 × 4 3 = 133 S (51) = 1 × 4 0 + 1 × 4 1 + 1 × 4 3 + 1 × 4 4 + 1 × 4 5 = 1349 6

  7. E y N � variable i �N � S j , A � � � � � ? � , � . !� � R(S(j), i, j - 1) � R(S(j), i, j + 1) b ^ � ' W � R(S(j), i, j) � � , A � � � ? � , E y R(S(j), i, j - 1), R(S(j), i, j), R(S(j), i, j + 1), b ^ � � � ' �8 D , 3 � � P � , ^ � � ' W 1 (scaView.cpp: 130), � �A � � � � ? � , � . R(S(j), i, j - 1) � R(S(j), i, j + 1) ' W � R(S(j), i, j), u � � � � ? � , E y R(S(j), i, j - 1), R(S(j), i, j), R(S(j), i, j + 1), K' W 8 D . 7

  8. 8

  9. y i ( j ) � � 8 E T � R ( S ( i ) , i, j ). � y i ( j )map � � � y i E T � internal variable(IV) � 6 � variable, � IV(t + 1) � IV(t) � � - , 3 ± 0 . 05 � , � function � : � 99 j =0 y i ( j ) diff IV i = ∗ 0 . 1 − 0 . 05 100 9

  10. � � % 3 begin() (scaView.cpp: 224-293) ❅� generate agent(ln1.txt) (scaView.cpp: 242-249, scaView.cpp: 137-196) copy sample.txt to ln1.txt and random choose IV � ❅ ❅� generate agent(vd1.txt) (scaView.cpp: 263, scaView.cpp: 137-196) copy sample.txt to vd1.txt and random choose IV ❅� init the environment (scaView.cpp: 264, Model.cpp: 695-716) copy ln1.txt and vd1.txt to memory � ❅ ❅� 10

  11. update both outside parameter() (scaView.cpp: 268, Model.cpp: 717-731, Model.cpp: 679-687) � Blumberg � model � � update updateRIV() (Model.cpp: 681, Model.cpp: 380-385) TimePay = TimePay + Increase Time updateIV() (Model.cpp: 682, Model.cpp: 386-399) IV i ( t + 1) = IV i ( t ) × damp IV i ( t ) + growthIV i ( t ) − � # B − 1 gain j,IV i ( t ) × B j j =0 updateLI() (Model.cpp: 683, Model.cpp: 400-411) LI i ( t + 1) = LI i ( t ) × damp LI i ( t ) + growth LI i ( t ) − B i × bRate LI i ( t ) updateRM() (Model.cpp: 684, Model.cpp: 412-476) Stimulus t ( t + 1) = Find ( s i ( t + 1) , dMin i , dMax i ) · Filter ( s i ( t + 1)) · Weight ( s i ( t + 1) , Opti ) RM i ( t + 1) = Clamp ( TemporalFilter ( t, rm i ( t )) , Stimulus i ( t + 1) , min i , max i ) updateB() (Model.cpp: 685, Model.cpp: 477-622) B i ( t + 1) = Max [( LI i ( t + 1) · Combine ( � k RM ki , � j IV j ( t + 1)) − � m ig mi · v m ( t + 1)) , 0] Modify() (Model.cpp: 686, Model.cpp: 623-678) ❅� 11

  12. check result() (scaView.cpp: 276, scaView.cpp: 198-204) check if it is a deal or if it is deadline. ❅� update internal variable using SCA() (scaView.cpp: 285, scaView.cpp: 207-219) � SCA � ] � � update IV InputX() (Model.cpp: 812-866) � ln1.txt � \ � IV � 6 �� , � U " W 6 × 100 � X GeneS() (Model.cpp: 875-918) S ( j ) = � 5 i =0 ( x i ( j − 1) + x i ( j ) + x i ( j + 1)) × 4 i GeneY() (Model.cpp: 921-928) y i ( j ) = R ( S ( i ) , i, j ) UpdateRule() (Model.cpp: 933-992) E y N � variable i �N � S j , A � � � � � ? � , � . !� � R(S(j), i, j - 1) � R(S(j), i, j + 1) b ^ � ' W � R(S(j), i, j) � � , A � � � ? � , E y R(S(j), i, j - 1), R(S(j), i, j), R(S(j), i, j + 1), b ^ � � � ' �8 D . UpdateX() (Model.cpp: 997-1115) diffIV i = ( � 99 j =0 y i ( j ) , 0 ≤ i < 6) / 100 − 0 . 05 12

  13. � P / 2 P /init � E � � 4 2 P � P init � ( � � sample.txt) Money m RIV[RIV MoneyPay].val 150 TimePay m RIV[RIV TimePay].val 0 Increase Time m RIV[RIV TimePay].inc 0 IV i m IV[i].val random damp IV i m IV[i].damp random growth IV i m IV[i].growth random (LI I � � � �� ) LI i m LI[i].val (LI I � � � �� ) damp LI i m LI[i].damp (LI I � � � �� ) growth LI I m LI[i].growth RM i m RM[i].val 0 (RM I � t � � �� ) Filter m RM.findMin, m RM.findMax (B I � � � �� ) B i m B[i].val � � � � m BOut none Find RMFind() none Clamp, TemporalFilter RMTemporalFilterSum() none Combine UpdateB() none X � money � W9 K Modify() none /hline x i ( j ) X[i][j] none S ( j ) S[i] none R ( i, j, k ) R[i][j][k] none y i ( j ) Y[i][j] none 13

Recommend


More recommend