Performance Engineering of the Starlogo Nova

Total Page:16

File Type:pdf, Size:1020Kb

Performance Engineering of the Starlogo Nova Performance Engineering of the StarLogo Nova Execution Engine by Jin Pan Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of Master of Engineering in Computer Science and Engineering at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY September 2016 ○c Massachusetts Institute of Technology 2016. All rights reserved. Author................................................................ Department of Electrical Engineering and Computer Science August 16, 2016 Certified by. Eric Klopfer Director of MIT Scheller Teacher Education Program Thesis Supervisor Accepted by . Christopher J. Terman Chairman, Masters of Engineering Thesis Committee 2 Performance Engineering of the StarLogo Nova Execution Engine by Jin Pan Submitted to the Department of Electrical Engineering and Computer Science on August 16, 2016, in partial fulfillment of the requirements for the degree of Master of Engineering in Computer Science and Engineering Abstract StarLogo Nova is an online blocks-based programming environment designed for pre- college students to explore the collective behavior of decentralized agents. Users can drag and drop blocks to construct graphical scripts that control how individual agents respond to stimuli. These scripts are run by the Execution Engine and rendered in real-time. By investigating hypotheses about how small tweaks to individual behav- ior impact the entire system, students learn to think beyond the centralized mindset where all actions are dictated by a singular leader. This thesis migrates the Execution Engine from the aging Adobe ActionScript 3 language to TypeScript, a weakly typed language that transpiles to JavaScript. To promote code health, this thesis introduces code formatters, linters, test cases, and a build process. Finally, this thesis optimizes the StarLogo Nova Execution Engine for performance, consistently beating the previous engine and bringing the execution time per cycle for key benchmarks under 10 milliseconds. Thesis Supervisor: Eric Klopfer Title: Director of MIT Scheller Teacher Education Program 3 4 Acknowledgments To my parents, for all the difficult sacrifices they have made for my education. Ihope that future StarLogo Nova users are able to indirectly benefit from your hard work. I would like to thank all the teachers, mentors, and friends that I have met and learned immensely from, both inside the classroom and outside. From that list of teachers, mentors, and friends, I would like to specifically Daniel Wendel and Eric Klopfer for our rich discussions this year: they not only helped me understand the internal StarLogo codebase, but also its role in the educational technologies world and students’ lives. Last but not least, I would like to thank my girlfriend Linda Wang for always being there and reassuring me in seemingly hopeless situations that there always will be a way. Thank you for all your inspiration and believing in me. 5 6 Contents 1 StarLogo Nova Background 15 1.1 LISP . 16 1.2 Logo . 16 1.3 StarLogo . 17 1.4 StarLogo: The Next Generation . 19 1.4.1 StarLogoT and NetLogo . 22 1.5 StarLogo Nova . 22 1.6 StarLogo Nova Technical Overview . 25 1.7 StarLogo Nova Block and Functionality Overview . 29 1.7.1 Agent blocks (figure 1-10) . 29 1.7.2 Detection blocks (figure 1-11) . 31 1.7.3 Environment blocks (figure 1-12) . 32 1.7.4 Interface blocks (figure 1-13) . 33 1.7.5 Keyboard blocks (figure 1-14) . 34 1.7.6 List blocks (figure 1-15) . 35 1.7.7 Logic blocks (figure 1-16) . 35 1.7.8 Math blocks (figure 1-17) . 36 1.7.9 Movement blocks (figure 1-18) . 37 1.7.10 Procedure blocks (figure 1-19) . 37 1.7.11 Sound blocks (figure 1-20) . 38 1.7.12 Trait blocks (figure 1-21) . 38 1.7.13 Variable blocks (figure 1-22) . 39 7 1.7.14 Debugger blocks (figure 1-23) . 40 2 StarLogo Nova Limitations and Rationale for Contributions 41 2.1 ActionScript3 Migration . 41 2.2 New Tooling . 43 2.3 Performance Engineering the Engine . 44 3 Flash Migration 45 3.1 Initial Migration Steps . 45 3.2 Migrating the Engine Core . 47 3.2.1 A Difficulty in Migrating the Engine Core . 47 3.2.2 A Simpler Interpreter . 50 3.3 Miscellaneous Migration Details . 55 3.3.1 JavaScript Maps vs Objects . 55 3.3.2 Singletons and Static Classes . 56 3.3.3 BlockTable . 56 3.3.4 Key Manager . 56 3.3.5 Dead Code . 57 3.3.6 General Statistics . 57 4 New Tooling 59 4.1 Migration Tools . 59 4.1.1 make and tsc ........................... 59 4.1.2 tslint ............................... 61 4.1.3 tsfmt ............................... 63 4.2 Automatic Testing . 65 4.3 Version Control Workflow . 65 5 Performance Engineering the Engine 67 5.1 Overview of JavaScript Engines . 67 5.1.1 Chrome V8 . 68 5.1.2 Firefox SpiderMonkey . 69 8 5.1.3 Safari JavaScriptCore . 70 5.1.4 Microsoft Edge Chakra . 71 5.1.5 Summary of JavaScript Engines . 71 5.2 Setting up a Testbed . 72 5.3 Interpreter Optimization Attempt . 74 5.4 Transpilation to JavaScript . 76 5.4.1 Outline of how JavaScript is generated . 77 5.4.2 Nuances to generating the JavaScript . 77 5.5 Optimizing the Transpiled Code . 81 5.5.1 Benchmark Suite Description . 81 5.5.2 Universal Optimizations . 83 5.5.3 Renderer Optimizations . 93 5.5.4 Collision Optimizations . 94 5.6 Negative Optimization Results . 97 5.7 Overall Benchmark Results . 101 6 Future contributions 103 6.1 Better Type Handling . 103 6.1.1 Current Type System . 103 6.1.2 Stronger Typing Challenges and Solutions . 104 6.2 Live code editing . 105 6.2.1 Live code editing groundwork . 105 6.2.2 Live code editing semantics . 106 6.2.3 Live code editing user interface . 107 6.3 Debugging . 108 6.3.1 Logging . 109 6.3.2 Stepping . 110 6.3.3 Alternative Stepping Design . 110 6.4 User Scripting . 111 6.4.1 Security . 111 9 6.5 Tooling . 112 7 Conclusion 115 10 List of Figures 1-1 Graphical representation of the Dragon Curve . 16 1-2 Logo code to generate the Dragon Curve . 17 1-3 Logo code to generate the Dragon Curve with errors . 19 1-4 Blocks code to generate the Dragon Curve . 21 1-5 Screenshot of the StarLogo Nova interface . 24 1-6 Block Specification of if ......................... 26 1-7 Compatible blocks for the if block . 27 1-8 Incompatible blocks for the if block . 27 1-9 StarLogo Nova Execution Engine Pseudocode . 29 1-10 Agent Blocks . 30 1-11 Detection Blocks . 31 1-12 Environment Blocks . 32 1-13 Interface Blocks . 33 1-14 Keyboard Blocks . 34 1-15 List Blocks . 35 1-16 Logic Blocks . 36 1-17 Math Blocks . 37 1-18 Movement Blocks . 38 1-19 Procedure Blocks . 39 1-20 Sound Blocks . 39 1-21 Trait Blocks . 40 1-22 Variable Blocks . 40 1-23 Debugger Blocks . 40 11 3-1 AS3 Interpreter code to compute if ................... 48 3-2 AS3 Interpreter code to compute CalcSum . 49 3-3 Simpler Interpreter code to compute if . 52 3-4 Simpler Interpreter code to compute CalcSum . 53 4-1 Makefile all Target . 62 4-2 Overriding tslint ............................ 63 4-3 tsfmt invocation . 64 5-1 Benchmark Script . 74 5-2 Rotate Benchmark . 74 5-3 JavaScript Code Generation for If . 78 5-4 JavaScript Code Generation for ProcCall . 79 5-5 Blocks for a Transpilation Example . 80 5-6 JavaScript for a Transpilation Example . 80 5-7 Profiler with no optimizations . ..
Recommended publications
  • Agent-Based Architectures and Algorithms for Energy Management in Smart Gribs : Application to Smart Power Generation and Residential Demand Response Robin Roche
    Agent-Based Architectures and Algorithms for Energy Management in Smart Gribs : Application to Smart Power Generation and Residential Demand Response Robin Roche To cite this version: Robin Roche. Agent-Based Architectures and Algorithms for Energy Management in Smart Gribs : Application to Smart Power Generation and Residential Demand Response. Other. Université de Technologie de Belfort-Montbeliard, 2012. English. NNT : 2012BELF0191. tel-00864268 HAL Id: tel-00864268 https://tel.archives-ouvertes.fr/tel-00864268 Submitted on 20 Sep 2013 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Université de Technologie de Belfort–Montbéliard Institut de Recherche sur les Transports, l’Énergie et la Société Laboratoire Systèmes et Transports École Doctorale Sciences pour l’Ingénieur et Microtechniques Algorithmes et Architectures Multi-Agents pour la Gestion de l’Énergie dans les Réseaux Électriques Intelligents Application aux Centrales à Turbines à Gaz et à l’Effacement Diffus Résidentiel Thèse no191 présentée et soutenue publiquement en vue de l’obtention du titre de Docteur en Génie Électrique par Robin Roche le 7 décembre 2012 Membres du jury : M. Mohamed Benbouzid IUT de Brest, LBMS Président M. Nouredine Hadjsaid INP Grenoble, G2Elab Rapporteur M.
    [Show full text]
  • Easybuild Documentation Release 20210706.0 Ghent University
    EasyBuild Documentation Release 20210907.0 Ghent University Tue, 07 Sep 2021 08:55:25 Contents 1 What is EasyBuild? 3 2 Concepts and terminology 5 2.1 EasyBuild framework..........................................5 2.2 Easyblocks................................................6 2.3 Toolchains................................................7 2.3.1 system toolchain.......................................7 2.3.2 dummy toolchain (DEPRECATED) ..............................7 2.3.3 Common toolchains.......................................7 2.4 Easyconfig files..............................................7 2.5 Extensions................................................8 3 Typical workflow example: building and installing WRF9 3.1 Searching for available easyconfigs files.................................9 3.2 Getting an overview of planned installations.............................. 10 3.3 Installing a software stack........................................ 11 4 Getting started 13 4.1 Installing EasyBuild........................................... 13 4.1.1 Requirements.......................................... 14 4.1.2 Using pip to Install EasyBuild................................. 14 4.1.3 Installing EasyBuild with EasyBuild.............................. 17 4.1.4 Dependencies.......................................... 19 4.1.5 Sources............................................. 21 4.1.6 In case of installation issues. .................................. 22 4.2 Configuring EasyBuild.......................................... 22 4.2.1 Supported configuration
    [Show full text]
  • Use of Bio-Inspired Techniques to Solve Complex Engineering Problems: Industrial Automation Case Study
    Use of Bio-inspired Techniques to Solve Complex Engineering Problems: Industrial Automation Case Study José Fernando Lopes Barbosa Relatório de Projecto para obtenção do grau de Mestre em Engenharia Industrial ramo de especialização em Engenharia Electrotécnica Supervision: Prof. Dr. Paulo Leitão September, 2010 Dedication To Inês and Mariana ii Acknowledgements First of all I want to express my most grateful thanks to Professor Paulo Leitão for his knowledge, patient, support and constant motivation during the development of this work without which the conclusion was not possible. Next, I want to thank all my friends for their support, incentive and motivation. I also want to thank my parents for all the support and love throughout the years. A special thank to my beautiful grandmother that with her love and affection made me feel to be her special grandson. Finally, but not the least, I want to thank my wife Inês for her support and comprehension and to my daughter Mariana just to make me constantly smile. iii Abstract Nowadays local markets have disappeared and the world lives in a global economy. Due to this reality, every company virtually competes with all others companies in the world. In addition to this, markets constantly search products with higher quality at lower costs, with high customization. Also, products tend to have a shorter period of life, making the demanding more intense. With this scenario, companies, to remain competitive, must constantly adapt themselves to the market changes, i.e., companies must exhibit a great degree of self-organization and self-adaptation. Biology with the millions of years of evolution may offer inspiration to develop new algorithms, methods and techniques to solve real complex problems.
    [Show full text]
  • Cellular Automata Are Models of Distributed Dynamical Systems
    IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661,p-ISSN: 2278-8727, Volume 18, Issue 3, Ver. IV (May-Jun. 2016), PP 92-101 www.iosrjournals.org A New Multi-Agent Game Solver Miklos N Szilagyi Department of Electrical and Computer Engineering University of Arizona, Tucson, AZ 85721 Abstract: A new N-person game solver is presented in this work. The new software is an advance in the whole sate of art for the investigation of N-person games. It is now possible to investigate entire classes of games almost automatically. Moreover, this software makes it trivial to perform a systematic investigation of any game with a multidimensional parameter space. In addition, the payoff functions are no longer limited to quadratic expressions; any elementary mathematical function can easily be used, even in parameterized form. The experimental results are interesting and they very strongly depend on the initial conditions. Keywords: N-person games, Netlogo, Agent-based simulation, Prisoners’ Dilemma, Chicken Dilemma, Complexity. I. Introduction Many complex phenomena can be represented as N-person games in which the participating agents all interact with all the other agents directly or indirectly [1-4]. In the latter case the agents immediately interact only with their immediate neighbors. In this case the agents are simply cells in a cellular automaton. Cellular automata [5-7] are powerful tools for the study of simultaneous operation of a large number of agents, i. e. for the investigation of complex systems and phenomena. Therefore, they are quite suitable for the study of spatial N-person games.
    [Show full text]
  • KIMONO, a Descriptive Agent-Based Modelling Method for the Exploration of Complex Systems: an Application to Epidemiology
    KIMONO, a descriptive agent-based modelling method for the exploration of complex systems: an application to epidemiology. Edouard Amouroux To cite this version: Edouard Amouroux. KIMONO, a descriptive agent-based modelling method for the exploration of complex systems: an application to epidemiology.. Modeling and Simulation. Université Pierre et Marie Curie - Paris VI, 2011. English. tel-00630779 HAL Id: tel-00630779 https://tel.archives-ouvertes.fr/tel-00630779 Submitted on 5 Dec 2011 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THESE DE DOCTORAT DE L’UNIVERSITE PIERRE ET MARIE CURIE Spécialité: Informatique (Ecole doctorale: EDITE) Présentée par Edouard AMOUROUX Pour obtenir le grade de DOCTEUR de l’UNIVERSITÉ PIERRE ET MARIE CURIE Sujet de la thèse : KIMONO: une méthode de modélisation descriptive centrée agent pour l'explication des systèmes complexes, une application en épidémiologie soutenue le 30/09/2011 devant le jury composé de : M. Directeur de thèse: Alexis Drogoul, Directeur de Recherche, IRD - UMMISCO / IFI - MSI Rapporteurs: David
    [Show full text]
  • The Development and Improvement of Instructions
    MECHANICS OF ATHEROSCLEROSIS, HYPERTENSION INDUCED GROWTH, AND ARTERIAL REMODELING A Dissertation by HEATHER NAOMI HAYENGA Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY May 2011 Major Subject: Biomedical Engineering Mechanics of Atherosclerosis, Hypertension Induced Growth, and Arterial Remodeling Copyright 2011 Heather Naomi Hayenga MECHANICS OF ATHEROSCLEROSIS, HYPERTENSION INDUCED GROWTH, AND ARTERIAL REMODELING A Dissertation by HEATHER NAOMI HAYENGA Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Approved by: Chair of Committee, James E. Moore, Jr. Committee Members, Fred J. Clubb Roland R. Kaunas Alvin T. Yeh Head of Department, Gerald L. Cote May 2011 Major Subject: Biomedical Engineering iii ABSTRACT Mechanics of Atherosclerosis, Hypertension Induced Growth, and Arterial Remodeling. (December 2010) Heather Naomi Hayenga, B.S., University of California, Davis Chair of Advisory Committee: Dr. James E. Moore, Jr. In order to create informed predictive models that capture artery dependent responses during atherosclerosis progression and the long term response to hypertension, one needs to know the structural, biochemical and mechanical properties as a function of time in these diseased states. In the case of hypertension more is known about the mechanical changes; while, less is known about the structural changes over time. For atherosclerotic plaques, more is known about the structure and less about the mechanical properties. We established a congruent multi-scale model to predict the adapted salient arterial geometry, structure and biochemical response to an increase in pressure.
    [Show full text]
  • Netlogo Field Guide
    A Field Guide to NetLogo Steve Scott and Matt Koehler George Mason University Department of Computational Social Science Copyright © 2014. The MITRE Corporation. All Rights Reserved. About the Cover: The green sea turtle (Chelonia mydas) image on the cover was created by Jack Javech of the National Oceanographic and Atmospheric Administration (NOAA). NOAA's National Marine Fisheries Service (NMFS) and the U.S. Fish and Wildlife Service (FWS) work together to protect sea turtles, which are affected by numerous threats including fisheries bycatch, habitat destruction and degradation, marine pollution, and boat strikes. The NMFS, FWS, and numerous partners are actively involved in sea turtle conservation efforts, such as monitoring sea turtle nesting activity, protecting turtle nests and nesting beach habitat, and implementing and enforcing regulations to reduce bycatch of sea turtles. Visit the NMFS website at http://www.nmfs.noaa.gov/pr/species/turtles/ and the FWS website at http://www.fws.gov/northflorida/SeaTurtles/seaturtle-info.htm for further information about sea turtles and conservation efforts. i Table of Contents Preface ............................................................................................................................................. 1 About This Guide ........................................................................................................................ 1 About NetLogo ..........................................................................................................................
    [Show full text]
  • Metadefender Core V4.17.3
    MetaDefender Core v4.17.3 © 2020 OPSWAT, Inc. All rights reserved. OPSWAT®, MetadefenderTM and the OPSWAT logo are trademarks of OPSWAT, Inc. All other trademarks, trade names, service marks, service names, and images mentioned and/or used herein belong to their respective owners. Table of Contents About This Guide 13 Key Features of MetaDefender Core 14 1. Quick Start with MetaDefender Core 15 1.1. Installation 15 Operating system invariant initial steps 15 Basic setup 16 1.1.1. Configuration wizard 16 1.2. License Activation 21 1.3. Process Files with MetaDefender Core 21 2. Installing or Upgrading MetaDefender Core 22 2.1. Recommended System Configuration 22 Microsoft Windows Deployments 22 Unix Based Deployments 24 Data Retention 26 Custom Engines 27 Browser Requirements for the Metadefender Core Management Console 27 2.2. Installing MetaDefender 27 Installation 27 Installation notes 27 2.2.1. Installing Metadefender Core using command line 28 2.2.2. Installing Metadefender Core using the Install Wizard 31 2.3. Upgrading MetaDefender Core 31 Upgrading from MetaDefender Core 3.x 31 Upgrading from MetaDefender Core 4.x 31 2.4. MetaDefender Core Licensing 32 2.4.1. Activating Metadefender Licenses 32 2.4.2. Checking Your Metadefender Core License 37 2.5. Performance and Load Estimation 38 What to know before reading the results: Some factors that affect performance 38 How test results are calculated 39 Test Reports 39 Performance Report - Multi-Scanning On Linux 39 Performance Report - Multi-Scanning On Windows 43 2.6. Special installation options 46 Use RAMDISK for the tempdirectory 46 3.
    [Show full text]
  • Logo Tree Project
    LOGO TREE PROJECT Written by P. Boytchev e-mail: pavel2008-AT-elica-DOT-net Rev 1.82 July, 2011 We’d like to thank all the people all over the globe and all over the alphabet who helped us build the Logo Tree: A .........Daniel Ajoy, Eduardo de Antueno, Hal Abelson B .........Andrew Begel, Carl Bogardus, Dominique Bille, George Birbilis, Ian Bicking, Imre Bornemisza, Joshua Bell, Luis Belmonte, Vladimir Batagelj, Wayne Burnett C .........Charlie, David Costanzo, John St. Clair, Loïc Le Coq, Oliver Schmidt-Chevalier, Paul Cockshott D .........Andy Dent, Kent Paul Dolan, Marcelo Duschkin, Mike Doyle E..........G. A. Edgar, Mustafa Elsheikh, Randall Embry F..........Damien Ferey, G .........Bill Glass, Jim Goebel, H .........Brian Harvey, Jamie Hunter, Jim Howe, Markus Hunke, Rachel Hestilow I........... J..........Ken Johnson K .........Eric Klopfer, Leigh Klotz, Susumu Kanemune L..........Janny Looyenga, Jean-François Lucas, Lionel Laské, Timothy Lipetz M.........Andreas Micheler, Bakhtiar Mikhak, George Mills, Greg Michaelson, Lorenzo Masetti, Michael Malien, Sébastien Magdelyns, Silvano Malfatti N .........Chaker Nakhli ,Dani Novak, Takeshi Nishiki O ......... P..........Paliokas Ioannis, U. B. Pavanaja, Wendy Petti Q ......... R .........Clem Rutter, Emmanuel Roche S..........Bojidar Sendov, Brian Silverman, Cynthia Solomon, Daniel Sanderson, Gene Sullivan, T..........Austin Tate, Gary Teachout, Graham Toal, Marcin Truszel, Peter Tomcsanyi, Seth Tisue, Gene Thail U .........Peter Ulrich V .........Carlo Maria Vireca, Álvaro Valdes W.........Arnie Widdowson, Uri Wilensky X ......... Y .........Andy Yeh, Ben Yates Z.......... Introduction The main goal of the Logo Tree project is to build a genealogical tree of new and old Logo implementations. This tree is expected to clearly demonstrate the evolution, the diversity and the vitality of Logo as a programming language.
    [Show full text]
  • Starlogo TNG: the Convergence of Graphical Programming and Text Processing by Corey Mccaffrey
    StarLogo TNG: The Convergence of Graphical Programming and Text Processing by Corey McCaffrey Submitted to the Department of Electrical Engineering and Computer Science in Partial Fulfillment of the Requirements for the Degrees of Bachelor of Science in Computer Science and Engineering and Master of Engineering in Electrical Engineering and Computer Science at the Massachusetts Institute of Technology May 26, 2006 Copyright 2006 Corey McCaffrey. All rights reserved. The author hereby grants to M.I.T. permission to reproduce and distribute publicly paper and electronic copies of this thesis and to grant others the right to do so. Author__________________________________________________________________ Department of Electrical Engineering and Computer Science May 26, 2006 Certified by______________________________________________________________ Eric Klopfer Thesis Supervisor Accepted by_____________________________________________________________ Arthur C. Smith Chairman, Department Committee on Graduate Theses 2 StarLogo TNG: The Convergence of Graphical Programming and Text Processing by Corey McCaffrey Submitted to the Department of Electrical Engineering and Computer Science May 26, 2006 In Partial Fulfillment of the Requirements for the Degrees of Bachelor of Science in Computer Science and Engineering and Master of Engineering in Electrical Engineering and Computer Science ABSTRACT StarLogo TNG is a robust graphical programming environment for secondary students. Despite the educational advantages of graphical programming, TNG has sustained criticism from some who object to the exclusion of a textual language. Recognizing the benefits of text processing and the power of controlling software with a keyboard, I sought to incorporate text-processing techniques into TNG’s graphical language. The key component of this work is an innovation dubbed “Typeblocking,” by which users construct block code through the use of a keyboard.
    [Show full text]
  • Partitioning Method for Emergent Behavior Systems Modeled by Agent-Based Simulations
    Old Dominion University ODU Digital Commons Computational Modeling & Simulation Computational Modeling & Simulation Engineering Theses & Dissertations Engineering Winter 2012 Partitioning Method for Emergent Behavior Systems Modeled by Agent-Based Simulations O. Thomas Holland Old Dominion University Follow this and additional works at: https://digitalcommons.odu.edu/msve_etds Part of the Computer Sciences Commons Recommended Citation Holland, O. T.. "Partitioning Method for Emergent Behavior Systems Modeled by Agent-Based Simulations" (2012). Doctor of Philosophy (PhD), Dissertation, Computational Modeling & Simulation Engineering, Old Dominion University, DOI: 10.25777/wqf0-ke57 https://digitalcommons.odu.edu/msve_etds/36 This Dissertation is brought to you for free and open access by the Computational Modeling & Simulation Engineering at ODU Digital Commons. It has been accepted for inclusion in Computational Modeling & Simulation Engineering Theses & Dissertations by an authorized administrator of ODU Digital Commons. For more information, please contact [email protected]. PARTITIONING METHOD FOR EMERGENT BEHAVIOR SYSTEMS MODELED BY AGENT-BASED SIMULATIONS by O. Thomas Holland B. S. E. E. 1983, Tennessee Technological University M. S. E. E. 1996, Virginia Polytechnic Institute and State University A Dissertation Submitted to the Faculty of Old Dominion University in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY MODELING AND SIMULATION OLD DOMINION UNIVERSITY December 2012 Approved by: John Sokolowski (Director) ^rederic D. McKenitfe (Member) -?Cndreas Tolk (Member) Bruce Copeland (Member) ABSTRACT PARTITIONING METHOD FOR EMERGENT BEHAVIOR SYSTEMS MODELED BY AGENT-BASED SIMULATIONS O. Thomas Holland Old Dominion University, 2012 Director: Dr. John Sokolowski Used to describe some interesting and usually unanticipated pattern or behavior, the term emergence is often associated with time-evolutionary systems comprised of relatively large numbers of interacting yet simple entities.
    [Show full text]
  • IDOL Connector Framework Server 12.0 Administration Guide
    Connector Framework Server Software Version 12.0 Administration Guide Document Release Date: June 2018 Software Release Date: June 2018 Administration Guide Legal notices Copyright notice © Copyright 2018 Micro Focus or one of its affiliates. The only warranties for products and services of Micro Focus and its affiliates and licensors (“Micro Focus”) are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. Micro Focus shall not be liable for technical or editorial errors or omissions contained herein. The information contained herein is subject to change without notice. Trademark notices Adobe™ is a trademark of Adobe Systems Incorporated. Microsoft® and Windows® are U.S. registered trademarks of Microsoft Corporation. UNIX® is a registered trademark of The Open Group. Documentation updates The title page of this document contains the following identifying information: l Software Version number, which indicates the software version. l Document Release Date, which changes each time the document is updated. l Software Release Date, which indicates the release date of this version of the software. To verify you are using the most recent edition of a document, go to https://softwaresupport.softwaregrp.com/group/softwaresupport/search-result?doctype=online help. You will also receive new or updated editions of documentation if you subscribe to the appropriate product support service. Contact your Micro Focus sales representative for details. To check for new versions of software, go to https://www.hpe.com/software/entitlements. To check for recent software patches, go to https://softwaresupport.softwaregrp.com/patches. The sites listed in this section require you to sign in with a Software Passport.
    [Show full text]