Presentation is loading. Please wait.

Presentation is loading. Please wait.

Random Boolean Networks. Attractors A Boolean network has 2 ^N possible states. Sooner or later it will reach a previously visited state, and thus,

Similar presentations


Presentation on theme: "Random Boolean Networks. Attractors A Boolean network has 2 ^N possible states. Sooner or later it will reach a previously visited state, and thus,"— Presentation transcript:

1 Random Boolean Networks

2

3 Attractors A Boolean network has 2 ^N possible states. Sooner or later it will reach a previously visited state, and thus, since the dynamics are deterministic, fall into an attractor. If the attractor has only a single state it is called a point attractor, and if the attractor consists of more than one state it is called a cycle attractor. The set of states that lead to an attractor is called the basin of the attractor. States with no incoming connections are called garden-of- Eden states and the dynamics of the network flow from these states towards attractors. The time it takes to reach an attractor is called transient time. (Gershenson 2004)attractor Random Boolean networks (RBNs) are known as NK networks or Kauffman networks (Dubrova 2005). An RBN is a system of N binary-state nodes (representing genes) with K inputs to each node representing regulatory mechanisms. The two states (on/off) represent respectively, the status of a gene being active or inactive. The variable K is typically held constant, but it can also be varied across all genes, making it a set of integers instead of a single integer. In the simplest case each gene is assigned, at random, K regulatory inputs from among the N genes, and one of the possibleBoolean functions of K inputs. This gives a random sample of the possible ensembles of the NKnetworks. The state of a network at any point in time is given by the current states of all N genes. Thus the state space of any such network is 2^ N.setlean functions of

4 Genetic Algorithms Chapter 9, Complexity: A Guided Tour

5 Evolution by Natural Selection Charles Darwin

6 Evolution by Natural Selection Charles Darwin Organisms inherit traits from parents

7 Evolution by Natural Selection Charles Darwin Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination

8 Evolution by Natural Selection Charles Darwin Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination Due to competition for limited resources, the organisms best adapted to the environment tend to produce the most offspring.

9 Evolution by Natural Selection Charles Darwin Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination Due to competition for limited resources, the organisms best adapted to the environment tend to produce the most offspring. This way traits producing adapted individuals spread in the population

10 Evolution by Natural Selection Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination Due to competition for limited resources, the organisms best adapted to the environment tend to produce the most offspring. This way traits producing adapted individuals spread in the population in computers Computer programs Charles Darwin

11 Evolution by Natural Selection Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination Due to competition for limited resources, the organisms best adapted to the environment tend to produce the most offspring. This way traits producing adapted individuals spread in the population in computers Computer programs Charles Darwin John Holland

12 Evolution by Natural Selection Organisms inherit traits from parents Traits are inherited with some variation, via mutation and sexual recombination Due to competition for limited resources, the organisms best adapted to the environment tend to produce the most offspring. This way traits producing adapted individuals spread in the population in computers Computer(e.g., programs) Charles Darwin John Holland Genetic Algorithms (GAs)

13 Some real-world uses of genetic algorithms

14 Used by GE to automate parts of aircraft design

15 Some real-world uses of genetic algorithms Used by GE to automate parts of aircraft design Used by pharmaceutical companies to discover new drugs

16 Some real-world uses of genetic algorithms Used by GE to automate parts of aircraft design Used by pharmaceutical companies to discover new drugs Used by the London Stock Exchange to automatically detect fraudulent trades

17 Some real-world uses of genetic algorithms Used by GE to automate parts of aircraft design Used by pharmaceutical companies to discover new drugs Used by the London Stock Exchange to automatically detect fraudulent trades Used to generate realistic computer animation in the movies Lord of the Rings: The Return of the King and Troy

18 Some real-world uses of genetic algorithms Used by GE to automate parts of aircraft design Used by pharmaceutical companies to discover new drugs Used by the London Stock Exchange to automatically detect fraudulent trades Used to generate realistic computer animation in the movies Lord of the Rings: The Return of the King and Troy Used to model and understand evolution in nature!

19 Robby the Robot

20 Example: Evolving Strategies for Robby the Robot

21 Input: Contents of N, S, E, W, C(Current)

22 Example: Evolving Strategies for Robby the Robot Input: Contents of N, S, E, W, C(Current) Possible actions: Move N Move S Move E Move W Move random Stay put Try to pick up can

23 Example: Evolving Strategies for Robby the Robot Input: Contents of N, S, E, W, C(Current) Possible actions: Move N Move S Move E Move W Move random Stay put Try to pick up can Rewards/Penalties (points): Picks up can: 10 Tries to pick up can on empty site: -1 Crashes into wall: -5

24 Example Strategy

25 Encoding a Strategy Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

26 Encoding a Strategy Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

27 Encoding a Strategy 0 Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

28 Encoding a Strategy 0 2 Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

29 Encoding a Strategy 0 2 6 Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

30 Encoding a Strategy 0 2 6 5... 3... 4 Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

31 Encoding a Strategy 0 2 6 5... 3... 4 243 values Code: MoveNorth = 0 MoveSouth = 1 MoveEast = 2 MoveWest = 3 StayPut = 4 PickUpCan = 5 MoveRandom = 6

32 Genetic algorithm for evolving strategies for Robby

33 1. Generate 200 random strategies (i.e., programs for controlling Robby)

34 Random Initial Population

35 Genetic algorithm for evolving strategies for Robby 1. Generate 200 random strategies (i.e., programs for controlling Robby) 2. For each strategy, calculate fitness (average reward minus penalties earned on random environments)

36 Genetic algorithm for evolving strategies for Robby 1. Generate 200 random strategies (i.e., programs for controlling Robby) 2. For each strategy, calculate fitness (average reward minus penalties earned on random environments) 3. The strategies pair up and create offspring via “sexual recombination” with random mutations ― the fitter the parents, the more offspring they create.

37 Parent 1: Parent 2:

38 Parent 1: Parent 2:

39 Parent 1: Parent 2: Child:

40 Genetic algorithm for evolving strategies for Robby 1. Generate 200 random strategies (i.e., programs for controlling Robby) 2. For each strategy, calculate fitness (average reward minus penalties earned on random environments) 3. The strategies pair up and create offspring via “sexual recombination” with random mutations ― the fitter the parents, the more offspring they create. 4. Keep going back to step 2 until a good-enough strategy is found!

41 My hand-designed strategy:

42 My hand-designed strategy: “If there is a can in the current site, pick it up.”

43 My hand-designed strategy: “If there is a can in the current site, pick it up.” “Otherwise, if there is a can in one of the adjacent sites, move to that site.”

44 My hand-designed strategy: “If there is a can in the current site, pick it up.” “Otherwise, if there is a can in one of the adjacent sites, move to that site.” “Otherwise, choose a random direction to move in.”

45 My hand-designed strategy: “If there is a can in the current site, pick it up.” “Otherwise, if there is a can in one of the adjacent sites, move to that site.” “Otherwise, choose a random direction to move in.” Average fitness of this strategy: 346 (out of max possible  500)

46 My hand-designed strategy: “If there is a can in the current site, pick it up.” “Otherwise, if there is a can in one of the adjacent sites, move to that site.” “Otherwise, choose a random direction to move in.” Average fitness of this strategy: 346 (out of max possible  500) Average fitness of GA evolved strategy: 486 (out of max possible  500)

47 My hand-designed strategy: “If there is a can in the current site, pick it up.” “Otherwise, if there is a can in one of the adjacent sites, move to that site.” “Otherwise, choose a random direction to move in.” Average fitness of this strategy: 346 (out of max possible  500) Average fitness of GA evolved strategy: 486 (out of max possible  500) ???

48 One Run of the Genetic Algorithm Best fitness in population Generation number

49 Generation 1 Best average score = − 81

50 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 0Score: 0

51 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 1Score: 0

52 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 2Score: −5

53 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 2Score: −5

54 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 3Score: −10

55 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 3Score: −10

56 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 4Score: −15

57 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 4Score: −15

58 Generation 10 Best average score = 0

59 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 0Score: 0

60 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 1Score: 0

61 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 2Score: 0

62 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 3Score: 0

63 Generation 200 Fitness = 240

64 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 0Score: 0

65 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 1Score: 0

66 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 2Score: 0

67 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 3Score: 10

68 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 4Score: 10

69 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 5Score: 20

70 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 6Score: 20

71 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 7Score: 20

72 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 8Score: 20

73 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 9Score: 20

74 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 10Score: 20

75 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 11Score: 20

76 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 12Score: 20

77 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 13Score: 20

78 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 14Score: 30

79 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 15Score: 30

80 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 16Score: 40

81 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 17Score: 40

82 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 18Score: 50

83 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 19Score: 50

84 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 20Score: 60

85 Generation 1000 Fitness = 492

86 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 0Score: 0

87 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 1Score: 0

88 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 2Score: 10

89 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 3Score: 10

90 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 4Score: 20

91 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 5Score: 20

92 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 6Score: 20

93 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 7Score: 20

94 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 8Score: 20

95 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 9Score: 30

96 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 10Score: 30

97 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 11Score: 40

98 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 12Score: 40

99 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 13Score: 50

100 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 14Score: 50

101 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 15Score: 60

102 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 16Score: 60

103 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 17Score: 70

104 01234567890123456789 0 1 2 3 4 5 6 7 8 9 Time: 18Score: 70

105 Why Did The GA’s Strategy Outperform Mine?

106 My Strategy

107 01234567890123456789 0 1 2 3 4 5 6 7 8 9

108 01234567890123456789

109 01234567890123456789

110 01234567890123456789

111 01234567890123456789

112 The GA’s Evolved Strategy

113 01234567890123456789 0 1 2 3 4 5 6 7 8 9

114 01234567890123456789

115 01234567890123456789

116 01234567890123456789

117 01234567890123456789

118 01234567890123456789

119 01234567890123456789

120 01234567890123456789

121 01234567890123456789

122 01234567890123456789

123 01234567890123456789

124 Principles of Evolution Seen in Genetic Algorithms

125 Natural selection works!

126 Principles of Evolution Seen in Genetic Algorithms Natural selection works! Evolution proceeds via periods of stasis “punctuated” by periods of rapid innovation

127 Principles of Evolution Seen in Genetic Algorithms Natural selection works! Evolution proceeds via periods of stasis “punctuated” by periods of rapid innovation Best fitness in population Generation number

128 Principles of Evolution Seen in Genetic Algorithms Natural selection works! Evolution proceeds via periods of stasis “punctuated” by periods of rapid innovation Exaptation is common

129 Principles of Evolution Seen in Genetic Algorithms Natural selection works! Evolution proceeds via periods of stasis “punctuated” by periods of rapid innovation Exaptation is common Co-evolution speeds up innovation

130 Principles of Evolution Seen in Genetic Algorithms Natural selection works! Evolution proceeds via periods of stasis “punctuated” by periods of rapid innovation Exaptation is common Co-evolution speeds up innovation Dynamics and results of evolution are unpredictable and hard to analyze


Download ppt "Random Boolean Networks. Attractors A Boolean network has 2 ^N possible states. Sooner or later it will reach a previously visited state, and thus,"

Similar presentations


Ads by Google