@polybiouslabs/polybious
Version:
Polybius is a next-generation intelligent agent framework built for adaptability across diverse domains. It merges contextual awareness, multi-agent collaboration, and predictive reasoning to deliver dynamic, self-optimizing performance.
152 lines (142 loc) • 4.8 kB
TypeScript
export interface Behavior {
action: any;
context: any;
value: number;
confidence: number;
experiences: number;
lastUpdated: Date;
createdAt: Date;
personalLearningRate: number;
contextSensitivity: number;
explorationTendency: number;
}
export interface Experience {
id: string;
timestamp: Date;
action: any;
context: any;
outcome: any;
feedback: any;
reward: number;
processed: boolean;
}
export interface Policy {
defaultAction: string;
confidence: number;
actions: Map<string, ActionData>;
created: Date;
}
export interface ActionData {
value: number;
count: number;
lastSeen: Date;
}
export interface ActionSuggestion {
action: any;
confidence: number;
reasoning: string;
explorationRate: number;
timestamp: Date;
}
export interface Mutation {
type: 'value_adjustment' | 'learning_rate' | 'context_sensitivity' | 'exploration_strategy';
valueChange?: number;
confidenceChange?: number;
learningRateMultiplier?: number;
sensitivityChange?: number;
explorationMultiplier?: number;
}
export interface EvolutionRoundResult {
round: number;
mutationsTested: number;
improvements: number;
bestImprovement: number;
improvementDetails: Array<{
behaviorKey: string;
improvement: number;
mutation: Mutation;
}>;
}
export interface EvolutionResult {
rounds: number;
results: EvolutionRoundResult[];
overallImprovement: {
totalImprovements: number;
avgImprovementPerRound: number;
bestImprovement: number;
consistency: number;
};
finalStats: BehaviorStats;
}
export interface BehaviorStats {
totalBehaviors: number;
totalPolicies: number;
totalExperiences: number;
averageConfidence: number;
learningRate: number;
explorationRate: number;
topBehaviors: Array<{
behaviorKey: string;
value: number;
confidence: number;
experiences: number;
}>;
recentLearning: {
recentExperiences: number;
averageReward: number;
positiveExperiences: number;
negativeExperiences: number;
};
}
export declare class BehavioralEvolutionModel {
behaviors: Map<string, Behavior>;
rewards: Map<string, any>;
policies: Map<string, Policy>;
experiences: Experience[];
evolutionPath: string;
learningRate: number;
explorationRate: number;
decayRate: number;
constructor(learningRate?: number, explorationRate?: number, decayRate?: number);
recordExperience(action: any, context: any, outcome: any, feedback: any): Promise<string>;
processExperience(experience: Experience): Promise<void>;
suggestAction(context: any, availableActions?: any[]): Promise<ActionSuggestion>;
evolveStrategy(evolutionRounds?: number): Promise<EvolutionResult>;
performEvolutionRound(roundNumber: number): Promise<EvolutionRoundResult>;
generateMutation(behavior: Behavior): Mutation;
testMutation(mutationData: any): Promise<{ improvement: number; confidence: number; mutated?: Behavior }>;
applyMutation(behavior: Behavior, mutation: Mutation): Behavior;
calculateBehaviorPerformance(behavior: Behavior, experiences: Experience[]): number;
applyEvolutionResults(roundResults: EvolutionRoundResult): Promise<void>;
calculateReward(outcome: any, feedback: any): number;
normalizeContext(context: any): any;
getBehaviorKey(action: any, context: any): string;
getContextKey(context: any): string;
createNewBehavior(action: any, context: any): Behavior;
updateBehavior(behavior: Behavior, reward: number): void;
createDefaultPolicy(): Policy;
updatePolicies(action: any, context: any, reward: number): Promise<void>;
getBestAction(policy: Policy, availableActions: any[], context: any): any;
generateExploratoryAction(context: any): string;
calculateActionConfidence(action: any, context: any): number;
explainActionChoice(action: any, policy: Policy, context: any): string;
calculateOverallImprovement(evolutionResults: EvolutionRoundResult[]): any;
calculateImprovementConsistency(evolutionResults: EvolutionRoundResult[]): number;
calculateAverageConfidence(): number;
getBehaviorStats(): BehaviorStats;
getTopBehaviors(limit?: number): Array<{
behaviorKey: string;
value: number;
confidence: number;
experiences: number;
}>;
getRecentLearningStats(): {
recentExperiences: number;
averageReward: number;
positiveExperiences: number;
negativeExperiences: number;
};
initializeBehaviors(): void;
loadEvolutionData(): Promise<void>;
saveEvolutionData(): Promise<void>;
}