Each year, the CSE department selects 5 to 10 winning FYPs. Some of the previous winners were kind enough to share what helped them the most.
This group developed a real social networking service (SNS) that allows users to plan for sightseeing in major cities in China and also invite friends to join them.
Xie Tianyi attributed the group's success to lots of hard work. They had a clear goal, started early to work towards their goal, kept working according to their schedule and also worked efficiently. He estimated that they each worked on the project for an average of 4 hours per day for 6 months, i.e., maybe around 600 man hours each. His advice to future FYP groups is to set a suitable goal, start early so as to allow sufficient time to debug and comfortably deal with the requirements of FYP.
For more information about this project, see the project poster.
This app solves a common problem faced by expats and tourists in Hong Kong: communicating to local citizens, especially taxi drivers, when they want to go to various tourist attractions or popular places. When users tap on a location on the Google maps of Hong Kong, the system displays the place name in the three languages. Then, the users can tap to hear the pronunciation in English, Cantonese or Putonghua. The system utilizes a built in Android text-to-speech (TTS) engine for English, an open source TTS engine for Putonghua and a custom-made TTS engine for Cantonese. The system maintains a history of places tapped by the user, and it also links to a tourist board, so users can view additional useful information. The app's text menus are available in English, Traditional Chinese or Simplified Chinese.
Cheung Ka Chun said that it was very important for his group to spend a significant about of time at the beginning of the project doing an in-depth literature survey instead of jumping into the coding. He said that an in-depth literature survey was very important to evaluate the feasibility of various techniques for solving difficult problems. For instance, they used an open source text-to-speech (TTS) engine and Google and Foursquare's web services instead of building custom databases for audible pronunciations and location retrieval. This saved much time. They also did much brainstorming throughout the project, inviting ideas each group member, their advisor and CT. This kept them motivated and made the project enjoyable.
Cheung Ka Chun said he probably spent at least 14 hours per week during the first half of the project and then about 9 hours per week during the remaining half. Wong Chun Yim and Yuen Siu Hung also worked hard, so in general the group did not need to rush before the deadline. Future FYP groups would do well; to try to follow this group's example. Cheung Ka Chun also said that a collaborative online daily log was helpful for writing FYP reports, coding and fixing bugs. It was the group's creative way of writing good minutes.
For more information about this project, you can watch presentation video or you can see the project poster.
In order to assist aspiring Chinese song composers, this group developed a novel approach to match the spoken tones of Chinese lyrics to the melodies of popular Chinese songs and then generate a suitable melody. Their system relies on a MIDI dataset of over a thousand of Chinese pop songs, and it adopts data mining techniques to extract frequent patterns and frequent rhythms from pop songs. When a user provides lyrics, the system reads the Chinese tones and generates a sweet melody according to a learning model.
Sze Ka Wai said that design, organization and teamwork were important factors leading to the group's success. The most important factor in producing a winning FYP may have been not just trying to satisfy the stated requirements of the supervisor but also adding some interesting or useful functions. In their case, they not only developed a melody generator based on user-provided lyrics but also developed a melody editor.
The group worked hard, putting in around 500 combined man hours. They also had around 12 meetings with their supervisor. Sze Ka Wai suggested that future FYP groups work hard and work smart for the project. He said that groups should not hesitate to ask their supervisor for advice. This can help a lot when facing difficulties. From his experience, he also thinks that for software projects it is important to focus a lot on the user interface and functions, because the appearance affects user's first impression, and the functions are users' main concern.
For more information about this project, you can watch presentation video or see the project poster.
This project was a cyber-physical system that included a mobile robot capable of performing inventory stocktaking in a warehouse via RFID scanning. The robot was carefully designed to operate on a rough or bumpy surface, and users can control it via the Internet.
Wong Kai Hang said that good planning was very important for the group's success. He wrote, "Plan ahead. I mean really ahead. We started discussing our FYP since last summer. In this academic year we had schedules that made our FYP delayed. But planning ahead of time allowed us to adjust our pace." Leung Chun Yin said that research, planning and good time and step management were keys to the group's success. A schedule is good tool, but there are always accidents and delays in a big project, so planning for these and leaving enough time for the project management is important. Having alternative solutions for solving problems is also one of the keys. Lastly, success comes from having good teammates and teamwork. Leung Lok Ping said that good planning and good teammates were the primary keys to success. Good planning meant planning for the worst case. This reduced pressure during the implementation stage. One quality of good teammates is attitude. For example, when facing a problem or some sort of failure, it is important to focus on finding solutions not laying blame, which is usually counter-productive.
Wong Kai Hang encouraged future FYP groups to think big. Although there is a risk that the project might not be finished in the given time, it helps to know what to do at the beginning and what to give up when necessary. Les Brown once said, "Shoot for the moon. Even if you miss, you'll land among the stars." Leung Chun Yin encouraged future FYP groups to plan for the worst and aim for the best. He also encouraged students to think outside the box - don't just think about the target that needs to be met - think beyond the target. He suggested trying to think about further improvements that can be made and new functions or features that can be added. He also added that it is important for FYP groups to choose a project that they are really interested in and like. Leung Lok Ping encouraged future FYP groups to not set any limits when they are thinking and problem solving. If one solution doesn't work or is not practical, then give up and find a better way to do deal with the problem.
For more information about this project, you can watch presentation video or see the project poster.
Internet browsing enables people to locate a myriad of information, but web pages are continually updated, so it is usually impossible to view archived web pages, i.e., the historic page layouts and old content. This project implemented an Internet archiving system to allow virtual "time travel on the Internet." The system included several functions: a web crawler (to download all web pages from seed sites), a rate limiter (to ensure a smooth downloading rate without any risk of overusing server bandwidth), a link converter (to convert universal links to links on our local server), an information extractor (to store the important content on the local server), an indexer (to organize the archived information) and a user-friendly interface.
Tang Siu Leung identified 8 factors that were important for FYP success. He said the first three were the most basic ones:
For more information about this project, you see the project poster.
This project was a web-based application that helps normal users find their way around the HKUST academic building. Liu Hung Ho said that the project was a success because the group tried to make the system robust, user-friendly and fast. For instance, they utilized the map dragging concept made popular by Google Maps, and they pre-computed all shortest paths between the 5000 vertices using Dijkstra's algorithm and stored them in a plain text file so as to optimize response time.
The group had 11 formal meetings from June to April, and most were with Professor Wong. This means they averaged about one meeting per month. Liu Hung Ho estimated that the four group members did not spend more than 300 combined man hours on the project. This means that they each spent an average of less than 2 hours per week. For them, working smart was more important than working hard.
(Note: another group did the same project and used around 1000 hours, but they didn't win, since they used less powerful tools that yielded less beautiful results.)
Liu Hung Ho's main advice for future FYP groups is to do sufficient research before starting, determine the key factors that will make the project a success and then try to get them done one by one. For more information about this project, see the presentation video or the project poster.
This group built an accurate and sensitive indoor security system that utilized a wireless sensor network with various components and devices, including an accelerometer, a light sensor, a rotatable camera and a base station. The system automatically detected unauthorized persons entering a room, sent warning messages and recorded real time video.
Mak Long Ping said that choosing an interesting topic and having a well-designed schedule were the key points that made their project a bit better than others. They had to do a lot of hardware testing, so hard work was also important. He said that each of the three members spent at least 500 hours on the project. That's an average of over 10 hours per week per person.
Time with Professor Gu Lin was also invaluable. The group had 17 formal meetings from June to April, and almost all of them were with Professor Gu. Mak Long Ping suggested that future FYP groups try to have meetings with their project supervisors regularly so as to know their supervisors' expectations clearly. Every FYP supervisor has years of valuable experience that students can learn from, but students need to be proactive in seeking help.
For more information about this project, see the presentation video or the project poster.
This project used a twelve-display array to display gigapixel images, and it used a Wii Remote for panning, tilting and zooming the images. Each of the twelve displays was controlled by a single computer and was connected to a high-speed network. A controller program synchronized the clients based on a protocol designed by the group, so the twelve displays were able to work together as a single large display unit.
Lincoln said that the keys to their project's success were their development tools, teamwork, project planning and working closely with their FYP advisor.
For the project development, they established a centralized revision control system, including a wiki and an SVN, to maintain current and historical versions of files such as source code, web pages, and documentation. They also utilized a bug tracking system, which was very helpful during the implementation phase. Lincoln said that this infrastructure is essential for most open-source software development, and you can get free hosting apps from http://sourceforge.net/ if the project is open-source.
The group probably put in over 800 hours for the entire project, so team member collaboration was very important. Every member had clearly-defined and separate responsibilities, and they put a lot of trust in each other and their project manager, Professor Pedro Sander. This method was risky. If one member had failed to complete his part, the whole team's FYP would fail. However, the three members had already worked together on projects in COMP111 and COMP 231, so they were familiar with each others' working styles. Groups without such collaborative experience may need to carefully evaluate each other to avoid a painful ordeal.
Project planning was also important, but this particular project had a large number of unknowns, so adaptability, good leadership from the project advisor and the ability to think outside the box were more important. For more information about this project, see the presentation video or the project poster.
This project did much more than the standard wireless remote control of a Lego Mindstorms NXT robot. It also performed automatic data collection, localization and self guidance.
The system utilized a PDA attached to the robot. The PDA communicated with the robot using bluetooth and communicated with a controller PC and Wi-Fi access points via a Wi-Fi network at HKUST. The group collected 50 sets of RSSI data for their access point database. They also programmed the system to scan the RSSI values of access points several times, calculate the mean for each one and then perform location estimation using a Bayesian probabilistic algorithm. They then utilized a breadth first search shortest path algorithm to automatically guide the robot from a starting point to a destination on a map. With the help of the robot's ultrasonic sensor, the system was able to detect obstacles in the path and re-route the robot so it could bypass most small obstacles.
Li Chun Kit and So Hung Wai think that the key to their success was their determination to implement the system despite difficulties faced. These difficulties included dealing with signal strength errors, selecting a suitable localization estimation algorithm, automatically collecting RSSI data, dealing with problems associated with a carpeted surface in the testing environment, dealing with mechanical errors of the robot which prevented it from moving in a straight line and resolving compatibility problems with the PDA software.
The team got off to a slow start but finally got motivated in January. They estimated that from January to May they each spent 10 hours per week on average, so for the whole project they easily spent over 300 combined hours for the entire project.
They gave the following advice for future FYP groups:
For more information about this project, see the project poster.
This system allows people doing a presentation using a standard PC connected to a projector to conveniently control the operating system without using a mouse or keyboard. No expensive equipment is required, only a single web camera to detect the hand movements and three LED lights worn on the fingers of one hand to help the system to detect the hand's location and gestures.
Luk Tsan Kwong said their project was a success because they were willing to try different methods and do suitable experiments to achieve a better solution. Guidance and teamwork were also very important. The group had 18 formal meetings from June to March, and almost all were with Professor Mak. Meetings provided opportunities for brainstorming and gaining insight from an expert.
The group seemed to have the right synergy, and each member had important tasks to complete individually. Luk Tsan Kwong said that he personally spent 50 hours studying different books and APIs related to the project and about 70 hours doing coding and testing.
For future FYP groups, Luk Tsan Kwong said that it is a must that students take related courses for the FYP and study different examples and books. For more information about this project, see the presentation video or the project poster.
Room-level location estimation requires a wireless network composed of active electronic devices called nodes that are capable of sending, receiving, or forwarding information over a communications channel. The network must contain three or more reference nodes (nodes located in static locations) and one or more blind nodes (nodes that can move and whose position is unknown but can be calculated with a location algorithm). 99% accuracy was achieved in this project based on careful gathering of RSSI data and a sophisticated algorithm. Samuel Yam said:
"I think that the most important element of the FYP is the value of the FYP topic. Different FYPs focus on different values. Let me give some examples:
"Finally, our project was almost 100% accurate, even in extreme cases in our demonstration, so our project was a success. My advice is to decide upon the value for your FYP. Find the most suitable value that your project should focus on and execute it perfectly.
"As for the time spent on our project, if you only count research, coding and reporting, I would say that it only took us about 200 hours. However, if you include all the time spent thinking of ideas and thinking about how to do the project, the total time spent was triple."
For more information about this project, see the project poster.
This project was a sketch-based modeling system based on FiberMesh. It provided a user-friendly interface that allowed users to draw 3D models by interactively adding or changing the control curves which defined the shape of the model. Users could also change control curves to modify the model geometry. The system achieved most of the functionalities of FiberMesh, including surface construction, control curve creation, surface deformation, cut, extrusion, curve erasing and curve type changing. The group also developed a new surface construction algorithm. Yin Hengli said:
"I don't think that what we did made our project a success as much as the innovative idea from FiberMesh that made it successful. When we went to Kunming for the competition in June, the teachers and students were not interested in how we implemented it, but the innovative idea of 3D modeling. We spent about a semester to finish it, because we did spend time to find some new algorithms. If we had simply implemented it using their algorithms, it might not have taken this long. For future FYP groups, my advice is that it is important to spend time to study the algorithms at the very beginning."
For more information about this project, see the project poster.
Copyright HKUST CSE Dept. 2024
Blog template built for Bootstrap
by @mdo.
Back to top