Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.
Mutation operators introduce variation into merge genomes during the EMEP evolutionary loop. Each operator targets a specific genome field and applies a bounded perturbation. This page specifies the available operators, their mechanics, rate scheduling, and validation constraints.
Perturbs global alpha coefficients by adding Gaussian noise. The noise scale is proportional to the current alpha value to preserve relative weighting.
Sigma is configurable, default 0.1. After perturbation, coefficients are re-normalized to sum to 1.0. If any coefficient falls below a minimum threshold (default 0.01), it is set to zero and the remainder re-normalized.
Applies alpha jitter independently to each layer range defined in per_layer_alpha. This allows the genome to evolve heterogeneous blending across the model depth. The same Gaussian noise model applies per layer range.If per_layer_alpha is absent, the operator has a configurable probability of creating it by copying global alpha into layer-specific ranges.
Replaces the merge method with another supported strategy. The switch is random but weighted by historical success rates. Methods with higher average fitness in the current experiment receive higher switch probability.Supported transitions:
From
To
Notes
TIES
DARE
Both use density, transition preserves density value
The base mutation rate is 0.1 per gene. EMEP supports two schedules:Static: fixed rate for all generations Adaptive: rate increases when diversity falls, decreases when diversity is high
Every mutated genome passes through the same validation rules as manually created genomes. See Genome for the full validation specification.
High mutation rates combined with small population sizes can destabilize the search. If more than 30% of mutations produce invalid genomes, the engine logs a warning and suggests reducing mutation rate or expanding the search space.
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"EMEP","colors":{"primary":"#7C3AED","light":"#A78BFA","dark":"#5B21B6"},"appearance":{"strict":false},"background":{"decoration":"gradient","color":{"light":"#fafdfd","dark":"#0f1214"}},"seo":{"indexing":"all"},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"interaction":{"drilldown":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ping-47788c6e","hasAudioNarration":false,"actualSubdomain":"ping-47788c6e","customDomains":["doc.blueapi.ir"],"gitSource":{"type":"github","owner":"sarmadaf24","repo":"evolutionarymodellplatform","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6a9d914c7dbaaddea3035369","collectionId":"c7cc67f8-369f-45fc-a29a-15a691f103b0","liveDeploymentHistoryId":"6a9d914c7dbaaddea3035369","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6a9d914c7dbaaddea3035369","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"Interfaces \u0026 Governance","count":32},{"language":"default","tag":"Deployment \u0026 Ops","count":24},{"language":"default","tag":"Evolution \u0026 Evaluation","count":24},{"language":"default","tag":"Model Pipeline","count":20},{"language":"default","tag":"Platform","count":14},{"language":"default","tag":"Architecture","count":11},{"language":"default","tag":"Phases","count":10},{"language":"default","tag":"Testing","count":9},{"language":"default","tag":"Tracking \u0026 Reproducibility","count":9},{"language":"default","tag":"Evolution Engine","count":8}],"searchSettings":{"maxResults":7}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"evolution/mutation","slug":"/evolution/mutation","pageMetadata":{"title":"Mutation Operators for Merge Genome Evolution","description":"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.","sidebarTitle":"Mutation","href":"/evolution/mutation"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Mermaid,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Mutation operators introduce variation into merge genomes during the EMEP evolutionary loop. Each operator targets a specific genome field and applies a bounded perturbation. This page specifies the available operators, their mechanics, rate scheduling, and validation constraints.`}),`\n`,_jsx(Heading,{level:`2`,id:`mutation-flowchart`,children:`Mutation Flowchart`}),`\n`,_jsx(Mermaid,{chart:`flowchart TD\n START([START]) --> INPUT[Input Genome]\n INPUT --> RATE{Mutation Rate Check}\n RATE -->|Skip| OUTPUT1[Return Unchanged]\n RATE -->|Apply| SELECT[Select Operator]\n SELECT --> OP1[Alpha Jitter]\n SELECT --> OP2[Per-Layer Perturbation]\n SELECT --> OP3[Strategy Switch]\n SELECT --> OP4[Density Adjustment]\n OP1 --> VALIDATE[Validate Genome]\n OP2 --> VALIDATE\n OP3 --> VALIDATE\n OP4 --> VALIDATE\n VALIDATE -->|Valid| OUTPUT2[Return Mutated Genome]\n VALIDATE -->|Invalid| RETRY{Retry Limit?}\n RETRY -->|Below| SELECT\n RETRY -->|Exceeded| OUTPUT1\n OUTPUT1 --> END([END])\n OUTPUT2 --> END`}),`\n`,_jsx(Heading,{level:`2`,id:`alpha-jitter`,children:`Alpha Jitter`}),`\n`,_jsx(_components.p,{children:`Perturbs global alpha coefficients by adding Gaussian noise. The noise scale is proportional to the current alpha value to preserve relative weighting.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`alpha_i' = alpha_i + N(0, sigma * alpha_i)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`alpha_i' = clip(alpha_i', 0, 1)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`alpha' = normalize(alpha')`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`Sigma is configurable, default 0.1. After perturbation, coefficients are re-normalized to sum to 1.0. If any coefficient falls below a minimum threshold (default 0.01), it is set to zero and the remainder re-normalized.`}),`\n`,_jsx(Heading,{level:`2`,id:`per-layer-perturbation`,children:`Per-Layer Perturbation`}),`\n`,_jsxs(_components.p,{children:[`Applies alpha jitter independently to each layer range defined in `,_jsx(_components.code,{children:`per_layer_alpha`}),`. This allows the genome to evolve heterogeneous blending across the model depth. The same Gaussian noise model applies per layer range.`]}),`\n`,_jsxs(_components.p,{children:[`If `,_jsx(_components.code,{children:`per_layer_alpha`}),` is absent, the operator has a configurable probability of creating it by copying global alpha into layer-specific ranges.`]}),`\n`,_jsx(Heading,{level:`2`,id:`strategy-switch`,children:`Strategy Switch`}),`\n`,_jsx(_components.p,{children:`Replaces the merge method with another supported strategy. The switch is random but weighted by historical success rates. Methods with higher average fitness in the current experiment receive higher switch probability.`}),`\n`,_jsx(_components.p,{children:`Supported transitions:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`From`}),_jsx(_components.th,{children:`To`}),_jsx(_components.th,{children:`Notes`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TIES`}),_jsx(_components.td,{children:`DARE`}),_jsx(_components.td,{children:`Both use density, transition preserves density value`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DARE`}),_jsx(_components.td,{children:`TIES`}),_jsx(_components.td,{children:`Density value remains valid`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SLERP`}),_jsx(_components.td,{children:`Task Arithmetic`}),_jsx(_components.td,{children:`Alpha becomes task vector scaling`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Task Arithmetic`}),_jsx(_components.td,{children:`SLERP`}),_jsx(_components.td,{children:`Task vectors discarded, alpha restored`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Any`}),_jsx(_components.td,{children:`Franken-Merge`}),_jsx(_components.td,{children:`Requires layer routing initialization`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`density-adjustment`,children:`Density Adjustment`}),`\n`,_jsx(_components.p,{children:`Modifies the density parameter for TIES (Yadav et al. 2023) and DARE (Yu et al. 2023) merges. Adjustment is multiplicative:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`density' = density * (1 + N(0, sigma_density))`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`density' = clip(density', min_density, 1.0)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`Default sigma_density is 0.15. Minimum density is 0.2. Values below 0.2 are rejected as too sparse for stable merges.`}),`\n`,_jsx(Heading,{level:`2`,id:`rate-and-schedule`,children:`Rate and Schedule`}),`\n`,_jsx(_components.p,{children:`The base mutation rate is 0.1 per gene. EMEP supports two schedules:`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Static`}),`: fixed rate for all generations `,_jsx(_components.strong,{children:`Adaptive`}),`: rate increases when diversity falls, decreases when diversity is high`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`rate_adaptive = base_rate * (1 + (diversity_target - diversity_current) / diversity_target)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`rate_adaptive = clip(rate_adaptive, 0.05, 0.5)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`2`,id:`retry-logic`,children:`Retry Logic`}),`\n`,_jsx(_components.p,{children:`Invalid mutations are retried up to 3 times with the same operator. If all retries fail, the genome is returned unchanged. Invalid states include:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Alpha coefficients that do not sum to 1.0 after normalization`}),`\n`,_jsx(_components.li,{children:`Density outside valid range`}),`\n`,_jsx(_components.li,{children:`Strategy switch to incompatible parent configuration`}),`\n`,_jsx(_components.li,{children:`Layer routing with gaps or overlaps`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`validation`,children:`Validation`}),`\n`,_jsxs(_components.p,{children:[`Every mutated genome passes through the same validation rules as manually created genomes. See `,_jsx(_components.a,{href:`/evolution/genome`,children:`Genome`}),` for the full validation specification.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`High mutation rates combined with small population sizes can destabilize the search. If more than 30% of mutations produce invalid genomes, the engine logs a warning and suggests reducing mutation rate or expanding the search space.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Mutation Operators for Merge Genome Evolution","description":"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.","sidebarTitle":"Mutation","href":"/evolution/mutation"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Mutation Flowchart","slug":"mutation-flowchart","depth":2,"children":[]},{"title":"Alpha Jitter","slug":"alpha-jitter","depth":2,"children":[]},{"title":"Per-Layer Perturbation","slug":"per-layer-perturbation","depth":2,"children":[]},{"title":"Strategy Switch","slug":"strategy-switch","depth":2,"children":[]},{"title":"Density Adjustment","slug":"density-adjustment","depth":2,"children":[]},{"title":"Rate and Schedule","slug":"rate-and-schedule","depth":2,"children":[]},{"title":"Retry Logic","slug":"retry-logic","depth":2,"children":[]},{"title":"Validation","slug":"validation","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"ping-47788c6e","siteName":"EMEP","title":"Mutation Operators for Merge Genome Evolution - EMEP","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-06T12:16:45.361Z","originalFileLocation":"evolution/mutation.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\">\u003cmeta data-mint-head name=\"application-name\" content=\"EMEP\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Mutation Operators for Merge Genome Evolution - EMEP\">\u003cmeta data-mint-head property=\"og:description\" content=\"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"EMEP\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://doc.blueapi.ir/evolution/mutation\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ping-47788c6e.mintlify.app/_mintlify/api/og/v2?division=Evolution+Engine\u0026amp;title=Mutation+Operators+for+Merge+Genome+Evolution\u0026amp;description=Specification+for+mutation+operators+in+EMEP%2C+including+alpha+jitter%2C+per-layer+perturbation%2C+strategy+switch%2C+and+density+adjustment+with+rate+scheduling.\u0026amp;theme=074c708ff2f145909468e7e3\u0026amp;signature=3d39b3e556451d615e5c622f12bfa75574f357d95b093cebec6f7c84af417fac\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Mutation Operators for Merge Genome Evolution - EMEP\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ping-47788c6e.mintlify.app/_mintlify/api/og/v2?division=Evolution+Engine\u0026amp;title=Mutation+Operators+for+Merge+Genome+Evolution\u0026amp;description=Specification+for+mutation+operators+in+EMEP%2C+including+alpha+jitter%2C+per-layer+perturbation%2C+strategy+switch%2C+and+density+adjustment+with+rate+scheduling.\u0026amp;theme=074c708ff2f145909468e7e3\u0026amp;signature=3d39b3e556451d615e5c622f12bfa75574f357d95b093cebec6f7c84af417fac\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"EMEP\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7C3AED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://doc.blueapi.ir/evolution/mutation\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/evolution/mutation.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://doc.blueapi.ir/#organization\",\"name\":\"EMEP\",\"url\":\"https://doc.blueapi.ir\"},{\"@type\":\"WebSite\",\"@id\":\"https://doc.blueapi.ir#website\",\"name\":\"EMEP\",\"url\":\"https://doc.blueapi.ir\",\"publisher\":{\"@id\":\"https://doc.blueapi.ir/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://doc.blueapi.ir/evolution/mutation#webpage\",\"url\":\"https://doc.blueapi.ir/evolution/mutation\",\"name\":\"Mutation Operators for Merge Genome Evolution\",\"description\":\"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\",\"dateModified\":\"2026-09-06T12:16:45.361Z\",\"isPartOf\":{\"@id\":\"https://doc.blueapi.ir#website\"},\"breadcrumb\":{\"@id\":\"https://doc.blueapi.ir/evolution/mutation#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://doc.blueapi.ir/evolution/mutation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Evolution Engine\",\"item\":\"https://doc.blueapi.ir/evolution/evolution-engine\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mutation Operators for Merge Genome Evolution\",\"item\":\"https://doc.blueapi.ir/evolution/mutation\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://doc.blueapi.ir/evolution/mutation#article\",\"headline\":\"Mutation Operators for Merge Genome Evolution\",\"name\":\"Mutation Operators for Merge Genome Evolution\",\"description\":\"Specification for mutation operators in EMEP, including alpha jitter, per-layer perturbation, strategy switch, and density adjustment with rate scheduling.\",\"url\":\"https://doc.blueapi.ir/evolution/mutation\",\"mainEntityOfPage\":{\"@id\":\"https://doc.blueapi.ir/evolution/mutation#webpage\"},\"dateModified\":\"2026-09-06T12:16:45.361Z\",\"publisher\":{\"@id\":\"https://doc.blueapi.ir/#organization\"},\"isPartOf\":{\"@id\":\"https://doc.blueapi.ir#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"EMEP\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"EMEP","nav":{"global":null,"tabs":[{"tab":"Platform","pages":[{"title":"Platform","href":""}]},{"tab":"Architecture","pages":[{"title":"Architecture","href":"/architecture/system-architecture"}]},{"tab":"Model Pipeline","pages":[{"title":"Model Pipeline","href":"/compatibility/model-compatibility"}]},{"tab":"Evolution \u0026 Evaluation","groups":[{"group":"Evolution Engine","pages":[{"title":"EvolutionEngine Specification for EMEP","sidebarTitle":"EvolutionEngine","href":"/evolution/evolution-engine"},{"title":"Genome Encoding for Model Merge Candidates","sidebarTitle":"Genome","href":"/evolution/genome"},{"title":"Population Management in EMEP Evolution","description":"Specification for population initialization, diversity preservation, and archival elite pool management in the EMEP EvolutionEngine.","sidebarTitle":"Population","href":"/evolution/population"},{"title":"Mutation Operators for Merge Genome Evolution","sidebarTitle":"Mutation","href":"/evolution/mutation"},{"title":"Crossover Operators for Merge Genome Combination","description":"Specification for crossover operators in EMEP, including uniform, one-point on layer index, and arithmetic blend with constraint enforcement.","sidebarTitle":"Crossover","href":"/evolution/crossover"},{"title":"Selection Strategies for Evolutionary Search","sidebarTitle":"Selection","href":"/evolution/selection"},{"title":"Fitness Engine and Candidate Scoring","sidebarTitle":"Fitness","href":"/evolution/fitness"},{"title":"Multi-Objective Optimization with NSGA-II","sidebarTitle":"Multi-Objective","href":"/evolution/multi-objective-optimization"}]},{"group":"Evaluation","pages":[{"title":"EvaluationEngine and BenchmarkEngine Framework","sidebarTitle":"Evaluation Framework","href":"/evaluation/framework"},{"title":"Benchmark Record Schema and Configuration","sidebarTitle":"Benchmark Spec","href":"/evaluation/benchmark-specification"},{"title":"Benchmark Catalog by Category and Purpose","sidebarTitle":"Benchmark Catalog","href":"/evaluation/benchmark-catalog"},{"title":"Persian Language Evaluation Concerns and Benchmarks","sidebarTitle":"Persian Evaluation","href":"/evaluation/persian-evaluation"},{"title":"Safety Evaluation and Harmful Content Detection","sidebarTitle":"Safety Evaluation","href":"/evaluation/safety-evaluation"},{"title":"Regression Detection and Statistical Protocol","sidebarTitle":"Regression Evaluation","href":"/evaluation/regression-evaluation"},{"title":"Benchmark Integrity and Data Contamination Prevention","sidebarTitle":"Benchmark Integrity","href":"/evaluation/benchmark-integrity"}]},{"group":"Tracking \u0026 Reproducibility","pages":[{"title":"ExperimentTracker Event Stream and Responsibilities","sidebarTitle":"Experiment Tracking","href":"/tracking/experiment-tracking"},{"title":"Complete Experiment Record Schema","sidebarTitle":"Experiment Schema","href":"/tracking/experiment-schema"},{"title":"ModelRegistry API and State Management","sidebarTitle":"Model Registry","href":"/tracking/model-registry"},{"title":"DatasetRegistry for Versioned Data Management","sidebarTitle":"Dataset Registry","href":"/tracking/dataset-registry"},{"title":"ArtifactStore for Content-Addressed Model Storage","sidebarTitle":"Artifact Registry","href":"/tracking/artifact-registry"},{"title":"Model Lineage Graph and Ancestry Tracking","sidebarTitle":"Model Lineage","href":"/tracking/model-lineage"},{"title":"Reproducibility Requirements for EMEP Experiments","sidebarTitle":"Reproducibility","href":"/tracking/reproducibility"},{"title":"Step-by-Step Experiment Reproduction Protocol","sidebarTitle":"Reproducibility Protocol","href":"/tracking/reproducibility-protocol"},{"title":"Model Provenance Record and Verification Chain","sidebarTitle":"Model Provenance","href":"/tracking/model-provenance"}]}]},{"tab":"Deployment \u0026 Ops","pages":[{"title":"Deployment \u0026 Ops","href":"/deployment/quantization"}]},{"tab":"Interfaces \u0026 Governance","pages":[{"title":"Interfaces \u0026 Governance","href":"/interfaces/api-specification"}]}]},"basePath":"","title":"Mutation Operators for Merge Genome Evolution - EMEP","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":[],"chunks":[]}