Faculty Research - Villanova Computer Science

Download Report

Transcript Faculty Research - Villanova Computer Science

Department of Computing Sciences
September 16, 2013






Faculty are full-time and part-time members
Interests range from theoretical foundations
to practical applications
Some research is sponsored – funding for
assistantships sometimes available
Actively seeking external sponsorship and
partnership
Interdisciplinary research promoted
Student involvement is welcome and
encouraged!
CSC 9025







CSC 9025 – Often called “Independent Study”
Mandatory for graduate students
Conduct independent research under
guidance of a faculty advisor
Encouraged to tackle topics in our discipline
that interest you AND your advisor
Intended for completion in a single semester
Extension to second semester possible
Keep your eyes open for interesting topics!
Listen for opportunities to
get involved in research
Projects
Current Interest
Software Project Management
• Web Design
• Database Systems
• Inter-discipline applications of
database
•
-
Manchester Mummy project
Egypt
Alaska
South America
MANCHESTER MUMMY DATABASE
UPDATE
2013 Status
DATABASE
Database designed and implemented
 Programs to enter data completed 2012
 Documentation begun
 Egyptian data entered into database

REMAINING WORK
Update database with Alaskan mummies
 Update database with North and South
American mummies
 Transfer the database to Manchester England
 Train the researchers in England to use and
update the database
 Coordinate with researchers using the
database

RESEARCHERS USING OUR DATA 2013

Dr. Frank Ruhli, Head of Centre of Evolutionary
Medicine in Zurich
Searched the Database and found specimens for
DNA studies
 Collected the Paraffin blocks from Manchester and
have found DNA evidence in our mummy tissues


Dr. Randall Thompson, Saint Luke’s Ancient
Mummy Research
Searched the database for diagnosis of
Atherosclerosis
 He will confirm using CT scans, tissue samples and
microscopic slides

Projects




Categories of web sites
Design principles for a particular category
Systematic evaluation against design
principles
Automatic measurements




Help nonprofit corporations, usually small
ones, upgrade their web sites
Student works with “technical” person at
nonprofit
Gather data for web site evaluation
Challenges
◦ Communicating with the representatives
◦ Developing with a variety of tools
◦ Navigating the politics of the nonprofit

Current requests include:
◦ Nancy’s House, a one-person corporation that
arranges respite for caregivers
◦ Brain Injury Association of Pennsylvania
 Video based educational material on the site
 Improved web site design
 Marketing strategies to drive users to the site
◦ College of Liberal Arts and Sciences
 Better navigation

Mesh models of conflict resolution with
models of systems thinking for applications
to
◦ Nation building
◦ Co-opetition in SOA system building

Examine and model social network strategies
for promoting a cause
◦ Flash mob
◦ Philanthropy
◦ “Pipeline” maintenance

Computing and music through inquiry-based
learning (IBL)
◦ More generally, IBL for computing
◦ More specifically, strategies for using ChucK, the
language of the laptop orchestra

Pack n equally sized spheres into the unit
sphere and calculate the radius of the small
spheres as a function of n.
◦ Alternatively, use an ellipsoid of revolution instead of
the unit sphere
◦ Alternatively, solve the problems in two dimensions
◦ Use a heuristic approach
◦ Use a genetic algorithm

Strategies for calculating, storing, and
viewing mathematical structures such as:
◦ Finite rings
◦ Small Lie algebras
◦ Lie algebra representations
Projects
Dr. Lillian Cassel
Research interests:
Digital Libraries
Computing Ontology
Information and the Web
Interdisciplinary Computing
Some Current Projects
www.computingportal.org
Computing Portal
Connecting Computing Educators
A large digital library
project for computing
education, funded by NSF.
www.distributedexpertise.org/computingontology
Computing Ontology A complete definition of the
computing disciplines, in
collaboration with ACM
Just starting
With Dr. Way, Dr. Matuszek,
Earlier and Broader Access to Machine Learning and help from Dr. Papalaskari,
funded by NSF
We will hire undergraduate help
Projects

Constructing and maintaining wireless network
topologies.

Folding and unfolding polyhedra.

DNA Computing: How can DNA molecules
solve computational problems?
Projects





Information Management
Data Modeling
Data Warehousing
Data Mining
Information Metrics
Projects



Research topics related to ethical issues and
themes
Electronic voting
Outreach activities
Projects
“…degradation of service can have serious consequences, especially when the medical device
relies heavily on the wireless connection. Such situations can compromise the wireless
transmission of high-priority medical device alarms, …” FDA, August 13, 2013
E_T
WaveData
Fusion 2
1`[]
1`[]
e
AlarmQR
AlarmQS ALIST
ALIST
StatusOK
Fusion 1
ALARM_T
SendWaveData
a
Alarms
Network
Nurses
Network
Alarms
e @+ delD()
numD`D(1)
GenAlarm
a
AlarmAndData
Nurses
ConnectToAP
ALARM_T
ConnectToAP
AlarmQS
Out
ALIST
(a, getCurrTime())
a @+ delA(a)
1`[]
1`[]
StatusNOk
ResetQS
ResetQR
ALARMxTIME
ALIST
ALIST
(a, t)
[a=a1]
a1::q
ResetAlarm
ResetQR
q
ALIST
In
1`[]
AlarmQS
Out
DataGen
DataGen
Patient10
Patient10
Patient9
Patient9
Patient8
Patient8
Patient7
Patient7
Patient6
Patient6
Patient5
Patient5
Patient4
Patient4
Patient3
Patient3
Patient2
Patient2
ALIST
Patient1
Patient1
1`[]
ResetQR
In
ALIST
Heart Alarm Max Delay
35000
30000
Simulation Time Units
25000
20000
Non QoS Max Delay
QoS Max Delay
15000
10000
5000
0
1
2
3
4
5
6
7
8
Number of Patients Monitored
Need for QoS requirement for medical applications
Similar situation in other application domains
ToT
In
runConfigs( ["r1c1","r1c2","r1c3","r1c4","r2c1","r2c5","r2c6","r3c1","r3c7","r3c7e",
"r5c1-corr","r5c2-corr2","r5c3-corr","r5c4-corr","r8c1","r8c8","r8c8e"],
[(32,128), (64,256)],2)
Samples
Fusion 23
PoolListxNodeIDTimed
SampleSet
s
runConfigs(["r1c1","r5c1-corr"],[(2,16), (4,16)],2)
Pantry
if #1(plnH)<>[] then (plnH::mpl1)
else mpl1
rs
p2
Fusion 19
Initialize Sample Set
Route Table and
Node Attr Table
discardAllEmpty(rs)
RequestSet
p2^^plP
1`[]
PoolList
Request
Fusion 24
1`()
Condition Pools
Start
ConditionedPools
ConditionPools T
UNIT
PoolListxNodeIDTimed
input ();
output (s,rs);
action
(init_routing(!rt_file_name);
setCurSampleSet(genSampleSet(!sSize));
(getCurSampleSet(), genSampleSet(!rSize)))
1`[]
Hold
Fusion 21
mpl1
()
PLNIDLst
Fill Batch P
ToP
Fill Batch P T
1`[]
p1^^plM
Matched
Router
(if stP=T then (if #1(plnToP)<>[]
then 1`plnToP else empty) else empty) ++
(if stN=T then (if #1(plnToN)<>[]
then 1`plnToN else empty) else empty)
PoolListxNodeIDTimed
Fusion 22
PLNIDLst
Shared P
PLNIDLstTimed
PoolListxNodeIDTimed
am3
Shared E
1
1`[]
am3^^am4
Shared E T
PLNIDLstTimed
R Ready
INT
input (p, nodeFr, rs);
output (plnToP, plnToN, stP, stN, plM, plP, plnD, plnH,am2,am4);
action
route(p,nodeFr,rs);
(p,nodeFr)
ToType
1`12
1`Limit_R
1`[]
Possibly
Unmatched
Fusion 26
AssignmentMatrix
am1^^am2
Assigned
Samples
Fusion 25
AssignmentMatrix
ToE
Shared P T
ToS
(if stP=S then (if #1(plnToP)<>[]
then 1`plnToP else empty) else empty) ++
(if stN=S then (if #1(plnToN)<>[]
then 1`plnToN else empty) else empty)
am1
PLNIDLstTimed
1`[]
Discard
mpl2
p1
Fusion 20
PoolList
ToT
if #1(plnD)<>[] then (plnD::mpl2)
else mpl2
i
Type
@+procTime(40,20)
Type
Setup R
T
ToRouter
T
S
i
S
PoolListxNodeIDTimed
(p,~1)
R Setup
Injector
ConditionedPools
In
PoolListxNodeIDTimed
INTTimed
i i-1
p
[List.length(mpnlst) < Limit_R, i > 0]
[initPool()]
Available PoolList
pn
PoolList
In
Limit Batch
Combined
Amplicon
Pools to R
(mpl,il)
Accept
P_HIGH
PLNIDLstxIntListTimed
mpnlst
batchPoolList(pn, BatSizeMax_E)
(mpl,il)::mpnlst
[List.length(#1(pn1)) > BatSizeMin_E]
Fusion 3
pn1
Ready To
Batch
Pass
Through
[]
1`[]@0
1
Accepted
[pn1]
PLNIDLstxIntListLstTimed
PoolListxNodeIDTimed
[]
mpnlst
pn
[mpnlst<>[]]
[mplLength(mpl) + List.length(#1(pn)) <= BatSizeMax_E]
(if mpl=[] then 1`() else empty)@+Timer_P
Combined
Batched
Pools
Add to
Batch
Fusion 5
P_LOW
mpl
mpl
PLNIDLstTimed
Move To
Shared P
()
mpl
ToP
Out
i
Start R
Limit_R
PLNIDLstTimed
mpnlst@+(procTime(20,10)+150)
pn::mpl
1`()
1
Cancel
Timer
()
Timer
Fusion 6
UNITTimed
1`[]
Hold
Fusion 4
1`[]
[mplLength(mpl) >= BatSizeMin_E]
[]
Forward
Ready
Batch
mpl
PLNIDLst
mpl
1`()
1
Instument
Free
Active R
UNIT
()
[mpl1<>[]]
[]
Forward
Timedout
Batch
mpl1
()
P_HIGH
PLNIDLstxIntListLstTimed
mpnlst
mpl1
Un Batch
list2ms(getMPL(mpnlst))
Unbatched
Pools
pn1
PoolListxNodeIDTimed
Done R
pn2
input (pn1);
output (pn2);
action
processType(pn1);
ToRouter
Out
PoolListxNodeIDTimed
ToRouter
Out
PoolListxNodeIDTimed
Number of samples = 16
where Sample Set =
[[(1,[]),(2,[]),(3,[]),(4,[12])],[(1,[]),(2,[]),(3,[9]),(4,[11])],[(1,[]),(2,[]),(3,[]),(4,[])],[(1,[]),(2,[]),(3,[]),(4,[11])],[(1,[]),(2,[]),(3,[]),(4,[])
],[(1,[]),(2,[]),(3,[8]),(4,[])],[(1,[]),(2,[]),(3,[8]),(4,[11])],[(1,[]),(2,[]),(3,[]),(4,[12])],[(1,[]),(2,[]),(3,[]),(4,[])],[(1,[]),(2,[]),(3,[9]),(4,[1
1])],[(1,[]),(2,[]),(3,[]),(4,[11])],[(1,[]),(2,[]),(3,[]),(4,[12])],[(1,[]),(2,[]),(3,[]),(4,[12])],[(1,[]),(2,[]),(3,[]),(4,[11])],[(1,[]),(2,[]),(3,[]),(
4,[12])],[(1,[]),(2,[]),(3,[]),(4,[12])]]
Number of unique requests = 3
where Request Set = [[(3,[8])],[(4,[12])],[(4,[12])],[(3,[8]),(4,[11,12])]]
Number of matched samples = 8
where Matched Samples =
[([13],[(4,[12])]),([15],[(4,[12])]),([16],[(4,[12])]),([8],[(4,[12])]),([7],[(3,[8]),(4,[11])]),([6],[(3,[8])]),([1],[(4,[12])]),([12],[(4,[12])])
]
Number of pantry samples = 5
where Pantry Samples = [([14],[(4,[11])]),([4],[(4,[11])]),([2],[(3,[9]),(4,[11])]),([10],[(3,[9]),(4,[11])]),([11],[(4,[11])])]
Number of hold samples = 0
where Hold Samples = []
Number of discarded samples = 3
where Discarded Samples = [([([9],[])],12),([([5],[]),([3],[])],12)]
Number of unique assigned requests to samples = 2
where Assigned Samples =
[([(4,[12])],[([13],[(4,[12])]),([15],[(4,[12])]),([16],[(4,[12])])]),([(4,[12])],[([13],[(4,[12])]),([15],[(4,[12])]),([16],[(4,[12])])]),([(3,[8
])],[([7],[(3,[8]),(4,[11])]),([6],[(3,[8])])]),([(4,[12])],[([8],[(4,[12])]),([1],[(4,[12])])]),([(4,[12])],[([8],[(4,[12])]),([1],[(4,[12])])]),([(4,
[12])],[([12],[(4,[12])])]),([(4,[12])],[([12],[(4,[12])])])]
Number of unique possibly unmatched requests = 2
where Possibly Unmatched Requests =
[([(3,[8])],[]),([(3,[8]),(4,[11,12])],[]),([(3,[8]),(4,[11,12])],[]),([(3,[8])],[]),([(3,[8]),(4,[11,12])],[])]
Number of actual unmatched requests = 1
where Actual Unmatched Requests = [[(3,[8]),(4,[11,12])]]



Develop a set of tools and techniques for Network
Performance Management and Service Assurance.
Create a generalized and extensible framework to
accommodate future needs and expansion.
Build a unified dashboard that facilitates the understanding
of the relationships between network resources, customer
services and their respective performance indicators.
Projects



Databases for Many Majors: A StudentCentered Approach (Dietrich & Goelman) –
through 2/2013
Expansion of the Project (? – keep your
fingers crossed - !)
Update 5/2013 – not enough crossed fingers
for funding, but interest continues in using
and customizing animations to bring
database appreciation to the world




Collaborative research with Prof. S. Dietrich,
Arizona State University
Calendar: March, 2010 – February, 2013
Curriculum development for database
education to diverse majors
Software development: two animations
◦ Advantages of (normalized) database technology
over loser (I mean non-normalized) alternatives
◦ Introduction to querying

Technical issues
◦ Programming in FLASH/FLEX
◦ Porting to mobile devices
◦ Customization of the animations to majors
 Driven by producers (Goelman/Dietrich) and
consumers
 XML-based


Rollout of animations - pretty mature
Home page:
http://databasesmanymajors.faculty.asu.edu/
Databases: conceptual modeling
 Databases: schema integration
 Databases: XML for non-majors
 Databases: NoSQL databases
 Data Science and Big Data

◦ Ramya Numboori: NOSQL Data Stores
◦ Hao Zhang: Database Querying in C#
◦ Takashi Binns: DB Systems for Geographical
Applications
◦ Shishir Kaushik: Online Marketing
◦ Sruthi Cherukuri: Utilities for Data
Warehouses
◦ Kartheek Chiluka: Rapid Application
Development Frameworks
◦ Sudha Palivela: NoSQL Databases, Exemplified
by MongoDB
Projects





Develop algorithm visualizations along with
mini-tutorials for computer aided instruction in
Data Structure and Algorithm classes.
Visualizations as a mini-tutorial with animations
portraying different parts of the algorithm.
Sample of five animations of ADT’s (and looking
for more)
http://www.csc.villanova.edu/~helwig/index1.html
Graph algorithms at http://algoviz.org/fieldreports
AlgoViz.org is supported by the National Science
Foundation under a grant



J2 Micro Edition (J2ME) which is the version of the
Java 2.1 platform that is designed for use with
smaller devices such as PDA’s, mobile phones etc.
Since the size of small devices varies greatly, there
are two profiles provided by the J2ME. The
first,CLDC configuration , has a unique profile for
Mobile Information Device Profile (MIDP toolkit).
Lab for Data Structures and Algorithms III
developing a small app for the Blackberry.
Projects




Computational Theory
Artificial Intelligence
Logic
Projects
◦ Computability Logic
◦ Interactive Computation
Projects

Department Web Team Lead
Programming Team Coach
Graduate Independent Study / Grand Challenges Coordinator

Research Interests


◦ http://csc.villanova.edu/academics/gradIS
◦ have contacts/ideas BEFORE your final semester starts
◦
◦
◦
◦
Software development/engineering
Web programming
Security
Computer Science Education

Research Project Ideas

Development Project Ideas
◦ Collecting and analyzing data related to the software development process
◦ Report on the use of a new technology to create a system, perhaps
comparing it to use of a different technology
◦ Camp Registration Site
◦ Use of Kinnects
Projects

AI, Robotics & Simulation

Virtual Reality
◦ CAVEs
◦ Immersive Video
◦ Web-based Experiences

Mobile Apps
Projects
Anany Levitin
Algorithm design techniques are general strategies for
algorithmic problem solving (e.g., divide-and-conquer,
decrease-and-conquer, greedy, etc.)


paramount for designing algorithms for new problems
provide a framework for classifying algorithms by design idea
Algorithmic puzzles are puzzles that requires design or
analysis of an algorithm




illustrate algorithm design and analysis techniques as general
problem solving tools (computational thinking)
some puzzles pose interesting and still unanswered questions
entertainment
technical job interviews
Anany Levitin (cont.)
Algorithm design techniques projects


thinking backward; design by cases
how to solve it (G. Polya) vs.
how to solve it by an algorithm
Algorithmic puzzles projects


a few specific puzzles (research and visualization)
taxonomies of algorithmic puzzles
Dr. Paula Matuszek
Projects
63
Interests and Projects
• Artificial Intelligence
–
–
–
–
knowledge-based systems
ontologies and the semantic web
knowledge capture and sharing
Machine learning
• Natural Language Processing/Text Mining
– Computer understanding of natural (human) languages
– Finding, extracting, summarizing, visualizing information from
unstructured text
• Project
– Broader and Earlier Access to Machine Learning: NSF project to
develop machine learning materials for non-computer science
students.
Projects


Systems Programming
Systems Administration
◦ Linux
◦ Solaris
◦ Mac OS X


Web Application Development
Current projects:
◦ Systems setup for upcoming programming contest
◦ IBM ThinkPad Linux configuration for cityteam
ministries
◦ Thin Client performance analysis
◦ VU community Dropbox
Projects

Artificial Intelligence:
-

Augmented reality
Conversational agents
Reasoning with incomplete information
Machine learning
Computer Vision
Computer Science Education:
- Teaching and learning computer science through
service to the community
- Computing for non-CS majors
- Computer science through media computation
- PACSE: Philadelphia Area Computer Science Educators
Projects

Cyber Security
◦
◦
◦
◦

Adaptive Network Defense
Data Protection and Privacy
Security within the Smart Grid
Ethical Hacking
Modeling and Simulation
◦ Software Architectures as Executable Models
◦ Security Modeling for Service Oriented
Architectures
◦ Discrete Event Simulation
Projects
Parsing & Translation
 Nanocompilers & Nanocomputers (Nanotech)
 Sentiment Analysis & Tracking (AI)
 Tremor Filtering Wii Pointer (Rehab Engr)
 SNITCH plagiarism analyzer (Sim & Tools)
CS Education
 Distributed Expertise learning modules
 Machine Learning modules (CS Ed)
 ACT Lab (CS Education)
72
(CS Ed)
Department of Computing
Sciences
High Perf.
Computing
Nanotech
Simulation
& Tools
Com. Sci.
Education
Databases
Information
Fluency
Director of Research
Dr. Tom Way
Rehab.
Engineering
Other
Groups...
Department of Computing
Sciences
73





Using Magic to Teach CS (CS Education)
Green Computing (Green Comp.)
Speech Recog. for note-taking (Rehab Engr)
Info. literacy using science satire (Info. Fluency)
Many other ideas
actlab.csc.villanova.edu
74
Department of Computing
Sciences
Sentiment Analysis
 Sentiment Tracking
 Tremor Filtering Wii Pointer
 Plagiarism detection
 ACT Lab web site renovation
 Machine Learning education modules
 SMS question answerer

75
Department of Computing
Sciences