CCoalitionAster
Sposoby pracy

Praca z kodem · Dokładne wartości koalicji Shapleya

03
Produkt

Sposoby pracy

Oblicz dokładne udziały Shapleya dla najwyżej ośmiu graczy z całkowitych wartości koalicji o module do 1000000. Sprawdź gry addytywne i zero graczy, odrzucając niezerową pustą koalicję lub długość niebędącą potęgą dwójki.

01

Pobierz aplikację

Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.

02

Otwórz folder projektu

Wybierz zgodny endpoint. Dostępne narzędzia i jakość odpowiedzi zależą od skonfigurowanego modelu i serwera.

03

Podłącz i sprawdź model

Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.

04

Przejrzyj zmiany i uruchom testy

Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.

Dokładne wartości koalicji Shapleya

Sposoby pracy
from fractions import Fraction
from math import comb

def shapley_values(values):
    if type(values) not in (list, tuple) or not 1 <= len(values) <= 256 or len(values) & (len(values)-1):
        raise ValueError("shapley.table")
    if any(type(v) is not int or abs(v) > 10**6 for v in values) or values[0] != 0:
        raise ValueError("shapley.value")
    players = len(values).bit_length()-1
    result = []
    for player in range(players):
        share = Fraction(0)
        for subset in range(len(values)):
            if not subset & (1 << player):
                size = subset.bit_count()
                weight = Fraction(1, players*comb(players-1, size))
                share += weight*(values[subset | (1 << player)]-values[subset])
        result.append(share)
    return result

Sprawdź przed zastosowaniem. Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.

Środowisko programowania z AI

Tutaj zaczyna się kolejny pomysł.

Pobierz dla Windows ↗