UNPKG

agentjs-core

Version:

A comprehensive agent-based modeling framework with built-in p5.js visualization

95 lines 2.61 kB
import { MLBehaviorModel, MLAgentState, AgentAction } from '../interfaces'; /** * Generic economic agent ML model for trading and resource decisions * Works for market trading, resource allocation, or economic simulations */ export declare class EconomicMLModel implements MLBehaviorModel { private model?; private inputFeatures; private outputActions; private isLoaded; private riskTolerance; private greedFactor; private socialInfluence; constructor(); predict(state: MLAgentState): Promise<AgentAction>; /** * ML-based prediction */ private predictWithML; /** * Rule-based economic prediction (fallback and training data generation) */ private predictWithRules; /** * Make economic decision based on current conditions */ private makeEconomicDecision; /** * Create agent action from economic decision */ private createEconomicAction; /** * Get current market price from environment or agent properties */ private getMarketPrice; /** * Get price history for trend analysis */ private getPriceHistory; /** * Calculate price trend (positive = rising, negative = falling) */ private calculatePriceTrend; /** * Calculate price volatility */ private calculateVolatility; /** * Analyze neighbor economic behavior */ private analyzeNeighborBehavior; /** * Encode agent state for ML model input */ private encodeEconomicState; /** * Calculate relative wealth rank among neighbors */ private calculateWealthRank; /** * Decode ML output to economic action */ private decodeEconomicAction; load(modelPath: string): Promise<void>; getRequiredInputs(): string[]; getOutputActions(): string[]; dispose(): void; /** * Configure economic behavior parameters */ configure(options: { riskTolerance?: number; greedFactor?: number; socialInfluence?: number; }): void; /** * Generate training data for economic model */ generateTrainingData(scenarios: Array<{ agentCount: number; marketConditions: 'bull' | 'bear' | 'volatile' | 'stable'; initialWealth: { min: number; max: number; }; }>, stepsPerScenario?: number): Array<{ input: number[]; output: number[]; }>; /** * Generate mock economic state for training */ private generateMockEconomicState; } //# sourceMappingURL=EconomicMLModel.d.ts.map