|
ACTS
Experiment-independent tracking
|
Generic implementation of the machine learning ambiguity resolution Contains method for data preparations. More...
#include <Acts/AmbiguityResolution/AmbiguityResolutionML.hpp>
Classes | |
| struct | Config |
Public Member Functions | |
| AmbiguityResolutionML (const Config &cfg, std::unique_ptr< const Logger > logger=getDefaultLogger("AmbiguityResolutionML", Logging::INFO)) | |
| Construct the ambiguity resolution algorithm. | |
| template<TrackContainerFrontend track_container_t, typename source_link_hash_t, typename source_link_equality_t> | |
| std::multimap< int, std::pair< std::size_t, std::vector< std::size_t > > > | mapTrackHits (const track_container_t &tracks, const source_link_hash_t &sourceLinkHash, const source_link_equality_t &sourceLinkEquality) const |
| Associate the hits to the tracks. | |
| template<TrackContainerFrontend track_container_t> | |
| std::vector< std::size_t > | solveAmbiguity (std::unordered_map< std::size_t, std::vector< std::size_t > > &clusters, const track_container_t &tracks) const |
| Select the track associated with each cluster. | |
Generic implementation of the machine learning ambiguity resolution Contains method for data preparations.
|
explicit |
Construct the ambiguity resolution algorithm.
| cfg | is the algorithm configuration |
| logger | is the logging instance |
| std::multimap< int, std::pair< std::size_t, std::vector< std::size_t > > > Acts::AmbiguityResolutionML< AmbiguityNetwork >::mapTrackHits | ( | const track_container_t & | tracks, |
| const source_link_hash_t & | sourceLinkHash, | ||
| const source_link_equality_t & | sourceLinkEquality ) const |
Associate the hits to the tracks.
This algorithm performs the mapping of hits ID to track ID. Our final goal is too loop over all the tracks (and their associated hits) by order of decreasing number hits for this we use a multimap where the key is the number of hits as this will automatically perform the sorting.
| tracks | is the input track container |
| sourceLinkHash | is the hash function for the source link, will be used to associate to tracks |
| sourceLinkEquality | is the equality function for the source link used used to associated hits to tracks |
| std::vector< std::size_t > Acts::AmbiguityResolutionML< AmbiguityNetwork >::solveAmbiguity | ( | std::unordered_map< std::size_t, std::vector< std::size_t > > & | clusters, |
| const track_container_t & | tracks ) const |
Select the track associated with each cluster.
In this algorithm the call the neural network to score the tracks and then select the track with the highest score in each cluster
| clusters | is a map of clusters, each cluster correspond to a vector of track ID |
| tracks | is the input track container |