• No se han encontrado resultados

1.10 Atributos sensoriales

1.12.1 Análisis de varianza ANOVA

In this chapter we investigated the harmony search algorithm and algorithms based on it. As a metaheuristic algorithm harmony search cannot guarantee that the global optimal solution will be found but often a good estimate is all that is needed. Like other similar metaheuristic algorithms such as SA, PSO and genetic algorithms, harmony search is most useful in situations where traditional optimisation algorithms cannot be used or would take too long to find a good solution.

Many optimisation problems translate to objective functions that are discontinuous, multi-modal, non-differentiable or a combination of these. These are all characteristics that cause traditional gradient based algorithms to fail. Other commonly encountered functions exhibit behaviour that cause gradient based techniques to take impractically long to converge. These are all examples of situations where metaheuristic algorithms are almost exclusively used.

Harmony search is easy to implement, and as we saw can easily be applied and adapted to solve almost any problem that can be modelled as the minimisation or maximisation of an objective function. The objective function itself can be continuous or discrete and a smooth gradient is not required. No initial solutions or carefully chosen starting points are required, in fact the objective function is considered a black box by harmony search. Any procedure that takes as input a solution vector and gives a fitness score as output can be used as an objective function.

These properties make harmony search very attractive and it has been successfully used in a wide range of disciplines including computer vision, vehicle routing, music composition, solving Sudoku and various engineering disciplines[2, 5, 23, 51–53].

2.8 Chapter Conclusions

While harmony search has proven very effective at avoiding local optima and effi- ciently covering the search space, the main disadvantage of this algorithms is its weak exploitation of the local search space. This sometimes leads to low accuracy in the final solution. We investigated various approaches to mitigating this shortcoming in- cluding the popular GHS algorithm and SAHS which takes an opposite approach (see Sections 2.6.3 and 2.6.4).

In some situations a small HM combined with continuous updates to the HM can lead to a rapid decrease in the diversity of the HM. A loss of diversity in the HM often leads to premature convergence to a local optima. Depending on the size of the optima’s basin of attraction, it may take many iterations to escape from this local optima leading to very slow convergence and overall poor performance. One solution to this problem is the DLHS algorithm which we investigated in Section 2.6.5. DLHS attempts to maintain diversity in the HM by dividing it into multiple sub-HM’s that converge independently.

Due to its simplicity and ease of implementation, harmony search is easily com- bined with other algorithms to form harmony search hybrids. This is usually another approach at mitigating some of harmony search’s shortcomings, but is also done simply to improve its performance. We investigated five popular harmony search hybrids in Section 2.7 that combine harmony search with proven successful algorithms like SA and PSO. All five report that the hybrid has better performance than both original harmony search and the algorithm that was combined with it. This is by no means an exhaustive list of harmony search hybrids and new ones are being developed continually. From this I conclude that harmony search is a very flexible and adaptable algo- rithm. It has been used on its own with large success but can also benefit greatly from the combination with other optimisation approaches. As we saw in Section 2.6, performance can be enhanced by adapting and modifying certain aspects of its design. For example, many derived algorithms like GHS just modify the improvisation step to improve local exploitation. In addition, by dynamically adjusting some parameters during optimisation we not only potentially improve performance, but we also reduce the number of parameters further simplifying implementation. Examples of this include IHS, GHS, SAHS, DLHS and many others that were investigated in this chapter.

In the chapters that follow I introduce four novel algorithms that were all derived from harmony search. Unlike most of the algorithms discussed in this chapter these four

algorithms were adapted to solve a specific problem instead of being designed for generic use. While all four algorithms were developed for use in computer vision applications, we will see that some of the methods developed therein can be used generically.

3

Visual Tracking

One of the most interesting aspects of the world is that it can be considered to be made up of patterns.

A pattern is essentially an arrangement. It is

characterised by the order of the elements of which it is made, rather than by the intrinsic nature of these elements .

–Norbert Wiener

The aim of visual tracking is to determine the location of some object of interest through a sequence of images. The object of interest is typically modelled as one or more image features combined into a vector called a feature vector. The aim is then to search each frame in the sequence for a specific feature vector and determine its location in the image as image coordinates.

Visual tracking is used in many applications including surveillance [54, 55], driver assistance [56], human-computer interaction [57], augmented reality [58] and video com- munication [59]. Most of these applications use a video sequence as input and require real-time performance. Exhaustively searching the entire image frame until the image feature is found, is therefore not practical as this approach would be too slow for real- time performance. Instead, an intelligent algorithm is needed that can take advantage of temporal information from previous frames to quickly find the relevant feature vector without having to search the entire frame.

3.1

Problem Statement

Visual tracking methods typically focus on one of two possible approaches called the top-down and bottom-up approaches. When the focus is on target representation and its localisation we say that it is a bottom-up approach. A bottom-up approach is often used in applications where the target often deforms or changes its appearance. In contrast, a top-down approach focuses on filtering and data association, or in other words, the target dynamics are analysed and used with scene priors to predict the target’s location. In applications where real-time performance is important and the target moves around a scene in a way that can be estimated, the focus is usually on a top-down approach.

While the focus may be towards one of these approaches, to some extent both are important and they can therefore also be seen as two components of a tracking algorithm. Focus between the top-down and bottom-up aspects of tracking is dependent on the application, specifically the target’s expected movement in the scene and how well it can be modelled as an image feature.

The most popular method for modelling the visual tracking problem is to use the probabilistic state space approach that is used to model discrete-time dynamic sys- tems [60]. The target’s location and feature vector representation is represented as a dynamic state sequence X0:t = {x0,x1, . . . ,xt} specified by state transition function

defined as

xt=f(xt−1,v) , (3.1)

wherev is a noise term that is assumed to be independent and identically distributed (i.i.d). The state vector,x, typically has many components representing the target’s lo- cation, speed, acceleration and image features. The state transition equation describes a deterministic Markov process. This means that past and future data are statistically independent when we know the current state xt [61]. This is known as the Markov

assumption and implies that the current state, xt, is only dependent on the previous

state,xt−1, instead of the set of past states.