crpitv26jammerlaan

Upload: menilanjan89nl

Post on 03-Apr-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/28/2019 CRPITV26JAmmerlaan

    1/9

    Adaptive Cooperative Fuzzy Logic Controller

    Justin Ammerlaan David Wright

    School of ComputingUniversity of Tasmania,

    Churchill Avenue, Sandy Bay, Hobart,

    Email: [email protected]

    Abstract

    Fuzzy logic is a natural basis for modelling and solvingproblems involving imprecise knowledge and contin-uous systems. Unfortunately, fuzzy logic systems areinvariably static (once created they do not change)and subjective (the creator imparts their beliefs onthe system). In this paper we address the question ofwhether systems based on fuzzy logic can effectively

    adapt themselves to dynamic situations.To answer this question, we firstly design and im-

    plement an adaptive fuzzy logic agent for playingRoboCup soccer tournaments and then conduct a sta-tistical analysis of the performance of the agent. Wealso extend the agent to incorporate adaptation in thecooperative situations that arise in this domain, andevaluate its performance under such conditions.

    Results from our analysis conclusively prove thatour adaptive fuzzy logic agent can adapt rapidly andsuccessfully to the changing dynamic situations withwhich it is presented.

    1 Introduction

    Fuzzy Logic provides a simple method to empowercomputer systems with knowledge and reasoning abil-ity that can handle imprecision, complexity and con-tinuity. However, Fuzzy Logic systems, while easy tocreate, have subjective knowledge inherent in theirconstruction process. The representation of this sub-jective knowledge is static; once it is created it doesnot adjust to suit the domain. Adaptation of thisknowledge to provide a more optimal representationis one method of improving the output and allowingthe system to respond to changes apparent in the do-main.

    Adaptive systems are typically implemented in thethe form of learning systems based on neural net-

    works (Kruse & Nrnberger 1998). These systems,while producing good results in the application areasresearched, have the burden of poor computationalcomplexity relative to the number of inputs to the sys-tem, as well as being slow to adapt to new situations(Langholz 1992). This causes these approaches to beunsuited to an environment that requires real timeadaptation with limited sample data and communi-cation of discovered optimisations in the presense ofreal world communication restraints.

    What then can be used to optimise the adaptationprocess of systems within these domains? This paperpresents:

    Copyright c2004, Australian Computer Society, Inc. This pa-per appeared at Twenty-Seventh Australasian Computer Sci-

    ence Conference (ACSC2004), Dunedin, New Zealand. Confer-ences in Research and Practice in Information Technology, Vol.17. unknown, Ed. Reproduction for academic, not-for profitpurposes permitted provided this text is included.

    a novel approach to on-line adaptation and op-timisation using linguistic modifiers and a fuzzylogic based adaptive function;

    an implementation of cooperative adaptationthat allows two or more agents to effectively com-municate and cooperatively adapt via this onlinefuzzy logic adaptation system;

    a statistical verification of the performance andefficacy of the proposal.

    2 Background

    2.1 Fuzzy Logic Adaptive Techniques

    To design a fuzzy controller, linguistic rules and mem-bership functions to represent linguistic values mustbe determined. The specification of good linguisticrules typically depends on the knowledge of the do-main expert. The translation of these linguistic rulesinto fuzzy set theory is not formalized and arbitrarychoices have to be made. This includes choice of amembership function representing a linguistic term

    and the degree of overlap with other linguistic termsin the same fuzzy variable.As an example, consider a temperature variable

    and the linguistic terms hot, medium and cold. If thelinguistic term hot is considered, obviously the cor-responding fuzzy set definitions should consist of afunction reaching its maximum at the value the oper-ator assigns as depicting hot. Neither the shape, thesupport of the membership function or the degree ofoverlap with the linguistic term medium is uniquelydetermined by the linguistic term hot. In general, thedomain expert has some idea about the range and theshape of the membership function, however there issome imprecision in the boundaries and shape of thefunction (Pearson 2001).

    2.1.1 Neural Networks

    Neural Networks have been suggested as a methodof offline adapting and optimising fuzzy controllersto increase their performance. A straightforward ap-proach is to assume a certain shape for the member-ship functions which depend on different parametersthat can be learned by a Neural Network. This ideawas carried out in (Nauck, Flawonn & Kruse 1992)where the membership functions are assumed to besymmetrical triangular functions depending on twoparameters one of them determining where the func-tion reaches its maximum the other giving the lengthof the support. Another approach is summarised in

    (Kruse & Nrnberger 1998). The literature is exten-sive regarding this topic, with many well regarded andsuccessful implementations documented, a summaryand bibliography of these can be found in (Nauck &Kruse 2002).

  • 7/28/2019 CRPITV26JAmmerlaan

    2/9

    2.1.2 Neural Networks based Adaptation Is-sues

    Neural networks, while providing a good general ap-proach for adapting fuzzy logic parameters, have somelimitations as follows.

    Firstly, the knowledge contained within a neuralnetwork regarding adapted parameters is stored inthe synapses of the interconnecting neurons. Thismethod of storing adaptation information becomesexpensive if a requirement of the implemented sys-tem is for information to be transmitted across mul-tiple neural networks. It is also difficult to analysethis information and represent it in a comprehensiblemanner.

    Secondly, regardless of the neural network learningsystem that is in place, whether it utilises reinforce-ment learning or a feed forward / backword learn-ing system, each neural network is typically retrainedon the receipt of new information regarding the do-main. This fundamental retraining process causesneural networks to grow increasingly burdensome interms of performance as the number of parameters tobe adapted increases. This factor alone restricts suchsystems from being used in domains that require on-

    line adaptation or real-time execution.Finally, neural networks used in the context ofadapting specific parameters of a given system do notmake use of any local or operator knowledge of po-tential optimisation paths for these parameters.

    The solution examined in this paper proposes amethod for solving these problems in the form of afuzzy logic rule-base for adapting fuzzy logic param-eters, which, as well as being capable of real-time ex-ecution, allows for the inclusion of local knowledgerelevant to each individual set of fuzzy membershipfunctions.

    3 Adaptive Agent Implementation

    3.1 Robocup

    The Robocup Soccerserver is a system that enablesautonomous agents consisting of programs written invarious languages to play a match of soccer againsteach other (Chen 2002). The soccer server is writtento support competition amongst multiple virtual soc-cer players in an uncertain multi-agent environment,with real-time demands as well as semi-structuredconditions. A match is carried out in a client/serverstyle. A server, soccerserver, provides a virtual field,communicates with clients, controls a game accord-ing to rules and simulates all movements of a balland players.

    3.2 Fuzzy Agents

    The fuzzy logic system constructed as part of the re-search for this system, extends a simple interface foruse in any domain. Each agent has access to the sameset of:

    1. operating ranges or fuzzy variables within the do-main;

    2. membership functions on those ranges; and

    3. corresponding linguistic variables.

    Examples of the input variables for the system are theagent based (those variables that relate to the agents

    physical properties) input variables such as speed andstamina; the object based input variables such as balldistance and goal direction; the inferred input vari-ables such as ball velocity and own player relative di-rection to object. Examples of the output variables

    Figure 1: Sample membership function

    for the System include kick{distance, direction} andturn{direction}. It can be observed that the Robocupdomain is quite complex with many variables pertain-ing to each agents environment and state. The num-ber of input variables within the system is (400 x22).

    3.3 Inference Process

    Consider the following multi-input, multi-output sys-tem: let x = (x1, x2,...,xn)

    Tbe the input vector andy = (y1, y2,...,ym)

    T be the output vector. The lin-guistic variable xi in the universe of discourse U ischaracterized by T(x) = {T1x , T

    2x ,...,T

    kx } and (x) =

    {1x, 2x,...,

    kx} where T(x) is a term set ofx; that is,

    it is the set of names of linguistic values of x, witheach Tix being a fuzzy member and the membershipfunction ix defined on U.

    As an illustration of application within the fuzzyagent implementation, consider a simplified fuzzy in-ference system for controlling an agents movementtoward an object such as the ball. Let there be twoinputs (n = 2) and one output (m = 1) with the twoinputs representing the agents current speed (speed)and the distance to the ball (distance), and let theoutput of the System be power to be applied (power).Let x1 indicate the speed, T(x1) represent its term set{stopped, slow, moderate pace, fast}, and the uni-verse of discourse be [0 .3] . Let x2 indicate the dis-tance, with the universe of discourse, [0100], and thecorresponding term set be {nextto, close, near, far}.Similarly, linguistic variable y in the universe of dis-course V is characterized by T(y) = {T1y , T

    2y ,...,T

    ky },

    where T(y) is a term set of y; that is, T is the set ofnames of linguistic values of y, with each Tiy being a

    fuzzy membership function iy defined on V.

    If the variable y represents power, then T(y) rep-resents a term set {no power, some power, moder-ate power, lots power, max power}, and the universeof discourse is [0 200]. In order to map input vari-ables x1 and x2 and output variable y to the corre-sponding linguistic variables it is necessary that thefuzzy sets and linguistic variables be defined. A sam-ple membership function for the input and outputvariables is shown in Figure 1.

    The first step in evaluating the output of a fuzzyinference system is to apply the inputs and determinethe degree to which they belong to each of the fuzzysets. The fuzzifier block performs the mapping fromthe input feature space to fuzzy sets in a certain uni-

    verse of discourse. A specific valuex

    1 is then mappedto the fuzzy set T1xi with degree 1xi

    , to fuzzy set T2xiwith degree 2xi , and so forth.

    A fuzzy rule base contains a set of fuzzy rules R.A single if ... then ... rule assumes the form if x

  • 7/28/2019 CRPITV26JAmmerlaan

    3/9

    is Tx then y is Ty. Some examples of rules mightbe if speed is slow and distance is far then power ismaxpower, and ifspeed is fast and distance is nexttothen power is somepower.

    For a multi-input, multi-output sys-tem, where the i-th fuzzy rule is Ri =if( x1isTx1 , and..., xpisTxp)then(y1 isTy1 , and..., yqisTyq)

    The p preconditions of Ri form a fuzzy set Tx1 Tx2 ...,Txp , and the consequent is the union of q in-dependent outputs. In a multi-input, single-output

    system, such as the current example, then the conse-quent reduces to (y is Ty1 ).

    Within the fuzzy logic agent implementation, in-terpreting an if ... then ... rule is a three part process:

    1. Resolve all fuzzy statements in the antecedent toa degree of membership between 0 and 1 basedon the inputs x1 and x2

    2. If there are multiple parts to the antecedent, suchas linguistic modifiers, apply the relevant opera-tors and resolve the antecedent to a single num-ber between 0 and 1, i.e the result being the de-gree of support of this antecedent for the rule;and

    3. Apply the implication method, using the degreeof support for the entire rule to shape the out-put fuzzy set. If the rule has more than one an-tecedent, the fuzzy min operator is applied toobtain one number that represents the result ofapplying that rule.

    For example, consider an i-th rule:

    Ri : if x1 is Ti

    1 and x2 is Ti

    2 then y1 is Tiy (1)

    Then the firing strength or membership of the rulecan be defined as:

    i = min(ix1 (x1),

    ix2 (x2)) (2)

    Equation 2 represents fuzzy intersection with the min-imum operator. Each fuzzy rule yields a single num-ber that represents the firing strength of that rule.The firing strength is then used to shape the outputfuzzy set that represents the consequent part of therule. The implication method is defined as the shap-ing of the consequent (the output fuzzy set), basedon the antecedent. The input for the implication pro-cess is a single number given by the antecedent, andthe output is a fuzzy set. The method used withinthe fuzzy logic agent implementation is the minimummethod expressed in Equation 3.

    iy(w) = min(i, iy(w)) (3)

    where w is the variable that represents the supportvalue of the membership function.

    After the firing strengths of the rules have beenobtained, the corresponding output fuzzy sets mustbe combined into one composite fuzzy set. The pro-cess of combining output fuzzy sets into a single setis called aggregation, a process that unifies the out-puts of all the rules. Essentially, aggregation takesall fuzzy sets that represent the output for each ruleand combines them into a single fuzzy set that is usedas the input to the defuzzification process. Aggrega-tion occurs only once for each output variable. The

    inputs to the aggregation process are truncated ormodified output fuzzy sets which are obtained fromthe output of the implication process. The outputof the aggregation process is a single fuzzy set thatrepresents the output variable. Since the aggregation

    method is commutative, the order in which the rulesare executed is not important.

    The method used for aggregation within the fuzzylogic agent implementation is the max method ex-pressed in Equation 4. If there is two rules with out-put fuzzy sets represented by 1y and

    2y then the out-

    put is provided by:

    y(w) = max(1y(w),

    2y(w)) (4)

    In order to get a crisp value for output y, a defuzzifi-cation process must be applied. The input to the de-fuzzification process is a fuzzy set (the aggregate out-put fuzzy set), and the output of the defuzzificationprocess is a single crisp number. The method usedfor defuzzification in the fuzzy logic agent implemen-tation is the centroid method. The centroid methodis typically the most commonly used defuzzificationmethod in the literature. It is the most widely usedtechnique because, when it is applied, the defuzzi-fied values tend to move smoothly around the outputfuzzy region (Pearson 2001).

    3.4 Setpiece Model

    In order to divide the actions an agent may undertakeinto manageable segments, to remove the necessity forone large highly complex rule-base, and to introducethe concepts of action competition and adaptation, asetpiece based approach is undertaken. Setpieces areessentially a description of a particular action thatan agent may perform as well as describing the worldstate in which a setpiece is applicable. Setpieces de-scribe the actions to undertake if a given setpiece ischosen in that they are constructed for each type ofplay that is desired. For instance a setpiece for mov-ing to the ball, which is based on certain conditions,may be implemented as described in the previous sec-tion in order to provide this ability to the agents.

    3.4.1 Setpiece Predictor

    The setpiece predictor consists of a fuzzy rule basedesigned to predict the validity of firing the setpiecegiven the current world state. The setpiece predic-tor accepts a vector of input fuzzy variables whichdescribe the current world state and applies them tothe fuzzy rule base as described in the previous sec-tion. The output of this fuzzy rule-base is a fuzzyvalue that provides the prediction for success of thissetpiece based on the current world state. This pre-diction value is then normalised in order to be com-parable to other setpiece predictions.

    3.4.2 Setpiece Actioner

    The actioner consists of a second fuzzy rule-basewhich instructs the system to perform a particulartask specific to the requirements of the setpiece. Thissecondary fuzzy rule-base allows for a fine grained de-gree of control over the specific actions of a setpiece,with different fuzzy outputs being possible for slightlydifferent world states.

    3.4.3 Setpiece Evaluator

    The evaluator evaluates the current world state ev-ery cycle against a fuzzy rule base of the requiredstate. The evaluator requires a description of the

    current world state as well as a description of theworld state at the time of firing the setpiece. Addi-tionally each setpiece evaluator requires a maximumtime, maxpayoff time, after which, if the setpiece is

  • 7/28/2019 CRPITV26JAmmerlaan

    4/9

    not successful, the evaluator can return a negative re-sult. The evaluator consists of a fuzzy rule-base defin-ing a fuzzy successful (or unsuccessful) result. Thisrule-base uses the current world state inputs for itsevaluation. The evaluator also obtains the setpiecepredictor confidence on the world state at the time offiring, in order to provide it as one of the inputs tothe modification function detailed below.

    Modifier Function The modification function

    is executed after the maximum amount of time al-lowed for a setpiece to evaluate to a positive resulthas expired. At this point the setpiece evaluator cal-culates the original setpiece prediction confidence andthe fuzzy evaluation result, applying the average ofthe two to the selection table in Table 1 in order toobtain the modifier to be applied.

    Table 1: Default modifier mappings

    Func-

    tion

    Modi-

    fier

    Situation

    0 - 30 ext remely L ow confidence, ext remely p oor

    result31 - 55 very Mo deratel y low confidence , ve ry

    poor result

    56 - 80 plus Medium confidence, p oor re sult

    81 - 90 somewhat Moderate confidence, somewhat

    successful result

    91 - 100 more or less High confidence, very successful

    Upon calculation of the modifier to be applied,the evaluator iterates through the setpiece predictorsrule-base, discovering those antecedents that evalu-ated to less than 1 based on the world state at thetime (less than 1 indicates a fuzzy decision based on

    this antecedent has been applied). This constraintis implemented in order that the modification takesplace only on those antecedents that influenced theoriginal decision. The selected modifier can then beapplied to the specific antecedents that had an impacton the setpiece confidence in that world state.

    3.5 Cooperative Adaptation

    Cooperation is implemented within the system on asetpiece by setpiece approach. This allows for greaterflexibility in construction of coordination abilities andin cooperative actions. Each agent has a model of thecurrent team world state as part of the fuzzy logicworld variables that can be drawn on for decision

    making. For instance, within each agent exists thepass to player ahead setpiece which cooperates withthe receive pass and intercept ball setpieces.

    In general within the Robocup soccer system, as inthe majority of cooperative interactions, an interac-tion between agents consists of two agents performingmutually beneficial operations. Adaptation of this in-teraction then, requires each agent to communicatetheir fuzzified degree of success or failure of the in-teraction to the corresponding agent in order for theappropriate modification to take place. When this isconsidered within the system described in the previ-ous section, it can be seen that the results of eachagents setpiece evaluator, after the interaction hastaken place, can be applied to the corresponding other

    agents setpiece. This allows for the impression ofeach agents interpretation of success upon the corre-sponding agent. Which provides an effective coopera-tive adaptation model, that allows multiple agents to

    interact and undergo modification based on the suc-cess or failure of their mutual interaction.

    The limitation imposed by the soccer server thatcommunication must take place between agents us-ing the say and hear protocols does not impede thiscooperative adaptation model. As each modifier ismerely a linguistic expression (such as extremely ormore or less) it can be transmitted directly, includ-ing an interpretation for the means of locating therelevant rule and antecedent. The fuzzy logic adapta-

    tion system is ideally suited to this environment dueto a minimal amount of information being requiredfor transmission.

    4 Results

    In order to effectively analyse the fuzzy logic adap-tation systems ability to improve its performance byadapting its underlying fuzzy membership functions,a set of agents have been implemented, which placesa high priority on a particular type of play, with theintention of allowing specific analysis of that play. Ageneral system consisting of multiple types of possibleplays would require a great amount of time for analy-sis as the system would need to be iterated for exten-sive periods in order to obtain sufficient quantities ofdata for analysis regarding the individual plays. Thusby restricting the possible actions undertaken by theagents in this implementation, the concept of fuzzylogic adaptation can be easily analysed, without ex-tensive data collection.

    In order to facilitate this requirement, the imple-mentation of the System can be described as follows.Two offensive agents are created each with specialisedskill sets relating to the abilities of a forward left wing/ centre midfield attacker (henceforth referred to asleft wing attacker) and a centre forward player. Theleft wing attacker consists of the following special set-piece descriptions (in addition to the extensive gen-eral skills setpieces):

    Dribbles the ball toward the left side of the goal(if possessed)

    Upon reaching the goal turn to look for a playerto pass the ball to

    Kick the ball to the other player.

    The centre forward player consists of the followingsetpiece descriptions:

    Dribble the ball toward the centre of the goal (ifpossessed)

    If the other player has the ball and the centre for-ward agent is not close to the goal, or the centreforward player cannot see the ball, move towardthe right side of the goal.

    Intercept the ball if it the ball is moving towardthe agent and is within a reachable angle

    If the ball is kick-able, the centre player looks forthe goal

    If the goal is visible and near and the ball is kick-able the centre player kicks the ball toward thegoal.

    An opposing agent is created with simple defensive

    capabilities, designed to imitate the last line of de-fence style of defence. The opposing agent consistsof the following setpiece descriptions:

  • 7/28/2019 CRPITV26JAmmerlaan

    5/9

  • 7/28/2019 CRPITV26JAmmerlaan

    6/9

    Figure 3: Scatter-plot of the ratio between successfuland unsuccessful predictions over time.

    Figure 4 provides the results of a one sample t-test on the data provided in Table 2. The one samplet-test is designed to identify the difference betweenthe mean of a sample and a value (Rudolf, Freund &Wilson 1997). In this case the value is set to 0.526which is the mean of the adaptation disabled data.This t-test then will produce the t-value and the sig-nificance of the difference in mean of the adaptation

    enabled data and the mean of the adaptation disableddata.

    Figure 4: One sample t-test on the adaptation en-abled data.

    Conclusion: In order to refute the null hypothesestwo conditions must be observed:

    1. There must be an indication of positive differencein mean; and

    2. This indication must be significant.

    From the t-test presented in Figure 4 it can readily beseen that the t value is positive, indicating that thedifference between the mean of the adaptation en-abled data and the test value is a positive one. Thesignificance of this positive difference is below 0.05,achieving the general statistical standard for signifi-

    cance1

    . This analysis provides sufficient evidence toreject the null hypotheses and suggest that there is adifference in the mean of the ratio of successfully pre-dicted plays vs. unsuccessfully predicted plays overtime for a particular adaptation enabled implementa-tion of System against an adaptation disabled imple-mentation of System.

    4.2 Statistical Test 2 - Response of Modifica-tion:

    The adaptation ability of the system should be suchthat a local maximum is reached with very few testinstances. This is due to the nature of the applicationdomain: there may be very few actual executions of

    a setpiece in a given game. In this test local max-ima are defined as the point at which there existsthe most positive mean difference compared to those

    1The general statistical standard for significance is 95% confi-dence for most applications.

    Table 4: Differences in means

    Cycles Successful

    Predictions

    Mean After Mean Before Difference

    0 .526

    500 .467 .6717 .526 .1457

    1000 .561 .7010 .4963 .2047

    1500 .688 .7244 .5179 .2045

    2000 .579 .7317 .5603 .1715

    2500 .633 .7699 .564 .2059

    3000 .875 .8154 .5756 .2399

    3500 .714 .7856 .6184 .1673

    4000 .857 .8571 .6303 .2268

    points around it. While this test restricts itself toidentifying the earliest local maxima, there may existhigher maxims at later stages of the game itself. Thisanalysis, then, attempts to discover the number of cy-cles before a local maxima is reached. This figure canthen be used to count the average number of execu-tions during the number of cycles. A local maximum

    is a good indication of achieving performance betterthan that of the control system (adaptation disabledimplementation) within the shortest possible time.

    The number of cycles required before a local max-ima is reached can be ascertained by calculating forevery cycle, the difference between the mean of thesuccessful predictions before the cycle, and the meanof the predictions after the cycle. Those cycle pointswith a difference greater than the cycle points sur-rounding them indicate that a local maxima has beenachieved. This is summarised in table 4 for the dataobtained from the optimal implementation of the Sys-tem discussed in Tests 1 and 2. The average meanfrom the adaptation disabled implementation is in-cluded at cycle 0 to provide a starting point for the

    analysis.It can readily be seen from Table 4 that the first

    local maxima lies between the cycle points 1000 and1500, it seems safe to assume that this can be approx-imated to 1250 cycles. A second local maxima can beidentified at the cycle point 3000, this appears to bethe true maxima for the given set of data.

    From the raw data, provided by the multiple it-erations of this implementation of the System, theaverage number of plays in a 1250 cycle block is 4.From the same data the average number of plays overa 3000 cycle block is 11.

    Conclusion: These results indicate that the Sys-

    tem is achieving a local maxima within 4 executionsof that setpiece and the corresponding positive or neg-ative modifications.

    4.3 Statistical Test 3 - Comparison withother Predictors:

    As discussed in the previous test the fuzzy logic adap-tation system described in section 3.4 is essentiallyfunctioning as a predictor, with a specific implemen-tation for each type of action to be predicted. Inthis test the predictive ability of the fuzzy logic eval-uator is compared to the predictive ability of othertypes of predictors on the Robocup problem domain.This comparison aims to provide evidence that the

    fuzzy logic predictor is able to predict, based on theraw data of the system, with a high degree of suc-cess. In order to provide the comparison, the rawdata was taken from the iterations of the adapta-tion disabled implementation of the System and con-

  • 7/28/2019 CRPITV26JAmmerlaan

    7/9

    Table 5: Results of other predictors

    Naive Bayes IBk C4.5

    59.96 62.5 65

    verted to the weka arff format. Weka is a collection ofmachine adaptation algorithms for solving real-worlddata mining problems and provides an efficient meansof evaluating a dataset (Witten 2000). The followingmachine adaptation algorithms were selected for com-parison:

    Naive Bayes: The Naive-Bayes predictor com-putes conditional probabilities of the classes given theinstance and picks the class with the highest poste-rior. Attributes are assumed to be independent, anassumption that is unlikely to be true, but the algo-rithm is nonetheless very robust to violations of thisassumption.

    IBk: IBk is an implementation of the k-nearestneighbours classifier that employs a distance metric.

    C4.5 decisions trees: C4.5 uses the concept ofinformation gain to make a tree of classificatory deci-sions with respect to a previously chosen target clas-sification. The information gain can be described asthe effective decrease in entropy (usually measured interms of bits) resulting from making a choice as towhich attribute to use and at what level.

    Table 5 provides the average of the successful pre-dictions after 300 iterations of each algorithm on thedata used by the multiple iterations of the adaptationdisabled implementation of the System (this includes

    several calculated data variables). These algorithmswere provided with a 66 / 33 split with 66% allocatedfor training and 33% allocated for evaluation.

    The results obtained from Test 3 (4.2) suggest thatthe system reaches an initial local maxima after 1250cycles. The mean of the successive positive predic-tions from this point forward is approximately 71%.If the second local maxima at 3000 cycles is consid-ered, the mean of the successive positive predictionsis approximately 81%.

    Conclusion: A machine adaptation algorithmthat has knowledge of a domain should perform bet-ter than an algorithm which has no knowledge beyondthe raw data. This is true for the case presented in

    Test 5 and due to this fundamental difference in ap-proach there can be no direct comparisons drawn be-tween the performance of other algorithms and thefuzzy logic classifier however, the difference betweenthe prediction results of the machine adaptation al-gorithms and that of the fuzzy classifier indicates apositive result.

    This difference in performance can be attributedto two factors:

    1. The inherent fuzziness of the system causes bet-ter prediction and handling of vague and impre-cise data; and

    2. The operators knowledge of the domain causes

    better prediction.

    4.4 Statistical Test 4 - Analysis of PredictionConfidence

    In the fuzzy logic system described in section 3.4, thereturn value of the setpiece indicator is a confidencelevel of to what degree a particular setpiece believesit will be successful if fired in the current world state.This test aims to analyse the prediction ability of thepredictor as it learns. False positives are those predic-tions in which the predictor suggested that it wouldbe successful and was in fact incorrect.

    H0: There is no decrease in prediction confidence forfalse positives in the adaptation enabled imple-mentation compared to the adaptation disabledimplementation

    Figures 6 and 5 display the data obtained fromaveraging the prediction confidence for each timesegment for the false positives, in the optimaliteration of the adaptation enabled implementationand the adaptation disabled implementation.

    Figure 5: Adaptation disabled prediction confidence

    Figure 6: Adaptation enabled prediction confidence

    The following Figure (7) presents the results of aone sample t-test performed on the adaptation en-abled data presented in a scatter-plot in Figure 6.This one sample t-test tests for a difference betweenthe mean of the adaptation disabled data and that ofthe adaptation enabled data.

  • 7/28/2019 CRPITV26JAmmerlaan

    8/9

    Figure 7: One way t-test on the adaptation enabledprediction confidence

    Conclusion: From the t-test presented in Figure 7it is readily apparent that there is a significant dif-ference between the mean of the adaptation enableddata series and that of the adaptation disabled dataseries. Moreover it is obvious from visual analysis ofthe data that this difference is negative, indicatingthat the prediction confidence on false positives is de-creasing for the adaptation enabled data series. Thisprovides sufficient evidence to reject the null hypothe-ses.

    The nature of the system described in section 3.4indicates that if a setpieces false positives decrease,another setpiece is more likely to be chosen in itsplace.

    4.5 Statistical Test 5 - Adaptation around op-positions actions with cooperation

    In Section 3.4 a description of the cooperative adapta-tion ability of the agents is discussed. While the pre-vious results included the impact of this cooperativeadaptation, this test proposes to attempt to isolatethe effect that the cooperative adaptation is havingon the individual agents interaction with the envi-ronment.

    The setpiece move to cross receiving position re-quires an agent to locate the other players goal, andmove into an optimal cross receiving position. Thisoptimal position involves, among other things, beingan optimal distance and direction from the opposingplayers in order to prevent them from interrupting theplay and an optimal distance and direction from thegoal. As the receiving agent and the providing agentinteract and adapt, the averages of the distances anddirections of the receiving agent to the objects in thefield should change to represent this adaptation.

    In order to effectively analyse and isolate the ef-fect of the cooperative adaptation, the variable ofdistance from the centre attacker and the defensiveplayer is selected for analysis. If this value changes

    over time compared to the adaptation disabled im-plementation of the System then it can be suggestedthat the System has succesfully discovered the opti-mal distance to maintain from the opposing players.

    H0: The distance between the centre attacker andthe defensive player does not change over time.

    The following figures display the plot of the raw datafor the variable distance between the centre attackerand the defensive player over time for both the adap-tation disabled implementation of the System and theadaptation enabled implementation of the System.

    Figure 8: Adaptation disabled distance between thecentre attacker and the defensive player over time.

    Figure 9: Adaptation enabled distance between thecentre attacker and the defensive player over time.

    Conclusion: From visual observation of the lineartrends on the plots in Figures 8 and 9 it can read-ily be seen that the distance between the centre at-tacker and the defensive player is increasing in the theadaptation plot, and remaining approximately linearin the no adaptation plot. Observation of a trend issufficient evidence for this test. Due to the random-ness apparent in this variable, a t-test (which relieson variance) would not be able to provide a sufficientdegree of confidence. This observable upward trend,however, provides sufficient evidence to reject the nullhypothesis.

    The results obtained from this test indicate thatthe system cooperatively adapts to the opposing

    agents actions. While the difference between the noadaptation case and the adaptation case is not overlylarge, this indicates that the original setpiece rule-base definition for this variable was reasonably good,only requiring moderate amounts of modification be-fore attaining an optimal definition.

    5 Conclusion and Further Work

    This paper has presented an investigation into theconstruction and performance of a cooperative adap-tive fuzzy logic system for Robocup, in order to de-termine the viability of such an approach in a com-plex, strict, real-time and imprecise domain. Firstly,the development of a fuzzy logic system provided the

    basis for the construction of the cooperative adap-tive agents. Secondly the development of the agentswas undertaken. Thirdly, the resulting system wasstatistically analysed. This system produced positiveresults which are summarised as follows.

  • 7/28/2019 CRPITV26JAmmerlaan

    9/9

    The tests on the System concluded the following:

    The system increases its ability to predict a suc-cessful play;

    The modifier output combination adaptationprovides an optimal medium between the two ex-tremes of stability and adaptability;

    The system is achieving a local maxima in pre-diction ability within 4 executions;

    The system provides better prediction abilitywith 4 training points and even better predictionability after 11 training points than 3 classifiermachine learning algorithms each with 88 train-ing points;

    The system reduces error as the prediction con-fidence for false positives decreases; and

    The system is effectively cooperatively adaptingaround the oppositions playing style.

    In summary, Fuzzy Logic can be used for coopera-tive adaptive real time agent control. The adapta-tion and cooperative adaptive methods implementedoperate successfully. These conclusive results pro-vide evidence that the system is operating success-fully and justifies further work to develop and refinethe proposed approach to cooperative adaptive real-time fuzzy logic adaptation systems.

    5.1 Further Work

    Further development of the fuzzy adaptive controllerwould take the following form:

    5.1.1 Hierarchical Setpiece Implementation

    The current approach for controlling state of the fuzzy

    adaptive agent is to provide setpieces capable of com-peting across all states. This is considered somewhatrestrictive due to the complexity of the constructionof the predictors for each setpiece. In order to rec-tify this it is suggested that a System created wheren-levels of setpiece prediction exist. This would al-low for a much finer granularity of control over thecurrent actions of an agent even in changing worldstates.

    5.1.2 Individual Modifier Function for eachSetpiece

    The fuzzy logic adaptive agent uses a single genericfuzzy logic modifier function (see 3.4.3). A possible

    improvement on this approach could involve speci-fying for each setpiece an optimal modifier functionmapping, this could take the form of a further fuzzyrule base, which itself could be optimised.

    5.1.3 Use of better modifiers

    The fuzzy logic adaptive agent uses a simple set oflinguistic modifiers to achieve adaptation on the un-derlying fuzzy sets. Recent advances on linguisticmodifiers (Marin-Blazquez & Shen 2001) are definingnew types of modifiers that better represent linguis-tic terms and better modify the underlying fuzzy sets,such applications include contrast modifiers that in-crease and decrease the fuzziness of a system as well

    as second generation fuzzy modifiers.

    5.1.4 Acquiring New Rules

    The implemented system relies on the underlyingrule-base to be both partially correct and descriptive,it is proposed that a System created that constructadditional rules both within setpiece prediction andwithin setpiece actions. This could take the form ofa fuzzy rule creator rule base that suggests appropri-ate new rules based on the evaluations of the actionsundertaken on the data.

    6 References

    References

    Chen, M. (2002), Robocup Soccer Server Users Man-ual.

    Kruse, R. & Nrnberger, A. (1998), Learning methodsfor fuzzy systems, Non-Linear ElectromagneticSystems: Advanced Techniques and Mathemati-cal Methods .

    Langholz, G. (1992), Hybrid Architechtures for Intel-ligent Systems, CRC Press.

    Marin-Blazquez, J. G. & Shen, Q. (2001), Linguistichedges on trapezoidal fuzzy sets: A revisit, IEEEInternational Conference on Fuzzy Systems.

    Nauck, D., Flawonn, F. & Kruse, R. (1992), Fuzzysets, fuzzy controllers, and neural networks.

    Nauck, D. & Kruse, R. (2002), What are neuro-fuzzyclassifiers?.

    Pearson (2001), Fuzzy Logic Fundamentals.

    Rudolf, J., Freund, W. & Wilson, J. (1997), Statisticalmethods, San Diego : Academic Press.

    Witten, F. E. (2000), Data Mining, Practical machine

    learning tools and techniques with java Imple-mentations, Morgan Kaufmann.