Queen Latifah: Master Racer

Final Project

1. I am trying to demonstrate algorithms. Algorithms are basically a process of completing an action. When looking at algorithms, one must understand the different speeds and efficiencies of various methods.
2. My program will allow the user to create a basic algorithm - a step by step process, for completing a maze.
3. I tried to use the Scribbline web interface to create an aesthetically-pleasing GUI for the end user. Basically, very simple buttons with instant textual feedback.
4. I will evaluate my human-computer interface by measuring its effectiveness in providing simplicity.
5. I willl gauge the user's interaction by their understanding of algorithms and their success in navigating the maze.
6. My program captures various different maze-solving inputs.
7. I can gauge the evaluation report by looking at the parameters of success and simplicity in the interface.

MARS Rover

1. My search algorithm is based on finding a pixel that matches, grabbing a preliminary rectangle containing matching pixels, then expanding the rectangle from each side to encompass all of the alien.
2. My Alien class is not too extensive - it contains straightforward object information, like position. It has accessor methods to get Size and Location, and a Modifier to set Position.
3. A lot of trial and error. I came across the problem of the boundaries of pictures screwing up the expansion algorithm, so I paint the edges white wherever they come into contact with an Alien.
4. I alternated between MARS2.jpg. It had multiple aliens but with fewer complications.
5. Just a simple selection sort that uses the getSize function of the Alien class.
6. Just a simple selection sort that uses the getDistance function of the Alien class.
7. The Big O is 'n squared', as most selection sort are...

Rescue Mission

1. I use the camera on the Fluke and the movement and battery sensor on the Scribbler. I check the battery and then I take a picture in my command structure. I look for the colors I want to detect and draw a box around them.
2. I just use the Scribbler's forward/backward and turnLeft/turnRight commands.
3. It takes pictures when selected in the switch case structure, and I have a paint function that detects colors and draws a bounding box around them.
4. Our mapping strategy involves deductive reasoning. We look at the pictures and then the edited pictures and judge the room's size and structure.

Robot Olympics

1. For the opening ceremony, our robot will first nobly march into its important position as a part of the letters, "USC." It will do so via keyboard control - WASD - and when it reaches its location a keypress will sing the USC fight song: X marks the spot!
2. The robot follows a network of lines at top speed to reach its finish line. Its directives involves checking both left and right line sensors on the robot, setting respective forwardness, and a state machine type of algorithm.
3. Our robot solves mazes with complete mastery. It will move forward till it detects and obstacle, turn to its side, check again for obstacles, and progress to the finish line.
4. Our robot is the fastest drawer. With calculated predecision, the robot travels around its respective path, choosing the shortest amount of turns and distance possible. It will kick butt.
5. Our robot uses a simple switch-case mechanism with a std::cin to ask the user to tell it what to do.

Teammates: Shane Mileham, Zachary Vega-Perkins, Kunal Shah; Project File: perform-manocha.cpp

Scribbler Idol

1. My robot will sing a section of "Clocks" by Coldplay. The robot reads in note steps from an external .txt file and runs a function to determine the frequencies to put into robot.beep().
2. My robot will draw a number of rectangles. This is done by moving a sequence of moving backward and turning left.
3. The surprise is that my robot draws the rectangles at randomized lengths, determined by srand()
4. The program is split into separate parts that can be triggered through std::cin values. if, for, and while is used to maintain sensor-checking and program structure.



perform.cpp, student.txt

freq.cpp

normal
getLight: 64772
getIR: 1, 1
getObstacle: 5120, 6400, 6400

light
getLight: 64527
getIR: 1, 1
getObstacle: 0, 0, 0

dark
getLight: 64896
getIR: 1, 1
getObstacle: 0, 0, 0

getBattery: 7.0539


lizhi, andrew, jessica



Queen Latifah likes to moonlight as an artist on weeknights.

Queen Latifah, my dear new robot friend, has trained hard and fast, with the utmost dedication, to reach the peak performance level far surpassing all others of her kind. Running at a average speed of fifty miles per hour, Queen Latifah is a natural-born racer. With a little bit of practice, Queen Latifah will be able to kick any human's butt at playing soccer.

I am Garv Manocha, Queen Latifah's tireless personal trainer. I have programmed a great deal before with smaller, less important games, but Queen Latifah is the reinvention of my style in a more professional environment. I like the science of computers because of it's amazing ability to bring to real life a virtual concept with a few keystrokes. This summer, I relaxed my mind with my friends and family (at home, in India, and in Catalina Island), getting to an ultimate state of zen for the throwdown of what we call the Fall Semester. My hobbies involve fiddling with my computer, acting, acting up, and writing sweet music. I am passionate about living a fulfilling and contributory life.

The University of Southern California does not screen or control the content on this website and thus does not guarantee the accuracy, integrity, or quality of such content. All content on this website is provided by and is the sole responsibility of the person from which such content originated, and such content does not necessarily reflect the opinions of the University administration or the Board of Trustees