# cits7212 computational intelligence ci technologies

Post on 28-Dec-2015

216 views

Embed Size (px)

TRANSCRIPT

CITS7212 Computational IntelligenceCI Technologies

Particle swarm optimisationA population-based stochastic optimisation techniqueEberhart and Kennedy, 1995Inspired by bird-flocking Imagine a flock of birds searching a landscape for foodEach bird is currently at some point in the landscapeEach bird flies continually over the landscapeEach bird remembers where it has been and how much food was thereEach bird is influenced by the findings of the other birdsCollectively the birds explore the landscape and share the resulting food

PSOFor our purposesThe landscape represents the possible solutions to a problem (i.e. the search space)Time moves in discrete steps called generationsAt a given generation, each bird has a position in the landscape and a velocityEach bird knows Which point it has visited that scored the best (its personal best pbest)Which point visited by any bird that scored the best (the global best gbest)At each generation, for each birdUpdate (stochastically) its velocity v, favouring pbest and gbest Use v to update its positionUpdate pbest and gbest as appropriate

PSOInitialisation can be by many means, but often is just done randomlyTermination criteria also vary, but often termination is either After a fixed number of generations, or After convergence is achieved, e.g. if gbest doesnt improve for a whileAfter a solution is discovered that is better than a given standardPerformance-wiseA large population usually gives better resultsA large number of generations gives better resultsBut both obviously have computational costs Clearly an evolutionary searching algorithm, but co-operation is via gbest, rather than via crossover and survival as in EAs

Ant colony optimisationAnother population-based stochastic optimisation techniqueDorigo et al., 1996Inspired by colonies of ants communicating via pheromones Imagine a colony of ants with a choice of two paths around an obstacleA shorter path ABXCD vs. a longer path ABYCDEach ant chooses a path probabilistically wrt the amount of pheromone on eachEach ant lays pheromone as it moves along its chosen path Initially 50% of ants go each way, but the ants going via X take a shorter time, therefore more pheromone is laid on that path Later ants are biased towards ABXCD by this pheromone, which reinforces the processEventually almost all ants will choose ABXCD Pheromone evaporates over time to allow adaptation to changing situations

ACOThe key points are thatPaths with more pheromone are more likely to be chosen by later antsShorter/better paths are likely to have more pheromone Therefore shorter/better paths are likely to be favoured over timeBut the stochastic routing and the evaporation means that new paths can be explored

ACOConsider the application of ACO to the Traveling Salesman ProblemGiven n cities, find the shortest tour that visits each city exactly onceGiven m ants, each starting from a random cityIn each iteration, each ant chooses a city it hasnt visited yetAnts choose cities probabilistically, favouring links with more pheromone After n iterations (i.e. one cycle), all ants have done a complete tour, and they all lay pheromone on each link they used The shorter an ants tour, the more pheromone it lays on each linkIn subsequent cycles, ants tend to favour links that contributed to short tours in earlier cyclesThe shortest tour found so far is recorded and updated appropriatelyInitialisation and termination are performed similarly to PSO

Learning Classifier SystemsReading:M. Butz and S. Wilson, An algorithmic description of XCS, Advances in Learning Classifier Systems, 2001O. Sigaud and S. Wilson, Learning classifier systems: a survey, Soft Computing A Fusion of Foundations, Methodologies and Applications 11(11), 2007R. Urbanomwicz and J. Moore, Learning classifier systems: a complete introduction, review, and roadmap, Journal of Artificial Evolution and Applications, 2009

LCSsInspired by a model of human learning:frequent update of the efficacy of existing rulesoccasional modification of governing rulesability to create, remove, and generalise rules LCSs simulate adaptive expert systems adapting both the value of individual rules and the structural composition of rules in the rule setLCSs are hybrid machine learning techniques, combining reinforcement learning and EAsreinforcement learning used to update rule qualityan EA used to update the composition of the rule set

Algorithm StructureAn LCS maintains a population of condition-action-prediction rules called classifiersthe condition defines when the rule matches the action defines what action the system should takethe prediction indicates the expected reward of the actionAt each step (input), the LCS:forms a match set of classifiers whose conditions are satisfied by the inputchooses the action from the match set with the highest average reward, weighted by classifier fitness (reliability)forms the action set the subset of classifiers from the match set who suggest the chosen actionexecutes the action and observes the returned payoff

Algorithm StructureSimple reinforcement learning is used to update prediction and fitness values for each classifier in the action setA steady-state EA is used to evolve the composition of the classifiers in the LCSthe EA executes at regular intervals to replace the weakest members of the populationthe EA operates on the condition and action parts of classifiersExtra phases for rule subsumption (generalisation) and rule creation (covering) are used to ensure a minimal covering set of classifiers is maintained

An ExampleDiagram taken from a seminar on using LCSs for fraud detection, by M. Behdad

LCS VariantsThere are two main styles of LCS algorithms:Pittsburgh-style: each population member represents a separate rule set, each forming a permanent teamMichigan-style: a single population of rules is maintained; rules form ad-hoc teams as requiredLCS variants differ on the definition of fitness:strength-based (ZCS): classifier fitness is based on the predicted reward of the classifier and not its accuracyaccuracy-based (XCS): classifier fitness is based on the accuracy of the classifier and not its predicted reward, thus promoting the evolution of accurate classifiersXCS generally has better performance, although understanding when remains an open question

Fuzzy logic facilitates the definition of control systems that can make good decisions from noisy, imprecise, or partial informationZadeh, 1973 Two key conceptsGraduation: everything is a matter of degree e.g. it can be not cold, or a bit cold, or a lot cold, or Granulation: everything is clumped, e.g. age is young, middle-aged, or oldFuzzy systemsage10oldmiddle-agedyoung

Fuzzy LogicThe syntax of Fuzzy logic typically includes propositions ("It is raining", "CITS7212 is difficult", etc.), and Boolean connectives (and, not, etc.)The semantics of Fuzzy logic differs from propositional logic; rather than assigning a True/False value to a proposition, we assign a degree of truth between 0 and 1, (e.g. v("CITS7212 is difficult") = 0.8)Typical interpretations of the operators and and not are v(not p) = 1 v(p)v(p and q) = min { v(p), v(q) } (Godel-Dummett norm)Different semantics may be given by varying the interpretation of and (the T-norm). Anything commutative, associative, monotonic, continuous, and with 1 as an identity is a T-norm. Other common T-norms are: v(p and q) = v(p)*v(q) (product norm) and v(p and q) = max{v(p) + v(q) -1, 0} (Lukasiewicz norm)

Vagueness and UncertaintyThe product norm captures our understanding of probability or uncertainty with a strong independence assumption prob(Rain and Wind) = prob(Rain) * prob(Wind)The Godel-Dummett norm is a fair representation of Vagueness:If its a bit windy and very rainy, its a bit windy and rainy Fuzzy logic provides a unifying logical framework for all CI Techniques, as CI techniques are inherently vagueWhether or not it is actually implemented is another question

A fuzzy control system is a collection of rulesIF X [AND Y] THEN Ze.g. IF cold AND warming-up THEN open heating valve slightlySuch rules are usually derived empirically from experience, rather than from the system itself Attempt to mimic human-style logic Granulation means that the exact values of any constants (e.g. where does cold start/end?) are less important The fuzzy rules typically take observations, and according to these observations membership of fuzzy sets, we get a fuzzy action The fuzzy action then needs to be defuzzified to become a precise outputFuzzy Controllers

Fuzzy ControlApplying Fuzzy Rules

Image from http://www.faqs.org/docs/fuzzy/

Recommended