GithubHelp home page GithubHelp logo

sdc-scissor's Introduction

SDC-Scissor

License: GPL v3 Conventional Commits GitHub issues GitHub forks GitHub stars CD PyPI

This repository has been forked from ChristianBirchler's sdc-scissor repository

As we pulled and pushed the code to this repo, the first commit contains work from the authors or the above stated repo in addition to some of our changes. Our changes: tool for pre-processing of of simulation data for isa, tools to resume a paused simulation in beemng, modifications to ga including reporting of the average segment length as a new feature, increasing the number of tests that ambiegen generator generates, adding u turns(not entirely successful due to very low numbers generated).

Our Dataset

the gestHigh7 to gesthigh12 folders contain our highway test cases, in the unique folder under each highway folders are the test cases in json and the *_road_features file contain the road features as a csv, with simulation results under various conditions as described in the file name. The Town test cases are in the Town1-1 to Town 6-1 folders, with both the json test cases and road features. The pre-processed data is in the root folder, marked *_processed_features.csv, for various dataset combinations, before being sent to isa. the ga parameters for each of the test suites is described in the experiments doc in our google drive which is shared with our supervisor.

Below readme from original repo

A Tool for Cost-effective Simulation-based Test Selection in Self-driving Cars Software

SDC-Scissor is a tool that let you test self-driving cars more efficiently in simulation. It uses a machine-learning approach to select only relevant test scenarios so that the testing process is faster. Furthermore, the selected tests are diverse and try to challenge the car with corner cases.

Furthermore, this repository contains also code for test multi-objective test case prioritization with an evolutionary genetic search algorithm. If you are interested in prioritizing test cases, then you should read the dedicated README.md for this. If you use the prioritization technique then also cite the papers from the reference section!

Support

We use GitHub Discussions as a community platform. You can ask questions and get support there from the community. Furthermore, new features and releases will be discussed and announced there.

Documentation

For the documentation follow the link: sdc-scissor.readthedocs.io

License

SDC-Scissor tool for cost-effective simulation-based test selection
in self-driving cars software.
Copyright (C) 2022  Christian Birchler

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

The software we developed is distributed under GNU GPL license. See the LICENSE.md file.

References

If you use this tool in your research, please cite the following papers:

  • Christian Birchler, Nicolas Ganz, Sajad Khatiri, Alessio Gambi, and Sebastiano Panichella. 2022. Cost-effective Simulationbased Test Selection in Self-driving Cars Software with SDC-Scissor. In 2022 IEEE 29th International Conference on Software Analysis, Evolution and Reengineering (SANER), IEEE.

  • Christian Birchler, Sajad Khatiri, Pouria Derakhshanfar, Sebastiano Panichella, and Annibale Panichella. 2022. Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments. ACM Transactions on Software Engineering and Methodology (TOSEM) (2022). DOI: to appear

@inproceedings{Birchler2022Cost,
  author={Birchler, Christian and Ganz, Nicolas and Khatiri, Sajad and Gambi, Alessio, and Panichella, Sebastiano},
  booktitle={2022 IEEE 29th International Conference on Software Analysis, Evolution and Reengineering (SANER)},
  title={Cost-effective Simulationbased Test Selection in Self-driving Cars Software with SDC-Scissor},
  year={2022},
  doi={to appear}
}

@article{Birchler2022Single,
  author={Birchler, Christian and Khatiri, Sajad and Derakhshanfar, Pouria and Panichella, Sebastiano and Panichella, Annibale},
  title={Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments},
  year={2022},
  publisher={Association for Computing Machinery},
  journal={ACM Transactions on Software Engineering and Methodology (TOSEM)},
  doi={to appear}
}

Contacts

  • Christian Birchler
  • Nicolas Ganz
  • Sajad Khatiri
  • Dr. Alessio Gambi
  • Dr. Sebastiano Panichella

sdc-scissor's People

Contributors

rsun0013 avatar yuyangjerry avatar yuyangji avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.