• No results found

3.7 Aspects of Incremental Evolution

3.7.1 Sequential vs Structural

When evolving the target task in multiple steps, we do not necessarily require that the steps form a linear sequence. The behavior can be partitioned into simpler behaviors in various way, and the evolution progress will follow an incremental evo- lution scenario graph. We provide three examples with different structure scenario graphs. These are not intended to be realistic examples rather an illustration.

For example, consider a robot capable of navigating in the corridors of an office building, entering and exiting rooms through doors, and navigating within the office including climbing at clean and flat surfaces such as chairs and tables. Imagine the robot was equipped with a window-cleaning and glazing unit and we would like to automatically generate a controller that will successfully clean all windows on some floor of the office building.

The robot has a set of pre-programmed behaviors that need to be coordinated for the target task. The Figure 3.1 on the left shows the predefined behavioral modules. On the right of the same figure, a possible sequential scenario for evolving the coordination of the behaviors is shown. Each next step builds on the previous step by adding new functionality. The task for the automatic design of coordination between each two steps is to activate the behaviors on the left in the proper order and dynamics to generate the behavior rewarded in the respective step.

In the second example, we consider a basketball playing robot, which has the basic skills, such as dribbling, shooting, and passing implemented as behavioral modules, however, a good strategy of the player is yet to be programmed. We could generate it automatically by figuring out an effective coordination mechanism. Figure 3.2 shows the list of pre-programmed behaviors. On the right of the same figure is a possible scenario of incremental steps arranged in a tree structure. For example, the “offensive behavior” incremental step attempts to generate a good player strategy for offense depending on the number of players detected by the “track opponents” elementary behavior. It should utilize different strategies evolved in previous steps, but it can also smoothly pass from one strategy to another when the situation on the field changes. Therefore, some parts of the structures designed in the earlier steps may still be left subject of evolution in the later steps.

Yet another example investigates a universal berries-picking robot that can navigate in the open-air nature with the purpose of collecting berries. There are two kinds of berries of interest – raspberries, and cloudberries – which look very similar, but grow on completely different types of plants. While raspberries grow on bushes, cloudberries grow on a 5-25 cm small plants. The robot is equipped with a small gripper, and a camera, it can navigate with the help of the vision and detect

avoid furniture detect window location navigate inside of a room glaze glass soap glass climb chair climb table pass door open door

navigate inside of a corridor

locate room

locate, enter room, move to window locate and enter room

wash and glaze it, and leave the room locate and enter room, move to window,

wash and glaze it

locate, enter room, move to window,

clean windows on the whole floor

Figure 3.1: An example of scenario consisting of sequential incremental steps: window-cleaning robot. dribble shoot pass ball catch ball avoid defender defend track ball track opponents track team−mate

positioning in the pitch

defense against one

defense two against one defense two against two offense two against two offense two against one offense against two deffenders offense against one deffender offense without an oponent from the field centre

defense against two

defensive behavior

offensive behavior

general player

Figure 3.2: An example of scenario of incremental steps following a tree-structure: basketball playing robot.

3.7 Aspects of Incremental Evolution 63

picking up cloudberry

navigating around raspberry tree navigating at cloudberry site

picking up a small round object locating beries in the view

picking up raspberry

navigating in the open−air nature site

determining berry types in the location

universal berry picking detect objects in the camera view image

detect free space

move around

operate the gripper

pattern−recognition learning berry detection with

Figure 3.3: An example of scenario of incremental steps that form a directed acyclic graph: berry-collecting robot.

objects in its view. We first suggest to train the robot on picking any small objects. This behavior can then form a “seed” for both raspberry and cloudberry picking behaviors, where it merges with the respective behavior capable of navigation around the particular kind of plant. Locating berries in the view is also shared both by the navigational behavior that simply searches for berry localities, and by the picking berry behaviors. However, all behaviors are merged when the target behavior of a universal berry-picking robot is evolved – the robot navigates in the terrain, locates places with berries, navigates around and applies a correct collecting procedure. Figure 3.3 shows the list of pre-programmed behaviors and a possible scenario for automatic design of coordination.

The above examples are imaginary. They are supplied only to support our explanation of how the target task can be partitioned into easier sub-tasks, where each of them can be reached by an evolutionary algorithm, while the target behavior itself would be too complex.