(108g) Hello World of (Bio)Chemical Engineers: A Structured and Tailored Python Course | AIChE

(108g) Hello World of (Bio)Chemical Engineers: A Structured and Tailored Python Course

Authors 

Krühne, U., Technical University of Denmark
Gernaey, K. V., Technical University of Denmark
Gargalo, C. L., Technical University of Denmark
The Fourth Industrial Revolution refers to the transformation of industry through automation and digitalization. In order to meet the requirements imposed by this new digital era, engineers need to be adequately prepared and trained [1, 2]. Therefore, there is an emergent need to introduce new technologies in the educational system. Education, at the same time, has also faced a wave of digital transformation due to the COVID-19 crisis [3]. This forced educational institutions worldwide to adapt and switch to E-learning quickly.
Previous studies [4] highlight the need expressed by students to acquire programming skills in (bio)chemical engineering education. This quantitative survey sheds light on different issues, such as the insufficient presence of programming content in the curriculum. There is a clear urgency to introduce and build on programming knowledge, especially targeting topics such as modelling and optimization, which are, and have always been, in high demand. Moreover, the study presented in [4] also points out that the students prefer to use only one programming language - Python being the favored one over MATLAB.
Other aspects that make Python a better choice for students and engineers that want to adapt to this digital transformation is that this language is one of the most popular languages in use today, thanks to its straightforward syntax, readability, available libraries, broad documentation, support, and suitability for data science applications. Even in the chemical engineering community, Python is attracting the interest of both students and professionals. Furthermore, it is regarded as the to-go language for data analysis and data science, both in academia and industry. We confirmed this by looking at the repositories available in GitHub obtained through a keyword search, including "chemical engineering". Among the results, 38.3% of repositories use Jupyter Notebooks (Python), 20.3% pure Python, and only 9.4% MATLAB, which historically has been the preferred language used in chemical engineering.
Although online resources to learn Python are abundant, tailored courses for chemical engineers tend to scratch the surface of syntax. At the same time, courses for a more broad audience might be too general for someone that wants to learn operations, modelling and discover available packages to solve chemical engineering tasks.
To tackle and address the mentioned challenges, in this work, we propose a hands-on Python programming course tailored to (bio)chemical engineers. The course's objectives are to: (a) teach the basics of Python programming; (b) impart more in-depth knowledge by providing real use cases and applicable/practical tools; and, (c) inform and inspire about possibilities given by different tools.
Furthermore, this course is being created based upon the following three main pillars: (i) relevance and usefulness, with focus on problems within the chemical engineering field; (ii) informativeness, aiming to provide thorough explanations, background, fun facts, links to bonus material; and, (iii) entertainment and practicality, through stimulant exercises and gamification, students should learn by programming, embedded reward through difficulty levels.
In order to evaluate the usefulness, applicability, and relevance of the course, a preliminary schedule and objectives were presented to the faculty and staff of the PROSYS research centre at the Department of Chemical and Biochemical Engineering at the Technical University of Denmark (DTU). This test group was invited to give feedback on the overall course and on the topics within. Additionally, the test group was invited to fill in a survey suggesting the topics believed to be relevant for the course. The results have been synthesized and are presented in the word cloud in Figure 1. This co-participatory experience allowed us to gather many valuable requests for material to be incorporated in the course.
Hence, among other topics, the plan is to incorporate how to use Python to, for example, solve mass and energy balances, differential equations, and optimization problems. Additionally, the course will contain comprehensive explanations and examples of: (i) data processing, (ii) data analysis, (iii) data science, and (iv) multiple use cases of how machine learning, natural language processing, and image processing can be applied in (bio)chemical engineering.

References

[1] C. L. Gargalo, S. C. d. l. Heras, M. N. Jones, I. Udugama, S. S. Mansouri, U. Krühne, and K. V.
Gernaey, “Towards the development of digital twins for the bio-manufacturing industry,” Digital
Twins, pp. 1–34, 2020.

[2] H. Narayanan, M. F. Luna, M. von Stosch, M. N. Cruz Bournazou, G. Polotti, M. Morbidelli,
A. Butté, and M. Sokolov, “Bioprocessing in the digital age: the role of process models,” Biotech-
nology journal, vol. 15, no. 1, p. 1900172, 2020.

[3] UNESCO, "The impact of the COVID-19 pandemic on education: international evidence from the Responses to Educational Disruption Survey (REDS)" 2022.

[4] S. C. de Las Heras, C. L. Gargalo, K. V. Gernaey, and U. Krühne, “Programming skills across the
(bio) engineering curriculum–a students’ perspective,” in Computer Aided Chemical Engineering,
vol. 50, pp. 2039–2044, Elsevier, 2021

Topics