I am trying to create a list of options based on the compatibility between different components.
The compatibility is decided within a Matrix based on a RAG style of compatibility. Red = Incompatible, Amber = Not advised, and Green = Compatible.
Example complete matrix
The outcome of this at the moment is a list of Main components and the available Compatible and Not advised components associated with this Main component.
Current outcome list
I am trying to automatically create all the combination of components based on the current lists.
I am aware that there are going to be an ungodly amount of options but I need to understand if my request is possible and how long it would take to compile this list based on the example given.
Example options list
The main issue holding me back is that each option is only allowed to take one component from each family.
Alongside having a variable number of components associated with the main component.
As the number of families are not always the same or even compatible, this creates an issue of how to make it cycle until all families have been used if they are compatible.
I have tried to compile multiple filters together to create the longest of the option chains however this causes issues when trying to compile them into a single list as it doesn’t correctly collate the filtered components correctly.
Duncan van Dyk is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.