We grow increasingly dependent on the appropriate operation of computer-based systems. One aspect... more We grow increasingly dependent on the appropriate operation of computer-based systems. One aspect of such systems is security. As systems become more complex current means of analysis will probably prove ineffective. In the safety domain a variety of analysis techniques has emerged over many years. These have proved surprisingly effective. Since the safety and security domains share many similarities, various authors have suggested that safety techniques might usefully find application in security. This report takes one such technique, HAZOPs, and applies it to one widely used informal design component – UML’s use cases.
Abstract. We consider models of emergence, adding downward causation to conventional models where... more Abstract. We consider models of emergence, adding downward causation to conventional models where causation permeates from low-level elements to high-level behaviour. We describe an architecture and prototype simulation medium for tagging and modelling emergent features in CA-like systems. This is part of ongoing work on engineering emergence.
Once you have proved your refinement correct, that is not the end. Real products, and their accom... more Once you have proved your refinement correct, that is not the end. Real products, and their accompanying specifications, develop over time, with new improved versions having added functionality. There are new maintenance issues that arise when altering and upgrading pre-existing large specifications and their respective proofs. We show how concepts from refactoring can be used to structure this process, and provide a means for well-defined, disciplined modifications. Additionally, we discuss how the analogy between proof and refactoring, as meaning preserving transforms, can be used to suggest the development of a refactoring toolset, and thence a refinement toolset.
Change-based persistence has the potential to support faster and more accurate model comparison, ... more Change-based persistence has the potential to support faster and more accurate model comparison, merging, as well as a range of analytics activities. However, reconstructing the state of a model by replaying its editing history every time the model needs to be queried or modified can get increasingly expensive as the model grows in size. In this work, we integrate change-based and state-based persistence mechanisms in a hybrid model persistence approach that delivers the best of both worlds. In this paper, we present the design of our hybrid model persistence approach and report on its impact on time and memory footprint for model loading, saving, and storage space usage.
From Astrophysics to Unconventional Computation, 2019
Susan Stepney has created novel research in areas as diverse as formal software modelling and evo... more Susan Stepney has created novel research in areas as diverse as formal software modelling and evolutionary computing. One theme that spans almost her whole career is the use of patterns to capture and express solutions to software engineering problems. This paper considers two extremes, both in time and topic: patterns for formal modelling languages, and patterns related to the principled modelling and simulation of complex systems.
Local search based meta-heuristics such as variable neighbourhood search have achieved remarkable... more Local search based meta-heuristics such as variable neighbourhood search have achieved remarkable success in solving complex combinatorial problems. Local search techniques are becoming increasingly popular and are used in a wide variety of meta-heuristics, such as genetic algorithms. Typically, local search iteratively improves a solution by making a series of small moves. Traditionally these methods do not employ any learning mechanism. We treat the selection of a local search neighbourhood as a dynamic multi- armed bandit (D-MAB) problem where learning techniques for solving the D-MAB can be used to guide the local search process. We present a D-MAB neighbourhood search (D-MABNS) which can be embedded within any meta- heuristic or hyperheuristic framework. Given a set of neighbourhoods, the aim of D-MABNS is to adapt the search sequence, testing promising solutions rst. We demonstrate the eectiveness of D-MABNS on two vehicle routing and scheduling problems, the real-world geogra...
Ecological, environmental and geophysical time series consistently exhibit the characteristics of... more Ecological, environmental and geophysical time series consistently exhibit the characteristics of coloured (1/f β) noise. Here we briefly survey the literature on coloured noise, population persistence and related evolutionary dynamics, before introducing coloured noise as an appropriate model for environmental variation in artificial evolutionary systems. To illustrate and explore the effects of different noise colours, a simple evolutionary model that examines the trade-off between specialism and generalism in fluctuating environments is applied. The results of the model clearly demonstrate a need for greater generalism as environmental variability becomes 'whiter', whilst specialisation is favoured as environmental variability becomes 'redder'. Pink noise, sitting midway between white and red noise, is shown to be the point at which the pressures for generalism and specialism balance, providing some insight in to why 'pinker' noise is increasingly being seen as an appropriate model of typical environmental variability. We go on to discuss how the results presented here feed in to a wider discussion on evolutionary responses to fluctuating environments. Ultimately we argue that Artificial Life as a field should embrace the use of coloured noise to produce models of environmental variability.
In May 2019, a workshop on principled development of future agent-based simulations was held at K... more In May 2019, a workshop on principled development of future agent-based simulations was held at Keele University. Participants spanned companies and academia, and a range of domains of interest, as well as participant career stages. This report summarizes the discussions and main outcomes from this workshop.
Dynamic systems, where the behaviour is the dominant characteristic, pose engineering challenges ... more Dynamic systems, where the behaviour is the dominant characteristic, pose engineering challenges that are often neglected in model-based software engineering. However, supporting simulation development from design models is important in demonstrating that a simulator and simulation experiments are fit for their intended purpose. In engineering agent-based simulations, observable system behaviour is built up from the behaviour of low-level components; such simulations are used as research tools in (for instance) biological systems research. We have found that domain experts can validate diagrammatic models of behaviour and accompanying text, but we need model-based software development, and ideally automatable model transformation, to maintain fitness for purpose into code and experimentation. We present an exploration of behavioural model transformation, devising and applying manual transformation guidelines to an existing, published Java Mason simulator, created using the CoSMoS approach and UML-style state diagrams. We succeed in recreating part of the class structure of the code, but also expose many issues to be overcome, in terms of what needs to be modelled to enable transformation, and how and when design decisions are taken and documented. We also identify the need to generate the creation of low-level simulation, visualisation, and data capture mechanisms, and a means to design and encode simulation experimentation.
Comparison of large models can be time-consuming since every element has to be visited, matched, ... more Comparison of large models can be time-consuming since every element has to be visited, matched, and compared with its respective element in other models. This can result in bottlenecks in collaborative modelling environments, where identifying differences between two versions of a model is desirable. Reducing the comparison process to only the elements that have been modified since a previous known state (e.g., previous version) could significantly reduce the time required for large model comparison. This paper presents how change-based persistence can be used to localise the comparison of models so that only elements affected by recent changes are compared and to substantially reduce comparison and differencing time (up to 90% in some experiments) compared to state-based model comparison.
Gully pots or storm drains are located at the side of roads to provide drainage for surface water... more Gully pots or storm drains are located at the side of roads to provide drainage for surface water. We consider gully pot maintenance as a risk-driven maintenance problem. We explore policies for preventative and corrective maintenance actions, and build optimised routes for maintenance vehicles. Our solutions take the risk impact of gully pot failure and its failure behaviour into account, in the presence of factors such as location, season and current status. The aim is to determine a maintenance policy that can automatically adjust its scheduling strategy in line with changes in the local environment, to minimize the surface flooding risk due to clogged gully pots. We introduce a rolling planning strategy, solved by a hyperheuristic method. Results show the behaviour and strength of the automated adjustment in a range of real-world scenarios.
The relation between individuality and aggregation is an important topic in complex systems scien... more The relation between individuality and aggregation is an important topic in complex systems sciences, both aspects being facets of emergence. This topic has frequently been addressed by adopting a classical, individual versus population level perspective. Here, however, the frontiers that emerge in segregated communities are the focus; segregation is synonymous with the existence of frontiers that delineate and interface aggregates. A generic agent-based model is defined, with which we simulate communities located on grid and scale-free networked environments. Emerging frontiers are analyzed in terms of their relative occupancy, porosity, and permeability. Results emphasize that the frontier is highly sensitive to the topology of the environment, not only to the agent tolerance. These relations are clarified while addressing the topics of frontier robustness and the trade-off between its capacity to separate and allow exchange.
Security requirements for pervasive computing environments are different from those in fixed netw... more Security requirements for pervasive computing environments are different from those in fixed networks. This is due to the intensity and complexity of the communication between the user and the infrastructure, the mobility of the user, and dynamic sharing of limited resources. As pervasive computing makes information access and processing easily available for everyone from anywhere at anytime, the close relationship between distributed systems and mobile computing with a pervasive infrastructure leads us to take a closer look at different types of vulnerabilities and attacks in such environments. Pervasive computing includes numerous, often transparent, computing devices that are frequently mobile or embedded in the environment, and are connected to an increasingly ubiquitous network structure. For example, when an organization employs pervasive computing, the environment becomes more knowledgeable about the users' behavior and, hence, becomes more proactive with each individual user as time passes. Therefore, the user must be able to trust the environment and the environment must be confident of the user's identity. This implies security is an important concern in the success of pervasive computing environments. In this chapter we evaluate the suitability of existing security methods for pervasive environments.
Immunos 99 is a classification algorithm based upon the principles of Artificial Immune Systems (... more Immunos 99 is a classification algorithm based upon the principles of Artificial Immune Systems (AIS). AIS algorithms can provide alternatives to classical techniques such as decision trees for classification tasks. Immunos 99 provides one alternative however the algorithm and implementations have some room for performance improvement. This paper discusses improvements made to Immunos 99 and its reference implementation to improve runtime performance. The new algorithm/implementation results in an approximate 40% reduction in run time on test data. The paper closes with a proposal for an implementation of the Immunos 99 algorithm that is suitable for use on map/reduce clusters.
Wireless sensor networks (WSNs) consist of multiple, distributed nodes each with limited resource... more Wireless sensor networks (WSNs) consist of multiple, distributed nodes each with limited resources. With their strict resource constraints and application-specific characteristics, WSNs contain many challenging tradeoffs. This paper proposes a bioinspired load balancing approach, based on pheromone signalling mechanisms, to solve the tradeoff between service availability and energy consumption. We explore the performance consequences of the pheromone-based load balancing approach using (1) a systemlevel simulator, (2) deployment of real sensor testbeds to provide a competitive analysis of these evaluation methodologies. The effectiveness of the proposed algorithm is evaluated with different scenario parameters and the required performance evaluation techniques are investigated on case studies based on sound sensors.
Wireless Sensor Networks (WSNs) consist of multiple, distributed nodes each with limited resource... more Wireless Sensor Networks (WSNs) consist of multiple, distributed nodes each with limited resources. With their strict resource constraints and application-specific characteristics, WSNs contain many challenging trade-offs. This paper proposes a bio-inspired load balancing approach, based on pheromone signalling mechanisms, to solve the trade-off between service availability and energy consumption. We explore the performance consequences of the pheromone-based load balancing approach using: 1) a system-level simulator; 2) deployment of real sensor testbeds to provide a competitive analysis of these evaluation methodologies. The effectiveness of the proposed algorithm is evaluated with different scenario parameters and the required performance evaluation techniques are investigated on case studies based on sound sensors.
Research based on computer simulations, especially that conducted through agent-based experimenta... more Research based on computer simulations, especially that conducted through agent-based experimentation, is often criticised for not being a reliable source of informationthe simulation software can hide errors or flawed designs that inherently bias results. Consequently, the academic community shows both enthusiasm and lack of trust for such approaches. In order to gain confidence is using engineered systems, domains such as Safety Critical Systems employ structured argumentation techniques as means of explicitly relating claims to evidence-in other words, requirements to deliverables. We argue here that structured argumentation should be used in the development and validation process of simulation-driven research. Making use of the Goal Structuring Notation, we provide insights into how more trustworthy outcomes can be obtained through argumentation-driven validation.
Computer simulation can be used to inform in vivo and in vitro experimentation, enabling rapid, l... more Computer simulation can be used to inform in vivo and in vitro experimentation, enabling rapid, low-cost hypothesis generation and directing experimental design in order to test those hypotheses. In this way, in silico models become a scientific instrument for investigation, and so should be developed to high standards, be carefully calibrated and their findings presented in such that they may be reproduced. Here, we outline a theoretical framework that supports developing simulations as scientific instruments, and we select ...
There is increasing demand for approaches to develop more effective enterprise information system... more There is increasing demand for approaches to develop more effective enterprise information systems (EIS). A possible solution is to focus on eliciting and elaborating goals prior to capturing EIS requirements. Focusing on EIS goals could help the developer team and other stakeholders (particularly decision makers) achieve a shared and structured understanding of the goals of the EIS and the overall enterprise. We present an investigation of the use of the KAOS approach to goal modelling in the domain of EIS. As a result, we propose a tailoring of KAOS for this domain; the tailoring has been developed through empirical studies. Our tailoring, called KAOS-β, is described, and an empirical evaluation is presented, investigating its applicability for defining and structuring the goals of groups of EIS.
We grow increasingly dependent on the appropriate operation of computer-based systems. One aspect... more We grow increasingly dependent on the appropriate operation of computer-based systems. One aspect of such systems is security. As systems become more complex current means of analysis will probably prove ineffective. In the safety domain a variety of analysis techniques has emerged over many years. These have proved surprisingly effective. Since the safety and security domains share many similarities, various authors have suggested that safety techniques might usefully find application in security. This report takes one such technique, HAZOPs, and applies it to one widely used informal design component – UML’s use cases.
Abstract. We consider models of emergence, adding downward causation to conventional models where... more Abstract. We consider models of emergence, adding downward causation to conventional models where causation permeates from low-level elements to high-level behaviour. We describe an architecture and prototype simulation medium for tagging and modelling emergent features in CA-like systems. This is part of ongoing work on engineering emergence.
Once you have proved your refinement correct, that is not the end. Real products, and their accom... more Once you have proved your refinement correct, that is not the end. Real products, and their accompanying specifications, develop over time, with new improved versions having added functionality. There are new maintenance issues that arise when altering and upgrading pre-existing large specifications and their respective proofs. We show how concepts from refactoring can be used to structure this process, and provide a means for well-defined, disciplined modifications. Additionally, we discuss how the analogy between proof and refactoring, as meaning preserving transforms, can be used to suggest the development of a refactoring toolset, and thence a refinement toolset.
Change-based persistence has the potential to support faster and more accurate model comparison, ... more Change-based persistence has the potential to support faster and more accurate model comparison, merging, as well as a range of analytics activities. However, reconstructing the state of a model by replaying its editing history every time the model needs to be queried or modified can get increasingly expensive as the model grows in size. In this work, we integrate change-based and state-based persistence mechanisms in a hybrid model persistence approach that delivers the best of both worlds. In this paper, we present the design of our hybrid model persistence approach and report on its impact on time and memory footprint for model loading, saving, and storage space usage.
From Astrophysics to Unconventional Computation, 2019
Susan Stepney has created novel research in areas as diverse as formal software modelling and evo... more Susan Stepney has created novel research in areas as diverse as formal software modelling and evolutionary computing. One theme that spans almost her whole career is the use of patterns to capture and express solutions to software engineering problems. This paper considers two extremes, both in time and topic: patterns for formal modelling languages, and patterns related to the principled modelling and simulation of complex systems.
Local search based meta-heuristics such as variable neighbourhood search have achieved remarkable... more Local search based meta-heuristics such as variable neighbourhood search have achieved remarkable success in solving complex combinatorial problems. Local search techniques are becoming increasingly popular and are used in a wide variety of meta-heuristics, such as genetic algorithms. Typically, local search iteratively improves a solution by making a series of small moves. Traditionally these methods do not employ any learning mechanism. We treat the selection of a local search neighbourhood as a dynamic multi- armed bandit (D-MAB) problem where learning techniques for solving the D-MAB can be used to guide the local search process. We present a D-MAB neighbourhood search (D-MABNS) which can be embedded within any meta- heuristic or hyperheuristic framework. Given a set of neighbourhoods, the aim of D-MABNS is to adapt the search sequence, testing promising solutions rst. We demonstrate the eectiveness of D-MABNS on two vehicle routing and scheduling problems, the real-world geogra...
Ecological, environmental and geophysical time series consistently exhibit the characteristics of... more Ecological, environmental and geophysical time series consistently exhibit the characteristics of coloured (1/f β) noise. Here we briefly survey the literature on coloured noise, population persistence and related evolutionary dynamics, before introducing coloured noise as an appropriate model for environmental variation in artificial evolutionary systems. To illustrate and explore the effects of different noise colours, a simple evolutionary model that examines the trade-off between specialism and generalism in fluctuating environments is applied. The results of the model clearly demonstrate a need for greater generalism as environmental variability becomes 'whiter', whilst specialisation is favoured as environmental variability becomes 'redder'. Pink noise, sitting midway between white and red noise, is shown to be the point at which the pressures for generalism and specialism balance, providing some insight in to why 'pinker' noise is increasingly being seen as an appropriate model of typical environmental variability. We go on to discuss how the results presented here feed in to a wider discussion on evolutionary responses to fluctuating environments. Ultimately we argue that Artificial Life as a field should embrace the use of coloured noise to produce models of environmental variability.
In May 2019, a workshop on principled development of future agent-based simulations was held at K... more In May 2019, a workshop on principled development of future agent-based simulations was held at Keele University. Participants spanned companies and academia, and a range of domains of interest, as well as participant career stages. This report summarizes the discussions and main outcomes from this workshop.
Dynamic systems, where the behaviour is the dominant characteristic, pose engineering challenges ... more Dynamic systems, where the behaviour is the dominant characteristic, pose engineering challenges that are often neglected in model-based software engineering. However, supporting simulation development from design models is important in demonstrating that a simulator and simulation experiments are fit for their intended purpose. In engineering agent-based simulations, observable system behaviour is built up from the behaviour of low-level components; such simulations are used as research tools in (for instance) biological systems research. We have found that domain experts can validate diagrammatic models of behaviour and accompanying text, but we need model-based software development, and ideally automatable model transformation, to maintain fitness for purpose into code and experimentation. We present an exploration of behavioural model transformation, devising and applying manual transformation guidelines to an existing, published Java Mason simulator, created using the CoSMoS approach and UML-style state diagrams. We succeed in recreating part of the class structure of the code, but also expose many issues to be overcome, in terms of what needs to be modelled to enable transformation, and how and when design decisions are taken and documented. We also identify the need to generate the creation of low-level simulation, visualisation, and data capture mechanisms, and a means to design and encode simulation experimentation.
Comparison of large models can be time-consuming since every element has to be visited, matched, ... more Comparison of large models can be time-consuming since every element has to be visited, matched, and compared with its respective element in other models. This can result in bottlenecks in collaborative modelling environments, where identifying differences between two versions of a model is desirable. Reducing the comparison process to only the elements that have been modified since a previous known state (e.g., previous version) could significantly reduce the time required for large model comparison. This paper presents how change-based persistence can be used to localise the comparison of models so that only elements affected by recent changes are compared and to substantially reduce comparison and differencing time (up to 90% in some experiments) compared to state-based model comparison.
Gully pots or storm drains are located at the side of roads to provide drainage for surface water... more Gully pots or storm drains are located at the side of roads to provide drainage for surface water. We consider gully pot maintenance as a risk-driven maintenance problem. We explore policies for preventative and corrective maintenance actions, and build optimised routes for maintenance vehicles. Our solutions take the risk impact of gully pot failure and its failure behaviour into account, in the presence of factors such as location, season and current status. The aim is to determine a maintenance policy that can automatically adjust its scheduling strategy in line with changes in the local environment, to minimize the surface flooding risk due to clogged gully pots. We introduce a rolling planning strategy, solved by a hyperheuristic method. Results show the behaviour and strength of the automated adjustment in a range of real-world scenarios.
The relation between individuality and aggregation is an important topic in complex systems scien... more The relation between individuality and aggregation is an important topic in complex systems sciences, both aspects being facets of emergence. This topic has frequently been addressed by adopting a classical, individual versus population level perspective. Here, however, the frontiers that emerge in segregated communities are the focus; segregation is synonymous with the existence of frontiers that delineate and interface aggregates. A generic agent-based model is defined, with which we simulate communities located on grid and scale-free networked environments. Emerging frontiers are analyzed in terms of their relative occupancy, porosity, and permeability. Results emphasize that the frontier is highly sensitive to the topology of the environment, not only to the agent tolerance. These relations are clarified while addressing the topics of frontier robustness and the trade-off between its capacity to separate and allow exchange.
Security requirements for pervasive computing environments are different from those in fixed netw... more Security requirements for pervasive computing environments are different from those in fixed networks. This is due to the intensity and complexity of the communication between the user and the infrastructure, the mobility of the user, and dynamic sharing of limited resources. As pervasive computing makes information access and processing easily available for everyone from anywhere at anytime, the close relationship between distributed systems and mobile computing with a pervasive infrastructure leads us to take a closer look at different types of vulnerabilities and attacks in such environments. Pervasive computing includes numerous, often transparent, computing devices that are frequently mobile or embedded in the environment, and are connected to an increasingly ubiquitous network structure. For example, when an organization employs pervasive computing, the environment becomes more knowledgeable about the users' behavior and, hence, becomes more proactive with each individual user as time passes. Therefore, the user must be able to trust the environment and the environment must be confident of the user's identity. This implies security is an important concern in the success of pervasive computing environments. In this chapter we evaluate the suitability of existing security methods for pervasive environments.
Immunos 99 is a classification algorithm based upon the principles of Artificial Immune Systems (... more Immunos 99 is a classification algorithm based upon the principles of Artificial Immune Systems (AIS). AIS algorithms can provide alternatives to classical techniques such as decision trees for classification tasks. Immunos 99 provides one alternative however the algorithm and implementations have some room for performance improvement. This paper discusses improvements made to Immunos 99 and its reference implementation to improve runtime performance. The new algorithm/implementation results in an approximate 40% reduction in run time on test data. The paper closes with a proposal for an implementation of the Immunos 99 algorithm that is suitable for use on map/reduce clusters.
Wireless sensor networks (WSNs) consist of multiple, distributed nodes each with limited resource... more Wireless sensor networks (WSNs) consist of multiple, distributed nodes each with limited resources. With their strict resource constraints and application-specific characteristics, WSNs contain many challenging tradeoffs. This paper proposes a bioinspired load balancing approach, based on pheromone signalling mechanisms, to solve the tradeoff between service availability and energy consumption. We explore the performance consequences of the pheromone-based load balancing approach using (1) a systemlevel simulator, (2) deployment of real sensor testbeds to provide a competitive analysis of these evaluation methodologies. The effectiveness of the proposed algorithm is evaluated with different scenario parameters and the required performance evaluation techniques are investigated on case studies based on sound sensors.
Wireless Sensor Networks (WSNs) consist of multiple, distributed nodes each with limited resource... more Wireless Sensor Networks (WSNs) consist of multiple, distributed nodes each with limited resources. With their strict resource constraints and application-specific characteristics, WSNs contain many challenging trade-offs. This paper proposes a bio-inspired load balancing approach, based on pheromone signalling mechanisms, to solve the trade-off between service availability and energy consumption. We explore the performance consequences of the pheromone-based load balancing approach using: 1) a system-level simulator; 2) deployment of real sensor testbeds to provide a competitive analysis of these evaluation methodologies. The effectiveness of the proposed algorithm is evaluated with different scenario parameters and the required performance evaluation techniques are investigated on case studies based on sound sensors.
Research based on computer simulations, especially that conducted through agent-based experimenta... more Research based on computer simulations, especially that conducted through agent-based experimentation, is often criticised for not being a reliable source of informationthe simulation software can hide errors or flawed designs that inherently bias results. Consequently, the academic community shows both enthusiasm and lack of trust for such approaches. In order to gain confidence is using engineered systems, domains such as Safety Critical Systems employ structured argumentation techniques as means of explicitly relating claims to evidence-in other words, requirements to deliverables. We argue here that structured argumentation should be used in the development and validation process of simulation-driven research. Making use of the Goal Structuring Notation, we provide insights into how more trustworthy outcomes can be obtained through argumentation-driven validation.
Computer simulation can be used to inform in vivo and in vitro experimentation, enabling rapid, l... more Computer simulation can be used to inform in vivo and in vitro experimentation, enabling rapid, low-cost hypothesis generation and directing experimental design in order to test those hypotheses. In this way, in silico models become a scientific instrument for investigation, and so should be developed to high standards, be carefully calibrated and their findings presented in such that they may be reproduced. Here, we outline a theoretical framework that supports developing simulations as scientific instruments, and we select ...
There is increasing demand for approaches to develop more effective enterprise information system... more There is increasing demand for approaches to develop more effective enterprise information systems (EIS). A possible solution is to focus on eliciting and elaborating goals prior to capturing EIS requirements. Focusing on EIS goals could help the developer team and other stakeholders (particularly decision makers) achieve a shared and structured understanding of the goals of the EIS and the overall enterprise. We present an investigation of the use of the KAOS approach to goal modelling in the domain of EIS. As a result, we propose a tailoring of KAOS for this domain; the tailoring has been developed through empirical studies. Our tailoring, called KAOS-β, is described, and an empirical evaluation is presented, investigating its applicability for defining and structuring the goals of groups of EIS.
Uploads
Papers by Fiona Polack