Exacte Shapley-coalitiewaarden
Bereken exacte Shapley-aandelen voor maximaal acht spelers uit gehele coalitiewaarden met absolute waarde tot 1000000.
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| Project | Test additieve spellen en nul spelers, weiger een niet-nulle lege coalitie of een tabelgrootte die geen macht van twee is. |
|---|---|
| Controleer vóór het toepassen | Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen. |
| Modellen | Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen. |
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 resultMaak de aannames achter een berekend aandeel controleerbaar
CoalitionAster biedt voor werk aan wiskundige toepassingen een programmeerwerkruimte voor Windows om broncode te onderzoeken en met AI-ondersteuning te bespreken. Begin met de betekenis van de invoertabel en het resultaat dat je software rapporteert. Een berekening kan intern consistent zijn en toch een andere vraag beantwoorden dan de interface presenteert. Leg die betekenis dus vast voordat je om implementatiewijzigingen vraagt.
Het voorbeeld met Shapley-waarden biedt een concrete projecttaak: exacte breukaandelen controleren die uit coalitiewaarden zijn afgeleid. Geef een kleine tabel en leg uit hoe deelnemers aan vermeldingen zijn gekoppeld. Vraag de assistent die aannames samen met de berekening te onderzoeken, zonder het illustratieve wiskundige resultaat als financieel advies of operationeel toewijzingsbeleid te behandelen.
Beoordeel voorgestelde wijzigingen met onafhankelijk uitgewerkte voorbeelden, inclusief de representatie van een lege coalitie. Voer de projecttests uit en onderzoek hoe exacte breuken de rapportagelaag bereiken. Als de interface waarden afrondt, beoordeel dat dan apart, zodat een opmaakbeslissing de onderliggende toewijzing niet lijkt te veranderen of de aannames erachter verhult.
Je kunt een ongefilterd AI-model gebruiken dat via een ondersteund OpenAI-compatibel of Anthropic-eindpunt wordt aangeboden. Geef waar nodig inloggegevens op en controleer tools en contextcapaciteit. De gekozen dienst bepaalt het modelgedrag en de beperkingen; CoalitionAster houdt het programmeerwerk gekoppeld aan projectbestanden en resultaten die je zelf kunt onderzoeken.
Verduidelijk de berekening voordat je de code wijzigt
Wat moet een testgeval met coalitiewaarden uitleggen?
Benoem de deelnemers, hoe tabelvermeldingen overeenkomen met coalities en de verwachte waarde voor de lege coalitie. Gebruik een klein voorbeeld met onafhankelijk berekende aandelen. Zo kan de assistent zowel representatieaannames als de rekenkundige bewerkingen beoordelen.
Definieert het wiskundige voorbeeld een echt uitbetalingsbeleid?
Nee. Het is een illustratie voor het beoordelen van projectcode. De betekenis van invoer en de keuze voor een toewijzingsregel behoren tot je toepassingseisen; een berekend aandeel alleen rechtvaardigt geen operationele of financiële beslissing.
Hoe beoordeel ik afgeronde uitvoer?
Houd testgevallen voor exacte berekeningen gescheiden van weergavetestgevallen. Vermeld de gewenste afrondings- en presentatieregels en onderzoek vervolgens waar ze worden toegepast. Een afgerond rapport mag niet worden verward met de exacte waarden die de onderliggende berekening retourneert.
Is het uitvoeren van cloudtests inbegrepen vanwege de domeinnaam?
Het gedocumenteerde product is een programmeerwerkruimte voor Windows met configureerbare modelverbindingen. De domeinnaam toont niet aan dat cloudtests worden uitgevoerd. Voer controles uit in de door je project gekozen omgeving en neem relevante resultaten mee naar de beoordeling.
CoalitionAster · Bijgewerkt 2026-10-25