cs 425 december 17, 2008 shaun martin brian pritchett team acme final presentation
TRANSCRIPT
![Page 1: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/1.jpg)
CS 425December 17, 2008
Shaun MartinBrian Pritchett
Team ACME Final Presentation
![Page 2: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/2.jpg)
AgendaProject DefinitionProject PlanHigh Level DesignPrototype Demonstration
![Page 3: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/3.jpg)
Project Definition
![Page 4: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/4.jpg)
Team IntroductionClients
Dr. Jerry Weinberg, Computer ScienceDr. Ryan Krauss, Mechanical EngineeringDr. George Engel, Electrical Engineering
![Page 5: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/5.jpg)
Team IntroductionShaun Martin
Planning ManagerCustomer Interface
ManagerProcess ManagerQuality ManagerDocumentation
Lead
Brian PritchettDesign ManagerImplementation
ManagerTesting ManagerSupport ManagerLead Web Design
![Page 6: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/6.jpg)
Team IntroductionMechanical Engineering Team
Lukas PirokKevin DossKaci BacksLance Labonte
Electrical Engineering TeamGreg EddingsJason Tennyson
![Page 7: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/7.jpg)
Problem DefinitionDevelop an autonomous golf cart to
compete in the DARPA Mini Grand Challenge.Navigate pathway on college campusSmall and inexpensive short-range vehiclesMaximum speed: 5 mph
Develop an autonomous vehicle to be used for Human Robot Interaction (HRI) research.Possible User Interface
![Page 8: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/8.jpg)
The ChallengeRobot will travel a 7 to 8 foot path with
6 checkpoints.The robot must stop within 2 feet on an
obstacle.The final checkpoint is on an unpaved
path that the robot must navigate.The total distance of travel will be no
longer than 0.5 miles.There will be no markers, lines, or
beacons to indicate the path.
![Page 9: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/9.jpg)
The ChallengeA robot that stops for more than 60
seconds when not waiting for an obstacle to be removed will be considered “brain dead.”
No human contact with the robot is allowed.
Robots will also be judged on how it interacts with the crowd.
![Page 10: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/10.jpg)
Contest Rules1.) Must be powered by batteries (no
combustibles).2.) May be constructed from anything that
does not interfere with rule 1.3.) Must stay between 1 and 5 mph.4.) Must be able to transport 1 gallon of water.5.) Must have a clearly labeled stop button or
switch.6.) Should be in the 25-75 lb range.
![Page 11: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/11.jpg)
Contest Rules7.) Max size is 216 feet cubed (6 x 6 x 6).8.) No communication between the robot and
an outside device is allowed, except for GPS.
9.) Communication between devices that are part of
the robot is allowed.10.) The robot must be a single entity.11.) Robots are ground robots. No aerial
robots are allowed.
![Page 12: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/12.jpg)
Current Design - Overview
GPSGPS (2) (2)-waypoint navigationwaypoint navigation-intelligent redundancyintelligent redundancy
Camera(s)Camera(s)-path findingpath finding-trajectory planningtrajectory planning-obstacle avoidanceobstacle avoidance
SonarsSonars (4) (4)-obstacle avoidanceobstacle avoidance-trajectory planningtrajectory planning-II22C busC bus
DC MotorDC Motor-steering position controlsteering position control-gear reduction for torquegear reduction for torque-II22C busC bus
Linear ActuatorLinear Actuator-braking position controlbraking position control-II22C busC bus
Quadrature EncodersQuadrature Encoders (2) (2)-velocity controlvelocity control-steering position controlsteering position control-II22C busC bus
![Page 13: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/13.jpg)
Who are the Users?Team ACMEProfessors & students pursuing research in
HRIBystanders during demonstrations
![Page 14: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/14.jpg)
Software RequirementsMust be able to run on Windows machineDesired programming language is C++OpenCV for Image ProcessingUse APIs developed by ECE team
![Page 15: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/15.jpg)
System FunctionalityInterface with GPS units for navigationLaser for obstacle avoidanceMulti-threaded applicationImage ProcessingUser Interface for HRI research
![Page 16: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/16.jpg)
Requirements AnalysisInterviews with Dr. Weinberg
What needs to be done this year?Phone conferences with Ross Mead
What sections of code need to be improved?Review of existing code
![Page 17: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/17.jpg)
Project Plan
![Page 18: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/18.jpg)
Software Process - Scrum
![Page 19: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/19.jpg)
Pre-Game PhaseTwo sub-phases:
PlanningHigh level design /
ArchitectureDeliverables:
Product backlogCoding /
Documentation Standards
Design Documents
![Page 20: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/20.jpg)
Development PhaseImplements iterative cycles called “Sprints”Sprints consist of:
Sprint planning meetingDetailed designImplementationTestingReview
![Page 21: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/21.jpg)
Post-Game PhaseFinal phase of ScrumSub-phases:
System testingFinal Release
Deliverables:Final DocumentationWorking Product
![Page 22: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/22.jpg)
RolesScrum Master / Product Owner
Project managerInteracts with customerMaintains product backlog
Scrum TeamPrimary concerns: sprints
CustomerSynonymous with client
ManagementDr. Blythe and Dr. Fujinoki
![Page 23: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/23.jpg)
Software Engineering MethodsVersion Control
SubversionReview
Required with ScrumRanges from informal “desk checks” to
inspection reviewsDependent on importance of current sprint
![Page 24: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/24.jpg)
Software ToolsTortoiseSVN
Free version control system that integrates within the Windows shell
Microsoft ProjectProject management software to assist teams in
assigning tasks, managing resources, and assigning workloads
Microsoft Visual Studio 2008Primary IDE used for development
OpenCVOpen-source cross-platform computer vision
library
![Page 25: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/25.jpg)
Testing PlanUnit Testing
Individual modules will be tested by developer during sprint
Integration TestingCompleted sprint product tested with current
working productSystem Testing
Fully developed system tested during post-game phase
Final testing session prior to final release
![Page 26: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/26.jpg)
Estimation MethodWideband Delphi Estimation
Requires that a work breakdown structure be implemented prior to using this estimation method
Work breakdown structure for our project will be the product backlog list
Kickoff meeting which correlates to our sprint planning meetings.Specific tasks are selectedMake individual estimations
Worst case, best case, average case are logged. Estimate is the average
![Page 27: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/27.jpg)
Project TimelineTask Duration Start FinishOrange Cone Interaction 12 days 12/1/2008 12/15/2008 Sprint Planning Meeting 1 day 12/1/2008 12/1/2008 Detailed Design 3 days 12/2/2008 12/4/2008 Implementation 5 days 12/5/2008 12/11/2008 Unit Testing 2 days 12/12/2008 12/14/2008 Sprint Review Meeting 1 day 12/15/2008 12/15/2008Sprint Completed 0 days 12/15/2008 12/15/2008Integration Testing 4 days 12/16/2008 12/19/2008Obstacle Avoidance 12 days 1/12/2009 1/26/2009 Sprint Planning Meeting 1 day 1/12/2009 1/12/2009 Detailed Design 3 days 1/13/2009 1/15/2009 Implementation 5 days 1/16/2009 1/22/2009 Unit Testing 2 days 1/23/2009 1/25/2009 Sprint Review Meeting 1 day 1/26/2009 1/26/2009Sprint Completed 0 days 1/26/2009 1/26/2009Integration Testing 4 days 1/27/2009 1/30/2009Velocity Control 12 days 2/2/2009 2/16/2009 Sprint Planning Meeting 1 day 2/2/2009 2/2/2009 Detailed Design 3 days 2/3/2009 2/5/2009 Implementation 5 days 2/6/2009 2/12/2009 Unit Testing 2 days 2/13/2009 2/15/2009 Sprint Review Meeting 1 day 2/16/2009 2/16/2009Sprint Completed 0 days 2/16/2009 2/16/2009Integration Testing 4 days 2/17/2009 2/20/2009
![Page 28: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/28.jpg)
Project TimelineEmergency Shutoff 12 days 2/23/2009 3/9/2009 Sprint Planning Meeting 1 day 2/23/2009 2/23/2009 Detailed Design 3 days 2/24/2009 2/26/2009 Implementation 5 days 2/27/2009 3/5/2009 Unit Testing 2 days 3/6/2009 3/8/2009 Sprint Review Meeting 1 day 3/9/2009 3/9/2009Sprint Completed 0 days 3/9/2009 3/9/2009Integration Testing 4 days 3/10/2009 3/13/2009Crowd Interaction System 12 days 3/16/2009 3/30/2009 Sprint Planning Meeting 1 day 3/16/2009 3/16/2009 Detailed Design 3 days 3/17/2009 3/19/2009 Implementation 5 days 3/20/2009 3/26/2009 Unit Testing 2 days 3/27/2009 3/29/2009 Sprint Review Meeting 1 day 3/30/2009 3/30/2009Sprint Completed 0 days 3/30/2009 3/30/2009Integration Testing 4 days 3/31/2009 4/3/2009Remote Drive System 12 days 4/6/2009 4/20/2009 Sprint Planning Meeting 1 day 4/6/2009 4/6/2009 Detailed Design 3 days 4/7/2009 4/9/2009 Implementation 5 days 4/10/2009 4/16/2009 Unit Testing 2 days 4/17/2009 4/19/2009 Sprint Review Meeting 1 day 4/20/2009 4/20/2009Sprint Completed 0 days 4/20/2009 4/20/2009Integration Testing 4 days 4/21/2009 4/24/2009System Testing 17 days 4/6/2009 4/27/2009
![Page 29: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/29.jpg)
Project Timeline – Sample Sprint
![Page 30: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/30.jpg)
Risk AnalysisRisk Likelihood Cost Plan
Temporary loss of team member
10% 7 days -redistribute roles
New contest rules 20% 3 days -revisit high level design-add new rules to product backlog list
Delays due to other teams 70% 7 days -consult client-work on tasks that are independent of other team-consult upper management-conduct team meeting
Interface with existing system
80% 7 days -study existing code prior to integration-consult last year’s team
Sensor failure 25% 3 days -debug code-check electrical system-consult ECE team
Steering failure 25% 3 days -consult ME team
Hardware failure 15% 2 days -consult teams-redesign if legacy hardware is needed
![Page 31: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/31.jpg)
Coding and DocumentationName and
author(s) at top of each file.
A brief descriptionRequired files will
be listed.Above each
function prototype, a brief description of the function will be included.
Above each function definition, a more detailed description of the function will be included.
Inputs, outputs, and return types will be listed, including a brief description of how they will be used.
![Page 32: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/32.jpg)
Coding Example//// ostream& <<(out, th)// Last modified: 14Feb2008//// Outputs the parameterized thread to the parameterized output file stream.//// Returns: the output file stream// Parameters:// out in/out the output files stream// th in/out the thread to output//ostream& operator <<(ostream &out, const Thread_t &th){ out << th.getName() << " [" << th.getID() << "]"; return out;} // <<(ostream &, const Thread_t &)
![Page 33: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/33.jpg)
Conflict Resolution ProcedureThe group member with the issue will
present their problem to the other team member.
The two will attempt to come to an agreement.
If no agreement can be made, the group will approach upper management for a resolution.
![Page 34: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/34.jpg)
Ethical ConsiderationsWe will do our best to produce solid code
that completes the project that is agreed upon between us and our client.
We will not take credit for code written by previous teams.
We will not take credit for code or work done by teams we are working with.
![Page 35: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/35.jpg)
High Level Design
![Page 36: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/36.jpg)
PEAS DescriptionPEAS – Performance, Environment,
Actuators, SensorsUsed to determine what type of agent will
be used, robot control system, and robot architectureAgent
TypePerformance Measure
Environment
Actuators
Sensors
Autonomous Golf Cart
Safe, successful navigation to desired waypoint following competition standards
Campus pathways, students, other traffic, various obstacles
Steering, accelerator, brakes, display
Camera, Sonar, Outdoor laser, GPS, motor sensors, keyboard
![Page 37: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/37.jpg)
Task EnvironmentPartially observable
Sensors do not provide complete state of environment
StochasticHard to keep track
of all unobserved aspects
Next state cannot be determined based on current state
DynamicEnvironment is
constantly changingContinuous
Environment is constantly changing over time
Multi-agentSequential
Previous actions can impact current actions
![Page 38: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/38.jpg)
Goal-based Agent
![Page 39: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/39.jpg)
High Level DesignRobot Control
Behavior-based Control SystemRobot exhibits many “behaviors”Allows for modularity and iterative development
Robot ArchitectureSubsumption Architecture
reactive robot architecture heavily associated with behavior-based robotics
Emulates concurrency
![Page 40: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/40.jpg)
Finite State Machine Model
![Page 41: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/41.jpg)
Subsumption Architecture Model
![Page 42: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/42.jpg)
Current Product BacklogTask Priority
Orange Cone Interaction 1
Obstacle Avoidance 2
Velocity Control 3
Emergency Shutoff System 4
Flag System (demonstration or competition)
5
Crowd Interaction 6
Remote Drive 7
Improved User Interface 8
![Page 43: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/43.jpg)
Current Product BacklogTask Priority
Orange Cone Interaction 1
Obstacle Avoidance 2
Velocity Control 3
Emergency Shutoff System 4
Flag System (demonstration or competition)
5
Crowd Interaction 6
Remote Drive 7
Improved User Interface 8
![Page 44: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/44.jpg)
Prototype Demonstration
![Page 45: CS 425 December 17, 2008 Shaun Martin Brian Pritchett Team ACME Final Presentation](https://reader034.vdocument.in/reader034/viewer/2022042822/56649f285503460f94c41670/html5/thumbnails/45.jpg)
Questions?