Computing and Information Systems - Theses

Permanent URI for this collection

Search Results

Now showing 1 - 10 of 246
  • Item
    Thumbnail Image
    Safe acceptance of zero-confirmation transactions in Bitcoin
    Yang, Renlord ( 2016)
    Acceptance of zero confirmation transactions in Bitcoin is inherently unsafe due to the lack of consistency in states between nodes in the network. As a consequence of this, Bitcoin users must endure a mean wait time of 10 minutes to accept confirmed transactions. Even so, due to the possibility of forks in the Blockchain, users who may want to avoid invalidation risks completely may have to wait up to 6 confirmations, which in turn results in a 60 minute mean wait time. This is untenable and remains a deterrent to the utility of Bitcoin as a payment method for merchants. Our work seeks to address this problem by introducing a novel insurance scheme to guarantee a deterministic outcome for transaction recipients. The proposed insurance scheme utilizes standard Bitcoin scripts and transactions to produce inter-dependent transactions which will be triggered or invalidated based on the occurance of potential doublespend attacks. A library to setup the insurance scheme and a test suite was implemented for anyone who may be interested in using this scheme to setup a fully anonymous and trustless insurance scheme. Based on our test in Testnet, our insurance scheme was successful at defending against 10 out of 10 doublespend attacks.
  • Item
    Thumbnail Image
    Automatic caloric expenditure estimation with smartphone's built-in sensors
    Cabello Wilson, Nestor Stiven ( 2016)
    Fitness-tracking systems are technologies commonly used to enhance peoples' lifestyles. Feedback, usability, and ease of acquisition are fundamental to achieving the good physical condition goal. Users need constant motivation as a way to keep their interest in the fitness system and consequently, continue on a healthy lifestyle track. However, although feedback is increasingly being incorporated in many fitness-tracking systems, usability and ease of acquisition are remaining shortcomings that need to be enhanced. Features such as automatic activity identification, low-energy consumption, simplicity and goals-achieved notifications provide a good user experience. Nevertheless, most of these functions require the acquisition of a relatively expensive fitness-tracking device. Smartphones provide a partial solution by allowing users an easy access to multiple fitness applications, which reduce the need for purchasing another gadget. Nonetheless, improvements in the user experience are still necessary. In the other hand, wearables devices satisfy the usability, however, the cost of their acquisition represents an impediment to some users. The system proposed in this research aims to handle these issues and offers a solution by combining the benefits from mobile applications such as feedback and ease of acquisition, with the usability that wearable devices provide, into a smartphone Android application. Data collected from a single user while performing a series of common daily activities namely walking, jogging, cycling, climbing stairs, and walking downstairs, was used to classify and provide an automatic identification of these activities with an overall accuracy of 91%, and identifying the stairs activities with an accuracy of 81%. Finally, the caloric expenditure, which we considered the most important metric for motivating a user to perform a physical activity, was estimated by following the oxygen consumption equations from the American College of Sports Medicine (ACSM).
  • Item
    Thumbnail Image
    Improvised coordination in agent organisations
    Keogh, Kathleen Nora ( 2018)
    This thesis investigates coordination between intelligent software agents operating within agent organisations. Motivated by the prospect of agents working with humans in real world complex domains, the thesis focuses on flexible behaviour and improvisation in agent organisations. Methods used to design organisations of software agents are explored with particular consideration given to problem situations that cannot be defined with a detailed pre-scripted solution for coordinated action. A conceptual model that describes the components that are needed in an agent based model in a multi-agent system is referred to in this thesis as a meta-model. A number of agent organisation-based meta-models and frameworks for coordination of agents have been proposed such as OperA, OMACS and SharedPlans. There is however, no specific meta-model or approach that addresses agent improvisation and unscripted coordination. The reality of complex coordination in people's behaviour is analysed and used to develop requirements for agents' behaviour. A meta-model is proposed to include components to address these requirements. A process outlining how to design and implement such organisations is presented. The meta-model draws on features in existing models in the literature and describes components to guide agents to behave with flexibility at run time. The thesis argues that coordinated agents benefit from an explicit representation of an organisational model and policies to guide agents' run time behaviour. Policies are proposed to maintain consistent knowledge and mutual plans between team members. Coordination is explicit and some flexibility is given to agents to improvise beyond the solution anticipated at design-time. Agents can mutually adjust individual plans to fit in with others so the multi-agent organisation is able to dynamically adapt to a changing environment. The meta-model and design approach is successfully demonstrated and validated using an implementation of a simulation system. In this demonstration system, agents in multiple organisations collaborate and coordinate to resolve a problem within an artificial simulation world.
  • Item
    Thumbnail Image
    Gossip-based Asynchronous Aggregation Protocols for Unstructured P2P Systems
    Rao, Imran Ahmad ( 2017)
    Decentralized nature of Peer-to-Peer (P2P) networks has proven to be efficient and effective in providing scalable solutions for the implementation of large-scale distributed systems. However, this decentralized nature of P2P networks also poses significant challenges in resource discovery and management. To efficiently deploy and manage P2P networks, system administrators may need to identify the aggregate capabilities of all the nodes in the system from a global perspective. For example, for efficient scheduling of jobs, they may need to locate the least loaded nodes in the system. To execute such global functions which result in the aggregate capabilities of nodes, P2P systems require decentralized and distributed protocols without the coordination of a central mediator. For these reasons, gossip-based protocols have emerged as a popular choice to compute aggregates in large-scale P2P systems. In a gossip-based push-pull aggregation protocol, each node at a given frequency exchanges its local information with one of its neighbor nodes. As a result of this exchange, both nodes update their local estimate of the global aggregate. These locally computed estimates at individual nodes, asymptotically converge to a constant, provided that the network topology remains connected and the system mass is conserved. In existing aggregation protocols, the accuracy and convergence of the estimated aggregate at local nodes heavily depends upon synchronization of aggregation rounds. Synchronization is not trivial to achieve and maintain in large-scale distributed P2P systems due to a number of factors such as different process execution speeds, message transmission delays, and clock drifts. Moreover, nodes joining and departing the system at random make it even harder to keep aggregation rounds synchronized. In this thesis, we investigate the synchronization behavior of popular existing gossip-based aggregation protocols. Through detailed simulations, we evaluate the impacts of asynchrony on the accuracy and the diffusion speed of these protocols. We propose a number of push-pull aggregation protocols to improve their accuracy in the presence of asynchronous time and compare these protocols with some of the existing protocols and list their respective pros and cons. Based upon these results, we identify the challenges in efficiently computing the aggregates in the presence of communication delays and asynchrony. Especially, we identify the scenarios in a synchronous push-pull protocol which cause the loss of system mass and measure this loss. We then propose a push-pull gossip-style novel aggregation protocol, called LAP, which addresses the above-mentioned issues and compute the system aggregate efficiently and accurately. This protocol is optimistic in nature and executes the recovery procedures after an anomaly is detected. Our protocol strives to preserve the system mass in the presence of system asynchrony and dynamics. More precisely, it does not require coordination and therefore the start and the end of an aggregation round can be asynchronous and arbitrarily long. Through detailed simulations, we evaluate the impacts of asynchrony on the accuracy and the diffusion speed of the LAP protocol.
  • Item
    Thumbnail Image
    Privacy preserving protocols for large distributed systems
    Ramchen, Kim Sasha ( 2017)
    A fundamental problem in large distributed systems is how to enable parties to communicate securely while maintaining privacy. In this thesis we investigate the construction of privacy preserving protocols in three problem domains. These are secure group communications, secure outsourceable computation and secret sharing. Within these domains, flexible data sharing, low round complexity and the distribution of access control are guiding principles for our constructions. We present a novel construction of attribute based encryption from correlation-relaxed two-to-one recodings. This construction is based upon the use of noisy cryptographic multilinear maps and entails replacing a correlation-secure encoding function with an indistinguishability property that states that a ciphertext is hard to decrypt without access to a certain input encoding. We construct the first noninteractive protocols for several tasks related to private set intersection. We provide efficient protocols for three related problems, each motivated by a particular kind of genomic testing. Set intersection with labelling hides the intersecting set itself and returns only the labels of the common elements, thus allowing a genomics company to return diagnoses without exposing the IP of its database. Fuzzy matching with labelling extends this to allow matching at a particular Hamming distance, which solves the same problem but incorporates the possibility of genetic variation. Closest matching returns the item in the server's database closest to the client's query - this can be used for taxonomic classification. Our protocols are optimised for the matching of k-mers (sets of k-length strings) rather than individual nucleotides, which is particularly useful for representing the short reads produced by next generation sequencing technologies. We present a very simple universally verifiable MPC protocol. The first component is a threshold somewhat homomorphic cryptosystem that permits an arbitrary number of additions (in the source group), followed by a single multiplication, followed by an arbitrary number of additions in the target group. The second component is a black-box construction of universally verifiable distributed encryption switching between any public key encryption schemes supporting shared setup and key generation phases, as long as the schemes satisfy some natural additive-homomorphic properties. This allows us to switch back from the target group to the source group, and hence perform an arbitrary number of multiplications. The key generation algorithm of our prototypical cryptosystem, which is based upon concurrent verifiable secret sharing, permits robust re-construction of powers of a shared secret. We demonstrate the scalability of distribution switching as a viable approach to secure vote tallying by implementing a private verifiable form of Instant Runoff Voting on real Australian election data comprising 40,000 votes. We investigate the construction of algebraic manipulation detection codes which are secure against general algebraic attacks, i.e., error-detecting/correcting codes which are secure against algebraic tampering functions. We prove that such codes exist when the families of tampering functions are point additions and polynomial functions modulo a prime. We prove both positive and negative results concerning the existence of general algebraic manipulation detection codes compared to non-malleable codes.
  • Item
    Thumbnail Image
    Dauphin A Programming Language for Statistical Signal Processing - from principles to practice
    Kyprianou, Ross ( 2018)
    This dissertation describes the design and implementation of a new programming language called Dauphin for the signal processing domain. Dauphin's focus is on the primitive concepts and algorithmic structures of signal processing. In this language, random variables and probability distributions are as fundamental and easy to use as the numeric types of other languages. The basic algorithms of signal processing --- estimation, detection, classification and so on --- become the standard function calls. Too much time is expended by researchers in re-writing these basic algorithms for each application. Dauphin allows you to code these algorithms directly, so they can be coded once and put into libraries for future use. Ultimately, Dauphin aims to extend the power of the researcher by allowing them to focus on the real problems and simplify the process of implementing their ideas. The first half of this dissertation describes Dauphin and the design issues of existing languages used for signal processing that motivated its development. It includes a general investigation into programming language design and the identification of specific design criteria that impact signal processing programming. These criteria directed the features in Dauphin that support writing signal processing algorithms. Of equal importance, the criteria also provide a means to compare, with some objectivity, the suitability of different languages for signal processing. Following the discussion on language design, Dauphin's features are described in detail, then details related to Dauphin's implementation are presented, including a description of Dauphin's semantics and type system. The second half of the dissertation presents practical applications of the Dauphin language, focussing on three broad areas associated with signal processing: classification, estimation and Monte Carlo methods. These non-trivial applications, combined with examples throughout the dissertation, demonstrate that Dauphin is simple and natural to use, easy to learn and has sufficient expressiveness for general programming in the signal processing domain.
  • Item
    Thumbnail Image
    Understanding information security strategy in organisations
    Horne, Craig Andrew ( 2018)
    The research topic under investigation in this thesis is information security strategy in organisations and I propose a substantive theory for understanding this phenomenon under varying environmental and internal conditions. My original contribution to knowledge includes a definition for information security strategy, criteria for organisational environment and information assessment, a conceptual model of information security strategy, a substantive theory on information security strategy, and a descriptive set of benefits that can be adopted after strategy selection and approval. Organisations are progressively undertaking digital transformation of their products and services to reduce costs, improve customer relationships, and consolidate operations. Information is the “lifeblood” of any organisation and is increasingly being used to support this digital transformation across the entire organisation. Yet, the boundaries of information, its value, and importance in supporting organisational goals are frequently overlooked, creating security exposures and vulnerabilities. One reason for this is a lack of attention paid to cataloguing and controlling valuable information being used as a business resource. Others are that usage of emerging disruptive technology such as cloud-based applications can create porous network borders, that security controls used to protect information can be expensive and complex, and that organisational leaders may resist the implementation of security controls due to a perception that they impede productivity. This then leads to increased risk to information, affecting organisational leaders in the governing body, who currently have no consistent guidance available to help them in selecting a strategy or setting a strategic direction for information security. To address this problem, I examine a range of concepts when adopting an approach to securing information, by interviewing security leaders in larger organisations. In a qualitative study, I interviewed twenty-five participants and took a phenomenological approach to understanding their lived experiences with developing and using an information security strategy. I used grounded theory methodology and techniques to analyse the interview transcripts and their organisation’s information security strategy documents when permitted, to understand significant information security concepts and their relationships in an organisational context. The results show that organisational leaders choose from four main strategies when making decisions to secure their organisation’s information, which are Fortification, Devaluation, Outsourcing and Minimisation. Their selection depends on consideration of organisational factors including constraints on outsourcing decisions and the value of information held within the organisation. This facilitated the development of a conceptual model of information security strategy and a substantive theory on information security strategy. The implications of this are that organisations can continue business operations towards the achievement of strategic goals using information as a resource, and that the selection of an information security strategy can lead to a more complete understanding of the comprehensive strategic plans required to implement operational security controls throughout an organisation, making them more applicable and cost effective.
  • Item
    Thumbnail Image
    The use of clinical decision support systems for the development of medical students’ diagnostic reasoning skills
    Khumrin, Piyapong ( 2018)
    Computer-aided learning systems (e-learning systems) can help medical students gain more experience with diagnostic reasoning and decision-making. Within this context, providing feedback that matches student needs (i.e. personalised feedback) is both critical and challenging. Prior research showed that using Clinical Decision Support System (CDSS) to assist doctors improves the effectiveness and efficiency of diagnostic and treatment processes. However, the application of CDSS to the developmental process of clinical reasoning in a clinical teaching environment is still limited. In this research, we developed a new diagnostic decision support system embedded in a learning tool, called DrKnow. Students interact with twenty virtual patients to investigate though the learning steps similar to bedside teaching to arrive at a proper final diagnosis. DrKnow with CDSS-based design monitors students’ activities and provide personalised feedback to support students’ diagnostic decisions. We developed expert knowledge within DrKnow based on the machine learning models trained on 208 realworld clinical cases presenting with abdominal pain, to predict 5 diagnoses (appendicitis, gastroenteritis, urinary tract infection, ectopic pregnancy, and pelvic inflammatory disease). We assessed which of these models are likely to be most effective by predictive accuracy and clinical appropriateness when the model prediction was transformed to feedback. These models were leveraged to generate different kinds of feedback provided during along the process of decision making (interim feedback) and at the end of scenario (final feedback) based on the specific information requested by students from the virtual patients and their active diagnostic hypotheses. Students used this tool to explore one or more common clinical presentations, assessing patient histories, selecting and evaluating appropriate investigations and integrating these findings to select the most appropriate diagnosis. Based on the clinical information they request and prioritise, DrKnow presents key decision points and suggest three provisional diagnoses as they work through the virtual cases. Once students make a final diagnosis, DrKnow presents students with information about their overall diagnostic performance as well as recommendations for diagnosing similar cases. The analysis of the decisions of students as compared to those of DrKnow shows that DrKnow provided appropriate feedback on supporting students to select appropriate differential diagnoses and effective assessment of students diagnostic performance. Although DrKnow still has some limitations, we argue that the implementation of CDSS-based learning support for the development of diagnostic reasoning skills represented by DrKnow provides an effective learning process enabling positive student learning outcomes, while simultaneously overcoming the resource challenges of expert clinician supported bedside teaching.
  • Item
    Thumbnail Image
    Safety critical multi-agent systems
    Liu, Ching Louis ( 2018)
    Artificial intelligence (AI) has come of age, especially with the rapid growth in the variety and quantity of data, together with automation in industrial and private applications, such as 3D printing and automated manufacturing, all of which require computing for control and interaction with humans at some point. Computer-controlled machines that operate in industrial or domestic settings must also operate to ensure the safety of any humans in the vicinity or who interact with the machines. Further, if we are to realise the dream of autonomous agents interacting freely with humans, then the issue of safety becomes even more critical. In this regard, the aim of this thesis is to propose methods that complement existing Agent-Oriented Software Engineering methods and provide a means of safety engineering at the agent design stage. Our proposed methods can also build accident knowledge in such a way that a safety analysis on one type of multi-agent system can be transferred to another provided that the other multi-agent system shares enough similarities with the first. The current situation is that it is difficult to apply agent-oriented methods in situations where safety is critical because of the lack of available agent-specific safety analysis methods. Traditional safety engineering methods are not tailored to the analysis of the full capability of agents and although a number of attempts has been made to automate traditional safety engineering methods, a gap between the dynamic behaviour of multi-agent systems and safety analysis remains. Further, there is no single accepted definition of a multi-agent system, but there is a list of concepts common to most definitions and widely accepted among different methodologies: the concept of an open system, dynamic behaviour and adaption to name a few. Current safety analysis methods do not fully handle concepts with much success. Of the existing methods, which we review in chapter 3, all require domain knowledge as well as expertise in the application of the methods themselves and are limited by the size of the component that can be analysed. This thesis contributes to safety analysis in agent-oriented software engineering by providing safety analysis methods that generate tangible safety goals based on previous accident data and system behaviour. Another contribution of this thesis is that our method enables agents to dynamically calculate accident likelihood and then, through a specific systems level ontology, to translate the safety analysis from one multi-agent system to another with similar agent characteristics. An example of where this latter case can be applied is to provide estimations on the design of a new multi-agent system that does not yet have any accident data. We first look at ways of modelling system behaviour and, importantly, the interactions between different agents. Then, we present a way to convert the interaction model to a Bayesian network that combines data from multiple previous accidents and a method for identifying which system component to change to improve the safety of the overall multi-agent system. When we apply this method to real-life situations, we find that the current limitation is the lack of data at the right level of detail. However, exploring the interactions in the system and the relationships between agents, we can overcome the limitations in data to some extent. Our approach can be used to estimate the accident rate by combining accident data from different existing physical systems. Doing this provides a quick way to estimate the accident rate and provide design feedback to the multi-agent system designer. Our thesis will advance the application of multi-agent systems by improving their safety aspects. Moreover, the ability provided by our Bayesian networks to dynamically calculate the likelihood of accidents provides agents with the means to improve safety as they encounter new incidents. Our method of translating the analysis from one type of multi-agent system to another on the basis of ontology provides an interesting approach for sharing accident knowledge between related systems when they are in the field.
  • Item
    Thumbnail Image
    Compositional morphology through deep learning
    Vylomova, Ekaterina ( 2018)
    Most human languages have sophisticated morphological systems. In order to build successful models of language processing, we need to focus on morphology, the internal structure of words. In this thesis, we study two morphological processes: inflection (word change rules, e.g. run -- runs) and derivation (word formation rules, e.g. run -- runner). We first evaluate the ability of contemporary models that are trained using the distributional hypothesis, which states that a word's meaning can be expressed by the context in which it appears, to capture these types of morphology. Our study reveals that inflections are predicted at high accuracy whereas derivations are more challenging due to irregularity of meaning change. We then demonstrate that supplying the model with character-level information improves predictions and makes usage of language resources more efficient, especially in morphologically rich languages. We then address the question of to what extent and which information about word properties (such as gender, case, number) can be predicted entirely from a word's sentential content. To this end, we introduce a novel task of contextual inflection prediction. Our experiments on prediction of morphological features and a corresponding word form from sentential context show that the task is challenging, and as morphological complexity increases, performance significantly drops. We found that some morphological categories (e.g., verbal tense) are inherent and typically cannot be predicted from context while others (e.g., adjective number and gender) are contextual and inferred from agreement. Compared to morphological inflection tasks, where morphological features are explicitly provided, and the system has to predict only the form, accuracy on this task is much lower. Finally, we turn to word formation, derivation. Experiments with derivations show that they are less regular and systematic. We study how much a sentential context is indicative of a meaning change type. Our results suggest that even though inflections are more productive and regular than derivations, the latter also present cases of high regularity of meaning and form change, but often require extra information such as etymology, word frequency, and more fine-grained annotation in order to be predicted at high accuracy.