Thursday, 20 February 2014

Project ideas

Some general thoughts

  • Students, Professors, Industry Partners, Interested Others:  send your project ideas to Craig Thompson@uark.edu.  Be sure to describe a project that can be accomplished by a team of three undergraduate CSCE seniors over a two semester course, where 
    • the first semester is a 1-hour course to identify a problem, gain background including identifying a champion (often the idea submitter), identify requirements, and develop a high level design that assures feasibility, providing scope and risk management
    • the second semester is a 3-hour course to refine the design and develop and implementation.
  • Projects generally proceed from an idea, gaining background to understand feasibility, define a design space and a narrow path to prototype a design, aiming a high impact solution.  NOTE:  to some extent, this course is coordinated with the CSCE Software Engineering course.
  • The process we will follow will include brainstorming resulting in quad chartsproposals to describe the idea, a design and implemention, and a final report, which will include demos and documentation all packaged into a directory.
  • Try to use this project to learn about some new technologies - web page design, RFID, XML, .net, web services (WSDL/SOAP/UDDI), UML, etc. as well as technologies you learned about your in your course work.  Your ideas will come from your CSCE and UARK training, the literature and the web, and your project's creativity and teamwork.
  • Try hard to find an industry or other champion for your project.  Consider whether you can recruit other developers to your project from other courses.  Consider how two or more projects can interface (even though all projects should be stand alone, sometimes the sum of the parts has greater impact).
  • Visualize how your project might turn out.  You are more likely to hit a target if you can describe it.  Consider impact - how can you leverage your projects to lead to


1. Universal Patient Record [CWT]

Presently there is no standard set of tools for hospitals, doctors' offices, and other health providers to share patient records to assure the most timely data is available when a patient needs care.  There are many small scale experiments but no widespread solutions.  What hook could we use to build a dominant solution?  Consider a project aimed at developing a universal patient record that might leverage a resevoir of accurate customer records and data processing, coupled with hospital/doctor record keeping.  Approach: 
  • gain background
    • use the web to gain background on the history and current state of practice on universal patient records
    • determine current state of software, PDAs, tools, both client and server 
    • determine current business models [possibly teaming with Walton Business School, contacts TBD.  
  • Work with (a) Arkansas doctor's office, (b) hospital, and (c) insurance provider to develop generic patient records (a database design problem). 
  • Talk to Dr. James E. Bost, Associate Professor of Biostatistics, College of Public Health & Associate Director of Health Data and Statistics, the Arkansas Center for Health Improvement, University of Arkansas for Medical Sciences, Little Rock, 501-660-7569 (ACHI), 501-526-6724 (COPH), e-mail: bostjames@uams.edu  [Talk to me first.].  Another possible contact:  Dr. Randall Oates in Springdale has developed a doctor's computer system that keeps track of most everything. (acc to Joe Wiggins)
  • This project is also aiming toward a common record for being able to store Arkansas patient records so might provide key ideas, directions, and connections.  
  • Develop web services to capture patient records to cover doctors, hospital, and insurance needs.  Assume an interface to univerally identify individuals to assure customer records are connected to the right individual
  • Identify HIPAA restrictions (privacy regulations).
  • Identify future directions for a business in this area.

2. Everything is Alive Agent System [CWT]

In CSCE we are developing the Everything is Alive (EiA) agent system.  Agents are autonomous software entities that can communicate with each other and may have intelligence, mobility, or the ability to team together to solve problems.  EiA agents communicate via XML messages and contain capabilities.  Several students are working on modular parts of the project but more are needed.  Currently,
  • Minh Vu is developing an extension point middleware architecture (extends eclipse.org) so plugin capabities can be added at run time.  Plugins themselves can have plugins.  XML is used as the interface language, in particular, the XML is compatible with WSDL (web services description language).  
  • Chris Harris developed a gneral purpose mapping from Java to WSDL to automate web service creation - could be done for other languages.
  • Joseph Robertson is developing a plugin based communications module
  • Kevin Smith is developing a GUI panels plugin
  • Ciprian Caloianu is developing a digital rights message filtering aspect (capability that can be mixed in)
  • Rishi Jena is developing a collection of services for licensing capabilities (eg micropayments, negotiation, digital rights), compatible with WSDL
  • Quang Duong is developing a mapping from XML to C to control the CSCE robots
  • Jared Allen is developing a natural language interface to be able to task the robots.  
  • Walt Carter is developing fault tolerant sensor technology that could connect to EiA.

3. RFID [CWT]

Radio Frequence Identification is essentially an electronic barcoding technology, or alternatively an IP scheme for addressing every real-world object, aiming toward an Internet of Things.  RFID can be applied to items like TVs, cars, milk cartons, library books, pets, children, robots, sensors, pallets, cartons, and scissors or glasses or keys or tv remotes ... where did I leave them this time?.  While the technology family has been around for 15 years, it is recently maturing into a usable, cost effective technology - partly because the US Government and also Wal-Mart are requiring their logistics supply chain suppliers to supply goods that support compliant RFID.  A school in NY is assigning RFID to its pupils - they can identify when students enter or leave areas of a campus or when non-students are on campus.  The new Fayetteville library is marking all books with RFID tags - this will allow self-checkout and a magic want that identifies mis-filed books.  But ... RFID is new and not really ready for prime time.  For instance Wal-Mart deploys it in warehouses at doors, in storage bays, and when pallets or containers are moved to the store floor.  Sometimes there are false readings.  Dr. Bill Hardgrave (ITRC Director in Walton College of Business is looking for students to run an RFID lab and even more interestingly is deeply involved in analysing data patterns from RFID test sites.  This is a door into Wal-Mart riding the magic carpet of a new technology that will help usher in the brave new world of sensors everywhere - part of the Everything is Alive vision (see above). 
  • gain background about RFID
    • several levels of technology, several standards, several products, several antenaes, ....  
    • consider teaming with Hardgrave in Walton College.  Within CSCE, at least C Thompson and D Thompson will be interested in this project, probably others.  This is a potential foot in the door at Wal-Mart for team members and also CSCE/Walton
    • privacy considerations related to RFID
    • contacts:  Bill Hardgrave, Iyad Azrai, Taneem Ibrahim
  • get hands on technology in RFID lab
  • target a project that involves analyzing Wal-Mart data or some other application
  • identify future directions
  • possibly demo results of project to Wal-Mart, Wal-Mart suppliers, or Fayetteville Library (for instance). 

4. PDA-based Universal Remote [CWT]

How many remotes does your family have?  How do you control your thermostats (for all the areas in a house and all the times of day) or the watering schedule controller?  What about the lights, toaster, fridge, car, ...?  Why aren't all these things wirelessly networked?  Why not use soft controllers for all these, e.g., software that runs on PDAs or computers remotely from the thing controlled?  Any devices so controlled would have an electronic API (wiring, as it now does) but also a software API.
  • develop a general design for any remote controller to exhibit a softeware interface with wireless access to a software remote controller.  Use web service technology to define interfaces in a standardizable manner.
  • consider how you could simplify devices like thermostats by putting much of their functionality in software - for instance, the thermostat might be very simple - it can raise or lower the temperature.  But the soft controller contains all the logic to change temperatures at different times of day, etc.  Maybe the controller contains a history log.  Maybe it computes energy used that month or since the beginning of a year.  Maybe you can ask it questions using MBNLI (see related project).  
  • demonstrate using the same remote for controlling different devices, for instance a robot (see other project), thermostat, light switch, TV/stereo remote(s), ...


5. Natural Language Interface to the Semantic Web based on Menu-based Natural Language (MBNLI) [CWT]

One of the steps in making a next generation semantic web is to add web services so programs can discover and communicate with other programs - see work on SOAP, WSDL, and UDDI.  Another step is to add metadata so programs can reason able web content - see work on DAML/OWL ontologies.  A third promising direction is to add additional metadata to web pages (.e.g., grammars) so that a user can talk to web pages to communicate questions or commands.  This project aims at developing a design and prototype for a general purpose MBNLI interface to web pages (or to the Internet of Things to control thermostats, etc).  See C. Thompson for more detail.


6. Robots [CWT]

CSCE wants to develop a presence in the area of robotics - so you can help.  Resources include:  (a) little red robots, (b) Pat Parkerson's robots, (c) a Lego Mindstorms kit.  NOTE:  there are CSCE courses on robotics and agents.
  • Build something cool 
  • Connections
    • Hook this project up to the EiA agent system so other agents can control the robot
    • Hook this project up to the MBNLI project so you can provide commands in English
    • What about teams of agents or trust relationships among agents.

7. Delta Systems [CWT]

This company in Springdale does two things. 
  • It makes auto packaging machines to package gumballs, muffins, lotions, etc with many well known large customers.  These machines are little assembly lines and have sensors and controllers to automate the many steps of sorting and packaging.
  • It develops standalone software to run its own machines as well as similar machines developed with older ladder logic distributed controllers or by competitors.  
Work with Delta Systems VP Steve Martin to develop real-time software or sensor controls.  A great chance to work with a small business.


8.  Develop Web Services or other capabilities for your company:  e.g., Acxiom, JB Hunt, Tyson, Wal-Mart ... [CWT]

What problem areas have you observed at your company?  Would they benefit from a tool or new technology?  Develop a solution.  These projects need a company champion and a letter from someone in management approving the project.  No company proprietary data should be available on your web site.  Talk to the instructors - in some cases, we do not need to receive the code you develp but we will need to understand your project and its impact.


9. University Model based on Agents - CSCE Web Page [CWT]

A university department can be modeled by a collection of entities/agents/process models.  Some of these model office procedures - how to advise or register.  Others model how courses connect and how education/training related to research and to customers.  Also, there is a cost model overlayed on some processes like proposals/contracts.  Many people - students, faculty, professors, admin, and parents, industry, govt, other schools would benefit from having understandable views of a department.  So, one project is to try to model a subset of the CSCE Dept.  One subproject might involve a CSCE web page redesign.  Another approach might be to use UML.  Who cares:  champions are Craig Thompson and Fred Davis (Dept Head in Walton College Info Systems).  This could lead to a conference publication and to NSF funding for CSCE or UARK.


10. Reimplement ISIS [Lusth]

Develop a large scale application like ISIS, the system the University is using to manage courses, students, registration, and for other University records.  Develop a large scale design and break into subproblems that can be implemented over several generations of future Capstone or Senior Design projects.


11. Musical Instrument Tuner [JPP]

A computer program would take an audio signal from a musical instrument and give the user feedback to make it easy to tune the instrument.  An effective human interface would be needed.  It could allow tuning different instruments and different keys.

12. Digital Test System [JPP]

This project would involve building some hardware that would an interface with a PC which would apply digital signals to a device under test (DUT) and also observe the logic outputs of the DUT.  The software would take test results from a Mentor simulation (or similar description) and check the DUT for correct operation.  A good debugging environment would be needed (looping, break points, single stepping of vectors, etc.)

13. Music Transcriber/Comparator [JPP]

A computer program that would take an audio source of music (probably a solo instrument), analyze which notes were played and when, then create a transcription of the song.  Additionally, this could compare a performance to a “correct” performance and give feedback to the musician about what errors were made (wrong notes, wrong times, etc.)

14) Diet Advisor/Analyzer [JPP]

A user could input a description of what they eat and get feedback about the results of their diet (calories, vitamins, minerals, fats, carbs, etc.).  The user could enter the data by describing the actual ingredients (1 tablespoon of butter, two eggs, etc.) or they could enter a menu item (1 cup of Mom’s beef stew).  A database containing the dietary contents would be used to give the user feedback about the characteristics of their diet and offer advise (too much saturated fats, not enough protein, etc.).  This could also give information about a diet over time (too many carbs on Thursday but it averaged out by the end of the week).  [CThompson addendum:  implement this as web services.]


15) Power Usage Monitor [JPP]

A computer or microcontroller with some additional hardware could monitor the amount of electrical energy used by an electrical device.  It would require a small amount of electronic hardware that would interface to the computer or microcontroller.  It would sample the power, record it over time, and determine the energy usage.  It would plot this as a function of time and show the cost of using the appliance.

16. Empty Parking Space Detector [JPP]

A system would detect the location of empty parking spaces and report them to people entering the parking lot.  Various types of sensors could be used to detect the location of empty spaces.  Perhaps a video camera could detect the location of bare pavement. Some type of display device at the entry of the parking lot would show the locations of empty spaces.

17. Laser Display [JPP]

One or more laser “pointers” could be turned on/off and moved by servos to display an image or message.  It would interface with a computer to control the displayed image.  The lasers would be pointed at a display surface which would have the image painted on it.  The issues with this project are finding lasers that could be digitally turned on/off and servos that could point the lasers.  The images could be simple text messages or the translation of images, perhaps edge detection.

18. Robotic Vacuum Cleaner (or lawn mower) [JPP]


19. Web Mining [CWT]

Alternatives:
  • Given a person, find data sources about that person.  This likely involves many data source specific parsers.  Variations of this have been done.
  • Select a kind of event {birth, engagement, marriage, death, other}, identify website and other data sources for this event and then custom parsers for each to mine records on individuals.  Records might result in <event-type, name(s), date-of-event,  location-of-event, optional-additional-fields, source-of-info>.  Estimate how much effort per website and how many websites and coverage in US.  
  • Special purpose search engines - identify something of interest hidden in web pages (javascript widgets, calls to search engines, .MDBs, ...), extract and create a registry. 

20.  Model[me]  [CWT]

Read "DBMS[me]" then gather information about someone and create as high fidelity a model as you can using COTS technology. 


21.  Toys or Pets or Things that Talk [CWT]

Develop a design and implemention for toys or pets or thermostats that talk to each other and/or to people.  Consider wireless collars, GPS, motion sensors, voice standards, chatbots, etc.  Note that any experiments with animals must follow university guidelines.

22.  Ideas from Class Brainstorming 8/31/04

  • solar boat telemetry
  • RFID to protect PDA, 
  • smart IDs and RFID
  • RFID on small objects (find the scissors)
  • smart frying pan
  • music I/F to car
  • restaurant server PDA
  • universal GUI via extension architecture
  • voice activated module to control devices (computer, turn on)
  • e-text display for item pricing w auto-update capability
  • signature verification
  • path finding robot
  • computational biology
  • blast search engine improvements
  • games / poker
  • reimplement ISIS
  • remote control for computer-like TV control
  • slot machine
  • 802.11e, ad hoc, and long range wireless
  • passweb
  • search engine for data mining about topic like geneology, birth notices, ...
  • rover/helicopter for mapping a building
  • voice-actived switches - x10 - see smarthouse.com
  • internet in my car
  • robots that run and balance
  • hot spots and scheduling
  • identifying type errors in type-free languages
  • boat that always goes straight

23.  XML Interface to flat files and other heterogeneous data sources [CWT]

Assume a processing system takes data sources as inputs.  The data sources come from many customers and are in many formats (many file formats, databases, word documents, spreadsheets).  The processing system wants a uniform view of all data as XML-based record structures.  Develop an extensible architecture for mapping data from a variety of file formats to fit the standard XML input file format.  Attempt to do this in such a way that you can use the XML as a guide for parsing the datasets but do not actually have to ever create an intermediate file format where the data itself is in XML (because these are huge data sets).  That is, the XML file format might encode a mapping from the raw file format to the standard form and that mapping is used to generate accessors that can access file data.  Extra credit if the same sort of transformation can be used to convert data from the repository back into the native file format (the customer format).  First step: is there a solution already out there?  [if so, alert me]


24.  On Demand Computing (Matt Carey, Wal-Mart)

An installation contains many flavors of Unix (AIX, Linux, …), generations of platforms from main frames to PCs, and applications.  Some applications only provide binaries and are only licensed for certain machines, but others could be recompiled and run on a collection of machines:  How can we create a management console to control a Computational Grid O/S that operates on member physical O/S? 
  • ability to remotely compile and run – including security
  • metadata that describes programs that can be invoked
  • management controller
  • GUI console
  • Issue – central or distributed console
  • Issue – interoperability w current environment

No comments:

Post a Comment