Abstract: Solving problems that have more than one possible solution is something every developer will be asked to do over the course of his or her career. Figuring out the best way to utilize the capacity of a device or machine, finding the shortest path between two points, or determining the best way to schedule people or events are all problems where mathematical optimization techniques can be used to quickly and efficiently find solutions.
In this introduction to mathematical optimization designed specifically for software developers, we will explore some of the foundational techniques for solving these types of problems, and add several of these methods to your toolbox so that you can put them to work for your customers. Since this is a session for developers, we'll keep it in terms that work best for us. That is, we'll go heavy on the code and lighter on the math.
This session could also be done as a full-day workshop without too much additional effort. The topic certainly supports it as there is plenty to talk about.
A Developer's Guide to Finding Optimal Solutions
Type: Half-day workshop
Speaker: Barry S. Stahl
Technical level: Intermediate
Abstract: Solving problems that have more than one possible solution is something every developer will be asked to do over the course of his or her career. Figuring out the best way to utilize the capacity of a device or machine, finding the shortest path between two points, or determining the best way to schedule people or events are all problems where mathematical optimization techniques can be used to quickly and efficiently find solutions.
In this introduction to mathematical optimization designed specifically for software developers, we will explore some of the foundational techniques for solving these types of problems, and add several of these methods to your toolbox so that you can put them to work for your customers. Since this is a session for developers, we'll keep it in terms that work best for us. That is, we'll go heavy on the code and lighter on the math.
Prerequisites: Basic algebra and C# skills