Network Modeling, Simulation and Analysis in MATLAB - Dac-Nhuong Le - E-Book

Network Modeling, Simulation and Analysis in MATLAB E-Book

Dac-Nhuong Le

0,0
197,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

The purpose of this book is first to study MATLAB programming concepts, then the basic concepts of modeling and simulation analysis, particularly focus on digital communication simulation. The book will cover the topics practically to describe network routing simulation using MATLAB tool. It will cover the dimensions' like Wireless network and WSN simulation using MATLAB, then depict the modeling and simulation of vehicles power network in detail along with considering different case studies. Key features of the book include: * Discusses different basics and advanced methodology with their fundamental concepts of exploration and exploitation in NETWORK SIMULATION. * Elaborates practice questions and simulations in MATLAB * Student-friendly and Concise * Useful for UG and PG level research scholar * Aimed at Practical approach for network simulation with more programs with step by step comments. * Based on the Latest technologies, coverage of wireless simulation and WSN concepts and implementations

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 483

Veröffentlichungsjahr: 2019

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Contents

Cover

List of Figures

List of Tables

Foreword

Preface

Acknowledgments

Acronyms

Chapter 1: Introduction to Modeling, Simulations and Analysis

1.1 MATLAB Modeling and Simulation

1.2 Computer Networks Performance Modeling and Simulation

1.3 Discrete-Event Simulation for MATLAB

1.4 Simulation Software Selection for MATLAB

1.5 Simulation Tools Based on High Performance

1.6 Conclusion

References

Chapter 2: Introduction to MATLAB Programming

2.1 Introduction

2.2 Basic Features

2.3 Notation, Syntax, and Operations

2.4 Import and Export Operations

2.5 Elements

2.6 Plotting

2.7 Uncommon Function

2.8 Executable Files Generation

2.9 Calling and Accumulating Executable Documents

2.10 Calling Objects from External Programs

2.11 JAVA Classes

2.12 The Guide

2.13 Effective Programming through MATLAB

2.14 Clones Process Using MATLAB

2.15 Parallel MATLAB System

2.16 Conclusion

References

Chapter 3: Digital Communication System Simulation Using MATLAB

3.1 Introduction to Digital Communication

3.2 Simulation of Rayleigh Fading Model

3.3 BPSK Modulation and Demodulation

3.4 QPSK Modulation and Demodulation

3.5 Image Error Rate vs Signal-to-Noise Ratio

3.6 Recreation of OFDM Framework

3.7 Conclusion

References

Chapter 4: Statistical Analysis of Network Data Using MATLAB

4.1 Introduction to Association Networks

4.2 Time Series, Stationary, Time Series Decomposition, De-trending

4.3 Autocorrelation, Test for Independence, Linear Autoregressive Models

4.4 Mutual Information and Test for Independence

4.5 Spurious Cross-Correlation, Vector Autoregressive Models and Dynamic Regression Models

4.6 Conclusion

References

Chapter 5: Network Routing Simulation Using MATLAB

5.1 Evaluation of Granger Causality Measures on Known Systems

5.2 Demand Modeling and Performance Measurement

5.3 Universal Algorithms and Sequential Algorithms

5.4 Acoustic-Centric and Radio-Centric Algorithms

5.5 AODV Routing Protocol

5.6 Conclusion

References

Chapter 6: Wireless Network Simulation Using MATLAB

6.1 Radio Propagation for Shadowing Methods

6.2 Mobility: Arbitrary Waypoint Demonstrates

6.3 PHY: SNR-Based Bundle Catches, Communication, Dynamic Transmission Rate and Power

6.4 NET: Ad Hoc Routing

6.5 APP: Overlay Routing Protocols

6.6 Conclusion

References

Chapter 7: Mobility Modeling for Vehicular Communication Networks Using MATLAB

7.1 Vehicle Network Toolbox

7.2 Network Management (NM)

7.3 Interaction Layer

7.4 Transport Protocols

7.5 Conclusion

References

Chapter 8: Case Studies And Sample Codes

8.1 Case Determination and Structure

8.2 Case Study 1: Gas Online

8.3 Case Study 2

8.4 Case Study 3: Random Waypoint Mobility Model

8.5 Case Study 4: Node localization in Wireless Sensor Network

8.6 Case Study 5: LEACH Routing Protocol for a WSN

8.7 Conclusion

References

Authors

End User License Agreement

Guide

Cover

Table of Contents

Begin Reading

List of Illustrations

Chapter 1

Figure 1.1

System modeling and simulation scheme.

Figure 1.2

Network simulator abstraction.

Figure 1.3

Discrete-event simulation.

Figure 1.4

Principles of discrete-event simulation and the system state changes only at...

Figure 1.5

Flow chart explaining a discrete-event test system.

Figure 1.6

Wireless sensor network model.

Figure 1.7

Tier-based node model.

Chapter 2

Figure 2.1

MathWorks MATLAB R2018b...

Figure 2.2

MATLAB decision.

Figure 2.3

MATLAB loops.

Figure 2.4

MATLAB elements.

Figure 2.5

Create an M-File.

Figure 2.6

How to add new toolbox to MATLAB.

Figure 2.7

Initializing deploy tool in MATLAB.

Figure 2.8

Initializing standalone application.

Figure 2.9

Initilazing toolboxes required.

Figure 2.10

Inspecting MATLAB GUI.

Figure 2.11

Simple GUI.

Figure 2.12

Selecting callback options.

Figure 2.13

Selecting callback options 2.

Figure 2.14

Running script as batch job.

Chapter 3

Figure 3.1

Data transmission system.

Figure 3.2

Time domain and frequency domain representation of a signal.

Figure 3.3

Analog-to-digital conversion.

Figure 3.4

Upper panel: Periodic sampling of an analog signal. Bottom panel: Quantization...

Figure 3.5

Simulation results.

Figure 3.6

BPSK modulator.

Figure 3.7

BPSK demodulator.

Figure 3.8

Sampling and results.

Figure 3.9

Waveform simulation model for QPSK modulation.

Figure 3.10

Timing diagram for BPSK and QPSK modulations.

Figure 3.11

Waveform simulation model for QPSK demodulation.

Figure 3.12

Simulated QPSK waveforms at the transmitter side.

Figure 3.13

M-QAM modulator.

Figure 3.14

M-QAM simulation model.

Figure 3.15

Samples of in-phase component.

Figure 3.16

An OFDM communication architecture with a cyclic prefix.

Figure 3.17

Effect of cyclic prefix on

E

s

/

N

0

.

Figure 3.18

Assignment of OFDM subcarriers.

Figure 3.19

E

b

/

N

0

Vs BER for BPSKOFDM over AWGN.

Figure 3.20

OFDM essential Tx-Rx chain.

Figure 3.21

BER results.

Chapter 4

Figure 4.1

Flowchart of association rules implementation.

Figure 4.2

(a) ARN for contact lens data with target node as hard; (b) ARN for contact...

Figure 4.3

Schematic diagram showing the activity method of communication in a software...

Figure 4.4

Time series plot for adjusted AUTOSALE/CPI.

Figure 4.5

Time series chart with obtained output form.

Figure 4.6

Output of wave configeration.

Figure 4.7

Error rates identification.

Figure 4.8

Density estimate for power spectral.

Figure 4.9

Density estimate for periodogram spectral.

Figure 4.10

Plottings of the estimate.

Figure 4.11

Markov plottings.

Figure 4.12

Parameters of new functions.

Figure 4.13

Replot status.

Figure 4.14

VAR models.

Chapter 5

Figure 5.1

Each middle purpose of the structure is related to a signal. Edges between...

Figure 5.2

Basic driving cases that can incite fake unmistakable check of huge Granger...

Figure 5.3

Granger causality patterns between simulated ROIs.

Figure 5.4

Comparison of model estimation by LASSO-GC and pairwise GC.

Figure 5.5

Correlation of LASSO-GC and pairwise-GC techniques in recouping the summary...

Figure 5.6

Correlation of LASSO-GC and pairwise-GC techniques in recuperating the W summary...

Figure 5.7

Examination of network designs with LASSO-GC and connection measures.

Figure 5.8

Utilitarian availability examination of dorsal attention network and visual...

Figure 5.9

Different phases of approach in attributes.

Figure 5.10

GAs in MATLAB’s Optimization Toolbox.

Figure 5.11

Rastrigin’s function optimization with the default setting.

Figure 5.12

Rastrigin’s function optimization with the default setting, except...

Figure 5.13

Rastrigin’s function optimization with the default setting, except...

Figure 5.14

Rastrigin’s function optimization with the default setting, except...

Figure 5.15

Lower raw fitness value.

Figure 5.16

Higher raw fitness value.

Figure 5.17

Stochastic uniform selection method.

Figure 5.18

Elite count 10.

Figure 5.19

Elite count 3.

Figure 5.20

Elite count 1.

Figure 5.21

Estimation of frequency relation to error over time.

Figure 5.22

Radiation readings for distributed beamforming.

Chapter 6

Figure 6.1

Spherical free-space propagation: power transmitted over the air radiates...

Figure 6.2

Ray model geometry.

Figure 6.3

Simple propagation models: free-space one-slope direct line of sight, and two-ray...

Figure 6.4

Vertical polarization ground reflection coefficient.

Figure 6.5

Horizontal polarization ground reflection coefficient.

Figure 6.6

Six-ray model (

R

0

;

R

1

;

R

2

)...

Figure 6.7

Ray tracing plots of received signal power indicator....

Figure 6.8

Ray-tracing geometry for a street corridor; some rays escape the corridor through...

Figure 6.9

Ray-tracing power levels down a street, with gaps between homes.

Figure 6.10

Beam following impinging on home dividers.

Figure 6.11

Angles of incidence illuminating homes in an urban corridor.

Figure 6.12

Demonstration of street orientation angle

φ

for use in COST 231...

Figure 6.13

Tree foliage attenuation as a function of frequency.

Figure 6.14

COST-231 indoor penetration loss model.

Figure 6.15

Penetration odd into private structures, total thickness dispersion.

Figure 6.16

In-building loss for residential buildings: measurement campaigns published for...

Figure 6.17

In-building loss for urban office buildings and high-rises: measurement campaigns...

Figure 6.18

Random waypoint model.

Figure 6.19

MAC layers in IEEE 802.11 standard.

Figure 6.20

RTS/CTS mechanism.

Figure 6.21

Ad hoc routing protocols.

Figure 6.22

Example of distance vector routing.

Figure 6.23

Accuracy of information in FSR.

Figure 6.24

An example of clustering in HSR.

Figure 6.25

Example of CGSR routing from node 1 to node 12.

Figure 6.26

Example of CBRP protocol.

Figure 6.27

Route discovery in AODV.

Figure 6.28

Creation of record route in DSRP.

Figure 6.29

Example of route creation in TORA.

Figure 6.30

Re-establishing route on failure of link 5-7. The new reference level is node 5.

Figure 6.31

Associativity-based routing.

Figure 6.32

An illustrative example of overlay networks.

Figure 6.33

A sample overlay network.

Figure 6.34

Overlay network broken up into logical layers.

Figure 6.35

Overlay network over the Internet.

Chapter 7

Figure 7.1

Timestamp identification.

Figure 7.2

Execute the callback function.

Figure 7.3

Remote client access configuration setup.

Figure 7.4

Local client access configuration setup.

Figure 7.5

PDR vs Node Mobility.

Figure 7.6

Packet Loss Rate vs Node Mobility.

Figure 7.7

Routing Overhead vs Node Mobility.

Figure 7.8

Average End-to-End Delay vs Node Mobility.

Figure 7.9

Packet Delivery Ratio vs Number of Connections.

Figure 7.10

Routing Overhead vs Number of Connections.

Figure 7.11

Packet Loss Rate vs Number of Connections.

Figure 7.12

Average End-to-End Delay vs Number of Connections.

Chapter 8

Figure 8.1

Two-stage model of torque against spark.

Figure 8.2

ResStatus plot.

Figure 8.3

CustIncome plot.

Figure 8.4

CustIncome plot.

Figure 8.5

TmAtAddress plot.

Figure 8.6

ResStatus plot.

Figure 8.7

EmpStatus plot.

Figure 8.8

Random waypoint mobility model.

Figure 8.9

The location of target and anchor nodes in WSN.

Figure 8.10

(a) Simulated path loss model; (b) Histogram of simulated RSS noise modeled as...

Figure 8.11

RMSE vs

N

(number of anchors).

Figure 8.12

CDF vs error.

Figure 8.13

Cluster formation in LEACH.

Figure 8.14

Steady-state phase in LEACH.

Figure 8.15

LEACH simulation.

Pages

Cover

ii

iii

iv

xi

xii

xiii

xiv

xv

xvi

xvii

xviii

xix

xx

xxi

xxii

xxiii

xxiv

xxv

xxvi

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

Scrivener Publishing100 Cummings Center, Suite 541JBeverly, MA 01915-6106

Publishers at ScrivenerMartin Scrivener ([email protected])Phillip Carmical ([email protected])

Network Modeling, Simulation and Analysis in MATLAB

Theory and Practices

 

Dac-Nhuong Le

Haiphong University, Haiphong, Vietnam

Abhishek Kumar Pandey

ACERC, Visiting faculty, Mdsu, Ajmer Rajasthan, India

Sairam Tadepalli

AWS Architect, Python Developer, India

Pramod Singh Rathore

ACERC, Visiting Faculty, Mdsu Ajmer Rajasthan, India

Jyotir Moy Chatterjee

Lord Buddha Education Foundation (APUTI), Kathmandu, Nepal

 

 

This edition first published 2019 by John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, USA and Scrivener Publishing LLC, 100 Cummings Center, Suite 541J, Beverly, MA 01915, USA © 2019 Scrivener Publishing LLC For more information about Scrivener publications please visit www.scrivenerpublishing.com.

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, except as permitted by law. Advice on how to obtain permission to reuse material from this title is available at http://www.wiley.com/go/permissions.

Wiley Global Headquarters 111 River Street, Hoboken, NJ 07030, USA

For details of our global editorial offices, customer services, and more information about Wiley products visit us at www.wiley.com.

Limit of Liability/Disclaimer of Warranty While the publisher and authors have used their best efforts in preparing this work, they make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation any implied warranties of merchantability or fitness for a particular purpose. No warranty may be created or extended by sales representatives, written sales materials, or promotional statements for this work. The fact that an organization, website, or product is referred to in this work as a citation and/or potential source of further information does not mean that the publisher and authors endorse the information or services the organization, website, or product may provide or recommendations it may make. This work is sold with the understanding that the publisher is not engaged in rendering professional services. The advice and strategies contained herein may not be suitable for your situation. You should consult with a specialist where appropriate. Neither the publisher nor authors shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages. Further, readers should be aware that websites listed in this work may have changed or disappeared between when this work was written and when it is read.

Library of Congress Cataloging-in-Publication Data

ISBN 978-1-119-63143-9

Foreword

In addition to modeling and simulating systems, this book provides a better understanding of how real-world systems function. This enables us to predict the behavior of systems before they are actually built and to accurately analyze them under various operating conditions. This book provides comprehensive, state-of-the-art coverage of all the essential aspects of modeling and simulation both physical and conceptual systems. Various real-life examples are included, which show how simulation plays a crucial role in understanding real-world systems. We also explain how to effectively use MATLAB to apply the modeling and simulation techniques presented successfully.

After introducing the underlying philosophy of the systems, the book offers step-by-step procedures for modeling with practical examples, and codes different types of systems using modeling techniques such as the Rayleigh fading model, BPSK modulation and demodulation, QPSK modulation and demodulation, etc.

This book will prepare both undergraduate and graduate students for advanced modeling and simulation courses, and will help them carry out useful simulation studies. Moreover, postgraduate students should be able to comprehend and conduct simulation research after completing this book.

Preface

This book is organized into eight chapters. In Chapter 1 a detailed overview is provided on how MATLAB can be used for network simulation and modeling. Then various types of simulation are described, followed by their working principles and different terminologies, along with the algorithms governing these simulations. The chapter also describes the selection of various software simulations for MATLAB, and the simulation tools based on high performance, followed by the different network models. This chapter will effectively help readers understand the concepts more clearly and provide them with a clear understanding of how to perform these tasks in MATLAB.

In Chapter 2, the power of MATLAB for computational mathematics is shown, followed by a detailed description of the features. A detailed discussion of various areas of MATLAB use is provided. We also discuss multiple notations, operators, and syntax and give hands-on practical examples along with various loop structures and decision controls, import, and export operations, using and creating M-files, different types of plotting and graphs, etc. Also explained are the various clones of MATLAB. This chapter will effectively help readers understand the workings and uses as well as applications of MATLAB more clearly.

In Chapter 3, we explain how digital communication system simulations can be performed using MATLAB. A detailed introduction to digital communications, i.e, data transmission, is provided along with an example. Next, a detailed explanation of simulations of Rayleigh fading model, BPSK modulation and demodulation, QPSK (Quadrature Phase Shift Keying) modulation and demodulation is given, along with their MATLAB coding, and the output is shown as well. We image error rate vs signal-to-noise ratio and OFDM with sample MATLAB coding and their output.

In Chapter 4, we explain how to perform statistical analysis of network data utilizing MATLAB starting from affiliation systems/networks with examples. Time series analysis, statistical stationarity, time series decomposition, de-trending, curve fitting, digital filtering, recurrence reaction, and the connection between recurrence reaction to spline parameter are also explained. Next, details are provided about autocorrelation, test for independence, linear autoregressive models, etc.

In Chapter 5, we explain how network routing simulations can be done using MATLAB. Additionally, deep insights are provided about the evaluation of Granger causality measures on known systems, along with results. We explain the application to fMRI BOLD (Blood-Oxygenation-Level-Dependent) information from a visuospatial consideration undertaking followed by various model development approaches, models validation, universal algorithms, and sequential algorithms, acoustic-centric and radio-centric algorithms, AODV routing protocols, etc.

In Chapter 6, we explain how wireless network simulations can be done using MATLAB. We explain how shadowing methods are used for radio propagation, two-ray model, indoor propagation, classical empirical model, Hata model, Walfisch-Ikegami model, Erceg model, multi-slope model, dispersive model, 3GPP SCM, MAC: IEEE 802.11 (CSMA/CA, virtual carrier sense, and RTS-CTS-DATA-ACK), NET-ad hoc routing, APP-overlay routing protocols, etc.

In Chapter 7, we explain various layers and protocols such as Vehicle Network Toolbox. In this toolbox, an explanation is given on how to make a receiving channel, how to access a chain, how to start a channel, how to transmit a message, etc. Next, the topic of network management (NM) is presented, in which a detailed explanation is given of network installation planning, setting up a remote client access configuration, interaction layer, directing protocols in MANET, along with their results and analysis, and transport layer with protocols.

In Chapter 8, a detailed explanation is provided of various real-time scenarios by using case studies taken from multiple real-time situations with their sample codes and result from analysis for a better understanding of how MATLAB performed in these situations and how it can solve critical simulation problems in detail.

Dr. Dac-Nhuong Le

Deputy-Head, Faculty of Information Technology Haiphong University, Haiphong, Vietnam

Abhishek K. Pandey

Assistant Professor (Computer Science Engineering) ACERC, Visiting faculty, Mdsu, Ajmer Rajasthan, India

Sairam Tadepalli

Junior Data Scientist, AWS Architect, Python Developer

Pramod Singh Rathore

Assistant Professor (Computer Science Engineering) ACERC, Visiting faculty, Mdsu Ajmer Rajasthan, India

Jyotir Moy Chatterjee

Assistant Professor (IT) Lord Buddha Education Foundation (APUTI), Kathmandu, Nepal

Acknowledgments

First of all, I would like to thank the authors for contributing their chapters to this book. Without their contributions, this book would not have been possible. Thanks to all my associates for sharing my happiness at the start of this project and following up with their encouragement when it seemed to be too difficult to complete.

I want to acknowledge and thank the most important people in my life, my grandfather, grandmother, and finally thanks to my wife. This book has been a long-cherished dream of mine which would not have been turned into reality without the support and love of these fantastic people, who encouraged me despite my not giving them the proper time and attention. I am also grateful to my best associates for their blessings and unconditional love, patience, and encouragement.

Dac-Nhuong Le

Deputy-Head, Faculty of Information Technology Haiphong University, Haiphong, Vietnam

Writing a book is harder than I thought and more rewarding than I could have ever imagined. First and foremost, I would like to thank my father Mr. Krishan Dev Pandey for being the coolest father ever and my mother Mrs. Veena Pandey for allowing me to follow my ambitions throughout my childhood. They taught me discipline, tough love, manners, respect, and so much more that has helped me succeed in life. Also, I would like to express my gratitude to my elder sister Mrs. Arpna Tripathi, who always stood by me during every struggle and all my successes. She has been my inspiration and motivation for continuing to improve my knowledge and move my career forward. Also, I’m eternally grateful to my wife, Mrs. Kajal Pandey, for standing beside me throughout my career and the writing of this book. I also thank my wonderful son, Aarudra Pandey, for always making me smile and for understanding on those weekend mornings when I was writing this book instead of playing games with him. I hope that one day he can read it and understand why I spent so much time in front of my computer. Last but not the least, I want to thank my friends who always backed me up during both good and bad days and everyone who ever said anything positive to me or taught me something. I heard it all, and it meant something.

Abhishek K. Pandey

Assistant Professor (Computer Science Engineering) ACERC, Visiting faculty, Mdsu, Ajmer Rajasthan, India.

Acronyms

AAL

Ambient Assistive Learning

ABR

Associativity Based Routing

ACK

Acknowledgement

AODV

Ad hoc On-Demand Distance Vector

ASK

Amplitude-Shift Keying

ANT

Attention Network Test

ASW

Apparent Source Width

ARIMA

Autoregressive Integrated-Moving-Average

AR

Auto Regressive

AS

Autonomous System

ASAP

AS-Aware Peer-relay Protocol

B.A.T.M.A.N

Better Approach To Mobile Adhoc Networking

BPSK

Double Phase Shift Keying

BOLD

Blood-Oxygenation-Level-Dependent

CDF

Cumulative Distribution Function

CSMA/CA

Carrier-Sense Multiple Access with Collision Avoidance

CSMA/CD

Carrier Sense Multiple Access with Collision Detect

CLPC

Cross-Layer setup approach for Power Control

CTS

Clear to Send

CRLB

Cramer-Rao Lower Bound

CBRP

Cluster based Routing Protocol

CGSR

Clusterhead Gateway Switch Routing

DSR

Dynamic Source Routing

DAN

Dorsal Attention Network

DREAM

Distance Routing Effect Algorithm for Mobility

DSSS

Direct Sequence Spread Spectrum

DSDV

Destination-Sequenced Distance-Vector Routing

DSRP

Dynamic Source Routing Protocol

DRP

Dynamic Routing Protocol

DHT

Distributed Hash Table

ECG

Electrocardiogram

EEG

Electroencephalogram

FMRI

Functional Magnetic Resonance Imaging

FEF

Frontal Eye Field

FHSS

Frequency Hopping Spread Spectrum

FFT

Fast Fourier Transform

FSR

Fisheye State Routing

GC

Granger Causality

GA

Genetic Algorithm

GM-SDP

Gaussian Mixture-SemiDefinite Programming

GUI

Graphical User Interface

GSR

Global State Routing

IACF

Interaural Cross correlation Function

IEEE

Institute of Electrical and Electronics Engineers

ITU-T

International Telecommunication Union-Telecommunication

JiST

Java in Simulation Time

LASSO

Least Absolute Shrinkage and Selection Operator

LEACH

Low Energy Adaptive Clustering Hierarchy

LOS

Line of Sight

LCC

Least Cluster Change

LUT

Look-Up-Table

M-QAM M-ary

Quadrature Amplitude Modulation

MWP

Markovian Waypoint Model

MANET

Mobile Ad-hoc Network

MVAR

Multivariate Vector Auto Regressive

MIMO

Multiple In, Multiple Out

MWP

Markovian Waypoint Model

MRL

Message Retransmission List

MUEL

Minimize Usage Extend Life

NM

Network Management

NS

Network Simulator

NHST

Null Hypothesis Significance Testing

NLOS

Non Line of Sight

OFDM

Orthogonal Frequency Division Modulation

OLSR

Optimized Link State Routing Protocol

OS

Operating System

OMNET

Object-Oriented Modular Discrete Event Simulator

PAN

Personal Area Network

PHY

Physical Layer

P2P

Peer-to-Peer

PLL

Phase Locked Loop

PSK

Phase-Shift Keying

PROWLER

Probabilistic Wireless Network Simulator

QPSK

Quadrature Phase Shift Keying

QAM

Quadrature Amplitude Modulation

RWPB

Irregular Waypoint on the Border

RWP

Arbitrary Waypoint

RWPB

Discretionary Waypoint on the Periphery

RERR

Route Error

RREP

Route Reply

RPGM

Reference Point Group Mobility Model

RDP

Reliable Data Protocol

ROI

ROI Region of Interest

RON

Solid Overlay Networks

RTS

Request to Send

RREQ

Route Request

RT

Response Time

RFC

Request for Comments

RSS

Received Signal Strength

RMSE

Root Mean Square Error

SSR

Signal Stability Routing

SSF

Scalable Simulation Framework

SNAP

Simulation Analysis Platform

SST

Signal Stability Table

SRP

Static Routing Protocol

SCM

Spatial Channel Model

SDP

Semidefinite Programming

SNR

Signal-to-Noise Ratio

SwaP

Weight and Power

SWANS

Scalable Wireless Ad hoc Network Simulator

TORA

Temporally Ordered Routing Algorithm

TCP

Transmission Control Protocol

TCP/IP

Transmission Control Protocol/Internet Protocol

TTL

Time to Live

TOSSIM

Tiny Operating System Sensor Network

TDMA

Time Division Multiple Access

UDP

User Datagram Protocol

VAR

Vector Autoregression

VANET

Vehicular Ad hoc Network

VOC

Visual Occipital Cortex

VPN

Virtual Private Network

VoIP

Voice over Internet Protocol

ZRP

Zone Routing Protocol

ZHLS

Zone-based Hierarchical Link State Routing Protocol

WRP

Wireless Routing Protocol

WLS

Weighed Least Square

WSN

Wireless Sensor Network

WOE

Weight of Evidence

WIMAX

Worldwide Interoperability for Microwave Access

3GPP

3rd Generation Partnership Project

CHAPTER 1INTRODUCTION TO MODELING, SIMULATIONS AND ANALYSIS

Abstract

In this chapter, we have tried to provide a detailed overview of how MATLAB can be used for network simulation and modeling. We describe simulation and its various types, followed by their working principles and different terminologies, and the algorithms governing these simulations. Also described are various simulation software selections for MATLAB, the simulation tools based on high performance, followed by the different network models. This chapter will effectively help readers understand the concepts more clearly and provide them with a clear understanding of how to perform these tasks in MATLAB.

Keywords: MATLAB, modeling, simulations

1.1 MATLAB Modeling and Simulation

The representation of the system in learning is an abstraction, as mentioned previously. This means that it will not generally be considered with a more significant number of features as well as characteristics of the system and also that it only produces elected features and characteristics. Hence, based on simplifications and assumptions, the received model representation is a compact enactment of the system. Learning the sequence for identifying the appropriate entities and their relationships with the system is known as modeling.

Two important questions arise for any researcher when dealing with the evaluation of the performance of the system:

Question 1

– What is a good model?

Question 2

– How to obtain it?

Here it is essential to take care of two additional factors if the evaluation method is represented as the computer simulation.

It has to be implemented in software once the performance model is built. Hence, the “model” performance is to be of high quality, as the implementation needs to represent it.

Hence, a suitable tool requirement needs to be selected which formally suits the process of the evaluation method. The modeling for computer simulations of these four cornerstones are combined. Sadly, the problem is that a large number of them are complex, and generally, we need specific prior learning experience with modeling and simulation.

“Essentially, all models aren’t right, yet some are helpful” is the reality of execution. By remembering this, a great execution (either for investigation or for reenactment) has the following qualities:

Simplicity:

It is conceivable that the execution models are great. This does not imply that an execution model ought not be point by point or ought not to attempt to consider complex connections. In any case, a great execution displays its multifaceted nature when it fills the need of the assessment (

additionally alluded to as objective of the investigation

).

Because of the shortage of exactness in contrast with the real world, this is a fundamental point in reproduction models which are regularly scrutinized. This is basically the notion od computer simulation and manufactured the rganized nodes so that mixing of nodes can be minimized to get better accuracy. For the reusability of execution models, it has certain additional results. Usually, the assessment contemplates have different objectives (primarily if they will be distributed to established researchers), so there is likely a contrast in the utilized execution models.

For systems, it clarifies a large number of open-source reproduction models, and for across-the-board organizing frameworks, it explains the nonattendance of prevailing or standard reenactment models to a certain degree. To fill all needs, there is no reenactment shown. Any recreation demonstrate which is accessible has been planned given a specific assessment target. One should first check the first assessment reason which is served by the model, and it needs to reuse the particular reproduction display.

Reliability:

The basic part of execution models is their stable quality.

The clarification behind the evaluation of modeling has been made clear initially for better efficiency. In the resulting phase of the modeling system, the assumptions and reenactments ought to have been noticed, including its evolution phases. From the learning phases of the model to final output phase, model representation and its simulation plays an important role in finding the reliability of the resultant model. In the simulation part of the modeling, the recreation of the model is very much important for better analysis of the model. The analysis result states that there difference between evaluation procedure and final output and its application model. So reliability factor has to deal with all the above-mentioned analysis. So a genuine programming model can only result in better reliability of the system, as it is reliable for better execution, evaluation and final applications.

Notwithstanding the qualities of a decent execution display, a great reproduction model ought to have the accompanying attributes:

Proficiency:

As for the execution show up, it ought to be finished reasonably after a particular instant of time. In like way, running events of simulation is quick and different analysis results can then be visible.

Checked:

The executed reenactment model ought to be confirmed, i.e., the similarity between the execution shown and reproduction demonstrate that it more likely than not has been checked by different strategies.

Note that this progression is not quite the same as approving an execution or reproduction display.

Code Quality:

Reliability on reusability of the code can result in using a specific programming method which is responsible for avoiding confusion in system programming and further simulation for achieving the desired results.

Accessibility:

Reproduction model ought to be available with the end goal that different gatherings confirm and approve the model themselves. As expressed previously, an execution show isn’t required to be as point by point as could reasonably be expected. Truth be told, finding the correct level of exactness for an execution show is very troublesome. A typical oversight in demonstrating is to put excessive detail into a model because of the need for both involvement in execution assessment or foundation information about the framework under investigation. Lastly, a great execution does not need to be all inclusive nor for the most part reusable.

1.2 Computer Networks Performance Modeling and Simulation

1.2.1 Computer-Based Models

Computer-based models are usually classified as follows [1, 2]:

Deterministic vs Stochastic: A deterministic model predicts a specific output from a given set of inputs with neither randomness nor probabilistic components. A given input will always produce the same output given the same initial conditions. In contrast, a stochastic model has some inputs with randomness, hence the model predicts a set of possible outputs weighted by their likelihoods or probabilities.

Steady-state vs Dynamic: A steady-state model tries to establish the outputs according to the given set of inputs when the system has reached steady-state equilibrium. In contrast, a dynamic model provides the system reactions facing variable inputs. Steady-state approaches are often used to provide a simplified preliminary model.

Discrete vs. Continuous values: A discrete model is represented by a finite codomain, hence the state variables take their values from a countable set of values. In contrast, a continuous model corresponds to an infinite codomain. Therefore, the state variables can take any value within the range of two values. However, there are some systems that need to be modeled showing aspects of both approaches which bring about combined discrete-continuous models.

Discrete vs Continuous time: In a discrete model the state changes can only occur at a specific instant in time. These instants correspond to significant events that impact the output or internal state of the system. In contrast, in a continuous model the state variables change in a continuous way and not abruptly from one state to another. Therefore, continuous models encompass an infinite number of states. Discrete models are the most commonly used for network modeling and simulation.

Simulations can be carried out following two approaches: local and distributed. Distributed simulation is such that multiple systems are interconnected to work together, interacting with each other, to conduct the simulation. In contrast, a local simulation is carried out on a single computer. Historically, the latter approach has been the most widely used to simulate computer networks, but the increasing complexity of simulations is fostering the importance of the former approach.

Figure 1.1 summarizes the modeling and simulation process. Behavioral information extracted from a real system is used jointly with system specifications and requirements. Based on these inputs, a system model is built and subsequently validated through simulation. Usually, several performance metrics are determined during simulations, which can be compared with results extracted from experimentations with the real system. If both are similar, the model is considered as valid, while if they are not, the system model must be corrected. Similarly, performance metrics are used to determine if the system model fulfills the requirements, so the designed system can be refined and extended in a controlled way.

Figure 1.1 System modeling and simulation scheme.

1.2.2 Computer Network Simulation

Nowadays, computer network simulation is a fundamental element in network researching, development and teaching. Network simulators are widely used not only by practitioners and researchers, but also by students to improve their understanding of computer networks. Network simulation can be extremely useful when applied to scenarios such as protocol analysis, complex network deployment, evaluation of new services, prototypes or architectures, and so on. Broadly speaking, a network simulator can be understood as a black box, as illustrated in Figure 1.2 [13, 23, 24]

Figure 1.2 Network simulator abstraction.

A network simulator implements a computer network model through algorithms, procedures and structures according to a given programming language. The implemented network model receives a set of parameters as inputs, which impose the rules and constraints of the simulation. In other words, these parameters set the course of the simulation. When the simulation process ends, the network simulator returns a set of results as outputs that can be used with a dual purpose: validating and verifying the correctness of the implemented model for a particular domain of system states, and analyzing the behavior of the network modeled when the former has been successful [15-17].

Computer networks are most often simulated with discrete-event simulation. The main reason behind this widespread use is that discrete-event simulation adapts better to represent the behavior of computer networks, since computer network protocols can be modeled as finite state machines. In a computer network there is a steady state between two consecutive events, and discrete-event simulation allows for jumping from one steady state to another, leading to faster simulations. Other interesting aspects of discrete-event simulation are flexibility and lower computational overhead.

1.3 Discrete-Event Simulation for MATLAB

Discrete event simulation utilizes a mathematical/logical model of a physical system that portrays state changes at precise points in simulated time. Both the nature of the state change and the time at which the change occurs mandate precise description. Customers waiting for service, the management of parts inventory or military combat are typical domains of discrete event simulation [10, 11].

A more theoretical top-down description of discrete-event simulations is the following: The start of a discrete-event simulation is a model. A model is the construction of a conceptual framework, used to represent a system. The specific characteristics of discrete-event simulation model are the following:

Stochastic: At least some of the model’s components are stochastic. This means that there is a certain factor of randomness in the model. This is represented by random number generators, which are explained in the terminology.

Dynamic: The time evolution of the system’s components is important. Time is a significant variable.

Discrete: The state of the system changes only significantly when events occur at discrete time instances.

Figure 1.3 Discrete-event simulation.

The difference with continuous simulations is the use of the factor time. The system evolves over time so the variables change continuously in a continuous simulation. Whereas in a discrete event simulation the events themselves determine if something happens or not. Time can go by without anything happening.

We will give a concise introduction into discrete-occasion reenactment and for this we present the essential phrasing utilized in writing to clarify their connections. Likewise, for a discrete-occasion test system we present the center calculation, i.e., the time-propel occasion booking calculation.

1.3.1 Terminology and Components of Discrete-Event Simulation

Some common phrasing and elements for all discrete-occasion reproduction frameworks are known. In writing the terminology may change and surprisingly there is no institutionalized arrangement of terms. In a portion of our reference papers we freely adjust the definitions. A reflection of a specific subject of intrigue is alluded to as substance and it very well may be depicted by its own properties; For example, an element bundle carries its source (address), qualities, length as well as goal (address).

The relationship of a suitable set of entities is defined as a system. A certain purpose can be fulfilled by the relationship of a suitable set of entities, i.e., the system attempts to achieve a certain goal. For example, the goal of a network provides end-to-end connectivity while it may be defined by the routers, links and the entities hosts. The model is defined as the system and the use of the following methods refers to an abstracted system and is termed the model for clearness. During the process of minimizing the difficulty and the correlated cost as well as, effort involved, it will always consider the model in computer simulations.

1.3.2 The Principle of Discrete-Event Simulation

It is possible to utilize the discrete-event test system to bounce from one event to the next, and the rate an occasion might incite can be modified in the state of framework and also the age of a newer, supposed event occurred in future. To deal with every one of the events in the discrete-event simulation, the events are recorded as events seen later on the event list (FEL). To embed, to discover and to evacuate events seen, which are set later on, an event rundown ought to be actualized effectively later on in the event list [25].

Figure 1.4 demonstrates the growth of discrete-event simulation after some time. The events happen at the given time interval ti and might alter the state of framework. To advance the reenactment with each discrete-event time ti, in the PC memory a depiction of the framework is made that contains every required datum.

Figure 1.4 Principles of discrete-event simulation and the system state changes only at discrete point’s ti in time during the simulation.

Typically all discrete-event test systems share the following components:

System express:

The condition of the framework can be depicted by the arrangement of factors.

Entities:

Temporary entities are the elements that flow through the system. They wait in queues, follow a sequence of events and are specified by certain attributes. Most entities are introduced in a system according to a stochastic distribution. Examples of temporary entities are: parts of goods, customers and information messages. Permanent entities remain in the system when the simulation is executed. They are used in the events to process the temporary entities. The usage time of permanent entities is mostly stochastically distributed. Examples of permanent entities are: operators, servers and machines.

Attributes:

Entities own attributes that specify certain properties and states of the entity. They can affect how entities are handled during the sequence of the processes. They are not fixed through the flow so they can change by being processed. Examples of attributes are: priority and quality.

Clock:

The clock maintains the simulation time. The measurement units vary depending on the characteristics of the model. Because we are dealing with discrete-events, the time is not continuous but “jump” according to the events. The clock is also responsible for the timer of the events.

Queue:

Place where temporary entities wait an undetermined time before being accepted in an event. Some entities might have priority attributes to skip the queue. These queues can, for example, be used to locate overproduction or a bottleneck, as mentioned in the introduction.

Random number generators:

Most of the previous components need the possibility to generate random variables in order to simulate the stochastic distributions. Pseudorandom number generators are used to accomplish this.

Future occasion list:

To deal with the events, it very well may be appropriated by the information structure.

Statistical counters:

The result of a simulation should be shown in the form of a report that gives statistics about all the important components of the discrete-event simulation. These statistics are analyzed to make better decisions.

Initialization schedule:

To instate the reproduction display we utilize introduction routine and fix the clock value to zero in the framework.

Timing schedule:

From the future event list a routine recovers the the next occasion and also advances the clock value to the frequency in the framework.

Event schedule:

Events change the state of the system. A sequence of events can be bundled as an activity. These events determine the timing and the flow of the simulation, hence the word discrete-event simulation. A typical example of an event is the arrival of new entity, often used to start the simulation. The sequence of events ordered by time of occurrence forms an event list. Each simulation has at least one event list. This events list determines the mechanism for advancing the simulation time. This sequence of actions is also called event-scheduling. Every simulation also needs a stopping event or ending condition. This determines how long the simulation will run. Typical stopping events are a specific time in the future or a condition that the simulation itself fulfills. When a specific event happens amid the recreation is called an event schedule. By and large, an event routine is characterized for every event composed. In writing the term handler is frequently utilized synonymously.

1.3.3 ESTA Algorithm

An ESTA algorithm is an event-scheduling/time-advance algorithm [19]. According to their occurrence time, the event notifications are listed inside the future event list, i.e.,

(1.1)

Here t1 in this case is where an event occurs in time.

The diagram in Figure 1.5 below depicts the flow of the ESTA algorithm, which is subdivided into three main sections.

Figure 1.5 Flow chart explaining a discrete-event test system.

They are:

Section 1. Initialization

Section 2. Event Processing

Section 3. Output

Initialization employs three main processes: the first one is the clock, secondly, entities and finally, state variables. After that the simulator enters the second part and the events are processed in a loop. Here a type of specific event has been created, which is termed handler, in which current event is retrieved or recovered from the next events.

The state variables, entities and update statistics might be changed by the event routine and new event notices are created. The simulation enters the final part of the process after receiving the valid loop of termination condition. Finally, the statistics are calculated in the output part of the process and will be written into files if necessary.

1.3.4 ANALYSIS: Determination of Time to Attain Steady State Condition for MATLAB