Papers
2021 (8)
- M. Denisov, A. Anikin, O. Sychev, A. Katyshev (2021) Program execution comprehension modelling for algorithmic languages learning using ontology-based techniques. Advances in Intelligent Systems and Computing 1184 pp. 256-269. Springer Science and Business Media Deutschland GmbH. doi web bibtex
@ARTICLE{Denisov2021256, author={Denisov, M. and Anikin, A. and Sychev, O. and Katyshev, A.}, title={Program execution comprehension modelling for algorithmic languages learning using ontology-based techniques}, journal={Advances in Intelligent Systems and Computing}, year={2021}, volume={1184}, pages={256-269}, doi={10.1007/978-981-15-5859-7_25}, url={https://link.springer.com/chapter/10.1007%2F978-981-15-5859-7_25}, affiliation={Volgograd State Technical University, Volgograd, Russian Federation; Software Engineering School, Volgograd, Russian Federation}, abstract={In this paper, we propose an ontology-based approach to model a program execution comprehension so to be able to explain to the novice programmer the essence of his/her error. We have studied the algorithmic languages model operating with actions and basic control structures (“sequence,” “branching,” and “looping”) and designed the rules to capture any deviation from the permissible. © The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd 2021.}, correspondence_address1={Anikin, A.; Software Engineering SchoolRussian Federation; эл. почта: Anton@Anikin.name}, publisher={Springer Science and Business Media Deutschland GmbH}, issn={21945357}, language={English}, abbrev_source_title={Adv. Intell. Sys. Comput.}, thanks = {rfbr-18-07-00032} }
- Abstract In this paper, we propose an ontology-based approach to model a program execution comprehension so to be able to explain to the novice programmer the essence of his/her error. We have studied the algorithmic languages model operating with actions and basic control structures (“sequence,” “branching,” and “looping”) and designed the rules to capture any deviation from the permissible. © The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd 2021.
- M. Denisov, A. Anikin, O. Sychev (2021) Dynamic Flowcharts for Enhancing Learners’ Understanding of the Control Flow During Programming Learning. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) 12909 LNAI pp. 408-411. Springer Science and Business Media Deutschland GmbH. doi web bibtex
@ARTICLE{Denisov2021408, author={Denisov, M. and Anikin, A. and Sychev, O.}, title={Dynamic Flowcharts for Enhancing Learners’ Understanding of the Control Flow During Programming Learning}, journal={Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)}, year={2021}, volume={12909 LNAI}, pages={408-411}, doi={10.1007/978-3-030-86062-2_42}, url={https://link.springer.com/chapter/10.1007%2F978-3-030-86062-2_42}, affiliation={Volgograd State Technical University, Lenin Ave, 28, Volgograd, 400005, Russian Federation}, abstract={In introductory programming learning, flowcharts are often used to help students comprehend patterns of behavior of control flow statements like alternatives, loops, and switches. The use of flowcharts in assignments along with lectures can increase their learning effect. In some areas, the potential of flowcharts remains largely underestimated. Flowcharts are rare in intelligent learning systems for learning programming, although class, object, and sequence diagrams are quite popular. This poster describes the implementation of a non-editable flowchart widget in our intelligent programming tutor on control flow structures (hereinafter referred to as the exerciser). In normal use, the student chooses the next correct action in the program text (algorithm), i.e., makes one transition through the flowchart. Our exerciser allows making a wrong choice and gives a text hint explaining the reason for incorrectness. The wrong or inexistent transition is also displayed on the flowchart to help localize the error. © 2021, Springer Nature Switzerland AG.}, correspondence_address1={Anikin, A.; Volgograd State Technical University, Lenin Ave, 28, Russian Federation; эл. почта: anton.anikin@vstu.ru}, editor={Basu A., Stapleton G., Linker S., Legg C., Manalo E., Viana P.}, publisher={Springer Science and Business Media Deutschland GmbH}, issn={03029743}, isbn={9783030860615}, language={English}, abbrev_source_title={Lect. Notes Comput. Sci.}, thanks = {rfbr-20-07-00764} }
- Abstract In introductory programming learning, flowcharts are often used to help students comprehend patterns of behavior of control flow statements like alternatives, loops, and switches. The use of flowcharts in assignments along with lectures can increase their learning effect. In some areas, the potential of flowcharts remains largely underestimated. Flowcharts are rare in intelligent learning systems for learning programming, although class, object, and sequence diagrams are quite popular. This poster describes the implementation of a non-editable flowchart widget in our intelligent programming tutor on control flow structures (hereinafter referred to as the exerciser). In normal use, the student chooses the next correct action in the program text (algorithm), i.e., makes one transition through the flowchart. Our exerciser allows making a wrong choice and gives a text hint explaining the reason for incorrectness. The wrong or inexistent transition is also displayed on the flowchart to help localize the error. © 2021, Springer Nature Switzerland AG.
- O. Sychev, M. Denisov, G. Terekhov (2021) How it Works: Algorithms-A Tool for Developing an Understanding of Control Structures. Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE pp. 621-622. Association for Computing Machinery. doi web bibtex
@CONFERENCE{Sychev2021621, author={Sychev, O. and Denisov, M. and Terekhov, G.}, title={How it Works: Algorithms-A Tool for Developing an Understanding of Control Structures}, journal={Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE}, year={2021}, pages={621-622}, doi={10.1145/3456565.3460032}, url={https://dl.acm.org/doi/10.1145/3456565.3460032}, affiliation={Volgograd State Technical University, Volgograd, Russian Federation}, abstract={Developing an understanding of control structures is one of the important tasks in introductory programming courses. To facilitate active learning with immediate feedback, we developed a constraint-based tutor, "How it Works: Algorithms,"that asks students to build an execution trace of the given algorithm and provides explanatory feedback about the mistakes the student made. The reasons for the student's faults are determined by an inference engine, using a set of rules describing the subject domain. Teachers can create exercises using a simple visual block-based interface and sending them to students as permanent links. © 2021 Owner/Author.}, publisher={Association for Computing Machinery}, issn={1942647X}, isbn={9781450383974}, language={English}, abbrev_source_title={Annu. Conf. Innov. Technol. Comput. Sci. Educ. ITiCSE}, thanks = {rfbr-20-07-00764} }
- Abstract Developing an understanding of control structures is one of the important tasks in introductory programming courses. To facilitate active learning with immediate feedback, we developed a constraint-based tutor, “How it Works: Algorithms,”that asks students to build an execution trace of the given algorithm and provides explanatory feedback about the mistakes the student made. The reasons for the student's faults are determined by an inference engine, using a set of rules describing the subject domain. Teachers can create exercises using a simple visual block-based interface and sending them to students as permanent links. © 2021 Owner/Author.
- A. Anikin, O. Sychev, M. Denisov (2021) Ontology reasoning for explanatory feedback generation to teach how algorithms work. Frontiers in Artificial Intelligence and Applications 338 pp. V-VI. IOS Press BV. doi web bibtex
@ARTICLE{Anikin2021_3, author={Anikin, A. and Sychev, O. and Denisov, M.}, title={Ontology reasoning for explanatory feedback generation to teach how algorithms work}, journal={Frontiers in Artificial Intelligence and Applications}, year={2021}, volume={338}, pages={V-VI}, doi={10.3233/FAIA210100}, art_number={239-244}, url={https://ebooks.iospress.nl/doi/10.3233/FAIA210100}, affiliation={Volgograd State Technical University, Russian Federation; Software Engineering School, Volgograd, Russian Federation}, abstract={Developing algorithms using control structures and understanding their building blocks are essential skills in mastering programming. Ontologies and software reasoning is a promising method for developing intelligent tutoring systems in well-defined domains (like programming languages and algorithms); it can be used for many kinds of teaching tasks. In this work, we used a formal model consisting of production rules for Apache Jena reasoner as a basis for developing a constraint-based tutor for introductory programming domain. The tutor can determine fault reasons for any incorrect answer that a student can enter. The problem the student should solve is building an execution trace for the given algorithm. The problem is a closed-ended question that requires arranging given actions in the (unique) correct order; some actions can be used several times, while others can be omitted. Using formal reasoning to check domain constraints allowed us to provide explanatory feedback for all kinds of errors students can make. © 2021 The authors and IOS Press.}, editor={Frasson C., Kabassi K., Voulodimos A.}, publisher={IOS Press BV}, issn={09226389}, isbn={9781643682044}, language={English}, abbrev_source_title={Front. Artif. Intell. Appl.}, thanks = {rfbr-20-07-00764} }
- Abstract Developing algorithms using control structures and understanding their building blocks are essential skills in mastering programming. Ontologies and software reasoning is a promising method for developing intelligent tutoring systems in well-defined domains (like programming languages and algorithms); it can be used for many kinds of teaching tasks. In this work, we used a formal model consisting of production rules for Apache Jena reasoner as a basis for developing a constraint-based tutor for introductory programming domain. The tutor can determine fault reasons for any incorrect answer that a student can enter. The problem the student should solve is building an execution trace for the given algorithm. The problem is a closed-ended question that requires arranging given actions in the (unique) correct order; some actions can be used several times, while others can be omitted. Using formal reasoning to check domain constraints allowed us to provide explanatory feedback for all kinds of errors students can make. © 2021 The authors and IOS Press.
- Oleg Sychev, Nikita Penskoy, Anton Anikin, Mikhail Denisov, Artem Prokudin (2021) Improving comprehension: Intelligent tutoring system explaining the domain rules when students break them. Education Sciences 11 (11) MDPI. doi web bibtex
@ARTICLE{Sychev2021mdpi, author={Oleg Sychev and Nikita Penskoy and Anton Anikin and Mikhail Denisov and Artem Prokudin}, title={Improving comprehension: Intelligent tutoring system explaining the domain rules when students break them}, journal={Education Sciences}, year={2021}, volume={11}, number={11}, doi={10.3390/educsci11110719}, art_number={719}, url={https://www.mdpi.com/2227-7102/11/11/719}, affiliation={Software Engineering Department, Electronics and Computing Machinery Faculty, Volgograd State Technical University, Volgograd, 400005, Russian Federation}, abstract={Intelligent tutoring systems have become increasingly common in assisting students but are often aimed at isolated subject-domain tasks without creating a scaffolding system from lower-to higher-level cognitive skills, with low-level skills often neglected. We designed and developed an intelligent tutoring system, CompPrehension, which aims to improve the comprehension level of Bloom’s taxonomy. The system features plug-in-based architecture, easily adding new subject domains and learning strategies. It uses formal models and software reasoners to solve the problems and judge the answers, and generates explanatory feedback about the broken domain rules and follow-up questions to stimulate the students’ thinking. We developed two subject domain models: an Expressions domain for teaching the expression order of evaluation, and a Control Flow Statements domain for code-tracing tasks. The chief novelty of our research is that the developed models are capable of automatic problem classification, determining the knowledge required to solve them and so the pedagogical conditions to use the problem without human participation. More than 100 undergraduate first-year Computer Science students took part in evaluating the system. The results in both subject domains show medium but statistically significant learning gains after using the system for a few days; students with worse previous knowledge gained more. In the Control Flow Statements domain, the number of completed questions correlates positively with the post-test grades and learning gains. The students’ survey showed a slightly positive perception of the system. © 2021 by the authors. Licensee MDPI, Basel, Switzerland.}, correspondence_address1={Sychev, O.; Software Engineering Department, Russian Federation; эл. почта: o_sychev@vstu.ru; Anikin, A.; Software Engineering Department, Russian Federation; эл. почта: anton.anikin@vstu.ru}, publisher={MDPI}, issn={22277102}, language={English}, abbrev_source_title={Educ. Sci.}, thanks = {rfbr-20-07-00764} }
- Abstract Intelligent tutoring systems have become increasingly common in assisting students but are often aimed at isolated subject-domain tasks without creating a scaffolding system from lower-to higher-level cognitive skills, with low-level skills often neglected. We designed and developed an intelligent tutoring system, CompPrehension, which aims to improve the comprehension level of Bloom’s taxonomy. The system features plug-in-based architecture, easily adding new subject domains and learning strategies. It uses formal models and software reasoners to solve the problems and judge the answers, and generates explanatory feedback about the broken domain rules and follow-up questions to stimulate the students’ thinking. We developed two subject domain models: an Expressions domain for teaching the expression order of evaluation, and a Control Flow Statements domain for code-tracing tasks. The chief novelty of our research is that the developed models are capable of automatic problem classification, determining the knowledge required to solve them and so the pedagogical conditions to use the problem without human participation. More than 100 undergraduate first-year Computer Science students took part in evaluating the system. The results in both subject domains show medium but statistically significant learning gains after using the system for a few days; students with worse previous knowledge gained more. In the Control Flow Statements domain, the number of completed questions correlates positively with the post-test grades and learning gains. The students’ survey showed a slightly positive perception of the system. © 2021 by the authors. Licensee MDPI, Basel, Switzerland.
- Oleg Sychev, Anton Anikin, Mikhail Denisov (2021) Inference Engines Performance in Reasoning Tasks for Intelligent Tutoring Systems. In Computational Science and Its Applications textendash ICCSA 2021. pp. 471–482. Springer International Publishing. doi web bibtex
@incollection{Sychev2021, doi = {10.1007/978-3-030-86960-1_33}, url = {https://doi.org/10.1007/978-3-030-86960-1_33}, year = {2021}, publisher = {Springer International Publishing}, pages = {471--482}, author = {Oleg Sychev and Anton Anikin and Mikhail Denisov}, title = {Inference Engines Performance in Reasoning Tasks for Intelligent Tutoring Systems}, booktitle = {Computational Science and Its Applications {\textendash} {ICCSA} 2021}, thanks = {rfbr-20-07-00764} }
- Oleg Sychev, Anton Anikin, Nikita Penskoy, Mikhail Denisov, Artem Prokudin (2021) CompPrehension - Model-Based Intelligent Tutoring System on Comprehension Level. In Intelligent Tutoring Systems. pp. 52–59. Springer International Publishing. Cham. bibtex
@InProceedings{10.1007/978-3-030-80421-3_6, author="Sychev, Oleg and Anikin, Anton and Penskoy, Nikita and Denisov, Mikhail and Prokudin, Artem", editor="Cristea, Alexandra I. and Troussas, Christos", title="CompPrehension - Model-Based Intelligent Tutoring System on Comprehension Level", booktitle="Intelligent Tutoring Systems", year="2021", publisher="Springer International Publishing", address="Cham", pages="52--59", abstract="Intelligent tutoring systems become increasingly common in assisting human learners, but they are often aimed at isolated domain tasks without creating a scaffolding system from lower- to higher-level cognitive skills. We designed and implemented an intelligent tutoring system CompPrehension aimed at the comprehension level of Bloom's taxonomy that often gets neglected in favour of the higher levels. The system features plugin-based architecture, easing adding new domains and learning strategies; using formal models and software reasoners to solve the problems and judge the answers; and generating explanatory feedback and follow-up questions to stimulate the learners' thinking. The architecture and workflow are shown. We demonstrate the process of interacting with the system in the Control Flow Statements domain. The advantages and limits of the developed system are discussed.", isbn="978-3-030-80421-3", thanks = {rfbr-20-07-00764} }
- Abstract Intelligent tutoring systems become increasingly common in assisting human learners, but they are often aimed at isolated domain tasks without creating a scaffolding system from lower- to higher-level cognitive skills. We designed and implemented an intelligent tutoring system CompPrehension aimed at the comprehension level of Bloom's taxonomy that often gets neglected in favour of the higher levels. The system features plugin-based architecture, easing adding new domains and learning strategies; using formal models and software reasoners to solve the problems and judge the answers; and generating explanatory feedback and follow-up questions to stimulate the learners' thinking. The architecture and workflow are shown. We demonstrate the process of interacting with the system in the Control Flow Statements domain. The advantages and limits of the developed system are discussed.
- Oleg Sychev, Mikhail Denisov, Anton Anikin (2021) Ways To Write Algorithms And Their Execution Traces For Teaching Programming. In EpSBS - Volume 102 - NININS 2020. pp. 1029-1039. European Publisher. doi web bibtex
@inproceedings{13164, author = {Oleg Sychev and Mikhail Denisov and Anton Anikin}, title = {Ways To Write Algorithms And Their Execution Traces For Teaching Programming}, booktitle = {EpSBS - Volume 102 - NININS 2020}, year = {2021}, pages = {1029-1039}, publisher = {European Publisher}, doi = {10.15405/epsbs.2021.02.02.127}, url = {https://doi.org/10.15405/epsbs.2021.02.02.127}, thanks = {rfbr-20-07-00764} }
2019 (1)
- A Anikin, A Katyshev, M Denisov, V Smirnov, D Litovkin (mar 2019) Using online update of distributional semantics models for decision-making support for concepts extraction in the domain ontology learning task. IOP Conference Series: Materials Science and Engineering 483 pp. 012073. IOP Publishing. doi web bibtex
@article{Anikin_2019_2, doi = {10.1088/1757-899x/483/1/012073}, url = {https://doi.org/10.1088%2F1757-899x%2F483%2F1%2F012073}, year = 2019, month = {mar}, publisher = {{IOP} Publishing}, volume = {483}, pages = {012073}, author = {A Anikin and A Katyshev and M Denisov and V Smirnov and D Litovkin}, title = {Using online update of distributional semantics models for decision-making support for concepts extraction in the domain ontology learning task}, journal = {{IOP} Conference Series: Materials Science and Engineering}, thanks = {rfbr-18-07-00032}, abstract = {Most of the information processed by computer systems is presented in the form of text corpuses. The number of such texts (as well as the corpus as a whole) only increases with time, and therefore the word processing tasks remain relevant to this day. Ontology allows to describe semantics using domain concepts and relations between them [1, 2]. In the ontology learning task, the ontology is dependent on quality of corpus which may not be readily available. There are different approaches to creating ontologies (including the use of different tools and frameworks). This paper discusses the use of word2vec (group of related models that are used to produce word embeddings) using online vocabulary update and extension of the original data corpus with additional training for the domain concepts extraction to automate the domain ontology creation.} }
- Abstract Most of the information processed by computer systems is presented in the form of text corpuses. The number of such texts (as well as the corpus as a whole) only increases with time, and therefore the word processing tasks remain relevant to this day. Ontology allows to describe semantics using domain concepts and relations between them [1, 2]. In the ontology learning task, the ontology is dependent on quality of corpus which may not be readily available. There are different approaches to creating ontologies (including the use of different tools and frameworks). This paper discusses the use of word2vec (group of related models that are used to produce word embeddings) using online vocabulary update and extension of the original data corpus with additional training for the domain concepts extraction to automate the domain ontology creation.