• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 354
  • 85
  • 42
  • 24
  • 11
  • 11
  • 11
  • 11
  • 11
  • 11
  • 9
  • 7
  • 4
  • 3
  • 2
  • Tagged with
  • 715
  • 715
  • 408
  • 303
  • 302
  • 213
  • 120
  • 106
  • 96
  • 95
  • 94
  • 84
  • 59
  • 58
  • 56
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
591

Deterministic Reactive Programming for Cyber-physical Systems

Menard, Christian 03 June 2024 (has links)
Today, cyber-physical systems (CPSs) are ubiquitous. Whether it is robotics, electric vehicles, the smart home, autonomous driving, or smart prosthetics, CPSs shape our day-to-day lives. Yet, designing and programming CPSs becomes evermore challenging as the overall complexity of systems increases. CPSs need to interface (potentially distributed) computation with concurrent processes in the physical world while fulfilling strict safety requirements. Modern and popular frameworks for designing CPS applications, such as ROS and AUTOSAR, address the complexity challenges by emphasizing scalability and reactivity. This, however, comes at the cost of compromising determinism and the time predictability of applications, which ultimately compromises safety. This thesis argues that this compromise is not a necessity and demonstrates that scalability can be achieved while ensuring a predictable execution. At the core of this thesis is the novel reactor model of computation (MoC) that promises to provide timed semantics, reactivity, scalability, and determinism. A comprehensive study of related models indicates that there is indeed no other MoC that provides similar properties. The main contribution of this thesis is the introduction of a complete set of tools that make the reactor model accessible for CPS design and a demonstration of their ability to facilitate the development of scalable deterministic software. After introducing the reactor model, we discuss its key principles and utility through an adaptation of reactors in the DEAR framework. This framework integrates reactors with a popular runtime for adaptive automotive applications developed by AUTOSAR. An existing AUTOSAR demonstrator application serves as a case study that exposes the problem of nondeterminism in modern CPS frameworks. We show that the reactor model and its implementation in the DEAR framework are applicable for achieving determinism in industrial use cases. Building on the reactor model, we introduce the polyglot coordination language Lingua Franca (LF), which enables the definition of reactor programs independent of a concrete target programming language. Based on the DEAR framework, we develop a full-fledged C++ reactor runtime and a code generation backend for LF. Various use cases studied throughout the thesis illustrate the general applicability of reactors and LF to CPS design, and a comprehensive performance evaluation using an optimized version of the C++ reactor runtime demonstrates the scalability of LF programs. We also discuss some limitations of the current scheduling mechanisms and show how they can be overcome by partitioning programs. Finally, we consider design space exploration (DSE) techniques to further improve the scalability of LF programs and manage hardware complexity by automating the process of allocating hardware resources to specific components in the program. This thesis contributes the Mocasin framework, which resembles a modular platform for prototyping and researching DSE flows. While a concrete integration with LF remains for future work, Mocasin provides a foundation for exploring DSE in Lingua Franca.
592

A visual language for ADA program unit specifications

Gordon, Christopher Todd 23 June 2009 (has links)
This thesis describes a visual programming language designed to describe and generate Ada program unit specifications. The author first describes the foundations for the work, and gives a brief introduction to some of the features of the language. Most of the thesis is dedicated to describing the visual representation for each portion of an Ada package specification. The BNF grammar of an Ada package specification is used as a basis for organization. By organizing the thesis via the package specification, all program unit specifications i.e., package, task, subprogram and generic specifications) are described and given a representation in the language. Toward the end of the thesis, the design and reference of a package specification is demonstrated in a hypothetical implementation. / Master of Science
593

The development of a method to assist in the transformation from procedural languages to object oriented languages with specific reference to COBOL and JAVA

Wing, Jeanette Wendy January 2002 (has links)
Thesis (M.Tech.: Computer Studies)-Dept. of Computer Science, Durban Institute of Technology, 2002. / Computer programming has been a science for approximately 50 years. It this time there havebeen two major paradigm shifts that have taken place. The first was from “spaghetti code” to structured programs. The second paradigm shift is from procedural programs to object oriented programs. The change in paradigm involves a change in the way in which a problem is approached, can be solved, as well as a difference in the language that is used. The languages that were chosen to be studied, are COBOL and Java. These programming languages were identified as key languages, and the languages that software development are the most reliant on. COBOL, the procedural language for existing business systems, and Java the object oriented language, the most likely to be used for future development. To complete this study, both languages were studied in detail. The similarities and differences between the programming languages are discussed. Some key issues that a COBOL programmer has to keep in mind when moving to Java were identified.
594

Alternative Approaches to Correction of Malapropisms in AIML Based Conversational Agents

Brock, Walter A. 26 November 2014 (has links)
The use of Conversational Agents (CAs) utilizing Artificial Intelligence Markup Language (AIML) has been studied in a number of disciplines. Previous research has shown a great deal of promise. It has also documented significant limitations in the abilities of these CAs. Many of these limitations are related specifically to the method employed by AIML to resolve ambiguities in the meaning and context of words. While methods exist to detect and correct common errors in spelling and grammar of sentences and queries submitted by a user, one class of input error that is particularly difficult to detect and correct is the malapropism. In this research a malapropism is defined a "verbal blunder in which one word is replaced by another similar in sound but different in meaning" ("malapropism," 2013). This research explored the use of alternative methods of correcting malapropisms in sentences input to AIML CAs using measures of Semantic Distance and tri-gram probabilities. Results of these alternate methods were compared against AIML CAs using only the Symbolic Reductions built into AIML. This research found that the use of the two methodologies studied here did indeed lead to a small, but measurable improvement in the performance of the CA in terms of the appropriateness of its responses as classified by human judges. However, it was also noted that in a large number of cases, the CA simply ignored the existence of a malapropism altogether in formulating its responses. In most of these cases, the interpretation and response to the user's input was of such a general nature that one might question the overall efficacy of the AIML engine. The answer to this question is a matter for further study.
595

A model checker for the LF system

Gerber, Erick D. B. 03 1900 (has links)
Thesis (MSc)--University of Stellenbosch, 2007. / ENGLISH ABSTRACT: Computer aided veri cation techniques, such as model checking, can be used to improve the reliability of software. Model checking is an algorithmic approach to illustrate the correctness of temporal logic speci cations in the formal description of hardware and software systems. In contrast to traditional testing tools, model checking relies on an exhaustive search of all the possible con gurations that these systems may exhibit. Traditionally model checking is applied to abstract or high level designs of software. However, often interpreting or translating these abstract designs to implementations introduce subtle errors. In recent years one trend in model checking has been to apply the model checking algorithm directly to the implementations instead. This thesis is concerned with building an e cient model checker for a small concurrent langauge developed at the University of Stellenbosch. This special purpose langauge, LF, is aimed at developement of small embedded systems. The design of the language was carefully considered to promote safe programming practices. Furthermore, the language and its runtime support system was designed to allow directly model checking LF programs. To achieve this, the model checker extends the existing runtime support infrastructure to generate the state space of an executing LF program. / AFRIKAANSE OPSOMMING: Rekenaar gebaseerde program toetsing, soos modeltoetsing, kan gebruik word om die betroubaarheid van sagteware te verbeter. Model toetsing is 'n algoritmiese benadering om die korrektheid van temporale logika spesi kasies in die beskrywing van harde- of sagteware te bewys. Anders as met tradisionlee program toetsing, benodig modeltoetsing 'n volledige ondersoek van al die moontlike toestande waarin so 'n beskrywing homself kan bevind. Model toetsing word meestal op abstrakte modelle van sagteware of die ontwerp toegepas. Indien die ontwerp of model aan al die spesi kasies voldoen word die abstrakte model gewoontlik vertaal na 'n implementasie. Die vertalings proses word gewoontlik met die hand gedoen en laat ruimte om nuwe foute, en selfs foute wat uitgeskakel in die model of ontwerp is te veroorsaak. Deesdae, is 'n gewilde benadering tot modeltoetsing om di e tegnieke direk op die implementasie toe te pas, en sodoende die ekstra moeite van model konstruksie en vertaling uit te skakel. Hierdie tesis handel oor die ontwerp, implementasie en toetsing van 'n e ektiewe modeltoetser vir 'n klein gelyklopende taal, LF, wat by die Universiteit van Stellenbosch ontwikkel is. Die enkeldoelige taal, LF, is gemik op die veilige ontwikkeling van ingebedde sagteware. Die taal is ontwerp om veilige programmerings praktyke aan te moedig. Verder is die taal en die onderliggende bedryfstelsel so ontwerp om 'n model toetser te akkomodeer. Om die LF programme direk te kan toets, is die model toetser 'n integrale deel van die bedryfstelsel sodat dit die program kan aandryf om alle moontlike toestande te besoek.
596

Higher-order semantics for quantum programming languages with classical control

Atzemoglou, George Philip January 2012 (has links)
This thesis studies the categorical formalisation of quantum computing, through the prism of type theory, in a three-tier process. The first stage of our investigation involves the creation of the dagger lambda calculus, a lambda calculus for dagger compact categories. Our second contribution lifts the expressive power of the dagger lambda calculus, to that of a quantum programming language, by adding classical control in the form of complementary classical structures and dualisers. Finally, our third contribution demonstrates how our lambda calculus can be applied to various well known problems in quantum computation: Quantum Key Distribution, the quantum Fourier transform, and the teleportation protocol.
597

A Parallel Programming Language

Cox, Richard D. 05 1900 (has links)
The problem of programming a parallel processor is discussed. Previous methods of programming a parallel processor, analyzing a program for parallel paths, and special language features are discussed. Graph theory is used to define the three basic programming constructs: choice, sequence, repetition. The concept of mechanized programming is expanded to allow for total separation of control and computational sections of a program. A definition of a language is presented which provides for this separation. A method for developing the program graph is discussed. The control graph and data graph are developed separately. The two graphs illustrate control and data predecessor relationships used in determining parallel elements of a program.
598

Automated Knowledge Extraction from Archival Documents

Malki, Khalil 31 July 2019 (has links)
Traditional archival media such as paper, film, photographs, etc. contain a vast storage of knowledge. Much of this knowledge is applicable to current business and scientific problems, and offers solutions; consequently, there is value in extracting this information. While it is possible to manually extract the content, this technique is not feasible for large knowledge repositories due to cost and time. In this thesis, we develop a system that can extract such knowledge automatically from large repositories. A Graphical User Interface that permits users to indicate the location of the knowledge components (indexes) is developed, and software features that permit automatic extraction of indexes from similar documents is presented. The indexes and the documents are stored in a persistentdata store.The system is tested on a University Registrar’s legacy paper-based transcript repository. The study shows that the system provides a good solution for large-scale extraction of knowledge from archived paper and other media.
599

Um modelo de programação orientado ao desenvolvimento de sistemas ubíquos / A programming model oriented to development of ubiquitous systems

Garzão, Alex Sandro 22 March 2010 (has links)
Made available in DSpace on 2015-03-05T14:01:49Z (GMT). No. of bitstreams: 0 Previous issue date: 22 / Bolsa para curso e programa de Pós Graduação / O presente trabalho propõe o Ubiquitous Oriented Programming (abreviadamente UOP), um modelo de programação orientado ao desenvolvimento de sistemas ubíquos. UOP utiliza os conceitos de Serviços e Orientação a Objetos, integrando-os com os requisitos de aplicações ubíquas como contexto, sensibilidade ao contexto, adaptação ao contexto, mobilidade de código e concorrência. Uma linguagem de programação (UbiLanguage) implementa os conceitos deste novo modelo de programação, provendo assim suporte ao desenvolvimento de sistemas ubíquos. O ambiente de desenvolvimento é composto por um compilador (UbiCompiler) que traduz código escrito em UbiLanguage para bytecode. A plataforma de execução é composta por uma máquina virtual ubíqua (UbiVM) que suporta a execução deste bytecode. / This work presents the Ubiquitous Oriented Programming (UOP in short), a programming model oriented to development of ubiquitous systems. UOP uses Services concepts and Object Oriented Programming, integrating them with the requirements of ubiquitous applications as context, context awareness, context adaptation, code mobility and concurrent. A programming language (UbiLanguage) implements the concepts of this new programming model, thus providing the development of ubiquitous systems. The development environment is composed by a compiler (UbiCompiler) which translates code written in UbiLanguage to bytecode. The execution platform is composed by a virtual machine (UbiVM) which supports the execution of this bytecode.
600

Proposta de uma gramática para análise de textos com estrutura OCC-RDD por meio de tradução com semântica de redes de Petri

Ferrari, Carla Marye Bicas 14 September 2017 (has links)
Submitted by Filipe dos Santos (fsantos@pucsp.br) on 2018-01-23T11:30:38Z No. of bitstreams: 1 Carla Marye Bicas Ferrari.pdf: 1256058 bytes, checksum: e934053679a57fcb66d337b275093865 (MD5) / Made available in DSpace on 2018-01-23T11:30:38Z (GMT). No. of bitstreams: 1 Carla Marye Bicas Ferrari.pdf: 1256058 bytes, checksum: e934053679a57fcb66d337b275093865 (MD5) Previous issue date: 2017-09-14 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES / The aim of this research is to design a grammar that recognizes an educational text written in the narrative structure OCC-RDD and from its own generated a Petri Net model, in order to be possible analyzed and interpreted as network property on the educational history. The research will start with a bibliographic research from which a grammar and other components of this research are prepared, whose main objective is to advice the teacher on the class preparation which uses the narrative structure. A text following the narrative model in order to use it on the tool will be prepared and the same will go through each step of the research, which are: recognition of the fable, creation of the Petri Net model, network analysis and production of the results of fable’s analysis. The result of this project is the fable recognition grammar that can be used in a special tool with anexample and the analysis of the properties of this example / O objetivo da pesquisa é projetar uma gramática que reconheça um texto educativo escrito na estrutura da narrativa OCC-RDD e que a partir dela seja gerada um modelo de Rede de Petri, a fim de que seja possível analisar e interpretar as propriedades da rede na história educacional. A pesquisa terá início com um trabalho de consultas bibliográficas a partir do qual será preparada uma gramática e os outros componentes da pesquisa que possuem como principal objetivo auxiliar o professor na preparação de uma aula que utilize a estrutura narrativa. Um texto seguindo o modelo da narrativa com o intuito de utilizá-lo na ferramenta será preparado e o mesmo passará por cada etapa da pesquisa, que são: reconhecimento da fábula, criação do modelo de rede de Petri, análise da rede e produção dos resultados de análise da fábula. O resultado do trabalho ´e a gramática de reconhecimento de fábula que poderá ser utilizada numa ferramenta junto com um exemplo e a análise das propriedades deste exemplo

Page generated in 0.0687 seconds