#Formalization of real-world combinatorics problem

35 messages · Page 1 of 1 (latest)

gritty ice
#

I cannot wrap my head around this problem to even begin solving it. If I use improper notation, help on that is appreciated as well.

I have a lot of sequences, all of which are of length N, whose elements/items are taken from a set of length S, with repetition.
For example, N = 4, and set {1,2,3} so S = 3

Example of my sequences:
Sequence 1: [1,2,3,1]
Sequence 2: [3,2,1,3]
Sequence 3: [1,1,2,3]
Sequence 4: [2,2,1,1]

The machine's:
Ok, but the hard part is that I have a machine with arms equal to the set length, so 3 in this case. Let's say they are arm A,B,C.
Each arm is loaded with an infinite number of items from the set S.

__Some examples of "loadouts" of the machine: __
Loadout 1: A:1, B:2, C:3 (simple example)
Loadout 2: A:2, B:1,C:3 (order can change)
Loadout 3: A:2, B:2, C:3 (we can repeat if it helps reduce the number of programs I need)

The machine's "programs":
I have programs that I program the machine with that maps each arm to a positions, (p1,p2,p3,p4) in the sequence
Program 1: [A: p1,p4], [B: p2], [C: p3]
note that program 1 could be used both for Sequence 1 AND Sequence 2 above by loading the arms differently.

wary gustBOT
gritty ice
#

Desire:
Group all sequences into their "programs"

#

although mmappings are not functions.

gritty ice
#

The best I have so far is:
-I have three sets A,B,C, and I have many binary relations of A to C.
-This can be thought of as a compositional relation (S o R) of R: [A-->B] and S: [B-->C]
-Given my list of compositional relations (S o R), how would I find the list of relations R and S that minimize the distinct relations S

Rules for relation R:
Relation R from A to B must have each element of B mapped to once and only once. A can be mapped to B 0 or as many times as necessary.
If we must, we can simplify this by making this purely a bijective mapping, but I think that is sub-optimal.

Rules for relation S:
Each element in set C must be mapped to once and exactly once from set B. And again each element in set B can be mapped to set C 0 or as many times as necessary

willow drum
#

@gritty iceso there's just 3 programs?

#

cuz it's AABC, ABAC, ABCA

#

no, not like this, but
ABCA, BAAC,BCAA

#

hm

#

i guess there's 6 after all

#

there's S(n,k) programs

#

under the assumption that you can always modify 3 item program for a smaller range

gritty ice
#

I think either way that in #math-discussion we came up with just iterating through each sequence and "assign first number to A. move to next number and if it is different assign it to B, and so on"

willow drum
gritty ice
#

And what is this called?

willow drum
#

stirling number of the second kind

gritty ice
#

Awesome! I'll look at this tomorrow. I vaguely remember encountering this. I wonder if I can use it without fully understanding it, since it is probably non trivial

willow drum
#

is your goal still minimizing total programs?

#

i don't get why it's important, so maybe you dropped this idea

#

then there's no value in this minimum anyway

gritty ice
#

Yes.

#

The manufacturer is limiting me 😦
I need to find the best 18 programs that best reflect the inventory distriuvtionm of our items

#

I'd likely rediscover this or the subset of Stirling numbers 2nd kind that actually are used when I apply the iteration I mentioned earlier

gritty ice
#

There's some relation to multiset and partitions I think tho. I wish I was smart enough to be able to tie it all together

willow drum
#

wow that's weird, so your 18 programs don't even have to cover everything, just best they can?

gritty ice
#

Yeah...

willow drum
#

never easy angerysad

gritty ice
#

We have 6 items that will have a somewhat normal distribution of quantity and need to make use of each item evenly whole assigning them to a board in a way that obeys constraints

#

But I was having a hard time figuring out how to group these into templates

#

I also learned about "isomorphism of permutations" which I think really relate here.

rose verge
#

.close