Additional Files: techreports/GMU-CS-TR-2017-3.bib
We consider steady-state production processes that produce a product and have feasibility constraints and metrics of cost and throughput that are stochastic functions of process controls. We propose an efficient stochastic optimization algorithm for the problem of finding process controls that minimize the expectation of cost while satisfying deterministic feasibility constraints and stochastic steady state demand for the output product with a given high probability. The proposed algorithm is based on (1) a series of deterministic approximations to produce a candidate set of near-optimal control settings for the production process, and (2) stochastic simulations on the candidate set using optimal simulation budget allocation methods. We demonstrate the proposed algorithm on a use case of a real-world heat-sink production process that involves contract suppliers and manufacturers as well as unit manufacturing processes of shearing, milling, drilling, and machining, and conduct an experimental study that shows that the proposed algorithm significantly outperforms four popular simulation-based stochastic optimization algorithms.
Design and Experimentation of an Automated Performance Evaluation Testbed for Self-Healing and Self-Adaptive Distributed Software Systems
Additional Files: techreports/GMU-CS-TR-2017-2.bib
Evaluating the performance of distributed software systems is very challenging especially in the presence of failures and adaptation. Of particular interest to this paper is self-healing and self-adaptation middleware that detects failures of distributed software systems, analyzes their root causes, devises plans to recover from these failures, and executes these plans. Recovery plans may trigger software architecture adaptations, which may be also initiated by the need to maintain performance and availability goals. This paper focuses on the evaluation and testing of recovery and adaptation frameworks (RAF) for distributed component-based software systems. We present TESS, a testbed for automatically generating distributed software architectures and their corresponding runtime applications, deploying them to the nodes of a cluster, running many different types of experiments involving failures and adaptation, and collecting in a database the values of a variety of failure recovery and adaptation metrics. Queries can then be run against the database to provide a thorough and scientific analysis of the efficiency and/or effectiveness of a RAF. Additionally, this paper presents a case study of the use of TESS for the evaluation of a specific RAF, called DARE, developed by our group.
Additional Files: techreports/GMU-CS-TR-2017-1.bib
Recent techniques enable folding planer sheets to create complex 3D shapes, however, even a small 3D shape can have large 2D unfoldings. The huge dimension of the flattened structure makes fabrication difficult. In this paper, we propose a novel approach for folding a single thick strip into two target shapes: folded 3D shape and stacked shape. The folded shape is an approximation of a complex 3D shape provided by the user. The provided 3D shape may be too large to be fabricated (e.g. 3D-printed) due to limited workspace. Meanwhile, the stacked shape could be the compactest form of the 3D shape which makes its fabrication possible. The compactness of the stacked state also makes packing and transportation easier. The key technical contribution of this work is an efficient method for finding strips for quadrilateral meshes without refinement. We demonstrate our results using both simulation and fabricated models.