525 research outputs found

    Design considerations of an intelligent tutoring system for programming languages

    Get PDF
    The overall goal of the thesis is to attempt to highlight the major topics which must be considered in the design of any Intelligent Tutoring System and to illustrate their application within the particular domain of LISP programming. There are two major sections to the thesis. The first considers the background to the educational application of computers. It examines possible roles for the computer, explores the relationship between education theory and computer-based teaching, and identifies some important links among existing Tutoring Systems. The section concludes with a summary of the design goals which an Intelligent Tutoring System should attempt to fulfill. The second section applies the design goals to the production of an Intelligent Tutoring System for programming languages. It devises a formal semantic description for programming languages and illustrates its application to tutoring. A method for modelling the learning process is introduced. Some techniques for maintaining a structured tutoring interaction are described. The work is set within the methodology of Artificial Intelligence research. Although a fully implemented tutoring system is not described, all features discussed are implemented as short programs intended to demonstrate the feasibility of the approach taken

    Automated Feedback for Learning Code Refactoring

    Get PDF

    A Demonstration of Computer Assisted Instruction Using Authorware Professional to Teach Basic Theology

    Get PDF
    The purpose of this thesis is to investigate principles which are basic to Computer Assisted Instruction and how Authorware Professional is able to make use of these principles. A computer assisted instruction module will be produced to demonstrate these principles within the Authorware environment. This module would be used by an individual end user. This module provides enough specific instructions within the program itself that an end user may easily use it. There are two major reasons for choosing Authorware. The first is that I have had experience using this product in different ways. These include public presentations for the library and a simulation module for a graduate class. The second reason is that in light of that experience I believe it provides an excellent vehicle for computer assisted instruction. Authorware Professional may be described as having some relationship to Director but is easier for the end user and thus allows for more emphasis on methodology rather than learning the details of the software. The particular vehicle which was chosen is instruction in basic theology. The reason for choosing this vehicle is that I have a Master's of Theology degree and twelve years of experience as a minister. This enabled me to concentrate on the methodology used in the module rather than the content as I could be my own resource. My experience in communication and teaching also provides a valuable background for this thesis. Many of the means of communicating ideas used in this module draw upon my experience in dealing with people and communicating concepts to them. This description is designed to convey the major concepts I learned while producing this module as well as provide a basic description of the program itself. As such, it includes a description of basic general principles, a general description of Authorware, the way Authorware was used in the program, a discussion of my response to user suggestions and some thoughts for future study. The major part of the project is the program itself. This document seeks to clarify methods, structure and learning

    Estimating the Effects of Forms of Computer-Based Scaffolding in Problem-Centered STEM Instruction

    Get PDF
    Much like Post-Sputnik 1950s era there is a lot of interest in making sure that United States does not fall behind in Science, Technology, Engineering, and Mathematics (STEM) education. STEM learners are often presented with complex problems to solve both as part of their education and their work. Engineering education suffers from student dropout often due to how difficult it is to support students through solving problems. This dissertation is a close look at computer-based scaffolding, a method of supporting learners during problem solving through computer software. The first paper in this dissertation examines and resolves some of the debate about key terms in scaffolding. The second paper looks across all of the collegiate engineering education research to date and measures the unique and combined contributions of scaffolding forms on learning using a technique called meta-analysis

    Creation and Evaluation of Interactive Learning Modules for Computer Science Education

    Get PDF
    The National Science Foundation (NSF) spends substantial resources to improve math and science education in United States. The ultimate goals of these programs are to produce qualified students that pursue careers in math and science. In this project, we examine novel Interactive Learning Modules (ILMs) that may help to improve computer science education. This study examines the usefulness of using interactive learning modules with other traditional methods of teaching. Specifically, we provide an initial validation of this usefulness through an evaluation of students\u27 attitudes toward computer science. The results from the Teacher Survey and ILM Survey show that an ILM helps students to understand a topic better if they are provided with a brief knowledge about the topic. Attitude Survey result shows that a student is willing to take more computing classes if s/he is confident, has interest in computing courses, or believes that it will help them in getting a good job

    Building Intelligent Tutoring Systems

    Get PDF
    This project\u27s goal was to improve the ASSISTments intelligent tutoring system\u27s algebraic capabilities. We worked towards three main objectives. First, we built support for parsing expressions and comparing them for algebraic equality. Second, we implemented an interactive grapher capable of plotting a variety of expressions. Third, we added support for rendering expressions to well formatted images. Finally, we implemented a basic tutoring system including sample problems that demonstrate our work, establishing our tools\u27 usability and integrability

    Creating Systems and Applying Large-Scale Methods to Improve Student Remediation in Online Tutoring Systems in Real-time and at Scale

    Get PDF
    A common problem shared amongst online tutoring systems is the time-consuming nature of content creation. It has been estimated that an hour of online instruction can take up to 100-300 hours to create. Several systems have created tools to expedite content creation, such as the Cognitive Tutors Authoring Tool (CTAT) and the ASSISTments builder. Although these tools make content creation more efficient, they all still depend on the efforts of a content creator and/or past historical. These tools do not take full advantage of the power of the crowd. These issues and challenges faced by online tutoring systems provide an ideal environment to implement a solution using crowdsourcing. I created the PeerASSIST system to provide a solution to the challenges faced with tutoring content creation. PeerASSIST crowdsources the work students have done on problems inside the ASSISTments online tutoring system and redistributes that work as a form of tutoring to their peers, who are in need of assistance. Multi-objective multi-armed bandit algorithms are used to distribute student work, which balance exploring which work is good and exploiting the best currently known work. These policies are customized to run in a real-world environment with multiple asynchronous reward functions and an infinite number of actions. Inspired by major companies such as Google, Facebook, and Bing, PeerASSIST is also designed as a platform for simultaneous online experimentation in real-time and at scale. Currently over 600 teachers (grades K-12) are requiring students to show their work. Over 300,000 instances of student work have been collected from over 18,000 students across 28,000 problems. From the student work collected, 2,000 instances have been redistributed to over 550 students who needed help over the past few months. I conducted a randomized controlled experiment to evaluate the effectiveness of PeerASSIST on student performance. Other contributions include representing learning maps as Bayesian networks to model student performance, creating a machine-learning algorithm to derive student incorrect processes from their incorrect answer and the inputs of the problem, and applying Bayesian hypothesis testing to A/B experiments. We showed that learning maps can be simplified without practical loss of accuracy and that time series data is necessary to simplify learning maps if the static data is highly correlated. I also created several interventions to evaluate the effectiveness of the buggy messages generated from the machine-learned incorrect processes. The null results of these experiments demonstrate the difficulty of creating a successful tutoring and suggest that other methods of tutoring content creation (i.e. PeerASSIST) should be explored

    Robi: a visual programming language for educational robotics

    Get PDF
    Dissertação de mestrado em Engenharia InformáticaThis document presents a Master’s thesis with researches focused on the teaching of computational thinking and present the development details of Robi, a block-based visual programming language that is able to program a robot built with an Arduino Uno. These researches had the purpose of evaluating if the development of Robi, a block-based program ming language that communicates with Arduino, would really be needed. The researches have proved that from the popular programming environments that exist in the market, that were investigated, none have the requirements that Robi requires. The platform will be used to teach computational think through a block-based programming environment and educational robotics. Robi development is motivated by the intersection between the costs of educational robotics kits and the existing block-based programming language, in which simplicity and intuitiveness could be improved, so children with learning difficulties or even younger children, in the context of educational robotics, can leverage the learning benefits that the Robi environment can bring. The educational robotics kit used with the block-based programming environment developed, is the one based on Arduino Uno, a microcontroller board that, together with electronic components, can be considered cheaper than some of the famous educational robotics kits. The main goal of this project is to provide a simpler and more intuitive visual programming language platform to program a robot based on Arduino Uno.Este documento apresenta uma tese de Mestrado com investigações voltadas ao ensino do pensamento computacional e apresenta os detalhes do desenvolvimento de Robi, uma linguagem de programação visual baseada em blocos, que é possível programar um robô construído com um Arduino Uno. Essas investigações tiveram o objetivo de avaliar se o desenvolvimento de Robi, uma linguagem de programação baseada em blocos que se comunica com o Arduino, seria realmente necessário. As investigações comprovaram que dos ambientes de programação populares existentes no mercado, que foram investigados, nenhum possui os requisitos que Robi exige. A plataforma será utilizada para ensinar pensamento computacional por meio de um ambiente de programação baseado em blocos e robótica educacional. O desenvolvimento de Robi é motivado pela combinação entre os custos dos kits de robótica educacional existentes no mercado e linguagens de programação baseada em blocos existentes, em que simplicidade e intuitividade poderiam ser aprimoradas, para assim, crianças com dificuldades de aprendizagem ou até crianças mais novas, no contexto da robótica educacional, poderiam fazer proveito dos benefícios da aprendizagem que o ambiente Robi pode trazer. O kit de robótica educacional utilizado com o ambiente de programação baseado em blocos desenvolvido é um kit com o Arduino Uno, uma placa de microcontrolador que, junto com componentes eletrônicos, pode ser considerada mais barata que alguns dos famosos kits de robótica educacional. O objetivo principal deste projeto é fornecer uma plataforma de linguagem de programação visual mais simples e intuitiva para programar um robô baseado em Arduino Uno
    corecore