Python Data Science with the TCLab
What you'll learn
- Visualize data to understand relationships and assess data quality
- Understand the differences between classification, regression, and clustering and when each can be applied
- Detect overfitting and implement strategies to improve prediction
- Understand engineering and business objectives to plan applications
- Implement data science techniques successfully to complete a project
- Beginner Python experience is needed.
- Consider the freely available course found on GitHub: APMonitor/begin_python to gain foundational experience with variables, loops, functions, lists, and other Python introductory topics.
These modules are intended to help you develop data science and machine learning skills in Python. The 12 modules have video tutorials for each exercise with solutions for each exercise. One of the unique things about these modules is that you work on basic elements and then test your knowledge with real data exercises with a heat transfer design project. You will see your Python code have a real impact by designing the materials for a new product.
One of the best ways to start or review a programming language is to work on a project. These exercises are designed to teach data science Python programming skills. Data science applications are found across almost all industries where raw data is transformed into actionable information that drives scientific discovery, business innovations, and development. This project is to determine the thermal conductivity of several materials. Thermal conductivity is how well a material conducts or insulates against heat transfer. The specific heat transfer project shows how to apply data science to solve an important problems with methods that are applicable to many different applications.
Objective: Collect and analyze data from the TCLab to determine the thermal conductivity of three materials (metal, plastic, and cardboard) that are placed between two temperature sensors. Create a digital twin that predicts heat transfer and temperature.
To make the problem more applicable to a real situation, suppose that you are designing a next-generation cell phone. The battery and processor on the cell phone generate a lot of heat. You want to make sure that the material between them will prevent over-heating of the battery by the processor. This study will help you answer questions about material properties for predicting the temperature of the battery and processor.
There are 12 lessons to help you with the objective of learning data science in Python. The first thing that you will need is to install Python to open and run the IPython notebook files in Jupyter. There are additional instructions on how to install Python and manage modules. Any Python distribution or Integrated Development Environment (IDE) can be used (IDLE, Spyder, PyCharm, and others) but Jupyter notebook or VSCode is required to open and run the IPython notebook (.ipynb) files. All of the IPython notebook (.ipynb) files can be downloaded. Don't forget to unzip the folder (extract the archive) and copy it to a convenient location before starting.
Data Import and Export
Prepare (Cleanse, Scale, Divide) Data
They give the skills needed to work on the final project. In the final project, metal coins, plastic, and cardboard are inserted in between the two heaters so that there is a conduction path for heat between the two sensors. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor T1 to the other temperature sensor T2.
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be assessed not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
Temperature Control Lab
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. If you do not have a TCLab module, use the digital twin simulator by replacing TCLab() with TCLabModel().
Who this course is for:
- Beginner Python developers interested in Data Science
- Aspiring and experienced scientists and engineers
- Students and professionals who want to adopt Data Science in practice
Dr. John Hedengren is an Associate Professor at Brigham Young University in the Chemical Engineering Department. He leads the BYU Process Research and Intelligent Systems Modeling (PRISM) group with a current focus on structured machine learning for optimization of energy systems, unmanned aircraft, and drilling. Prior to BYU he worked in industry for 7 years on nonlinear estimation and predictive control for polymers. His work includes the APMonitor Optimization Suite with a recent extension to the Python GEKKO language. He led the development of the Arduino-based Temperature Control Lab that is currently used by 70 universities for process control education. His 60 publications span topics of oil production, drilling automation, smart grid optimization, unmanned aerial systems, and nonlinear predictive control.
His professional service includes an appointment as an adjunct professor at the University of Utah, and member of the AIChE CAST Executive Committee (Webinar Editor). In 2005, he received a Ph.D. (Ch.E.) from the University of Texas at Austin for contributions to control and estimation of large-scale dynamic systems. He served as a Society of Petroleum Engineers (SPE) Distinguished Lecturer for 2018-2019, visiting 22 local sections to deliver a presentation on "Drilling Automation and Downhole Monitoring with Physics-based Models". He completed a sabbatical in 2020 to collaboratively develop combined physics-based and machine learned methods for optimization and automation.
Prof. Hedengren has consulting experience with Facebook, Apache, ENI Petroleum, HESS, SABIC Ibn Zahr, TOTAL, and other companies on machine learning and automation solutions. He worked full-time for 5 years with ExxonMobil supporting advanced control and optimization solutions. Automation software that he developed has been applied in over 100 industrial applications world-wide in refineries, chemical plants, and offshore oil platforms.