Deploying MATLAB -based Applications€¦ · Development time reduced by 50% Risk management...
Transcript of Deploying MATLAB -based Applications€¦ · Development time reduced by 50% Risk management...
1© 2014 The MathWorks, Inc.
Deploying MATLAB®-based
Applications
David Willingham
Senior Application Engineer
2
Data Analytics Workflow
Reporting and
Documentation
Integration
ShareExplore & Discover
Data Analysis
& Modeling
Algorithm
Development
Application
Development
Automate
Files
Databases /
Datafeeds
Hardware
Access
Outputs for Design
3
What is Application Deployment?
Share MATLAB programs with people who do not have MATLAB
– Royalty-free distribution
Provide MATLAB apps or native files directly to other MATLAB users
4
Deployment Highlights
Java
Excel
.NET
.exe
C
CTF
Application Servers
Database Servers
Web Applications
Client Front End
Applications
Spreadsheets
HADOOP
Desktop Applications
Batch/Cron Jobs
Database Server
6
JavaExcel .NETWeb
Deploying Applications with MATLAB
Automated deployment
Share applications
with end users who
do not need MATLAB
– Stand-alone
executables
– Shared libraries
– Software components
– Encrypted
Uses MATLAB
Component Runtime Libraries
.exe.dll
.lib
MATLAB Compiler
MATLABBuilder NE
MATLABBuilder EX
MATLABBuilder JA
7
MATLABDesktop
End-UserMachine
1
2
3Toolboxes
Deploying Applications with MATLAB
MATLAB Compiler
.exe
8
Capabilities of MATLAB CompilerTM
Package MATLAB programs as standalone applications or shared
libraries
Create professional software with customizable installers, icons,
and splash screens
Encrypt your intellectual property
A deployed application created with MATLAB Compiler
9
Application author
Typical Process for Standalone Applications
1.) Create MATLAB algorithms
2.) Define the user interface
3.) Package the application using MATLAB Compiler
They will install the application … and run it on their desktop
4.) Give the application installer to someone
10
Customizations for your Applications
Metadata
Graphics for
splash screen
Graphics for
installer
Installed applications
accessible from Windows
Start menu and
Add/Remove Programs
Icons
11
End Customer sees a Professional Application
Installer
Icon
Splash Screen
Application in Start menu
12
MATLAB BuilderTM Products
JavaExcel .NETWeb COM.exe .dll
MATLAB Compiler
MATLABBuilder NE
MATLABBuilder EX
MATLABBuilder JA
• Generate add-ins, components, and libraries to integrate with
Microsoft Excel®, .NET, and JavaTM
• Support web technologies such as ASP.NET, SOAP, XML,
JavaScript, and HTML
• Scalable applications via Java RMI and .NET remoting
16
MATLAB Production ServerScale up & centralize analytics
Most efficient path for enterprise applications
Deploy MATLAB programs into production
– Manage multiple MATLAB programs and versions
– Update programs without server restarts
– Reliably service large numbers of concurrent
requests
Integrate with web, database, and application
servers
MATLAB Production Server(s)
HTML
XML
Java Script
Web Server(s)
18
Centralized AnalyticsIntegrate with IT systems
Web
Server
Application
Server
Database Server
Pricing
Risk
Analytics
Portfolio
Optimization
MATLAB Production Server
MATLAB
Compiler
Web Applications
Desktop Applications
Batch Applications
19
MATLAB Application Deployment
Share MATLAB programs with
people who do not have MATLAB
– Royalty-free distribution
Create both standalone applications
and shared libraries
Deploy to desktop, web, and
enterprise applications
20© 2014 The MathWorks, Inc.
Thank you
Customer stories on following slides
21
UniCredit Bank Austria Develops and
Rapidly Deploys a Consistent, Enterprise-
Wide Market Data Engine
ChallengeImprove risk management operations throughout a
multinational financial institution
SolutionUse MATLAB, MATLAB Compiler, and MATLAB Builder
JA to build and rapidly deploy a consistent enterprise-
wide data warehouse into J2EE Web Architecture
Results Development time reduced by 50%
Risk management improved across the bank
Operational, audit, and maintenance costs reduced
“ With MATLAB, we can focus on
business logic instead of
implementation details. We can
deploy an algorithm in a Java
environment the same day, without
any additional coding. This approach
enabled us to cut our development
time in half, if not more weeks,
instead of months."
Peter W. Schweighofer
UniCredit Bank Austria
Zero-coupon yield curve plot in UniCredit
Bank Austria’s UMD environment.
Link to user story
22
HKM Optimizes Just-in-Time
Steel Manufacturing Schedule
ChallengeOptimize a steel production process to enable
consistent, just-in-time delivery
SolutionUse MATLAB, global optimization, and parallel
computing to maximize throughput of more than
5 million tonnes of steel annually
Results Algorithm development accelerated by a factor of 10
Optimization time cut from 1 hour to 5 minutes
Customer satisfaction increased
“C++, Java, or third-party
optimization solutions would have
required us to spend significantly
more time in development or to
simplify our constraints. Only
MATLAB provided the flexibility,
scalability, development speed, and
level of optimization that we
required.”
Alexey Nagaytsev
Hüttenwerke Krupp Mannesmann
Link to user story
Manually reviewed plant schedule (left) and plant schedule
automatically optimized with MATLAB genetic algorithms
(right). The optimized schedule minimizes schedule
conflicts (in red), meets delivery dates, and
achieves the target utilization rate.
23
Halliburton Makes Oil Exploration Safer
Using MATLAB and Neural Network Toolbox
ChallengeTo improve the ability to detect detonation of explosives
used to perforate the well bore
SolutionUse MathWorks products to develop an adaptive,
predictive neural network filter that cleanses the
detonation signal of contaminating noise from onsite
machinery
Results Authentic simulation on the desktop
An accurate, production-standard algorithm
Dramatic time savings
“Using MATLAB and MATLAB
Compiler, I can develop an
application at least 100 times faster
than I could with Visual Basic or C.
The time we saved on the very first
application that we wrote in MATLAB
more than paid for the software.”
Roger Schultz
Halliburton Energy Services
Link to user story