71,717 research outputs found
Process algebra modelling styles for biomolecular processes
We investigate how biomolecular processes are modelled in process algebras, focussing on chemical reactions. We consider various modelling styles and how design decisions made in the definition of the process algebra have an impact on how a modelling style can be applied. Our goal is to highlight the often implicit choices that modellers make in choosing a formalism, and illustrate, through the use of examples, how this can affect expressability as well as the type and complexity of the analysis that can be performed
An extensible web interface for databases and its application to storing biochemical data
This paper presents a generic web-based database interface implemented in
Prolog. We discuss the advantages of the implementation platform and
demonstrate the system's applicability in providing access to integrated
biochemical data. Our system exploits two libraries of SWI-Prolog to create a
schema-transparent interface within a relational setting. As is expected in
declarative programming, the interface was written with minimal programming
effort due to the high level of the language and its suitability to the task.
We highlight two of Prolog's features that are well suited to the task at hand:
term representation of structured documents and relational nature of Prolog
which facilitates transparent integration of relational databases. Although we
developed the system for accessing in-house biochemical and genomic data the
interface is generic and provides a number of extensible features. We describe
some of these features with references to our research databases. Finally we
outline an in-house library that facilitates interaction between Prolog and the
R statistical package. We describe how it has been employed in the present
context to store output from statistical analysis on to the database.Comment: Online proceedings of the Joint Workshop on Implementation of
Constraint Logic Programming Systems and Logic-based Methods in Programming
Environments (CICLOPS-WLPE 2010), Edinburgh, Scotland, U.K., July 15, 201
New understanding of the shape-memory response in thiol-epoxy click systems: towards controlling the recovery process
Our research group has recently found excellent shape-memory response in âthiol-epoxyâ thermosets obtained with click-chemistry. In this study, we use their well-designed, homogeneous and tailorable network structures to investigate parameters for better control of the shape-recovery process. We present a new methodology to analyse the shape-recovery process, enabling easy and efficient comparison of shape-memory experiments on the programming conditions. Shape-memory experiments at different programming conditions have been carried out to that end. Additionally, the programming process has been extensively analysed in uniaxial tensile experiments at different shape-memory testing temperatures. The results showed that the shape-memory response for a specific operational design can be optimized by choosing the correct programming conditions and accurately designing the network structure. When programming at a high temperature (T » Tg), under high network mobility conditions, high shape-recovery ratios and homogeneous shape-recovery processes are obtained for the network structure and the programmed strain level (eD). However, considerably lower stress and strain levels can be achieved. Meanwhile, when programming at temperatures lower than Tg, considerably higher stress and strain levels are attained but under low network mobility conditions. The shape-recovery process heavily depends on both the network structure and eD. Network relaxation occurs during the loading stage, resulting in a noticeable decrease in the shape-recovery rate as eD increases. Moreover, at a certain level of strain, permanent and non-recoverable deformations may occur, impeding the completion and modifying the whole path of the shape-recovery process.Postprint (author's final draft
A Protocol for the Atomic Capture of Multiple Molecules at Large Scale
With the rise of service-oriented computing, applications are more and more
based on coordination of autonomous services. Envisioned over largely
distributed and highly dynamic platforms, expressing this coordination calls
for alternative programming models. The chemical programming paradigm, which
models applications as chemical solutions where molecules representing digital
entities involved in the computation, react together to produce a result, has
been recently shown to provide the needed abstractions for autonomic
coordination of services. However, the execution of such programs over large
scale platforms raises several problems hindering this paradigm to be actually
leveraged. Among them, the atomic capture of molecules participating in concur-
rent reactions is one of the most significant. In this paper, we propose a
protocol for the atomic capture of these molecules distributed and evolving
over a large scale platform. As the density of possible reactions is crucial
for the liveness and efficiency of such a capture, the protocol proposed is
made up of two sub-protocols, each of them aimed at addressing different levels
of densities of potential reactions in the solution. While the decision to
choose one or the other is local to each node participating in a program's
execution, a global coherent behaviour is obtained. Proof of liveness, as well
as intensive simulation results showing the efficiency and limited overhead of
the protocol are given.Comment: 13th International Conference on Distributed Computing and Networking
(2012
Performance Analysis of Optimization Methods in PSE Applications. Mathematical Programming Versus Grid-based Multi-parametric Genetic Algorithms
Due to their large variety of applications in the PSE area, complex optimisation problems are of high interest for the scientific community. As a consequence, a great effort is made for developing efficient solution techniques. The choice of the relevant technique for the treatment of a given problem has already been studied for batch plant design issues. However,most works reported in the dedicated literature classically considered item sizes as continuous variables. In a view of realism, a similar approach is proposed in this paper, with discrete variables representing equipment capacities. The numerical results enable to evaluate the performances of two mathematical programming (MP) solvers embedded within the GAMS package and a genetic algorithm (GA), on a set of seven increasing complexity examples. The necessarily huge number of runs for the GA could be performed within a computational framework basedon a grid infrastructure; however, since the MP methods were tackled through single-computer computations, the CPU time comparison are reported for this one-PC working mode. On the one hand, the high combinatorial effect induced by the new discrete variables heavily penalizes the GAMS modules, DICOPTĂŸĂŸand SBB. On the other hand, the Genetic Algorithm proves its superiority, providing quality solutions within acceptable computational times, whatever the considered example
A Programming Language for Web Service Development
There is now widespread acceptance of Web services and service-oriented architectures. But despite the agreement on key Web services standards there remain many challenges. Programming environments based on WSDL support go some way to facilitating Web service development. However Web services fundamentally rely on XML and Schema, not on contemporary programming language type systems such as those of Java or .NET. Moreover, Web services are based on a messaging paradigm and hence bring forward the traditional problems of messaging systems including concurrency control and message correlation. It is easy to write simple synchronous Web services using traditional programming languages; however more realistic scenarios are surprisingly difficult to implement. To alleviate these issues we propose a programming language which directly supports Web service development. The language leverages XQuery for native XML processing, supports implicit message correlation and has high level join calculus-style concurrency control. We illustrate the features of the language through a motivating example
An Introduction to Programming for Bioscientists: A Python-based Primer
Computing has revolutionized the biological sciences over the past several
decades, such that virtually all contemporary research in the biosciences
utilizes computer programs. The computational advances have come on many
fronts, spurred by fundamental developments in hardware, software, and
algorithms. These advances have influenced, and even engendered, a phenomenal
array of bioscience fields, including molecular evolution and bioinformatics;
genome-, proteome-, transcriptome- and metabolome-wide experimental studies;
structural genomics; and atomistic simulations of cellular-scale molecular
assemblies as large as ribosomes and intact viruses. In short, much of
post-genomic biology is increasingly becoming a form of computational biology.
The ability to design and write computer programs is among the most
indispensable skills that a modern researcher can cultivate. Python has become
a popular programming language in the biosciences, largely because (i) its
straightforward semantics and clean syntax make it a readily accessible first
language; (ii) it is expressive and well-suited to object-oriented programming,
as well as other modern paradigms; and (iii) the many available libraries and
third-party toolkits extend the functionality of the core language into
virtually every biological domain (sequence and structure analyses,
phylogenomics, workflow management systems, etc.). This primer offers a basic
introduction to coding, via Python, and it includes concrete examples and
exercises to illustrate the language's usage and capabilities; the main text
culminates with a final project in structural bioinformatics. A suite of
Supplemental Chapters is also provided. Starting with basic concepts, such as
that of a 'variable', the Chapters methodically advance the reader to the point
of writing a graphical user interface to compute the Hamming distance between
two DNA sequences.Comment: 65 pages total, including 45 pages text, 3 figures, 4 tables,
numerous exercises, and 19 pages of Supporting Information; currently in
press at PLOS Computational Biolog
Recommended from our members
Work-in-Progress: Research Plan for Introducing Problem Solving Skills through Activities to an Introductory Computer Science Course
This work-in-progress research plan paper describes the
process of developing and planning an introductory computer
science course utilizing fundamental problem-solving
skills in combination with hands-on visual activities to
explain various Computer Science (CS) concepts. Problem
solving skills, as observed by the authors of the paper, are
challenging for students across multiple STEM disciplines,
but those who develop these skills perform better within
their STEM courses. The authors hypothesize that introduction
of these skills within a first-year computer science
course will benefit a studentâs successful completion of a
STEM degree and their future STEM career [1]. The goal
of this research is to integrate fundamental problem-solving
skills into the existing course material and in-class activities.
The research project will use two-sections of the same
course taught during the same semester with approximately
200 students in each section. Nine hands-on activities,
each covering a fundamental programming concept, were
created to explain these concepts to students with a visual,
real-world component. Both sections will cover the same
computer science material, but some activities will be different
between the two sections to allow for comparison of
performance. There are nine planned activities: three will
be performed with both sections; three will be performed
only in section 1; and the remaining three will be performed
only in section 2. Student performance on exams
and programming assignments for these topics will be same
and compared across both courses. This paper details the
similarities and differences between the two sections of the
course in terms of setup, activities planned, targeted problem-
solving skills, and learning objectives. Additionally,
the paper explains the evaluation plan and assessment tools/
measures to be used (including pre- and post-surveys and
assessment of student performance).Cockrell School of Engineerin
- âŠ