SlideShare une entreprise Scribd logo
1  sur  45
Designing Unmanned Aerial Vehicles with Python Dirk Gorissen  (@elazungu) - PyCon UK - 25 September 2011
Outline Who are we Project focus & scope UAV design system Other uses of Python Status / Open isues
Who are we?
What do we do?
DECODE Project team ,[object Object]
Jeroen van Schaik
Mario Ferraro
Marc Bolinches
Ben Schumann
Associated:
Alex Forrester
Ivan VouchkovProfessors: Jim Scanlan Andy Keane Kenji Takeda Post doc: Erika Quaranta Dirk Gorissen
The DECODE Project Looking at how complex aerospace systems are designed In particular, the decision making process related to the design How are decisions made? Who makes them? How final are the? How arbitrary are they? How important are they? Are they recorded? …
Design decisions Important to rationalize decisions Motivate them during design review meetings However, Design of something is never “finished” Time pressure leads to arbitrary detail decisions No immediate payoff for recording rationale
Making decisions Which ones matter? Heatmap?
Making decisions
DECODE System A computer system to help understand the impact of a decision “Is it worth it?”
Case Study: UAVs UAV: Unmanned Aerial Vehicles Mostly for military use but many civilian applications Mapping/surveying, atmospheric measurements, search and rescue, wildlife management, …
UAVs: Why? Complex enough to be taken seriously ‘Simple’ enough to  be tackled within a university research project We can go through the full lifecycle Design -> build -> fly -> crash! Necessary to appreciate the impact and constraints of decisions
UAVs: Why? Its cool  Great for students
UAVs
Wind tunnel
The ‘U’ in UAV Sky Circuits Autopilot
Autopilot telemetry
Auto-takeoff
The DECODE Project Looking at how complex aerospace systems are designed £800,000 government grant (your money)
Case study: Search and Rescue
Search and Resuce The RLNI has to come look for you Helicopter costs £21 million and £6000 per hour Lifeboat costs £150,000 and £8000 per hour
Search and Rescue: UAVs Design low cost UAVs for search and rescue UAV costs < £10,000, and< £100 per hour Deploy to RNLI stations Reduce load on helicopters and lifeboats
Designing a S&R UAV What does a Search and Resuce UAV look like? How big, how heavy, how fast, … Decisions guided by an operational simulation
DECODE System How many more lives can we save by reducing the wing span by 15% ? “Is it worth it?”
System building blocks Manufacturing
System Requirements Support wide range of analysis codes Aerodynamics, structures, weights, costing, opsim, … Very slow (CFD) -> very fast (costing) Flexibility to add new solvers/codes Provenance Multi-client Cluster/cloud capable Make different MDO models possible (sync & async)
System components Lightweight component for each building block Written in Python (using Kombu) Any client with a an AMQP implementation will work Minimal (shared) state Each component ‘talks’ protobuf over AMQP Input queue: shared with peers (failover) Direct queue: exclusive Respects reply-to header
Messaging Multiple control flows between components Farmer-worker, sync MDO, async MDO RabbitMQ as message broker Persistent messages/queues Acknowledgements Pubsub Virtual hosts Clustering
Registry ,[object Object],We also want transparent failover between components Also need a registry for the components themselves Which components are running/available Analysis components need to publish their inputs (& outputs)  Redis: open source, fault tolerant data structure server
Control Flow API Controller Balancer Analysis Manager API Message Broker Registry CFD Costing Value Opsim Balancing code
Message based system Strengths: De-coupled & asynchronous Flexible, easy to add new solver/components Fault tolerant Horizontally scalable Platform/language independent Weaknesses: Enforcing synchronous, sequential behaviour Detecting the fact that nobody replies vs “fire-and-forget” Recalling requests Shared state implies race conditions Broker model vs P2P model
Deployment Decode VM API Controller Balancer Analysis Manager API Message Broker Spitfire Jeroens PC Registry Marcs PC Costing FP Balancing Code CFD Opsim Value Iridis
Deployment Very easy to add/remove components at any time System should cope Side effect: difficult to force a job to run on your machine Proof of principle: PC joins the Decode system on screensaver start
Clients Client requirements: Able to send a protobuf message over AMQP Covers C++, Java, C#, Python, Ruby Clients API client (Python, Java, C#) Matlab client (uses Java API) Excel addin (uses C# API)
Matlab Client
Excel client
More Python: ANSYS Python also used in ANSYS workbench Automate geometry, meshing, CFD analysis
More Python: Sizing Balancing component implemented in Excel Well known, flexible, easy to work with Not a concept design tool, tied to Windows, a pain to distribute Use Python to compile a spreadsheet to standalone Python code

Contenu connexe

Similaire à Pyconuk2011

High Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudHigh Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudWolfgang Gentzsch
 
High Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudHigh Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudThe UberCloud
 
NAFEMS Smart Manufacturing - UberCloud
NAFEMS Smart Manufacturing - UberCloudNAFEMS Smart Manufacturing - UberCloud
NAFEMS Smart Manufacturing - UberCloudThomas Francis
 
Smart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudSmart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudThe UberCloud
 
Smart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudSmart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudWolfgang Gentzsch
 
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Rafael Ferreira da Silva
 
UberCloud - From Project to Product
UberCloud - From Project to ProductUberCloud - From Project to Product
UberCloud - From Project to ProductThe UberCloud
 
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...Wolfgang Gentzsch
 
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...Docker, Inc.
 
Performance Verification for ESL Design Methodology from AADL Models
Performance Verification for ESL Design Methodology from AADL ModelsPerformance Verification for ESL Design Methodology from AADL Models
Performance Verification for ESL Design Methodology from AADL ModelsSpace Codesign
 
DockerDay2015: Keynote
DockerDay2015: KeynoteDockerDay2015: Keynote
DockerDay2015: KeynoteDocker-Hanoi
 
Using Embedded Linux for Infrastructure Systems
Using Embedded Linux for Infrastructure SystemsUsing Embedded Linux for Infrastructure Systems
Using Embedded Linux for Infrastructure SystemsYoshitake Kobayashi
 
Sioux Hot-or-Not: The future of Linux (Alan Cox)
Sioux Hot-or-Not: The future of Linux (Alan Cox)Sioux Hot-or-Not: The future of Linux (Alan Cox)
Sioux Hot-or-Not: The future of Linux (Alan Cox)siouxhotornot
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...VMware Tanzu
 
ERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsChristian Charreyre
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices Hendri Karisma
 
Evolving Services Into A Cloud Native World
Evolving Services Into A Cloud Native WorldEvolving Services Into A Cloud Native World
Evolving Services Into A Cloud Native WorldIain Hull
 

Similaire à Pyconuk2011 (20)

High Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudHigh Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the Cloud
 
High Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the CloudHigh Performance Computing (HPC) and Engineering Simulations in the Cloud
High Performance Computing (HPC) and Engineering Simulations in the Cloud
 
NAFEMS Smart Manufacturing - UberCloud
NAFEMS Smart Manufacturing - UberCloudNAFEMS Smart Manufacturing - UberCloud
NAFEMS Smart Manufacturing - UberCloud
 
Smart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudSmart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the Cloud
 
Smart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the CloudSmart Manufacturing: CAE in the Cloud
Smart Manufacturing: CAE in the Cloud
 
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
 
UberCloud - From Project to Product
UberCloud - From Project to ProductUberCloud - From Project to Product
UberCloud - From Project to Product
 
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...
The UberCloud - From Project to Product - From HPC Experiment to HPC Marketpl...
 
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...
DCEU 18: From Legacy Mainframe to the Cloud: The Finnish Railways Evolution w...
 
Performance Verification for ESL Design Methodology from AADL Models
Performance Verification for ESL Design Methodology from AADL ModelsPerformance Verification for ESL Design Methodology from AADL Models
Performance Verification for ESL Design Methodology from AADL Models
 
DockerDay2015: Keynote
DockerDay2015: KeynoteDockerDay2015: Keynote
DockerDay2015: Keynote
 
Using Embedded Linux for Infrastructure Systems
Using Embedded Linux for Infrastructure SystemsUsing Embedded Linux for Infrastructure Systems
Using Embedded Linux for Infrastructure Systems
 
Sioux Hot-or-Not: The future of Linux (Alan Cox)
Sioux Hot-or-Not: The future of Linux (Alan Cox)Sioux Hot-or-Not: The future of Linux (Alan Cox)
Sioux Hot-or-Not: The future of Linux (Alan Cox)
 
CURRICULUM VITAE
CURRICULUM VITAE CURRICULUM VITAE
CURRICULUM VITAE
 
3DD 1e 31 Luglio Apertura
3DD 1e 31 Luglio Apertura3DD 1e 31 Luglio Apertura
3DD 1e 31 Luglio Apertura
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
 
Eclipse RT Day
Eclipse RT DayEclipse RT Day
Eclipse RT Day
 
ERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projects
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices
 
Evolving Services Into A Cloud Native World
Evolving Services Into A Cloud Native WorldEvolving Services Into A Cloud Native World
Evolving Services Into A Cloud Native World
 

Plus de Dirk Gorissen

Measuring and Predicting Departures from Routine in Human Mobility
Measuring and Predicting Departures from Routine in Human MobilityMeasuring and Predicting Departures from Routine in Human Mobility
Measuring and Predicting Departures from Routine in Human MobilityDirk Gorissen
 
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES   UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES Dirk Gorissen
 
London Big-O Algorithms and Datastructures Meetup Welcome
London Big-O Algorithms and Datastructures Meetup WelcomeLondon Big-O Algorithms and Datastructures Meetup Welcome
London Big-O Algorithms and Datastructures Meetup WelcomeDirk Gorissen
 
Random Hacks of Kindness, Dec 2012
Random Hacks of Kindness, Dec 2012Random Hacks of Kindness, Dec 2012
Random Hacks of Kindness, Dec 2012Dirk Gorissen
 
"Click here" to build your UAV
"Click here" to build your UAV"Click here" to build your UAV
"Click here" to build your UAVDirk Gorissen
 

Plus de Dirk Gorissen (9)

Data For Good ?
Data For Good ?Data For Good ?
Data For Good ?
 
Measuring and Predicting Departures from Routine in Human Mobility
Measuring and Predicting Departures from Routine in Human MobilityMeasuring and Predicting Departures from Routine in Human Mobility
Measuring and Predicting Departures from Routine in Human Mobility
 
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES   UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES
UNNMANED AIRCRAFT SYSTEMS – CURRENT OPS, INTEGRATION AND CHALLENGES
 
Structronics
StructronicsStructronics
Structronics
 
London Big-O Algorithms and Datastructures Meetup Welcome
London Big-O Algorithms and Datastructures Meetup WelcomeLondon Big-O Algorithms and Datastructures Meetup Welcome
London Big-O Algorithms and Datastructures Meetup Welcome
 
ICT4D and me
ICT4D and meICT4D and me
ICT4D and me
 
Random Hacks of Kindness, Dec 2012
Random Hacks of Kindness, Dec 2012Random Hacks of Kindness, Dec 2012
Random Hacks of Kindness, Dec 2012
 
"Click here" to build your UAV
"Click here" to build your UAV"Click here" to build your UAV
"Click here" to build your UAV
 
Ngo Clarity
Ngo ClarityNgo Clarity
Ngo Clarity
 

Dernier

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Dernier (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Pyconuk2011

  • 1. Designing Unmanned Aerial Vehicles with Python Dirk Gorissen (@elazungu) - PyCon UK - 25 September 2011
  • 2. Outline Who are we Project focus & scope UAV design system Other uses of Python Status / Open isues
  • 5.
  • 12. Ivan VouchkovProfessors: Jim Scanlan Andy Keane Kenji Takeda Post doc: Erika Quaranta Dirk Gorissen
  • 13. The DECODE Project Looking at how complex aerospace systems are designed In particular, the decision making process related to the design How are decisions made? Who makes them? How final are the? How arbitrary are they? How important are they? Are they recorded? …
  • 14. Design decisions Important to rationalize decisions Motivate them during design review meetings However, Design of something is never “finished” Time pressure leads to arbitrary detail decisions No immediate payoff for recording rationale
  • 15. Making decisions Which ones matter? Heatmap?
  • 17. DECODE System A computer system to help understand the impact of a decision “Is it worth it?”
  • 18. Case Study: UAVs UAV: Unmanned Aerial Vehicles Mostly for military use but many civilian applications Mapping/surveying, atmospheric measurements, search and rescue, wildlife management, …
  • 19. UAVs: Why? Complex enough to be taken seriously ‘Simple’ enough to be tackled within a university research project We can go through the full lifecycle Design -> build -> fly -> crash! Necessary to appreciate the impact and constraints of decisions
  • 20. UAVs: Why? Its cool  Great for students
  • 21. UAVs
  • 23. The ‘U’ in UAV Sky Circuits Autopilot
  • 26. The DECODE Project Looking at how complex aerospace systems are designed £800,000 government grant (your money)
  • 27. Case study: Search and Rescue
  • 28. Search and Resuce The RLNI has to come look for you Helicopter costs £21 million and £6000 per hour Lifeboat costs £150,000 and £8000 per hour
  • 29. Search and Rescue: UAVs Design low cost UAVs for search and rescue UAV costs < £10,000, and< £100 per hour Deploy to RNLI stations Reduce load on helicopters and lifeboats
  • 30. Designing a S&R UAV What does a Search and Resuce UAV look like? How big, how heavy, how fast, … Decisions guided by an operational simulation
  • 31. DECODE System How many more lives can we save by reducing the wing span by 15% ? “Is it worth it?”
  • 32. System building blocks Manufacturing
  • 33. System Requirements Support wide range of analysis codes Aerodynamics, structures, weights, costing, opsim, … Very slow (CFD) -> very fast (costing) Flexibility to add new solvers/codes Provenance Multi-client Cluster/cloud capable Make different MDO models possible (sync & async)
  • 34. System components Lightweight component for each building block Written in Python (using Kombu) Any client with a an AMQP implementation will work Minimal (shared) state Each component ‘talks’ protobuf over AMQP Input queue: shared with peers (failover) Direct queue: exclusive Respects reply-to header
  • 35. Messaging Multiple control flows between components Farmer-worker, sync MDO, async MDO RabbitMQ as message broker Persistent messages/queues Acknowledgements Pubsub Virtual hosts Clustering
  • 36.
  • 37. Control Flow API Controller Balancer Analysis Manager API Message Broker Registry CFD Costing Value Opsim Balancing code
  • 38. Message based system Strengths: De-coupled & asynchronous Flexible, easy to add new solver/components Fault tolerant Horizontally scalable Platform/language independent Weaknesses: Enforcing synchronous, sequential behaviour Detecting the fact that nobody replies vs “fire-and-forget” Recalling requests Shared state implies race conditions Broker model vs P2P model
  • 39. Deployment Decode VM API Controller Balancer Analysis Manager API Message Broker Spitfire Jeroens PC Registry Marcs PC Costing FP Balancing Code CFD Opsim Value Iridis
  • 40. Deployment Very easy to add/remove components at any time System should cope Side effect: difficult to force a job to run on your machine Proof of principle: PC joins the Decode system on screensaver start
  • 41. Clients Client requirements: Able to send a protobuf message over AMQP Covers C++, Java, C#, Python, Ruby Clients API client (Python, Java, C#) Matlab client (uses Java API) Excel addin (uses C# API)
  • 44. More Python: ANSYS Python also used in ANSYS workbench Automate geometry, meshing, CFD analysis
  • 45. More Python: Sizing Balancing component implemented in Excel Well known, flexible, easy to work with Not a concept design tool, tied to Windows, a pain to distribute Use Python to compile a spreadsheet to standalone Python code
  • 46. More Python: Sizing Exploring the sizing equations with NetworkX, Gephi & Neo4J
  • 47. Open issues Deal with requests that never return & query cancelling Add web UI to components (Flask?) Deployment container? Analysis cache Explore possibilities of sizing graph Data management layer Archiving result data in digital repo (e.g., Fedora Commons) Link to manufacturing
  • 48. Building UAVs Focus on rapid manufacturing, 3D printing cheap, fast complexity comes for ‘free’ cool 
  • 49. SULSA Worlds first (?) 3D printed aircraft
  • 50. SULSA
  • 51. Project status Halfway through building the system & starting design on second DECODE UAV (20 kg) Special course on Unmanned Systems starting this year Students will use & extend the system Interest from the BBC, Police, Met Office, and US Navy