Data Structures and Algorithms. The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 2

Size: px
Start display at page:

Download "Data Structures and Algorithms. The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 2"

Transcription

1 Daa Srucures and Algorihms The maerial for his lecure is drawn, in par, from The Pracice of Programming (Kernighan & Pike) Chaper 2 1

2 Moivaing Quoaion Every program depends on algorihms and daa srucures, bu few programs depend on he invenion of brand new ones. -- Kernighan & Pike 2

3 Goals of his Lecure Help you learn abou: Common daa srucures and algorihms Why? Shallow moivaion: Provide examples of poiner-relaed C code Why? Deeper moivaion: Common daa srucures and algorihms serve as high level building blocks A power programmer: Rarely creaes programs from scrach Ofen creaes programs using high level building blocks

4 A Common Task Mainain a able of key/value pairs Each key is a sring; each value is an in Unknown number of key-value pairs For simpliciy, allow duplicae keys (clien responsibiliy) In Assignmen #, mus check for duplicae keys! Examples (suden name, grade) ( john smih, 8), ( jane doe, 9), ( myungbak lee, 81) (baseball player, number) ( Ruh, ), ( Gehrig, ), ( Manle, 7) (variable name, value) ( maxlengh, 2000), ( i, 7), ( j, -10)

5 Daa Srucures and Algorihms Daa srucures Linked lis of key/value pairs Hash able of key/value pairs Algorihms Creae: Creae he daa srucure Add: Add a key/value pair Search: Search for a key/value pair, by key Free: Free he daa srucure 5

6 Daa Srucure #1: Linked Lis Daa srucure: Nodes; each conains key/value pair and poiner o nex node "Manle" 7 Algorihms: Creae: Allocae Table srucure o poin o firs node Add: Inser new node a fron of lis Search: Linear search hrough he lis Free: Free nodes while raversing; free Table srucure 6

7 Linked Lis: Daa Srucure sruc Node { cons char *key; in value; sruc Node *nex; ; sruc Table { sruc Node *firs; ; sruc Table sruc Node sruc Node 7

8 Linked Lis: Creae (1) sruc Table *Table_creae(void) { = (sruc Table *) malloc(sizeof(sruc Table)); ->firs = ; reurn ; = Table_creae(); 8

9 Linked Lis: Creae (2) sruc Table *Table_creae(void) { = (sruc Table *) malloc(sizeof(sruc Table)); ->firs = ; reurn ; = Table_creae(); 9

10 Linked Lis: Add (1) void Table_add(sruc Table *,cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); /* we omi error checking here (e.g., p == ) */ p->key = key; p->value = value; p->nex = ->firs; ->firs = p; These are poiners o srings ha exis in he RODATA secion Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); 10

11 Linked Lis: Add (2) void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = key; p->value = value; p->nex = ->firs; ->firs = p; p Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); 11

12 Linked Lis: Add () void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = key; p->value = value; p->nex = ->firs; ->firs = p; p "Manle" 7 Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); 12

13 Linked Lis: Add () void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = key; p->value = value; p->nex = ->firs; ->firs = p; p "Manle" 7 Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); 1

14 Linked Lis: Add (5) void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = key; p->value = value; p->nex = ->firs; ->firs = p; p "Manle" 7 Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); 1

15 Linked Lis: Search (1) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); "Manle" 7 15

16 Linked Lis: Search (2) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 16

17 Linked Lis: Search () in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 17

18 Linked Lis: Search () in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 18

19 Linked Lis: Search (5) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 19

20 Linked Lis: Search (6) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; for (p = ->firs; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; 1 in value; in found; found = Table_search(,, &value); p "Manle" 7 20

21 Linked Lis: Free (1) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); "Manle" 7 21

22 Linked Lis: Free (2) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p "Manle" 7 22

23 Linked Lis: Free () void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 2

24 Linked Lis: Free () void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 2

25 Linked Lis: Free (5) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 25

26 Linked Lis: Free (6) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 26

27 Linked Lis: Free (7) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 27

28 Linked Lis: Free (8) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp "Manle" 7 28

29 Linked Lis: Free (9) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; for (p = ->firs; p!= ; p = nexp) { nexp = p->nex; free(p); free() Table_free(); p nexp "Manle" 7 29

30 Linked Lis Performance Creae: fas Add: fas Search: slow Free: slow Wha are he asympoic run imes (big-oh noaion)? Would i be beer o keep he nodes sored by key? 0

31 Daa Srucure #2: Hash Table Fixed-size array where each elemen poins o a linked lis 0 ARRAYSIZE-1 sruc Node *array[arraysize]; Funcion maps each key o an array index For example, for an ineger key h Hash funcion: i = h % ARRAYSIZE (mod funcion) Go o array elemen i, i.e., he linked lis hashab[i] Search for elemen, add elemen, remove elemen, ec. 1

32 Hash Table Example Ineger keys, array of size 5 wih hash funcion h mod % 5 is % 5 is % 5 is Revoluion 199 WW Civil 2

33 How Large an Array? Large enough ha average bucke size is 1 Shor buckes mean fas search Long buckes mean slow search Small enough o be memory efficien No an excessive number of elemens Forunaely, each array elemen is jus soring a poiner 0 This is OK: ARRAYSIZE-1

34 Wha Kind of Hash Funcion? Good a disribuing elemens across he array Disribue resuls over he range 0, 1,, ARRAYSIZE-1 Disribue resuls evenly o avoid very long buckes This is no so good: 0 ARRAYSIZE-1 Wha would be he wors possible hash funcion?

35 Hashing Sring Keys o Inegers Simple schemes don disribue he keys evenly enough Number of characers, mod ARRAYSIZE Sum he ASCII values of all characers, mod ARRAYSIZE Here s a reasonably good hash funcion Weighed sum of characers x i in he sring ( a i x i ) mod ARRAYSIZE Bes if a and ARRAYSIZE are relaively prime E.g., a = 65599, ARRAYSIZE = 102 5

36 Implemening Hash Funcion Poenially expensive o compue a i for each value of i Compuing a i for each value of I Insead, do (((x[0] * x[1]) * x[2]) * x[]) * unsigned in hash(cons char *x) { in i; unsigned in h = 0U; for (i=0; x[i]!='\0'; i++) h = h * (unsigned char)x[i]; reurn h % 102; Can be more clever han his for powers of wo! (Described in Appendix) 6

37 Hash Table Example Example: ARRAYSIZE = 7 Lookup (and ener, if no presen) hese srings: he, ca, in, he, ha Hash able iniially empy. Firs word: he. hash( he ) = % 7 = 1. Search he linked lis able[1] for he sring he ; no found

38 Hash Table Example (con.) Example: ARRAYSIZE = 7 Lookup (and ener, if no presen) hese srings: he, ca, in, he, ha Hash able iniially empy. Firs word: he. hash( he ) = % 7 = 1. Search he linked lis able[1] for he sring he ; no found Now: able[1] = makelink(key, value, able[1]) he 8

39 Hash Table Example (con.) Second word: ca. hash( ca ) = % 7 = 2. Search he linked lis able[2] for he sring ca ; no found Now: able[2] = makelink(key, value, able[2]) he 9

40 Hash Table Example (con.) Third word: in. hash( in ) = % 7 = 5. Search he linked lis able[5] for he sring in ; no found Now: able[5] = makelink(key, value, able[5]) he ca 0

41 Hash Table Example (con.) Fourh word: he. hash( he ) = % 7 = 1. Search he linked lis able[1] for he sring he ; found i! he in ca 1

42 Hash Table Example (con.) Fourh word: ha. hash( ha ) = % 7 = 2. Search he linked lis able[2] for he sring ha ; no found. Now, inser ha ino he linked lis able[2]. A beginning or end? Doesn maer he in ca 2

43 Hash Table Example (con.) Insering a he fron is easier, so add ha a he fron he in ha ca

44 Hash Table: Daa Srucure enum {BUCKET_COUNT = 102; sruc Node { cons char *key; in value; sruc Node *nex; ; sruc Table { sruc Node *array[bucket_count]; ; sruc Table sruc Node sruc Node

45 Hash Table: Creae sruc Table *Table_creae(void) { = (sruc Table*)calloc(1, sizeof(sruc Table)); reurn ; = Table_creae();

46 Hash Table: Add (1) void Table_add(sruc Table *,cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); in h = hash(key); p->key = key; p->value = value; p->nex = ->array[h]; ->array[h] = p; Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); These are poiners o srings ha exis in he RODATA secion Preend ha Ruh hashed o 2 and Gehrig o 72 6

47 Hash Table: Add (2) void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); in h = hash(key); p->key = key; p->value = value; p->nex = ->array[h]; ->array[h] = p; Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); p 7

48 Hash Table: Add () void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); in h = hash(key); p->key = key; p->value = value; p->nex = ->array[h]; ->array[h] = p; Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); Preend ha Manle hashed o 806, and so h = 806 p "Manle" 7 8

49 Hash Table: Add () void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); in h = hash(key); p->key = key; p->value = value; p->nex = ->array[h]; ->array[h] = p; Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); h = 806 p "Manle" 7 9

50 Hash Table: Add (5) void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); in h = hash(key); p->key = key; p->value = value; p->nex = ->array[h]; ->array[h] = p; Table_add(,, ); Table_add(,, ); Table_add(, "Manle", 7); h = 806 p "Manle" 7 50

51 Hash Table: Search (1) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); for (p = ->array[h]; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); "Manle" 7 51

52 Hash Table: Search (2) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); for (p = ->array[h]; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); Preend ha Gehrig hashed o 72, and so h = 72 "Manle" 7 52

53 Hash Table: Search () in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); for (p = ->array[h]; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 h = 72 5

54 Hash Table: Search () in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); for (p = ->array[h]; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p "Manle" 7 h = 72 5

55 Hash Table: Search (5) in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); for (p = ->array[h]; p!= ; p = p->nex) if (srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; in value; in found; found = Table_search(,, &value); p h = 72 "Manle" 7 55

56 Hash Table: Free (1) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); "Manle" 7 56

57 Hash Table: Free (2) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); b = 0 "Manle" 7 57

58 Hash Table: Free () void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p b = 0 "Manle" 7 58

59 Hash Table: Free () void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p b = 1,, 2 "Manle" 7 59

60 Hash Table: Free (5) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p b = 2 "Manle" 7 60

61 Hash Table: Free (6) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp b = 2 "Manle" 7 61

62 Hash Table: Free (7) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); p nexp b = 2 "Manle" 7 62

63 Hash Table: Free (8) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); b = 2,, 72 b = 72,, 806 b = 807,, 102 "Manle" 7 6

64 Hash Table: Free (9) void Table_free(sruc Table *) { sruc Node *p; sruc Node *nexp; in b; for (b = 0; b < BUCKET_COUNT; b++) for (p = ->array[b]; p!= ; p = nexp) { nexp = p->nex; free(p); free(); Table_free(); b = 102 "Manle" 7 6

65 Hash Table Performance Creae: fas Add: fas Search: fas Free: slow Wha are he asympoic run imes (big-oh noaion)? Is hash able search always fas? 65

66 Key Ownership Noe: Table_add() funcions conain his code: void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = key; Caller passes key, which is a poiner o memory where a sring resides Table_add() funcion sores wihin he able he address where he sring resides 66

67 Key Ownership (con.) Problem: Consider his calling code: sruc Table ; char k[100] = ; Table_add(, k, ); srcpy(k, ); Via Table_add(), able conains memory address k Clien changes sring a memory address k Thus clien changes key wihin able Wha happens if he clien searches for Ruh? Wha happens if he clien searches for Gehrig? 67

68 Key Ownership (con.) Soluion: Table_add() saves copy of given key void Table_add(sruc Table *, cons char *key, in value) { sruc Node *p = (sruc Node*)malloc(sizeof(sruc Node)); p->key = (cons char*)malloc(srlen(key) + 1); srcpy(p->key, key); Why add 1? If clien changes sring a memory address k, daa srucure is no affeced Then he daa srucure owns he copy, ha is: The daa srucure is responsible for freeing he memory in which he copy resides The Table_free() funcion mus free he copy 68

69 Summary Common daa srucures and associaed algorihms Linked lis fas inser, slow search Hash able Fas inser, (poenially) fas search Invaluable for soring key/value pairs Very common Relaed issues Hashing algorihms Memory ownership 69

70 Appendix Supid programmer ricks relaed o hash ables 70

71 Revisiing Hash Funcions Poenially expensive o compue mod c Involves division by c and keeping he remainder Easier when c is a power of 2 (e.g., 16 = 2 ) An alernaive (by example) 5 = % 16 is 5, he las four bis of he number Would like an easy way o isolae he las four bis

72 Recall: Biwise Operaors in C Biwise AND (&) 5 & 15 & Mod on he cheap! E.g., h = 5 & 15; Biwise OR ( ) One s complemen (~) Turns 0 o 1, and 1 o 0 E.g., se las hree bis o 0 x = x & ~7;

73 A Faser Hash Funcion unsigned in hash(cons char *x) { in i; unsigned in h = 0U; for (i=0; x[i]!='\0'; i++) h = h * (unsigned char)x[i]; reurn h % 102; Previous version unsigned in hash(cons char *x) { in i; unsigned in h = 0U; for (i=0; x[i]!='\0'; i++) h = h * (unsigned char)x[i]; reurn h & 102; Wha happens if you misakenly wrie h & 102? Faser 7

74 Speeding Up Key Comparisons Speeding up key comparisons For any non-rivial value comparison funcion Trick: sore full hash resul in srucure in Table_search(sruc Table *, cons char *key, in *value) { sruc Node *p; in h = hash(key); /* No % in hash funcion */ for (p = ->array[h%102]; p!= ; p = p->nex) if ((p->hash == h) && srcmp(p->key, key) == 0) { *value = p->value; reurn 1; reurn 0; Why is his so much faser? 7

Data Structures and Algorithms

Data Structures and Algorithms Daa Srucures and Algorihms The maerial for his lecure is drawn, in ar, from The Pracice of Programming (Kernighan & Pike) Chaer 2 1 Goals of his Lecure Hel you learn (or refresh your memory) abou: Common

More information

COMP26120: Algorithms and Imperative Programming

COMP26120: Algorithms and Imperative Programming COMP26120 ecure C3 1/48 COMP26120: Algorihms and Imperaive Programming ecure C3: C - Recursive Daa Srucures Pee Jinks School of Compuer Science, Universiy of Mancheser Auumn 2011 COMP26120 ecure C3 2/48

More information

Sam knows that his MP3 player has 40% of its battery life left and that the battery charges by an additional 12 percentage points every 15 minutes.

Sam knows that his MP3 player has 40% of its battery life left and that the battery charges by an additional 12 percentage points every 15 minutes. 8.F Baery Charging Task Sam wans o ake his MP3 player and his video game player on a car rip. An hour before hey plan o leave, he realized ha he forgo o charge he baeries las nigh. A ha poin, he plugged

More information

Shortest Path Algorithms. Lecture I: Shortest Path Algorithms. Example. Graphs and Matrices. Setting: Dr Kieran T. Herley.

Shortest Path Algorithms. Lecture I: Shortest Path Algorithms. Example. Graphs and Matrices. Setting: Dr Kieran T. Herley. Shores Pah Algorihms Background Seing: Lecure I: Shores Pah Algorihms Dr Kieran T. Herle Deparmen of Compuer Science Universi College Cork Ocober 201 direced graph, real edge weighs Le he lengh of a pah

More information

Hash Tables COS 217 1

Hash Tables COS 217 1 Hash Tables COS 217 1 Goals of Today s Lecture Motivation for hash tables o Examples of (key, value) pairs o Limitations of using arrays o Example using a linked list o Inefficiency of using a linked list

More information

Midterm Exam Announcements

Midterm Exam Announcements Miderm Exam Noe: This was a challenging exam. CSCI 4: Principles o Programming Languages Lecure 1: Excepions Insrucor: Dan Barowy Miderm Exam Scores 18 16 14 12 10 needs improvemen 8 6 4 2 0 0-49 50-59

More information

Implementing Ray Casting in Tetrahedral Meshes with Programmable Graphics Hardware (Technical Report)

Implementing Ray Casting in Tetrahedral Meshes with Programmable Graphics Hardware (Technical Report) Implemening Ray Casing in Terahedral Meshes wih Programmable Graphics Hardware (Technical Repor) Marin Kraus, Thomas Erl March 28, 2002 1 Inroducion Alhough cell-projecion, e.g., [3, 2], and resampling,

More information

PART 1 REFERENCE INFORMATION CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONITOR

PART 1 REFERENCE INFORMATION CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONITOR . ~ PART 1 c 0 \,).,,.,, REFERENCE NFORMATON CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONTOR n CONTROL DATA 6400 Compuer Sysems, sysem funcions are normally handled by he Monior locaed in a Peripheral

More information

CS 152 Computer Architecture and Engineering. Lecture 7 - Memory Hierarchy-II

CS 152 Computer Architecture and Engineering. Lecture 7 - Memory Hierarchy-II CS 152 Compuer Archiecure and Engineering Lecure 7 - Memory Hierarchy-II Krse Asanovic Elecrical Engineering and Compuer Sciences Universiy of California a Berkeley hp://www.eecs.berkeley.edu/~krse hp://ins.eecs.berkeley.edu/~cs152

More information

Numerical Solution of ODE

Numerical Solution of ODE Numerical Soluion of ODE Euler and Implici Euler resar; wih(deools): wih(plos): The package ploools conains more funcions for ploing, especially a funcion o draw a single line: wih(ploools): wih(linearalgebra):

More information

A Matching Algorithm for Content-Based Image Retrieval

A Matching Algorithm for Content-Based Image Retrieval A Maching Algorihm for Conen-Based Image Rerieval Sue J. Cho Deparmen of Compuer Science Seoul Naional Universiy Seoul, Korea Absrac Conen-based image rerieval sysem rerieves an image from a daabase using

More information

Assignment 2. Due Monday Feb. 12, 10:00pm.

Assignment 2. Due Monday Feb. 12, 10:00pm. Faculy of rs and Science Universiy of Torono CSC 358 - Inroducion o Compuer Neworks, Winer 218, LEC11 ssignmen 2 Due Monday Feb. 12, 1:pm. 1 Quesion 1 (2 Poins): Go-ack n RQ In his quesion, we review how

More information

Motor Control. 5. Control. Motor Control. Motor Control

Motor Control. 5. Control. Motor Control. Motor Control 5. Conrol In his chaper we will do: Feedback Conrol On/Off Conroller PID Conroller Moor Conrol Why use conrol a all? Correc or wrong? Supplying a cerain volage / pulsewidh will make he moor spin a a cerain

More information

Image segmentation. Motivation. Objective. Definitions. A classification of segmentation techniques. Assumptions for thresholding

Image segmentation. Motivation. Objective. Definitions. A classification of segmentation techniques. Assumptions for thresholding Moivaion Image segmenaion Which pixels belong o he same objec in an image/video sequence? (spaial segmenaion) Which frames belong o he same video sho? (emporal segmenaion) Which frames belong o he same

More information

4. Minimax and planning problems

4. Minimax and planning problems CS/ECE/ISyE 524 Inroducion o Opimizaion Spring 2017 18 4. Minima and planning problems ˆ Opimizing piecewise linear funcions ˆ Minima problems ˆ Eample: Chebyshev cener ˆ Muli-period planning problems

More information

Lecture 18: Mix net Voting Systems

Lecture 18: Mix net Voting Systems 6.897: Advanced Topics in Crypography Apr 9, 2004 Lecure 18: Mix ne Voing Sysems Scribed by: Yael Tauman Kalai 1 Inroducion In he previous lecure, we defined he noion of an elecronic voing sysem, and specified

More information

Using CANopen Slave Driver

Using CANopen Slave Driver CAN Bus User Manual Using CANopen Slave Driver V1. Table of Conens 1. SDO Communicaion... 1 2. PDO Communicaion... 1 3. TPDO Reading and RPDO Wriing... 2 4. RPDO Reading... 3 5. CANopen Communicaion Parameer

More information

Announcements For The Logic of Boolean Connectives Truth Tables, Tautologies & Logical Truths. Outline. Introduction Truth Functions

Announcements For The Logic of Boolean Connectives Truth Tables, Tautologies & Logical Truths. Outline. Introduction Truth Functions Announcemens For 02.05.09 The Logic o Boolean Connecives Truh Tables, Tauologies & Logical Truhs 1 HW3 is due nex Tuesday William Sarr 02.05.09 William Sarr The Logic o Boolean Connecives (Phil 201.02)

More information

Princeton University Computer Science 217: Introduction to Programming Systems. Data Structures

Princeton University Computer Science 217: Introduction to Programming Systems. Data Structures Princeton University Computer Science 217: Introduction to Programming Systems Data Structures 1 Goals of this Lecture Help you learn (or refresh your memory) about: Common data structures: linked lists

More information

Gauss-Jordan Algorithm

Gauss-Jordan Algorithm Gauss-Jordan Algorihm The Gauss-Jordan algorihm is a sep by sep procedure for solving a sysem of linear equaions which may conain any number of variables and any number of equaions. The algorihm is carried

More information

MARSS Reference Sheet

MARSS Reference Sheet MARSS Reference Shee The defaul MARSS model (form="marxss") is wrien as follows: x = B x 1 + u + C c + w where w MVN( Q ) y = Z x + a + D d + v where v MVN( R ) x 1 MVN(π Λ) or x MVN(π Λ) c and d are inpus

More information

SOT: Compact Representation for Triangle and Tetrahedral Meshes

SOT: Compact Representation for Triangle and Tetrahedral Meshes SOT: Compac Represenaion for Triangle and Terahedral Meshes Topraj Gurung and Jarek Rossignac School of Ineracive Compuing, College of Compuing, Georgia Insiue of Technology, Alana, GA ABSTRACT The Corner

More information

EECS 487: Interactive Computer Graphics

EECS 487: Interactive Computer Graphics EECS 487: Ineracive Compuer Graphics Lecure 7: B-splines curves Raional Bézier and NURBS Cubic Splines A represenaion of cubic spline consiss of: four conrol poins (why four?) hese are compleely user specified

More information

UX260 QUICK START GUIDE

UX260 QUICK START GUIDE UX260 QUICK START GUIDE Transferring Music Playing Music Blueooh Pairing Taking a Picure/ Recording a Video www.lgusa.com Geing o Know Your Phone Camera BACK SIDE Lef Sof Key Speakerphone Key Talk Key

More information

Chapter 8 LOCATION SERVICES

Chapter 8 LOCATION SERVICES Disribued Compuing Group Chaper 8 LOCATION SERVICES Mobile Compuing Winer 2005 / 2006 Overview Mobile IP Moivaion Daa ransfer Encapsulaion Locaion Services & Rouing Classificaion of locaion services Home

More information

Handling uncertainty in semantic information retrieval process

Handling uncertainty in semantic information retrieval process Handling uncerainy in semanic informaion rerieval process Chkiwa Mounira 1, Jedidi Anis 1 and Faiez Gargouri 1 1 Mulimedia, InfoRmaion sysems and Advanced Compuing Laboraory Sfax Universiy, Tunisia m.chkiwa@gmail.com,

More information

CENG 477 Introduction to Computer Graphics. Modeling Transformations

CENG 477 Introduction to Computer Graphics. Modeling Transformations CENG 477 Inroducion o Compuer Graphics Modeling Transformaions Modeling Transformaions Model coordinaes o World coordinaes: Model coordinaes: All shapes wih heir local coordinaes and sies. world World

More information

Spline Curves. Color Interpolation. Normal Interpolation. Last Time? Today. glshademodel (GL_SMOOTH); Adjacency Data Structures. Mesh Simplification

Spline Curves. Color Interpolation. Normal Interpolation. Last Time? Today. glshademodel (GL_SMOOTH); Adjacency Data Structures. Mesh Simplification Las Time? Adjacency Daa Srucures Spline Curves Geomeric & opologic informaion Dynamic allocaion Efficiency of access Mesh Simplificaion edge collapse/verex spli geomorphs progressive ransmission view-dependen

More information

Network management and QoS provisioning - QoS in Frame Relay. . packet switching with virtual circuit service (virtual circuits are bidirectional);

Network management and QoS provisioning - QoS in Frame Relay. . packet switching with virtual circuit service (virtual circuits are bidirectional); QoS in Frame Relay Frame relay characerisics are:. packe swiching wih virual circui service (virual circuis are bidirecional);. labels are called DLCI (Daa Link Connecion Idenifier);. for connecion is

More information

Chapter Six Chapter Six

Chapter Six Chapter Six Chaper Si Chaper Si 0 CHAPTER SIX ConcepTess and Answers and Commens for Secion.. Which of he following graphs (a) (d) could represen an aniderivaive of he funcion shown in Figure.? Figure. (a) (b) (c)

More information

THERMAL PHYSICS COMPUTER LAB #3 : Stability of Dry Air and Brunt-Vaisala Oscillations

THERMAL PHYSICS COMPUTER LAB #3 : Stability of Dry Air and Brunt-Vaisala Oscillations THERMAL PHYSICS COMPUTER LAB #3 : Sabiliy of Dry Air and Brun-Vaisala Oscillaions Consider a parcel of dry air of volume V, emperaure T and densiy ρ. I displace he same volume V of surrounding air of emperaure

More information

A Formalization of Ray Casting Optimization Techniques

A Formalization of Ray Casting Optimization Techniques A Formalizaion of Ray Casing Opimizaion Techniques J. Revelles, C. Ureña Dp. Lenguajes y Sisemas Informáicos, E.T.S.I. Informáica, Universiy of Granada, Spain e-mail: [jrevelle,almagro]@ugr.es URL: hp://giig.ugr.es

More information

The Roots of Lisp paul graham

The Roots of Lisp paul graham The Roos of Lisp paul graham Draf, January 18, 2002. In 1960, John McCarhy published a remarkable paper in which he did for programming somehing like wha Euclid did for geomery. 1 He showed how, given

More information

1 œ DRUM SET KEY. 8 Odd Meter Clave Conor Guilfoyle. Cowbell (neck) Cymbal. Hi-hat. Floor tom (shell) Clave block. Cowbell (mouth) Hi tom.

1 œ DRUM SET KEY. 8 Odd Meter Clave Conor Guilfoyle. Cowbell (neck) Cymbal. Hi-hat. Floor tom (shell) Clave block. Cowbell (mouth) Hi tom. DRUM SET KEY Hi-ha Cmbal Clave block Cowbell (mouh) 0 Cowbell (neck) Floor om (shell) Hi om Mid om Snare Floor om Snare cross sick or clave block Bass drum Hi-ha wih foo 8 Odd Meer Clave Conor Guilfole

More information

Chapter 3 MEDIA ACCESS CONTROL

Chapter 3 MEDIA ACCESS CONTROL Chaper 3 MEDIA ACCESS CONTROL Overview Moivaion SDMA, FDMA, TDMA Aloha Adapive Aloha Backoff proocols Reservaion schemes Polling Disribued Compuing Group Mobile Compuing Summer 2003 Disribued Compuing

More information

Matlab5 5.3 symbolisches Lösen von DGLn

Matlab5 5.3 symbolisches Lösen von DGLn C:\Si5\Ingmah\symbmalab\DGLn_N4_2.doc, Seie /5 Prof. Dr. R. Kessler, Homepage: hp://www.home.hs-karlsruhe.de/~kero/ Malab5 5.3 symbolisches Lösen von DGLn % Beispiele aus Malab 4.3 Suden Ediion Handbuch

More information

Scheduling. Scheduling. EDA421/DIT171 - Parallel and Distributed Real-Time Systems, Chalmers/GU, 2011/2012 Lecture #4 Updated March 16, 2012

Scheduling. Scheduling. EDA421/DIT171 - Parallel and Distributed Real-Time Systems, Chalmers/GU, 2011/2012 Lecture #4 Updated March 16, 2012 EDA421/DIT171 - Parallel and Disribued Real-Time Sysems, Chalmers/GU, 2011/2012 Lecure #4 Updaed March 16, 2012 Aemps o mee applicaion consrains should be done in a proacive way hrough scheduling. Schedule

More information

MATH Differential Equations September 15, 2008 Project 1, Fall 2008 Due: September 24, 2008

MATH Differential Equations September 15, 2008 Project 1, Fall 2008 Due: September 24, 2008 MATH 5 - Differenial Equaions Sepember 15, 8 Projec 1, Fall 8 Due: Sepember 4, 8 Lab 1.3 - Logisics Populaion Models wih Harvesing For his projec we consider lab 1.3 of Differenial Equaions pages 146 o

More information

Constant-Work-Space Algorithms for Shortest Paths in Trees and Simple Polygons

Constant-Work-Space Algorithms for Shortest Paths in Trees and Simple Polygons Journal of Graph Algorihms and Applicaions hp://jgaa.info/ vol. 15, no. 5, pp. 569 586 (2011) Consan-Work-Space Algorihms for Shores Pahs in Trees and Simple Polygons Tesuo Asano 1 Wolfgang Mulzer 2 Yajun

More information

A pipeline polish string computer*

A pipeline polish string computer* A pipeline polish sring compuer* by GERARD G. BAILLE and JEAN P. SCHOELLKOPF Co--,np'ueT ATcli-iecure Group Grenoble "Universiy, France ABSTRACT This paper describes a new compuer organizaion which allows

More information

Schedule. Curves & Surfaces. Questions? Last Time: Today. Limitations of Polygonal Meshes. Acceleration Data Structures.

Schedule. Curves & Surfaces. Questions? Last Time: Today. Limitations of Polygonal Meshes. Acceleration Data Structures. Schedule Curves & Surfaces Sunday Ocober 5 h, * 3-5 PM *, Room TBA: Review Session for Quiz 1 Exra Office Hours on Monday (NE43 Graphics Lab) Tuesday Ocober 7 h : Quiz 1: In class 1 hand-wrien 8.5x11 shee

More information

4 Error Control. 4.1 Issues with Reliable Protocols

4 Error Control. 4.1 Issues with Reliable Protocols 4 Error Conrol Jus abou all communicaion sysems aemp o ensure ha he daa ges o he oher end of he link wihou errors. Since i s impossible o build an error-free physical layer (alhough some shor links can

More information

BI-TEMPORAL INDEXING

BI-TEMPORAL INDEXING BI-TEMPORAL INDEXING Mirella M. Moro Uniersidade Federal do Rio Grande do Sul Poro Alegre, RS, Brazil hp://www.inf.ufrgs.br/~mirella/ Vassilis J. Tsoras Uniersiy of California, Rierside Rierside, CA 92521,

More information

Why not experiment with the system itself? Ways to study a system System. Application areas. Different kinds of systems

Why not experiment with the system itself? Ways to study a system System. Application areas. Different kinds of systems Simulaion Wha is simulaion? Simple synonym: imiaion We are ineresed in sudying a Insead of experimening wih he iself we experimen wih a model of he Experimen wih he Acual Ways o sudy a Sysem Experimen

More information

Last Time: Curves & Surfaces. Today. Questions? Limitations of Polygonal Meshes. Can We Disguise the Facets?

Last Time: Curves & Surfaces. Today. Questions? Limitations of Polygonal Meshes. Can We Disguise the Facets? Las Time: Curves & Surfaces Expeced value and variance Mone-Carlo in graphics Imporance sampling Sraified sampling Pah Tracing Irradiance Cache Phoon Mapping Quesions? Today Moivaion Limiaions of Polygonal

More information

Ray Tracing II. Improving Raytracing Speed. Improving Computational Complexity. Raytracing Computational Complexity

Ray Tracing II. Improving Raytracing Speed. Improving Computational Complexity. Raytracing Computational Complexity Ra Tracing II Iproving Raracing Speed Copuer Graphics Ra Tracing II 2005 Fabio Pellacini 1 Copuer Graphics Ra Tracing II 2005 Fabio Pellacini 2 Raracing Copuaional Coplei ra-scene inersecion is epensive

More information

Today. Curves & Surfaces. Can We Disguise the Facets? Limitations of Polygonal Meshes. Better, but not always good enough

Today. Curves & Surfaces. Can We Disguise the Facets? Limitations of Polygonal Meshes. Better, but not always good enough Today Curves & Surfaces Moivaion Limiaions of Polygonal Models Some Modeling Tools & Definiions Curves Surfaces / Paches Subdivision Surfaces Limiaions of Polygonal Meshes Can We Disguise he Faces? Planar

More information

Pointer Analysis. Outline: What is pointer analysis Intraprocedural pointer analysis Interprocedural pointer analysis. Andersen and Steensgaard

Pointer Analysis. Outline: What is pointer analysis Intraprocedural pointer analysis Interprocedural pointer analysis. Andersen and Steensgaard Poiner anaysis Poiner Anaysis Ouine: Wha is oiner anaysis Inrarocedura oiner anaysis Inerrocedura oiner anaysis Andersen and Seensgaard Poiner and Aias Anaysis Aiases: wo exressions ha denoe he same memory

More information

NEWTON S SECOND LAW OF MOTION

NEWTON S SECOND LAW OF MOTION Course and Secion Dae Names NEWTON S SECOND LAW OF MOTION The acceleraion of an objec is defined as he rae of change of elociy. If he elociy changes by an amoun in a ime, hen he aerage acceleraion during

More information

NRMI: Natural and Efficient Middleware

NRMI: Natural and Efficient Middleware NRMI: Naural and Efficien Middleware Eli Tilevich and Yannis Smaragdakis Cener for Experimenal Research in Compuer Sysems (CERCS), College of Compuing, Georgia Tech {ilevich, yannis}@cc.gaech.edu Absrac

More information

DEFINITION OF THE LAPLACE TRANSFORM

DEFINITION OF THE LAPLACE TRANSFORM 74 CHAPER 7 HE LAPLACE RANSFORM 7 DEFINIION OF HE LAPLACE RANSFORM REVIEW MAERIAL Improper inegral wih infinie limi of inegraio Inegraion y par and parial fracion decompoiion INRODUCION In elemenary calculu

More information

Test - Accredited Configuration Engineer (ACE) Exam - PAN-OS 6.0 Version

Test - Accredited Configuration Engineer (ACE) Exam - PAN-OS 6.0 Version Tes - Accredied Configuraion Engineer (ACE) Exam - PAN-OS 6.0 Version ACE Exam Quesion 1 of 50. Which of he following saemens is NOT abou Palo Alo Neworks firewalls? Sysem defauls may be resored by performing

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 06 Using FSMs Review: Typical Controller: state

Outline. EECS Components and Design Techniques for Digital Systems. Lec 06 Using FSMs Review: Typical Controller: state Ouline EECS 5 - Componens and Design Techniques for Digial Sysems Lec 6 Using FSMs 9-3-7 Review FSMs Mapping o FPGAs Typical uses of FSMs Synchronous Seq. Circuis safe composiion Timing FSMs in verilog

More information

1.4 Application Separable Equations and the Logistic Equation

1.4 Application Separable Equations and the Logistic Equation 1.4 Applicaion Separable Equaions and he Logisic Equaion If a separable differenial equaion is wrien in he form f ( y) dy= g( x) dx, hen is general soluion can be wrien in he form f ( y ) dy = g ( x )

More information

A non-stationary uniform tension controlled interpolating 4-point scheme reproducing conics

A non-stationary uniform tension controlled interpolating 4-point scheme reproducing conics A non-saionary uniform ension conrolled inerpolaing 4-poin scheme reproducing conics C. Beccari a, G. Casciola b, L. Romani b, a Deparmen of Pure and Applied Mahemaics, Universiy of Padova, Via G. Belzoni

More information

Boyce - DiPrima 8.4, Multistep Methods

Boyce - DiPrima 8.4, Multistep Methods Boyce - DiPrima 8., Mulisep Mehods Secion 8., p. 67: Iniializaion In[1]:= In[]:= Impor "ColorNames.m" DiffEqs` Runga-Kua Mehod Implemen one sep of he Runge-Kua Mehod. In[]:= Clear y,, h, f ; eqn : y' f,

More information

COSC 3213: Computer Networks I Chapter 6 Handout # 7

COSC 3213: Computer Networks I Chapter 6 Handout # 7 COSC 3213: Compuer Neworks I Chaper 6 Handou # 7 Insrucor: Dr. Marvin Mandelbaum Deparmen of Compuer Science York Universiy F05 Secion A Medium Access Conrol (MAC) Topics: 1. Muliple Access Communicaions:

More information

Simple Network Management Based on PHP and SNMP

Simple Network Management Based on PHP and SNMP Simple Nework Managemen Based on PHP and SNMP Krasimir Trichkov, Elisavea Trichkova bsrac: This paper aims o presen simple mehod for nework managemen based on SNMP - managemen of Cisco rouer. The paper

More information

Outline. CS38 Introduction to Algorithms 5/8/2014. Network flow. Lecture 12 May 8, 2014

Outline. CS38 Introduction to Algorithms 5/8/2014. Network flow. Lecture 12 May 8, 2014 /8/0 Ouline CS8 Inroducion o Algorihm Lecure May 8, 0 Nework flow finihing capaciy-caling analyi Edmond-Karp, blocking-flow implemenaion uni-capaciy imple graph biparie maching edge-dijoin pah aignmen

More information

Quantitative macro models feature an infinite number of periods A more realistic (?) view of time

Quantitative macro models feature an infinite number of periods A more realistic (?) view of time INFINIE-HORIZON CONSUMPION-SAVINGS MODEL SEPEMBER, Inroducion BASICS Quaniaive macro models feaure an infinie number of periods A more realisic (?) view of ime Infinie number of periods A meaphor for many

More information

Chapter 4 Sequential Instructions

Chapter 4 Sequential Instructions Chaper 4 Sequenial Insrucions The sequenial insrucions of FBs-PLC shown in his chaper are also lised in secion 3.. Please refer o Chaper, "PLC Ladder diagram and he Coding rules of Mnemonic insrucion",

More information

Scattering at an Interface: Normal Incidence

Scattering at an Interface: Normal Incidence Course Insrucor Dr. Raymond C. Rumpf Office: A 337 Phone: (915) 747 6958 Mail: rcrumpf@uep.edu 4347 Applied lecromagneics Topic 3f Scaering a an Inerface: Normal Incidence Scaering These Normal noes Incidence

More information

Curves & Surfaces. Last Time? Today. Readings for Today (pick one) Limitations of Polygonal Meshes. Today. Adjacency Data Structures

Curves & Surfaces. Last Time? Today. Readings for Today (pick one) Limitations of Polygonal Meshes. Today. Adjacency Data Structures Las Time? Adjacency Daa Srucures Geomeric & opologic informaion Dynamic allocaion Efficiency of access Curves & Surfaces Mesh Simplificaion edge collapse/verex spli geomorphs progressive ransmission view-dependen

More information

tr_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Report no TR-22/88

tr_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Report no TR-22/88 r_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Repor no TR-22/88 Deparmen of Compuer Science and Sysems McMaser Universiy 1988 McESE-FranzLISP: McMASTER

More information

Packet Scheduling in a Low-Latency Optical Interconnect with Electronic Buffers

Packet Scheduling in a Low-Latency Optical Interconnect with Electronic Buffers Packe cheduling in a Low-Laency Opical Inerconnec wih Elecronic Buffers Lin Liu Zhenghao Zhang Yuanyuan Yang Dep Elecrical & Compuer Engineering Compuer cience Deparmen Dep Elecrical & Compuer Engineering

More information

On Continuity of Complex Fuzzy Functions

On Continuity of Complex Fuzzy Functions Mahemaical Theory and Modeling www.iise.org On Coninuiy of Complex Fuzzy Funcions Pishiwan O. Sabir Deparmen of Mahemaics Faculy of Science and Science Educaion Universiy of Sulaimani Iraq pishiwan.sabir@gmail.com

More information

It is easier to visualize plotting the curves of cos x and e x separately: > plot({cos(x),exp(x)},x = -5*Pi..Pi,y = );

It is easier to visualize plotting the curves of cos x and e x separately: > plot({cos(x),exp(x)},x = -5*Pi..Pi,y = ); Mah 467 Homework Se : some soluions > wih(deools): wih(plos): Warning, he name changecoords has been redefined Problem :..7 Find he fixed poins, deermine heir sabiliy, for x( ) = cos x e x > plo(cos(x)

More information

Improving Ranking of Search Engines Results Based on Power Links

Improving Ranking of Search Engines Results Based on Power Links IPASJ Inernaional Journal of Informaion Technology (IIJIT) Web Sie: hp://www.ipasj.org/iijit/iijit.hm A Publisher for Research Moivaion... Email: edioriiji@ipasj.org Volume 2, Issue 9, Sepember 2014 ISSN

More information

Discrete Event Systems. Lecture 14: Discrete Control. Continuous System. Discrete Event System. Discrete Control Systems.

Discrete Event Systems. Lecture 14: Discrete Control. Continuous System. Discrete Event System. Discrete Control Systems. Lecure 14: Discree Conrol Discree Even Sysems [Chaper: Sequenial Conrol + These Slides] Discree Even Sysems Sae Machine-Based Formalisms Saechars Grafce Laboraory 2 Peri Nes Implemenaion No covered in

More information

Learning in Games via Opponent Strategy Estimation and Policy Search

Learning in Games via Opponent Strategy Estimation and Policy Search Learning in Games via Opponen Sraegy Esimaion and Policy Search Yavar Naddaf Deparmen of Compuer Science Universiy of Briish Columbia Vancouver, BC yavar@naddaf.name Nando de Freias (Supervisor) Deparmen

More information

Coded Caching with Multiple File Requests

Coded Caching with Multiple File Requests Coded Caching wih Muliple File Requess Yi-Peng Wei Sennur Ulukus Deparmen of Elecrical and Compuer Engineering Universiy of Maryland College Park, MD 20742 ypwei@umd.edu ulukus@umd.edu Absrac We sudy a

More information

Fill in the following table for the functions shown below.

Fill in the following table for the functions shown below. By: Carl H. Durney and Neil E. Coer Example 1 EX: Fill in he following able for he funcions shown below. he funcion is odd he funcion is even he funcion has shif-flip symmery he funcion has quarer-wave

More information

Piecewise Linear Models

Piecewise Linear Models 6-6 Applied Operaions Research Piecewise Linear Models Deparmen of Mahemaics and Saisics The Universi of Melbourne This presenaion has been made in accordance wih he provisions of Par VB of he coprigh

More information

An Efficient Delivery Scheme for Coded Caching

An Efficient Delivery Scheme for Coded Caching 201 27h Inernaional Teleraffic Congress An Efficien Delivery Scheme for Coded Caching Abinesh Ramakrishnan, Cedric Wesphal and Ahina Markopoulou Deparmen of Elecrical Engineering and Compuer Science, Universiy

More information

CMPSC 274: Transac0on Processing Lecture #6: Concurrency Control Protocols

CMPSC 274: Transac0on Processing Lecture #6: Concurrency Control Protocols CMPSC 274: Transac0on Processing Lecure #6: Concurrency Conrol Proocols Divy Agrawal Deparmen of Compuer Science UC Sana Barbara 4.4.1 Timesamp Ordering 4.4.2 Serializa0on Graph Tes0ng 4.4.3 Op0mis0c Proocols

More information

Real Time Contextual Summarization of Highly Dynamic Data Streams

Real Time Contextual Summarization of Highly Dynamic Data Streams Real Time Conexual Summarizaion of Highly Dynamic Daa Sreams Manoj K Agarwal Microsof Bing Search Technology Cener - India Hyderabad 500032, India agarwalm@microsof.com Krihi Ramamriham Dep. of Compuer

More information

CS 152 Computer Architecture and Engineering. Lecture 6 - Memory

CS 152 Computer Architecture and Engineering. Lecture 6 - Memory CS 152 Compuer Archiecure and Engineering Lecure 6 - Memory Krse Asanovic Elecrical Engineering and Compuer Sciences Universiy of California a Berkeley hp://www.eecs.berkeley.edu/~krse hp://ins.eecs.berkeley.edu/~cs152

More information

Optics and Light. Presentation

Optics and Light. Presentation Opics and Ligh Presenaion Opics and Ligh Wha comes o mind when you hear he words opics and ligh? Wha is an opical illusion? Opical illusions can use color, ligh and paerns o creae images ha can be

More information

Announcements. TCP Congestion Control. Goals of Today s Lecture. State Diagrams. TCP State Diagram

Announcements. TCP Congestion Control. Goals of Today s Lecture. State Diagrams. TCP State Diagram nnouncemens TCP Congesion Conrol Projec #3 should be ou onigh Can do individual or in a eam of 2 people Firs phase due November 16 - no slip days Exercise good (beer) ime managemen EE 122: Inro o Communicaion

More information

Overview. From Point Visibility. From Point Visibility. From Region Visibility. Ray Space Factorization. Daniel Cohen-Or Tel-Aviv University

Overview. From Point Visibility. From Point Visibility. From Region Visibility. Ray Space Factorization. Daniel Cohen-Or Tel-Aviv University From-Region Viibiliy and Ray Space Facorizaion Overview Daniel Cohen-Or Tel-Aviv Univeriy Shor inroducion o he problem Dual Space & Parameer/Ray Space Ray pace facorizaion (SIGGRAPH 0) From Poin Viibiliy

More information

Less Pessimistic Worst-Case Delay Analysis for Packet-Switched Networks

Less Pessimistic Worst-Case Delay Analysis for Packet-Switched Networks Less Pessimisic Wors-Case Delay Analysis for Packe-Swiched Neworks Maias Wecksén Cenre for Research on Embedded Sysems P O Box 823 SE-31 18 Halmsad maias.wecksen@hh.se Magnus Jonsson Cenre for Research

More information

Difficulty-aware Hybrid Search in Peer-to-Peer Networks

Difficulty-aware Hybrid Search in Peer-to-Peer Networks Difficuly-aware Hybrid Search in Peer-o-Peer Neworks Hanhua Chen, Hai Jin, Yunhao Liu, Lionel M. Ni School of Compuer Science and Technology Huazhong Univ. of Science and Technology {chenhanhua, hjin}@hus.edu.cn

More information

Projection & Interaction

Projection & Interaction Projecion & Ineracion Algebra of projecion Canonical viewing volume rackball inerface ransform Hierarchies Preview of Assignmen #2 Lecure 8 Comp 236 Spring 25 Projecions Our lives are grealy simplified

More information

Real Time Integral-Based Structural Health Monitoring

Real Time Integral-Based Structural Health Monitoring Real Time Inegral-Based Srucural Healh Monioring The nd Inernaional Conference on Sensing Technology ICST 7 J. G. Chase, I. Singh-Leve, C. E. Hann, X. Chen Deparmen of Mechanical Engineering, Universiy

More information

Traditional Rendering (Ray Tracing and Radiosity)

Traditional Rendering (Ray Tracing and Radiosity) Tradiional Rendering (Ray Tracing and Radiosiy) CS 517 Fall 2002 Compuer Science Cornell Universiy Bidirecional Reflecance (BRDF) λ direcional diffuse specular θ uniform diffuse τ σ BRDF Bidirecional Reflecance

More information

THE EQUIVALENCE OF MODELS OF TASKING + by Daniel M. Berry Brown University

THE EQUIVALENCE OF MODELS OF TASKING + by Daniel M. Berry Brown University THE EQUVALENCE OF MODELS OF TASKNG + by Daniel M. Berry Brown Universiy Absrac. A echnique for proving he equivalence of implemenaions of muli-asking programming languages is developed and applied o proving

More information

Project #1 Math 285 Name:

Project #1 Math 285 Name: Projec #1 Mah 85 Name: Solving Orinary Differenial Equaions by Maple: Sep 1: Iniialize he program: wih(deools): wih(pdeools): Sep : Define an ODE: (There are several ways of efining equaions, we sar wih

More information

The Impact of Product Development on the Lifecycle of Defects

The Impact of Product Development on the Lifecycle of Defects The Impac of Produc Developmen on he Lifecycle of Rudolf Ramler Sofware Compeence Cener Hagenberg Sofware Park 21 A-4232 Hagenberg, Ausria +43 7236 3343 872 rudolf.ramler@scch.a ABSTRACT This paper invesigaes

More information

An Improved Square-Root Nyquist Shaping Filter

An Improved Square-Root Nyquist Shaping Filter An Improved Square-Roo Nyquis Shaping Filer fred harris San Diego Sae Universiy fred.harris@sdsu.edu Sridhar Seshagiri San Diego Sae Universiy Seshigar.@engineering.sdsu.edu Chris Dick Xilinx Corp. chris.dick@xilinx.com

More information

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries Axiomaic Foundaions and Algorihms for Deciding Semanic Equivalences of SQL Queries Shumo Chu, Brendan Murphy, Jared Roesch, Alvin Cheung, Dan Suciu Paul G. Allen School of Compuer Science and Engineering

More information

C 1. Last Time. CSE 490/590 Computer Architecture. Cache I. Branch Delay Slots (expose control hazard to software)

C 1. Last Time. CSE 490/590 Computer Architecture. Cache I. Branch Delay Slots (expose control hazard to software) CSE 490/590 Compuer Archiecure Cache I Seve Ko Compuer Sciences and Engineering Universiy a Buffalo Las Time Pipelining hazards Srucural hazards hazards Conrol hazards hazards Sall Bypass Conrol hazards

More information

Low-Cost WLAN based. Dr. Christian Hoene. Computer Science Department, University of Tübingen, Germany

Low-Cost WLAN based. Dr. Christian Hoene. Computer Science Department, University of Tübingen, Germany Low-Cos WLAN based Time-of-fligh fligh Trilaeraion Precision Indoor Personnel Locaion and Tracking for Emergency Responders Third Annual Technology Workshop, Augus 5, 2008 Worceser Polyechnic Insiue, Worceser,

More information

Differential Geometry of Surfaces with Mathcad: A Virtual Learning Approach

Differential Geometry of Surfaces with Mathcad: A Virtual Learning Approach The 4 h Inernaional Conference on Virual Learning Gheorghe Asachi Technical Universiy of Iaşi, Oc 30-Nov, 009 Differenial Geomery of Surfaces wih Mahca: A Virual Learning Approach Nicolae Dăneţ Technical

More information

NURBS rendering in OpenSG Plus

NURBS rendering in OpenSG Plus NURS rering in OpenSG Plus F. Kahlesz Á. alázs R. Klein Universiy of onn Insiue of Compuer Science II Compuer Graphics Römersrasse 164. 53117 onn, Germany Absrac Mos of he indusrial pars are designed as

More information

SREM: A Novel Multicast Routing Algorithm - Comprehensive Cost Analysis

SREM: A Novel Multicast Routing Algorithm - Comprehensive Cost Analysis REM: A Novel Mulicas Rouing Algorihm - Comprehensive Cos Analysis Yewen Cao and Khalid Al-Begain chool of Compuing, Universiy of Glamorgan, CF37 DL, Wales, U.K E-mail:{ycao,kbegain}@glam.ac.uk Absrac Ever-increasing

More information

A New Semantic Cache Management Method in Mobile Databases

A New Semantic Cache Management Method in Mobile Databases Journal o Compuer Science 1 (3): 351-354, 25 ISSN 1549-3636 Science Publicaions, 25 A New Semanic Cache Managemen Mehod in Mobile Daabases Shengei Shi, Jianzhong Li and Chaokun Wang School o Compuer Science

More information

MOBILE COMPUTING. Wi-Fi 9/20/15. CSE 40814/60814 Fall Wi-Fi:

MOBILE COMPUTING. Wi-Fi 9/20/15. CSE 40814/60814 Fall Wi-Fi: MOBILE COMPUTING CSE 40814/60814 Fall 2015 Wi-Fi Wi-Fi: name is NOT an abbreviaion play on Hi-Fi (high fideliy) Wireless Local Area Nework (WLAN) echnology WLAN and Wi-Fi ofen used synonymous Typically

More information

MOBILE COMPUTING 3/18/18. Wi-Fi IEEE. CSE 40814/60814 Spring 2018

MOBILE COMPUTING 3/18/18. Wi-Fi IEEE. CSE 40814/60814 Spring 2018 MOBILE COMPUTING CSE 40814/60814 Spring 2018 Wi-Fi Wi-Fi: name is NOT an abbreviaion play on Hi-Fi (high fideliy) Wireless Local Area Nework (WLAN) echnology WLAN and Wi-Fi ofen used synonymous Typically

More information

REDUCTIONS BBM ALGORITHMS DEPT. OF COMPUTER ENGINEERING ERKUT ERDEM. Bird s-eye view. May. 12, Reduction.

REDUCTIONS BBM ALGORITHMS DEPT. OF COMPUTER ENGINEERING ERKUT ERDEM. Bird s-eye view. May. 12, Reduction. BBM 0 - ALGORITHMS DEPT. OF COMPUTER ENGINEERING ERKUT ERDEM REDUCTIONS May., 0 Bird s-eye view Desideraa. Classify problems according o compuaional requiremens. complexiy order of growh examples linear

More information