• 沒有找到結果。

2 Hardware-Software Codesign

N/A
N/A
Protected

Academic year: 2022

Share "2 Hardware-Software Codesign "

Copied!
7
0
0

加載中.... (立即查看全文)

全文

(1)

Mining Interesting Patterns from Hardware-Software Codesign Data with the Learning Classifier System XCS

Fabrizio Ferrandi, Pier Luca Lanzi, Donatella Sciuto Dipmimento di Elettronica e Informazione

Politecnico di Milano

{ferrandi,lanzi,sciuto}@elet.polimi.it

Abstract- Embedded Systems are composed of both dedicated elements (hardware components) and pro- grammable units (software components), which have to interact with each other for accomplishing a specific task. One of the aims of Hardware-Software Codesign is the choice of a partitioning between elements t h a t will be implemented in hardware and elements that will he implemented in software is one of the important step in design. In this paper, we present a n application of the learning classifier system XCS to the analysis of d a t a de- rived from Hardware-Software Codesign applications.

The goal of the analysis is the discoverying or explicita- tion of existing interelationships among system compo- nents, which can be used to support the h u m a n design of embedded systems. T h e proposed approach is validated on a specific task involving a Digital Sound Spatializer.

1

Introduction

The current trend in Embedded Systems (ES) design is mov- ing toward the integration of increasingly complex applica- tions on a single chip. An Embedded System, generally speaking. is composed of both dedicated elements (hard- ware components) and programmable units (software com- ponents), which'have to interact with each other for ac- complishing a specific task. Hardware-Software Codesign aims at proposing some methodology for a cooperative de- sign of such mixed systems. According to the major com- panies involved in production of embedded systems, the ideal Codesign methodology shall support the exploration of the highest possible number of alternatives (in terms of hardwarc-software architectures) since the early design stages as this will prevent costly correction efforts in the deployment phase.

The choice of an architecture, i.e. of a collection of compo- nents that can be either programmable, re-configurable or customized, is one of the imponant steps in design. One of the major issue in Embedded Systems design concerns the search for the hardware-software configuration (i.e., parti- tioning) that better fits a set of performance constraints and cost limits. Different approaches have been proposed in the literature to support the design of embedded systems, but each of them is characterize by the same overall schema.

Given an embedded system, first a formal model is devel- oped to identify the various system functionalities and to de- scribe how these functionalities interact.'This formal model describes the space of the possible hardware-software p a - titioning and the corresponding costs (i.e. a cost function is defined). Finally, a search algorithm (e.g., a heuristic [31, a genetic algorithm [ I , lo]) is applied to find the best par- .

.

' .

titioning which corresponds to the minimum value of the given cost function.

In this paper, we take a different viewpoint and apply learn- ing classifier systems to extract interesting patterns from the cost function defined over space of the feasible partition- ing. Our aim is nor to find the hest partitioning, instead we are interested in discovering rules of rhumb which can be used both (i) to support a user in the partitioning process, and (ii) to discover interesting interrelationships among dif- ferent model components. More specifically, we adopt the approach we introduced in [4] according to which: (i) the embedded system functionalities. and their interactions, are described at the highest possible level of abstraction, coher- ently with the sysrem level view of the Codesign problem;

(ii) the cost function is the result of a dynamic analysis of the system, performed via simulation, that considers both local and global features of the system under study. The re- sulting cost function maps a binary tuple, representing an hardware-software partitioning, to a real number, represent- ing the cost of the partitioning. In particular, we consider the simplest cost function possible, i.e., the execution time.

Instead of using this function as the target for an optimiza- tion algorithm (as usually done [3, I, IO]), in this paper, we view this cost function from a Data Mining perspective and apply Learning Classifier Systems to extract interesting de- sign patterns that underlie the definition of the function. The result of the analysis is a set of rules, the classifiers, which maps classes of hardware-software partitioning and design decisions into a modification of the overall cost. Separately, we also present some preliminary result involving the use of Neural Networks [ 111 for approximating the cost'func- tion from a very limited set of partitioning so as to decrease the amount of resources required both for our analysis and for the search of the best partitioning in [41.

The paper is organized as follows. In Section 2 we overview- the hardware-software codesign approach we followed to generate the data for our work. In Section 3 we describe a specific task involving a Digital Sound Spatializer. In Sec- tion 4 we introduce learning classifier systems and specif- ically Wilson's XCS which we use for the analysis we present here. In Section 5 we apply XCS to the data ob- tained through the Hardware-Software Codesign approach previously introduced and discuss the type of results that our analysis can produce. In Section 6 we present the initial results regarding the use of neural networks the analysis we performed on the data from hardware-software codesign.

Finally, in Section

I

we outline some of what we believe are the most interesting future research direction.

(2)

2 Hardware-Software Codesign

We now shortly overview the Codesign approach, we intro- duced in [4], that we use to generate the data used for the analysis in this paper. We refer the interested reader to [4]

for a detailed description of the overall Codesign approach.

In [4], the Hardware-Software Codesign process is orga- nized into three main steps that lead to a final partitioning optimized with respect to the given metrics. First, the soft- ware performance of the different functional components is estimated from a first description of the application which, nowadays, is usually provided in terms of C-like program- ming languages. Then, the global and local system perfor- mance are estimated in terms of hardware description, com- munication interfaces, and mixed hardware-software archi- tecture. In the final step, the above information is used to guide the algorithm which will provide the optimal parti- tion.

Software Performance Estimation. This first step aims at giving both a characterization of the timing behavior of the system when specified in some programming language (nowadays C and C + + are the most widely used) and a mean to dynamically determine, via simulation, the best granular- ity at which the partitioning process is to he faced. The choice of the best granularity, is of paramount importance, as it defines how to decompose the system into sub-parts, which will then be the units over which the final partition- ing phase will reason for defining the final system architec- ture. According to the approach we introduced in [4], see also [9], this problem is tackled by starting at the process level of granularity, which is a sort of meeting in the mid- dle, between the whole system and the operation level. To accomplish this, the target micro-processor is selected and the executable code of the application is produced. Then a parsing tool identities in the code, by creating a Data Flow Graph (DFG), all the data dependencies to be used for clas- sifying the code fragments, based on which to dynamically identify the mathematical relations that describe execution time as a function of the input data. After having found these mathematical relations, for all the processes involved in the system, the designer, according to the timing system constraints, is able to understand if some of these processes are time critical for the application. For such processes, a finer grain granularity is obtained, by decomposing them in smaller.sub-parts, which will be computationally manage- able. The outputs of this phase are (i) the identification of the granularity for analyzing the system, based on which all the subsequent phases will be carried on. and, (ii) a charac- terization in terms of execution time of all the system sub- parts seen as software modules. This characterization is em- ployed in the final simulation of the system seen as a mixed hardware-software architecture.

Hardware a n d Communication Performance Estima- tion. Given the software performance characterization of the system, and the selected granularity, in this second step we estimate both local and global system performance tak-

ing into account the possibility of realizing the different components both in hardware and in software. For gaining a fast estimation on hardware timing, the approach we intro- duced in [4] relies on the information collected by the pars- ing tool at the beginning of the software estimation phase.

By considering the Data Flow Graph (DFG) of each system component identified by the dynamically determined gran- ularity, we apply to each of them an unoptimized version of an unconstrained scheduling algorithm [SI, which gives a characterization of hardware performance. The same ap- proach is applied to model the communication among dif- ferent classes of components (see [4] for details).

The Simulator. After having characterized all the compo- nents and all the possible communication channels a simu- lator is built. This is used to simulate several instances of the embedded system architecture, which differ one from the other on the hardware or software characterization of the single sub-parts. Each instance also carries the correct model of communication according to its specific mix of hardware and software parts. The simulator is written in SystemC and it is the exact translation of the formal model used to describe the target embedded system. It exploits both the local characterizations given by the previous soft- ware and hardware estimation phases and the communica- tion model to compute global system performance when in- stantiating different possible combinations of hardware and software modules. At a very high level of abstraction, the simulator takes as input a binary string representing a par- titioning and returns a cost. This mapping is used in [4] to support the search for the final partitioning. In contrast, in the work presented here, we analyze the input-output map- ping obtained from the simulator to identify interesting pat- terns which characterize the embedded system.

3 Case Study

The application chosen as a case study is a Digital Sound Spatializer, which encompasses all the characteristics of a typical embedded system. A sound spatializer is a machine, be it analog, digital or hybrid, which takes as its input a sound which is acquired by one or more sound sources:

e.g., from a musical instrument or a singer, which is usually recorded with highquality noise-reduction microphones.

Its output is the input sound as it would be perceived by someone in a room, in which the sound is supposed to be played. Such a device is used for musical applications and is often distributed with the most common commercial tools for digital audio processing. This device, then sintulates the room, or its effect on audio perception by reverberating, echoing and delaying the input sound in a complex way.

The target microprocessor we choose for testing the soft- ware behavior is the Xilinx MicroBlaze, which is a 32 hit RISC soft-processor core. For simulating the acquisition phase of the audio stream and the output of the reverberated sound we used an audio file and sampled it at 44.1 KHz extracting a 16 bits sample; once the sample has been pro- cessed by the application we wrote the resulting sample on

(3)

an output file. The code describing the application is com- posed of 14 processes, which describe all the different com- ponents of the Digital Audio Spatializer: the Multitap Delay line, which simulates both the direct sound and the discrete echoes, the Multitap Delay mixer which scales the output of the Multitap Delay line, the Sound Source, which is one of the processes modeling the room where the sound is dif- fused. the Walls (which for the final partitioning are con- sidered as 4 different processes), the Listener, who receives the audio sample modified by the four walls, reassembles and scales it and the Output Mixer process, which receives the processed samples from the delay line and from the lis- tener and reassembles it applying to it the final distortion according to the given parameters. After having completed the local characterization, and the simulator has been built, we run a complete simulation of all the possible system in- stances, which are. according to the 14 different processes we consider, Z’* = 16384. This simulation took 3 days and half to complete on an Intel, PIV, I .7 GHz, 1 GB RAM. An extract of the overall table representing the cost function is depicted in Table I .

4 The XCS Classifier System

Learning classifier systems (LCSs) are rule-based systems which exploit reinforcement learning [ I21 and generic algo- rirlinis 151 to extract interesting rules (the classifiers) from a set of examples [7]. In the analysis presented in this work, we employ Wilson’s XCS [13], probably one of the hest performing models of LCS available nowadays.

Classifiers in XCS consist of a condition, an action, and four main parameters: (i) the prediction p, which estimates the payoff that the system expects when the classifier is used; (ii) the prediction error c, which estimates the error of the prediction p; (iii) the fitness F, which estimates the accuracy of the payoff prediction given by p; and finally (iv) the numerosity nuni, which indicates how many copies of classifiers with the same condition.and the same action are present in the population. Note that in the population [PI no duplicates classifiers exist, i.e., there can he only one classifier with a certain condition-action-pair.

Performance Component. At each time step, XCS builds a march set [MI containing the classifiers in the population [PI whose condition matches the current sensory inputs; if [MI contains less than 8rlnra actions, covering takes place and creates a new classifier that matches the current inputs and has a random action. For each possible action ai in [MI, XCS computes the system prediction P ( a ; ) which es- timates the payoff that the XCS expects if action ai is per- formed. The system prediction is computed as as the fitness weighted average of the predictions of classifiers in [MI, clE[M]; which advocate action a; (i.e., cl.a=ai):

where. following the notation of [2], d . a identifies the ac- tion of classifier cl, cl.p identifies the classifier prediction, and c1.F identifies the classifier fitness. Then XCS selects

an action to perform; the classifiers in [MI which advocate the selected action form the current action set [A]. The se- lected action is performed in the environment, and a scalar reward

R

is returned to XCS together with a new input con- figuration.

Reinforcement Component. When the reward

R

is re- ceived, the parameters of classifiers in [AI are updated in the following order [2]: prediction, prediction error, and

fi-

nally fitness. Prediction p is updated with learning rate

fl

(0

5 fl 5

1): p t p

+

fl(R

-

p). Similarly, the prediction error e is updated as: E t e

+

P ( I R

-

pl

-

e )

Fitness Update. The update of classifier fitness consists of three steps. First, the raw accuracy A of the classifiers in [A] is computed as:

-

A classifier is considered to he accurate if its prediction error c is smaller than the threshold € 0 ; a classifier that is accurate has an raw accuracy A equal to one. A classi- fier is considered to be inaccurate if its prediction error e is larger than eo; the raw accuracy A of an inaccurate clas- sifier is computed as a potential descending slope given by a ( c / c o ) - ” . The parameter eo (eo

>

0) is the threshold that determines to what extent prediction errors are accepted; a (0

<

a

<

1) causes a strong distinction between accurate and inaccurate classifiers; U (nu

>

0), together with eo, determines the steepness of the slope used to calculate clas- sifier accuracy. The raw accuracy A is used to calculate the relative accuracy R‘ as:

where c1.n is the raw, accuracy of classifier cl, as computed in equation 2; cLnuni is the numerosio of classifier cl. Fi- nally the relative accuracy A’ is used to update the classifier fitness as:

F

t

F + fl(d -

F ) .

Discovery Component. On regular basis, roughly every

e,,

steps, the genetic algorithm is applied to classifiers in [A]. It selects two classifiers with probability proportional to theirfirnesses, copies them, and with probability

x

per- forms crossover on the copies; then, with probability p it mutates each allele. The resulting offspring are inserted into the population and two classifiers are deleted to keep the population size constant.

5 Experimental Results

We apply the XCS classifier systems to mine interesting pat- terns from the cost function obtained by applying the Code- sign approach we described in Section 2 (see also [4]) to the Digital Sound Spatializer we illustrated in Section 3.

Each experiment consists of a numberof problemsthat XCS must solve. For each problem, an input partitioning, repre- sented by a binary string of length 14, is presented to XCS.

(4)

Based on the current input partitioning, XCS suggests an ac- tion which identifies a possible modification to the current partitioning through the flip of a bit in the current hardware- software configuration. The action is performed, and the current partitioning is modified. As a result, XCS receives a reward computed as the difference between (i) the cost of the current partitioning and (ii) the cost of the new parti- tioning obtained through the suggested modification. Thus XCS will receive a positive reward if the suggested action corresponds to a decrease in the cost of the partitioning, a negative reward if the suggested action corresponds to an in- crease in the cost of the partitioning. Accordingly, by max- imizing the reward, XCS tends to develop classifiers which suggest improvements in the cost function.

Classifier conditions in XCS are represented as strings of 14 symbols (one for each component) over the ternary al- phabet {O,l,#}: the symhol #, called don't care, means that the corresponding position in the classifier condition can ei- ther either 0 and I , i.e., the corresponding component can be implemented either in hardware or software. There are 14.possible classifier actions, numbered from 0 t o 13, that represent the change of the corresponding bit in the current input partitioning. The performance of XCS is measured as the error between the actual reward received as effect of the proposed action, and the reward that XCS estimated. Ac- cording to this settings, XCS learns to predict how the mod- ifications of the input partitioning will influence the target cost function. More precisely, since our cost function is sim- ply the estimated execution time, XCS learns to prediction how the modifications of the input partitioning will influ- ence the overall execution time.

Figure l a reports the error over XCS prediction for the data derived for the Digital Sound Spatializer; population size N is 5000classifiers and eo = while all the other param- eters are set as usual (e.g., [13]). As the figure show, XCS learns to predict quite accurately how the modifications in the current partitioning will affect the cost, i.e., the execu- tion time. Figure I b reports the percentage of classifiers in the population. Initially, the population rapidly grows while XCS is starting to learn, as the learning proceeds the popu- lation size shrinks and the number of classifiers in the pop- ulation decreases showing that XCS is converging toward a minimal set of classifiers that represent,some accurate piece of knowledge extracted from the cost function.

Table 2 reports some classifiers evolved during one of the runs depicted in Figure 1. The first classifier indicates that if component c2 and component c3 are implemented in soft- ware, then changing component cz to hardware (action is 2) will cause a reduction p in the cost (i.e., in the execution time) equal to 0.61, and that this prediction is affected by an absolute error (E) of 1.384 x lo-'. Note that the sec- ond and the third classifiers provide complementary infor- mation. The second classifier suggests that if component CO

and CI are implemented in hardware, then changing compo- nent CI to software will cause an increase of 0.76 in the cost (we remind the reader that a negative prediction means that the resulting partitioning has an higher cost). Conversely,

the third classifier suggests that if component CO is imple- mented in hardware and component c1 is implemented in software, the changing component c1 to hardware (so to ob- tain a partitioning matched by the first classifier), will cause a decrease qf0.76 in the cost. Note that the classifiers re- ported in Figure 2 represent high level and accurate infor- mation about the cost function; all the classifiers in table 2 are very general in that they apply to many partitioning (i.e., they have many don't care symbols): in addition they are very accurate since their prediction error'e is very small if compared to the prediction value. The evolved classifiers can be used to improve the designer understanding of the existing interactions among different system components, either as an effective support to the search of the best parti- tioning.

6 Using Neural Networks

to Approximate the Cost Function

Reinforcement learning methods, such as learning classi- fier systems, assume that it is always possible to provide a reward signal to the agent, whatever the situation that the agent is experiencing, whatever the action that the agent performs. In our case, this requires that for any possible hardware-software configuration, and for any possible mod- ification that the system suggests, it is alwqvs possible to provide the agent a reward value which estimates the mod- ification in the overall configuration cost if the modifica- tion is performed. In our case study, this has been obtained by computing the cost of every possible input configuration through computer simulations and storing the resulting cost function into a lookup table with 2'' entries.

As the complexity of the embedded system increases, it eas- ily becomes infeasible to compute the whole cost function since the number of configurations to compute, and simu- lations to run, is exponential in the number of components involved. To cope with the high dimensionality of the in- put space, we can use a function approximator, to derive an approximation of the whole cost function from a limited number of example. In this section, we present a prelim- inary set of, very promising, results regarding the use of artificial Neural Networks to approximate the cost function for the sound spatializer discussed in Section 3. For this purpose, we apply a standard model of multilayered Neu- ral Network [ I I], with 14 input nodes (one for each com- ponents), one output node with a linear activation function, and respectively five or ten hidden nodes with hyper-tangent activation functions. Each neural network is trained respec- tively with the I % , 5 % IO%, and 20% of the overall cost function, and tested on the whole function.

Figure 2 reports the train and test errors of a neural network with five hidden nodes when this is trained respectively on the I%, the 5% the IO%, and the 20% of the whole cost function; Figure 2a reports the error on the training set; Fig- ure 2b reports the error on the test set; curves are averages over ten experiments. Figure 3 reports the train and test er- rors of a neural network with five hidden nodes when this is trained respectively on the I%, the 5 6 , the IO%, and the

(5)

20% of the whole cost function; Figure 3a reports the error on the training set; Figure 3h reports the error on the test set: curves are averages over ten experiments. The figures show that all the models of neural networks reach, more or less. the same values o r error on the whole function. When only the I% of the overall function is used for training, the convergence is slower; hut the final error value is quite near to that achieved with larger training sets. Note also that the performance of the net with ten hidden nodes (Figure 3h) is slightly better than that with only five nodes (Figure 2h).

Overall these (preliminary) results suggest that neural net- works might be very effective for developing accurate ap- proximation of the cost function from a very limited num- ber of examples (as few as the I% of the overall function) so as to support the search of the optimal partitioning (see [4]) and the mining of patterns, as done in this paper. How- eyer. the approach needs to he validated on more case stud- ies since. although the Digital Sound Spatializer encom- passes all the characteristics of a typical embedded system, its complexity~in terms of components is quite limited.

7

Future Research Directions

We presented preliminary results regarding the use of learning classifier systems, and more specifically of Wil- son's XCS. to mine interesting knowledge from Hardware- Software Codesign data. The results show that XCS ex- tracts rules (classifers) that represent high level and accu- rate knowledge about the cost function which can be used either to guide the search for the hest partitioning, either to highlight to a human designer interesting interrelation- ships among hardware-software components. We noted that learning classifier systems (as well as all the otherreinforce- ment learning techniques) in principle require the knowl- edge of the whole cost function. But this is infeasible in practice since it would require a number of simulations that is exponential in the number of components involved. Ac- cordingly. we show that neural networks can be effective i n developing an accurate approximation of the whole cost function from a limited numher of simulations. Although the results we presented here are promising, they need to be validated on mor: Codesign applications. Even if we are quilc confidcnt that XCS is quitc effective in mining rules from data fe.g., (6. 14]), in this particular case, its perfor- mance on large problems will rely heavily on the possihil- ity of having accurate approximations o f the cost function.

This, according to the approach we presented here, will de- pond on the effectiveness of neural networks in developing accurate approximations of cost functions for complex em- hedded systems. But this needs further experiments.

Condition

##11##########

O O # # # # # # # # # # # # Ol############

Bihlingraphy

action p E

2 0.61 1.384e-04

1 -0.76 5.520e-03

I 0.76 5.292e-03

I

I I G. Ascia, V. Catania, and M. Palesi. Parameter- ized system design hased on genetic algorithms. In Proceedings of the Ninth lnrernational Workshop on Hardwre/SofnYare CodesiRn, April 2001.

Table 2: Examples of classifiers evolved by XCS from the data obtained for the Digital Sound Spatializer:

Condition identifies the classifier condition; Action identifies the classifier action; p is the classifier prediction which estimates how the partitioning cost will h e modified by the corresponding action; r is the prediction error which estimate how much accurate is the prediction p .

[21 Martin V. Butz and Stewart W. Wilson. An algorith- mic description of xcs. Soft Computing

-

A Fusion of Foundations, Methodologies and Applicarions, 6(3- 4):144-153,2002,

[31 P. Eles, K. Kuchcinski. 2. Peng, and A. Doholi.

System level hardwarekoftware partitioning hased on simulated annealing and tabu search. Journal on D e - sign Automation forEnibeddedSysrenis, 25-32. 1997.

[41 Fahrizio Ferrandi, Pier Luca Lanzi, Mara Tanelli, and Donatella Sciuto. A new methodology for system level hardare-software design exploration. Technical Report 2003.. Dipartimento di Elettronica e Informazione.

Politecnico di Milano., April 2003. submitted.

[51 John H. Holland. Adaptation in Natural and Artificial Systems. University of Michigan Press, Ann Arbor,

1975. Republished by the MIT press, 1992.

[61 Pier Luca Lanzi. Mining interesting knowledge from data with the xcs classifier system. In Lee Spec- tor, Erik D. Goodman, Annie Wu, W.B. Langdon, Hans-Michael Voigt, Mitsuo Gen. Sandip Sen, Marco Dorigo, Shahram Pezeshk, Max H. Garzon, and Ed- mund Burke, editors, Proceedings of the Generic and Evolutionup Conipufation Conference (GECCO- 2001), pages 958-965, San Francisco, CA 94104, USA, 7-1 I July 2001. Morgan Kaufmann.

[71 Pier Luca Lanzi, Wolfgang Stolzmann, and Stewart W.

Wilson, editors. Leurning Classifer Systems: From Foundations to Applications. volume I 8 I 3 of Lecture notes in Computer Science. Springer-Verlag, April 2000.

[SI G . De Micheli. Synrliesis and Optimization of Digiral Circuits. McGraw Hill, 1994.

(6)

"..p

.

.

. . . . . . . .

.

.

.

. . . . . . . . . . .

-

c4

0 0 0 0 I

- -

...

...

- -

c5 0 0 0

I I - -

...

...

-

. . . . . . . . . .

.

, .

.

.

. .

.

-

c9

0 0 0 0

1

- -

...

...

-

... ...

4.10 5.00 ...

Table I : An extract from the cost function computed for the Digital Sound Spatializer: e j represents the j t h component:

cj is 0 if the component is implemented in hardware, 1 if the component if implemented in software; Cost is the overall execution time estimated through the simulation (see Section 2). Execution time is shorter when all the components are implemented in hardware, longer when all the components are implemented in software.

Figure I : XCS applied to the cost function for the Digital Sound Spatializer: (a) error on the prediction of the cost; (b) percentage of classifiers in the population. Curves are averages over 10 experiments.

ERROR ON THE TRAIN SET

Figure 2: Multilayered neural network with five hidden nodes trained on the I%, the 5%. the IO%, and the 20% of the whole cost function: (a) error on the train set; (b) error on the whole function. Curves are averages over 10 experiments.

(7)

i a U N s E T I X

-

0 ,

rnAINSET5.4 ~ - - - ~

IR"S"10*-....--- .

rnUNS"rn. ~ ~~

TRAINSET,+ -

T R I I N S L I S Z ---.-.-

T R I I N S E I I W .. . ~

-

0 0 8 .

T I A I N S E T r n .- ..

0 0 0 -

0 0 8 - om -

0 0 1 - 0 0 7 -

004 - 0 0 6 .

0 1

r m

B 0 0 s - B 0 0 5 -

U Y

001 - 0 0 4

-

0 01 0 0 3 .

0 02 . ";;-:,, ~.

0 0 2 ~ !:::..,

0 0 1 - , .~. . 0 0 , .

.\

\ -..---p~~

20 10

[9] Undisclosed Author's name for blind review.

-_

In CODES-ISSS, 2003.

[IO] M. Palesi and T. Givargis. Multi-objective de- sign space exploration using genetic algorithms. In Proceedings of the Tenth International Workshop

011 HardwardSoftwure Codesigri, pages 67-72, May 2002.

[ 1 I ] Simon Haykin. Neural Networks. .A Coniprehens;ve Foirndation. Prentice Hall International Inc., 1999.

1121 Richard S. Sutton and Andrew G. Barto. Reinforce- nienf Learning - A n Introduction. MIT Press, 1998.

I131 Stewart W. Wilson. Classifier Fitness Based on Accu- racy. Evolutionary Computation, 3( 2 ) : 149- 175, 1995.

114) Stewart W. Wilson. Mining oblique data with XCS. In Pier LucaLanzi, Wolfgang Stolzmann, and Stewart W.

Wilson, editors, IWLCS, volume 1996 of Lecture Notes in Coniputer Science, pages 158-176. Springer, 2001.

z4

參考文獻

相關文件

(b) 0 = IV, since from left to right, the slopes of the tangents to graph (b) start out at a fixed positive quantity, then suddenly become negative, then positive again..

(b)- IV, since from left to right, the slopes of the tangents to graph (b) start out at a fixed positive quantity, then suddenly become negative, then

[r]

learning performance and progress as well as the expenditure involved, overall summative assessment results of all NCS students at the end of a school year

To enhance support to schools in the practice of e-learning, we have disbursed OITG in January 2017 to some 700 schools under Batches 1 and 2 of the WiFi-900 Project as well as

On the other hand, outside-school activities like Mathematics Project Competition for Secondary Schools, Poster Design Competition for the Hong Kong Mathematics Olympiad

The subsidy will be revised to take into account changes in the average unit cost per place in an aided school arising from any civil service salary revision and

We review recent progress in lattice quantum gravity and random surfaces with a particular emphasis given to discussion of two dimensional gravity, dynamical triangulation,