From f32c39bd6a8b130195a9d60e437b0d4eabb0301a Mon Sep 17 00:00:00 2001 From: ll7 Date: Fri, 4 Oct 2024 10:29:01 +0200 Subject: [PATCH] Refactor student_roles24.md Fixes #304 Co-authored-by: JulianTrommer --- doc/08_dev_talks/paf24/student_roles24.md | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/doc/08_dev_talks/paf24/student_roles24.md b/doc/08_dev_talks/paf24/student_roles24.md index 552005c2..6e6ba116 100644 --- a/doc/08_dev_talks/paf24/student_roles24.md +++ b/doc/08_dev_talks/paf24/student_roles24.md @@ -2,13 +2,14 @@ ## Role overview -2-3 Students per Role +2-4 Students per Role - **Systems Engineer** - Oversee the entire development process, ensuring smooth interaction between different subsystems (perception, planning, control, decision-making, etc.). - Define system-level architecture, ensuring each module (e.g., sensors, planning, control) interacts through well-defined interfaces. - Manage requirements (e.g. in issues) and ensure each team's outputs align with the overall system goals, including performance, reliability, and safety standards. - Serve as the point of contact for inter-team communication, ensuring alignment between roles such as Perception Engineers, Control Engineers, and Decision-Making Engineers. + - Take responsibility for identifying and managing dependencies between subsystems and methods, especially in relation to the timeline. Ensure that the sequence of development is logical and efficient, avoiding resource investment in features that rely on unfinished or unavailable modules. For example, avoid focusing efforts on decision-making algorithms that depend on perception data (e.g., stop lines) if it’s clear that the sensors or detection mechanisms won't be ready until later stages of the project. - Develop and enforce a systems integration strategy that covers continuous testing, validation, and verification of the autonomous driving stack. - Ensure proper data flow between modules using middleware (e.g., ROS). - Define and monitor key performance indicators (KPIs) for each subsystem, ensuring they collectively meet reliability, stability, and safety goals. @@ -25,14 +26,6 @@ - Collaborate with perception, planning, and control engineers to ensure the decision-making module aligns with the data and actions generated by other subsystems. - Simulate and validate decision-making in various complex driving scenarios within CARLA, such as navigating congested traffic or adverse weather conditions. - Ensure decision-making algorithms are interpretable and explainable to enhance debugging and safety validation. -- **Machine Learning Engineer** - - Implement machine learning techniques (e.g., deep learning, reinforcement learning) to improve various subsystems in the autonomous driving stack. - - Train neural networks for perception tasks (e.g., image segmentation, object detection, classification) using both simulated and real-world datasets. - - Develop and optimize behavior cloning, imitation learning, or other algorithms to enable the vehicle to learn from human driving examples. - - Integrate machine learning models into the perception or decision-making pipeline, ensuring smooth interaction with other system components. - - Collaborate with Perception Engineers to fine-tune sensor fusion models using AI techniques for improved environmental understanding. - - Analyze model performance and iteratively improve accuracy, efficiency, and real-time processing capability. - - Monitor and manage the data pipeline for model training, ensuring data quality, labeling accuracy, and sufficient coverage of edge cases. - **Perception Engineer** - Develop and improve sensor models (e.g., camera, LiDAR, radar) within the simulation, ensuring realistic sensor behavior and noise characteristics. - Implement state-of-the-art object detection, tracking, and sensor fusion algorithms to accurately interpret environmental data. @@ -57,7 +50,7 @@ - Ensure path planning algorithms balance safety, efficiency, and passenger comfort while maintaining vehicle controllability. - **Control Systems Engineer** - Work on the low-level control of the vehicle, including steering, throttle, braking, and handling. - - Implement advanced control algorithms (e.g., PID, MPC) to ensure the vehicle follows planned paths with stability and precision. + - Implement advanced control algorithms (e.g. MPC) to ensure the vehicle follows planned paths with stability and precision. - Tune control parameters to ensure smooth and reliable vehicle behavior under dynamic environmental conditions. - Collaborate with Path Planning Engineers to translate high-level paths into precise control actions. - Ensure the control system reacts dynamically to changes in the environment (e.g., obstacles, traffic conditions). @@ -82,7 +75,6 @@ graph TD SE[Systems Engineer] --> DME[Decision-Making Engineer] SE --> PE[Perception Engineer] - SE --> MLE[Machine Learning Engineer] SE --> LME[Localization and Mapping Engineer] SE --> PPE[Path Planning Engineer] SE --> CSE[Control Systems Engineer] @@ -92,9 +84,7 @@ graph TD DME --> PE DME --> PPE DME --> CSE - DME --> MLE - - PE <--> MLE + PE --> LME PE --> PPE @@ -108,14 +98,12 @@ graph TD IE --> SE IE --> TVE - IE --> MLE LME --> DME subgraph Module Teams DME PE - MLE LME PPE CSE