Skip to main content

TraCI4Matlab: Enabling the Integration of the SUMO Road Traffic Simulator and Matlab® Through a Software Re-engineering Process

  • Conference paper
  • First Online:
Modeling Mobility with Open Data

Part of the book series: Lecture Notes in Mobility ((LNMOB))

Abstract

SUMO (Simulation of Urban Mobility) has become one of the preferred open-source platforms for researchers to perform microscopic road traffic simulation. Thanks to the Traffic Control Interface (TraCI), SUMO offers a high level of flexibility, allowing a client to retrieve and modify the objects in the simulation. Two implementations of TraCI have been released to date for Python (TraCI-Python) and Java (TraCI4j). On the other hand, Matlab® is a software tool with a programming language with a broad user’s community of researchers. Matlab is used in many tasks on simulation, control, optimization and it is a preferred tool for rapid prototyping. Both platforms share strengths that benefit the development of control strategies for road traffic. The desire of combining both strengths motivated the interest to develop a TraCI implementation for Matlab. This chapter describes an adaptive software re-engineering process of TraCI-Python used to implement TraCI4Matlab (TraCI for Matlab).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 219.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Beazley DM (2009) Python essential reference, 4th edn. Addison-Wesley Professional, Upper Saddle River

    Google Scholar 

  2. CanforaHarman G, Di Penta M (2007) New frontiers of reverse engineering. In: Future of software engineering, FOSE ’07. IEEE Computer Society, Washington, DC, USA, pp 326–341. doi:10.1109/FOSE.2007.15

  3. Chikofsky EJ, Cross I JH (1990) Reverse engineering and design recovery: a taxonomy. IEEE Softw 7:13–17. doi:10.1109/52.43044

  4. Comparing MATLAB with other oo languages—MATLAB and simulink, n.d. URL http://www.mathworks.com/help/matlab/matlab_oop/matlab-vs-other-oo-languages.html. Accessed 02 April 2014

  5. Demeyer S, Ducasse S, Nierstrasz O (2002) Object-oriented reengineering patterns. Morgan Kaufmann, San Francisco

    Google Scholar 

  6. egueli/TraCI4J GitHub, n.d. URL https://github.com/egueli/TraCI4J. Accessed 01 April 2014

  7. Ewer J, Knight B, Cowell D (1995) Case study: an incremental approach to re-engineering a legacy {FORTRAN} computational fluid dynamics code in C ++. Adv Eng Softw 22:153–168. doi:http://dx.doi.org/10.1016/0965-9978(95)00021-N

  8. Krajzewicz D, Erdmann J, Behrisch M, Bieker L (2012) Recent development and applications of SUMO—Simulation of Urban mobility. Int J Adv Syst Meas 5:128–138

    Google Scholar 

  9. MATLAB—the language of technical Computing—B, n.d. URL http://www.mathworks.com/products/matlab/. Accessed 09 Sept 2014

  10. Mens T, Tourwe T (2004) A survey of software refactoring. IEEE Trans Softw Eng 30:126–139. doi:10.1109/TSE.2004.1265817

    Article  Google Scholar 

  11. MOYCOT | MOYCOT, n.d. URL http://www.moycot.org/. Accessed 09 Sept 2014

  12. Olbrich S, Cruzes DS, Basili V, Zazworka N (2009) The evolution and impact of code smells: a case study of two open source systems. In: Proceedings of the 2009 3rd international symposium on empirical software engineering and measurement, ESEM ’09. IEEE Computer Society, Washington, DC, USA, pp 390–400. doi:10.1109/ESEM.2009.5314231

  13. Release notes for MATLAB—MATLAB and simulink, n.d. URL http://www.mathworks.com/help/matlab/release-notes.html. Accessed 09 Sept 2014

  14. Share data between workspaces—MATLAB and simulink, n.d. URL http://www.mathworks.com/help/matlab/matlab_prog/share-data-between-workspaces.html. Accessed 02 April 2014

  15. StarUML—The open source UML/MDA platform, n.d. URL http://staruml.sourceforge.net/en/. Accessed 30 Jan 2014

  16. SUMO_User_Documentation—SUMO—simulation of urban mobility, n.d. URL http://sumo-sim.org/userdoc/. Accessed 30 Jan 2014

  17. TCP/IP socket communications in MATLAB using java classes—file exchange—MATLAB central, n.d. URL http://www.mathworks.com/matlabcentral/fileexchange/file_infos/25249-tcp-ip-socket-communications-in-matlab-using-java-classes. Accessed 09 Sep 2014

  18. TraCI4Matlab—file exchange—MATLAB central, n.d. URL http://www.mathworks.com/matlabcentral/fileexchange/file_infos/44805-traci4matlab. Accessed 01 April 2014

  19. Vincke R, Van Landschoot S, Steegmans E, Boydens J (2012) Refactoring sequential embedded software for concurrent execution using design patterns. Annu J Electron 6:157–160

    Google Scholar 

  20. Winpdb—A platform independent python debugger, n.d. URL http://winpdb.org/. Accessed 30 Jan 2014

Download references

Acknowledgments

This work was supported by Proyecto Colciencias 111856934640 contrato 941-2012: Modelamiento y Control de tráfico urbano en la ciudad de Medellín. Convocatoria 569.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jairo Espinosa .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Acosta, A.F., Espinosa, J.E., Espinosa, J. (2015). TraCI4Matlab: Enabling the Integration of the SUMO Road Traffic Simulator and Matlab® Through a Software Re-engineering Process. In: Behrisch, M., Weber, M. (eds) Modeling Mobility with Open Data. Lecture Notes in Mobility. Springer, Cham. https://doi.org/10.1007/978-3-319-15024-6_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-15024-6_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-15023-9

  • Online ISBN: 978-3-319-15024-6

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics