• No results found

Automated Performance Optimization of GSM/EDGE Network Parameters

N/A
N/A
Protected

Academic year: 2021

Share "Automated Performance Optimization of GSM/EDGE Network Parameters"

Copied!
72
0
0

Loading.... (view fulltext now)

Full text

(1)

Institutionen för systemteknik

Department of Electrical Engineering

Examensarbete

Automated Performance Optimization of

GSM/EDGE Network Parameters

Examensarbete utfört i kommunikationssystem vid Tekniska högskolan i Linköping

av

Jonas Gustavsson LiTH-ISY-EX--09/4310--SE

Linköping 2009

Department of Electrical Engineering Linköpings tekniska högskola

Linköpings universitet Linköpings universitet

(2)
(3)

GSM/EDGE Network Parameters

Examensarbete utfört i kommunikationssystem

vid Tekniska högskolan i Linköping

av

Jonas Gustavsson LiTH-ISY-EX--09/4310--SE

Handledare: Mikael Olofsson

isy, Linköpings universitet

Erik Magnusson

EuP PS BSS I&V, Ericsson

Examinator: Mikael Olofsson

isy, Linköpings universitet

(4)
(5)

Division of Communication Systems Department of Electrical Engineering Linköpings universitet

SE-581 83 Linköping, Sweden

2009-12-18 Språk Language  Svenska/Swedish  Engelska/English   Rapporttyp Report category  Licentiatavhandling  Examensarbete  C-uppsats  D-uppsats  Övrig rapport  

URL för elektronisk version

http://www.commsys.isy.liu.se http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-52565 ISBNISRN LiTH-ISY-EX--09/4310--SE

Serietitel och serienummer Title of series, numbering

ISSN

Titel Title

Automatiserad prestandaoptimering av GSM/EDGE-nätverksparametrar Automated Performance Optimization of GSM/EDGE Network Parameters

Författare Author

Jonas Gustavsson

Sammanfattning Abstract

The GSM network technology has been developed and improved during several years which have led to an increased complexity. The complexity results in more network parameters and together with different scenarios and situations they form a complex set of configurations. The definition of the network parameters is gen-erally a manual process using static values during test execution. This practice can be costly, difficult and laborious and as the network complexity continues to increase, this problem will continue to grow.

This thesis presents an implementation of an automated performance opti-mization algorithm that utilizes genetic algorithms for optimizing the network parameters. The implementation has been used for proving that the concept of automated optimization is working and most of the work has been carried out in order to use it in practice. The implementation has been applied to the Link Qual-ity Control algorithm and the Improved ACK/NACK feature, which is an apart of GSM EDGE Evolution.

Nyckelord

Keywords GSM, EDGE, Link Quality Control, LQC, Genetic Algorithms, Metaheuristics, automation

(6)
(7)

Abstract

The GSM network technology has been developed and improved during several years which have led to an increased complexity. The complexity results in more network parameters and together with different scenarios and situations they form a complex set of configurations. The definition of the network parameters is gen-erally a manual process using static values during test execution. This practice can be costly, difficult and laborious and as the network complexity continues to increase, this problem will continue to grow.

This thesis presents an implementation of an automated performance opti-mization algorithm that utilizes genetic algorithms for optimizing the network parameters. The implementation has been used for proving that the concept of automated optimization is working and most of the work has been carried out in order to use it in practice. The implementation has been applied to the Link Quality Control algorithm and the Improved ACK/NACK feature, which is an apart of GSM EDGE Evolution.

Sammanfattning

GSM-nätsteknologin har utvecklats och förbättrats under lång tid, vilket har lett till en ökad komplexitet. Denna ökade komplexitet har resulterat i fler nätverkspa-rameterar, tillstånd och standarder. Tillsammans utgör de en komplex uppsättning av olika konfigurationer. Dessa nätverksparameterar har hittills huvudsakligen bestämts med hjälp av en manuell optimeringsprocess. Detta tillvägagångssätt är både dyrt, svårt och tidskrävande och allt eftersom komplexiteten av GSM-näten ökar kommer problemet att bli större.

Detta examensarbete presenterar en implementering av en algoritm för automa-tiserad optimering av prestanda som huvudsakligen använder sig av genetiska al-goritmer för att optimera värdet av nätverksparametrarna. Implementeringen har använts för att påvisa att konceptet med en automatiserad optimering fungerar och det mesta av arbetet har utförts för att kunna använda detta i praktiken. Im-plementeringen har tillämpats på Link Quality Control-algoritmen och Improved ACK/NACK-funktionaliteten, vilket är en del av GSM EDGE Evolution.

(8)
(9)

Acknowledgments

I would like to thank:

Erik Magnusson for supervising, feedback and our discussions. Mikael Olofsson for helping me in writing my thesis and your

excellent courses.

Erik Persbo for helping me troubleshoot THC, the BSC, the BB, ABIS, ATE GUI, [insert acronym here]. Olof Manbo for assisting me with your technical expertise. Håkan Axelsson for assisting me with your technical expertise. Roland Sevegran for giving me this opportunity.

Torbjörn Larsson for your advices about the choice of a suitable optimization algorithm.

Christian S. Perone from Brazil, for your Python library Pyevolve [20] and personal support of it.

www.di.fm for the endless hours of music that has put my mind in a state of trance, helping me to focus on the thesis. All classmates I would have given up a long time ago without you

people. Thanks for a great time!

Hanna For three years of love.

(10)
(11)

Contents

1 Introduction 1

1.1 Background . . . 1

1.2 Thesis Objective . . . 1

1.3 Objectives . . . 1

1.4 Organization of this Thesis . . . 2

2 Theoretical Background of GSM 3 2.1 General . . . 3

2.2 Data Mapping . . . 4

2.3 Modulation . . . 4

2.4 The Evolution of GSM Data Transmission . . . 5

2.4.1 GSM Phase 1 . . . 5

2.4.2 GSM Phase 2+ . . . 5

2.4.3 General Packet Radio Service . . . 6

2.5 The GSM Network . . . 6

2.6 Enhanced Data for Global Evolution . . . 7

2.6.1 The Modulation in EDGE . . . 8

2.6.2 Link Quality Control in EDGE . . . 9

2.6.3 Improved ACK/NACK in Evolved EDGE . . . 11

3 Problem and Solution Description 15 3.1 The Underlying Problem . . . 15

3.2 The Existing Solution . . . 15

3.3 General Description of the New Solution . . . 17

3.4 The Test Environment - THC . . . 19

3.4.1 The Setup . . . 19

3.4.2 Operation of THC . . . 20

3.5 Metaheuristics . . . 22

3.5.1 Genetic Algorithms . . . 23

3.6 Limitations . . . 25

3.6.1 Limitations of the Setup . . . 25

3.6.2 Limitations of the Problem . . . 27

3.6.3 Simplifications of the Problem . . . 27 ix

(12)

x Contents

4 Implementation 29

4.1 The Crossover Operator . . . 29

4.1.1 Nomenclature . . . 29

4.1.2 Help Function . . . 30

4.1.3 The Parameters . . . 31

4.1.4 The Tables . . . 31

4.2 The Mutation Operator . . . 33

4.2.1 The Parameters . . . 33 4.2.2 The Tables . . . 35 4.3 Selection . . . 35 4.4 Fitness . . . 36 5 Results 37 5.1 File Size . . . 37 5.2 Optimization . . . 39

5.3 Quality of Found Optimum . . . 40

5.4 Optimization Without Elitism . . . 41

5.5 Summary . . . 42

6 Future Research and Conclusions 45 6.1 Future Research . . . 45

6.1.1 Algorithm Parameters to Adjust . . . 45

6.1.2 Improvements in the GA Implementation . . . 46

6.1.3 Improvements in Usage . . . 48

6.1.4 A Different Approach . . . 49

6.1.5 Beyond the APOA . . . 49

6.2 Conclusions . . . 50

Bibliography 53

A Data of File Sizes 55

(13)

Abbreviations

3GPP 3rd Generation Partnership Project

8-PSK Eight-Phase Shift Keying

ACK/NACK Acknowledged/Not Acknowledged

AF Automatic Framework

APOA Automated Performance Optimization Algorithm

BEP Bit Error Probability

BLER Block Error Rate

BSC Base Station Controller

BTS Base Transceiver Station

C/I Carrier to Interference level

CV Coefficient of Variation

EDGE Enhanced Data Rates for Global Evolution

EGPRS Enhanced GPRS

GA Genetic Algorithms

GGSN Gateway GPRS Support Node

GMSK Gaussian Minimum Shift Keying

GPRS General Packet Radio Service

GSM Global System for Mobile Communication

IAN Improved Acknowledged/Not Acknowledged

LQC Link Quality Control

MCS Modulation and Coding Scheme

MS Mobile Station

RLC Radio Link Control

SGSN Serving GPRS Support Node

TDMA Time Division Multiple Access

THC Test Harness Core

TU3 Typically Urban, 3km/h

(14)

Chapter 1

Introduction

1.1

Background

The GSM network has been developed and improved during several years which has led to an increased complexity. The complexity results in more network parameters and together with different scenarios and situations they form a complex set of configurations.

The definition of the network parameters is generally a manual process using static values during test execution. This practice can be costly, difficult and la-borious and as the network complexity continues to increase, this problem will continue to grow.

A deeper description of the background of this thesis will follow in chapter 3.1.

1.2

Thesis Objective

The amount of automation applied in the definition of network parameters has until now been limited. The main objective for this thesis is to investigate if it is possible to develop an automated performance optimization algorithm for GSM/EDGE networks in order to find the best configuration of some chosen net-work parameters by using a metaheuristic. The second objective is to create an implementation that is fully usable. The key question to answer in this thesis is:

Is it practically possible to automate the process of finding the best configuration of network settings?

If the answer is yes, it is likely that such a solution will result in a better performance at a lower cost.

1.3

Objectives

The outline of this thesis can be grouped into a number of activities: 1

(15)

• Perform a study of literature of the most common metaheuristics and choose a suitable metaheuristic for this problem.

• Choose a specific set of network parameters that will be used as an example during development.

• Investigate the possibilities of using the metaheuristic by making an imple-mentation of it with the help of the existing test environment, THC. • Test the software for automated performance optimization algorithm. • Draw conclusion whether the main objective of the thesis has been fulfilled. • Fulfill the second objective by completing the implementation to a fully

op-erational state.

1.4

Organization of this Thesis

Chapter 2 gives the theoretical background of GSM that is needed in order to understand the problem and the solution.

Chapter 3 explains the background of the problem in more depth than chapter 1.1 and gives a more extensive description of the solution than chapter 1.2. It also presents the tools and theory that has been used for implementing the solution and the limitations and simplifications that has been made about the problem.

Chapter 4 describes the implementation of the metaheuristic. Chapter 5 presents the results of the measurements and tests done.

Chapter 6 presents the possible improvements and conclusions of the work done in this thesis.

(16)

Chapter 2

Theoretical Background of

GSM

In this chapter, a general overview will be given in chapter 2.1 and the chapters afterwards describes the technical details that are central in this thesis. As EDGE is a result of the evolution of GSM, it is necessary to briefly describe the basics of it’s predecessors. Since they all are complex technologies, this also means that there are quite a lot of things that will not be mentioned about them, mainly due to it’s lack of relevance in this thesis, and some things will be saved to chapter 2.6. The focus will be on the effective user data-rates, since that’s the focus of this thesis. But first the general overview of GSM.

2.1

General

GSM is an abbreviation for Global System for Mobile communication, and the specification is maintained and developed by the 3rd Generation Partnership Project (3GPP) and is often referred to as the second generation mobile telephony, 2G.

One might question why a further development of GSM is needed in the pres-ence of third generation (3G) networks like UMTS. The GSM system is today the most widely spread mobile telephony technology, with over 3 billion users spread over 219 countries and 80% of the world’s mobile subscriptions1, accoring to GSM Associtation [1] and WCIS [3]. This means that the market for improvements of GSM is huge.

1These figures can be compared to the third generation technology UMTS, which has about

380 million subscribers in 105 countries [2] and 5% of the worlds mobile subscriptions.

(17)

2.2

Data Mapping

This brief summary will not dig deep into data mapping and the different frames, and the reader may find a more in depth explanation in [6, Ch. 15.2.1].

GSM uses Time Division Multiplex together with Frequency Division Duplex for dividing the channel into several sub-channels. There is a hierarchy of different frames, varying in size. This explanation will start from the level of the conven-tional frame, which has a duration of 4.615 msec and is divided into eight slots. This gives each slot a duration of 577 µsec. One slot fits exactly one burst, which is a short RF-transmission. Each burst contains training-, tail-, flag-, guard- and data-symbols. The interesting part is the data symbols. One burst can carry 2×57 information symbols. Have a look at figure 2.1

Frame = 4.6155 msec

Data

(57 symbols)

Data

(57 symbols)

Slot / Burst = 577 µsec

1 2 3 4 5 6 7 8

Figure 2.1. Data Mapping (Empty fields in the burst are mentioned in the text)

The data consists of coded user data, coded and uncoded control bits and together they form a radio block. The total size of a radio block is counted in symbols, and is always 456 symbols. This means that one radio block needs four bursts to be transmitted. The radio block is also interleaved over these four bursts, to counteract burst errors. The relative size of user and control data depends on modulation and coding used. User data is divided into one or two Radio Link Control (RLC) blocks, also depending on modulation and coding used.

2.3

Modulation

In the beginning, GSM used only Gaussian Minimum Shift Keying (GMSK) as the modulation method. In GMSK, each bit is represented by a phase-shift relative

(18)

2.4 The Evolution of GSM Data Transmission 5

to the previous symbol; a phase-shift of +90◦ represents ’1’ and a phase-shift of −90◦ ’0’. This means that it is not the absolute position in the phase diagram that defines the bit, but the relative phase change from the previous position (or symbol). One symbol therefore carries one bit. An illustration of the symbol can be seen in figure 2.2.

1

0

Q

I

Figure 2.2. GMSK Modulation

The reason for using GMSK was that it fulfilled the need for data speed at that time and is a quite simple modulation technique, which gives low-cost transceivers [6, Ch. 15.2.1].

2.4

The Evolution of GSM Data Transmission

2.4.1

GSM Phase 1

The first version of GSM had no intention of giving high throughput of data, but rather to make the system work in practice. As the system was digital, it was fairly simple to also implement a data service. Keeping what has been said in chapter 2.2 in mind, the reason for the throughput achieved can be analyzed.

Typically, each user is allocated one slot each within each frame and may therefore send and receive 114 symbols of data every 577 µsec. Since GMSK is used as modulation, one symbol corresponds to one bit. Every 13:th slot is reserved for control traffic and this gives a data rate of 114×(12÷13)÷4.615 msec = 22.8 kbit/s. Adding error-correction and error-detection, we end up in a user data rate of 9.6 kbit/s. This is true for the first GSM standard, which was commercially available in 1991.

2.4.2

GSM Phase 2+

There was a need for higher throughput as use of Internet access through mobile devices increased. In GSM Phase 2+, a more aggressive convolutional coding puncturing was implemented, making it possible to fit more information bits into

(19)

each slot (burst), and thereby increasing the data rate to 14.4 kbit/s/slot [5, Ch. 17.1]. As another part of GSM Phase 2+, High-Speed Circuit-Switched Data was specified, allowing for a Mobile Station to access up to four time-slots in a frame which increased the maximum data rate up to 57.6 kbit/s [6, Ch. 15.2.1].

2.4.3

General Packet Radio Service

The next step in improving the throughput was General Package Radio Service (GPRS), often called 2.5G. The earlier techniques mentioned above are all circuit-switched services, which means that each user is assigned a data traffic channel that cannot be shared with other users and is held until the user ends it’s session (until the call is terminated). This essentially corresponds to using a dial-up modem in a land-line connection. When using the connection for Internet access, this is far from optimal utilization of the wireless network capacity since use of Internet is bursty. The channel is often idle, waiting for the user to utilize the channel, and the capacity may not be enough when the user is active. A more flexible solution was needed.

GPRS introduces packet-switched data transmission, which means that the channel is accessed only when packets are transmitted. It is then released for use by other users’s packet transmissions. GPRS also introduces different coding systems, which makes it possible to adapt the channel coding to the current channel condition. The idea of adaptive channel coding was further developed in EDGE. Two new nodes has to be added in the core network if an operator wants to introduce GPRS in a GSM network. GPRS still uses GMSK modulation.

2.5

The GSM Network

Figure 2.3 is an overview of a GSM/GPRS/EDGE network. It should be stressed that this is a strongly simplified picture with the purpose of presenting only the parts that are relevant in this thesis.

A GSM network consists of several nodes. To begin with, we have the Mobile Station (MS) or the user, which in practice most often is a mobile cellular phone. The MS is connected to a Base Transceiver Station (BTS), often seen on hills or roofs. The air interface between them is divided into downlink and uplink. The downlink is the traffic from the BTS to the MS, and the uplink is the traffic from the MS to the BTS. The BTS does the channel coding before sending the signal over the air. As the user moves (may be traveling in a car), the MS changes which cell it is connected to, called cell-reselection2.

The different BTSs communicates with a Base Station Controller (BSC), which sorts out circuit switched traffic (speech) to the MSC and the data traffic to the SGSN. As the nodes from the Mobile Switching Center MSC and further are related to circuit switched traffic, they are of no interest for us.

2The reader might be familiar with the “hand-over”-procedure, which is the term for the

cor-responding procedure done when the mobile is in circuit switched mode (speech). Cell-reselection is the term used when the mobile is in packet transfer (data) or idle mode.

(20)

2.6 Enhanced Data for Global Evolution 7

BSC

MSC

SGSN

GGSN

BTS

BTS

Internet (ISP)

Uplink Downlink

Figure 2.3. A GSM/GPRS/EDGE Network

SGSN is an acronym for Serving GPRS Support Node and it was added to the GSM network when GPRS was introduced. It is fully dedicated to data traffic and performs encryption, attachment and detachment of MSs, authenticates MSs and fetches subscriber data. It also routes the traffic between the BSC and the GGSN. The Gateway GPRS Support Node (GGSN) is an interface between the Inter-net (or other external packet Inter-network) and GSM Inter-network. It stores information needed to route incoming data packets to the SGSN. The GGSN can be connected to several SGSNs, and a SGSN can be connected to several GGSNs.

More about the GSM-network may be found in [5].

2.6

Enhanced Data for Global Evolution

As the use of multimedia application continued to increase, the need for higher throughput continued to grow. The third generation (3G) mobile telephony offers a significant increase in throughput but at a financial cost. WCDMA is a totally different system from GSM, and therefore requires huge investments by the op-erators. An upgrade of the existing GSM/GPRS-network to an EDGE network can be done at a fraction of the cost of introducing WCDMA. The operators do not need to acquire any new frequency licenses to implement EDGE, but only

(21)

to do software upgrades of their existing GSM/GPRS-networks in order to get EDGE-capability. This is why EDGE is a cost-efficient upgrade.

As GPRS is called 2.5G and EDGE is considered as a bridge between GPRS and 3G, EDGE is sometimes called 2.75G. The physical channel organization is the same as conventional GSM/GPRS, and therefore EDGE can operate seamlessly together with conventional GSM. In the same time, the first standard of EDGE offers a theoretical maximum throughput of up to 473.8 kbit/s.

EDGE includes both packet- and circuit-switched data transmission, called Enhanced GPRS (EGPRS) and Enhanced Circuit Switched Data (ECSD) respec-tively [7, p. 58]. But as packet-switched data transmission is much more efficient, EGPRS is the technique that has been implemented by the operators and has almost become synonymous to EDGE.

The two main differences of EGPRS compared to GPRS is the introduction of 8-PSK modulation and possibility to do continuous modifications of the radio link control to improve link transmission quality in a more dynamic way than in GPRS.

2.6.1

The Modulation in EDGE

One GMSK symbol contains one bit, whereas one 8-PSK symbol contains 3 bits. The bit-throughput can thus theoretically be increased three-fold by using 8-PSK. The downside is that the euclidean distance between each signal point is decreased in 8-PSK. Increasing the transmit power of the 8-PSK transmissions would be a solution, but as 8-PSK needs to follow the same regulations as GMSK, that cannot be done. A partial solution has been made using Gray coding. The constellation diagram of 8-PSK can be seen in figure 2.4.

Q

I

(1,1,1) (0,1,1) (0,1,0) (0,0,0) (0,0,1) (1,0,1) (1,0,0) (1,1,0) Figure 2.4. 8-PSK Modulation

EDGE has the capability of using both GMSK and 8-PSK as modulation, depending on the channel conditions. GMSK is more robust than 8-PSK, but cannot gain from an improved data link quality to the same extent as 8-PSK does. Therefore 8-PSK is more often used in good channel conditions. The procedure of changing modulation and coding is the topic of chapter 2.6.2.

(22)

2.6 Enhanced Data for Global Evolution 9

2.6.2

Link Quality Control in EDGE

EGPRS Link Quality Control (LQC) is a way of dynamically try to choose the optimal modulation and coding scheme for transmission of data over the radio interface, depending on the current radio conditions. LQC is Ericsson’s solution of the framework given by the 3GPP standards of coding, modulation and how the performance of a transmission is measured. (EGPRS) LQC aims at maximizing the data throughput on the radio link while keeping the latency low. There are mainly two advantages of using LQC [8, Ch. 2]:

Higher bit rates is achieved by selecting the most optimal modulation and cod-ing scheme for transmission of data.

Increased system capacity is achieved since each transmission (given a specific amount of data) takes less time, which means that more users can be served within the same time.

The algorithm of LQC is implemented in the BSC. A deeper presentation of the MCSs will be given next, since it is a central part of this thesis.

The Modulation and Coding Schemes

EGPRS uses three different coding families, called family A, B and C. By choosing a combination of these together with GMSK or 8-PSK modulation, nine different Modulation and Coding Schemes (MCS) has been specified, listed in table 2.1.

MCS Coding Rate Modulation Coding Family RLC data block size (bits) RLC data bit rate (kbit/s) MCS-1 0.53 GMSK C 176 8.8 MCS-2 0.66 GMSK B 224 11.2 MCS-3 0.85 GMSK A 296 14.8 MCS-4 1.0 GMSK C 2×176 17.6 MCS-5 0.37 8-PSK B 2×224 22.4 MCS-6 0.49 8-PSK A 2×296 29.6 MCS-7 0.76 8-PSK B 4×224 44.8 MCS-8 0.92 8-PSK A 4×272 54.4 MCS-9 1.0 8-PSK A 4×296 59.2

Table 2.1. The MCSs in EGPRS

Lower MCSs have high amounts of channel coding, giving lower data rates, and vice versa. The maximum data rate for the GMSK based MCS’s is in general reached at lower radio link quality than for the 8-PSK based MCS.

What is common within each family is that the payload (user data) units has the same number of bits; 176, 224, (272) or 296. What differs each family member is the number of payload units carried within; 1, 2 or 4. This makes it possible to use different coding rates within a coding family. The coding families are illustrated in table 2.2.

(23)

Family A

296 bits 296 bits 296 bits 296 bits

MCS-3

-MCS-6

-MCS-8

-MCS-9

-Family B

224 bits 224 bits 224 bits 224 bits

MCS-2 -MCS-5 -MCS-7 -Family C 176 bits 176 bits MCS-1 -MCS-4

-Table 2.2. The Different Coding Families

The idea of using different coding families is to make it possible to resend erroneous packets with a lower MCS. As the MCS might be changed every 100ms, this prevents getting trapped in one MCS that does not offer enough robust coding in order to make a successful transmission during several attempts, which otherwise would be the case if the channel is changing rapidly. In order to be able to resend data using another MCS, the size of the RLC blocks (see ch. 2.2) of the MCSs needs to be the same, which is the case within each family [9, ch 6.6.4.5.2].

The following example is given with the purpose of making things clearer: A transmission using MCS-9 means that one radio block has been transmitted, which contains two RLC blocks, each containing 2 payloads of 296 bits of user data. So our transmission contains 4×296 bits of data. If this transmission is erroneous, it may be resent with either MCS-9 again, or MCS-6 using two radio blocks, each containing one RLC block of size 2×296 bits. The third alternative is to resend the data with MCS-3 using four radio blocks of one RLC block and 1×296 bits each. If we use MCS-3 and thereby use four radio blocks to send the same amount of data as carried within one MCS-9 block, this means that we have a throughput of 1

4 of the MCS-9 throughput. This is in agreement with the calculation 59.2

4 = 14.8 kbit/s.3

The reason why MCS-8 is not an integer of the payload unit of 296 bits, but instead 272 bits is to gain one extra MCS. With the implementation of MCS-8 there is an increased possibility to achieve a higher throughput. When switching from MCS-8 down to either MCS-6 or MCS-3, padding is performed in order to achieve the payload unit size of 296 bits. This means that a retransmission of a MCS-8 block still can be made with two MCS-6 or four MCS-3 blocks. The 3All of these calculations are purely theoretic, as we in practice have a varying error rate that

(24)

2.6 Enhanced Data for Global Evolution 11

throughput is decreased since a part of the block consists of padding instead of user-payload. In practice, this has an inconsiderable effect on the throughput. A deeper description of the different MCSs is found in [9, Ch. 6.5.5.1.2] and [12, Ch. 7.2.2.3].

The decision of which MCS is to be used is made on the basis of the mean Bit Error Probability (BEP) and the mean of the variation of the BEP. This is measured over one radio block, which means four bursts (see chapter 2.2) according to equation 2.1 and 2.2 [11, Ch. 8.2.3.2]. The measurement is done by the MS on the downlink and the BTS on the uplink.

MEAN_BEPblock= 1 4 4 X i=1 BEPburst i (2.1) CV_BEPblock= q 1 3 P4 k=1(BEPburst k−14P 4

i=1BEPburst i)2 1

4 P4

i=1BEPburst i

(2.2) When MEAN_BEPblockand CV_BEPblockare obtained, these values are then calculated by averaging and filtering them in the linear domain. CV_BEP is created from that calculated value by a final quantization, giving it a range of 0 − 7. However, before quantization of the calculated value that will result in CV_BEP, it is put in a logarithmic scale. This gives MEAN_BEP a range of 0 − 31, where low values means high BEP (due to the logarithm). A high value of CV_BEP means a larger spread of the MEAN_BEP values. These values are also affected by factors like time dispersion and interleaving, caused by velocity and frequency hopping [8, ch. 3.1]. The exact mapping may be found in [11, ch. 8.2.5].

Based on the values of MEAN_BEP and CV_BEP the LQC algorithm decides which MCS that should use with the help of a table with 32 × 8 cells. The table specifies which MCS that gives the best throughput and latency for each combination of MEAN_BEP and CV_BEP and has been empirically generated. An example of what a possible table could look like is given in table 2.3.

During a transmission of data to/from a BSC from/to a MS, the BEP is reg-ularly measured. From these measurements, MEAN_BEP and CV_BEP is cal-culated. The BSC uses such a table as table 2.3 for deciding which MCS that the BTS shall use for transmitting the next blocks. The table-concept is implied by the 3GPP-standard and an example is given in [11, Annex D]. The table-concept is central in this thesis and will be further explained in the end of next chapter.

2.6.3

Improved ACK/NACK in Evolved EDGE

The next upcoming standard of GSM is Evolved EDGE4. It consist of several enhancement compared to EDGE, which improves both throughput and latency among other things. The interested reader may find all the objectives of evolved EDGE in [15, Ch. 4.2]. One specific feature of Evolved EDGE was chosen to 4Following the convention of calling it xG, where x is the mean of the latest standard and

(25)

0 1 2 3 4 5 6 7 0 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 2 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 3 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 4 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 MCS-1 5 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 6 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 7 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 8 MCS-3 MCS-3 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 MCS-2 9 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-2 MCS-2 MCS-2 10 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 11 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 12 MCS-4 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 MCS-3 13 MCS-4 MCS-4 MCS-4 MCS-4 MCS-4 MCS-4 MCS-4 MCS-4 14 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 15 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 16 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 17 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 18 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 MCS-5 19 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 20 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 21 MCS-6 MCS-6 MCS-7 MCS-6 MCS-6 MCS-6 MCS-6 MCS-6 22 MCS-6 MCS-6 MCS-7 MCS-7 MCS-6 MCS-6 MCS-6 MCS-6 23 MCS-7 MCS-7 MCS-7 MCS-7 MCS-7 MCS-7 MCS-8 MCS-8 24 MCS-7 MCS-7 MCS-7 MCS-7 MCS-7 MCS-8 MCS-8 MCS-8 25 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 26 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 27 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 MCS-8 28 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-8 MCS-8 29 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-8 MCS-8 30 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 31 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9 MCS-9

Table 2.3. Example of a table. X-axis: CV_BEP, Y-axis: MEAN_BEP (Note: this

(26)

2.6 Enhanced Data for Global Evolution 13

be the subject of optimization of this thesis, namely Improved Acknowledged/Not Acknowledged (IAN). For this reason, this and only this feature will be given a brief description.

The reader is assumed to be familiar with the principle of acknowledgment in packet-based communication systems. In EDGE, the BTS regularly polls the MS for acknowledged/not acknowledged (ACK/NACK) RLC blocks. With IAN, the MS (the receiver) may report missing data blocks immediately by including the ACK/NACK in any sent RLC data block in what is called a Piggy-backed ACK/NACK (PAN). As there is no spare room for extra PAN bits in the RLC block, it must be made. This is done by increasing the coding rate for each MCS, which inevitably means that there will be a lower immunity against noise. As a coding rate cannot be above 1.0, this means that MCS-4 and MCS-9 cannot contain a PAN. This change is summarized in table 2.4, which is similar to table 2.1. The differences are displayed in parenthesis. Details may be found in [9, ch. 6.5.5.1.2]

MCS Coding Rate Modulation Coding Family RLC data block size (bits) RLC data bit rate (kbit/s) MCS-1 0.60 (0.53) GMSK C 176 8.8 MCS-2 0.75 (0.66) GMSK B 224 11.2 MCS-3 0.96 (0.85) GMSK A 296 14.8 MCS-4 n/a (1.0) n/a (GMSK) n/a (C) n/a (2×176) n/a (17.6) MCS-5 0.40 (0.37) 8-PSK B 2×224 22.4 MCS-6 0.52 (0.49) 8-PSK A 2×296 29.6 MCS-7 0.81 (0.76) 8-PSK B 4×224 44.8 MCS-8 0.98 (0.92) 8-PSK A 4×272 54.4 MCS-9 n/a (1.0) n/a (8-PSK) n/a (A) n/a (4×296) n/a (59.2)

Table 2.4. The EGPRS MCSs with PAN.

Using this technique, there will be no dedicated ACK/NACK blocks, which means less control-traffic and thereby a higher user-data throughput. The higher throughput is somewhat compensated by the fact that MCS-4 and MCS-9 cannot be used. The effect PAN has on the choice of MCSs will be discussed in chapter 3.6.3, number 6. In an overall perspective the PAN-technique may increase the throughput about five to ten percent. More about IAN and PAN may be found in [15, Ch. 10.2].

(27)

The PAN-standard implies that we use separate MCS-tables depending on whether we have a PAN or not. This means that the choice of which table is to be used, depends on the current state of the MS. Another example of a state-dependent table is whether we use GMSK or 8PSK modulation. In addition to this, we also have different tables for uplink and downlink and a number of other GSM-standards that uses other forms of LQC which needs several other tables. As we see, the number of tables used within GSM grows rapidly.

Other Parameters

Associated with the tables are a number of parameters that are part of the LQC algorithm and these also affects the performance of the data transmission. Some of these are defined in the 3GPP-standards, while some originates from Ericsson’s LQC algorithm. Not all of these are subject to optimization as they have no effect of the throughput or needs to be set to a specific value for correct operation, and hence not mentioned here. The parameters will be described to a minimum, as the parameters are part of the LQC algorithm, which is subject to confidentiality. The parameters that are subject to optimization in this thesis are summarized in table 2.5.

Parameter Min value Max Value Expected optimum

P1 0 14 10-14

P2 0 10000

-P3 0 10000 2000-4000

P4 0 100 0-20

Table 2.5. Some of the parameters of the LQC-algorithm

Those persons who are versed of the LQC algorithm have gained a knowledge about these parameters and has an expectation about where to find the optimum of the parameters. “Expected optimum” in the table refers to those expectations. These parameters are only examples, and there are a lot more of other parameters included in the LQC algorithm.

The term “network parameters” will be used later on when referring to both the tables and other parameters in the LQC algorithm. “Other parameters” will often be called just “parameters”.

(28)

Chapter 3

Problem and Solution

Description

3.1

The Underlying Problem

The purpose of LQC is to maximize the performance of the transmission over the radio link during fading and interference, as stated in chapter 2.6.2. The 3GPP standards give the tools for handling the radio link, and from there has Ericsson derived the LQC algorithm. The values of the network parameters are static once set, but are not possible to derive from the 3GPP standards, although the LQC algorithm is highly reliant on them. Determining values of the network parameters that just makes the LQC algorithm operational is not a problem. The problem is to find values that give optimum performance. Performance may be measured in terms of end-user throughput, latency and GSM network capacity. The number of network parameters are huge, as seen in chapter 2.6.3. Different subsets of these form optimization problems of different parts of the LQC algorithm.

It is not possible to calculate the optimal values of the network parameters, nei-ther analytical nor numerical. The reason is that nei-there is no model that describes the changes of the quality of the radio link and other network characteristics in a way that makes it possible to predict which MCS that will be the optimal at a specific time. For these reasons, the determination of their optimal values is difficult.

The outline of this thesis originates from this problem. A solution to the problem already exists, but the problem of this thesis is to implement another solution.

3.2

The Existing Solution

Today, the determination of the network parameters is mainly a manual proce-dure, where a person called operator sets a set of network parameters, performs a measurement of the performance, obtains the result and analyzes the

(29)

mance. From that analysis the operator decides which parameters that should be adjusted and to which values in order to get closer to the optimum. This is done until the operator thinks that an optimum has been found, or that the performance is sufficient. An overview of the process may be found in figure 3.1.

Perform measurement(s)

Adjust parameters Obtain measurement values

Operator

Figure 3.1. An overview of the manual optimization process.

There are a number of problems associated with this solution:

No common approach There is no official method or guideline describing how this process should be done in practice. The decision of adjusting net-work parameters is made on the basis of what the operator thinks will help him/her to find an optimum, and is mainly built on experience and con-jectures. Therefore the found optimal network parameters may depend on who is performing the optimization. It would be preferable if one common approach existed to solving the problems.

Cost The main problem with today’s solution is the time-aspect. The number of optimization problems is large and the process of determining the parameter values is difficult and laborious and therefore time consuming. In projects where tuning of different parts of the network parameters has been done previously, it has taken about 700 man-hours to perform (two persons work-ing full-time for two months) [14, Ch. 7.1.9.5]. This does of course imply a considerable cost.

Usage of shared resources The optimization requires access to hardware that is limited in availability as it is shared with others. The time-aspect means that the optimization requires a substantial amount of access to these re-sources. The existing solution is mainly a manual process, which means that the resources are used during office-hours when the availability of the recourses are limited.

Sub-optimal It is a heuristic method, and as a consequence the optimization results may be sub-optimal which means that the performance will not be as good as possible. There might be better optima(s), but they will not be dramatically better, as we know that there is a theoretical upper limit of the performance. At best, the difference between the theoretical limit and the practical limit could be reduced if an alternative solution was used. There are thoughts within Ericsson that the IAN-feature may have an optimum

(30)

3.3 General Description of the New Solution 17

that gives up to ten percent better throughput compared to the optimum that is used today.

3.3

General Description of the New Solution

An alternative to the existing solution is to use an Automation Framework (AF) that utilizes metaheuristic search in a way that is often called search based test-ing. More about search based testing is found in [16]. Search based testing is popular to use within the industry and will in this thesis be used for searching for optimum values of the network parameters. The AF consists of an Automated Performance Optimization Algorithm (APOA), hardware and software for per-forming measurements together with software for linking the AFs different parts together. The APOA consists of a metaheuristic (explained in chapter 3.5.1) and software for utilizing the different parts of the AF. As most of the parts of the AF already exist, the main time of this thesis has been spent on linking them together and implementing the APOA. The target of this thesis is to implement the AF and APOA and to verify that the concept is working.

The APOA is part of the AF, but in practice in this thesis there will be no clear separation between them as they both will be developed simultaneously. The reason for introducing two separate notions instead of one will be clarified in chapter 6.1.5.

The main difference between the existing solution and the new one is the re-placement of the operator with an optimization algorithm (metaheuristic). The loop that figure 3.1 make up corresponds to the inner loop of figure 3.2. The APOA can be summarized in a number of different conceptual states:

Perform measurement(s) Adjust parameter(s)

Obtain measurement value(s) Optimization algorithm

Initialization

Termination

Optimum found

(31)

Initialization An operator configures the optimization algorithm to solve a spec-ified problem. A varying amount of configuration is needed in order to solve the problem efficiently, but it does at least include a definition of which network parameters that are subject to optimization.

Optimization algorithm The optimization algorithm can be any of those com-monly used within metaheuristics. It takes the measured performance as input, evaluates it, and outputs a new set of network parameters.

Adjust parameter(s) The optimization algorithm selects new values of some or all network parameters that are included in the optimization and initiates a change of them.

Perform measurement(s) For measuring the performance of the current set of network parameters, a framework for doing so is needed. Such a framework exists at Ericsson and will be described in chapter 3.4. Several measurements might be needed in order to evaluate the performance.

Obtain measurement value(s) The software that is executing the measure-ments returns the obtained performance values. Some performance param-eters may need to be post-processed before handed over to the optimization algorithm.

Termination The optimization algorithm has to be terminated at some point and there might be multiple reasons for doing so. More about the termination in chapter 3.5.1.

Optima found When the optimization algorithm has been terminated, the APOA returns the best set of network parameters found.

(32)

3.4 The Test Environment - THC 19

3.4

The Test Environment - THC

At the Integration and Verification department at Ericsson, there is a test envi-ronment called Test Harness Core (THC) used for testing the hardware in such a realistic way as possible. THC is a prerequisite of this thesis as a essential part of the AF. THC mimics the characteristics of a real-world GSM/EDGE network and can execute several performance tests during pre-determined conditions in an au-tomatic but deterministic fashion. THC can be used to measure the performance of a set of network parameters, but to measure another set, manual configuration is required.

3.4.1

The Setup

As the reader may not be familiar with THC, it will be given a presentation in this chapter. The relevant hardware are illustrated in figure 3.3.

BSC SGSN GGSN BTS Internet (ISP) THC-Server PC Mobile (MS) Server BTS Fading THC-Client

Figure 3.3. The hardware of THC.

The heart of THC is the THC-server which is controlled by an operator via a THC-client. The THC-server is where most of the software that performs tests is executed and is therefore connected to all the hardware that needs to be controlled by the AF or APOA.

The PC is an ordinary PC that is connected to a mobile, which together represents the user. The THC-server is connected to the PC in order to execute different scripts on the PC, which performs tasks for measuring the end-user-performance. It may be pinging servers, loading web-pages, receiving mails and in this thesis it’s exemplified by getting files from a FTP-server. The PC also has

(33)

protocol loggers and other software for monitoring the PC in order to measure the user-performance. One reason for why not just a mobile phone is used to represent the user is since it is easier to write such programs and install monitoring programs on a PC than on a mobile. The other reason is that it makes it easy to switch between different mobiles in order to perform test with mobiles supporting different GSM standards, without the need for new software. No reconfiguration of the PC is needed except for establishing a connection with the new mobile.

The most significant difference of THC and the real world is the radio link. It would not be practically possible to connect all the mobiles in the labs at Ericsson to the different BTSs via an air-interface, and therefore are cables used instead. Cables constitute an ideal radio link, compared to an air-interface and as optimization over an ideal radio link is trivial (always use MCS-9), it has been necessary to simulate fading in order to make the optimization problem more complex and realistic. The hardware used for simulating fading was a Spirent SR5500, which used a model called “TU3” as specified by 3GPP. The model uses Rayleigh fading with a simulated velocity of the mobile of 3 km/h. Both phase and frequency shift was 0, and the Doppler shift was 2.6Hz. The Carrier to Interference level (C/I) has been kept constant at -15dB. TU3 is an abbreviation for “Typically Urban” and “3” as in the velocity of the MS. More about TU3 is found in [10].

From the fading, there is a connection to the BTS, which in turn is connected to the BSC. The BSC is the hardware that contains the LQC algorithm with the tables and parameters, and therefore there is a need for communicating with it. SGSN and GGSN are part of the traffic flow, but not in focus in this thesis. The GGSN is connected to Internet, just like the server. This server is the one that the PC will get the files from with the help of the FTP-protocol and through all of the network hardware. It could also be used for latency tests (pinging).

3.4.2

Operation of THC

In comparison with figure 3.2, but with THC as the center viewpoint, the APOA will basically be executing in the following way:

1. The operator starts THC with a specific command for running the APOA. 2. The THC-server initiates all necessary hardware and the APOA.

3. The THC-server commands the PC to get a file from the FTP-server and the transfer is started.

4. After the download is complete, the average throughput will be calculated using the monitoring software on the PC.

5. This throughput will be reported back to the THC-server and the optimiza-tion algorithm (in the APOA).

6. The optimization algorithm uses this information to calculate new parame-ters for the next iterations.

(34)

3.4 The Test Environment - THC 21

8. The whole procedure is repeated from step 3 until the optimization is ter-minated.

This is also basically the procedure that has been done when hand-tuning has been made, but with the optimization algorithm replaced by the operator.

(35)

3.5

Metaheuristics

This chapter describes the problem from a theoretical point of view. The reader might already have noticed that the problem is combinatorial since the values of the network parameters are discrete. Each cell in each table and the parameters together make up the variables of the optimization problem. The variables are all integers that are restricted in range, e.g. the table-variables has a range of (MCS)1-9, and the parameter-variables has individually specified ranges (see chapter 2.6.3). To understand the concept of metaheuristics, one has to know the concept of heuristics. Heuriskein is Greek and means to find or discover and is the origin of the word heuristic. Heuristics is defined by [18, ch. 1.3], as:

“Heuristics is a technique for seeking good (i.e. near optimal) solutions at a reasonable computation cost, without being able to guarantee either feasibility or optimality, or even to state how close to optimality a particular found solution is.” Many heuristics incorporate problem specific knowledge beyond the knowledge found in the problem definition in order to reach a trade-off between solution quality and computation complexity. This means that a successful heuristic that is suitable for one problem may not be so for another problem.

What is special about the problems (of the LQC algorithm) in this thesis, is that they consist of several different types of variables, and the relation between them varies. To illustrate this varying dependence, consider the following example: The value of the cell corresponding to MEAN_BEP = 28 and CV_BEP = 2 is more likely to be of the same value as the cell corresponding to MEAN_BEP = 28 and CV_BEP = 3, than of the cell corresponding to MEAN_BEP = 4 and CV_BEP = 7. Apart from that is there a totally different and much weaker relation between any table-variable and any of the parameters.

Different parts of the LQC algorithm results in different optimization problems, as mentioned earlier in chapter 3.1. These problems can be seen as a class of problems, which are all similar, but has small differences such as included network parameters and performance parameters. The class of problems can with great certainty be stated to be unique, and thus is there no existing problem-specific heuristic algorithm suitable for these problems.1 A more general algorithm which can be applied to this class of problems is needed, a metaheuristic.

Metaheuristics are a form of general heuristic methods which are applicable to a wide range of combinatorial problems. There is no commonly agreed definition of metaheuristics, as pointed out by The Metaheuristic Network [17], but they use the following definition:

“A metaheuristic is a set of concepts that can be used to define heuristic meth-ods that can be applied to a wide set of different problems. In other words, a metaheuristic can be seen as a general algorithmic framework which can be applied to different optimization problems with relatively few modifications to make them adapted to a specific problem.”

This definition is further clarified by [19, Ch. 1]: The goal of metaheuris-tics is to efficiently explore the search space using approximate and usually non-1One exception is complete enumeration, where all possible solutions are evaluated and the

(36)

3.5 Metaheuristics 23

deterministic methods with some form of embodied memory in order to guide the search towards (near-)optimal solutions. Metaheuristics are not problem-specific, apart from many heuristic methods, but may make use of domain-specific knowl-edge in the form of heuristics that are controlled by the upper level strategy. An extensive overview of metaheuristics in combinatorial optimization is found in [19]. There are several different metaheuristics existing today, some examples are simulated annealing, tabu search, iterated local search, evolutionary algorithms and ant colony optimization. A decision of which one of them to use in this thesis had to be made.

Figuring out which metaheuristic that solves the class of problems best is not an easy task, and there are probably several metaheuristics that would perform almost equally good. Although there are differences in efficiency, the over-all efficiency is dependent on how the problem is simplified and how sophisticated the implementation of the metaheuristic is. In addition to this, is the time the APOA spends on executing the metaheuristic negligible relative to the total time of the APOA. Choosing the best metaheuristic would require to actually test all of them on this particular class of problems, and that is not an alternative due to the limited gain of doing so. Therefore has a strictly limited time been spent on choosing and motivating the use of this optimization algorithm, and the focus will be on the implementation of it.

Together with Torbjörn Larsson, professor at the Division of Optimization at Linköping University, I’ve chosen to use Genetic Algorithms (GA) as optimization method for this problem. GA are sometimes mentioned to be a little bit more efficient in dealing with uncertainties of the evaluation function compared to oth-ers. We will see that the uncertainty is a problem in chapter 5. This is although nothing that I have found to be motivated by theory or scientific studies2, but rather seems to originate from a conclusion based on experience.

A conceptual and succinct description of GA from the viewpoint of how it has been implemented in this thesis follows next.

3.5.1

Genetic Algorithms

GA are part of a group of certain heuristic techniques based on the principle of natural evolution, called evolutionary algorithms or evolutionary computing. GA is the technique within this group that is most often used for solving combinatorial optimization problems.

GA are inspired by nature’s capability to evolve living beings well adapted to their environment. GA are a population-based metaheuristic, meaning that every iteration of the algorithm deals with a set of solutions, a population. The population is made out of individuals. An individual is one solution to the given problem and in this thesis it corresponds to a set of network parameters. From here on, a set of network parameters will be called an individual when speaking in GA-terms. An individual is made up of genetic material, which corresponds to the variables of a solution (network parameters).

(37)

An individual has a fitness which tells the quality of an individual. The fitness is based on evaluating a target function, which in this case is the performance measured THC (see chapter 3.4). The measurement in THC gives a raw score (e.g. throughput in kbit/s) and the fitness of an individual is calculated by com-paring the individual’s raw score with the raw score of the other individuals in the population. More details about this will be given in chapter 4.4.

Crossover is the process of combining individuals to produce new individuals. The individuals that are subject of crossover are naturally called parents, and the new individuals offspring. The hope is that the offspring will get the best genetic material from each parent, making the offspring even better than their parents. The crossover is, alike in nature, not a deterministic process and involves a degree of randomness which means that the offspring of the same parents are not exactly equal. The number of parents does not need to be two, but in this thesis it has been chosen so. The same holds for the number of offspring. The reason is that it is required by the idea behind the implementation.

When two parents are crossed, they do not need to form a new individual. An alternative is that the offspring of the parents are exact copies of the parents. The chance of this not happening is governed by a probability, a crossover rate.

Several couples of parents are crossed for each iteration of the GA and their offspring forms the population of the next iteration of the GA. A new population is created for each iteration of the GA, and these populations are referred to as generations. In this thesis has the size of the population been chosen to be kept constant, as it is the easiest to implement and follows from the idea behind the implementation of the crossover. A variable population size is not necessarily a better solution to GA problems.

The driving force of GA are the selection of parents based on their fitness. There are many ways of choosing the parents, but they most often rely on the principle that individuals with a higher fitness have a higher probability to be chosen as parents for the generation of new individuals. This corresponds to the principle of survival of the fittest in natural evolution. It is nature’s capability to adapt itself to a changing environment which gave the inspiration for GA.

An option often mentioned in descriptions of GA is to use elitism, which means that the best individual of a generation is inserted into the next generation. This leads to a faster convergence towards an optimum, but the optimum may be sub-optimal, and therefore is elitism not always preferable. More aspects of elitism will be discussed in chapter 5.4.

The GA has to be completed with mutation in order not to converge into sub-optimal solution, which would be highly dependent on the initial population. New genetic material is added by the process of mutation, allowing the GA to explore the search-space outside the area that the initial population makes up. Mutation diversifies the population, but it has to be limited in order to make the GA strive towards optima. The mutation is therefore governed by a mutation rate that affects the probability of a mutation occurring and the amount of genetic material that is mutated. The mutation rate stretches from zero to one, where zero means no change of the values, and one means a maximum change of the values (meaning of "‘maximum"’ depends on implementation).

(38)

3.6 Limitations 25

The GA can be terminated for several reasons. A termination may occur if a good enough individual has been found that satisfies a desired performance. Another reason might be that a limited number of iterations or generations have been made or that a time limit has been reached.

The algorithm for GA is given in in pseudo code 3.1. P ← GenerateInitialP opulation()

Evaluate(P )

while termination criteria not met do

P0← Combine(P ) P00← M utate(P0) Evaluate(P00) P ← P00

endwhile

Pseudo Code 3.1: Algorithm for GA.

This is the basics of GA and there is a lot of literature written about GA that goes into more details. The interested reader may for example have a look at [17] and [18], which has been the inspirational sources for this chapter.

The reader might have noticed that this description is very broad and not problem-specific, which is characteristic for metaheuristics. The next step is there-fore to adopt it on the given class of problems. This means figuring out and im-plementing how to calculate the fitness, how to perform crossover of individuals, how to mutate them and how to select them for crossover. Most of the time of this thesis has been spent on these activities.

3.6

Limitations

As this thesis is limited in time some limitations has to be made in order to make it practically possible to implement a APOA that could be used in practice. Even before implementing something that could be used in practice, it is wise to make a ’Proof of concept’ which allows for even more simplifications to be made. Not until the concept is proven is there a point of actually implementing a practically usable APOA. By doing so, a number of different limitations has been made.

Chapter 3.6.1 lists the practical limitation of the setup and chapter 3.6.2 states the limitations in the optimization problem. Chapter 3.6.3 explains the simplifi-cations that have been made about the problem from a more theoretical point of view, in order to make the implementation more efficient.

3.6.1

Limitations of the Setup

A GSM-system is complex and it is therefore not possible to configure THC mimic all of the characteristics of a real-world GSM network within this limited time. The following limitations have been made in the setup:

(39)

One mobile The algorithms focus on optimizing the throughput of one single mobile, which is the only one in the cell. One reason is that the configu-ration of one mobile is naturally less complicated than configuring multiple of them. Another reason is that there have been some stability issues with the prototype mobile that supports IAN, and using multiple of them would further increase the instability of the system. When these problems are over-come, it should be fairly easy to apply the concept to multiple mobiles in a cell. It is not even for certain the optimization has to be done using multiple mobile, as the LQC-algorithm operates individually on each MS.

No cell-reselection To simplify the configuration of the test environment during the development, the mobile has been stationary within one cell. The APOA is expected to perform equally good if cell-reselection was introduced, as there is no direct relation between the LQC-algorithm and cell-reselection. C/I The only fading parameter that is not a part of the TU3-model is the C/I and

is therefore a subject to explanation. By choosing C/I = 15dB, MEAN_BEP mainly varied between 3 and 21 over the MEAN_BEP-scale. This spread is fairly large, which means that the APOA has to handle a more complex optimization problem as the optimal table probably contains several different MCSs. A better alternative would have been to use a variable C/I, as it would have been more realistic and caused an optimization over the whole tables. This has not been done at this stage, due to complex implementation. A variation of MEAN_BEP between 3 and 21 should still be large enough for proof of concept. Increasing the variation to include MEAN_BEP values from 0 to 31 should cause no problems with the implementation of the APOA, except for a fairly larger optimization problem.

Fading model There might be questions why TU3 has been chosen as the model, as different models mimic different environments. The relevant part in this thesis is to use fading, the exact model is of minor matter. Therefore a model that is often used within Ericsson was chosen3.

Performance only measured by throughput Only FTP-transfers has been used, which isn’t affected by latency to any considerable extent, but is an important factor of time-critical applications such as IP-telephony. A so-lution would be to also include ping-tests and weigh the results together with the results from the FTP-transfer. This has not been done partly due to the implementation time, and partly due to the difficulty of weighing the throughput and latency together in order to make a decision whether the combination of them is good or poor. The performance of the network parameters is measured in terms of end-user-throughput, as explained in chapter 3.4.1.

3Within Ericsson, it is known that this model is not a perfect match to real-world scenarios.

When the optimized LQC has been evaluated in field-networks, the expected gain has not been seen. Despite this, there is currently no better model available that can be chosen.

(40)

3.6 Limitations 27

3.6.2

Limitations of the Problem

Different subsets of the network parameters form different optimization problems, as stated in chapter 3.1. One of these subsets has been chosen to exemplify the problem described in chapter 3.1. This has been done as this thesis is not only a theoretical study, and has to be tested in practice.

Standard The IAN standard was chosen to be subject of optimization. One rea-son for choosing this specific feature is that it is similar to other optimization problems of the LQC algorithm. Other reasons exists, but are not mentioned due to confidentiality.

Table Simultaneously optimizing over both down- and uplink theoretically takes twice the time compared to only optimizing one of them. The downlink was chosen as a subject of optimization, mostly due to an easier setup of hardware for fading. The choice of MCS in the downlink in the IAN standard is governed by two GMSK-tables and two 8-PSK-tables. The 8-PSK tables were chosen since it is somewhat more easy to optimize in practice (but not in theory). The reason for having two tables per modulation is that there are separate tables if PAN is included or not. The table for packets without PAN was selected, as most of the packets do not contain a PAN.

Parameters Parameters are common in most of the problems that can be formed out of the LQC algorithm. Therefore it is necessary to prove that parameters and tables can be optimized simultaneously. The four parameters presented in chapter 2.6.3 were included in the optimization and the reason why is confidential.

3.6.3

Simplifications of the Problem

The implementation needs to be adopted so that it can generate individuals in an intelligent way, but still general enough to be applicable to any part of the LQC-algorithm. Theoretical simplifications can be used in order to limit the search-landscape and are almost necessary for decent performance. If no simplifications could be made, the number of different combinations of just one single table with nine possible MCSs in 8 × 32 cells would be 98∗32≈ 10244. This is fortunately not the case.

There are a number of characteristics known about the problems or the search-landscape; either characteristics that we can assume or characteristics that we are fairly sure about. Below are the simplifications that can be made about the theo-retical problem. They are given in descending order relative to a rough certainty of the statement.

1. The first simplification is the most firm assumption and is followed by the as-sumption of ascending MCS values. As MEAN_BEP increases, which means that the BEP decreases, the quality of the radio link gets better. This means that the same or a higher MCS should be used as MEAN_BEP increases. This simplification has a great impact on the number of combinations of one table.

(41)

2. MSC-9 gives the highest throughput for high C/I, as assumed in [13, ch. 2]. “High C/I” corresponds to MEAN_BEP ≤ 31.

3. There is a great probability that a MCS that is closer to the optimum MCS of cell is a better choice than a MCS far from the optimal MCS (e.g. if the optimum MCS is MCS-7, MCS-6 would be better than MCS-9).

4. There is a great probability that the optimal MCS of a table-variable is equal to or close to the optimal MCS of a neighboring table-variable. An example of this was given in chapter 3.5.

5. There is a great probability that an optimal table utilizes all possible MCSs, as this improves the accuracy of the choice of modulation and coding. 6. As explained in chapter 2.6.3, blocks containing a PAN and coded with a

spe-cific MCS are less robust against noise than blocks without PAN, but coded with the same MCS. Given a combination of MEAN_BEP and CV_BEP, this means that the same or lower MCS should be used for a packet contain-ing PAN compared to a packet without PAN. E.g. The radio conditions are MEAN_BEP = 23 and CV_BEP = 1. If we know that a packet without PAN is optimal to be sent with MCS-7, then we conclude that the opti-mal MCS to send a packet with PAN is MCS-7 or lower (during the same combination of MEAN_BEP and CV_BEP).

7. We have prior knowledge about some ranges of the parameters that are less or more likely to be included in an optimum. The parameters of today’s optimum are within the more likely ranges. One method of reaching an optimum could be by making minor adjustments of the optimum used today.

(42)

Chapter 4

Implementation

It should be clarified already at this point that there are numerous different ways of how to implement the different parts of the GA. The different ways may vary in complexity in the idea, complexity of implementation, efficiency and suitability. Only one idea has been implemented of each of the GA parts, as time has been a limiting factor. Roughly has the decision been made on the implementation time relative to suitability.

Another thing to point out is that a lot of minor details and special-cases have been left out in the description of the implementation, as it otherwise would be a tremendous description. Pseudo code has been used to for complementing the description of the algorithms.

The implementation of the GA was done using Python and with the help of a GA-library called Pyevolve [20].

4.1

The Crossover Operator

Separate crossover operators have been made for the parameters and tables due to the fundamental differences between them, but they do have some things in common. The crossover operator operates on two parents and the offspring should be something in between those. They are also both easier to describe if a nomen-clature is used.

4.1.1

Nomenclature

It should be clarified that the nomenclature used is not officially used within GA, and is invented by me in order to ease the outline of my algorithms.

Relationships

One of the parents is randomly picked to be called mom and the other dad. In the same way are the offspring called son and daughter. The closest parent to the son is dad, and the son is more like dad than mom, which is called the other

References

Related documents

Efficiency curves for tested cyclones at 153 g/L (8 ºBé) of feed concentration and 500 kPa (5 bars) of delta pressure... The results of the hydrocyclones in these new

The teachers at School 1 as well as School 2 all share the opinion that the advantages with the teacher choosing the literature is that they can see to that the students get books

effects of cap accessibility and secondary structure. Phosphorylation of the e subunit of translation initiation factor-2 by PKR mediates protein synthesis inhibition in the mouse

In the present thesis I have examined the effect of protein synthesis inhibitors (PSIs) on the stabilization of LTP in hippocampal slices obtained from young rats.

The demand is real: vinyl record pressing plants are operating above capacity and some aren’t taking new orders; new pressing plants are being built and old vinyl presses are

Nisse berättar att han till exempel använder sin interaktiva tavla till att förbereda lektioner och prov, med hjälp av datorn kan han göra interaktiva

Furthermore for signaling server, performance of XSockets and Node.Js are evaluated using different browsers and webservers based on total call setup time. Form the results

A pilot study of samples from 2PC has indicated high concentrations of volcanic ash particles around the expected age of the Alaskan so called Aniakchak tephra which has an age