518 research outputs found
High performance graph analysis on parallel architectures
PhD ThesisOver the last decade pharmacology has been developing computational
methods to enhance drug development and testing. A computational
method called network pharmacology uses graph analysis
tools to determine protein target sets that can lead on better targeted
drugs for diseases as Cancer. One promising area of network-based
pharmacology is the detection of protein groups that can produce
better e ects if they are targeted together by drugs. However, the
e cient prediction of such protein combinations is still a bottleneck
in the area of computational biology.
The computational burden of the algorithms used by such protein
prediction strategies to characterise the importance of such proteins
consists an additional challenge for the eld of network pharmacology.
Such computationally expensive graph algorithms as the all pairs
shortest path (APSP) computation can a ect the overall drug discovery
process as needed network analysis results cannot be given on
time. An ideal solution for these highly intensive computations could
be the use of super-computing. However, graph algorithms have datadriven
computation dictated by the structure of the graph and this
can lead to low compute capacity utilisation with execution times
dominated by memory latency.
Therefore, this thesis seeks optimised solutions for the real-world
graph problems of critical node detection and e ectiveness characterisation
emerged from the collaboration with a pioneer company in the
eld of network pharmacology as part of a Knowledge Transfer Partnership
(KTP) / Secondment (KTS). In particular, we examine how
genetic algorithms could bene t the prediction of protein complexes
where their removal could produce a more e ective 'druggable' impact.
Furthermore, we investigate how the problem of all pairs shortest
path (APSP) computation can be bene ted by the use of emerging
parallel hardware architectures as GPU- and FPGA- desktop-based
accelerators.
In particular, we address the problem of critical node detection with
the development of a heuristic search method. It is based on a genetic
algorithm that computes optimised node combinations where their removal
causes greater impact than common impact analysis strategies.
Furthermore, we design a general pattern for parallel network analysis
on multi-core architectures that considers graph's embedded properties.
It is a divide and conquer approach that decomposes a graph
into smaller subgraphs based on its strongly connected components
and computes the all pairs shortest paths concurrently on GPU. Furthermore,
we use linear algebra to design an APSP approach based
on the BFS algorithm. We use algebraic expressions to transform the
problem of path computation to multiple independent matrix-vector
multiplications that are executed concurrently on FPGA. Finally, we
analyse how the optimised solutions of perturbation analysis and parallel
graph processing provided in this thesis will impact the drug
discovery process.This research was part of a Knowledge Transfer Partnership (KTP)
and Knowledge Transfer Secondment (KTS) between e-therapeutics
PLC and Newcastle University. It was supported as a collaborative
project by e-therapeutics PLC and Technology Strategy boar
Proceedings of the First International Workshop on Sustainable Ultrascale Computing Systems (NESUS 2014): Porto, Portugal
Proceedings of: First International Workshop on Sustainable Ultrascale Computing Systems (NESUS 2014). Porto (Portugal), August 27-28, 2014
Clarifying perceptions of cognitive functioning in normal aging and after mild traumatic brain injury : a thesis presented in partial fulfilment of the requirements for the degree of Doctor of Clinical Psychology at Massey University, Albany, New Zealand
The cognitive symptoms reported more than 3 months after a mild traumatic brain injury (mTBI) are often found to have no association with objective cognitive functioning as evaluated by formal assessment measures. They are believed to relate more to physical symptoms such as pain or fatigue, psychological factors such as affective distress, and misattributions regarding the causes of ongoing subjective difficulties. This is similar to normal aging where for similar reasons, subjective complaints of worsening of cognitive function are also often not supported by objective assessment.
The present research aimed to explore factors which have been suggested in the literature as potentially contributing to the development of subjective cognitive complaints (SCCs) in both populations. These factors included level of awareness of age-related change in cognition, affective distress, processing speed (PS), cognitive reserve (CR), and use of compensatory strategies.
The present research consisted of two parts. In Part A, secondary analyses of two databases were conducted to inform development of a survey and model in Part B. The results supported inclusion of CR, PS, and compensatory strategies in the survey, and indicated the need for inclusion of a measure of psychological stress.
Part B consisted of two studies which examined the hypothesized model of factors that influence reporting of SCCs. Data from a total of 659 individuals recruited from the New Zealand population was split into two groups - normal aging (n=436) and mTBI (n=223). Structural equation modelling (SEM) was employed to assess the relationships between the identified factors and SCCs in each of these groups. The results provided support for the hypothesized model in that this model explained 47.6% of variance in reporting of SCCs in normal aging, and 62.5% of variance in reporting of SCCs in mTBI. Psychoeducation-based interventions, compensatory strategy training, and in some instances individual psychological assessment and therapy are recommended as potentially helpful in reducing the reporting of SCCs.
Towards Big Biology: high-performance verification of large concurrent systems
Bal, H.E. [Promotor]Fokkink, W.J. [Promotor]Kielmann, T. [Copromotor
Empirical Hardness of Finding Optimal Bayesian Network Structures: Algorithm Selection and Runtime Prediction
Various algorithms have been proposed for finding a Bayesian network structure that is guaranteed to maximize a given scoring function. Implementations of state-of-the-art algorithms, solvers, for this Bayesian network structure learning problem rely on adaptive search strategies, such as branch-and-bound and integer linear programming techniques. Thus, the time requirements of the solvers are not well characterized by simple functions of the instance size. Furthermore, no single solver dominates the others in speed. Given a problem instance, it is thus a priori unclear which solver will perform best and how fast it will solve the instance. We show that for a given solver the hardness of a problem instance can be efficiently predicted based on a collection of non-trivial features which go beyond the basic parameters of instance size. Specifically, we train and test statistical models on empirical data, based on the largest evaluation of state-of-the-art exact solvers to date. We demonstrate that we can predict the runtimes to a reasonable degree of accuracy. These predictions enable effective selection of solvers that perform well in terms of runtimes on a particular instance. Thus, this work contributes a highly efficient portfolio solver that makes use of several individual solvers.Peer reviewe
Scale Up Bayesian Network Learning
Bayesian networks are widely used graphical models which represent uncertain relations between the random variables in a domain compactly and intuitively. The first step of applying Bayesian networks to real-word problems is typically building the network structure. Optimal structure learning via score-and-search has become an active research topic in recent years. In this context, a scoring function is used to measure the goodness of fit of a structure to given data, and the goal is to find the structure which optimizes the scoring function. The problem has been viewed as a shortest path problem, and has been shown to be NP-hard. The complexity of the structure learning limits the usage of Bayesian networks. Thus, we propose to leverage and model correlations among variables to improve the efficiency of finding optimal structures of Bayesian networks.
In particular, the shortest path problem highlights the importance of two research issues: the quality of heuristic functions for guiding the search, and the complexity of search space. This thesis introduces several techniques for addressing the issues. We present effective approaches to reducing the search space by extracting constraints directly from data. We also propose various methods to improve heuristic functions, so as to search over the most promising part of the solution space. Empirical results show that these methods significantly improve the efficiency and scalability of heuristics search-based structure learning
XARK: an extensible framework for automatic recognition of computational kernels
This is a post-peer-review, pre-copyedit version of an article published in ACM Transactions on Programming Languages and Systems. The final authenticated version is available online at: http://dx.doi.org/10.1145/1391956.1391959[Abstract] The recognition of program constructs that are frequently used by software developers is a powerful mechanism for optimizing and parallelizing compilers to improve the performance of the object code. The development of techniques for automatic recognition of computational kernels such as inductions, reductions and array recurrences has been an intensive research area in the scope of compiler technology during the 90's. This article presents a new compiler framework that, unlike previous techniques that focus on specific and isolated kernels, recognizes a comprehensive collection of computational kernels that appear frequently in full-scale real applications. The XARK compiler operates on top of the Gated Single Assignment (GSA) form of a high-level intermediate representation (IR) of the source code. Recognition is carried out through a demand-driven analysis of this high-level IR at two different levels. First, the dependences between the statements that compose the strongly connected components (SCCs) of the data-dependence graph of the GSA form are analyzed. As a result of this intra-SCC analysis, the computational kernels corresponding to the execution of the statements of the SCCs are recognized. Second, the dependences between statements of different SCCs are examined in order to recognize more complex kernels that result from combining simpler kernels in the same code. Overall, the XARK compiler builds a hierarchical representation of the source code as kernels and dependence relationships between those kernels. This article describes in detail the collection of computational kernels recognized by the XARK compiler. Besides, the internals of the recognition algorithms are presented. The design of the algorithms enables to extend the recognition capabilities of XARK to cope with new kernels, and provides an advanced symbolic analysis framework to run other compiler techniques on demand. Finally, extensive experiments showing the effectiveness of XARK for a collection of benchmarks from different application domains are presented. In particular, the SparsKit-II library for the manipulation of sparse matrices, the Perfect benchmarks, the SPEC CPU2000 collection and the PLTMG package for solving elliptic partial differential equations are analyzed in detail.Ministeiro de Educación y Ciencia; TIN2004-07797-C02Ministeiro de Educación y Ciencia; TIN2007-67537-C03Xunta de Galicia; PGIDIT05PXIC10504PNXunta de Galicia; PGIDIT06PXIB105228P
First IJCAI International Workshop on Graph Structures for Knowledge Representation and Reasoning (GKR@IJCAI'09)
International audienceThe development of effective techniques for knowledge representation and reasoning (KRR) is a crucial aspect of successful intelligent systems. Different representation paradigms, as well as their use in dedicated reasoning systems, have been extensively studied in the past. Nevertheless, new challenges, problems, and issues have emerged in the context of knowledge representation in Artificial Intelligence (AI), involving the logical manipulation of increasingly large information sets (see for example Semantic Web, BioInformatics and so on). Improvements in storage capacity and performance of computing infrastructure have also affected the nature of KRR systems, shifting their focus towards representational power and execution performance. Therefore, KRR research is faced with a challenge of developing knowledge representation structures optimized for large scale reasoning. This new generation of KRR systems includes graph-based knowledge representation formalisms such as Bayesian Networks (BNs), Semantic Networks (SNs), Conceptual Graphs (CGs), Formal Concept Analysis (FCA), CPnets, GAI-nets, all of which have been successfully used in a number of applications. The goal of this workshop is to bring together the researchers involved in the development and application of graph-based knowledge representation formalisms and reasoning techniques
slash: A Technique for Static Configuration-Logic Identification
Researchers have recently devised tools for debloating software and detecting
configuration errors. Several of these tools rely on the observation that
programs are composed of an initialization phase followed by a main-computation
phase. Users of these tools are required to manually annotate the boundary that
separates these phases, a task that can be time-consuming and error-prone
(typically, the user has to read and understand the source code or trace
executions with a debugger). Because errors can impair the tool's accuracy and
functionality, the manual-annotation requirement hinders the ability to apply
the tools on a large scale.
In this paper, we present a field study of 24 widely-used C/C++ programs,
identifying common boundary properties in 96\% of them. We then introduce
\textit{slash}, an automated tool that locates the boundary based on the
identified properties. \textit{slash} successfully identifies the boundary in
87.5\% of the studied programs within 8.5\ minutes, using up to 4.4\ GB memory.
In an independent test, carried out after \textit{slash} was developed,
\textit{slash} identified the boundary in 85.7\% of a dataset of 21 popular
C/C++ GitHub repositories. Finally, we demonstrate \textit{slash}'s potential
to streamline the boundary-identification process of software-debloating and
error-detection tools
- …