III. MARCO TEÓRICO
3.4. Normas Generales Presupuestarias
There are not many algorithms that can effectively and efficiently train neural networks. One very efficient training algorithms used with neural networks is the back- propagation algorithm. Back-propagation can propagate gradients backwards, meaning that the inputs into the neural network are not sent to the network in the order that they arrive, but are transmitted in reverse order.
6.4.1 Initialising and convergence of neural networks
Neural networks make use of weights. Weight is a value that is given to an item or a feature in a neural network. In a linear model, weights are initially initialised to zero. Neural networks do not follow the same implementation structure as linear models. The initialisation to zero is never a good idea in a neural network system because the algorithm gets stuck with an unwanted solution and the results will not be accurate (Nilsson, 1998). When setting the weight to zero and running the neural network, the results will lean more towards a linear system.
6.4.2 Decision Trees
The basic premise of machine learning is to predict the future based on past events. In some cases, this is just a guessing game. To gain a better understanding of what machine learning is, we must look at decision trees (Nilsson, 1998).
Decision trees are a simple underlying implementation of machine learning that offer excellent results. As with most cases, a model should be able to solve a simple problem utilising processes and rules. The most natural kind of problems that decision trees attempt to address are known as binary problems. Binary problems have two simple answers to a question, usually being yes or no (Daume, 2012).
70
Figure 6.2: Decision tree (Daume, 2012)
The decision tree's outcome and implementation are performed in a tree format (Daume, 2012). Figure 6.2 shows an example of a decision tree. In the implementation of decision trees, it can be decided whether the decision trees can make assumptions. If the assumption is purely random, then the result will not provide any valuable information. It will merely cause unwanted effects to be generated.
Using a decision tree on binary problems is a good idea, as it provides excellent and relevant information that can be used to predict results. However, a decision tree does not come without its unique set of problems.
6.4.3 Learnability
The success or failure of an algorithm depends on the environment’s properties. In cases where an environment makes use of sensors, noise in the environment can cause the outcome to be incorrect. One of the most common places where noise might occur is in the actual data that is being analysed by the machine learning algorithm. In the data set, a typo is considered as noise, and it can have a profound influence on the results that are found in the analysis, and can cause tainted effects (Daume, 2012).
Chapter 6: Machine learning
71
One aspect that rarely affects the results of a machine learning algorithm is bias. Bias might pull the correct result away from the actual result. Changing the learning algorithm will not create less bias because the teacher must provide some helpful information related to the environment. If the teacher is biased, the algorithm tends to lean in an incorrect direction (Daume, 2012).
6.5 Conclusion
Minimising human error in a software system helps to promote higher quality results. Having little or no interaction with humans, software systems are one of the solutions to minimise human error. Machine learning has the ability to operate in an environment with no human intervention. One place where human intervention always occurs is in an environment where a user is used for machine learning.
Machine learning is not only good at analysing data with less errors than users, but it can also recognise patterns in an environment better than a human can. The most common way that patterns are recognised is by means of analysing data from the environment using some statistical theory.
The techniques that can be used to achieve less human error when analysing data and picking up effective patterns, are dependent on the problem domain. Machine learning has three major models that can be used to achieve these two goals.
Machine learning can be implemented in a multi-agent system to help solve the problem of managing resources in a smart antenna grid. Understanding the different models that can be used in systems aids in understanding which model can be used in a smart antenna grid.
Since the prototype makes use of machine learning to determine patterns in device movement in the smart grid a short chapter is required to discuss machine learning. This chapter has helped to answer the research question: How can multi-agent
72
learning, the different types of machine learning, and when to use it, has helped to form an understanding of where machine learning might fit into a smart antenna grid, as machine learning forms part of the multi-agent system.
Chapter 6 was the final chapter of the literature review. The next part of the dissertation is the model overview, which focuses on the implementation of a model that attempts to improve resource management in a smart antenna grid. The model overview looks at the different agents that formed part of the resource management and the results generated by the model.
Chapter 7 discusses the Smart Grid Management System (SGMS) model concentrating on the agents that were used to operate in the system, and some of the components that formed part of the different agents. The chapter focuses on answering the research question: How can multi-agent systems be integrated into a
73