Department of Computing Sciences September 29, 2014 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! Devices • • • • • CAVE Object capture rig Oculus Rift Google Glass Mindstorm robots • • • • Kinect Raspberry Pi Finch IR keyboard Research Outlets & Support • • • • • • • Conferences Research Projects Fun Projects Reading Day Events CS Ed Week Events Sigma Xi Event Many others • Travel funds • Equipment funds • • • • Grad Office has some Undergrad Office also Department might too Research grants as well 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 Parsing & Translation Google Glass, Machine Learning & Memory Sentiment Analysis & Tracking Misc. NLP Parsing Projects Tremor Filtering Wii Pointer SNITCH plagiarism analyzer CS Education Loosely-Coupled Interdisciplinary Teaching Machine Learning modules Distributed Expertise learning modules 9 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 10 Nanocompilers & Nanocomputers Using Magic to Teach CS Green Computing Speech Recog. for note-taking Info. literacy using science satire Many other ideas actlab.csc.villanova.edu click on "Idea Incubator" 11 Department of Computing Sciences Sentiment Analysis & Tracking Tremor Filtering Wii Pointer Tremor Quantification Plagiarism detection Fake research paper detection Social network extraction from novels Machine Learning education modules Google Glass 12 Department of Computing Sciences Projects Constructing and maintaining wireless network topologies. Folding and unfolding polyhedra. DNA Computing: How can DNA molecules solve computational problems? 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 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 Dr. Robert Beck A Sampling of Projects Computing in Context • 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 • Computational sustainability – Figuring out what this means Chronozoom • Check out chronozoom.com, an open source system for displaying time lines – Create content, and enhance the content creating process – Develop programs for Big History – Investigate a 3-D timeline in the CAVE Social Network Analysis • 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 • Map communities as social networks UX of Smart Things • Interacting with the internet of things – Mobile Wallet Worth Having (MWWH) – Apple Watch – Smart home monitoring – Smart driving – Smart touring: QR codes, cell phone tours • More generally, gesture interfaces Web Site Design • Categories of web sites • Design principles for a particular category • Systematic evaluation against design principles • Automatic measurements Web Site Renovation • 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 Cliques, etc • Finding a maximal clique (largest complete subgraph) in a given simple graph – Fred’s strategy – More generally, strategies for NP-hard problems – Involves creative programming and experimentation with heuristics Projects Dr. Lillian Cassel Research interests: Digital Libraries Ensemble Marconi Museum Library Computing Ontology Resources for computing education Data Science Information and the Web Interdisciplinary Computing Interested graduate students meet at 1:30 on Tuesday afternoon, Mendel 290 Undergraduates welcome then or at other times. Ensemble Computing Education Portal www.computingportal.org Computing Portal Connecting Computing Educators • Well established, but with many opportunities for refinement. • Original funding has ended, so mostly volunteer work at this time. • Opportunities for research projects as we attempt to solve some interesting problems. • Proposals under development to obtain more funding. More Digital Libraries/Web Information • Marconi Museum – We have large collection of pictures – How do you make a good representation of a physical museum on the web? – Possible CAVE application, as well as regular digital library Computing Ontology www.distributedexpertise.org/computingontology Computing Ontology A complete definition of the computing disciplines, in collaboration with ACM • Status – Still an interesting problem. – On the list of applications to develop for the CAVE – Needs people with good imaginations and creativity Educational Resources • Earlier and Broader Access to Machine Learning – With Dr. Way, Dr. Matuszek, Dr. Papalaskari • Data Science – With Dr. Goelman, Dr. Posner (statistics) Projects Research topics related to ethical issues and themes Privacy, Surveillance, and Big Data Lethal Autonomous Robotic Weapons Electronic voting Outreach activities Dr. Vijay Gehlot Projects Systems Modeling • Behind every data there is a process that generates/consumes it • To effect changes, understating of processes is crucial • Process mining • Holistic vs reductionist • Systems thinking Systems Model Components 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 Tools/Approaches Projects Databases for Many Majors: Customizable Visualizations to Improve STEM Learning (Dietrich & Goelman) – NSF IUSE project: 9/2014 through 8/2017 Data Computing for All: Developing an Introductory Data Science Course in Flipped Format (Cassel, Posner, Dichev, Dicheva & Goelman) – NSF IUSE project: 9/2014 through 8/2017 Details in next slides Collaborative research with Prof. S. Dietrich, Arizona State University Enhancement of visualizations for promoting database education to diverse majors Visualizations from the last grant: intro to relational databases and intro to querying Add a third visualization: conceptual modeling Add functionality for self-assessment by students Add functionality for educators to customize the setting to diverse domains (FlashBuilder and ActionScript) ◦ Home page: http://databasesmanymajors.faculty.asu.edu/ Collaborative research with Profs. L. Cassel and M. Posner, Villanova University; and Profs. C. Dichev and D. Dicheva, WSSU Curricular development: an introductory course in data science Pedagogical development: inverted classroom approach Research assistance: information gathering and presentation Databases: conceptual modeling Databases: schema integration Databases: XML for non-majors Databases: NoSQL databases Data Science and Big Data ◦ Anusha Chenreddy: NoSQL Databases ◦ Sai Viswa Teja Mitta: Object Relational Mapping ◦ Dinesh Paladugu: Big Data and Real-Time Applications ◦ Nagasaiteja Popuri: Distributed File Systems for Big Data – Exemplified by Hadoop MohanKumar Puttasidaiah: Big Data Processing: Applications of MapReduce and Hadoop in Industry Swathi Vangala: Data Warehousing Solutions for Big Data Akhila Yarlagadda: Technology and Health Care Data Management Siva Sindhuri Yenamaladoddi: Processing and Analysis of Big Data Using Hadoop Projects Computational Theory Logic Projects ◦ Computability Logic ◦ Cirquent Calculus ◦ Interactive Computation Projects Computer Vision Computer Game Development Projects Virtual Reality ◦ CAVE ◦ Immersive Video ◦ Web Experiences AI, Robotics, and Simulation 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 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 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 All programs to enter data completed Documentation completed Egyptian, Alaskan, North and South American mummies data entered into database • Transferred the database to Manchester England Remaining Work • Train the researchers in England to use and update the database • Coordinate with researchers using the database Researchers Using our Data 2014 • Giada Ferrari and 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 Still more opportunities Dr. Paula Matuszek Projects 75 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 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 Information Management Data Modeling Data Warehousing Data Mining Information Metrics 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