Basic User's Guide on how to set up Ostrich for Model Calibration and Optimization

Size: px
Start display at page:

Download "Basic User's Guide on how to set up Ostrich for Model Calibration and Optimization"

Transcription

1 Basic User's Guide on how to set up Ostrich for Model Calibration and Optimization Muluneh A. Mekonnen (Global Institute for Water Security, University of Saskatchewan) February 2, Introduction OSTRICH (Optimization Software Toolkit for Research Involving Computational Heuristics) is developed by Prof L. Shawn Matott (previously assistant professor at the Department of Civil and Environmental Engineering, University of Waterloo and now computational scientist at the Center for Computational Research, University at Bualo). OSTRICH has been created as a model-independent multi-algorithm optimization and parameter estimation program that allows researchers and eld-practitioners to automate the processes of model calibration and design optimization. Being model-independent, OSTRICH can be congured to operate with any modelling program that utilizes text-based input and output le formats. This basic user's guide provides a working knowledge of using Ostrich to calibrate or evaluate a model that uses text-based input and output le formats such as the MESH modelling system. For further details of the Ostrich program and the available optimization algorithms readers can refer to the Ostrich website ( 2 Minimum requirements to setup model calibration (or model evaluation) job using Ostrich The following three tools should be available to set up model calibration or model evaluation job using Ostrich: ˆ Ostrich executable - the executable for Ostrich is available for dierent operating systems and can be downloaded from the Ostrich home page, ˆ Model executable - this is the model to be calibrated or evaluated, ˆ Batch les - these are les to automate and guide the model calibration process, and ˆ Executable to compute the value of the objective function to be optimized (optional) - this executable is required if the model executable doesn't have an internal objective function algorithm (to compute the value for the objective function) or if the user needs to use his own objective function algorithm. How does it work? Remember that Ostrich can be congured to operate with any modelling program that utilizes text-based input and output le formats. This means that every time the parameter value changes then the textbased input le through which the parameter value will be read by the model should be modied. So, there are two basic components in the Ostrich program: 1) algorithms for searching parameter values, and 2)a text search and replace algorithm that updates the input les based on the generated parameter values. Being familiar with the second component of Ostrich is sucient to set up model calibration as well as model evaluation tasks. So, this user's guide will mainly clarify the second component of Ostrich. 1

2 .1 Where does Ostrich get all the required information? For every model calibration (model evaluation) setup the Ostrich program gets all the required information from its own input le called 'ostin.txt'. Below is a sample 'ostin.txt' le for the purpose of demonstration. Note that lines that start with the pound character (#) are comment lines and are ignored by the Ostrich program. 1 # S e c t i o n 1 2 ProgramType DDS 4 # S e c t i o n 2 5 ModelExecutable. / model_executable 7 # S e c t i o n 8 B e g i n F i l e P a i r s 9 input1. t p l ; input1. txt 10 EndFilePairs # S e c t i o n 4 1 BeginParams 14 #name i n i t. lower upper t r a n s f o r m a t i o n s format 15 par1 random none none none F11. 1 par2 random none none none F EndParams # S e c t i o n 5 20 BeginInitParams EndInitParams 2 24 # S e c t i o n 25 BeginResponseVars 2 #name f i l e n a m e keyword l i n e c o l token 27 SAE function_ out. txt ; OST_NULL 0 1 ' ' 28 EndResponseVars 29 0 # S e c t i o n 7 1 BeginGCOP 2 CostFunction SAE PenaltyFunction APM 4 EndGCOP 5 # S e c t i o n 8 7 BeginDDSAlg 8 PerturbationValue MaxIterations UseInitialParamValues 41 EndDDSAlg A closer look at the above le provides a clear picture on how Ostrich works. Here follows the section by section explanation: ˆ Optimization algorithm: At the beginning of the le the 'ProgramType' keyword is used to specify the optimization algorithm. In this case DDS (Dynamically Dimensioned Search algorithm (Tolson and Shoemaker, 2007)) is selected. The DDS options such as maximum iterations are provided at the end of the le using appropriate keywords (refer to the Ostrich manual for the dierent keywords available for the Ostrich Program). ˆ Model: Then the 'ModelExecutable' keyword is used to specify the model to be calibrated. This can be the model executable itself or a batch le which will in turn run the model. In this case the executable (or the batch le) is assumed to exist in the same directory as the 'ostin.txt' le. If it resides in a separate directory then the complete path should be provided. ˆ Changing input les: The third section enclosed by 'BeginFilePairs' and 'EndFilePairs' where the model input le (s) whose parameter values are supposed to change (and their corresponding template les) will be specied. In this case parameter values in one of the model input les 'input1.txt' will be changing. The user needs to prepare a template le input1.tpl which is exactly the same as input1.txt except that keywords (to be discussed in the following section) are specied in the template le at places where parameter values are required to change. ˆ keywords for parameters: The fourth section enclosed by 'BeginParams' and 'EndParams' is where keywords are assigned for the parameters to be changed. In this section the parameter ranges 2

3 are specied as well as the format based on which the values are to be printed at the respective locations of the keywords. The parameter keywords specied in this section should exist in the template les. Below is a sample le for input1.tpl le that is consistent with the above 'ostin.txt' specication par par ˆ Initial parameter values: The fth section contains user provided initial values enclosed by 'BeginInitParams' and 'EndInitParams' keywords. If Ostrich uses these initial values then the rst content of 'input1.txt' le produced from the template le will appear as follows: ˆ Value for objective function: Sections through to 7 are such that the value of the objective function that will be minimized is going to be read from the le 'function_out.txt'. With the 'ostin.txt' le, model input, model executable and the Ostrich executable les in place then double clicking the Ostrich executable should start the model calibration or model evaluation process. However, for practical applications and to facilitate saving of dierent outputs the Ostrich run can be wrap up through a batch le (like Ostrich.bat as is being used for the MESH modelling system) and other extra batch les (like save_best.bat and OST-MESH.bat les which are commonly being used for the MESH modelling system). In this case double clicking the 'Ostrich.bat' batch le will start the calibration/evaluation process. 4 Ostrich setup for the MESH model - for Windows This section provides a quick and basic guidance to setup Ostrich for the MESH model calibration or evaluation. Users can download all the necessary les and a test case from the MESH wiki site (under the MESH users category and under 'Calibration using Ostrich' sub-category). The setup can easily be adapted to any specic needs. The les used here are taken from the test case. Note that this guidance and Ostrich setup for the MESH model assumes that the MESH executable, the MESH input les and the MESH forcing les together with the 'ost' sub-directory reside under the same directory. And also the 'ost' sub-directory is assumed to contain: ˆ the 'ostin.txt' le, ˆ the template les, and ˆ the various batch les and the Ostrich executables (Ostrich.exe and OstrichMonitor.exe).

4 4.1 Description of required les First we need to have a working MESH model setup, meaning that we need to have a directory where MESH input les, forcing les and the MESH executable. Make sure that the MESH model successfully runs in that directory. Then we need to have an additional 'ost' directory that will contain the main Ostrich input le 'ostin.txt' (refer to the description given earlier in this document), template les (to be explained in the following section), the Ostrich executable and various batch les (also to be explained below). 4.2 Template les Template les are exact copies of the input les where we want parameter values to change except we put keywords at places where we want the parameter values to change. Refer to the template les included in the test case that you downloaded from the MESH wiki site. We have two template les under the 'ost' directory: ˆ MESH_parameters_CLASS.tpl - the following keywords are used: 1 xslp1 2 wfci1 xslp2 4 wfci2 ˆ MESH_parameters_hydrology.tpl - the following keyword is used: 1 _WF_R2 The 'ostin.txt' le should contain and provide the limits and formats of the above keywords as described below. 4. ostin.txt le 1 ProgramType DDS 2 #ProgramType ModelEvaluation ObjectiveFunction GCOP 4 ModelExecutable OST MESH. bat 5 PreserveBestModel save_best. bat 7 B e g i n F i l e P a i r s 8 MESH_parameters_CLASS. t p l ; MESH_parameters_CLASS. i n i 9 MESH_parameters_hydrology. t p l ; MESH_parameters_hydrology. i n i 10 EndFilePairs BeginParams 1 #name i n i t. lower upper t r a n s f o r m a t i o n s format 14 xslp1 random none none none E wfci1 random none none none E xslp2 random none none none E wfci2 random none none none E _WF_R2 random none none none F. 19 EndParams BeginInitParams E E 4. 0E E EndInitParams BeginResponseVars 2 #name f i l e n a m e keyword l i n e c o l token 27 SAE function_ out. txt ; OST_NULL 0 1 ', ' 28 EndResponseVars 29 0 BeginGCOP 1 CostFunction SAE 2 PenaltyFunction APM EndGCOP 4 5 BeginDDSAlg PerturbationValue MaxIterations UseInitialParamValues 9 EndDDSAlg 4

5 As shown in the 'ostin.txt' le it is clear to see that: ˆ the DDS program will be used for calibration (top) with the specied DDS parameters (bottom), ˆ the objective function will be handled by the GCOP algorithm (refer to the Ostrich manual for further details) based on the SAE value to be read from 'function_out.txt' le, ˆ the OST-MESH.bat le will run the MESH model, ˆ the save_best.bat le will save user specied les for the best runs, ˆ two template les (MESH_parameters_CLASS.tpl and MESH_parameters_hydrology.tpl) will produce the corresponding 'ini' les by changing the indicated keywords, and ˆ parameter values will be constrained by the minimum and maximum bounds and the values will be written according to the specied format (Note that for users information the format of all the parameters in each le is shown at the end of every line). 4.4 Ostrich.bat le As shown below the 'Ostrich.bat' le creates an output directory, launches the Ostrich monitor (facilitates visualization of Ostrich runs) and the Ostrich executable and nally moves output les to the output directory. o f f Ostrich Optimizaton Software Toolkit 4 REM Create s u b d i r e c t o r y f o r Ostrich output 5 SET DIR_OUTPUT=OUTPUT IF NOT EXIST %DIR_OUTPUT% mkdir %DIR_OUTPUT% 7 8 REM Delete p r e v i o u s l y generated output f i l e s 9 IF EXIST OstDone. txt DEL /Q OstDone. txt 10 IF EXIST OstQuit. txt DEL /Q OstQuit. txt 11 IF EXIST OstErrors0. txt DEL /Q OstErrors0. txt 12 IF EXIST OstOutput0. txt DEL /Q OstOutput0. txt 1 IF EXIST OstModel0. txt DEL /Q OstModel0. txt 14 IF EXIST OstExeOut. txt DEL /Q OstExeOut. txt 15 IF EXIST OstStatus0. txt DEL /Q OstStatus0. txt 1 IF EXIST OstSaveOut. txt DEL /Q OstSaveOut. txt 17 IF EXIST OstGcopOut. txt DEL /Q OstGcopOut. txt REM Launch the Ostrich Monitoring program 20 START "OSTRICH Monitor " OstrichMonitor. exe REM Launch Ostrich, wait u n t i l i t completes 2 START /WAIT "OSTRICH" /MIN Ostrich. exe 24 echo Done! > OstDone. txt 25 2 REM Wait a few seconds to allow monitor to d e t e c t 27 REM completion and c l o s e down 28 ping n 2 w 000 > nul 29 0 REM Copy Ostrich output i n t o i t s own s u b d i r e c t o r y 1 IF EXIST OstDone. txt move OstDone. txt %DIR_OUTPUT%\OstDone. txt 2 IF EXIST OstQuit. txt move OstQuit. txt %DIR_OUTPUT%\OstQuit. txt IF EXIST OstErrors0. txt move OstErrors0. txt %DIR_OUTPUT%\OstErrors0. txt 4 IF EXIST OstOutput0. txt move OstOutput0. txt %DIR_OUTPUT%\OstOutput0. txt 5 IF EXIST OstModel0. txt move OstModel0. txt %DIR_OUTPUT%\OstModel0. txt IF EXIST OstExeOut. txt move OstExeOut. txt %DIR_OUTPUT%\OstExeOut. txt 7 IF EXIST OstStatus0. txt move OstStatus0. txt %DIR_OUTPUT%\OstStatus0. txt 8 IF EXIST OstSaveOut. txt move OstSaveOut. txt %DIR_OUTPUT%\OstSaveOut. txt 9 IF EXIST OstGcopOut. txt move OstGcopOut. txt %DIR_OUTPUT%\OstGcopOut. txt 4.5 OST-MESH.bat le The 'OST-MESH.bat' le changes the directory one level up, copies the modied 'ini' le, runs the MESH model, copies the 'function_out.txt' to the 'ost' directory and nally changes the directory back to the 'ost' directory. 5

6 o f f Driver program f o r MESH C a l i b r a t i o n 4 REM MESH f i l e s are up one d i r e c t o r y 5 cd.. 7 REM F i l e name f o r the MESH e x e c u t a b l e 8 s e t MeshExecutable=1 00. exe 9 10 REM Bad value f o r model crash case 11 s e t BAD=1.0 e REM Delete p r e v i o u s l y generated f i l e f o r o b j e c t i v e f u n c t i o n value 14 d e l /q function_ out. txt 15 1 REM Copy input f i l e s c r e a t e d by Ostrich 17 copy o s t \MESH_parameters_CLASS. i n i. \ MESH_parameters_CLASS. i n i 18 copy o s t \MESH_parameters_hydrology. i n i. \ MESH_parameters_hydrology. i n i REM Run MESH model 21.\% MeshExecutable% 22 2 REM Compute the o b j e c t i v e f u n c t i o n. In t h i s case the MESH output 24 REM ' function_ out. txt ' i s used. Assign a bad value to the 25 REM ' function_out. txt ' f i l e i f MESH c r a s h e s. 2 i f not e x i s t function_ out. txt echo %BAD% > function_ out. txt 27 copy function_ out. txt o s t \ function_ out. txt REM Return to o s t r i c h working d i r e c t o r y 0 cd.. \ o s t 4. save_best.bat le The 'save_best.bat' le saves les of user interest. o f f SAVE BEST SOLUTION 4 REM Create s u b d i r e c t o r y to save the best s o l u t i o n 5 i f not e x i s t best mkdir best 7 REM Copy the f i l e s f o r the best s o l u t i o n to the best 8 REM s u b d i r e c t o r y 9 copy.. \ MESH_parameters_CLASS. i n i best \MESH_parameters_CLASS. i n i 10 copy.. \ MESH_parameters_hydrology. i n i best \MESH_parameters_hydrology. i n i 11 copy.. \ BASINAVG1\MESH_output_echo_print. txt best \MESH_output_echo_print. txt 12 copy.. \ BASINAVG1\MESH_output_streamflow. csv best \MESH_output_streamflow. csv 1 echo done! 4.7 Ostrich outputs There are a number of Ostrich output les. The author of this manual has the experience of looking the 'OstExeOut.txt' le to make sure that the MESH model is being run properly by the Ostrich program. And most importantly if there are errors (besides checking the 'OstErrors0.txt' le) the then this le provides useful information as to where to look for and correct the errors. The other le is the 'OstModel0.txt' le where all the parameter values and the corresponding objective function values are saved. 4.8 Setting MESH model calibration using Ostrich The easiest way of setting the MESH model for calibration using Ostrich is to: ˆ download the 'Ostrich_setup_and_test_case.zip' folder from the above mentioned MESH wiki site, ˆ run the test case (by double clicking the 'Ostrich.bat' le under the 'ost' directory) as is and get yourself familiarized with the Ostrich outputs, ˆ replace the input and forcing les with your own les;

7 ˆ prepare template les of your interest and modify the 'ostin.txt' accordingly, and ˆ again double click the 'Ostrich.bat' le under the 'ost' directory (Note that if you want the value of the objective function to be calculated by MESH then you need to set the 'AUTOCALIBRA- TIONFLAG' in the 'MESH_input_run_options.ini' le to 1. This is the sum of absolute value of errors between observed and simulated stream ow), and ˆ if everything works as expected then setup the model calibration based on parameters of your interest. References Bryan A. Tolson and Christine A. Shoemaker. Dynamically dimensioned search algorithm for computationally ecient watershed model calibration. Water Resources Research, 4,

Introduction to Linux

Introduction to Linux Introduction to Linux The command-line interface A command-line interface (CLI) is a type of interface, that is, a way to interact with a computer. Window systems, punched cards or a bunch of dials, buttons

More information

5b) Automatic Calibration (Optimizing model parameters)

5b) Automatic Calibration (Optimizing model parameters) 5b) Automatic Calibration (Optimizing model parameters) Dr. Bryan Tolson http://www.civil.uwaterloo.ca/btolson/ CIVE 781: Principles of Hydrologic Modelling University of Waterloo Jun 19 24, 2017 Methodology

More information

RhinoCFD Tutorial. Flow Past a Sphere

RhinoCFD Tutorial. Flow Past a Sphere RhinoCFD Tutorial Flow Past a Sphere RhinoCFD Ocial document produced by CHAM September 26, 2017 Introduction Flow Past a Sphere This tutorial will describe a simple calculation of ow around a sphere and

More information

15-122: Principles of Imperative Computation

15-122: Principles of Imperative Computation 15-122: Principles of Imperative Computation Lab 0 Navigating your account in Linux Tom Cortina, Rob Simmons Unlike typical graphical interfaces for operating systems, here you are entering commands directly

More information

1. Create a SWAT project

1. Create a SWAT project SWAT-WB is a modified version of the Soil & Water Assessment Tool, which was developed with the explicit goal of accurately modeling surface runoff generation without using the USDA-NRCS Curve Number (CN)

More information

CPSC 320 Sample Solution, Playing with Graphs!

CPSC 320 Sample Solution, Playing with Graphs! CPSC 320 Sample Solution, Playing with Graphs! September 23, 2017 Today we practice reasoning about graphs by playing with two new terms. These terms/concepts are useful in themselves but not tremendously

More information

Topic C. Communicating the Precision of Measured Numbers

Topic C. Communicating the Precision of Measured Numbers Topic C. Communicating the Precision of Measured Numbers C. page 1 of 14 Topic C. Communicating the Precision of Measured Numbers This topic includes Section 1. Reporting measurements Section 2. Rounding

More information

Java OOP: Java Documentation

Java OOP: Java Documentation OpenStax-CNX module: m45117 1 Java OOP: Java Documentation R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Learn to use

More information

ACS documents 1, 2, and 3. These documents are available in CH215. What is EMACS? ::::::::::::::::::::::::::::::::::::::::::::::::::::: 2

ACS documents 1, 2, and 3. These documents are available in CH215. What is EMACS? ::::::::::::::::::::::::::::::::::::::::::::::::::::: 2 1 4. Beginning to Use EMACS Academic Computing Support Tennessee Technological University Prerequisite Contents ACS documents 1, 2, and 3. These documents are available in CH215. What is EMACS? :::::::::::::::::::::::::::::::::::::::::::::::::::::

More information

An Interactive Desk Calculator. Project P2 of. Common Lisp: An Interactive Approach. Stuart C. Shapiro. Department of Computer Science

An Interactive Desk Calculator. Project P2 of. Common Lisp: An Interactive Approach. Stuart C. Shapiro. Department of Computer Science An Interactive Desk Calculator Project P2 of Common Lisp: An Interactive Approach Stuart C. Shapiro Department of Computer Science State University of New York at Bualo January 25, 1996 The goal of this

More information

Impact File Import Instructions

Impact File Import Instructions Impact File Import Instructions Step One: Fill Out the Import Template Utilize the Impact File Import template to place the required and optional information into the correct format. Note: You can download

More information

1 Objective of this Report Proteum version 1.2 C is a mutation based tool that consists of independent functional modules (programs) characterized fro

1 Objective of this Report Proteum version 1.2 C is a mutation based tool that consists of independent functional modules (programs) characterized fro Proteum -Version 1.2 C Running Program Tests Trough Shell Scripts Marcio Eduardo Delamaro 1 Jose Carlos Maldonado 2 March 20, 1999 1 Doctoral level student at IFSC-USP, S~ao Carlos - SP, Brazil. Financial

More information

Regular Expressions. Regular Expression Syntax in Python. Achtung!

Regular Expressions. Regular Expression Syntax in Python. Achtung! 1 Regular Expressions Lab Objective: Cleaning and formatting data are fundamental problems in data science. Regular expressions are an important tool for working with text carefully and eciently, and are

More information

Manual IBANC Software - Version 3.0.0

Manual IBANC Software - Version 3.0.0 Manual IBANC Software - Version 3.0.0 XEU.com B.V. IBANC software is a software product that allows you to create credit transfer and direct debit batches easily and exibly that conform to the new SEPA

More information

15-122: Principles of Imperative Computation, Spring 2016

15-122: Principles of Imperative Computation, Spring 2016 15-122 Programming 3 Page 1 of 8 15-122: Principles of Imperative Computation, Spring 2016 Programming 3: Images Due: Thursday 4 th February, 2016 by 22:00 This programming assignment will have you using

More information

ElmerParam Manual. Copyright. 1 Introduction. 2 General overview. Erik Edelmann and Peter Råback CSC IT Center for Science.

ElmerParam Manual. Copyright. 1 Introduction. 2 General overview. Erik Edelmann and Peter Råback CSC IT Center for Science. ElmerParam Manual Erik Edelmann and Peter Råback CSC IT Center for Science May 17, 2018 Copyright This document is licensed under the Creative Commons Attribution-No Derivative Works 3.0 License. To view

More information

Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes)

Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes) Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes) A compound object is two or more files bound together with a CONTENTdm-created XML structure. When you create and add compound

More information

WebQuest. Question-File Quick-Start Instructions

WebQuest. Question-File Quick-Start Instructions Contents WebQuest Question-File Quick-Start Instructions 1 Introduction 1 2 Where to Start 2 2.1 Questionnaire on Paper............................. 2 2.2 Questionnaire in Electronic Format (Word, PDF,

More information

When talking about how to launch commands and other things that is to be typed into the terminal, the following syntax is used:

When talking about how to launch commands and other things that is to be typed into the terminal, the following syntax is used: Linux Tutorial How to read the examples When talking about how to launch commands and other things that is to be typed into the terminal, the following syntax is used: $ application file.txt

More information

N1GE6 Checkpointing and Berkeley Lab Checkpoint/Restart. Liang PENG Lip Kian NG

N1GE6 Checkpointing and Berkeley Lab Checkpoint/Restart. Liang PENG Lip Kian NG N1GE6 Checkpointing and Berkeley Lab Checkpoint/Restart Liang PENG Lip Kian NG N1GE6 Checkpointing and Berkeley Lab Checkpoint/Restart Liang PENG Lip Kian NG APSTC-TB-2004-005 Abstract: N1GE6, formerly

More information

New, standard features of DesignMerge Pro!

New, standard features of DesignMerge Pro! Layout & Imposition Options New, standard features of DesignMerge Pro! The latest release of DesignMerge Pro now includes a new set of Layout and Imposition features that can be used to streamline your

More information

Introduction to Python - Part I CNV Lab

Introduction to Python - Part I CNV Lab Introduction to Python - Part I CNV Lab Paolo Besana 22-26 January 2007 This quick overview of Python is a reduced and altered version of the online tutorial written by Guido Van Rossum (the creator of

More information

VMD Documentation. Mehrdad Youse (CCIT Visualization Group)

VMD Documentation. Mehrdad Youse (CCIT Visualization Group) VMD Documentation Mehrdad Youse (CCIT Visualization Group) May 22, 2017 Abstract In this documentation, the basic and intermediate documentation of VMD molecular dynamics visualization software from University

More information

Java: Comment Text. Introduction. Concepts

Java: Comment Text. Introduction. Concepts Java: Comment Text Introduction Comment text is text included in source code that is ignored by the compiler and does not cause any machine-language object code to be generated. It is written into the

More information

How to edit custom layouts in Blurb *

How to edit custom layouts in Blurb * OpenStax-CNX module: m35053 1 How to edit custom layouts in Blurb * David Waldo This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Blurb BookSmart

More information

HighQSoft. Avalon. Service Installation. Version 1.5

HighQSoft. Avalon. Service Installation. Version 1.5 HighQSoft Avalon Version 1.5 Service Installation Andreas Hofmann 11.10.2012 Inhaltsverzeichnis 1 Audience 1 2 Introduction 3 3 System Requirements 5 4 Windows-Installation 7 4.1 Language.........................................

More information

CSCI544, Fall 2016: Assignment 2

CSCI544, Fall 2016: Assignment 2 CSCI544, Fall 2016: Assignment 2 Due Date: October 28 st, before 4pm. Introduction The goal of this assignment is to get some experience implementing the simple but effective machine learning model, the

More information

Cluster quality 15. Running time 0.7. Distance between estimated and true means Running time [s]

Cluster quality 15. Running time 0.7. Distance between estimated and true means Running time [s] Fast, single-pass K-means algorithms Fredrik Farnstrom Computer Science and Engineering Lund Institute of Technology, Sweden arnstrom@ucsd.edu James Lewis Computer Science and Engineering University of

More information

Tutorial - Optimizing Models With modefrontier

Tutorial - Optimizing Models With modefrontier Tutorial - Optimizing Models With modefrontier Introduction This tutorial will demonstrate how to run Hopsan simulations from modefrontier 1, a multi-objective optimization environment. This makes it possible

More information

SPSS Tutorial - How to Perform an Offline License Activation on a Windows Computer

SPSS Tutorial - How to Perform an Offline License Activation on a Windows Computer SPSS Tutorial - How to Perform an Offline License Activation on a Windows Computer Only Computers That DO NOT Have an Internet Connection Need to Do This If the computer you want to activate SPSS on does

More information

Chapter 3: The IF Function and Table Lookup

Chapter 3: The IF Function and Table Lookup Chapter 3: The IF Function and Table Lookup Objectives This chapter focuses on the use of IF and LOOKUP functions, while continuing to introduce other functions as well. Here is a partial list of what

More information

The Project. 1.The Project Premiere Pro 1.5 H O T

The Project. 1.The Project Premiere Pro 1.5 H O T 1.The Project Premiere Pro 1.5 H O T 1 The Project What Is a Project? Project Presets Creating a New Project The Premiere Pro Workspace All of the editing work you do in Premiere Pro will be done in a

More information

Introduction to REXX Programming Language

Introduction to REXX Programming Language Introduction to REXX Programming Language 1 Introduction to REXX Clarence Burg September 9, 2011 REXX is a programming language that has much less syntax and extraneous content than other available languages.

More information

SIOS (Shop Interface to Other Software)

SIOS (Shop Interface to Other Software) SIOS (Shop Interface to Other Software) User Manual PhD. Guillem Plasencia Gallofré Lead Molecular Design, S.L. I. Introduction SIOS (Shop Interface to Other Software), as its name says, is an interface

More information

Using Flex 3 in a Flex 4 World *

Using Flex 3 in a Flex 4 World * OpenStax-CNX module: m34631 1 Using Flex 3 in a Flex 4 World * R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Learn how

More information

id Marking US Page 1

id Marking US Page 1 id Marking So you ve bought the 3M Dynatel EMS id Marking System! As a utility owner, or service provider, you have purchased the id markers and probably a piece of equipment that will find the marker

More information

STATS Data Analysis using Python. Lecture 15: Advanced Command Line

STATS Data Analysis using Python. Lecture 15: Advanced Command Line STATS 700-002 Data Analysis using Python Lecture 15: Advanced Command Line Why UNIX/Linux? As a data scientist, you will spend most of your time dealing with data Data sets never arrive ready to analyze

More information

for Structured Documents in SYNDOC environment Eila Kuikka, Jouni Mykkanen Arto Ryynanen, Airi Salminen Report A

for Structured Documents in SYNDOC environment Eila Kuikka, Jouni Mykkanen Arto Ryynanen, Airi Salminen Report A UNIVERSITY OF JOENSUU DEPARTMENT OF COMPUTER SCIENCE Report Series A Implementation of Two-Dimensional Filters for Structured Documents in SYNDOC environment Eila Kuikka, Jouni Mykkanen Arto Ryynanen,

More information

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client.

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client. (Published in WebNet 97: World Conference of the WWW, Internet and Intranet, Toronto, Canada, Octobor, 1997) WebView: A Multimedia Database Resource Integration and Search System over Web Deepak Murthy

More information

PeopleEnroll v3.1 Installation and Configuration Guide

PeopleEnroll v3.1 Installation and Configuration Guide PeopleEnroll v3.1 Installation and Configuration Guide Instructions to Install and Configure PeopleEnroll v3.1 Web Active Directory, LLC Contents Overview... 2 Installation Support... 2 System Requirements...

More information

CPSC W2 Midterm #2 Sample Solutions

CPSC W2 Midterm #2 Sample Solutions CPSC 320 2014W2 Midterm #2 Sample Solutions March 13, 2015 1 Canopticon [8 marks] Classify each of the following recurrences (assumed to have base cases of T (1) = T (0) = 1) into one of the three cases

More information

Deep Learning for Visual Computing Prof. Debdoot Sheet Department of Electrical Engineering Indian Institute of Technology, Kharagpur

Deep Learning for Visual Computing Prof. Debdoot Sheet Department of Electrical Engineering Indian Institute of Technology, Kharagpur Deep Learning for Visual Computing Prof. Debdoot Sheet Department of Electrical Engineering Indian Institute of Technology, Kharagpur Lecture - 05 Classification with Perceptron Model So, welcome to today

More information

Security Correlation Server Backup and Recovery Guide

Security Correlation Server Backup and Recovery Guide CorreLog Security Correlation Server Backup and Recovery Guide This guide provides information to assist administrators and operators with backing up the configuration and archive data of the CorreLog

More information

GAP CLOSING. Grade 9. Facilitator s Guide

GAP CLOSING. Grade 9. Facilitator s Guide GAP CLOSING Grade 9 Facilitator s Guide Topic 3 Integers Diagnostic...5 Administer the diagnostic...5 Using diagnostic results to personalize interventions solutions... 5 Using Intervention Materials...8

More information

CCMS Generic Digital Protocol

CCMS Generic Digital Protocol CCMS Generic Digital Protocol File Name 1. A file will exist for each channel of insertion. 2. The filename will always be exactly eight characters in length plus a threecharacter extension. 3. All numbers

More information

Assignment 2, due September 17

Assignment 2, due September 17 Assignment 2, due September 17 The objectives of this assignment are to introduce you to some simple UNIX commands, to give you practice working with directories and the le hierarchy, and to give you practice

More information

SMARTdoc v2 User Manual

SMARTdoc v2 User Manual Pages: 1/49 SMARTdoc v2 Pages: 2/49 1 Introduction SMARTdoc is an easy to use but full functional document management system. The mean focus is easy and fast. SMARTdoc is all about document and information

More information

Foxtrot Certified Expert Study Guide

Foxtrot Certified Expert Study Guide Foxtrot Certified Expert Study Guide Click for the Practice Exam Useful Terms: Client Machine Typically referred to as a user s machine that points to a License Path. Data Execution Prevention (DEP) A

More information

dark star Excelsior User s guide A Year 2000 Auto-Renovation Tool

dark star Excelsior User s guide A Year 2000 Auto-Renovation Tool dark star s y s t e m s Excelsior User s guide A Year 2000 Auto-Renovation Tool dark star s y s t e m s Excelsior User s guide A Year 2000 Auto-Renovation Tool Dark Star Systems Inc., 1999. All rights

More information

Documentation of the fc-oogmsh Matlab toolbox version

Documentation of the fc-oogmsh Matlab toolbox version Documentation of the fc-oogmsh Matlab toolbox version 0.0.13 François Cuvelier : February 2, 2017 Abstract This Matlab toolbox make it possible to generate mesh les from.geo le by using gmsh. It's also

More information

Document Image Restoration Using Binary Morphological Filters. Jisheng Liang, Robert M. Haralick. Seattle, Washington Ihsin T.

Document Image Restoration Using Binary Morphological Filters. Jisheng Liang, Robert M. Haralick. Seattle, Washington Ihsin T. Document Image Restoration Using Binary Morphological Filters Jisheng Liang, Robert M. Haralick University of Washington, Department of Electrical Engineering Seattle, Washington 98195 Ihsin T. Phillips

More information

Bash command shell language interpreter

Bash command shell language interpreter Principles of Programming Languages Bash command shell language interpreter Advanced seminar topic Louis Sugy & Baptiste Thémine Presentation on December 8th, 2017 Table of contents I. General information

More information

Proposed Registration Procedure

Proposed Registration Procedure Chapter 6 Proposed Registration Procedure The proposed registration procedure is explained in this chapter. This registration is seen as if it were done on a new subject from a statistical sample of skull

More information

irise: Pre-Training Exercise ITEC 455 Spring 2011 Prof. Espinosa Prepared by Kannan Jayaprakash

irise: Pre-Training Exercise ITEC 455 Spring 2011 Prof. Espinosa Prepared by Kannan Jayaprakash irise: Pre-Training Exercise ITEC 455 Spring 2011 Prof. Espinosa Prepared by Kannan Jayaprakash Over the recent past, requirements gathering have become more dynamic and challenging leaving business analysts

More information

Copyright 2018, fp Technologies, Inc. of Ohio All Rights Reserved. filepro Installation Windows (Versions 7, 10 and Server Editions)

Copyright 2018, fp Technologies, Inc. of Ohio All Rights Reserved. filepro Installation Windows (Versions 7, 10 and Server Editions) Copyright 2018, fp Technologies, Inc. of Ohio All Rights Reserved These documents and software are covered under the terms and conditions of the fp Technologies of Ohio, Inc. Program License Agreement

More information

Algorithmic "imperative" language

Algorithmic imperative language Algorithmic "imperative" language Undergraduate years Epita November 2014 The aim of this document is to introduce breiy the "imperative algorithmic" language used in the courses and tutorials during the

More information

UNIX Programming Laboratory. Subject Code: 10MCA17

UNIX Programming Laboratory. Subject Code: 10MCA17 UNIX Programming Laboratory Subject Code: 1. a. Write a non-recursive shell script which accepts any number of arguments and prints them in the reverse order (For example, if the script is named rags,

More information

MathML Editor: The Basics *

MathML Editor: The Basics * OpenStax-CNX module: m26312 1 MathML Editor: The Basics * Natalie Weber This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract This module provides

More information

CFSClient Manual. Command line client for CORBAFileServer. CORBAFileServer HighQSoft GmbH Markus Schuldlos 2017/08/29

CFSClient Manual. Command line client for CORBAFileServer. CORBAFileServer HighQSoft GmbH Markus Schuldlos 2017/08/29 CFSClient Manual Command line client for CORBAFileServer CORBAFileServer 2.1.11 HighQSoft GmbH Markus Schuldlos 2017/08/29 Contents 1 Introduction 1 2 Usage and Examples 3 3 Properties 5 4 Example Property

More information

example: name1=jan name2=mike export name1 In this example, name1 is an environmental variable while name2 is a local variable.

example: name1=jan name2=mike export name1 In this example, name1 is an environmental variable while name2 is a local variable. Bourne Shell Programming Variables - creating and assigning variables Bourne shell use the set and unset to create and assign values to variables or typing the variable name, an equal sign and the value

More information

Two Image-Template Operations for Binary Image Processing. Hongchi Shi. Department of Computer Engineering and Computer Science

Two Image-Template Operations for Binary Image Processing. Hongchi Shi. Department of Computer Engineering and Computer Science Two Image-Template Operations for Binary Image Processing Hongchi Shi Department of Computer Engineering and Computer Science Engineering Building West, Room 331 University of Missouri - Columbia Columbia,

More information

1 of 5 17/06/2013 9:10 AM

1 of 5 17/06/2013 9:10 AM 1 of 5 17/06/2013 9:10 AM 2 of 5 17/06/2013 9:10 AM RUNNING ADJUSTMENTS BATCH PROCESSING FROM THE COMMAND LINE Using the STAR*NET Batch File Feature STAR*NET can be executed from a command line and told

More information

Xpert / XLite GPRS232 Serial Interface Block USERS MANUAL. Part No Rev. 3.3 July 27, 2009

Xpert / XLite GPRS232 Serial Interface Block USERS MANUAL. Part No Rev. 3.3 July 27, 2009 Xpert / XLite GPRS232 Serial Interface Block USERS MANUAL Part No. 8800-1164 Rev. 3.3 July 27, 2009 Sutron Corporation 22400 Davis Drive Sterling, VA 20164 703.406.2800 www.sutron.com sales@sutron.com

More information

Do not start the test until instructed to do so!

Do not start the test until instructed to do so! Instructions: Print your name in the space provided below. This examination is closed book and closed notes, aside from the permitted one-page formula sheet. No calculators or other electronic devices

More information

Buffer_1 Machine_1 Buffer_2 Machine_2. Arrival. Served

Buffer_1 Machine_1 Buffer_2 Machine_2. Arrival. Served Modeling and Performance Evaluation of Production Lines Using the Modeling Language MOSEL G. Bolch, S. Greiner IMMD IV { University Erlangen-Nuremberg Martensstrae 1, D { 91058 Erlangen, Germany E-mail:

More information

ExpressCluster for Linux Ver3.1 Database Agent rd Revision

ExpressCluster for Linux Ver3.1 Database Agent rd Revision ExpressCluster for Linux Ver3.1 Database Agent 2005.12.28 4 rd Revision Revision History Revision Revision Date Revision Page 1 2005/05/30 The 1 st Revision was created. 2 2005/07/22 Description The following

More information

instream: The Individual-based Stream Trout Research and Environmental Assessment Model Version 5.0

instream: The Individual-based Stream Trout Research and Environmental Assessment Model Version 5.0 instream: The Individual-based Stream Trout Research and Environmental Assessment Model Version 5.0 Graphical User Interface Guide Prepared by: Steven F. Railsback Lang, Railsback & Associates Arcata,

More information

GUROBI OPTIMIZER QUICK START GUIDE. Version 7.5, Copyright c 2017, Gurobi Optimization, Inc.

GUROBI OPTIMIZER QUICK START GUIDE. Version 7.5, Copyright c 2017, Gurobi Optimization, Inc. GUROBI OPTIMIZER QUICK START GUIDE Version 7.5, Copyright c 2017, Gurobi Optimization, Inc. Contents 1 Introduction 4 2 Obtaining a Gurobi License 6 2.1 Creating a new academic license.............................

More information

Assignment 3, Due October 4

Assignment 3, Due October 4 Assignment 3, Due October 4 1 Summary This assignment gives you practice with writing shell scripts. Shell scripting is also known as bash programming. Your shell is bash, and when you write a shell script

More information

The Directory Structure

The Directory Structure The Directory Structure All the files are grouped together in the directory structure. The file-system is arranged in a hierarchical structure, like an inverted tree. The top of the hierarchy is traditionally

More information

Data Manager Software User Manual

Data Manager Software User Manual Data Manager Software User Manual CONTENTS 1. Installation of USB Virtual COM Port driver software... 2 2. Installation of Data Manager Software... 2 3. Connecting instrument to a PC (Personal Computer)...

More information

Getting started 7. Setting properties 23

Getting started 7. Setting properties 23 Contents 1 2 3 Getting started 7 Introduction 8 Installing Visual Basic 10 Exploring the IDE 12 Starting a new project 14 Adding a visual control 16 Adding functional code 18 Saving projects 20 Reopening

More information

Pizza Delivery Helper

Pizza Delivery Helper Pizza Delivery Helper Aldo Doronzo 2008 / 2009 Abstract This is a report describing the Pizza Delivery Helper project realized during the course of Mobile Services taught by prof. Ricci at the Free University

More information

Answers to Even-numbered Exercises

Answers to Even-numbered Exercises 11 Answers to Even-numbered Exercises 1. ewrite t propriate actions xists and the user does not have write permission to the le. Verify that the modied script works. 2. The special parameter "$@" is referenced

More information

ENCM 339 Fall 2017: Editing and Running Programs in the Lab

ENCM 339 Fall 2017: Editing and Running Programs in the Lab page 1 of 8 ENCM 339 Fall 2017: Editing and Running Programs in the Lab Steve Norman Department of Electrical & Computer Engineering University of Calgary September 2017 Introduction This document is a

More information

CPSC W1: Midterm 1 Sample Solution

CPSC W1: Midterm 1 Sample Solution CPSC 320 2017W1: Midterm 1 Sample Solution January 26, 2018 Problem reminders: EMERGENCY DISTRIBUTION PROBLEM (EDP) EDP's input is an undirected, unweighted graph G = (V, E) plus a set of distribution

More information

University of Technology. Laser & Optoelectronics Engineering Department. C++ Lab.

University of Technology. Laser & Optoelectronics Engineering Department. C++ Lab. University of Technology Laser & Optoelectronics Engineering Department C++ Lab. Fifth week Control Structures A program is usually not limited to a linear sequence of instructions. During its process

More information

Distributed Processing

Distributed Processing What is Distributed Processing? An FTK examiner machine can be configured to utilize three additional machines to assist case creation / data processing as remote "workers". These additional processing

More information

Getting started 7. Setting properties 23

Getting started 7. Setting properties 23 Contents 1 2 3 Getting started 7 Introducing Visual Basic 8 Installing Visual Studio 10 Exploring the IDE 12 Starting a new project 14 Adding a visual control 16 Adding functional code 18 Saving projects

More information

UNIX files searching, and other interrogation techniques

UNIX files searching, and other interrogation techniques UNIX files searching, and other interrogation techniques Ways to examine the contents of files. How to find files when you don't know how their exact location. Ways of searching files for text patterns.

More information

Winsxs (Win32) Assemblies handling in MSI Package. Created By: JS Reddy

Winsxs (Win32) Assemblies handling in MSI Package. Created By: JS Reddy Winsxs (Win32) Assemblies handling in MSI Package. Created By: JS Reddy Winsxs :- This is a great puzzle for everybody to understand what exactly the files which installed under Windows\Winsxs. The size

More information

VISI ON CALC QuickStart Course

VISI ON CALC QuickStart Course VISI ON CALC QuickStart Course VISICORP Copyright 1983 VisiCorp All Rights Reserved. Printed in U.S.A. Visi On Calc Program Copyright 1983 VisiCorp All Rights Reserved. Visi OnTM, Visi On CalcTM, Visi

More information

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No.

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No. Fundamentals of Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture No. # 13 Transportation Problem, Methods for Initial Basic Feasible

More information

Project 1: Implementing a Shell

Project 1: Implementing a Shell Assigned: August 28, 2015, 12:20am Due: September 21, 2015, 11:59:59pm Project 1: Implementing a Shell Purpose The purpose of this project is to familiarize you with the mechanics of process control through

More information

Caja File Manager. Desktop User Guide

Caja File Manager. Desktop User Guide Caja File Manager Desktop User Guide Desktop User Guide» Working with Files This chapter describes how to use the Caja file manager. Introduction Spatial Mode Browser Mode Opening Files Searching For Files

More information

Installation. List Wrangler - Mailing List Manager for GTK+ Part I. 1 Requirements. By Frank Cox. September 3,

Installation. List Wrangler -  Mailing List Manager for GTK+ Part I. 1 Requirements. By Frank Cox. September 3, List Wrangler - Email Mailing List Manager for GTK+ By Frank Cox September 3, 2012 theatre@melvilletheatre.com Abstract Do you have a mailing list of people that you send periodic emails to? If so, List

More information

My Favorite bash Tips and Tricks

My Favorite bash Tips and Tricks 1 of 6 6/18/2006 7:44 PM My Favorite bash Tips and Tricks Prentice Bisbal Abstract Save a lot of typing with these handy bash features you won't find in an old-fashioned UNIX shell. bash, or the Bourne

More information

READ ME for People Manager - Version 3.03

READ ME for People Manager - Version 3.03 READ ME for People Manager - Version 3.03 In this document: Changed Features in People Manager 3.03 Changed Features in People Manager 3.02 Changed Features in People Manager 3.01 Changes to User Manual

More information

Tutorial 2 - Welcome Application Introducing, the Visual Studio.NET IDE

Tutorial 2 - Welcome Application Introducing, the Visual Studio.NET IDE 1 Tutorial 2 - Welcome Application Introducing, the Visual Studio.NET IDE Outline 2.1 Test-Driving the Welcome Application 2.2 Overview of the Visual Studio.NET 2003 IDE 2.3 Creating a Project for the

More information

A Big Step. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers

A Big Step. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers A Big Step Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers Copyright 2006 2009 Stewart Weiss What a shell really does Here is the scoop on shells. A shell is a program

More information

EasyqpcR: low-throughput real-time quantitative PCR data analysis

EasyqpcR: low-throughput real-time quantitative PCR data analysis EasyqpcR: low-throughput real-time quantitative PCR data analysis Sylvain Le Pape IRTOMIT-INSERM U1082 (Poitiers, France) October 30, 2017 Contents 1 Introduction 2 2 Amplication eciency calculation 3

More information

PCIe40 temperature protection system

PCIe40 temperature protection system PCIe40 temperature protection system Angel Romero C-149360-1 Summer Student Report LHCb European Organization for Nuclear Research Supervision: Paolo Durante 4th August 2017 . Contents List of Figures

More information

Notes. Some of these slides are based on a slide set provided by Ulf Leser. CS 640 Query Processing Winter / 30. Notes

Notes. Some of these slides are based on a slide set provided by Ulf Leser. CS 640 Query Processing Winter / 30. Notes uery Processing Olaf Hartig David R. Cheriton School of Computer Science University of Waterloo CS 640 Principles of Database Management and Use Winter 2013 Some of these slides are based on a slide set

More information

Insight Control Server Provisioning Capturing and Installing SUSE Enterprise Linux 12 System Images

Insight Control Server Provisioning Capturing and Installing SUSE Enterprise Linux 12 System Images Technical white paper Insight Control Server Provisioning Capturing and Installing SUSE Enterprise Linux 12 System Images Table of contents Summary 2 Preparing for image capture 2 Sanitizing server image

More information

INd_rasN SOME SHELL SCRIPTING PROGRAMS. 1. Write a shell script to check whether the name passed as first argument is the name of a file or directory.

INd_rasN SOME SHELL SCRIPTING PROGRAMS. 1. Write a shell script to check whether the name passed as first argument is the name of a file or directory. 1. Write a shell script to check whether the name passed as rst argument is the name of a le or directory. Ans: #!/bin/bash if [ -f $1 ] echo "$1 is a le" echo "$1 is not a le" 2. Write a shell script

More information

CSCE 110. Introduction to Programming September 18, Test A4C in hexadecimal is equal to in binary. Answer: False.

CSCE 110. Introduction to Programming September 18, Test A4C in hexadecimal is equal to in binary. Answer: False. CSCE 110. Introduction to Programming September 18, 2012 Test 1 Professor:Joseph Hurley Exam Version B 1 True or False Fill in the bubble for "A" if the answer is True. Fill in the bubble for "B" if the

More information

While You Were Sleeping - Scheduling SAS Jobs to Run Automatically Faron Kincheloe, Baylor University, Waco, TX

While You Were Sleeping - Scheduling SAS Jobs to Run Automatically Faron Kincheloe, Baylor University, Waco, TX While You Were Sleeping - Scheduling SAS Jobs to Run Automatically Faron Kincheloe, Baylor University, Waco, TX ABSTRACT If you are tired of running the same jobs over and over again, this paper is for

More information

CIS4/681 { Articial Intelligence 2 > (insert-sort '( )) ( ) 2 More Complicated Recursion So far everything we have dened requires

CIS4/681 { Articial Intelligence 2 > (insert-sort '( )) ( ) 2 More Complicated Recursion So far everything we have dened requires 1 A couple of Functions 1 Let's take another example of a simple lisp function { one that does insertion sort. Let us assume that this sort function takes as input a list of numbers and sorts them in ascending

More information

Scripting. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers

Scripting. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers Scripting Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers Adapted from Practical Unix and Programming Hunter College Copyright 2006 2009 Stewart Weiss What a shell

More information

Tutorial 1: Hello flox

Tutorial 1: Hello flox Tutorial 1: Hello flox This is your very first tutorial for flox. It shows the basics on how to successfully run a simulation with flox. This tutorial can be run with the demo version and the full version.

More information