# MATLAB Training Courses

MATLAB Statistical Software courses

## MATLAB Course Outlines

Code | Name | Duration | Overview |
---|---|---|---|

surveyp | Research Survey Processing | 28 hours | This four day course walks you from the point you design your research surveys to the tme where you gather and collect the findings of the survey. The course is based on Excel and Matlab. You will learn how to design the survey form and what the suitable data fields should be, and how to process extra data information when needed. The course will show you the way the data is entered and how to validate and correct wrong data values. At the end the data analysis will be conducted in a variety of ways to ensure the effectiveness of the data gathered and to find out hidden trends and knowledge within this data. A number of case studies will be carried out during the course to make sure all the concepts have been well understood.Day 1: Data analysis Determining the Target of the survey Survey Design data fields and their types dealing with drill down surveies Data Collection Data Entry Excel Session Day 2: Data cleaning Data reduction Data Sampling Removing unexpcted data Removing outlier Data Analysis statstics is not enough Excel Session Day 3: Data visualization parallel cooridnates scatter plot pivot tables cross tables Excel Session Conducting data mining algorithms on the data Decision tree Clustering mining assoiciation rules matlab session Day 4: Reporting and Disseminating Results Archiving data and the finding out Feedback for conducting new surveies |

simwcs | Simulation of Wireless Communications Systems using MATLAB | 72 hours | This course contains a comprehensive material about MATLAB as a powerful simulation tool for communications. The aim of this course is to introduce MATLAB not only as a general programming language, rather, the role of the extremely powerful MATLAB capabilities as a simulation tool is emphasized. The examples given to illustrate the material of the course is not just a direct use of MATLAB commands, instead they often represent real problems.• Outcomes of this course After the completion of this course, the student should be able to attack many of the currently open research problems in the field of communications engineering as he/she should have acquired at least the following skills • Map and manipulate complicated mathematical expressions that appear frequently in communications engineering literature • • Ability to use the programming capabilities offered by MATLAB in order to reproduce the simulation results of other papers or at least approach these results. • Create the simulation models of self-proposed ideas. • Employ the acquired simulation skills efficiently in conjunction with the powerful MATLAB capabilities to design optimized MATLAB codes in terms of the code run time while economizing the memory space. • Identify the key simulation parameters of a given communication systems, extract them from the system model and study the impact of these parameters on the performance of the system considered. • Course Structure The material provided in this course is extremely correlated. It is not recommended that a student attend a level unless he/she attends and deeply understands its prior level in order to ensure the continuity of the acquired knowledge. The course is structured into three levels starting from an introduction to MATLAB programming up to the level of complete system simulation as follows. Level 1: Communications Mathematics with MATLAB Sessions 01-06 After the completion of this part, the student will be able to evaluate complicated mathematical expressions and easily construct the proper graphs for different data representation such as time and frequency domain plots; BER plots antenna radiation patterns…etc. Fundamental concepts 1. The concept of simulation 2. The importance of simulation in communications engineering 3. MATLAB as a simulation enviroment 4. About matrix and vector representation of scalar signals in communications mathematics 5. Matrix and vector representations of complex baseband signals in MATLAB MATLAB Desktop 6. Tool bar 7. Command window 8. Work space 9. Command history Variable, vector and matrix declaration 10. MATLAB pre-defined constants 11. User defined variables 12. Arrays , vectors and matrices 13. Manual matrix entry 14. Interval definition 15. Linear space 16. Logarithmic space 17. Variable naming rules Special matrices 18. The ones matrix 19. The zeros matrix 20. The identity matrix Element-wise and matrix-wise manipulation 21. Accessing specific elements 22. Modifying elements 23. Selective elimination of elements (Matrix truncation) 24. Adding elements , vectors or matrices (Matrix concatenation) 25. Finding the index of an element inside a vector or a matrix 26. Matrix reshaping 27. Matrix truncation 28. Matrix concatenation 29. Left to right and right to left flipping Unary matrix operators 30. The Sum operator 31. The expectation operator 32. Min operator 33. Max operator 34. The trace operator 35. Matrix determinant |.| 36. Matrix inverse 37. Matrix transpose 38. Matrix Hermitian 39. …etc Binary matrix operations 40. Arithmetic operations 41. Relational operations 42. Logical operations Complex numbers in MATLAB 43. Complex baseband representation of passband signals and RF up-conversion , a mathematical review 44. Forming complex variables ,vectors and matrices 45. Complex exponentials 46. The real part operator 47. The imaginary part operator 48. The conjugate operator (.)* 49. The absolute operator |.| 50. The argument or phase operator MATLAB built in functions 51. Vectors of vectors and matrix of matrix 52. The square root function 53. The sign function 54. The "round to integer" function 55. The "nearest lower integer function" 56. The "nearest upper integer function" 57. The factorial function 58. Logarithmic functions (exp,ln,log10,log2) 59. Trigonometric functions 60. Hyperbolic functions 61. The Q(.) function 62. The erfc(.) function 63. Bessel functions Jo (.) 64. The Gamma function 65. Diff , mod commands Polynomials in MATLAB 66. Polynomials in MATLAB 67. Rational functions 68. Polynomial derivatives 69. Polynomial integration 70. Polynomial multiplication Linear scale plots 71. Visual representations of continuous time-continuous amplitude signals 72. Visual representations of stair case approximated signals 73. Visual representations of discrete time – discrete amplitude signals Logarithmic scale plots 74. dB-decade plots (BER) 75. decade-dB plots (Bode plots , frequency response , signal spectrum) 76. decade-decade plots 77. dB-linear plots 2D Polar plots 78. (planar antenna radiation patterns) 3D Plots 79. 3D radiation patterns 80. Cartesian parametric plots Optional Section (given upon the demand of the learners) 81. Symbolic differentiation and numerical differencing in MATLAB 82. Symbolic and numerical integration in MATLAB 83. MATLAB help and documentation MATLAB files 84. MATLAB script files 85. MATLAB function files 86. MATLAB data files 87. Local and global variables Loops, conditions flow control and decision making in MATLAB 88. The for end loop 89. The while end loop 90. The if end condition 91. The if else end conditions 92. The switch case end statement 93. Iterations , converging errors , multi-dimensional sum operators Input and output display commands 94. The input(' ') command 95. disp command 96. fprintf command 97. Message box msgbox Level 2: Signals and Systems Operations (24 hrs) Sessions 07-14 The main objectives of this part are as follows • Generate random test signals which are necessary to test the performance of different communication systems • Integrate many elementary signal operations may be integrated to implement a single communication processing function such as encoders, randomizers, interleavers, spreading code generators …etc. at the transmitter as well as their counterparts at the receiving terminal. • Interconnect these blocks properly in order to achieve a communications function • Simulation of deterministic, statistical and semi-random indoor and outdoor narrowband channel models Generation of communications test signals 98. Generation of a random binary sequence 99. Generation of a random integer Sequences 100. Importing and reading text files 101. Reading and playback of audio files 102. Importing and exporting images 103. Image as a 3D matrix 104. RGB to gray scale transformation 105. Serial bit stream of a 2D gray scale image 106. Sub-framing of image signals and reconstruction Signal Conditioning and Manipulation 107. Amplitude scaling (gain, attenuation, amplitude normalization…etc.) 108. DC level shifting 109. Time scaling (time compression, rarefaction) 110. Time shift (time delay, time advance, left and right circular time shift ) 111. Measuring the signal energy 112. Energy and power normalization 113. Energy and power scaling 114. Serial-to-parallel and parallel-to-serial conversion 115. Multiplexing and de-multiplexing Digitization of Analog Signals 116. Time domain sampling of continuous time baseband signals in MATLAB 117. Amplitude quantization of analog signals 118. PCM encoding of quantized analog signals 119. Decimal-to-binary and binary-to-decimal conversion 120. Pulse shaping 121. Calculation of the adequate pulse width 122. Selection of the number of samples per pulse 123. Convolution using the conv and filter commands 124. The autocorrelation and cross-correlation of time limited signals 125. The Fast Fourier Transform (FFT) and IFFT operations 126. Viewing a baseband signal spectrum 127. Effect of sampling rate and the proper frequency window 128. Relation between the convolution , correlation and the FFT operations 129. Frequency domain filtering , low pass filtering only Auxiliary Communications Functions 130. Randomizers and de-randomizers 131. Puncturers and de-puncturers 132. Encoders and decoders 133. Interleavers and de-interleavers Modulators and demodulators 134. Digital baseband modulation schemes in MATLAB 135. Visual representation of digitally modulated signals Channel Modelling and Simulation 136. Mathematical modeling of the channel effect on the transmitted signal • Addition – additive white Gaussian noise (AWGN) channels • Time domain multiplication – slow fading channels , Doppler shift in vehicular channels • Frequency domain multiplication – frequency selective fading channels • Time domain convolution – channel impulse response Examples of deterministic channel models 137. Free space path loss and environment dependent path loss 138. Periodic Blockage Channels Statistical Characterization of Common Stationary and Quasi-Stationary Multipath Fading Channels 139. Generation of a uniformly distributed RV 140. Generation of a real valued Gaussian distributed RV 141. Generation of a complex Gaussian distributed RV 142. Generation of a Rayleigh distributed RV 143. Generation of a Ricean distributed RV 144. Generation of a Lognormally distributed RV 145. Generation of an arbitrary distributed RV 146. Approximation of an unknown probability density function (PDF) of an RV by a histogram 147. Numerical calculation of the cumulative distribution function (CDF) of an RV 148. Real and complex additive white Gaussian noise (AWGN) Channels Channel Characterization by its Power Delay Profile 149. Channel characterization by its power delay profile 150. Power normalization of the PDP 151. Extracting the channel impulse response from the PDP 152. Sampling the channel impulse response by an arbitrary sampling rate , mismatched sampling and delay quantization 153. The problem of mismatched sampling of the channel impulse response of narrow band channels 154. Sampling a PDP by an arbitrary sampling rate and fractional delay compensation 155. Implementation of several IEEE standardized indoor and outdoor channel models 156. (COST – SUI - Ultra Wide Band Channel Models…etc.) Level 3: Link Level Simulation of Practical Comm. Systems (30 hrs) Sessions 15-24 This part of the course is concerned with the most important issue to research students, that is, how to re-produce the simulation results of other published papers by simulation. Bit Error Rate Performance of Baseband Digital Modulation Schemes 1. Performance comparison of different baseband digital modulation schemes in AWGN channels (Comprehensive comparative study via simulation to verify theoretical expressions ); scatter plots ,bit error rate 2. Performance comparison of different baseband digital modulation schemes in different stationary and quasi-stationary fading channels; scatter plots ,bit error rate(Comprehensive comparative study via simulation to verify theoretical expressions ) 3. Impact of Doppler shift channels on the performance of baseband digital modulation schemes; scatter plots ,bit error rate Helicopter-to-Satellite Communications 4. Paper (1): Low-Cost Real-Time Voice and Data System for Aeronautical Mobile Satellite Service (AMSS) – Problem statement and analysis 5. Paper (2): Pre-Detection Time Diversity Combining with Accurate AFC for Helicopter Satellite Communications – The first proposed solution 6. Paper (3): An Adaptive Modulation Scheme for Helicopter-Satellite Communications – A performance improvement approach Simulation of Spread Spectrum Systems 1. Typical Architecture of spread spectrum based Systems 2. Direct sequence spread spectrum based Systems 3. Pseudo random binary sequence (PBRS) generators • Generation of Maximal length sequences • Generation of gold codes • Generation of Walsh codes 4. Time hopping spread spectrum based Systems 5. Bit Error Rate Performance of spread spectrum based systems in AWGN channels • Impact of coding rate r on the BER performance • Impact of the code length on the BER performance 6. Bit Error Rate Performance of spread spectrum based Systems in multipath Slow Rayleigh Fading Channels with Zero Doppler Shift 7. Bit error rate performance analysis of spread spectrum based systems in high mobility fading enviroments 8. Bit error rate performance analysis of spread spectrum based systems in the presence of multi-user interference 9. RGB image transmission over spread spectrum systems 10. Optical CDMA (OCDMA) systems • Optical orthogonal codes (OOC) • Performance limits of OCDMA systems ;bit error rate performance of synchronous and asynchronous OCDMA systems Ultra wide band SS systems OFDM Based Systems 11. Implementation of OFDM systems using the Fast Fourier Transform 12. Typical Architecture of OFDM based Systems 13. Bit Error Rate Performance of OFDM Systems in AWGN channels • Impact of coding rate r on the BER performance • Impact of the cyclic prefix on the BER performance • Impact of the FFT size and subcarrier spacing on the BER performance 14. Bit Error Rate Performance of OFDM Systems in multipath Slow Rayleigh Fading Channels with Zero Doppler Shift 15. Bit Error Rate Performance of OFDM Systems in multipath Slow Rayleigh Fading Channels with CFO 16. Channel Estimation in OFDM Systems 17. Frequency Domain Equalization in OFDM Systems • Zero Forcing Equalizer • MMSE Equalizers 18. Other Common Performance Metrics in OFDM Based Systems (Peak – to – Average Power Ratio, Carrier – to – Interference Ratio…etc.) 19. Performance analysis of OFDM based systems in high mobility fading enviroments (as a simulation project consisting of three papers) 20. Paper (1): Inter carrier interference mitigation 21. Paper (2): MIMO-OFDM Systems Optimization of a MATLAB Simulation Project The aim of this part is to learn how to build and optimize a MATLAB simulation project in order to simplify and organize the overall simulation process. Moreover, memory space and processing speed are also considered in order to avoid memory overflow problems in limited storage systems or long run times arising from slow processing. 1. Typical Structure of a small scale simulation projects 2. Extraction of simulation parameters and theoretical to simulation mapping 3. Building a Simulation Project 4. Monte Carlo Simulation Technique 5. A Typical Procedure for Testing a Simulation Project 6. Memory Space Management and Simulation Time Reduction Techniques • Baseband vs. Passband Simulation • Calculation of the adequate pulse width for truncated arbitrary pulse shapes • Calculation of the adequate number of samples per symbol • Calculation of the Necessary and Sufficient Number of Bits to Test a System GUI programming Having a MATLAB code free from debugs and working properly to produce correct results is a great achievement. However, a set of key parameters in a simulation project controls the For this reason and more, an extra lecture on "Graphical User Interface (GUI) Programming" is given in order to bring the control over various parts of your simulation project at your hand tips rather than diving in a long source codes full of commands. Moreover, having your MATLAB code masked with a GUI helps presenting your work in a way that facilitates combining multi results in one master window and makes it easier to compare data. 1. What is a MATLAB GUI 2. Structure of MATLAB GUI function file 3. Main GUI components (important properties and values) 4. Local and global variables Note: The topics covered in each level of this course include, but not limited to, those stated in each level. Moreover, the items of each particular lecture are subject to change depending on the needs of the learners and their research interests. |

smlk | Simulink® for Automotive System Design | 28 hours | Objective: This training is meant for software Engineers who are working with MBD technology,the training will cover Modelling techniques for Automotive systems, Automotive standards ,Auto-code generation and Model test harness building and verification Audience: Software developper for automotive supplierFundamentals & Basics Using the MATLAB® environment Essential Mathematics for control systems using MATLAB® Graphics and Visualization Programming using MATLAB® GUI Programming using MATLAB®(optional) Introduction to Control systems and Mathematical Modeling using MATLAB® Control Theory using MATLAB® Introduction to systems modeling using SIMULINK® Simulink® internals (signals, systems, subsystems, simulation Parameters,…etc) Stateflow for automotive systems(Automotive Body Controller application) Introduction to MAAB( Mathworks® Automotive Advisory Board) Introduction to AUTOSAR AUTOSAR SWCs modeling using Simulink® Simulink Tool boxes for Automotive systems Hydraulic Cylinder Simulation Introduction to SimDrivelin (Clutch Models ,Gera Models)(Optional) Modeling ABS (Optional ) Modeling for Automatic Code Generation Model Verification Techniques |

simulinkadv | Simulink® for Automotive System Design Advanced Level | 14 hours | Fundamentals Using the MATLAB® environment Essential Mathematics for control systems using MATLAB® Graphics and Visualization Programming using MATLAB® GUI Programming using MATLAB®(optional) Introduction to Control systems and Mathematical Modeling using MATLAB® Control Theory using MATLAB® Introduction to systems modeling using SIMULINK® Model Driven Development in Automotive Model Based versus Model-less Development Test Harness for Automotive Software System Tests Model in the Loop, Software in the Loop, Hardware in the Loop Tools for Model Based Development and Testing in Automotive Matelo Tool Example Reactis Tool Example Simulink/Stateflow Models Verifiers and SystemTest Tool Example Simulink® internals (signals, systems, subsystems, simulation Parameters,…etc)-Examples Conditionally executed subsystems Enabled subsystems Triggered subsystems Input validation model Stateflow for automotive systems(Automotive Body Controller application)-Examples Creating and Simulating a Model Create a simple Simulink model, simulate it, and analyze the results. Define the potentiometer system Explore the Simulink environment interface Create a Simulink model of the potentiometer system Simulate the model and analyze results Modeling Programming Constructs Objective: Model and simulate basic programming constructs in Simulink Comparisons and decision statements Zero crossings MATLAB Function block Modeling Discrete Systems Objective: Model and simulate discrete systems in Simulink. Define discrete states Create a model of a PI controller Model discrete transfer functions and state space systems Model multirate discrete systems Modeling Continuous Systems: Model and simulate continuous systems in Simulink. Create a model of a throttle system Define continuous states Run simulations and analyze results Model impact dynamics Solver Selection: Select a solver that is appropriate for a given Simulink model. Solver behavior System dynamics Discontinuities Algebraic loops Introduction to MAAB ( Mathworks® Automotive Advisory Board) -Examples Introduction to AUTOSAR AUTOSAR SWCs modeling using Simulink® Simulink Tool boxes for Automotive systems Hydraulic cylinder Simulation-Examples Introduction to SimDrivelin (Clutch Models, Gera Models) (Optional) -Examples Modeling ABS (Optional ) -Examples Modeling for Automatic Code Generation -Examples Model Verification Techniques -Examples Engine Model (Practical Simulink Model) Anti-Lock Braking System (Practical Simulink Model) Engagement Model (Practical Simulink Model) Suspension System (Practical Simulink Model) Hydraulic Systems (Practical Simulink Model) Advanced System Models in Simulink with Stateflow Enhancements Fault-Tolerant Fuel Control System (Practical Simulink Model) Automatic Transmission Control (Practical Simulink Model) Electrohydraulic Servo Control (Practical Simulink Model) Modeling Stick-Slip Friction (Practical Simulink Model) |

octnp | Octave not only for programmers | 21 hours | Course is dedicated for those who would like to know an alternative program to the commercial MATLAB package. The three-day training provides comprehensive information on moving around the environment and performing the OCTAVE package for data analysis and engineering calculations. The training recipients are beginners but also those who know the program and would like to systematize their knowledge and improve their skills. Knowledge of other programming languages is not required, but it will greatly facilitate the learners' acquisition of knowledge. The course will show you how to use the program in many practical examples. Introduction Simple calculations Starting Octave, Octave as a calculator, built-in functions The Octave environment Named variables, numbers and formatting, number representation and accuracy, loading and saving data Arrays and vectors Extracting elements from a vector, vector maths Plotting graphs Improving the presentation, multiple graphs and figures, saving and printing figures Octave programming I: Script files Creating and editing a script, running and debugging scripts, Control statements If else, switch, for, while Octave programming II: Functions Matrices and vectors Matrix, the transpose operator, matrix creation functions, building composite matrices, matrices as tables, extracting bits of matrices, basic matrix functions Linear and Nonlinear Equations More graphs Putting several graphs in one window, 3D plots, changing the viewpoint, plotting surfaces, images and movies, Eigenvectors and the Singular Value Decomposition Complex numbers Plotting complex numbers, Statistics and data processing GUI Developmen |

matlabprog | MATLAB Programming | 14 hours | This two-day course provides a comprehensive introduction to the MATLAB® technical computing environment. The course is intended for beginner users and those looking for a review. No prior programming experience or knowledge of MATLAB is assumed. Themes of data analysis, visualization, modeling, and programming are explored throughout the course. Working with the MATLAB user interface Entering commands and creating variables Analyzing vectors and matrices Working with data types Automating commands with scripts Writing programs with logic and flow control Writing functions Visualizing vector and matrix data Working with data files Importing data Organizing data Visualizing data |

matlab2 | MATLAB Fundamentals | 21 hours | This three-day course provides a comprehensive introduction to the MATLAB technical computing environment. The course is intended for beginning users and those looking for a review. No prior programming experience or knowledge of MATLAB is assumed. Themes of data analysis, visualization, modeling, and programming are explored throughout the course. Topics include: Working with the MATLAB user interface Entering commands and creating variables Analyzing vectors and matrices Visualizing vector and matrix data Working with data files Working with data types Automating commands with scripts Writing programs with logic and flow control Writing functions Part 1 A Brief Introduction to MATLAB Objectives: Offer an overview of what MATLAB is, what it consists of, and what it can do for you An Example: C vs. MATLAB MATLAB Product Overview MATLAB Application Fields What MATLAB can do for you? The Course Outline Working with the MATLAB User Interface Objective: Get an introduction to the main features of the MATLAB integrated design environment and its user interfaces. Get an overview of course themes. MATALB Interface Reading data from file Saving and loading variables Plotting data Customizing plots Calculating statistics and best-fit line Exporting graphics for use in other applications Variables and Expressions Objective: Enter MATLAB commands, with an emphasis on creating and accessing data in variables. Entering commands Creating variables Getting help Accessing and modifying values in variables Creating character variables Analysis and Visualization with Vectors Objective: Perform mathematical and statistical calculations with vectors, and create basic visualizations. See how MATLAB syntax enables calculations on whole data sets with a single command. Calculations with vectors Plotting vectors Basic plot options Annotating plots Analysis and Visualization with Matrices Objective: Use matrices as mathematical objects or as collections of (vector) data. Understand the appropriate use of MATLAB syntax to distinguish between these applications. Size and dimensionality Calculations with matrices Statistics with matrix data Plotting multiple columns Reshaping and linear indexing Multidimensional arrays Part 2 Automating Commands with Scripts Objective: Collect MATLAB commands into scripts for ease of reproduction and experimentation. As the complexity of your tasks increases, entering long sequences of commands in the Command Window becomes impractical. A Modelling Example The Command History Creating script files Running scripts Comments and Code Cells Publishing scripts Working with Data Files Objective: Bring data into MATLAB from formatted files. Because imported data can be of a wide variety of types and formats, emphasis is given to working with cell arrays and date formats. Importing data Mixed data types Cell arrays Conversions amongst numerals, strings, and cells Exporting data Multiple Vector Plots Objective: Make more complex vector plots, such as multiple plots, and use color and string manipulation techniques to produce eye-catching visual representations of data. Graphics structure Multiple figures, axes, and plots Plotting equations Using color Customizing plots Logic and Flow Control Objective: Use logical operations, variables, and indexing techniques to create flexible code that can make decisions and adapt to different situations. Explore other programming constructs for repeating sections of code, and constructs that allow interaction with the user. Logical operations and variables Logical indexing Programming constructs Flow control Loops Matrix and Image Visualization Objective: Visualize images and matrix data in two or three dimensions. Explore the difference in displaying images and visualizing matrix data using images. Scattered Interpolation using vector and matrix data 3-D matrix visualization 2-D matrix visualization Indexed images and colormaps True color images Part 3 Data Analysis Objective: Perform typical data analysis tasks in MATLAB, including developing and fitting theoretical models to real-life data. This leads naturally to one of the most powerful features of MATLAB: solving linear systems of equations with a single command. Dealing with missing data Correlation Smoothing Spectral analysis and FFTs Solving linear systems of equations Writing Functions Objective: Increase automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables. Why functions? Creating functions Adding comments Calling subfunctions Workspaces Subfunctions Path and precedence Data Types Objective: Explore data types, focusing on the syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Data types differ in the kind of data they may contain and the way the data is organized. MATLAB data types Integers Structures Converting types File I/O Objective: Explore the low-level data import and export functions in MATLAB that allow precise control over text and binary file I/O. These functions include textscan, which provides precise control of reading text files. Opening and closing files Reading and writing text files Reading and writing binary files Note that the actual delivered might be subject to minor discrepancies from the outline above without prior notification. Conclusion Note that the actual delivered might be subject to minor discrepancies from the outline above without prior notification. Objectives: Summarise what we have learnt A summary of the course Other upcoming courses on MATLAB Note that the course might be subject to few minor discrepancies when being delivered without prior notifications. |

matlabml1 | Introduction to Machine Learning with MATLAB | 21 hours | MATLAB Basics MATLAB More Advanced Features BP Neural Network RBF, GRNN and PNN Neural Networks SOM Neural Networks Support Vector Machine, SVM Extreme Learning Machine, ELM Decision Trees and Random Forests Genetic Algorithm, GA Particle Swarm Optimization, PSO Ant Colony Algorithm, ACA Simulated Annealing, SA Dimenationality Reduction and Feature Selection |

matlabfundamentalsfinance | MATLAB Fundamentals + MATLAB for Finance | 35 hours | This course provides a comprehensive introduction to the MATLAB technical computing environment + an introduction to using MATLAB for financial applications. The course is intended for beginning users and those looking for a review. No prior programming experience or knowledge of MATLAB is assumed. Themes of data analysis, visualization, modeling, and programming are explored throughout the course. Topics include: Working with the MATLAB user interface Entering commands and creating variables Analyzing vectors and matrices Visualizing vector and matrix data Working with data files Working with data types Automating commands with scripts Writing programs with logic and flow control Writing functions Using the Financial Toolbox for quantitative analysis Part 1 A Brief Introduction to MATLAB Objectives: Offer an overview of what MATLAB is, what it consists of, and what it can do for you An Example: C vs. MATLAB MATLAB Product Overview MATLAB Application Fields What MATLAB can do for you? The Course Outline Working with the MATLAB User Interface Objective: Get an introduction to the main features of the MATLAB integrated design environment and its user interfaces. Get an overview of course themes. MATALB Interface Reading data from file Saving and loading variables Plotting data Customizing plots Calculating statistics and best-fit line Exporting graphics for use in other applications Variables and Expressions Objective: Enter MATLAB commands, with an emphasis on creating and accessing data in variables. Entering commands Creating variables Getting help Accessing and modifying values in variables Creating character variables Analysis and Visualization with Vectors Objective: Perform mathematical and statistical calculations with vectors, and create basic visualizations. See how MATLAB syntax enables calculations on whole data sets with a single command. Calculations with vectors Plotting vectors Basic plot options Annotating plots Analysis and Visualization with Matrices Objective: Use matrices as mathematical objects or as collections of (vector) data. Understand the appropriate use of MATLAB syntax to distinguish between these applications. Size and dimensionality Calculations with matrices Statistics with matrix data Plotting multiple columns Reshaping and linear indexing Multidimensional arrays Part 2 Automating Commands with Scripts Objective: Collect MATLAB commands into scripts for ease of reproduction and experimentation. As the complexity of your tasks increases, entering long sequences of commands in the Command Window becomes impractical. A Modelling Example The Command History Creating script files Running scripts Comments and Code Cells Publishing scripts Working with Data Files Objective: Bring data into MATLAB from formatted files. Because imported data can be of a wide variety of types and formats, emphasis is given to working with cell arrays and date formats. Importing data Mixed data types Cell arrays Conversions amongst numerals, strings, and cells Exporting data Multiple Vector Plots Objective: Make more complex vector plots, such as multiple plots, and use color and string manipulation techniques to produce eye-catching visual representations of data. Graphics structure Multiple figures, axes, and plots Plotting equations Using color Customizing plots Logic and Flow Control Objective: Use logical operations, variables, and indexing techniques to create flexible code that can make decisions and adapt to different situations. Explore other programming constructs for repeating sections of code, and constructs that allow interaction with the user. Logical operations and variables Logical indexing Programming constructs Flow control Loops Matrix and Image Visualization Objective: Visualize images and matrix data in two or three dimensions. Explore the difference in displaying images and visualizing matrix data using images. Scattered Interpolation using vector and matrix data 3-D matrix visualization 2-D matrix visualization Indexed images and colormaps True color images Part 3 Data Analysis Objective: Perform typical data analysis tasks in MATLAB, including developing and fitting theoretical models to real-life data. This leads naturally to one of the most powerful features of MATLAB: solving linear systems of equations with a single command. Dealing with missing data Correlation Smoothing Spectral analysis and FFTs Solving linear systems of equations Writing Functions Objective: Increase automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables. Why functions? Creating functions Adding comments Calling subfunctions Workspaces Subfunctions Path and precedence Data Types Objective: Explore data types, focusing on the syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Data types differ in the kind of data they may contain and the way the data is organized. MATLAB data types Integers Structures Converting types File I/O Objective: Explore the low-level data import and export functions in MATLAB that allow precise control over text and binary file I/O. These functions include textscan, which provides precise control of reading text files. Opening and closing files Reading and writing text files Reading and writing binary files Note that the actual delivered might be subject to minor discrepancies from the outline above without prior notification. Part 4 Overview of the MATLAB Financial Toolbox Objective: Learn to apply the various features included in the MATLAB Financial Toolbox to perform quantitative analysis for the financial industry. Gain the knowledge and practice needed to efficiently develop real-world applications involving financial data. Asset Allocation and Portfolio Optimization Risk Analysis and Investment Performance Fixed-Income Analysis and Option Pricing Financial Time Series Analysis Regression and Estimation with Missing Data Technical Indicators and Financial Charts Monte Carlo Simulation of SDE Models Asset Allocation and Portfolio Optimization Objective: perform capital allocation, asset allocation, and risk assessment. Estimating asset return and total return moments from price or return data Computing portfolio-level statistics, such as mean, variance, value at risk (VaR), and conditional value at risk (CVaR) Performing constrained mean-variance portfolio optimization and analysis Examining the time evolution of efficient portfolio allocations Performing capital allocation Accounting for turnover and transaction costs in portfolio optimization problems Risk Analysis and Investment Performance Objective: Define and solve portfolio optimization problems. Specifying a portfolio name, the number of assets in an asset universe, and asset identifiers. Defining an initial portfolio allocation. Fixed-Income Analysis and Option Pricing Objective: Perform fixed-income analysis and option pricing. Analyzing cash flow Performing SIA-Compliant fixed-income security analysis Performing basic Black-Scholes, Black, and binomial option-pricing Part 5 Financial Time Series Analysis Objective: analyze time series data in financial markets. Performing data math Transforming and analyzing data Technical analysis Charting and graphics Regression and Estimation with Missing Data Objective: Perform multivariate normal regression with or without missing data. Performing common regressions Estimating log-likelihood function and standard errors for hypothesis testing Completing calculations when data is missing Technical Indicators and Financial Charts Objective: Practice using performance metrics and specialized plots. Moving averages Oscillators, stochastics, indexes, and indicators Maximum drawdown and expected maximum drawdown Charts, including Bollinger bands, candlestick plots, and moving averages Monte Carlo Simulation of SDE Models Objective: Create simulations and apply SDE models Brownian Motion (BM) Geometric Brownian Motion (GBM) Constant Elasticity of Variance (CEV) Cox-Ingersoll-Ross (CIR) Hull-White/Vasicek (HWV) Heston Conclusion Objectives: Summarise what we have learned A summary of the course Other upcoming courses on MATLAB Note: the actual content delivered might differ from the outline as a result of customer requirements and the time spent on each topics. |

matlabfincance | Matlab for Finance | 14 hours | MATLAB integrates computation, visualization and programming in an easy to use environment. It offers Financial Toolbox, which includes the features needed to perform mathematical and statistical analysis of financial data, then display the results with presentation-quality graphics. This instructor-led training provides an introduction to MATLAB for finance. We dive into data analysis, visualization, modeling and programming by way of hands-on exercises and plentiful in-lab practice. By the end of this training, participants will have a thorough understanding of the powerful features included in MATLAB's Financial Toolbox and will have gained the necessary practice to apply them immediately for solving real-world problems. Audience Financial professionals with previous experience with MATLAB Format of the course Part lecture, part discussion, heavy hands-on practice Overview of the MATLAB Financial Toolbox Objective: Learn to apply the various features included in the MATLAB Financial Toolbox to perform quantitative analysis for the financial industry. Gain the knowledge and practice needed to efficiently develop real-world applications involving financial data. Asset Allocation and Portfolio Optimization Risk Analysis and Investment Performance Fixed-Income Analysis and Option Pricing Financial Time Series Analysis Regression and Estimation with Missing Data Technical Indicators and Financial Charts Monte Carlo Simulation of SDE Models Asset Allocation and Portfolio Optimization Objective: perform capital allocation, asset allocation, and risk assessment. Estimating asset return and total return moments from price or return data Computing portfolio-level statistics, such as mean, variance, value at risk (VaR), and conditional value at risk (CVaR) Performing constrained mean-variance portfolio optimization and analysis Examining the time evolution of efficient portfolio allocations Performing capital allocation Accounting for turnover and transaction costs in portfolio optimization problems Risk Analysis and Investment Performance Objective: Define and solve portfolio optimization problems. Specifying a portfolio name, the number of assets in an asset universe, and asset identifiers. Defining an initial portfolio allocation. Fixed-Income Analysis and Option Pricing Objective: Perform fixed-income analysis and option pricing. Analyzing cash flow Performing SIA-Compliant fixed-income security analysis Performing basic Black-Scholes, Black, and binomial option-pricing Financial Time Series Analysis Objective: analyze time series data in financial markets. Performing data math Transforming and analyzing data Technical analysis Charting and graphics Regression and Estimation with Missing Data Objective: Perform multivariate normal regression with or without missing data. Performing common regressions Estimating log-likelihood function and standard errors for hypothesis testing Completing calculations when data is missing Technical Indicators and Financial Charts Objective: Practice using performance metrics and specialized plots. Moving averages Oscillators, stochastics, indexes, and indicators Maximum drawdown and expected maximum drawdown Charts, including Bollinger bands, candlestick plots, and moving averages Monte Carlo Simulation of SDE Models Objective: Create simulations and apply SDE models Brownian Motion (BM) Geometric Brownian Motion (GBM) Constant Elasticity of Variance (CEV) Cox-Ingersoll-Ross (CIR) Hull-White/Vasicek (HWV) Heston Conclusion |

matlabdsandreporting | MATLAB Fundamentals, Data Science & Report Generation | 126 hours | In the first part of this training, we cover the fundamentals of MATLAB and its function as both a language and a platform. Included in this discussion is an introduction to MATLAB syntax, arrays and matrices, data visualization, script development, and object-oriented principles. In the second part, we demonstrate how to use MATLAB for data mining, machine learning and predictive analytics. To provide participants with a clear and practical perspective of MATLAB's approach and power, we draw comparisons between using MATLAB and using other tools such as spreadsheets, C, C++, and Visual Basic. In the third part of the training, participants learn how to streamline their work by automating their data processing and report generation. Throughout the course, participants will put into practice the ideas learned through hands-on exercises in a lab environment. By the end of the training, participants will have a thorough grasp of MATLAB' capabilities and will be able to employ it for solving real-world data science problems as well as for streamlining their work through automation. Assessments will be conducted throughout the course to guage progress. Format of the course Course includes theoretical and practical exercises, including case discussions, sample code inspection, and hands-on implementation. Note Practice sessions will based on pre-arranged sample data report templates. If you have specific requirements, please contact us to arrange Introduction MATLAB for data science and reporting Part 01: MATLAB fundamentals Overview MATLAB for data analysis, visualization, modeling, and programming. Working with the MATLAB user interface Overview of MATLAB syntax Entering commands Using the command line interface Creating variables Numeric vs character data Analyzing vectors and matrices Creating and manipulating Performing calculations Visualizing vector and matrix data Working with data files Importing data from Excel spreadsheets Working with data types Working with table data Automating commands with scripts Creating and running scripts Organizing and publishing your scripts Writing programs with branching and loops User interaction and flow control Writing functions Creating and calling functions Debugging with MATLAB Editor Applying object-oriented programming principles to your programs Part 02: MATLAB for data science Overview MATLAB for data mining, machine learning and predictive analytics Accessing data Obtaining data from files, spreadsheets, and databases Obtaining data from test equipment and hardware Obtaining data from software and the Web Exploring data Identifying trends, testing hypotheses, and estimating uncertainty Creating customized algorithms Creating visualizations Creating models Publishing customized reports Sharing analysis tools As MATLAB code As standalone desktop or Web applications Using the Statistics and Machine Learning Toolbox Using the Neural Network Toolbox Part 03: Report generation Overview Presenting results from MATLAB programs, applications, and sample data Generating Microsoft Word, PowerPoint®, PDF, and HTML reports. Templated reports Tailor-made reports Using organization’s templates and standards Creating reports interactively vs programmatically Using the Report Explorer Using the DOM (Document Object Model) API Creating reports interactively using Report Explorer Report Explorer Examples Magic Squares Report Explorer Example Creating reports Using Report Explorer to create report setup file, define report structure and content Formatting reports Specifying default report style and format for Report Explorer reports Generating reports Configuring Report Explorer for processing and running report Managing report conversion templates Copying and managing Microsoft Word , PDF, and HTML conversion templates for Report Explorer reports Customizing Report Conversion templates Customizing the style and format of Microsoft Word and HTML conversion templates for Report Explorer reports Customizing components and style sheets Customizing report components, define layout style sheets Creating reports programmatically in MATLAB Template-Based Report Object (DOM) API Examples Functional report Object-oriented report Programmatic report formatting Creating report content Using the Document Object Model (DOM) API Report format basics Specifying format for report content Creating form-based reports Using the DOM API to fill in the blanks in a report form Creating object-oriented reports Deriving classes to simplify report creation and maintenance Creating and formatting report objects Lists, tables, and images Creating DOM Reports from HTML Appending HTML string or file to a Microsoft® Word, PDF, or HTML report generated by Document Object Model (DOM) API Creating report templates Creating templates to use with programmatic reports Formatting page layouts Formatting pages in Microsoft Word and PDF reports Summary and closing remarks |

bpmatlab | Basic MATLAB Programming | 21 hours | A 3 day course that takes you through the MATLAB main screens and windows including ... how to use matlab as a caluclator and plot basic curves how to create your own customized functions and scripts Day 1 matlab windows constants variables save and load data into matlab vectors in matlab Day 2 data analysis basic coding in matlab data analysis toolbox Day 3 plotting curves scripts functions in matlab matrix and matrix operations files in matlab |

ipmat1 | Introduction to Image Processing using Matlab | 28 hours | This four day course provides image processing foundations using Matlab. You will practise how to change and enhance images and even extract patterns from the images. You will also learn how to build 2D filters and apply them on the images. Examples and exercises demonstrate the use of appropriate Matlab and Image Processing Toolbox functionality throughout the analysis process. Day 1: Loading images Dealing with RGB components of the image Saving the new images Gray scale images Binary images Masks Day 2: Analyzing images interactively Removing noise Aligning images and creating a panoramic scene Detecting lines and circles in an image Day 3: Image histogram Creating and applying 2D filters Segmenting object edges Segmenting objects based on their color and texture Day 4 Performing batch analysis over sets of images Segmenting objects based on their shape using morphological operations Measuring shape properties |