accommodating global policies and user preferences in computer supported collaborative systems

93
Accommodating Global Policies and User Preferences in Computer Supported Collaborative Systems Student: Helmuth Trefftz Advisors: Prof. Rick Mammone Prof. Ivan Marsic Rutgers University April, 2001

Upload: chavez

Post on 23-Jan-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Accommodating Global Policies and User Preferences in Computer Supported Collaborative Systems. Student: Helmuth Trefftz Advisors: Prof. Rick Mammone Prof. Ivan Marsic Rutgers University April, 2001. Motivation Related Work Thesis Statement Experimental Setup Mathematical Model - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Accommodating Global Policies andUser Preferences in Computer Supported Collaborative Systems

Student:

Helmuth Trefftz

Advisors:

Prof. Rick Mammone

Prof. Ivan Marsic

Rutgers University

April, 2001

Page 2: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Agenda

• Motivation• Related Work• Thesis Statement• Experimental Setup• Mathematical Model• Preliminary Results• Future Work• Conclusions

Page 3: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (1)

• We are multi-modal

Page 4: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (1)

• We are multi-modal• We acquire information

through multiple modalities (sensory channels):– Sight– Sound– Smell– ..

Page 5: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (1)

• We are multi-modal• We acquire information through

multiple modalities (sensory channels): :– Sight– Sound– Smell– ..

• Most intense experiences involve multiple modalities (love)

Page 6: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Computer Systems become more and more multimodal:

Page 7: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Computer Systems become more and more multimodal:– e-mail, chat

Page 8: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Computer Systems become more and more multimodal:– e-mail, chat– chat with cartoons (Microsoft)

Page 9: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Computer Systems become more and more multimodal:– e-mail, chat– chat with cartoons (Microsoft)– CuSeeMe

Page 10: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Computer Systems become more and more multimodal:– e-mail, chat– chat with cartoons (Microsoft)– CuSeeMe– NetMeeting, Face Mail– …

• Integration of text, voice, video

Page 11: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (2)

• Face Mail:• Input

– Text + “:- ):

• Output– Synthesized voice– Animated character

• Multiple Info. Rep.!

Page 12: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (3)

• Multiple levels of information representation

Page 13: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (3)

• Multiple levels of information representation– Some years ago: browsers showed

a low-resolution image first, then refined

Page 14: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (3)

• Multiple levels of information representation– Some years ago: browsers showed

a low-resolution image first, then refined

– In Virtual Environments: distant objects are represented with lower Level Of Detail

Page 15: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (3)

• Multiple levels of information representation– Some years ago: browsers showed

a low-resolution image first, then refined

– In Virtual Environments: distant objects are represented with lower Level Of Detail

– “FaceMail”: you type text, output: voice + avatar

Page 16: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (4)

• Multiple dimensions of information representation

Page 17: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (4)

• Multiple dimensions of information representation– Text: easier to store, easier to

search

Page 18: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (4)

• Multiple dimensions of information representation– Text: easier to store, easier to

search– Sound: hands-free, ‘warmer’

interaction

Page 19: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (4)

• Multiple dimensions of information representation– Text: easier to store, easier to

search– Sound: hands-free, ‘warmer’

interaction– Text -> Sound: MS Whisper– Sound -> Text: IBM Via-voice

Page 20: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• Multiple dimensions of information representation (VSI):

• Company I used to work for.• Product: multi-modal

representation of information for distance learning.

• Channels: video + sound + text + animations.

Page 21: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• Multiple levels of information representation (VSI)– Video + Sound (engaging)

Page 22: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• Multiple levels of information representation (VSI)– Video + Sound (engaging)– Graphics + Animations (concepts)

Page 23: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• Multiple levels of information representation (VSI)– Video + Sound (engaging)– Graphics + Animations (concepts)– Text (search)

Page 24: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• After months of separate work in video, text, graphics

Page 25: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• After months of separate work in video, text, graphics

• Integrated product was… NOT SMOOTH!

Page 26: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• After months of separate work in video, text, graphics

• Integrated product was… NOT SMOOTH!

• Elaborate animations made video choke!

Page 27: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (6)

• Integration: find the appropriate space in a multi-dimensional space:

Video + Audio

Graphics

Page 28: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (7)

• Multiple values in each dimension:

Page 29: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (7)

• Multiple values in each dimension:– Video: resolution, frames per

second

Page 30: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (7)

• Multiple values in each dimension:– Video: resolution, frames per

second– Sound: sample resolution, sample

rate

Page 31: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (7)

• Multiple values in each dimension:– Video: resolution, frames per

second– Sound: sample resolution, sample

rate– In Networked Virtual

Environments: update rate

Page 32: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (7)

• Multiple values in each dimension:– Video: resolution, frames per

second– Sound: sample resolution, sample

rate– In Networked Virtual

Environments: update rate– Text: ?

Page 33: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (8)

• Higher values in each dimension:

Page 34: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (8)

• Higher values in each dimension:– More space to store

Page 35: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (8)

• Higher values in each dimension:– More space to store– More CPU cycles to process

Page 36: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (8)

• Higher values in each dimension:– More space to store– More CPU cycles to process– More bandwidth to transmit

Page 37: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (9)

• Computers in a Collaborative System

Adapted from: http://www.intel.com/intel/museum/25anniv/hof/moore.htm

generation

performance

i i+1i - 1

Page 38: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (9)

• Computers in a Collaborative System:

• Disparities among consecutive generations will grow larger in:– Processor speed– Memory– Bandwidth

Page 39: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation (9)

• How to cope with these disparities?

Slower computers Faster computers

Page 40: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation - Summary

• Multiple modalities - multiple dimensions

Page 41: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation - Summary

• Multiple modalities - multiple dimensions

• Multiple qualities of information representation - multiple points

Page 42: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Motivation - Summary

• Multiple modalities - multiple dimensions

• Multiple qualities of information representation - multiple points

• Performance - limits the “valid” hyper space

Page 43: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (1)

• CVEs in Distance Education in Colombia

Page 44: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (1)

• CVEs in Distance Education in Colombia– Collaborative Virtual Environment

as learning experience

Page 45: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (1)

• CVEs in Distance Education in Colombia– Collaborative Virtual Environment

as learning experience– AVALON: (Carlos Correa)

• Multiple modalities:– Avatars, VRML worlds, OpenGL– Voice: multicast version of “Speak

freely” (Francisco Cardona, now at Swiss Federal Institute of Technology (EPFL) )

Page 46: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (1)

• CVEs in Distance Education in Colombia– Used in a real learning

environment (Environmental Issues class at Eafit University).

– Improvement in learning measured with the “Teaching for Understanding” model (Harvard)

Page 47: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (2)

• Michael Macedonia - Ph.D. thesis (1995)– Partition the space in hexagonal

spaces– Each hexagonal space is a

multicast group– Implemented in DIS (Distributed

Interactive Simulation) and SIMNET (Simulator Networking)

Read Thesis Statement

Page 48: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (2)

• Thesis Statement:“Virtual environment software

architectures can exploit wide area multicasting communications and

entity relationships to partition the virtual world and enable the

development of scalable distributed interactive simulations for military

projects”.(Michael Macedonia, 1995)

Page 49: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Related Work (3)

• Michael Capps - Ph.D. thesis (2000)– Have multiple representations for

each object– Define which representation to

use based on:• Quality• Importance• Cost

Page 50: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Our Thesis Statement

“It is possible to express global policies and individual users’ preferences in

collaborative multimodal systems as a formal mathematical model.

Solving this mathematical model, which includes performance measurements taken at each

participating node, guarantees enforcement of the policies while

allowing individual users to adjust their interaction with the system.”

Page 51: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Thesis Statement

Page 52: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Assumptions

• Collaborative System• Diverse degrees of computing

power• Nodes have limited computing

power• Shared information: varying

levels of fidelity in time/space dimensions

Page 53: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (1)

• Distributed visualization system• Users share a Visualization Data

Set• “Video” of the other

participants • Telepointers• One user can manipulate the

object at a time

Page 54: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (2)

• User Interface

Page 55: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):

Page 56: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):– Video

Page 57: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):– Video– Object Movements

Page 58: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):– Video– Object Movements– Telepointer Movements

Page 59: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):– Video– Object Movements– Telepointer Movements– Graphic complexity used locally

for the visualized data set

Page 60: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (3)

• Information Dimensions (variables):– Video– Object Movements– Telepointer Movements– Graphic complexity used locally

for the visualized data set– Rendered object frames per

second

Page 61: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (4)

• Independent variables:– Video– Object Movements– Telepointer Movements– Graphic complexity used locally

for the visualized data set

• Dependent variable:– Rendered object frames per

second

Page 62: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (5)

• Mapping from independent to dependent variable:

Page 63: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (5)

• Mapping from independent to dependent variable:

• “Performance Mapping”

Page 64: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (5)

• Mapping from independent to dependent variable:

• “Performance Mapping”

• Individual for each machine• Determined before the

collaborative session running a simulated session

Page 65: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (6)

• Architecture:

Server

Client 1 Client 2 Client n

Page 66: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Experimental Setup (6)

• Switchboard analogy

Page 67: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (1)

• Measurable way to express:– User preferences– Minimum performance levels – Maximum level of service that can

be offered• Server processing cycles• Available bandwidth

Page 68: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (1)

• User preferences: (i)

• Objective Function.

})30/50(.)20/25(.)20/0()3/25(.)20/0{( FMTGVMax

Page 69: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (1)

• Minimum performance levels: (ii)– V >= 1– G >= 1– T >= 5– M >= 1– F >= 2

Page 70: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (1)

• Maximum level of service: (iii)– Sum (Vi) <= 100

– Sum (Ti) <= 150

– Sum (Mi) <= 120

– Gi and Fi have only local impact

Page 71: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (1)

• Can be solved locally (at each machine):– Individual Objective Function +

type (ii) restrictions

• Require a global solution:– Type (iii) restrictions + Global

Objective Function

• Possibility to solve the first part in parallel.

Page 72: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (2)

• Combining the three types of equations

• A “LINEAR PROGRAMMING” OPTIMIZATION PROBLEM

Page 73: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (2)

• Combining the three types of equations

• A “LINEAR PROGRAMMING PROBLEM”

• Each local solution:– Valid search space enforcing

global policies– Optimize local Objective Function

allowing each user to adjust her interaction

Page 74: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (2)

• Global Solution:– Determine (and enforce) top

limit on service handled by the server and the network

Page 75: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (3)

• Challenges:– In classic Linear Programming

variables take continuous values.– In our problem: discrete values.– Parallel processing of partial

solutions– Once a solution is found, if a

condition changes, the next solution should be found without restarting the computation.

Page 76: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Mathematical Model (3)

• Possible solutions:• Use integer programming• Use piece-wise linear

programming• Non-linear optimization

techniques

Page 77: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results (1)

• Server:– Accepts TCP connections for meta-

information – A predefined multicast group for

each “socket” in the switchboard

TCP

UDP multicastTimer

UDP unicast

Page 78: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results (2)

• Client:– Establishes a TCP connection for

subscription messages– Receives simulated updates from

the server

TCP

UDP (mcast)

TimerSS

UDP (unicast)

Page 79: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(3)

• Computers:– Dragonfire: Pentium II @ 350 MHz,

64MB main memory– Morlak: Pentium II @ 400 MHz,

256 MB main memory

Page 80: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(3)

• 3D Models:– Guts: 27,202 vertices– Skull: 1,210 vertices

Page 81: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(4)

• “Idle” performance:

SkullGuts

Dragonfire

Morlak0

20

40

60

80

100

No remote updates

Page 82: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(5)

• Effect of video-events frequency:

No

upda

tes

1000

ms

500

ms

200

ms

100

ms

Morlak GutsMorlak Skull0

1020304050607080

Video Updates

Page 83: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(5)

• Effect of object-movement-events frequency:

No

upda

tes

1000

ms

500

ms

200

ms

100

ms

Morlak GutsMorlak Skull0

102030405060708090

Object Updates

Page 84: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(5)

• Note that video events have more impact on the local performance than object movement events.

Page 85: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(6)

• Resulting performance mapping (Skull):

1

2

3

4

5

1

2

3

4

5

40

50

60

70

80

90

Object Updates

Object x Video Morlak Skull

Video Updates

Avera

ge F

PS

Page 86: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Preliminary results(6)

• Resulting performance mapping (Guts):

1

2

3

4

5

1

2

3

4

5

4

4.5

5

5.5

6

6.5

7

Object

Object x Video Morlak Guts

Video

Avera

ge F

PS

Page 87: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Future Work (1)

• Server: – Receive and cache (not queue)

messages.

Page 88: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Future Work (1)

• Server: – Receive and cache (not queue)

messages.

• Client:– Implement frame grabbing– Send updates

Page 89: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Future Work (2)

• Math:– Local solution for type (i) and type

(ii) equations– Global solution involving type (iii)

equations– Choose solver:

• Initially: “brute force” (search through the finite search space)

• Linear programming?• Non-linear programming?

Page 90: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Conclusions (1)

• Mathematical model provides objective solution for two types of conflicting situations:

• Diverse Computing power of the nodes

• Global policies and users’ preferences

Page 91: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Conclusions (2)

• Assigning different multicast groups to the different values the variables can take make the solution scalable.

Page 92: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems

Thank you!

Page 93: Accommodating Global Policies and User Preferences in  Computer Supported Collaborative Systems