PyCX: a Python-based simulation code repository for complex systems education
|
|
|
- Jocelyn Cannon
- 10 years ago
- Views:
Transcription
1 Sayama Complex Adaptive Systems Modeling 2013, 1:2 METHODOLOGY Open Access PyCX: a Python-based simulation code repository for complex systems education Hiroki Sayama Correspondence: [email protected] Collective Dynamics of Complex Systems Research Group, Departments of Bioengineering & Systems Science and Industrial Engineering, Binghamton University, State University of New York, Binghamton, NY, USA Abstract We introduce PyCX, an online repository of simple, crude, easy-to-understand sample codes for various complex systems simulation, including iterative maps, cellular automata, dynamical networks and agent-based models. All the sample codes were written in plain Python, a general-purpose programming language widely used in industry as well as in academia, so that students can gain practical skills for both complex systems simulation and computer programming simultaneously. The core philosophy of PyCX is on the simplicity, readability, generalizability and pedagogical values of simulation codes. PyCX has been used in instructions of complex systems modeling at several places with successful outcomes. Keywords: PyCX, Python, Complex systems simulation, Education, Iterative maps, Cellular automata, Dynamical networks, Agent-based models Background Until nearly the end of the last century, dynamic simulations of complex systems such as cellular automata and agent-based models were only available to researchers who had sufficient technical skills to develop and operate their own simulation software. At that time, there were very few general-purpose simulation software packages available (e.g., (Hiebeler 1994; Wuensche 1994)), and those packages were rather hard to program, unless one had a computer science background. The lack of general-purpose simulation software easily accessible for non-computer scientists was a major limiting factor for the growth of complex systems science, given the highly interdisciplinary nature of the field. Over the last decade, several easy-to-use complex systems modeling and simulation software packages have been developed and become widely used for scientific research, including NetLogo (Tisue and Wilensky 2004), Repast (Collier 2003), Mason (Luke et al. 2004) (for agent-based models) and Golly (Trevorrow et al. 2005) (for cellular automata). They have been playing a critical role in making complex systems modeling and simulation available to researchers outside computer science. A number of publications used these software packages as key research tools, and increasingly many online tutorials and sample simulation models are becoming publicly available. However, such existing software has several problems when used for teaching complex systems modeling and simulation in higher education settings. These are all real issues we have faced in classrooms and other educational settings over the last several years Sayama; licensee Springer. This is an Open Access article distributed under the terms of the Creative Commons Attribution License ( which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
2 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 2 of 10 Firstly, and most importantly for college students, learning languages or libraries specific to particular simulation software used only in academia would not help the students advance their general technical skills. Because most students will eventually build their careers outside complex systems science, they usually want to learn something generalizable and marketable (even though they want to study complex systems science and they do appreciate its concepts and values). Secondly, even for those who actively work on complex systems research, choices of preferred software vary greatly from discipline to discipline, and therefore it is quite difficult to come up with a single commonly agreeable choice of software useful for everyone. This is particularly problematic when one has to teach a diverse group of students, which is not uncommon in complex systems education. Thirdly, details of model assumptions and implementations in pre-built simulation software are often hidden from the user, such as algorithms of collision detection, time allocation and state updating schemes. As we all know, such microscopic details can and do influence macroscopic behavior of the model, especially in complex systems simulations. Finally, using existing simulation software necessarily puts unrecognized limitations to the user s creativity in complex systems research, because the model assumptions and analytical methods are influenced significantly by what is available in the provided software. This is a fundamental issue that could hamper the advance of complex systems science, since any breakthroughs will be achieved only by creating entirely novel ways of modeling and/or analyzing complex systems that were not done before. These issues in using existing simulation software for complex systems education leads to the following very challenging riddle: Which computational tool is best for teaching complex systems modeling and simulation, offering students generalizable, marketable skills, being accessible and useful for everyone across disciplines, maintaining transparency in details, and imposing no implicit limit to the modeling and analysis capabilities? Obviously, there would be no single best answer to this kind of question. In what follows, we present a case of our humble attempt to give our own answer to it, hoping that some readers may find it helpful for solving their unique challenges in complex systems education. PyCX Through several years of experience in complex systems education, we have come to realize that using a simple general-purpose computer programming language itself as a complex systems modeling platform is our current best solution to address most, if not all, of the educational challenges discussed above. By definition, general-purpose computer programming languages are universal and can offer unlimited opportunity of modeling with all the details clearly spelled out in front of the user s eyes. Identifying a programming language that would be easily accessible and useful in a wide variety of disciplines had been difficult even a decade ago. a Fortunately, several easy-touse programming languages have recently emerged and become very popular in various scientific and industrial communities, including Python and R. For our educational needs, we chose Python, a programming language now widely used in industries as well as in
3 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 3 of 10 academia, so that students can gain practical skills for both complex systems simulation and computer programming simultaneously. Using the Python language itself as a modeling and simulation platform, we have developed PyCX, an online repository of simple, crude, easy-to-understand sample codes for various complex systems simulation. b The target audiences of PyCX are researchers and students who are interested in developing their own complex systems simulation software using a general-purpose programming language but do not have much experience in computer programming. We carefully designed the sample codes so that our audience can understand, modify, create and visualize dynamic complex systems simulations relatively easily. The core philosophy of PyCX is therefore placed on the simplicity, readability, generalizability and pedagogical values of simulation codes. This is often achieved even at the cost of computational speed, efficiency or maintainability. For example: (1) every PyCX sample code is written as a single.py file, which is a plain text file, without being split into multiple separate files; (2) all the dynamic simulations follow the same scheme consisting of three parts (initialization, visualization and updating); (3) we do not use the object-oriented programming paradigm because it is sometimes difficult for non-computer scientists to grasp; and (4) we do use global variables frequently to make the code more intuitive and readable. These choices were intentionally made based on our experience in teaching complex systems modeling and simulation to non-computer scientists and their feedback. A simple example of PyCX sample codes ( abm-randomwalk.py, an agentbased simulation of particles moving in independent random walk in a twodimensional open space) is shown below. For a dynamic simulation like this one, the user needs to define three functions (init for initialization, draw for visualization, and step for updating) and then call pycxsimulator.gui().start() to run the simulation. import matplotlib matplotlib.use( TkAgg ) import pylab as PL import random as RD import scipy as SP RD.seed() populationsize = 100 noiselevel = 1 def init(): global time, agents time = 0 agents = [] for i in xrange(populationsize):
4 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 4 of 10 newagent = [RD.gauss(0, 1), RD.gauss(0, 1)] agents.append(newagent) def draw(): PL.cla() x = [ag[0] for ag in agents] y = [ag[1] for ag in agents] PL.plot(x, y, bo ) PL.axis( scaled ) PL.axis([-100, 100, -100, 100]) PL.title( t = + str(time)) def step(): global time, agents time += 1 for ag in agents: ag[0] += RD.gauss(0, noiselevel) ag[1] += RD.gauss(0, noiselevel) import pycxsimulator pycxsimulator.gui().start(func=[init,draw,step]) There are a few limitations in using Python for complex systems education. The first limitation is that the software installation and maintenance is a little more difficult than other more sophisticated software environment. c We believe, though, that the longterm educational benefit from learning a general-purpose programming language will outweigh the short-term learning difficulty for the majority of students. The second limitation is that it is relatively difficult to build an interactive GUI (Graphical User Interface) in Python. To alleviate this problem, we provide a simple universal GUI and a coding template for dynamic simulations. The user can define just three functions (for initialization, visualization and updating) in the realtime-simulation-template.py file to implement a dynamic simulation, and then the pycxsimulator.py module will automatically generate a minimalistic GUI with three buttons ( Run/Pause, Step Once and Reset ; Figure 1). These two files must be placed within the same folder. Implemented Sample Codes We have implemented a number of sample codes for typical complex systems simulations, including iterative maps, cellular automata, dynamical networks and agent-based models. All of those codes were concisely written in plain Python. They are freely available from the project website. b To run those sample codes, the user will need the following software modules, which are also available for free and widely used for scientific computation in academia and industries: Python 2.7 d NumPy and SciPy for Python 2.7 e
5 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 5 of 10 Figure 1 Minimal GUI (Graphical User Interface) generated by the pycxsimulator.py module. A three-button minimal GUI window is displayed at the top, together with the large main window showing the simulation result that is dynamically updated in real time. The main window also comes with several matplotlib-default GUI buttons for zooming and saving images, etc. (bottom). Simulations of cellular automata, dynamical networks and agent-based models are to be operated using this simple GUI. matplotlib for Python 2.7 f NetworkX for Python 2.7 (this module is needed for dynamical network simulations only) (Hagberg et al. 2008) g In most operating systems, running a PyCX sample code is just double-clicking on the file. Below is a selected list of simulations included in the most recent version of PyCX (version 0.2): Basic dynamical systems (logistic map, cobweb plot, bifurcation diagram, Lotka-Volterra equations; Figure 2) Cellular automata (local majority rule, droplet rule, Game of Life, Turing pattern formation, excitable media, host-pathogen interaction, forest fire; Figure 3) Figure 2 Screen shots of basic dynamical systems in PyCX. (a)logisticmap,(b)cobwebplot, (c) bifurcation diagram, (d) Lotka-Volterra equations.
6 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Figure 3 Screen shots of cellular automata in PyCX. (a) Local majority rule, (b) droplet rule, (c) Game of Life, (d) Turing pattern formation, (e) excitable media, (f) host-pathogen interaction, (g) forest fire. Dynamical networks (basic network construction and analysis, network growth by preferential attachment, local majority rule on a network, synchronization on a network based on the Kuramoto model (Strogatz 2000), disease spreading on a network, cascade of failures on a network; Figure 4) Agent-based models (random walk of particles, diffusion-limited aggregation, predator-prey ecosystem, garbage collection by ants (Resnick 1997), aggregation of ants via pheromone-based communication; Figure 5) Actual use in the classrooms PyCX has been used in instructions of complex systems modeling and simulation at several occasions, including: Figure 4 Screen shots of dynamical networks in PyCX. (a) Network growth by preferential attachment, (b) local majority rule on a network, (c) synchronization on a network based on the Kuramoto model (Strogatz 2000), (d) disease spreading on a network, (e) cascade of failures on a network. Page 6 of 10
7 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 7 of 10 Figure 5 Screen shots of agent-based models in PyCX. (a) Random walk of particles, (b) diffusion-limited aggregation, (c) predator-prey ecosystem, (d) garbage collection by ants (Resnick 1997), (e) aggregation of ants via pheromone-based communication.
8 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 8 of 10 Binghamton University Graduate Courses BME-510: Modeling Complex Biological Systems (2009, 2010) SSIE-518X/523: Collective Dynamics of Complex Systems (2011-) BME-523X/523: Dynamics of Complex Networks (2012-) New England Complex Systems Institute Summer/Winter Schools h CX 202: Complex Systems Modeling and Networks (2008-) CX 102: Computer Programming and Complex Systems (2010-) NWO (Netherlands Organisation for Scientific Research) Complexity Winter School (2011) i NetSci High Summer Workshop (2012) j In a typical curriculum, we ask students to bring in their own laptops to the classroom, and spend the first three to six hours for software installation and general introduction to Python, covering basics of its syntax and data structures. The rest of the curriculum can be custom-designed based on the students interests and needs, by combining appropriate simulation sample codes as curricular units. While each curricular unit can be taught in various ways, we have found the following instruction format most effective so far: 1. Describe the key concepts of the phenomenon being modeled, as well as the basic model assumptions. 2. Run the simulation sample code, show the results and have a brief discussion on the observations. 3. Open the code in an editor k and give a line-by-line walk-through, explaining how the model is implemented in detail and addressing any technical questions as needed. 4. Have a couple of in-class exercises that require students to understand and then modify the code to implement some model variations. 5. Summarize the learning experience of the curricular unit and have open Q&A s and/or try further model extensions. In this format, each unit can be covered within 30 minutes to one hour, depending on how much details will be discussed. The basic goal of these activities is to make students feel comfortable in investigating into sample codes of their interest and then actively modifying them as a template for their own simulation models. A systematic evaluation of PyCX s educational impacts is beyond the scope of this short article. However, we have gained several tangible outcomes, including: 100% thumbs-up user rating scores on SourceForge.net l Many highly positive testimonials from those who took courses with PyCX or who used PyCX (some testimonials are available on the project website) Several publications of papers on Python-based computer simulation by students and faculty who took courses with PyCX (Hao et al. 2010; Mischen 2010; Yamanoi and Sayama 2012)
9 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 9 of 10 Conclusion We have presented PyCX, an online repository of sample codes of complex systems simulations designed primarily for higher education. It uses the Python programming language itself as a modeling and simulation platform, aiming at overcoming several limitations that arose from using existing complex systems simulation software for educational purposes. PyCX has both new and old aspects. Its technical aspect is new because it is based on a rapidly growing programming language Python and its powerful add-on modules such as NetworkX for network modeling. In the meantime, its core philosophy remains very old, advocating that everyone should be writing codes of his or her own simulation models in order to explore highly unique, novel modeling frameworks and analysis methods, just like what complex systems researchers used to do in the twentieth century. We believe that, by raising the level of basic computer programming literacy among various disciplines through PyCX and other similar projects, the complex systems science community will be able to remain highly creative and innovative in its exploratory endeavors. The PyCX project is still continuously evolving. We would highly appreciate comments, suggestions and contributions from researchers and educators who are interested in participating in it. Endnotes a Note that C, C++ and Java were too technical for most of non-computer scientists. Other commercial languages such as MATLAB and Mathematica were relatively easy to code, but neither freely available nor widely accepted across disciplines. b c But this problem can be remedied by using a pre-packaged Python software suite such as Enthought ( d e f g h i j k We usually use IDLE, Python s default text editor, for our instructions. l (as of November 19, 2012) Competing Interests The author declares that he has no competing interests. Acknowledgements We thank Chun Wong for his invaluable contribution in developing the GUI for real-time dynamic simulations. Received: 22 November 2012 Accepted: 10 December 2012 Published: 13 March 2013 References Collier, N: Repast: An extensible framework for agent simulation Hagberg, AA, Schult DA, Swart PJ: Exploring network structure, dynamics, and function using NetworkX. In Proceedings of the 7th Python in Science Conference. Edited by Varoquaux, G, Vaught T, Millman J; 2008: Hao, C, Gupta A, Paranjape R: Pooling unshared information: building expertise and social ties in decision-making groups., Paper presented at the 70th Academy of Management Annual Meeting, Session # 1727: Decision Making in Organizations. Montreal, Canada; 2010.
10 Sayama Complex Adaptive Systems Modeling 2013, 1:2 Page 10 of 10 Hiebeler, D: The Swarm simulation system and individual-based modeling. In Proceedings of the Decision Support 2001: Advanced Technology for Natural Resource Management. Toronto; workingpapers/ pdf. Luke, S, Cioffi-Revilla C, Panait L, Sullivan K: Mason: A new multi-agent simulation toolkit. In Proceedings of the 2004 SwarmFest Workshop (Vol. 8); Mischen, PA: Information sharing and knowledge sharing in interorganizational networks., Paper presented at the Computational Social Science Society Annual Conference. Tempe, AZ; Resnick, M: Turtles, Termites, and Traffic Jams: Explorations in Massively Parallel Microworlds. Cambridge, MA: MIT Press; Strogatz, SH: From Kuramoto to Crawford: exploring the onset of synchronization in populations of coupled oscillators. Physica D 2000, 143:1 20. Tisue, S, Wilensky U: NetLogo: A simple environment for modeling complexity. InProceedings of the Fifth International Conference on Complex Systems. Boston, MA; 2004: Trevorrow, A, Rokicki T, et al.: Golly Game of Life simulator Wuensche, A: Discrete dynamics lab (DDLab) Software and Manual Yamanoi, J, Sayama H: Post-merger cultural integration from a social network perspective: A computational modeling approach. Comput Math Organ Theory in press. doi: / Cite this article as: Sayama: PyCX: a Python-based simulation code repository for complex systems education. Complex Adaptive Systems Modeling :2. Submit your manuscript to a journal and benefit from: 7 Convenient online submission 7 Rigorous peer review 7 Immediate publication on acceptance 7 Open access: articles freely available online 7 High visibility within the field 7 Retaining the copyright to your article Submit your next manuscript at 7 springeropen.com
A Python-Based Simulation Code Repository for Complex Systems Education. Hiroki Sayama [email protected] http://pycx.sf.net/
A Python-Based Simulation Code Repository for Complex Systems Education Hiroki Sayama [email protected] http://pycx.sf.net/ Educators who teach complex systemsrelated courses and thus need simple,
Fall 2012 Q530. Programming for Cognitive Science
Fall 2012 Q530 Programming for Cognitive Science Aimed at little or no programming experience. Improve your confidence and skills at: Writing code. Reading code. Understand the abilities and limitations
Availability of the Program A free version is available of each (see individual programs for links).
Choosing a Programming Platform Diane Hobenshield Tepylo, Lisa Floyd, and Steve Floyd (Computer Science and Mathematics teachers) The Tasks Working Group had many questions and concerns about choosing
Introduction to Python
1 Daniel Lucio March 2016 Creator of Python https://en.wikipedia.org/wiki/guido_van_rossum 2 Python Timeline Implementation Started v1.0 v1.6 v2.1 v2.3 v2.5 v3.0 v3.1 v3.2 v3.4 1980 1991 1997 2004 2010
Roles, Responsibilities and Expectations for Developing and Teaching Online Courses in Continuing and Distance Studies
CONTINUING AND DISTANCE STUDIES FACULTY OF ARTS AND S CIENCE Roles, Responsibilities and Expectations for Developing and Teaching Online Courses in Continuing and Distance Studies www.queensu.ca/artsci_online
Computing, technology & Data Analysis in the Graduate Curriculum. Duncan Temple Lang UC Davis Dept. of Statistics
Computing, technology & Data Analysis in the Graduate Curriculum Duncan Temple Lang UC Davis Dept. of Statistics JSM 08 Statistics is much broader than we represent in our educational programs Context
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903
Programming Languages & Tools
4 Programming Languages & Tools Almost any programming language one is familiar with can be used for computational work (despite the fact that some people believe strongly that their own favorite programming
Scientific Programming, Analysis, and Visualization with Python. Mteor 227 Fall 2015
Scientific Programming, Analysis, and Visualization with Python Mteor 227 Fall 2015 Python The Big Picture Interpreted General purpose, high-level Dynamically type Multi-paradigm Object-oriented Functional
Proposal for Undergraduate Certificate in Large Data Analysis
Proposal for Undergraduate Certificate in Large Data Analysis To: Helena Dettmer, Associate Dean for Undergraduate Programs and Curriculum From: Suely Oliveira (Computer Science), Kate Cowles (Statistics),
MASTER OF PHILOSOPHY IN BIOSCIENCE ENTERPRISE
University of Cambridge: Programme Specifications Every effort has been made to ensure the accuracy of the information in this programme specification. Programme specifications are produced and then reviewed
MASTER OF SCIENCE IN HEALTH SCIENCE EDUCATION PROGRAM INFORMATION & ADMISSION REQUIRMENTS
MASTER OF SCIENCE IN HEALTH SCIENCE EDUCATION PROGRAM INFORMATION & ADMISSION REQUIRMENTS MScHSEd Program Information ; 2 PROGRAM DECSCRIPTION The Master of Science in Health Science Education Program
A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia ABSTRACT
A Color Placement Support System for Visualization Designs Based on Subjective Color Balance
A Color Placement Support System for Visualization Designs Based on Subjective Color Balance Eric Cooper and Katsuari Kamei College of Information Science and Engineering Ritsumeikan University Abstract:
Open Access Research on Application of Neural Network in Computer Network Security Evaluation. Shujuan Jin *
Send Orders for Reprints to [email protected] 766 The Open Electrical & Electronic Engineering Journal, 2014, 8, 766-771 Open Access Research on Application of Neural Network in Computer Network
Setting up Python 3.4 and numpy and matplotlib on your own Windows PC or laptop
CS-1004, Introduction to Programming for Non-Majors, C-Term 2015 Setting up Python 3.4 and numpy and matplotlib on your own Windows PC or laptop Hugh C. Lauer Adjunct Professor Worcester Polytechnic Institute
JMulTi/JStatCom - A Data Analysis Toolkit for End-users and Developers
JMulTi/JStatCom - A Data Analysis Toolkit for End-users and Developers Technology White Paper JStatCom Engineering, www.jstatcom.com by Markus Krätzig, June 4, 2007 Abstract JStatCom is a software framework
Dr. Jennifer Lerner, Northern Virginia Community College Lametha Northern, Delaware County Community College Jennifer Koster, Piedmont Virginia
Dr. Jennifer Lerner, Northern Virginia Community College Lametha Northern, Delaware County Community College Jennifer Koster, Piedmont Virginia Community College Smarthinking at NOVA s Extended Learning
WebSphere Business Modeler
Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration
Developing Research & Communication Skills
Developing Research & Communication Skills Guidelines for Information Literacy in the Curriculum Executive Summary This handbook provides colleges and universities with suggestions for how they might develop
Predictive Analytics with TIBCO Spotfire and TIBCO Enterprise Runtime for R
Predictive Analytics with TIBCO Spotfire and TIBCO Enterprise Runtime for R PREDICTIVE ANALYTICS WITH TIBCO SPOTFIRE TIBCO Spotfire is the premier data discovery and analytics platform, which provides
Teaching Portfolio. Teaching Philosophy
Teaching Portfolio Teaching Philosophy Over the course of my education, I have had the privilege of interacting with some truly excellent teachers, who have shaped my knowledge, reasoning, and technical
Scientific Programming in Python
UCSD March 9, 2009 What is Python? Python in a very high level (scripting) language which has gained widespread popularity in recent years. It is: What is Python? Python in a very high level (scripting)
CTL Online Workshop Program Referral Resource Sheet
ACADEMIC POLICIES THAT CAN AFFECT YOU AS A UMUC FACULTY MEMBER Familiarizes faculty with UMUC Academic Policies and their effect on faculty responsibilities and expectations for students Intended for all
21 st Century Curriculum and Instruction
21 st Century Curriculum and Instruction The relationship between curriculum and instruction is obviously a very close one. Curriculum is essentially a design, or roadmap for learning, and as such focuses
5 WAYS TO DOUBLE YOUR WEB SITE S SALES IN THE NEXT 12 MONTHS
HIGH CONVERSION LAB 5 WAYS TO DOUBLE YOUR WEB SITE S SALES IN THE NEXT 12 MONTHS By Ryan Berg Head Profit Scientist at HighConversionLab.com The Struggle to Build a Thriving Online Business as the Internet
Use of Graphical Programming Tools for Electrical Engineering and Technology Courses
Use of Graphical Programming Tools for Electrical Engineering and Technology Courses Salahuddin Qazi and Naseem Ishaq School of Information Systems and Engineering Technology State University of New York
University of Northern Iowa College of Business Administration Master of Business Administration Learning Assurance Program Last updated April 2009
University of Northern Iowa College of Business Administration Master of Business Administration Learning Assurance Program Last updated April 2009 1. Philosophy and Program Goals The MBA program s Learning
b. A handout for your MATESOL Conference presentation
M.A. TESOL Capstone Project Overview: The M.A. TESOL Capstone Project (CP) provides students with an opportunity to demonstrate their in-depth knowledge and practical expertise in a specific area of the
Review of Biomedical Image Processing
BOOK REVIEW Open Access Review of Biomedical Image Processing Edward J Ciaccio Correspondence: ciaccio@columbia. edu Department of Medicine, Columbia University, New York, USA Abstract This article is
Part one: Programme Specification
Part one: Programme Specification Course record information Name and level of final award: Name and level of intermediate awards: Awarding body/institution: Status of awarding body/institution: Location
Computer Science/Software Engineering
292 School of Science and Engineering Computer Science/Software Engineering Everald E. Mills, PhD, Chair Objectives The computer science program seeks to prepare students for careers that require sophisticated
Emmanouil Papangelis (Manos Papagelis)
Emmanouil Papangelis (Manos Papagelis) 276 St. George St., Toronto, ON, M5R 2P5 Tel.: +1.647.995.8500 (cell) Email: [email protected] Web: http://www.cs.toronto.edu/ papaggel Career Goals I am grateful
Programme Specification (Undergraduate) Date amended: 28 August 2015
Programme Specification (Undergraduate) Date amended: 28 August 2015 1. Programme Title(s) and UCAS code(s): BSc Mathematics and Actuarial Science (including year in industry option) 2. Awarding body or
Programming Using Python
Introduction to Computation and Programming Using Python Revised and Expanded Edition John V. Guttag The MIT Press Cambridge, Massachusetts London, England CONTENTS PREFACE xiii ACKNOWLEDGMENTS xv 1 GETTING
Curriculum Map. Discipline: Computer Science Course: C++
Curriculum Map Discipline: Computer Science Course: C++ August/September: How can computer programs make problem solving easier and more efficient? In what order does a computer execute the lines of code
Programme Specification: PGCert /PGDip / MA Freelance Photography
Programme Specification: PGCert /PGDip / MA Freelance Photography Date of Publication to Students [Enter date] NOTE: This specification provides a concise summary of the main features of the course and
Annual Activity Report
Annual Activity Report Instructions: This report should address only activities that occur in the academic year for which the report is prepared, with the exception of your curriculum vita. Your Annual
KnowledgeSTUDIO HIGH-PERFORMANCE PREDICTIVE ANALYTICS USING ADVANCED MODELING TECHNIQUES
HIGH-PERFORMANCE PREDICTIVE ANALYTICS USING ADVANCED MODELING TECHNIQUES Translating data into business value requires the right data mining and modeling techniques which uncover important patterns within
Project Management Simulation Environment for Participant-Centered Learning
Education and Practice Research Statement Dr LEE Wee Leong School of Information Systems, Singapore Management University Tel: (65) 6828-0937; Email: [email protected] 13 Jan 2015 Background My educational
Visualizing and Analyzing Massive Astronomical Datasets with Partiview
Visualizing and Analyzing Massive Astronomical Datasets with Partiview Brian P. Abbott 1, Carter B. Emmart 1, Stuart Levy 2, and Charles T. Liu 1 1 American Museum of Natural History & Hayden Planetarium,
BEYOND POINT AND CLICK THE EXPANDING DEMAND FOR CODING SKILLS BURNING GLASS TECHNOLOGIES JUNE 2016
BEYOND POINT AND CLICK THE EXPANDING DEMAND FOR CODING SKILLS BURNING GLASS TECHNOLOGIES JUNE 2016 1 EXECUTIVE SUMMARY BEYOND POINT AND CLICK BEYOND POINT AND CLICK THE EXPANDING DEMAND FOR CODING SKILLS
KnowledgeSEEKER POWERFUL SEGMENTATION, STRATEGY DESIGN AND VISUALIZATION SOFTWARE
POWERFUL SEGMENTATION, STRATEGY DESIGN AND VISUALIZATION SOFTWARE Most Effective Modeling Application Designed to Address Business Challenges Applying a predictive strategy to reach a desired business
COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa
FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa COMPUTER SCIENCE Computer Science is the study of computer programs, abstract models of computers, and applications of computing.
one Introduction chapter OVERVIEW CHAPTER
one Introduction CHAPTER chapter OVERVIEW 1.1 Introduction to Decision Support Systems 1.2 Defining a Decision Support System 1.3 Decision Support Systems Applications 1.4 Textbook Overview 1.5 Summary
Computational Science and Informatics (Data Science) Programs at GMU
Computational Science and Informatics (Data Science) Programs at GMU Kirk Borne George Mason University School of Physics, Astronomy, & Computational Sciences http://spacs.gmu.edu/ Outline Graduate Program
Game Programming for Complex System Development and ABET Accreditation Assessment
Available online at www.sciencedirect.com ScienceDirect Procedia - Social and Behavioral Sciences 00 (2014) 000 000 www.elsevier.com/locate/procedia INTE 2014 Game Programming for Complex System Development
Use of Placement Tests in College Classes
By Andrew Morgan This paper was completed and submitted in partial fulfillment of the Master Teacher Program, a 2-year faculty professional development program conducted by the Center for Teaching Excellence,
Teaching optics in electrical engineering curriculums
Teaching optics in electrical engineering curriculums by Alexander D Poularikas and Samuel Seely University of Alabama in Huntsville Electrical and Computer Engineering Department Huntsville, Alabama 35899
Core Ideas of Engineering and Technology
Core Ideas of Engineering and Technology Understanding A Framework for K 12 Science Education By Cary Sneider Last month, Rodger Bybee s article, Scientific and Engineering Practices in K 12 Classrooms,
Metrics: (1) Poorly (2) Adequately (3) Well (4) Very Well (5) With Distinction
Core Competencies Faculty name Student name Metrics: Very 1. Communication and Informatics Collect, manage and organize data to produce information and meaning that is exchanged by use of signs and symbols.
Course/programme leader: Tina Cartwright (from Sept 2014)
PROGRAMME SPECIFICATION Course record information Name and level of final award: Name and level of intermediate awards: Awarding body/institution: Status of awarding body/institution: Location of delivery:
Information Technology in teaching student s perspective
Educational mini-project Wojciech Krajewski Sonchita Bagchi Information Technology in teaching student s perspective Introduction The nature of teaching has virtually been unaltered throughout centuries,
Doctor of Education - Higher Education
1 Doctor of Education - Higher Education The University of Liverpool s Doctor of Education - Higher Education (EdD) is a professional doctoral programme focused on the latest practice, research, and leadership
Prospectus for the Essential Physics package.
Prospectus for the Essential Physics package. Essential Physics is a new textbook and learning package aimed at the College Physics audience, covering the standard introductory physics topics without using
Scaffolding Student Collaboration for Group Wiki Projects
4 Scaffolding Student Collaboration for Group Wiki Projects Rick Reo Faculty Support Consultant, Division of Instructional Technology Adjunct Faculty, Applied Information Technology and Graduate School
Instructional Design Framework CSE: Unit 1 Lesson 1
Instructional Design Framework Stage 1 Stage 2 Stage 3 If the desired end result is for learners to then you need evidence of the learners ability to then the learning events need to. Stage 1 Desired Results
Encourage students interest in computer science, game design, engineering and art with ProjectFUN!
2014 Encourage students interest in computer science, game design, engineering and art with ProjectFUN! Letter from the President Dear Parents and Students, Welcome to the 19th year of DigiPen s ProjectFUN
Bitstrips for Schools http://www.bitstripsforschools.com
The SAMR Model: Integrating Bitstrips for Schools Ministry Licensed Resource Title: Description of resource Bitstrips for Schools http://www.bitstripsforschools.com Bitstrips for Schools is an online educational
Numerical Methods in MATLAB
Numerical Methods in MATLAB Center for Interdisciplinary Research and Consulting Department of Mathematics and Statistics University of Maryland, Baltimore County www.umbc.edu/circ Winter 2008 Mission
DATA SCIENCE CURRICULUM WEEK 1 ONLINE PRE-WORK INSTALLING PACKAGES COMMAND LINE CODE EDITOR PYTHON STATISTICS PROJECT O5 PROJECT O3 PROJECT O2
DATA SCIENCE CURRICULUM Before class even begins, students start an at-home pre-work phase. When they convene in class, students spend the first eight weeks doing iterative, project-centered skill acquisition.
Leadership Development Catalogue
The TrainingFolks Approach The importance of superior management, leadership and interpersonal skills are critical to both individual and organizational success. It is also critical to apply these skills
How To Teach The Cambridge Philosophy Course
Programme Specifications MASTER OF PHILOSOPHY PUBLIC POLICY 1 Awarding body University of Cambridge 2 Teaching institution Department of Politics and International Relations 3 Accreditation details None
CTL 2009 ADVANCED PROGRAM REPORT
CTL 2009 ADVANCED PROGRAM REPORT 1 Because the Office of Undergraduate Studies is now requiring program assessment reports that are similar to CTL program assessment reports; The Office of Research, Evaluation,
Stephen M. Fiore, Ph.D. University of Central Florida Cognitive Sciences, Department of Philosophy and Institute for Simulation & Training
Stephen M. Fiore, Ph.D. University of Central Florida Cognitive Sciences, Department of Philosophy and Institute for Simulation & Training Fiore, S. M. (2015). Collaboration Technologies and the Science
STANDARDS FOR THE MASTER OF LIBRARY SCIENCE DEGREE/ SCHOOL LIBRARY MEDIA COORDINATOR LICENSE
STANDARDS FOR THE MASTER OF LIBRARY SCIENCE DEGREE/ SCHOOL LIBRARY MEDIA COORDINATOR LICENSE Note: The master of library science degree is an entry-level requirement for all North Carolina school library
Source Code Translation
Source Code Translation Everyone who writes computer software eventually faces the requirement of converting a large code base from one programming language to another. That requirement is sometimes driven
MONROE TOWNSHIP PUBLIC SCHOOLS WILLIAMSTOWN, NEW JERSEY. Digital Media and Technology Grade 8
MONROE TOWNSHIP PUBLIC SCHOOLS WILLIAMSTOWN, NEW JERSEY Williamstown Middle School Digital Media and Technology Grade 8 September 2010 Written by: Michael Spano Supervisor of Curriculum and Instruction
MASTER OF PHILOSOPHY PUBLIC POLICY. Introduction
University of Cambridge: Programme Specifications Every effort has been made to ensure the accuracy of the information in this programme specification. Programme specifications are produced and then reviewed
NAGT Who are we? http://nagt.org
NAGT Who are we? http://nagt.org by Janis D. Treworgy President of NAGT 2010 2011 Professor of Geology Principia College, Elsah, IL [email protected] As professional geoscientists, you may daily
1. To develop the multidisciplinary skills essential to produce the trained experts in cloud computing and big data required by academia and industry
PROGRAMME SPECIFICATION 1 Awarding Institution Newcastle University 2 Teaching Institution Newcastle University 3 Final Award MRes / PGDip 4 Programme Title Cloud Computing for Big Data 5 Programme Code
CREDIT TRANSFER: GUIDELINES FOR STUDENT TRANSFER AND ARTICULATION AMONG MISSOURI COLLEGES AND UNIVERSITIES
CREDIT TRANSFER: GUIDELINES FOR STUDENT TRANSFER AND ARTICULATION AMONG MISSOURI COLLEGES AND UNIVERSITIES With Revisions as Proposed by the General Education Steering Committee [Extracts] A. RATIONALE
A QTI editor integrated into the netuniversité web portal using IMS LD
Giacomini Pacurar, E., Trigang, P & Alupoaie, S. (2005). A QTI editor integrated into the netuniversité web portal using IMS LD Journal of Interactive Media in Education 2005(09). [jime.open.ac.uk/2005/09].
5 Programme Accredited by: Appling to be accredited by Chartered Institute of Personnel and Development
1 Awarding Institution University of Newcastle upon Tyne 2 Teaching Institution University of Newcastle upon Tyne 3 Final Award MA 4 Programme title International Human Resource Management 5 Programme
IBM SAP International Competence Center. Load testing SAP ABAP Web Dynpro applications with IBM Rational Performance Tester
IBM SAP International Competence Center Load testing SAP ABAP Web Dynpro applications with IBM Rational Performance Tester Ease of use, excellent technical support from the IBM Rational team and, of course,
Guidelines for the Approval of State University General Education Requirement Courses
Guidelines for the Approval of State University General Education Requirement Courses For each State University General Education Requirement (SUNY GER) category, the Task Forcedefined learning outcomes
Author Guidelines: What to Submit & How
Author Guidelines: What to Submit & How Cengage Learning is always looking for fresh new ideas to improve our current learning solutions. We would like to hear from you about how we can develop new materials
LEARNING ASSURANCE USING BUSINESS SIMULATIONS APPLICATIONS TO EXECUTIVE MANAGEMENT EDUCATION
LEARNING ASSURANCE USING BUSINESS SIMULATIONS APPLICATIONS TO EXECUTIVE MANAGEMENT EDUCATION Owen P. Hall, Jr. Kenneth Ko Pepperdine University ABSTRACT Today the number of working managers returning to
Support and Process for Developing Online and Blended Courses
CONTINUING AND DISTANCE STUDIES FACULTY OF ARTS AND SCIENCE www.queensu.ca/artsci_online Support and Process for Developing Online and Blended Courses A. Introduction to Continuing and Distance Studies......
PROGRAMME SPECIFICATION
PROGRAMME SPECIFICATION 1 Awarding Institution Newcastle University 2 Teaching Institution Newcastle University 3 Final Award Master of Science (MSc) 4 Programme Title Advanced Computer Science 5 Programme
Department/Academic Unit: Economics Degree Program: MA
Department/Academic Unit: Economics Degree Program: MA Degree Level Expectations, Learning Outcomes, Indicators of Achievement and the Program Requirements that Support the Learning Outcomes Expectations
CPN Tools 4: A Process Modeling Tool Combining Declarative and Imperative Paradigms
CPN Tools 4: A Process Modeling Tool Combining Declarative and Imperative Paradigms Michael Westergaard 1,2 and Tijs Slaats 3,4 1 Department of Mathematics and Computer Science, Eindhoven University of
Blending e-learning with face-to-face teaching: the best of both worlds or just twice the work?
Blending e-learning with face-to-face teaching: the best of both worlds or just twice the work? Elena Springall 1 1 Gerstein Science Information Centre, University of Toronto Libraries, Toronto, Canada
Instructional Design Tips for Virtually Teaching Practical SkillsPeter Fenrich British Columbia Institute of Technology, Burnaby, Canada
Proceedings of the 2004 Informing Science and IT Education Joint Conference Instructional Design Tips for Virtually Teaching Practical SkillsPeter Fenrich British Columbia Institute of Technology, Burnaby,
FGSR Minimum Thesis Formatting Requirements
FACULTY OF GRADUATE STUDIES AND RESEARCH FGSR Minimum Thesis Formatting Requirements As of April 3, 2014 Your thesis is your work. Matters of style are matters for you to decide, subject to certain minimum
