Computer science and mathematical modeling – the combination of the future?

Комп'ютерні науки vs Математичне моделювання

This material is a recording of a conversation with the head of the Department of Mathematical Modeling and Intelligent Computing in Engineering, which took place at the presentation of the educational program F3 (122) “Modeling, Design and Computer Graphics” with the educational trajectory “Process Modeling, Data Processing and Analysis”.

Vodka Oleksiy Oleksandrovych
Vodka Oleksiy Oleksandrovych

Vodka Oleksiy Oleksandrovych – Head of the Department of Mathematical Modeling and Intellectual Computing in Engineering, Candidate of Technical Sciences, Associate Professor, Laureate of the President of Ukraine’s Prize for Young Scientists.

Mathematical Modeling and Intelligent Computing in Engineering
Mathematical Modeling and Intelligent Computing in Engineering

Department of Mathematical Modeling and Intelligent Computing in Engineering – a graduating department in the specialties F3 (122) “Computer Science” and F1 (113) “Applied Mathematics”, has been training specialists in the field of mathematical modeling since 1930, and has been training specialists in computer science since 1999, the department is part of of the Educational and Scientific Institute of Computer Modeling, Applied Physics and Mathematics (ICM).

Hello everyone,

Today I want to talk about computer science and why computer science is, as it turns out, not exactly about computers.

Computer science, what is it?

Let’s turn to Wikipedia to find out what computer science is – the sciences of computing, automation and information. They include theoretical disciplines such as: algorithms, theory of computation and information theory. Also, the practical application of the above-mentioned sciences in the design and development of software and hardware. From this definition it is clear that computer science does not study computers themselves, but studies the theoretical foundations of computer operation and software development.

Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, and information theory) to practical disciplines (including the design and implementation of hardware and software). Computer science is generally considered an area of ​​academic research and distinct from computer programming.

Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, and information theory) to practical disciplines (including the design and implementation of hardware and software). Computer science is generally considered an area of ​​academic research and distinct from computer programming.
Wikipedia

If we go back to Wikipedia again, algorithms and data structures are the heart of computer science. They focus on abstract models of computation, classes and generalized problems that they solve, etc. There is a place for scientific research in computer science. While computer programming is aimed at the skilled use of computers for programming and solving specific problems.

Algorithms and data structures are central to computer science. The theory of computation concerns abstract models of computation and general classes of problems that can be solved using them…

Algorithms and data structures are central to computer science. The theory of computation concerns abstract models of computation and general classes of problems that can be solved with their help…
Wikipedia

Therefore, I would like to draw your attention once again to the fact that computer science is about fundamental sciences, and not about specific technologies, although a certain part of specific applied technologies is also studied.

ПрограмуванняпристроївЧистепрограмуванняАналітикатамоделюванняПрийняттярішеньтауправління0102030405060708090100122 Комп'ютерні науки% від профільних предметів

Figure 1. Computer science: what it consists of

Let’s consider the above diagrams (Figure 1), from which it can be seen that computer science almost does not study hardware development (device programming, green). And most attention is paid to software development (red), analytics and modeling (blue). Modeling in computer science means reproducing processes (physical, biological and others) on a computer, and creating forecasts and studying the patterns of these systems is analytics. The last component is decision-making and systems management (yellow). From these diagrams, we can conclude that computer science, in our understanding, studies programming, modeling, and analytics using computers.

Specialty or educational program?

According to Resolution of the Cabinet of Ministers of Ukraine dated April 29, 2015 No. 266 on approving the list of fields of knowledge and specialties in which higher education applicants are trained, we have specialties. There are relatively few of them, but they are quite broad and cover all fields of knowledge. In order for each higher education institution to be able to do something more specific and bring something of its own, special, there are educational programs within the specialty (there can be several of them in one higher education institution for one specialty). So how do we understand how educational programs differ from each other? Now we are talking about a specific specialty – this is F3 (122) “Computer Science”. There are about fifty educational programs in the specialty of computer science in Ukraine. So what distinguishes a specialty from an educational program?

A specialty is something for which there is a standard (for example, standard 122 Computer Science). This standard regulates what a student studies in four years. However, the standard contains only 50% of all educational components that students must study. In addition, there is another 50% that can be divided in half. So, we have that another 25% belongs to the uniqueness of the educational program. It is the educational program that determines another quarter of the unique components (subjects), which depend on the university, the profile of the department, etc. The last 25% are allocated to elective disciplines, of which, according to the standard, there should be no less than 25%. Anything related to IT, or related to it, or may not be related to it at all can be chosen as these disciplines.

Specialty and educational program
Figure 2. Specialty and educational program

Let’s look at this using the example of our specialty – F3 (122) “Computer Sciences”. The educational program that determines the 25% component is “Computer Sciences. Modeling, Design and Computer Graphics”. Also, choosing our educational program, you will be presented with the following elective blocks, such as:

As a representative of the Department of Mathematical Modeling and Intelligent Computing in Engineering, which trains specialists in the “Process Modeling, Data Processing and Analysis” block, I will focus on this trajectory. Of course, I will say a few words about the other blocks so that it is clear what we are talking about and how they differ.

122 — “Computer Science. Modeling, Design and Computer Graphics”. Selected Blocks
Figure 3. F3 (122) — “Computer Science. Modeling, Design and Computer Graphics”. Selected Blocks

Modeling and Computer Science

First of all, when talking about modeling, you need to understand what it is? When I ask my students what modeling is? They all agree that modeling is the process of creating models. If we turn to our beloved Wikipedia again, we can see the following definition:

Modeling is a method of reproducing and studying a certain fragment of reality (object, phenomenon, process, situation) or controlling it, based on representing the object using its copy or similarity – a model.
Wikipedia

And when you ask what a model is? Here opinions differ. It is clear that we are talking about creating models using computers, but, still, the ways of building models on a computer are very different. But we all subconsciously realize that a model is a simplified representation of reality: phenomena or situations that can be controlled or analyzed for their behavior, etc. So, returning to modeling, what is it? Again, Wikipedia identifies many types of modeling:

  • Economic modeling;
  • Mathematical modeling;
  • Physical modeling;
  • Computer modeling;
  • Molecular modeling;
  • Digital modeling;
  • Logical modeling;
  • Pedagogical modeling;
  • Imitative modeling;
  • Evolutionary modeling;
  • Historical modeling;
  • 3D modeling;
Wikipedia

Among the variety of modeling types, we need to choose those that, on the one hand, correspond to the profile of the department, so “Historical” or “Pedagogical” modeling is eliminated, and, on the other hand, computer science methods (software development, algorithm theory, data structures, computational methods) are used to create models using a computer. So, from the huge list, four areas will remain:

  • Mathematical modeling;
  • Computer modeling;
  • 3D modeling;
  • Data-based modeling.
Mathematical modeling
Our understanding of mathematical modeling

What is it? mathematical modeling? This is classical modeling, when knowledge of mathematics, higher mathematics or some branches of mathematics such as differential equations, integral calculus, etc. are used to solve specific problems.

Computer modeling
Our understanding of computer modeling

Computer modeling is when a process is described in a computer using equations. But there is a peculiarity here, the computer itself, under the control of the user, composes the equations itself, and solves them itself. Typically, this is a very complex computational procedure that requires a large amount of RAM and computing cores. Sometimes supercomputers are needed to solve such problems.

3D model of the mechanism
3D model of the mechanism

The next is 3D modeling – this is when a computer is used to create 3D models of an object. 3D modeling is an integral part of using 3D printers. That is, first you need to create a 3D model, and then print it on the printer. By the way, we have a 3D printer at our department and students can participate in projects using the 3D printer if they wish.

Data-based modeling
Data-based modeling

And finally, data-based modeling. Let’s analyze this type of modeling using the example of a store. Probably, all of you have a card from the store where you buy products? Why do you think the store would give it to you? For the sake of a discount? In fact, the store is trying to build a model of the buyer based on the data about you that it collects. When you apply for a card, the store signs a contract with you stating that the store gives you a card, and you leave it your personal data (age, gender, marital status) and data about your purchases. Then, using this card, the store collects your needs in a personalized way: the products you buy, how often you buy them, which ones you buy most often, etc. Then the store analyzes this information to better understand the buyer’s behavior, how many and which products need to be in stock to satisfy demand.

What do all these types of modeling have to do with computer science? The answer is very simple, in order to implement a model using the methods described above, you need to be a specialist in computer science: develop software, design databases, know algorithms and data structures, and master the principles of data analysis, statistics, and artificial intelligence. This combination is the strength of our educational trajectory. You will be a specialist in computer science and mathematical modeling at the same time.

Returning to data-driven modeling as a new method of creating models, it is impossible not to mention the advantages of this method compared to classical approaches. Classical approaches use the idea that you need to write some equations, make some predictions or determine the probability of an event. This is a very complex process, and sometimes it is much faster to have a network of sensors that monitor the state of the system and, thus, can make predictions. Such a network of sensors is sometimes more practical and understandable and gives a more accurate forecast than using classical mathematical models.

Data-driven modeling and classical models
Figure 4. Data-driven modeling and classical models

This approach also has other advantages, which are related to the fact that data is easy to collect, an hour of computer work is cheaper than an hour of work of a qualified engineer, a computer also has a lower probability of error compared to a person, and there are also cases when there is simply no such possibility to create a classical model using equations. Therefore, data-driven modeling is today a breakthrough direction in the field of computer science and computing, which allows us to look beyond the horizon of today’s computer modeling science and see what awaits us in the next 10–15 years.

3D scanning as an example of data-driven modeling
Figure 5. 3D scanning as an example of data-driven modeling

Another example where data-driven modeling is the main modeling method is 3D scanning (Figure 5). For example, we need to build a model of some object, but we do not have equations for how to build it. We can install it in a 3D scanner and scan it as a set of points. After that, process these points, and we will get a three-dimensional model of a real object. That is, this is one of the approaches when you can create a data-driven model without using a classical equation or any complex technologies.

Our educational program focuses on these principles, and we teach students not only classical approaches to programming, but also study approaches that are aimed at non-classical modern modeling methods, their software implementation.

What subjects are studied on the educational trajectory “Process modeling, data processing and analysis”?

There are standard subjects that are regulated by the higher education standard. These include programming, algorithm theory, operating systems, computer networks, discrete mathematics. You can read about all of them on our specialty page. However, it is in the middle of the trajectories that there are the most differences.

I would like to focus on the key ones for us:

  • Object-oriented programming (GUI programming), which studies the principles of OOP, the QT framework. This is a basic course that allows you to study the entire theory of programming and learn how to create graphical applications in the C++ language.
  • Modeling and Reverse Engineering studies the principle of 3D modeling and building complex systems.
  • technology courses that are based on the study of specific technologies C# and .NET
  • Numerical Methods. Students study both theory and practical implementation using modern Matlab, Maple, and Python complexes.
  • Artificial Intelligence, which is a development of the ideas of numerical methods. It allows you to design artificial neural networks, perform analysis and classification tasks using artificial intelligence, and all this is implemented in the modern Python programming language.
  • Image Signal Processing which is no less important. It includes processing data from numerous sensors (cameras). The main goal is to select some objects and, based on them, create their models. Such images can be both input data and any other complex element when creating models.

It is clear that there are no universal software tools to solve any problems, so you need to be able to program artificial intelligence systems, analyze your own calculation results, modify standard algorithms for signal and image processing. This is where you will need programming skills, knowledge of programming languages ​​Python, C#, Java and others. Therefore, our department positions our trajectory as a combination of technological courses with applied aspects aimed at modeling in various fields of knowledge application. It is this combination that is our unique feature that distinguishes us from other computer science and educational programs that exist in Ukraine.

Advantages of studying on our trajectory

One of our competitive advantages is the team of teachers who will work with you. The team includes both experienced professors and young practicing teachers who can communicate with you in the same language, understand modern slang and will be able to easily establish contact with you. You can get to know each one better on the corresponding page of our website.

Teachers of the Department of Mathematical Modeling and Intelligent Computing in Engineering
Teachers of the Department of Mathematical Modeling and Intelligent Computing in Engineering

The works of our graduates have an applied focus, using modern software development tools.

Our students' works
Our students’ works

What are other features of our educational program?

We use a project-based learning form. What is it? This learning allows students, starting from the end of the second year, as well as in the third and fourth years, to carry out small educational projects in teams. These projects can be both real and educational. In this project, students have to go through the entire cycle of creating a program, from the idea and distribution of roles in the team, to the final presentation of the results. All this takes place with the participation of representatives of IT companies, who, within the framework of this project work, look at you as future specialists, if they like your work, they have the opportunity to invite you to work.

One of the options for such work is a dual form of study with the company SoftServ. We have already concluded an agreement that students, starting from the end of the second year of study, can switch to the so-called dual form of study. This means that half of the working day they work in the company for a real salary, provided that they have passed the interview and have the necessary knowledge. The other half of the day they are at the university and are engaged in studies that cannot be transferred to an IT company. So, a dual form of study is a combination of studies both at the university and at the SoftServ company for a real salary.

We also implement the concept of free choice disciplines. Starting from the end of the second, third, and fourth year, we invite leading industry experts to teach one free elective subject per semester. Every semester, we receive applications from IT companies for courses they would like to teach. They send us their leading expert, who is a good practitioner in the industry with 5-7 years of experience and has teaching skills. This expert teaches students the most up-to-date knowledge to date once a week, which he uses in his work.
Due to this, our students receive the most up-to-date knowledge in certain technologies, and they are able to focus on a specific technology instead of studying them all.

I would also like to note that we have academic mobility. That is, we have many partners with whom you can go abroad for a semester or two and study there. After that, transfer the grades received abroad to our university, and continue your studies here.

Companies - partners
Companies – partners

The picture shows the companies with which we cooperate. As you can see, here are the top IT companies of Ukraine that are currently working, and we have signed cooperation agreements with almost all of them, so we have direct interaction and you can get a job directly with these companies.

I want to emphasize the point why we are the institution that provides high-quality IT education. First, this is fundamental academic training. We have both complex mathematical courses and theoretical training. Secondly, these are flexible trajectories, as you can see, we have many opportunities to choose our own trajectory: through free choice disciplines, through the choice of disciplines from IT companies, through the dual form of education, through the choice of study blocks. If you want to learn something, you will learn it, and we give you a lot of opportunities for this. We ensure the relevance of the practical component of technological disciplines by involving practicing specialists. We have academic mobility, which allows you to go for a semester or two to study abroad. And we are also the faculty that is engaged in scientific activities.

Our advantages
Our advantages

Therefore, we can teach you not only to be a specialist in programming, but also to teach you scientific activity, to work not only on software development, but also to conduct scientific research in the field of computer science and mathematical modeling. But that’s not all. To this is added international cooperation, project-based learning, experts in practice and a young and at the same time experienced teaching staff that has everything necessary to make your education high-quality.

Our university consists of 43 professors, 83 associate professors and approximately 20 senior lecturers. Among them are 4 lecturers who have received the President of Ukraine Award, 8 have a scholarship of the Cabinet of Ministers of Ukraine and 3 have a scholarship of the Verkhovna Rada of Ukraine. All this speaks of the high level of our training.

And in conclusion. Computer science is a fundamental education, a great history, this year the Department of Mathematical Modeling and Intelligent Computing in Engineering celebrates its 93rd anniversary, so we know what computer science is, what mathematical modeling is, what it should be and how to teach it.

Features of this year’s admission

Features of this year’s admission are the national multi-subject test (NMT). It includes a new version of the external assessment, which combines three subjects. Another innovation this year is a motivation letter, which is mandatory for admission to 122 Computer Science. In order to enroll on a budget, you need to pass the NMT or have an external assessment for previous years, and write a motivation letter. If you want to enroll on a contract, you need to have an NMT (external assessment) and a motivation letter. The cost of tuition is 27 thousand hryvnias per year, payment in installments is possible.

That’s all I wanted to tell you about F3 (122) Computer Science and our educational program “Design Modeling and Computer Graphics” at the Department of Mathematical Modeling and Intelligent Computing in Engineering.

Thank you for your attention!

standing on fundamentals, intended to innovations…
Institute of Computer Modeling

Other useful links: