M.S. Thesis Presentation Alex Dekhtyar for CSC 590

Preview:

Citation preview

M.S. Thesis PresentationM.S. Thesis Presentation

Alex DekhtyarAlex Dekhtyar

for CSC 590for CSC 590

We will talk about...We will talk about...• Logistics of M.S. Defense

• Structure of Presentation

• Presentation Style

–Delivery

–Slides

Part I.Part I.M.S. DefenseM.S. Defense

M.S. Defense

+ What?

+ When?

+ Who?

+ How Long?

M.S. Defense

- What?- Final stepFinal step

+ When?

+ Who?

+ How Long?

M.S. Defense

+ What?

- When? - When thesis is ready!

+ Who?

+ How Long?

M.S. Defense+ What?+ When? - Who?

- YouYou

- AdvisorAdvisor

- CommitteeCommittee

+ How Long?

M.S. Defense

+ What?

+ When?

+ Who?

- How Long?

Presentation: Presentation: 30– 45 mins30– 45 minsQuestions and Answers: Questions and Answers: 10 – 3010 – 30 minsmins

Discussion: Discussion: 5 – 15 mins5 – 15 mins

Total: 45 – 90 mins45 – 90 mins

M.S. Defense

+ What?

+ When?

+ Who?

- How Long?

Total: 45 – 90 mins45 – 90 mins

PublicPublic

Closed doorsClosed doors

Presentation: Presentation: 30– 45 mins30– 45 minsQuestions and Answers: Questions and Answers: 10 – 3010 – 30 minsmins

Discussion: Discussion: 5 – 15 mins5 – 15 mins

LogisticsLogistics

Committee SelectionCommittee Selection Defense SchedulingDefense Scheduling Talk PreparationTalk Preparation

Committee Selection

Selected bySelected by: You and Advisor: You and Advisor

CommitteeCommittee = Advisor + at least 2 more = Advisor + at least 2 morefaculty membersfaculty members

Select:Select: (a)(a)Those who know Those who know youyou(b)(b)Those who know Those who know the fieldthe field

WhenWhen: as early as possible: as early as possible

Scheduling Defense

Three weeks Three weeks

ahead of timeahead of time

After thesis is After thesis is

completecompleteDone with

Done with

thesisthesis

Schedule defense around here

Talk Preparation

You speakYou speakYou show props slides

Think ... Memorize first 2-5 mins Practice, practice, practiceFirst set : 24 hours

Second set:12 hours Third set : 6 hours

Alex’s rulesAlex’s rulesFor 1 hour talk:For 1 hour talk:

Talk Preparation

First set : 24 hours Second set:12 hours Third set : 6 hours

Alex’s rulesAlex’s rulesFor 1 hour talk:For 1 hour talk:

First rehearsal with advisor

Second rehearsal with advisor

24-48 hours

24-48 hoursDefense

LogisticsLogistics

Committee SelectionCommittee Selection Defense SchedulingDefense Scheduling Talk PreparationTalk Preparation

We will talk about...We will talk about...• Logistics of M.S. Defense

Structure of Presentation

• Presentation Style

–Delivery

–Slides

Part II.Part II.Presentation StructurePresentation Structure

Presentation Outline

Title Slide: «backstory» Teaser Outline Introduction/Motivation Problem Background Solution ImplementationValidationRelated work Future work and conclusions

7 – 12 minutes7 – 12 minutes

5 – 20(5 – 20(!!) minutes) minutes

10 - 25 minutes10 - 25 minutes

5 - 10 minutes5 - 10 minutes

3 - 5 minutes3 - 5 minutes

Title Slide & Backstory

By

Mark Barry

Direct Extraction of Normal Maps from Volume Data

February 2007

Master’s ThesisTitleTitle

Thesis mentionThesis mention

NameName

DateDate

AdvisorAdvisor

DepartmentDepartment

UniversityUniversity

Management of Concurrent XML Management of Concurrent XML using Distributed DOMusing Distributed DOM

Karthikeyan SethuramasubbuKarthikeyan Sethuramasubbu

Advisor: Dr. Alexander DekhtyarAdvisor: Dr. Alexander Dekhtyar

University of University of KentuckyKentucky

Department of Computer ScienceDepartment of Computer Science

Building An Operational Data Store For A Direct Marketing Application

System

Chad Smith

March, 2009

Department of Computer Science

California Polytechnic State University, SLO

Title Slide & Backstory

• Title• Name• Advisor• Department• Thesis mention• Date

• Who you are• What you do• How you came across

this project• ... a smooth transition

to next slide...

SlideSlide SpeakSpeak

Teaser

Distributed DOM Processor

XML XML XML…Distributed XML Document

DOM Parser

DOM DOM DOM…Distributed DOM

Multi-hierarchical XML

EXPath Processor

Karthikeyan S.

Teaser

• Slide(s) before OutlineSlide(s) before Outline• One-three slides

– screen shots– output (e.g. In graphics)– architecture diagram– «best» experimental data

• Quick visual summary of your thesis

• 30-second version of your 30-second version of your thesis talkthesis talk

SlidesSlides SpeakSpeak

• Show your your contribution right away

WhyWhy

• Your Intro/Background part is long long ((15+ mins15+ mins))

WhenWhen

(Optional)(Optional)

Project Goal Developed front-end for an automated

requirements tracing tool.

Sravanthi Vadlamudi

GODDAGGODDAG

In-memory datastructure

Concurrent Parser

XML XML XML…Distributed XML Document

DriverXML(TEI)

BUVHDriver

JITTSDriver

Otherrepresentations

SpecialDBMS

RDBMS

Persistentsupport

Editor

User

Tools

Data Management Framework

XPathExtended Extende

dXQuery

DB Driver

DB Driver

Processor

Query

Processor

Query

Emil Iacob

Outline

Outline

• Introduction• Contributions• Previous Work• Initial Exploration• Dual Contouring With Normal Map Extraction• Results• Conclusion and Future Work

Mark Barry

Outline

List of key List of key «milestones» in talk«milestones» in talk

• VERY LITTLE!VERY LITTLE!

SlideSlide SpeakSpeak

Use throughout the talk to keep track of where you are

Presentation Outline

Title Slide: «backstory» Teaser Outline Introduction/Motivation Problem Background Solution ImplementationValidationRelated work Future work and conclusions

Introduction/Motivation

1. Explain the subject area

2. Motivate your problem

3. State your contributions

Your GoalsYour Goals

By By minute 10minute 10 of the talk your of the talk your contribution(s) MUST be stated/describedcontribution(s) MUST be stated/described

5-10 minutes5-10 minutes

Introduction (cont’d)My Contributions

– Signature files• Abstraction• Storage requirements• Search space• Network traffic• Backend load sharing

– Cooperative I.S. daemon• Transparency• Update independence

– Query manager• Building SQL statements• Query shipment decisions

Saad Ijad

Contributions

• Direct extraction of low-resolution meshes with normal maps from volume data– One integrated step– Excellent visual results– Fast

• Benefits:– Shortcuts the current multi-step process

• High-resolution mesh never generated• No extra high- to low-resolution simplification process• Efficient “search” generating normal maps

Mark Barry

Problem Definition

May be fully covered in Introduction May be fully covered in Background May need to be formally stated separately

Formal Problem statement Formal Problem statement must be found in your talkmust be found in your talk

Introduction

• Problem:– High-resolution meshes = slow to render

• Use low-resolution meshes– Fast to render– Still look good

One of a number of

slides • Articulate the problem• Use stress, inflection

SpeakSpeak

Mark Barry

Background

Committee members Committee members must understand what must understand what your work is aboutyour work is about

Background

Non-Functional Requirements

1. (Relatively) short

2. Explain all necessary things

3. Sufficient to explain/introduce/define your problem

4. Should assume

General CS knowledge within curriculum

No special topic knowledge

What is XML?

<student id=“123456”>

<firstname> Karthikeyan </firstname>

<lastname> Sethuramasubbu </lastname>

<college> College of Engineering

<major>Computer Science</major>

</college>

</student>

Attribute name

Attribute value

Markup

content

<!ELEMENT Student (firstname, lastname, college)<!ELEMENT college (#PCDATA | major)*><!ATTLIST Student id ID #REQUIRED><!ELEMENT firstname #PCDATA>

XML schema to Validate XML

Karthikeyan S.

Document Object Model (DOM)

<student>

id=“123456” <firstname> <lastname> <college>

College of Engineering

<major>

Computer Science

root

Text node

XXX YYY

element node

attribute node

Karthikeyan S.

Path Expressions

Find the major of the student:

student college major

/student/college/major is called the path expression

<college>

<student>

id=“123456” <firstname> <lastname>

College of Engineering

<major>

Computer Science

XXXYYY

Karthikeyan S.

XPath – To access data from XML

XPathExpression:= step1/step2/step3/……../stepn

stepi := axis :: node-test Predicate*

Predicate := [expression]

Example:

/ child ::college [position()=1] / descendant::*

Location step

axis Node-testpredicate

Karthikeyan S.

XPath

Context Node : current node in the tree

<college>

<student>

id=“123456” <firstname> <lastname>

College of Engineering

<major>

Computer Science

XXXYYY

context node

child

XPath Axes

•child

•descendant

•ancestor

•parent

•preceding

• following

•attribute

Took about 10 mins Introduced 2-3 weeks worth of course material

Karthikeyan S.

Presentation Outline

Title Slide: «backstory» Teaser Outline Introduction/Motivation Problem Background Solution ImplementationValidationRelated work Future work and conclusions

Solution and Implementation

Your time to shine!

Your time to shine!

Solution and Implementation

DO:Think about it...Come up with a narrativeConcentrate on ideasExplain

DON’T:Get bogged in minutiaJump from point to pointLeave cruicial pieces out

Solution and Implementation

Remember:Highlight that this is your work!your work!

Formal description of your work is called thesis

Presentation = high level description

You get (at most) one chance to go technical

Use it wisely

A picture is worth a thousand words

Specific «things»

• Definitions– Example/Illustration– Formal statement

Se Boetius wæs ođre naman haten Seuerinus se wæs heretoga Romana

Extended Axis DefinitionsExtended Axis Definitions

xdescendant

xancestor

xdescendant

xancestor

Swati Tata

Extended XPath [TR394-04]

Semantics:xancestor(n) := {x | start-index(x) ≥

start-index(n) andend-index(x) ≤ end-

index(x)}• Algorithms for linear evaluation of axes

XPathExpression ::= LocationStep*LocationStep ::= Axis ::nodetest [predicates]

New function: documents(String[,String]*)New return type: ICollectionSet

New axes:

• xancestor

• xdescendant

• xfollowing

• xpreceding

• overlapping

• preceding-overlapping

• following-overlapping

• and their combinations

Specific «things»

• Definitions– Example/Illustration– Formal statement

• You may include formal statements

• But: spend your time on examplesspend your time on examples

Specific «things»

• Algorithms/Methods/Techniques– Example/Illustration– Pseudocode– Code– Math

Surface Extraction From Volume Data

• Marching Cubes algorithm

Mark Barry

Surface Extraction From Volume Data

• Marching Cubes algorithm

Mark Barry

Surface Extraction From Volume Data

• Extended Marching Cubes algorithm– Captures features better

Contour verticeswith normals

Marching Cubescontour surface

Extended Marching Cubescontour surface

Mark Barry

Surface Extraction From Volume Data

• Extended Marching Cubes algorithm– Captures features better

Contour verticeswith normals

Marching Cubescontour surface

Extended Marching Cubescontour surface

• Might not explain much by itself

• But remember – you get to talk

Mark Barry

xdescendant (Pseudo-code)

evaluateXdescendant (n, hname, result)

{

if n is leaf-node

return null

evaluateDescendant (n, hname, result)

append result to a Vector V

for each element p in Vector V

if Start index of p is in between the start and end index of n

append p to result

return result

}

Karthikeyan S.

Extended XPath to XQuery /xdescendant-or-self::*/parent::*

for $u in ( (for $x in doc(‘doc1’) /descendant-or-self::* where local:startIndex ($x) >= startIndex (doc(“doc1”)) and local:endIndex($x) < =endIndex (doc(“doc1”)) return if ($x intersect $R) $x union $R else $x) union …… (for $x in doc(‘docn’) /descendant-or-self::* where local:startIndex ($x) >= startIndex (doc(“docn”)) and local:endIndex($x) <= endIndex (doc(“docn”)) return if ($x intersect $R) then $x union $R else $x) )return ((for $u1 in doc(“doc1”)/$u/parent::* return if $x intersect $R then $x union $R else $R)union ….(for $u1 in doc(“docn”)/$u/parent::* return if $x intersect $R then $x union $R else $R))

Swati Tata

Evaluation of startIndex and endIndex

• End index computed as sum of start index and total length of the descendant text nodes.

declare function local: endIndex ($node as node()) as xs: integer{ let $st:=local: startIndex ($node) let $nodeText:=fn: string-join ((for $u in $node/descendant-or-self::* return $u/text()),'') let $len:=fn: string-length ($nodeText) let $end:=$st+$len return($end)};

Swati Tata

Evaluation of startIndex and endIndex

• End index computed as sum of start index and total length of the descendant text nodes.

declare function local: endIndex ($node as node()) as xs: integer{ let $st:=local: startIndex ($node) let $nodeText:=fn: string-join ((for $u in $node/descendant-or-self::* return $u/text()),'') let $len:=fn: string-length ($nodeText) let $end:=$st+$len return($end)};

Swati Tata

This was Swati’s«one technical moment»

Applying Normal Maps to the Implicit Surface

)sin(2

)sin(2

)sin(2

),,(

bzabz

byaby

bxabx

zyxf

y

zx

y

zx

y

zx

y

x

Mark Barry

Specific «things»

• Algorithms/Methods/Techniques– Example/Illustration– Pseudocode– Code– Math

• You may include math/pseudocode

• But: spend your time on examplesspend your time on examples

Specific «things»

• Software – Architecture Diagram– Component-by-component coverage– Implementation Info– Screenshots/Walkthroughs– Output– Demo

GODDAGGODDAG

In-memory datastructure

Concurrent Parser

XML XML XML…Distributed XML Document

DriverXML(TEI)

BUVHDriver

JITTSDriver

Otherrepresentations

SpecialDBMS

RDBMS

Persistentsupport

Editor

User

Tools

Data Management Framework

XPathExtended Extende

dXQuery

DB Driver

DB Driver

Processor

Query

Processor

Query

Emil IacobArchitecture Diagram

Start a new projectSravanthi Vadlamudi

Software Screenshots/Software Screenshots/ WalkthroughWalkthrough

Advanced mode Sravanthi Vadlamudi

Trace tabSravanthi Vadlamudi

RETRO Trace tabSravanthi Vadlamudi

RETRO Browse tabSravanthi Vadlamudi

Browse tabSravanthi Vadlamudi

RETRO Trace tabSravanthi Vadlamudi

RETRO View tabSravanthi Vadlamudi

Applying Normal Maps to the Implicit Surface

138,632triangles

8,216triangles

Mark BarryOutputOutput

• Results

Adaptive Contouring of Volume Data With Normal Map Extraction

Mark Barry

Implementation

• Emulation• Java 2 Micro Edition• Sun Wireless Toolkit• Oracle, SQL Server 2000, MS

Access• Java Database Connectivity

Saad IjadImplementation Details

Presentation Outline

Title Slide: «backstory» Teaser Outline Introduction/Motivation Problem Background Solution ImplementationValidationValidationRelated work Future work and conclusions

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

+ What do results mean?

Validation

- How did you evaluate?- Experiment

- Case Study

- Software V&V

- Testimony

+What did you do?

+ What results did you obtain?

+ What do results mean?

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

+ What do results mean?

Validation

+ How did you evaluate?

- What did you do?

- Hypothesis/Objective of study

- Experimental/Case study design

- Validation activities, ...

+ What results did you obtain?

+ What do results mean?

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

+ What do results mean?

Validation

+ How did you evaluate?

+ What did you do?

- What results did you obtain?

- Graphs, charts, tables, ...

- Program output

+What do results mean?

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

+ What do results mean?

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

- What do results mean?

- Hypothesis confirmed?

- What worked?

- What didn’t?

Validation

+ How did you evaluate?

+ What did you do?

+ What results did you obtain?

+ What do results mean?

+ At this point you are probably running out of time...

Evaluation Outline

• Original text is taken from James Joyce’s Ulysses (project Gutenberg)

• Used 10 hierarchies • Markup generated randomly for these 10

hierarchies

Karthikeyan S.

Evaluation Outline

• Four sets of queries– Queries that test individual axes

• /xdescendant:: line/ancestor::*

– Queries with recursive predicates • / xdescendant:: line [xancestor:: fol]

– Queries with varying number of hierarchies

• /child::* (“condition, navigation”)

– Queries with varying length• /overlapping:: (“condition”)• /overlapping:: (“condition”) / overlapping::

(“navigation”)

Karthikeyan S.

Experimental Results

Karthikeyan S.

Experimental Results

Karthikeyan S.

Experimental Results

Karthikeyan S.

Results

225,467quads

360 ms

99.8% fewer polygons

360x faster to render

558quads

1 ms

Mark Barry

225,467quads

360 ms

99.97% fewer polygons

1200x faster to render

65quads

0.3 ms

Results

Mark Barry

150,823quads

245 ms92.7% fewer polygons

11.1x faster to render

10,950quads

22 ms

Results

Mark Barry

64,896quads

103 ms

95.3% fewer polygons

17.2x faster to render

3,035quads

6 ms

Results

Mark Barry

56,637quads

91 ms 97.5% fewer polygons

30.3x faster to render

1,406quads

3 ms

Results

Mark Barry

Results of Survey

• Simple experiment to trace 22 high level with 52 low

level requirements is assigned.

• Experiment was done on 30 students of class cs617.

• Group1 had 15 students for manual tracing.

• Group 2 had 15 students for tracing using RETRO.

• A Survey with 7 questions is given to

each group and answers were on 5-point scale. 5 is

strongly agree and 1 is strongly disagree.

Sravanthi Vadlamudi

Questions of Survey

• Questions common to both groups.The project could be completed quickly.The project was tedious. If I were The project was simple to complete.performing a similar task in the future, I would want to use a

software tool to assist.

• MEANS for questions: 1 2 3 4Manual Group 3.4 2.3 3.6 4.5 RETRO Group 3.6 3.4 2.5 3.8

Sravanthi Vadlamudi

Questions Specific to RETRO

• RETRO was easy to use.

• I would rather have completed the project by hand than use RETRO.

• It probably took less time to use RETRO than it would have to complete the project by hand.

• Means for questions: 5 6 7 3.8 2.2 3.6

Sravanthi Vadlamudi

Questions specific to manual group

• I would rather have completed the project by hand than use a software tool.

• It probably would have taken less time to use a software tool to complete the project than it did by hand.

• Means for questions: 5 6

2 4.4

Sravanthi Vadlamudi

Results of survey(Contd…)

• From the analysis of the result : Students liked using RETRO.Students of manual group preferred using

some software tool.

Sravanthi Vadlamudi

Presentation Outline

Title Slide: «backstory» Teaser Outline Introduction/Motivation Problem Background Solution Implementation ValidationRelated work Related work Future work and conclusionsFuture work and conclusions

Related Work

Terse: List of papers nothing else

Verbose Overview Detailed description of one-two approaches Compare-and-contrast

Previous Work

• Contour surface (mesh) extraction from volumes

• Adaptive contouring• Dual contouring• Generating normal maps

Mark Barry

Terse, but no citations!

Concurrent HierarchiesConcurrent Hierarchies• Representation of non-well-formed features within the same XMLRepresentation of non-well-formed features within the same XML documentdocument

• TEI Guidelines (P4)TEI Guidelines (P4)• Milestone (empty) elementsMilestone (empty) elements

• SplitsSplits

•Durusau, O’Donnel ( XML Europe 2002) Durusau, O’Donnel ( XML Europe 2002) • Separate DTDsSeparate DTDs• One XML documentOne XML document• Xpath expressions encode markup of “atomic pieces”Xpath expressions encode markup of “atomic pieces”

<line/><line/> Se Boetius wæs o Se Boetius wæs ođđre naman re naman <w>ha<w>ha <line/><line/> ten</w>ten</w> <w><w>SeuerinSeuerin<dmg-start/>us<dmg-start/>us</w></w> <w><w>s<dmg-end/>s<dmg-end/>ee</w></w> wæs heretoga wæs heretoga <line/><line/>Romana Romana

<line><line> Se Boetius wæs o Se Boetius wæs ođđre naman re naman <w id=“1”>ha</w><w id=“1”>ha</w> </line></line><line><line> <w id=“1”>ten</w><w id=“1”>ten</w> <w><w>SeuerinSeuerin<dmg id=“2”>us</dmg><dmg id=“2”>us</dmg></w></w> <w><w><dmg id=“2”> s</dmg><dmg id=“2”> s</dmg>ee</w></w> wæs wæs heretoga heretoga </line> </line> <line><line>Romana Romana </line></line>

Emil Iacob

Here, drawbacks of existing work are used to motivate research

Future Work

• Promises, promises:

1. Fix known weaknesses/incompletness

2. Add new features

3. Apply to something else

Conclusion and Future Work

• Future Work– Application to games?– Determine good simplification error metric

• Optimal placement of fine details in normal map vs. mesh

– Faster and high-quality normal interpolation

– Optimize code

33

22

Mark Barry

Future Enhancements

• Re-write the back end to java.• Display the keywords used in tracing to

the analyst.• Color-code the keywords in both the high

level and low level elements• Enable analyst to modify the keywords used for tracing.

Sravanthi Vadlamudi

11

11

22

22

Future Work

• Promises, promises:

1. Fix known weaknesses/incompletness2. Add new features3. Apply to something else

– Who?– Not necessarily you– Be bold!

Conclusions

What you did What you achieved What you learned What you published

Part III.Part III. Presentation StylePresentation Style

Next Time!Next Time!

Recommended