Quasi Random Sequences Author: Stefan Ilijevski. Random sequences? 2/10.

Slides:



Advertisements
Similar presentations
Acceleration of Cooley-Tukey algorithm using Maxeler machine
Advertisements

Lab #5-6 Follow-Up: More Python; Images. Part 1: Python Conditionals, Return Values, and Lists.
Linear Programming Simplex Method
1 Code Optimization Code produced by compilation algorithms can often be improved (ideally optimized) in terms of run-time speed and the amount of memory.
A Modified Discrete SIR Model Jennifer Switkes. Epidemiology  Epidemiology studies the causes, distribution, and control of disease in populations.
§7 Quicksort -- the fastest known sorting algorithm in practice 1. The Algorithm void Quicksort ( ElementType A[ ], int N ) { if ( N < 2 ) return; pivot.
Color Harmonization - ACM SIGGRAPH 2006 Speaker :李沃若.
By: Bryan Bonvallet Nikolla Griffin Advisor: Dr. Jia Li
Decision Tree under MapReduce Week 14 Part II. Decision Tree.
ACM/JETT Workshop - August 4-5, 2005 Big-O Performance Analysis Based on a presentation by Dr. Simon Garrett, The University of Wales, Aberystwyth:
Number System What’s the most natural way to count?
Digital Fundamentals Floyd Chapter 2 Tenth Edition
Generating Continuous Random Variables some. Quasi-random numbers So far, we learned about pseudo-random sequences and a common method for generating.
School of something FACULTY OF OTHER School of Geography FACULTY OF ENVIRONMENT Modelling Individual Consumer Behaviour
Efficient Text Categorization with a Large Number of Categories Rayid Ghani KDD Project Proposal.
Main task -write me a program
ASCII & Gray Codes.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
Chapter 1 Data Storage(2) Yonsei University 1 st Semester, 2014 Sanghyun Park.
Automatic Performance Tuning Jeremy Johnson Dept. of Computer Science Drexel University.
Hashing Algorithms: Basic Concepts and SHA-2 CSCI 5857: Encoding and Encryption.
Performance Evaluation of Several Interpolation Methods for GPS Satellite Orbit Presented by Hamad Yousif Supervised by Dr. Ahmed El-Rabbany.
Chapter 4 Stochastic Modeling Prof. Lei He Electrical Engineering Department University of California, Los Angeles URL: eda.ee.ucla.edu
© Cambridge University Press 2013 Thomson_alphaem.
© Cambridge University Press 2013 Thomson_Fig
More Digital circuits. Ripple Counter The most common counter The problem is that, because more than one output is changing at once, the signal is glichy.
Bitwise Operators Fall 2008 Dr. David A. Gaitros
Author: B. C. Bromley Presented by: Shuaiyuan Zhou Quasi-random Number Generators for Parallel Monte Carlo Algorithms.
Genetic algorithms (GA) for clustering Pasi Fränti Clustering Methods: Part 2e Speech and Image Processing Unit School of Computing University of Eastern.
Digital Fundamentals Tenth Edition Floyd Chapter 2 © 2008 Pearson Education.
Number Representation Lecture Topics How are numeric data items actually stored in computer memory? How much space (memory locations) is.
Estimating the uncertainties in the products of inversion algorithms or, how do we set the error bars for our inversion results? Emmanuel Boss, U. of Maine.
Systems Architecture, Fourth Edition 1 Data Representation Chapter 3.
Searching & Sorting. Algorithms Step by step recipe to do a task…
Cholesky decomposition Teodora Aleksi ć, 391/2012.
TWO IMAGE PROCESSING ALGORITHMS BRIGHTNESS GAMA CORRECTION MAJA VUKASOVIĆ 2012/0003.
Introduction Gray code is a binary numeral system where two successive values differ in only one bit (binary digit). Today, Gray codes are widely used.
1 SVY 207: Lecture 5 The Pseudorange Observable u Aim of this lecture: –To understand how a receiver extracts a pseudorange measurement from a GPS signal.
Contingency table analyses Miloš Radić 12/0010 1/14.
Miloš Kotlar 2012/115 Single Layer Perceptron Linear Classifier.
THRESHOLDING (IMAGE PROCESSING) Filip Vuković 2012/0205.
© Cambridge University Press 2013 Thomson_Fig
Indexing and Ranking MICROPROCESSOR SYSTEMS – MAXELER PROJECT AUTHOR: NIKOLA MAKSIMOVIC 545/12.
1/16 CALCULATING PREFIX SUMS Vladimir Jocovi ć 2012/0011.
Luka Petrović 69/2012 1/12. The Standard Deviation is a measure of how spread out numbers are. Its symbol is σ (the greek letter sigma) The formula is.
By Leon Gradisar (531/2010) Golden Section Search.
Gaussian Elimination and Back Substitution Aleksandra Cerović 0328/2010 1/15Gaussian Elimination And Back Substitution.
Quasi Random Sequences Fields of use Author: Stefan Ilijevski.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
Understanding Community Cancer Care.  Historically, cancer care occurred predominantly in hospital setting  A few decades ago, care migrated to the.
WHAT IS BINARY? Binary is a number system that only uses two digits: 1 and 0. Any information that processed by a computer it is put into sequence of.
Chapter 3 Data Representation
Concepts in Probability, Statistics and Stochastic Modeling
Polynomial Interpolation and Extrapolation
The Rabin-Karp Algorithm
Gray Codes.
© Cambridge University Press 2011
CSE291 Convex Optimization (CSE203B Pending)
Random Variables and their Properties
Computer Science 2 Hashing
Pseudo-random numbers
Thomson_eeWWtgc © Cambridge University Press 2013.
Thomson_atlascmsEventsAlt
CS 101 – Sept. 4 Number representation Integer Unsigned √ Signed √
Thomson_CandP © Cambridge University Press 2013.
CSE203B Convex Optimization
COMS 161 Introduction to Computing
In this lesson you are going to learn to how to place a fraction with the numerators other than one on a number line by breaking the whole number one on.
Thomson_AFBCartoon © Cambridge University Press 2013.
Sampling Plans.
Presentation transcript:

Quasi Random Sequences Author: Stefan Ilijevski

Random sequences? 2/10

Halton’s sequence Steps for creating Halton’s sequence:  Write J as a number in base B (B is a prime number)  Reverse the digits  Put a radix point in front of the sequence It’s best practice to make each component of a Halton sequence with different prime base B Steps for creating Halton’s sequence:  Write J as a number in base B (B is a prime number)  Reverse the digits  Put a radix point in front of the sequence It’s best practice to make each component of a Halton sequence with different prime base B 3/10

Maximally spread-out order? 4/10

Sobol’ sequence  Between zero and one as binary fractions  Direction numbers and XOR  Better than Halton’s?  But is it efficient?  Between zero and one as binary fractions  Direction numbers and XOR  Better than Halton’s?  But is it efficient? 5/10 SobolHalton

Antonov and Saleev’s variant  Problem with j-th number?  Gray code  Generating directional numbers?  Problem with j-th number?  Gray code  Generating directional numbers? 6/10

Algorithm on CPU Two parts of the algorithm  Initialization  Generating random number Potential for optimization? Two parts of the algorithm  Initialization  Generating random number Potential for optimization? Void sobseq(…) { if (init) { /*initialization*/... } else { /*generating random number*/... //xor operations (direction num.)... } } 7/10

Maxeler comes to rescue else { im = in++; for (j = 1; j <= MAXBIT; j++) { if (!(im & 1)) break; im >>= 1; } if (j > MAXBIT) nrerror("MAXBIT too small in sobseq"); im = (j-1) * MAXDIM; for (k = 1; k <= IMIN(*n, MAXDIM); k++) { ix[k] ^= iv[im+k]; x[k] = ix[k] * fac; } else { im = in++; for (j = 1; j <= MAXBIT; j++) { if (!(im & 1)) break; im >>= 1; } if (j > MAXBIT) nrerror("MAXBIT too small in sobseq"); im = (j-1) * MAXDIM; for (k = 1; k <= IMIN(*n, MAXDIM); k++) { ix[k] ^= iv[im+k]; x[k] = ix[k] * fac; } DFEVar ix = io.input("ix", dfeUInt); DFEVar iv = io.input("iv", dfeUInt); DFEVar fac = io.scalarInput("fac", dfeFloat(8,24)); //ix[k] ^= iv[im+k]; //x[k] = ix[k] * fac; DFEVar ixOut = ixOut ^ iv; DFEVar x = ix * fac; io.output("ixOut", ixOut, dfeUInt); io.output("x", x, dfeFloat(8,24)); 8/10

SPEED! 9/10

References  Press, W., Teukolsky, S., Vetterling, W., Flannery, B., “Numerical Recipes in C The Art of Scientific Computing Second Edition” Cambridge University Press; 2 edition, October 1992  Milutinovic, V. et al, Paradigm Shift in SuperComputing: DataFlow vs ControlFlow, Journal of Big Data, 2015  Milutinovic, V., et al, Guide to DataFlow SuperComputing, Springer,  -, January 2016  -, January  Press, W., Teukolsky, S., Vetterling, W., Flannery, B., “Numerical Recipes in C The Art of Scientific Computing Second Edition” Cambridge University Press; 2 edition, October 1992  Milutinovic, V. et al, Paradigm Shift in SuperComputing: DataFlow vs ControlFlow, Journal of Big Data, 2015  Milutinovic, V., et al, Guide to DataFlow SuperComputing, Springer,  -, January 2016  -, January /10