Slides - Villanova Computer Science

Download Report

Transcript Slides - Villanova Computer Science

Department of Computing Sciences
November 5, 2012





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
CSC 9025







CSC 9025 - Replaces old CSC 9020
“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!

Programming languages and systems control
for Mindstorm robots.

Contexts for optimum web search strategies.

Algorithm taxonomy: examples from
traditional games.

Web site taxonomy and focused design
principles.

Packing spheres into an ellipsoid: heuristic
search strategies.

Code optimization: 20Kb vs. 20Mb program
space.

Non-visual interfaces.

Virtual reality in interdisciplinary projects.

Web services: development, description,
deployment.

Constructing and maintaining wireless network
topologies.

Folding and unfolding polyhedra.

Programming games and applications for the
Droid, iPhone and iPod Touch.
Projects
Packing Problems
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
• Project team is formed and working
Program for Website Creation and Evaluation (PCWE)
•
•
•
•
Funding for non-profit organization website renovation
Requested changes become data
Systematic evaluation against design principles
Automatic measurements
Computing in Context
• Focused on computing and music at Villanova
• Also on design of inquiry based learning activities
• And specificially
– ChucK as a language
– Music processing tools
• IBL Example: List ALL the properties of a note
Digital Humanities
A broad topic with many research threads:
• Applications of location awareness—guided tours
• Models in social networks—pipelines, agents,
transactions, communities
• Systems thinking, computational thinking, X thinking
• Text as data
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
Blood Matching Process Modeling Project
34
Model Components
35
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
Results
36
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,[11])],
[(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])]]
CARMMA Project
37
 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.
Results
38
Projects


Databases for Many Majors: A StudentCentered Approach (Dietrich & Goelman) –
through 2/2013
Expansion of the Project (? – keep your
fingers crossed - !)




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:
 Databases:
 Databases:
 Databases:

conceptual modeling
schema integration
XML for non-majors
NoSQL databases
◦ Ramya Numboori: NOSQL Data Stores
◦ Hao Zhang: Database Querying in C#
◦ Takashi Binns: DB Systems for Geographical
Applications
◦ Rogelio Dolor: Database Compression
◦ Priyanka Mummadi: Franchise Management
Systems: Architecture
◦ Palanisamy Ramamoorthy: SOA and
Integration
◦ Shishir Kaushik: Online Marketing
◦ Sruthi Cherukuri: Utilities for Data
Warehouses
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

Teaching Senior Projects Course

Research Interests


◦ http://csc.villanova.edu/academics/gradIS
◦ http://www.csc.villanova.edu/~joyce/csc4790/index.html
◦
◦
◦
◦

Software development/engineering
Web programming
Security
Computer Science Education
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
◦ Investigating the status of the “good guys” vs “bad guys” situation in
computer security
◦ Classifying “classes” based on the signatures of their methods ...
◦ What “types” of learners learn X best when approach Y is used
Projects






Web-Based Software Systems
Artificial Intelligence
Signal Processing
Robotics & Evolutionary Learning, MSE
iPhone Applications
Virtual Reality, Cave
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
57
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)
66
(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
67





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
68
Department of Computing
Sciences
Projects
Current Interest
Software Project Management
• Web Design
• Database Systems
• Inter-discipline applications of database
•
-
Manchester Mummy project
Egypt
Alaska
South America
DRA ABU el-NAGA – Thebes, Egypt
St. Lawrence Island mummy
THE CHURCH – 400AD
Flow from Mummy to Slides