Practically any big and medium-sized manufacturing facility today can’t do without robotic machines, “smart” conveyors, and programmable modules. These elements operate in a complex that scientists refer to as a distributed cyber-physical system (CPS). Forming the building blocks of automated factories, CPS are controlled by special software. This software is updated and changed much less often than a system on a regular personal computer, and it’s far from rare that a modern production facility is equipped with new devices that are powered by software written in old programming languages which prove incomprehensible to today’s IT specialists.
But progress doesn’t stall, and the introduction of new manufacturing standards that hail the creation of the so-called industry 4.0 calls for updating the software on the controllers that govern the manufacturing process and transitioning to new principles of organizing their work. This, however, is a complex process that requires significant investment as it requires a major overhaul of the software that has been in operation for years and maybe even decades, as well as the readjustment of mechanisms that control the undercutting and painting of parts to the accuracy of a micron.
It is with the aim of simplifying this transition that ITMO scientists came up with their project “Development of synthesis methods for finite-automaton control algorithms for programmable logic controllers in distributed cyber-physical systems”, submitting it for the participation in the “Scientific mentorship” contest by the Russian Foundation for Basic Research (RFBR) and the Sirius center. Over 320 teams of young scientists working under the guidance of renowned researchers competed to have their projects supported. In the end, the RFBR made the decision to support 41 research groups, including the representatives of ITMO University.
Lost in transition
Today, many of the controllers that oversee the work of robotic machines, conveyors and cranes at manufacturing facilities use software written in very specific programming languages in the spirit of BASIC, which was developed in the 1960s. What is more, these systems work on a cyclical basis.
“Each controller in an endless cycle reads the values of the input signals and provides output signals such as turning on the light bulb, turning the mechanical arm, and so on; however, the old values are not memorized and the whole process doesn’t form a logical system,” explains Daniil Chivilikhin, one of the project’s participants. “A factory’s equipment can be modern, but the controller continues to work in an old-fashioned way. Today, there is a trend towards transitioning to newer languages cogitable to modern programmers, and in general to the systems that operate on other principles. Instead of running a program cyclically and responding to incoming systems, the so-called finite-state machines are used. In this case, the system works on a continuous basis, and its current state fits into the overall logic of the machine: waiting, receiving data, launching an operation. All this is brought together in a single logical system. Such an algorithm is easier to verify, easier to control, understand and maintain.”
But one question still stands not fully resolved: how to accomplish this transition without having to completely change the equipment of the distributed cyber-physical system, allegorically speaking the “brains” of the factory, and also without having to create a new set of complex mathematical algorithms to support the operation of new controllers.
“That’s where we come in, and say that there’s no need in hiring new programmers and rewriting all the code that’s been powering your factory for years,” continues Daniil Chivilikhin. “We offer a solution that will automatically convert old control algorithms into a new format.”
How it works
To develop such a, as it were, code adapter system, it is necessary to solve a number of very advanced mathematical tasks.
“The basis of the methods that we’re going to develop for the synthesis of distributed finite-state automatic controllers will be the reduction to the Boolean satisfiability problem (SAT). Instead of solving one specific problem and coming up with a specific algorithm for it, we’ll reduce our problem to the SAT problem, which already has algorithmic solutions with known effectiveness. This approach to solving problems is called propositional coding or SAT technology. In the simplest formulation of the problem, we have to synthesize M finite-state machines, each of which has N states, and it’s necessary that the synthesized system meet given behavior scenarios. For this, a Boolean formula is constructed, which includes logical variables that can take the values “True” and “False” and a range of connectives “And”, “Or”, “Not”. This formula should be solvable if and only if there are our M automata with N states satisfying the preset behavior scenarios. How to build this formula (that is, reduce the original problem to SAT) so that it is correct, not too unwieldy, and be able to be solved in a reasonable amount of time on modern computers – this is where science begins,” explains Daniil Chivilikhin.
All these developments will facilitate the creation of new software for new controllers, which will allow to read input and output data from an already existing system and build algorithms that will control the production process according to modern-day standards.
“All that you need will be to hang an additional box (another controller with a Wi-Fi module) near your original controller, which will read all your input and output data,” says Daniil Chivilikhin. “Our software will then upload it to a cloud storage interacting with regular computers. This is how the data on the current work of a CPS is collected. It is based on this data that finite-state automations for new controllers are then synthesized, which behave similarly to old control algorithms.”
About the project
The project is designed to span two years, with the funding obtained as a result of the contest amounting to 4.5 million rubles per year. In this time, the scientists will be developing algorithms and testing them in virtual simulators and on the basis of a working lab model of a factory at the Luleå University of Technology.
“I think that there are several factors that allowed us to win the contest,” shares Daniil Chivilikhin. “Firstly, it’s our scientific school founded by Anatoliy Shalyto, which has always been aimed at the aspects of using finite-state automations. Our project is supervised by Valeriy Vyatkin, a scientist with a world-renowned reputation in this field. Last but not least, some credit should go to our team; there is a group of young ITMO scientists who are actively working on this topic and have a lot of publications in the field of synthesis and verification of finite-state automation models. We’ve also done some groundwork specifically for this project.”
One part of the work will be implemented on the basis of the Sirius project: the team’s members will spend from three to six months working on the platform of the Sirius education center in the Russian city of Sochi. Following the results of the work, the team plans to present a range of articles at high-ranking conferences and in the field’s leading science journals.