@higher.archi/boe 1.0.20 → 1.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/engines/ensemble/index.d.ts +2 -0
- package/dist/engines/ensemble/index.d.ts.map +1 -1
- package/dist/engines/ensemble/index.js +8 -1
- package/dist/engines/ensemble/index.js.map +1 -1
- package/dist/engines/ensemble/members.d.ts +66 -0
- package/dist/engines/ensemble/members.d.ts.map +1 -0
- package/dist/engines/ensemble/members.js +86 -0
- package/dist/engines/ensemble/members.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/engines/ensemble/index.ts +9 -0
- package/src/engines/ensemble/members.ts +156 -0
- package/src/index.ts +5 -2
|
@@ -6,4 +6,6 @@ export { compileEnsembleRuleSet } from './compiler';
|
|
|
6
6
|
export { EnsembleStrategy, ensembleStrategy } from './strategy';
|
|
7
7
|
export { EnsembleEngine } from './engine';
|
|
8
8
|
export { summarizeEnsemble } from './summary';
|
|
9
|
+
export { bayesianMember, fuzzyMember, monteCarloMember, expertMember, scoringMember } from './members';
|
|
10
|
+
export type { BayesianMemberConfig, FuzzyMemberConfig, MonteCarloMemberConfig, ExpertMemberConfig, ScoringMemberConfig } from './members';
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engines/ensemble/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,YAAY,EACZ,cAAc,EACd,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAGpD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engines/ensemble/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,YAAY,EACZ,cAAc,EACd,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAGpD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EACL,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAC3E,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,EAC/D,kBAAkB,EAAE,mBAAmB,EACxC,MAAM,WAAW,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Ensemble Engine — Multi-Model Score Fusion
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.summarizeEnsemble = exports.EnsembleEngine = exports.ensembleStrategy = exports.EnsembleStrategy = exports.compileEnsembleRuleSet = void 0;
|
|
6
|
+
exports.scoringMember = exports.expertMember = exports.monteCarloMember = exports.fuzzyMember = exports.bayesianMember = exports.summarizeEnsemble = exports.EnsembleEngine = exports.ensembleStrategy = exports.EnsembleStrategy = exports.compileEnsembleRuleSet = void 0;
|
|
7
7
|
// Compiler
|
|
8
8
|
var compiler_1 = require("./compiler");
|
|
9
9
|
Object.defineProperty(exports, "compileEnsembleRuleSet", { enumerable: true, get: function () { return compiler_1.compileEnsembleRuleSet; } });
|
|
@@ -17,4 +17,11 @@ Object.defineProperty(exports, "EnsembleEngine", { enumerable: true, get: functi
|
|
|
17
17
|
// Summary
|
|
18
18
|
var summary_1 = require("./summary");
|
|
19
19
|
Object.defineProperty(exports, "summarizeEnsemble", { enumerable: true, get: function () { return summary_1.summarizeEnsemble; } });
|
|
20
|
+
// Member adapter factories
|
|
21
|
+
var members_1 = require("./members");
|
|
22
|
+
Object.defineProperty(exports, "bayesianMember", { enumerable: true, get: function () { return members_1.bayesianMember; } });
|
|
23
|
+
Object.defineProperty(exports, "fuzzyMember", { enumerable: true, get: function () { return members_1.fuzzyMember; } });
|
|
24
|
+
Object.defineProperty(exports, "monteCarloMember", { enumerable: true, get: function () { return members_1.monteCarloMember; } });
|
|
25
|
+
Object.defineProperty(exports, "expertMember", { enumerable: true, get: function () { return members_1.expertMember; } });
|
|
26
|
+
Object.defineProperty(exports, "scoringMember", { enumerable: true, get: function () { return members_1.scoringMember; } });
|
|
20
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engines/ensemble/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAsBH,WAAW;AACX,uCAAoD;AAA3C,kHAAA,sBAAsB,OAAA;AAE/B,WAAW;AACX,uCAAgE;AAAvD,4GAAA,gBAAgB,OAAA;AAAE,4GAAA,gBAAgB,OAAA;AAE3C,SAAS;AACT,mCAA0C;AAAjC,wGAAA,cAAc,OAAA;AAEvB,UAAU;AACV,qCAA8C;AAArC,4GAAA,iBAAiB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engines/ensemble/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAsBH,WAAW;AACX,uCAAoD;AAA3C,kHAAA,sBAAsB,OAAA;AAE/B,WAAW;AACX,uCAAgE;AAAvD,4GAAA,gBAAgB,OAAA;AAAE,4GAAA,gBAAgB,OAAA;AAE3C,SAAS;AACT,mCAA0C;AAAjC,wGAAA,cAAc,OAAA;AAEvB,UAAU;AACV,qCAA8C;AAArC,4GAAA,iBAAiB,OAAA;AAE1B,2BAA2B;AAC3B,qCAEmB;AADjB,yGAAA,cAAc,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,2GAAA,gBAAgB,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,wGAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensemble Member Adapter Factories
|
|
3
|
+
*
|
|
4
|
+
* Factory functions that wrap non-scoring engines (Bayesian, Fuzzy, etc.)
|
|
5
|
+
* into CustomMemberDef or ScoringMemberDef for use in ensemble rulesets.
|
|
6
|
+
*/
|
|
7
|
+
import type { ScoreExtractor, ConfidenceExtractor, CustomMemberDef, ScoringMemberDef } from './types';
|
|
8
|
+
import type { CompiledBayesianRuleSet, BayesianOptions, BayesianResult } from '../bayesian';
|
|
9
|
+
import type { CompiledFuzzyRuleSet, FuzzyOptions, FuzzyResult } from '../fuzzy';
|
|
10
|
+
import type { CompiledMonteCarloRuleSet, MonteCarloOptions, MonteCarloResult } from '../monte-carlo';
|
|
11
|
+
import type { CompiledExpertRuleSet, ExpertOptions, ExpertResult } from '../expert';
|
|
12
|
+
import type { CompiledScoringRuleSet, ScoringOptions } from '../scoring/types';
|
|
13
|
+
export type BayesianMemberConfig = {
|
|
14
|
+
id: string;
|
|
15
|
+
name?: string;
|
|
16
|
+
weight: number;
|
|
17
|
+
ruleset: CompiledBayesianRuleSet;
|
|
18
|
+
extractScore: ScoreExtractor<BayesianResult>;
|
|
19
|
+
extractConfidence?: ConfidenceExtractor<BayesianResult>;
|
|
20
|
+
options?: BayesianOptions;
|
|
21
|
+
};
|
|
22
|
+
export type FuzzyMemberConfig = {
|
|
23
|
+
id: string;
|
|
24
|
+
name?: string;
|
|
25
|
+
weight: number;
|
|
26
|
+
ruleset: CompiledFuzzyRuleSet;
|
|
27
|
+
extractScore: ScoreExtractor<FuzzyResult>;
|
|
28
|
+
extractConfidence?: ConfidenceExtractor<FuzzyResult>;
|
|
29
|
+
options?: FuzzyOptions;
|
|
30
|
+
};
|
|
31
|
+
export type MonteCarloMemberConfig = {
|
|
32
|
+
id: string;
|
|
33
|
+
name?: string;
|
|
34
|
+
weight: number;
|
|
35
|
+
ruleset: CompiledMonteCarloRuleSet;
|
|
36
|
+
extractScore: ScoreExtractor<MonteCarloResult>;
|
|
37
|
+
extractConfidence?: ConfidenceExtractor<MonteCarloResult>;
|
|
38
|
+
options?: MonteCarloOptions;
|
|
39
|
+
};
|
|
40
|
+
export type ExpertMemberConfig = {
|
|
41
|
+
id: string;
|
|
42
|
+
name?: string;
|
|
43
|
+
weight: number;
|
|
44
|
+
ruleset: CompiledExpertRuleSet;
|
|
45
|
+
extractScore: ScoreExtractor<ExpertResult>;
|
|
46
|
+
extractConfidence?: ConfidenceExtractor<ExpertResult>;
|
|
47
|
+
options?: ExpertOptions;
|
|
48
|
+
};
|
|
49
|
+
export type ScoringMemberConfig = {
|
|
50
|
+
id: string;
|
|
51
|
+
name?: string;
|
|
52
|
+
weight: number;
|
|
53
|
+
ruleset: CompiledScoringRuleSet;
|
|
54
|
+
options?: ScoringOptions;
|
|
55
|
+
};
|
|
56
|
+
/** Wrap a Bayesian engine as an ensemble member. Default confidence uses result.confidence. */
|
|
57
|
+
export declare function bayesianMember(config: BayesianMemberConfig): CustomMemberDef;
|
|
58
|
+
/** Wrap a Fuzzy engine as an ensemble member. Default confidence is 1.0 (outputs are crisp). */
|
|
59
|
+
export declare function fuzzyMember(config: FuzzyMemberConfig): CustomMemberDef;
|
|
60
|
+
/** Wrap a Monte Carlo engine as an ensemble member. Default confidence is 1.0 (domain-specific). */
|
|
61
|
+
export declare function monteCarloMember(config: MonteCarloMemberConfig): CustomMemberDef;
|
|
62
|
+
/** Wrap an Expert engine as an ensemble member. Default confidence is 1.0 (per-conclusion only). */
|
|
63
|
+
export declare function expertMember(config: ExpertMemberConfig): CustomMemberDef;
|
|
64
|
+
/** Shorthand for creating a ScoringMemberDef. Consistency helper, no wrapping needed. */
|
|
65
|
+
export declare function scoringMember(config: ScoringMemberConfig): ScoringMemberDef;
|
|
66
|
+
//# sourceMappingURL=members.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../../../src/engines/ensemble/members.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Ensemble Member Adapter Factories
|
|
4
|
+
*
|
|
5
|
+
* Factory functions that wrap non-scoring engines (Bayesian, Fuzzy, etc.)
|
|
6
|
+
* into CustomMemberDef or ScoringMemberDef for use in ensemble rulesets.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.bayesianMember = bayesianMember;
|
|
10
|
+
exports.fuzzyMember = fuzzyMember;
|
|
11
|
+
exports.monteCarloMember = monteCarloMember;
|
|
12
|
+
exports.expertMember = expertMember;
|
|
13
|
+
exports.scoringMember = scoringMember;
|
|
14
|
+
const bayesian_1 = require("../bayesian");
|
|
15
|
+
const fuzzy_1 = require("../fuzzy");
|
|
16
|
+
const monte_carlo_1 = require("../monte-carlo");
|
|
17
|
+
const expert_1 = require("../expert");
|
|
18
|
+
// ========================================
|
|
19
|
+
// Factory Functions
|
|
20
|
+
// ========================================
|
|
21
|
+
/** Wrap a Bayesian engine as an ensemble member. Default confidence uses result.confidence. */
|
|
22
|
+
function bayesianMember(config) {
|
|
23
|
+
const { id, name, weight, ruleset, extractScore, extractConfidence = (r) => r.confidence, options } = config;
|
|
24
|
+
return {
|
|
25
|
+
id, name, weight,
|
|
26
|
+
execute: (facts) => {
|
|
27
|
+
const engine = new bayesian_1.BayesianEngine();
|
|
28
|
+
for (const f of facts)
|
|
29
|
+
engine.add(f);
|
|
30
|
+
return engine.execute(ruleset, options);
|
|
31
|
+
},
|
|
32
|
+
extractScore,
|
|
33
|
+
extractConfidence
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/** Wrap a Fuzzy engine as an ensemble member. Default confidence is 1.0 (outputs are crisp). */
|
|
37
|
+
function fuzzyMember(config) {
|
|
38
|
+
const { id, name, weight, ruleset, extractScore, extractConfidence = () => 1.0, options } = config;
|
|
39
|
+
return {
|
|
40
|
+
id, name, weight,
|
|
41
|
+
execute: (facts) => {
|
|
42
|
+
const engine = new fuzzy_1.FuzzyEngine();
|
|
43
|
+
for (const f of facts)
|
|
44
|
+
engine.add(f);
|
|
45
|
+
return engine.execute(ruleset, options);
|
|
46
|
+
},
|
|
47
|
+
extractScore,
|
|
48
|
+
extractConfidence
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/** Wrap a Monte Carlo engine as an ensemble member. Default confidence is 1.0 (domain-specific). */
|
|
52
|
+
function monteCarloMember(config) {
|
|
53
|
+
const { id, name, weight, ruleset, extractScore, extractConfidence = () => 1.0, options } = config;
|
|
54
|
+
return {
|
|
55
|
+
id, name, weight,
|
|
56
|
+
execute: (facts) => {
|
|
57
|
+
const engine = new monte_carlo_1.MonteCarloEngine();
|
|
58
|
+
for (const f of facts)
|
|
59
|
+
engine.add(f);
|
|
60
|
+
return engine.execute(ruleset, options);
|
|
61
|
+
},
|
|
62
|
+
extractScore,
|
|
63
|
+
extractConfidence
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/** Wrap an Expert engine as an ensemble member. Default confidence is 1.0 (per-conclusion only). */
|
|
67
|
+
function expertMember(config) {
|
|
68
|
+
const { id, name, weight, ruleset, extractScore, extractConfidence = () => 1.0, options } = config;
|
|
69
|
+
return {
|
|
70
|
+
id, name, weight,
|
|
71
|
+
execute: (facts) => {
|
|
72
|
+
const engine = new expert_1.ExpertEngine();
|
|
73
|
+
for (const f of facts)
|
|
74
|
+
engine.add(f);
|
|
75
|
+
return engine.execute(ruleset, options);
|
|
76
|
+
},
|
|
77
|
+
extractScore,
|
|
78
|
+
extractConfidence
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/** Shorthand for creating a ScoringMemberDef. Consistency helper, no wrapping needed. */
|
|
82
|
+
function scoringMember(config) {
|
|
83
|
+
const { id, name, weight, ruleset, options } = config;
|
|
84
|
+
return { id, name, weight, ruleset, options };
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=members.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"members.js","sourceRoot":"","sources":["../../../src/engines/ensemble/members.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -53,8 +53,8 @@ export { ExpertEngine, ExpertStrategy, compileExpertRuleSet, expertStrategy, com
|
|
|
53
53
|
export type { ExpertRule, ExpertRuleSet, ExpertConfig, ExplainBlock, CompiledExpertRuleSet, CompiledExpertRule, CompiledExplainBlock, CompiledTemplate, ExpertOptions, ExpertResult, ExpertQueryResult, InferenceStep, FactIndex, ResultIndex, InterpolationContext } from './engines/expert';
|
|
54
54
|
export { PricingStrategy, compilePricingRuleSet, compilePricingRule, pricingStrategy, pricingEngine, calculateFlat, calculateGraduated, calculateVolume, formatCurrency, formatNumber, formatPercent, round, calculateDiscount, applyMinMax, CURRENCIES, getCurrencyInfo } from './engines/pricing';
|
|
55
55
|
export type { CurrencyCode, CurrencyInfo, PricingRule, PricingRuleSet, PricingConfig, PricingComponent, PricingMode, PricingInput, PricingPackage, FlatPricing, GraduatedTier, GraduatedPricing, VolumeBracket, VolumePricing, Meter, MultiMeterPricing, FormulaPricing, Adjustment, DiscountAdjustment, MinimumAdjustment, MaximumAdjustment, Metric, ScenarioDefinition, ScenarioDefinitions, AttributeSchema, ProductType, ResolvedPricingConfig, CompiledPricingRuleSet, CompiledPricingRule, CompiledPricingComponent, CompiledPricingMode, CompiledAdjustment, CompiledMetric, PricingOptions, PricingResult, ScenarioComparisonResult, ScenarioResult, ComponentResult, AdjustmentResult, TierBreakdown, MeterResult, PricingSummary, CalculatorContext, TierCalculationResult } from './engines/pricing';
|
|
56
|
-
export { EnsembleStrategy, compileEnsembleRuleSet, ensembleStrategy, summarizeEnsemble } from './engines/ensemble';
|
|
57
|
-
export type { FusionStrategy, AgreementLevel, ScoreExtractor, ConfidenceExtractor, ScoringMemberDef, CustomMemberDef, EnsembleMemberDef, StackingConfig, EnsembleConfig, EnsembleRuleSet, CompiledEnsembleMember, CompiledEnsembleRuleSet, EnsembleOptions, MemberResult, EnsembleResult, EnsembleSummaryOptions } from './engines/ensemble';
|
|
56
|
+
export { EnsembleStrategy, compileEnsembleRuleSet, ensembleStrategy, summarizeEnsemble, bayesianMember, fuzzyMember, monteCarloMember, expertMember, scoringMember } from './engines/ensemble';
|
|
57
|
+
export type { FusionStrategy, AgreementLevel, ScoreExtractor, ConfidenceExtractor, ScoringMemberDef, CustomMemberDef, EnsembleMemberDef, StackingConfig, EnsembleConfig, EnsembleRuleSet, CompiledEnsembleMember, CompiledEnsembleRuleSet, EnsembleOptions, MemberResult, EnsembleResult, EnsembleSummaryOptions, BayesianMemberConfig, FuzzyMemberConfig, MonteCarloMemberConfig, ExpertMemberConfig, ScoringMemberConfig } from './engines/ensemble';
|
|
58
58
|
export { soundex, nysiis, caverphone2, cosineSimilarity } from './functions';
|
|
59
59
|
export { BOEError, CompilationError, RuntimeError } from './core/errors';
|
|
60
60
|
export type { ErrorContext } from './core/errors';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -30,7 +30,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
30
30
|
};
|
|
31
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
32
|
exports.UtilityStrategy = exports.SEMANTIC_WEIGHTS = exports.constraintStrategy = exports.compileConstraintRuleSet = exports.ConstraintStrategy = exports.stateMachineStrategy = exports.compileStateMachineDefinition = exports.compileStateMachine = exports.StateMachineStrategy = exports.monteCarloStrategy = exports.compileMonteCarloRuleSet = exports.MonteCarloStrategy = exports.SEMANTIC_LIKELIHOODS = exports.parseLikelihood = exports.bayesianStrategy = exports.compileBayesianRule = exports.compileBayesianRuleSet = exports.BayesianStrategy = exports.autoAdjustCoverage = exports.analyzeCoverage = exports.compileFuzzyVariable = exports.fuzzyStrategy = exports.compileFuzzyRuleSet = exports.FuzzyStrategy = exports.sequentialStrategy = exports.compileSequentialRuleSet = exports.SequentialStrategy = exports.createScoreFunction = exports.scoringStrategy = exports.compileScoringRuleSet = exports.ScoringStrategy = exports.backwardStrategy = exports.compileBackwardRuleSet = exports.BackwardChainingStrategy = exports.forwardStrategy = exports.compileForwardRule = exports.compileForwardRuleSet = exports.ForwardChainingStrategy = exports.EnsembleEngine = exports.PricingEngine = exports.UtilityEngine = exports.ConstraintEngine = exports.StateMachineEngine = exports.MonteCarloEngine = exports.BayesianEngine = exports.FuzzyEngine = exports.SequentialEngine = exports.ScoringEngine = exports.BackwardEngine = exports.ForwardEngine = void 0;
|
|
33
|
-
exports.resolveDecayTimestamp = exports.calculateDecayMultiplier = exports.RuntimeError = exports.CompilationError = exports.BOEError = exports.cosineSimilarity = exports.caverphone2 = exports.nysiis = exports.soundex = exports.summarizeEnsemble = exports.ensembleStrategy = exports.compileEnsembleRuleSet = exports.EnsembleStrategy = exports.getCurrencyInfo = exports.CURRENCIES = exports.applyMinMax = exports.calculateDiscount = exports.round = exports.formatPercent = exports.formatNumber = exports.formatCurrency = exports.calculateVolume = exports.calculateGraduated = exports.calculateFlat = exports.pricingEngine = exports.pricingStrategy = exports.compilePricingRule = exports.compilePricingRuleSet = exports.PricingStrategy = exports.buildAvailableRefs = exports.hasInterpolation = exports.interpolate = exports.compileTemplate = exports.expertStrategy = exports.compileExpertRuleSet = exports.ExpertStrategy = exports.ExpertEngine = exports.compileDefeasibleRuleSet = exports.DefeasibleEngine = exports.utilityStrategy = exports.compileUtilityRule = exports.compileUtilityRuleSet = void 0;
|
|
33
|
+
exports.resolveDecayTimestamp = exports.calculateDecayMultiplier = exports.RuntimeError = exports.CompilationError = exports.BOEError = exports.cosineSimilarity = exports.caverphone2 = exports.nysiis = exports.soundex = exports.scoringMember = exports.expertMember = exports.monteCarloMember = exports.fuzzyMember = exports.bayesianMember = exports.summarizeEnsemble = exports.ensembleStrategy = exports.compileEnsembleRuleSet = exports.EnsembleStrategy = exports.getCurrencyInfo = exports.CURRENCIES = exports.applyMinMax = exports.calculateDiscount = exports.round = exports.formatPercent = exports.formatNumber = exports.formatCurrency = exports.calculateVolume = exports.calculateGraduated = exports.calculateFlat = exports.pricingEngine = exports.pricingStrategy = exports.compilePricingRule = exports.compilePricingRuleSet = exports.PricingStrategy = exports.buildAvailableRefs = exports.hasInterpolation = exports.interpolate = exports.compileTemplate = exports.expertStrategy = exports.compileExpertRuleSet = exports.ExpertStrategy = exports.ExpertEngine = exports.compileDefeasibleRuleSet = exports.DefeasibleEngine = exports.utilityStrategy = exports.compileUtilityRule = exports.compileUtilityRuleSet = void 0;
|
|
34
34
|
// ========================================
|
|
35
35
|
// Engines
|
|
36
36
|
// ========================================
|
|
@@ -170,6 +170,11 @@ Object.defineProperty(exports, "EnsembleStrategy", { enumerable: true, get: func
|
|
|
170
170
|
Object.defineProperty(exports, "compileEnsembleRuleSet", { enumerable: true, get: function () { return ensemble_2.compileEnsembleRuleSet; } });
|
|
171
171
|
Object.defineProperty(exports, "ensembleStrategy", { enumerable: true, get: function () { return ensemble_2.ensembleStrategy; } });
|
|
172
172
|
Object.defineProperty(exports, "summarizeEnsemble", { enumerable: true, get: function () { return ensemble_2.summarizeEnsemble; } });
|
|
173
|
+
Object.defineProperty(exports, "bayesianMember", { enumerable: true, get: function () { return ensemble_2.bayesianMember; } });
|
|
174
|
+
Object.defineProperty(exports, "fuzzyMember", { enumerable: true, get: function () { return ensemble_2.fuzzyMember; } });
|
|
175
|
+
Object.defineProperty(exports, "monteCarloMember", { enumerable: true, get: function () { return ensemble_2.monteCarloMember; } });
|
|
176
|
+
Object.defineProperty(exports, "expertMember", { enumerable: true, get: function () { return ensemble_2.expertMember; } });
|
|
177
|
+
Object.defineProperty(exports, "scoringMember", { enumerable: true, get: function () { return ensemble_2.scoringMember; } });
|
|
173
178
|
// ========================================
|
|
174
179
|
// Utility Functions (from old modules, re-exported for convenience)
|
|
175
180
|
// ========================================
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;AAEH,2CAA2C;AAC3C,UAAU;AACV,2CAA2C;AAE3C,iEAAiE;AACjE,6CAAkD;AAAzC,wGAAA,aAAa,OAAA;AACtB,+CAAoD;AAA3C,0GAAA,cAAc,OAAA;AACvB,6CAAkD;AAAzC,wGAAA,aAAa,OAAA;AACtB,mDAAwD;AAA/C,8GAAA,gBAAgB,OAAA;AACzB,yCAA8C;AAArC,oGAAA,WAAW,OAAA;AACpB,+CAAoD;AAA3C,0GAAA,cAAc,OAAA;AACvB,qDAAyD;AAAhD,+GAAA,gBAAgB,OAAA;AACzB,yDAA6D;AAApD,mHAAA,kBAAkB,OAAA;AAC3B,mDAAwD;AAA/C,8GAAA,gBAAgB,OAAA;AACzB,6CAAkD;AAAzC,wGAAA,aAAa,OAAA;AACtB,6CAAkD;AAAzC,wGAAA,aAAa,OAAA;AACtB,+CAAoD;AAA3C,0GAAA,cAAc,OAAA;AAEvB,2CAA2C;AAC3C,yBAAyB;AACzB,2CAA2C;AAE3C,yCAAuB;AAEvB,2CAA2C;AAC3C,UAAU;AACV,2CAA2C;AAE3C,mBAAmB;AACnB,6CAK2B;AAJzB,kHAAA,uBAAuB,OAAA;AACvB,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AAcjB,oBAAoB;AACpB,+CAI4B;AAH1B,oHAAA,wBAAwB,OAAA;AACxB,kHAAA,sBAAsB,OAAA;AACtB,4GAAA,gBAAgB,OAAA;AAalB,UAAU;AACV,6CAK2B;AAJzB,0GAAA,eAAe,OAAA;AACf,gHAAA,qBAAqB,OAAA;AACrB,0GAAA,eAAe,OAAA;AACf,8GAAA,mBAAmB,OAAA;AAmCrB,aAAa;AACb,mDAI8B;AAH5B,gHAAA,kBAAkB,OAAA;AAClB,sHAAA,wBAAwB,OAAA;AACxB,gHAAA,kBAAkB,OAAA;AAWpB,QAAQ;AACR,yCAOyB;AANvB,sGAAA,aAAa,OAAA;AACb,4GAAA,mBAAmB,OAAA;AACnB,sGAAA,aAAa,OAAA;AACb,6GAAA,oBAAoB,OAAA;AACpB,wGAAA,eAAe,OAAA;AACf,2GAAA,kBAAkB,OAAA;AAepB,WAAW;AACX,+CAO4B;AAN1B,4GAAA,gBAAgB,OAAA;AAChB,kHAAA,sBAAsB,OAAA;AACtB,+GAAA,mBAAmB,OAAA;AACnB,4GAAA,gBAAgB,OAAA;AAChB,2GAAA,eAAe,OAAA;AACf,gHAAA,oBAAoB,OAAA;AAmBtB,cAAc;AACd,qDAI+B;AAH7B,iHAAA,kBAAkB,OAAA;AAClB,uHAAA,wBAAwB,OAAA;AACxB,iHAAA,kBAAkB,OAAA;AAapB,gBAAgB;AAChB,yDAKiC;AAJ/B,qHAAA,oBAAoB,OAAA;AACpB,oHAAA,mBAAmB,OAAA;AACnB,8HAAA,6BAA6B,OAAA;AAC7B,qHAAA,oBAAoB,OAAA;AAatB,0BAA0B;AAC1B,mDAI8B;AAH5B,gHAAA,kBAAkB,OAAA;AAClB,sHAAA,wBAAwB,OAAA;AACxB,gHAAA,kBAAkB,OAAA;AAiBpB,mDAAwD;AAA/C,8GAAA,gBAAgB,OAAA;AAEzB,eAAe;AACf,6CAK2B;AAJzB,0GAAA,eAAe,OAAA;AACf,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AAkBjB,aAAa;AACb,mDAG8B;AAF5B,8GAAA,gBAAgB,OAAA;AAChB,sHAAA,wBAAwB,OAAA;AAW1B,gBAAgB;AAChB,2CAS0B;AARxB,sGAAA,YAAY,OAAA;AACZ,wGAAA,cAAc,OAAA;AACd,8GAAA,oBAAoB,OAAA;AACpB,wGAAA,cAAc,OAAA;AACd,yGAAA,eAAe,OAAA;AACf,qGAAA,WAAW,OAAA;AACX,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAoBpB,2CAA2C;AAC3C,oEAAoE;AACpE,2CAA2C;AAE3C,iBAAiB;AACjB,6CAkB2B;AAjBzB,0GAAA,eAAe,OAAA;AACf,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,wGAAA,aAAa,OAAA;AACb,wGAAA,aAAa,OAAA;AACb,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,yGAAA,cAAc,OAAA;AACd,uGAAA,YAAY,OAAA;AACZ,wGAAA,aAAa,OAAA;AACb,gGAAA,KAAK,OAAA;AACL,4GAAA,iBAAiB,OAAA;AACjB,sGAAA,WAAW,OAAA;AACX,qBAAqB;AACrB,qGAAA,UAAU,OAAA;AACV,0GAAA,eAAe,OAAA;AAqDjB,WAAW;AACX,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@higher.archi/boe",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.21",
|
|
4
4
|
"description": "A multi-strategy rule engine supporting forward chaining, backward chaining, scoring, sequential, fuzzy logic, and Bayesian inference",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -33,3 +33,12 @@ export { EnsembleEngine } from './engine';
|
|
|
33
33
|
|
|
34
34
|
// Summary
|
|
35
35
|
export { summarizeEnsemble } from './summary';
|
|
36
|
+
|
|
37
|
+
// Member adapter factories
|
|
38
|
+
export {
|
|
39
|
+
bayesianMember, fuzzyMember, monteCarloMember, expertMember, scoringMember
|
|
40
|
+
} from './members';
|
|
41
|
+
export type {
|
|
42
|
+
BayesianMemberConfig, FuzzyMemberConfig, MonteCarloMemberConfig,
|
|
43
|
+
ExpertMemberConfig, ScoringMemberConfig
|
|
44
|
+
} from './members';
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensemble Member Adapter Factories
|
|
3
|
+
*
|
|
4
|
+
* Factory functions that wrap non-scoring engines (Bayesian, Fuzzy, etc.)
|
|
5
|
+
* into CustomMemberDef or ScoringMemberDef for use in ensemble rulesets.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import type { FactInput } from '../../core';
|
|
9
|
+
import type { ScoreExtractor, ConfidenceExtractor, CustomMemberDef, ScoringMemberDef } from './types';
|
|
10
|
+
import type { CompiledBayesianRuleSet, BayesianOptions, BayesianResult } from '../bayesian';
|
|
11
|
+
import type { CompiledFuzzyRuleSet, FuzzyOptions, FuzzyResult } from '../fuzzy';
|
|
12
|
+
import type { CompiledMonteCarloRuleSet, MonteCarloOptions, MonteCarloResult } from '../monte-carlo';
|
|
13
|
+
import type { CompiledExpertRuleSet, ExpertOptions, ExpertResult } from '../expert';
|
|
14
|
+
import type { CompiledScoringRuleSet, ScoringOptions } from '../scoring/types';
|
|
15
|
+
import { BayesianEngine } from '../bayesian';
|
|
16
|
+
import { FuzzyEngine } from '../fuzzy';
|
|
17
|
+
import { MonteCarloEngine } from '../monte-carlo';
|
|
18
|
+
import { ExpertEngine } from '../expert';
|
|
19
|
+
|
|
20
|
+
// ========================================
|
|
21
|
+
// Config Types
|
|
22
|
+
// ========================================
|
|
23
|
+
|
|
24
|
+
export type BayesianMemberConfig = {
|
|
25
|
+
id: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
weight: number;
|
|
28
|
+
ruleset: CompiledBayesianRuleSet;
|
|
29
|
+
extractScore: ScoreExtractor<BayesianResult>;
|
|
30
|
+
extractConfidence?: ConfidenceExtractor<BayesianResult>;
|
|
31
|
+
options?: BayesianOptions;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export type FuzzyMemberConfig = {
|
|
35
|
+
id: string;
|
|
36
|
+
name?: string;
|
|
37
|
+
weight: number;
|
|
38
|
+
ruleset: CompiledFuzzyRuleSet;
|
|
39
|
+
extractScore: ScoreExtractor<FuzzyResult>;
|
|
40
|
+
extractConfidence?: ConfidenceExtractor<FuzzyResult>;
|
|
41
|
+
options?: FuzzyOptions;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export type MonteCarloMemberConfig = {
|
|
45
|
+
id: string;
|
|
46
|
+
name?: string;
|
|
47
|
+
weight: number;
|
|
48
|
+
ruleset: CompiledMonteCarloRuleSet;
|
|
49
|
+
extractScore: ScoreExtractor<MonteCarloResult>;
|
|
50
|
+
extractConfidence?: ConfidenceExtractor<MonteCarloResult>;
|
|
51
|
+
options?: MonteCarloOptions;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export type ExpertMemberConfig = {
|
|
55
|
+
id: string;
|
|
56
|
+
name?: string;
|
|
57
|
+
weight: number;
|
|
58
|
+
ruleset: CompiledExpertRuleSet;
|
|
59
|
+
extractScore: ScoreExtractor<ExpertResult>;
|
|
60
|
+
extractConfidence?: ConfidenceExtractor<ExpertResult>;
|
|
61
|
+
options?: ExpertOptions;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
export type ScoringMemberConfig = {
|
|
65
|
+
id: string;
|
|
66
|
+
name?: string;
|
|
67
|
+
weight: number;
|
|
68
|
+
ruleset: CompiledScoringRuleSet;
|
|
69
|
+
options?: ScoringOptions;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
// ========================================
|
|
73
|
+
// Factory Functions
|
|
74
|
+
// ========================================
|
|
75
|
+
|
|
76
|
+
/** Wrap a Bayesian engine as an ensemble member. Default confidence uses result.confidence. */
|
|
77
|
+
export function bayesianMember(config: BayesianMemberConfig): CustomMemberDef {
|
|
78
|
+
const {
|
|
79
|
+
id, name, weight, ruleset, extractScore,
|
|
80
|
+
extractConfidence = (r: BayesianResult) => r.confidence,
|
|
81
|
+
options
|
|
82
|
+
} = config;
|
|
83
|
+
return {
|
|
84
|
+
id, name, weight,
|
|
85
|
+
execute: (facts: FactInput[]) => {
|
|
86
|
+
const engine = new BayesianEngine();
|
|
87
|
+
for (const f of facts) engine.add(f);
|
|
88
|
+
return engine.execute(ruleset, options);
|
|
89
|
+
},
|
|
90
|
+
extractScore,
|
|
91
|
+
extractConfidence
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/** Wrap a Fuzzy engine as an ensemble member. Default confidence is 1.0 (outputs are crisp). */
|
|
96
|
+
export function fuzzyMember(config: FuzzyMemberConfig): CustomMemberDef {
|
|
97
|
+
const {
|
|
98
|
+
id, name, weight, ruleset, extractScore,
|
|
99
|
+
extractConfidence = () => 1.0,
|
|
100
|
+
options
|
|
101
|
+
} = config;
|
|
102
|
+
return {
|
|
103
|
+
id, name, weight,
|
|
104
|
+
execute: (facts: FactInput[]) => {
|
|
105
|
+
const engine = new FuzzyEngine();
|
|
106
|
+
for (const f of facts) engine.add(f);
|
|
107
|
+
return engine.execute(ruleset, options);
|
|
108
|
+
},
|
|
109
|
+
extractScore,
|
|
110
|
+
extractConfidence
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/** Wrap a Monte Carlo engine as an ensemble member. Default confidence is 1.0 (domain-specific). */
|
|
115
|
+
export function monteCarloMember(config: MonteCarloMemberConfig): CustomMemberDef {
|
|
116
|
+
const {
|
|
117
|
+
id, name, weight, ruleset, extractScore,
|
|
118
|
+
extractConfidence = () => 1.0,
|
|
119
|
+
options
|
|
120
|
+
} = config;
|
|
121
|
+
return {
|
|
122
|
+
id, name, weight,
|
|
123
|
+
execute: (facts: FactInput[]) => {
|
|
124
|
+
const engine = new MonteCarloEngine();
|
|
125
|
+
for (const f of facts) engine.add(f);
|
|
126
|
+
return engine.execute(ruleset, options);
|
|
127
|
+
},
|
|
128
|
+
extractScore,
|
|
129
|
+
extractConfidence
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/** Wrap an Expert engine as an ensemble member. Default confidence is 1.0 (per-conclusion only). */
|
|
134
|
+
export function expertMember(config: ExpertMemberConfig): CustomMemberDef {
|
|
135
|
+
const {
|
|
136
|
+
id, name, weight, ruleset, extractScore,
|
|
137
|
+
extractConfidence = () => 1.0,
|
|
138
|
+
options
|
|
139
|
+
} = config;
|
|
140
|
+
return {
|
|
141
|
+
id, name, weight,
|
|
142
|
+
execute: (facts: FactInput[]) => {
|
|
143
|
+
const engine = new ExpertEngine();
|
|
144
|
+
for (const f of facts) engine.add(f);
|
|
145
|
+
return engine.execute(ruleset, options);
|
|
146
|
+
},
|
|
147
|
+
extractScore,
|
|
148
|
+
extractConfidence
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/** Shorthand for creating a ScoringMemberDef. Consistency helper, no wrapping needed. */
|
|
153
|
+
export function scoringMember(config: ScoringMemberConfig): ScoringMemberDef {
|
|
154
|
+
const { id, name, weight, ruleset, options } = config;
|
|
155
|
+
return { id, name, weight, ruleset, options };
|
|
156
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -385,7 +385,8 @@ export {
|
|
|
385
385
|
EnsembleStrategy,
|
|
386
386
|
compileEnsembleRuleSet,
|
|
387
387
|
ensembleStrategy,
|
|
388
|
-
summarizeEnsemble
|
|
388
|
+
summarizeEnsemble,
|
|
389
|
+
bayesianMember, fuzzyMember, monteCarloMember, expertMember, scoringMember
|
|
389
390
|
} from './engines/ensemble';
|
|
390
391
|
export type {
|
|
391
392
|
FusionStrategy,
|
|
@@ -403,7 +404,9 @@ export type {
|
|
|
403
404
|
EnsembleOptions,
|
|
404
405
|
MemberResult,
|
|
405
406
|
EnsembleResult,
|
|
406
|
-
EnsembleSummaryOptions
|
|
407
|
+
EnsembleSummaryOptions,
|
|
408
|
+
BayesianMemberConfig, FuzzyMemberConfig, MonteCarloMemberConfig,
|
|
409
|
+
ExpertMemberConfig, ScoringMemberConfig
|
|
407
410
|
} from './engines/ensemble';
|
|
408
411
|
|
|
409
412
|
// ========================================
|