Muscle motor controllers implement the designated motor functions by controlling the contractions of the twelve muscles. According to Webb Webb89, given the length of the fish body, the swimming speed of most fishes below certain threshold values is roughly proportional to the amplitude and frequency of the periodic lateral oscillations of the tail. Our experiments with the mechanical model agree well with these observations. Both the swimming speed and the turn angle of the fish model are approximately proportional to the contraction amplitudes and frequencies/rates of the muscles.
The swim-MC ( ) converts a swim speed parameter into contraction amplitude and frequency control parameters for the anterior ( , ) and posterior ( , ) swimming segments. One pair of parameters suffice to control each of the two swim segments because of symmetry--the four muscles have identical rest lengths, minimum contraction lengths, elasticity constants, and the relaxations of the muscle pair on opposite sides are exactly out of phase. Moreover, the swim-MC produces periodic muscle contractions in the posterior swim segment that lag radians behind those of the anterior swim segment; hence the mechanical model displays a sinusoidal body shape as the fish swims [Webb1989, Blake1983].
For convenience, we define the contraction amplitude control parameters and to be real numbers in the range (0,1], where 0 corresponds to the muscle's fully contracted length and 1 to the muscle's natural rest length . The frequency control parameters and are expressed as the length of contraction per time step and are in the range , where represents the maximum frequency ( in our implementation). Through experimentation, we have found a set of four optimal parameters, , , and , which produce the fastest swimming speed. The swim-MC generates slower swim speeds by specifying parameters that induce smaller contraction amplitude and frequency than the optimal parameters do. For example, results in a slower-swimming fish. Fig. and Fig. show snapshots of an artificial fish during caudal swimming motion. Note the resemblance between the shape of the artificial fish during swimming and that of a natural fish during swimming shown in Fig. .
Figure: Top-front view of an artificial fish during caudal swimming motion.
Most fishes use their anterior muscles for turning and, up to the limit of the fish's physical strength, the turn angle is approximately proportional to the degree and speed of the anterior bend [Webb1989]. The artificial fish turns by contracting and relaxing the muscles of the turning segments (see Fig. ) in a similar fashion. For example, a left turn is achieved by contracting the left side muscles of the segments and relaxing those on the right side at a high speed. This effectively subdues the fish's inertia and brings it to the desired orientation. Then the contracted muscles are restored to their natural rest lengths at a slower rate, so that the fish regains its original shape with minimal further change in orientation.
Analogous to the swim motor controller, the left and right turn motor
( ) convert a turn angle to control parameters for the anterior and posterior turning segments to execute the turn (note that the posterior turning segment also serves as the anterior swim segment). Through experimentation, we established 4 sets of parameter values which enable the fish to execute natural looking turns of approximately 30, 45, 60, and 90 degrees. By interpolating the key parameters, we define a steering map (Fig. ) that allows the fish to generate turns of approximately any angle, up to 90 degrees. Turns greater than 90 degrees are composed of sequential turns of lesser angles. Fig. shows the motion of an artificial fish when making a 90-degree turn.
Figure: The steering map.
Figure: The turning motion of the artificial fish.
The gliding motor controller ( ) lets the fish glide through simulated water for up to t time steps. Within the specified time period, all muscles that are not at their natural rest lengths are relaxed to their natural rest lengths so that the fish engages in the next motor function with its original, undeformed shape. The glide-MC induces smooth transitions between the execution of different motor controllers and hence allows the fish to move with the graceful manner of real fish.
|Xiaoyuan Tu||January 1996|