Codierung sigma-Formel?

Python-Anfänger, ausgeführt 2.7

Ich nicht finden können, ein Pythonic Weg, um code, der die folgende Formel. Mein Ziel ist es, eine Funktion in der ich die Eingabe der Werte (bei früheren versuchen habe ich nur die gefunden, die eine hoch repetitive brute-force-Lösung).

Codierung sigma-Formel?

Notwendigen Informationen:

wenn Sie nicht wissen, was die sigma-symbol bedeutet: schauen Sie hier

# 'v' is the formula
# 'i' 'j' 'k' are actors with numerical attributes 'c' 's' and 'x'
# 'n' = length of the following lists (length is identical for all four lists)

values_1 = [Bob, Sue, Mary, Jo...] # i, j, and k are any 3 values drawn from this list  
                        # under the condition that i != j != k

values_2 = [5,6,7,8...] # c is drawn from this list. 
                        # if i = values_1[0], then c(i) = values_2[0]. 
                        # same for j and k

values_3 = [9,10,11,12...] # s is drawn from this list.  
                        # if i = values_1[0], then s(i) = values_3[0]

values_4 = [13,14,15, 16..] # x is drawn from this list. 
                           # if i = values_1[0], then x(i) = values_4[0].

def V (j,k):
        #this is where I need help!

v_Bob_Sue = # this is where V(Bob, Sue) should go.
            # this is what the math would look like in English:
# SUM of (c_Mary * s_Mary * ((abs(x_Mary - x_Sue) - abs(x_Mary - x_Bob)) /x's range))
# and (c_Jo * s_Jo * ((abs(x_Jo - x_Sue) - abs(x_Jo - x_Bob)) /x's range))

# Bob and Sue are the j and k value
# we do the formula with all the other actors (from values_1) who AREN'T Bob and Sue


v_Bob_Mary = # etc 
v_Bob_Jo = 
v_Sue_Bob =
v_Sue_Mary =
v_Sue_Jo =
v_Mary_Bob =
v_Mary_Sue =
v_Mary_Jo =
v_Jo_Bob =
v_Jo_Sue =
v_Jo_Mary =
ich gehe davon aus, dass diese Formel ist etwas, das ist bekannt durch einige Namen, kann Sie link der name der Formel/websites, so kann ich verstehen, den Prozess, es passiert in Ihr?
Die Mathematik stellt einen Prozess namens " pairwise voting.' en.wikipedia.org/wiki/Pairwise_comparison Die spezielle Formel ist aus einer Forschungsarbeit in einer for-pay-wissenschaftlichen Zeitschrift. Ich bin mir nicht sicher, ob es ok ist urheberrechtlich geschütztes IP auf StackOverflow?
naja, kann man erklären, die mathematische Schreibweise in deiner Frage dann?
OK, das hinzufügen es in die post nun.
zunächst haben Sie versucht, mit einem Wörterbuch anstelle von mehreren Listen, deren Indizes sind die gleichen? (zum Beispiel: {'Bob': [5,9,13], 'Sue': [6,10,14],...} ??

InformationsquelleAutor user1569317 | 2012-08-06

Schreibe einen Kommentar