25.01.2015 Views

Download Full Issue in PDF - Academy Publisher

Download Full Issue in PDF - Academy Publisher

Download Full Issue in PDF - Academy Publisher

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

JOURNAL OF COMPUTERS, VOL. 8, NO. 6, JUNE 2013 1407<br />

S<br />

(2 −1)!<br />

N = (1)<br />

S<br />

(2 − M )! S!<br />

The FSM is commonly represented by a state transition<br />

table (STT). Given the <strong>in</strong>put transition probability of an<br />

FSM, its state transition probability can be computed.<br />

The state transition probability tp ij between state s i and<br />

state s j occurs <strong>in</strong> an arbitrarily long sequence and is given<br />

as follows.<br />

tp = P p<br />

(2)<br />

ij<br />

The steady state probabilities P i can be obta<strong>in</strong>ed via<br />

Gaussian elim<strong>in</strong>ation methods to solve the set of l<strong>in</strong>ear<br />

equations as <strong>in</strong> (3) and (4).<br />

i<br />

i = M 1<br />

∑ −<br />

i<br />

i=<br />

0<br />

ij<br />

P = 1<br />

(3)<br />

j = M<br />

∑ − 1<br />

Pj<br />

j=<br />

0<br />

P = p<br />

(4)<br />

i<br />

The power consumption [15] of a sequential circuit is<br />

proportional to its switch<strong>in</strong>g activity which can be<br />

represented as <strong>in</strong> (5), where C is the capacitance of the<br />

output for the node, V dd is the supply voltage, f clk is the<br />

clock frequency and E is the expected switch<strong>in</strong>g activity.<br />

ji<br />

1 2<br />

P = CVdd<br />

fclk<br />

E<br />

(5)<br />

2<br />

S<strong>in</strong>ce the register capacitance is fixed and cannot be<br />

affected, therefore the E is considered as part of the cost<br />

function <strong>in</strong> terms of power consumption.<br />

i = M<br />

∑∑<br />

− 1 j=<br />

M −1<br />

i=<br />

0 j=<br />

0<br />

E = tp ij dist i j<br />

(6)<br />

where dist i,j represents the hamm<strong>in</strong>g distance between the<br />

cod<strong>in</strong>g of state s i and state s j and tp ij is the total state<br />

transition probability from state s i and state s j as def<strong>in</strong>ed<br />

<strong>in</strong> (2).<br />

III. SIMULATED ANNEALING BASED ALGORITHM<br />

The problem of f<strong>in</strong>d<strong>in</strong>g the state assignment for the<br />

m<strong>in</strong>imisation of power consumption and area is<br />

computationally difficult. GA has been successfully<br />

applied to a variety of computationally difficult problems.<br />

It has been shown that it can produce good results <strong>in</strong> a<br />

reasonable computation time. The basic idea of GA is<br />

<strong>in</strong>itially to generate a breed<strong>in</strong>g pool of potential solutions<br />

to a problem. These solutions are encoded as<br />

chromosomes, and each chromosome is subjected to an<br />

evaluation function which assigns fitness depend<strong>in</strong>g on<br />

the quality of the solution it encodes. Exist<strong>in</strong>g solutions<br />

are recomb<strong>in</strong>ed by crossover operator. Mutation operator<br />

makes random changes <strong>in</strong> a few randomly selected<br />

chromosomes <strong>in</strong> order to prevent premature convergence<br />

by ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g the diversity of the population. The GA<br />

uses a tournament selection method via population<br />

rank<strong>in</strong>g system to reproduce new generation. As a result,<br />

,<br />

the rank<strong>in</strong>g system itself takes significant computational<br />

time. However, <strong>in</strong> most cases only the best solution at last<br />

is required, therefore the entire rank<strong>in</strong>g is not always<br />

necessary. Furthermore, if some parents are not excellent<br />

enough, these solutions have little chance to jo<strong>in</strong> the<br />

competition <strong>in</strong> GA.<br />

Simulated anneal<strong>in</strong>g (SA) algorithm on the other hand<br />

is another method to solve problems such as 3D pack<strong>in</strong>g<br />

problem [16] and s<strong>in</strong>gle conta<strong>in</strong>er load<strong>in</strong>g problem [17].<br />

It starts with high temperature. The <strong>in</strong>spiration of the<br />

algorithm demand an <strong>in</strong>terest<strong>in</strong>g feature related to the<br />

temperature variation to be embedded <strong>in</strong> the operational<br />

characteristics of the algorithm. This necessitates a<br />

gradual reduction of the temperature as the simulation<br />

proceeds. The algorithm starts <strong>in</strong>itially with a high value<br />

temperature, and then it is decreased at each step<br />

follow<strong>in</strong>g some anneal<strong>in</strong>g schedule. However there are<br />

several significant disadvantages of traditional SA, such<br />

as its slow search speed. Hence, <strong>in</strong> order to overcome the<br />

mentioned shortcom<strong>in</strong>gs, follow<strong>in</strong>g simulated anneal<strong>in</strong>g<br />

based algorithm is proposed.<br />

A. Solution Representation<br />

Let the state-code array for an M-state FSM be<br />

S 0 , S1,<br />

, S M −1<br />

, where M is the number of FSM states.<br />

The solution representation is an array of size equal to the<br />

number of states <strong>in</strong> the FSM. Each entry <strong>in</strong> the array is an<br />

<strong>in</strong>teger between 0 and M-1. Take a ten-state mach<strong>in</strong>e<br />

S 0 , S1,<br />

S 2 , S3,<br />

S 4 , S5<br />

, S 6 , S 7 , S8<br />

, S9<br />

for example. One<br />

possible representation is 9, 6, 8, 2, 3, 0, 4, 1, 5, 7, which<br />

is shown <strong>in</strong> Figure 1.<br />

Figure 1. State assignment for ten-state mach<strong>in</strong>e.<br />

B. Rough Anneal<strong>in</strong>g Stage<br />

The proposed simulated anneal<strong>in</strong>g is designed<br />

purposely <strong>in</strong>to two stages as the temperature schedules. In<br />

the rough anneal<strong>in</strong>g stage, it tends to alter the solution<br />

with bigger changes at high temperature, consequently<br />

escape local optima. The rotation swap method randomly<br />

selects the cutt<strong>in</strong>g l<strong>in</strong>e from the representation. The<br />

cutt<strong>in</strong>g l<strong>in</strong>e is treated as a mirror. Copy the state<br />

assignments <strong>in</strong> the left part of the mirror to the right part<br />

of the mirror. Similarly, the right part is copied to the left<br />

part. Figure 2 shows an example of exchange method.<br />

C. Focus<strong>in</strong>g Anneal<strong>in</strong>g Stage<br />

The focus<strong>in</strong>g anneal<strong>in</strong>g stage differs to the previous<br />

anneal<strong>in</strong>g stage, which tends to alter the solution with<br />

smaller changes at low temperature, consequently to<br />

achieve an effective convergence. In this stage, it<br />

randomly selects a state assignment and its neighbour<strong>in</strong>g<br />

state assignment from the representation and swaps these<br />

two state assignments. These two states can be close to<br />

each other, as shown <strong>in</strong> Figure 3, or apart from each other,<br />

as shown <strong>in</strong> Figure 4.<br />

© 2013 ACADEMY PUBLISHER

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!