Algorithm deployment platform
Author(s)
Hess, Tylor (Tylor Joseph)
DownloadFull printable version (9.668Mb)
Other Contributors
Massachusetts Institute of Technology. Department of Mechanical Engineering.
Advisor
Brian W. Anthony.
Terms of use
Metadata
Show full item recordAbstract
Algorithm users, such as researchers, clinicians, engineers, and scientists, want to run advanced, custom, new research algorithms. For example, doctors want to run algorithms developed by researchers for clinical applications. These algorithm users see an algorithm as a black box. They want to input data and get results without having to understand the intricacies of algorithm implementation and without having to download, install, configure, and debug complex software. We refer to these algorithm users as black-box users. Researchers and developers create the algorithms; therefore they understand the algorithms' inner workings. We refer to these algorithm developers as glass-box users. There is a need for a platform or technology that allows algorithm developers to efficiently deploy algorithms. We propose the best way to do this is as a web application. Therefore, there is a need to deploy algorithms as web applications without having to learn web development. We developed a web application that enables algorithm users to run developers' algorithms on data stored locally or in cloud storage services.' To deploy algorithms as web applications, developers upload their algorithms to cloud computing services.2 The developer has the option to create an object native to the language in which the algorithm was developed. The platform turns this object into HTML displayed to the algorithm users, so developers can deploy algorithms as web applications without having to learn web development, which is beneficial, since algorithms are often not developed in web-friendly languages. In addition, our platform allows developers to turn the computers that they developed their algorithms on into cloud computing resources, instead of leveraging existing cloud computing services. Using the developer's computer instead of existing cloud computing services is beneficial because their computers were already configured with the appropriate operating system, installed programs, licensed software, etc. to run the algorithms. We evaluated our design with three in-depth interviews, a twenty-one-person focus group, and a survey of six users, who estimated that our platform would significantly reduce deployment time.
Description
Thesis: S.M., Massachusetts Institute of Technology, Department of Mechanical Engineering, 2016. Cataloged from PDF version of thesis. Includes bibliographical references (pages 75-81).
Date issued
2016Department
Massachusetts Institute of Technology. Department of Mechanical EngineeringPublisher
Massachusetts Institute of Technology
Keywords
Mechanical Engineering.