Analytics for the IoT: A Deep Dive into Algorithms Class 5: Optimization September 16, 2016 Louis W. Giokas
This Week’s Agenda Monday Intro. to Analytics for the IoT Tuesday Languages and Environments Wednesday Classification Thursday Failure Analysis & Anomaly Detection Friday Optimization
Course Description The Internet of Things (IoT) generates a vast amount of data. This data can be analyzed to provide new insights to improve product design, improve product operation, enhance safety and efficiency, etc. The large amount of data requires that we use and develop algorithms that are both correct and efficient. There are a number of considerations that drive these developments such as size, time constraints and communications requirements. In this course we will look at some of the algorithms that are used in the IoT and their applications.
Today’s Agenda Optimization Overview Optimization for the IoT Examples Conclusion
Optimization Overview Optimization is a mathematical process that has grown out of the field of Operations Research. There are two types we consider: Linear Programming Nonlinear Programming The main difference is that in the former the function to be optimized is linear, and in the later they are nonlinear.
Optimization Overview The general form of the optimization problem is to maximize some function given: Constraints Boundary conditions Bounds for the variables (upper and lower) There are many techniques that can be used to solve the resulting system of equations: Newton-Raphson, Nelder-Meade, Levenberg-Marquardt, Conjugate Gradient, Trust Region
Optimization Overview The implementation of these methods is done in software packages SAS: PROC LP and PROC NLP Big, complex procedures with options to implement the whole range of methods R: NLopt, trustOptim, neldermead, maxNR, ucminf, etc. Lots of targeted functions for specific techniques May call another function listed (or not) to implement the method indicated
Optimization Overview General form of the problem to be solved: For Linear Programming the function f can contain only linear terms. For Nonlinear Programming the function f can contain any power of the variables (the x’s) as well as the constraints. This results in a set of differential equations that we need to solve.
Optimization Overview The general problem of optimization involves finding a convex feasible region or space and then solving an objective function that intersects this region at a maximum (or minimum) point. In the linear case the convex region Is defined by lines or hyperplanes. In the nonlinear case these are more complex curves and surfaces.
Optimization for the IoT The main innovation that the IoT brings to optimization is the availablity of up to date information on an on-going basis Sensors update the parameters in our equations as we make adjustments to the system. Can be measured at a time interval or can be an event driven approach We are both predicting what the best value will be and measuring the affect of those choices Generates a feedback loop
Optimization for the IoT is a part of our IoT portfolio
Examples In the past, optimization was performed as an off-line process Typically used during the design process for a product, process or facility Today we are seeing optimization being used real-time Increased processing power Dynamic conditions Sensors allow constant feedback
Examples Traffic in a Network Objective Function Constraints Linear Problem: Find the maximum flow through the network.
Examples Traffic in a Network Nonlinear Problem: find the time through The network give a flow. Objective Function Constraints Time Calculations
Examples Chemical Mixing Problem
Examples Chemical Mixing Problem Objective Function Constraints
Examples Smart Buildings Monitoring and sensors Optimize the cost function for energy inputs Constant change with internal and external conditions Respond to these events Anticipate
Examples Insurance claims processing: optimal allocation of resources (teams of agents) Yes, this is an IoT situation Automated sensors in automobiles send accident information to the insurance company Based on this information and location information for the agents and teams an optimization model is run to determine an optimal allocation of cases to agents, taking into account time, travel, severity
Examples Supply Chain Optimize warehouse operations Optimize shipping Placement Optimize shipping Route planning Optimize flow Predictive optimization based on sensor input Minimize disruptions, choose alternative supplies and paths
Conclusion We introduced the concepts of linear programming and nonlinear programming We showed how these relate to the IoT We looked at several examples of using optimization techniques for the IoT
Conclusion For the week, we looked in more detail than before, at the algorithms that are/can be used in the IoT This is just a primer We also looked at some examples My contact information: E-mail: l.giokas@ieee.org Design News: naperlou LinkedIn: Louis Giokas Twitter: @naperlou