skip to main content


Title: Invited: Actors Revisited for Time-Critical Systems
Programming time-critical systems is notoriously difficult. In this paper we propose an actor-oriented programming model with a semantic notion of time and a deterministic coordination semantics based on discrete events to exercise precise control over both the computational and timing aspects of the system behavior.  more » « less
Award ID(s):
1836601
NSF-PAR ID:
10118630
Author(s) / Creator(s):
; ; ; ; ; ;
Date Published:
Journal Name:
Design Automation Conference (DAC)
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. The expansion of computer science (CS) into K-12 contexts has resulted in a diverse ecosystem of curricula designed for various grade levels, teaching a variety of concepts, and using a wide array of different programming languages and environments. Many students will learn more than one programming language over the course of their studies. There is a growing need for computer science assessment that can measure student learning over time, but the multilingual learning pathways create two challenges for assessment in computer science. First, there are not validated assessments for all of the programming languages used in CS classrooms. Second, it is difficult to measure growth in student understanding over time when students move between programming languages as they progress in their CS education. In this position paper, we argue that the field of computing education research needs to develop methods and tools to better measure students' learning over time and across the different programming languages they learn along the way. In presenting this position, we share data that shows students approach assessment problems differently depending on the programming language, even when the problems are conceptually isomorphic, and discuss some approaches for developing multilingual assessments of student learning over time. 
    more » « less
  2. Abstract

    Quantitative literacy is necessary to keep pace with the exponentially increasing magnitude of biological data and the complexity of statistical tools. However, statistical programming can cause anxiety in new learners and educators alike. In order to produce graduates that are well‐prepared for quantitative research, overcoming the initial hurdles associated with statistical programming is a must. Often, valuable class time is dedicated to teaching introductory concepts of statistical programming, leaving instructors short on time. Here we present an introductory tutorial to statistical programming in the language R. Our tutorial is easily customizable, self‐paced, and can be used in secondary through graduate level classrooms. Student questionnaire responses suggest that perceptions towards R became generally more favorable following an introduction to the program, with an increased likelihood of returning to R. Similar results were found across multiple formats for introducing statistical programming in R and suggest a tutorial‐style introduction is as effective as a series of lectures and computer exercises for altering student perceptions towards statistical programming for graduate students. Our tutorial provides a self‐paced introduction that covers basic programming in R and offers students an opportunity to learn the basic skills that often act as a roadblock to learning and utilizing more complex quantitative tools, while reserving class time for instruction.

     
    more » « less
  3. Jun Oshima, Toshio Mochizuki (Ed.)
    Designing activities for maximizing collaborative learning in advanced computer science contexts is of broad interest. While programming exercises remain the dominant form of pedagogy here, prior work showed that collaborative reflection over worked examples is as good or even better for conceptual learning and future programming. This work used a “phased” design, with separate collaborative reflection and programming phases, and varied the time boundary between the two to determine their differential impact. A more effective design, however, could involve collaborative reflection prompted “in the flow” of programming, with benefits similar to self-explanation prompts interleaved into individual problem-solving. While total time-on-task is the same, this “interleaved” design might allow learners to spend a larger proportion of this time on reflection. Thus, this paper compares this novel interleaved approach to the phased design. We determine that interleaving increases the proportion of time available for reflection resulting in performance improvements on future programming. 
    more » « less
  4. Unlike artificial intelligent systems based on computers, which must be programmed for specific tasks, the human brain can learn in real-time to create new tactics and adapt to complex, unpredictable environments. Computers embedded in artificial intelligent systems can execute arbitrary inference algorithms capable of outperforming humans at specific tasks. However, without real-time self-programming functionality, they must be preprogrammed by humans and will likely to fail in unpredictable environments beyond their preprogrammed domains. In this work, a Si-based synaptic resistor (synstor) was developed by integrating Al2Ox/TaOymaterials to emulate biological synapses. The synstors were characterized, and their operation mechanism based on the charge stored in the oxygen vacancies in the Al2Oxmaterial was simulated and analyzed, to understand the inference, learning, and memory functions of the synstors. A self-programming neuromorphic integrated circuit (SNIC) based on synstors was fabricated to execute inference and learning algorithms concurrently in real-time with an energy efficiency more than six-orders of magnitudes higher than those of standard digital computers. The SNIC dynamically modified its algorithm in a real-time learning process to control a morphing wing, thus successfully improving its lift-to-drag force ratio and recovering the wing from stall in complex aerodynamic environments. The synaptic resistor circuits can potentially circumvent the fundamental limitations of computers, thus providing a platform analogous to neurobiological network with real-time self-programming functionality for artificial intelligent systems.

     
    more » « less
  5. Drift counteraction optimal control (DCOC) aims at optimizing control to maximize the time (or a yield) until the system trajectory exits a prescribed set, which may represent safety constraints, operating limits, and/or efficiency requirements. To DCOC problems formulated in discrete time, conventional approaches were based on dynamic programming (DP) or mixed-integer programming (MIP), which could become computationally prohibitive for higher-order systems. In this paper, we propose a novel approach to discrete-time DCOC problems based on a nonlinear programming formulation with purely continuous variables. We show that this new continuous optimization-based approach leads to the same exit time as the conventional MIP-based approach, while being computationally more efficient than the latter. This is also illustrated by numerical examples representing the drift counteraction control for an indoor airship. 
    more » « less