---
name: "PGAChange"
section: "8"
platform: "linux"
package: "pgapack"
version: "1.1.1-3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/PGAChange"
---

# PGAChange(8)

Repeatedly apply mutation to a string (with an increasing mutation rate) until one or more mutations have occurred.

## NAME

PGAChange - Repeatedly apply mutation to a string (with an increasing mutation rate) until one or more mutations have occurred.

## DESCRIPTION

This routine is usually used with PGADuplicate to modify a duplicate string.  It is not intended to replace PGAMutation

## INPUT PARAMETERS

- ctx

  \- context variable

- p

  \- string index

- pop

  \- symbolic constant of the population containing string p

## OUTPUT PARAMETERS

- none

  ## SYNOPSIS

```
#include "pgapack.h"
void  PGAChange(ctx, p, pop)
PGAContext *ctx
int p
int pop
```

## LOCATION

duplcate.c

## EXAMPLE

```
Example:
Change any string in PGA_NEWPOP that is an exact copy of a string
in PGA_OLDPOP.  To be complete, we should check the population again
if any changes are made; for simplicity, we don't.
PGAContext *ctx;
int b, n;
:
n  = PGAGetPopsize(ctx);
for (b=0; b<n; b++)
if (PGADuplicate(ctx, b, PGA_NEWPOP, PGA_OLDPOP, n))
PGAChange(ctx, b, PGA_NEWPOP);
```
