Optimization : Optimization Namespace

Extension Class

Abstract optimization extension class.

public abstract class Extension

Remarks

The Extension class can be used to implement optimizer extensions for existing optimization algorithms. Extensions hook into specific parts of the optimization process and can modify existing optimization algorithms in certain ways. This can be used to make small modifications to algorithms without writing an entirely new optimizer.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Members

See Also: Inherited members from object.

Public Constructors

Create a new Extension object.
Create a new extension object for a job.

Public Properties

[read-only]
AppliesTo Type[]. List of optimizer types to apply to.
[read-only]
Configuration Settings . Extension configuration.
[read-only]
Description string . Description of the extension.
[read-only]
static
Extensions Type[]. List of available extensions.
[read-only]
Job Job . The job.
[read-only]
Name string . The extension name.

Public Methods

AfterUpdate ()
Update after.
BeforeUpdate ()
Before update.
static
Create (string) : Extension
Extension factory method.
static
Create (Job, string) : Extension
Extension factor.
static
Find (string) : Type
Find extension type by name.
Finished () : bool
Finished.
FromStorage (Optimization.Storage.Storage, Optimization.Storage.Records.Optimizer)
Restore an optimizer from storage.
FromXml (System.Xml.XmlNode)
Load extension settings from xml.
static
GetAppliesTo (Type) : Type[]
Get to which optimizers an extension applies.
static
GetDescription (Type) : string
Extension type description.
static
GetName (Type) : string
Get extension name.
Initialize ()
Initialize.
Initialize (Solution)
Initialize solution.
InitializePopulation ()
Initialize population.
Next ()
Next.
Update (Solution)
Update solution.

Protected Methods

CreateSettings () : Settings
Create extension settings.

Member Details

Extension Constructor

Create a new Extension object.

public Extension ()

Remarks

Create a new Extension object.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Extension Constructor

Create a new extension object for a job.

public Extension (Job job)

Parameters

job
The job.

Remarks

Create a new extension object for a job.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

AfterUpdate Method

Update after.

public virtual void AfterUpdate ()

Remarks

Method called just after the update method of the optimizer.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

AppliesTo Property

List of optimizer types to apply to.

public Type[] AppliesTo { get; }

Value

List of optimizer types.

Remarks

Specifies a list of optimizer types to which the extension can be applied.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

BeforeUpdate Method

Before update.

public virtual void BeforeUpdate ()

Remarks

Method called just before the update method of the optimizer.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Configuration Property

Extension configuration.

public Settings Configuration { get; }

Value

Extension configuration.

Remarks

The extension configuration.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Create Method

Extension factory method.

public static Extension Create (string name)

Parameters

name
The extension name.

Returns

A new extension.

Remarks

Create an extension with a given name.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Create Method

Extension factor.

public static Extension Create (Job job, string name)

Parameters

job
The job.
name
The extension name.

Returns

A new extension.

Remarks

Create a new extension with a given name for a given job.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

CreateSettings Method

Create extension settings.

protected virtual Settings CreateSettings ()

Returns

A new settings object.

Remarks

Override this method to create a subclass of Optimization.Settings specific to the extension.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Description Property

Description of the extension.

public string Description { get; }

Value

The description.

Remarks

Gets the description of the extension.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Extensions Property

List of available extensions.

public static Type[] Extensions { get; }

Value

List of extensions.

Remarks

Get a list of available extensions.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Find Method

Find extension type by name.

public static Type Find (string name)

Parameters

name
Extension name.

Returns

The extension type.

Remarks

Find an extension type by name.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Finished Method

Finished.

public virtual bool Finished ()

Returns

Whether or not the optimization is finished.

Remarks

Override this method to implement additional stopping criteria for the optimizer.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

FromStorage Method

Restore an optimizer from storage.

public virtual void FromStorage (Optimization.Storage.Storage storage, Optimization.Storage.Records.Optimizer optimizer)

Parameters

storage
The storage.
optimizer
The optimizer.

Remarks

Override this method to restore additional settings specific to the extension from storage.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

FromXml Method

Load extension settings from xml.

public virtual void FromXml (System.Xml.XmlNode root)

Parameters

root
The root xml node.

Remarks

Load additional extension settings from xml.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

GetAppliesTo Method

Get to which optimizers an extension applies.

public static Type[] GetAppliesTo (Type type)

Parameters

type
The extension type.

Returns

List of optimizer types.

Remarks

Get a list of optimizer types to which a certain extension type applies.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

GetDescription Method

Extension type description.

public static string GetDescription (Type type)

Parameters

type
The extension type.

Returns

Extension description.

Remarks

Get the extension description of a certain extension type.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

GetName Method

Get extension name.

public static string GetName (Type type)

Parameters

type
Extension type.

Returns

Extension name.

Remarks

Get the extension name of a certain extension type.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Initialize Method

Initialize.

public virtual void Initialize ()

Remarks

This method is called when the optimizer is initialized.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Initialize Method

Initialize solution.

public virtual void Initialize (Solution solution)

Parameters

solution
The solution.

Remarks

This method is called when a new solution is initialized.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

InitializePopulation Method

Initialize population.

public virtual void InitializePopulation ()

Remarks

This method is called when a new population is initialized.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Job Property

The job.

public Job Job { get; }

Value

The job.

Remarks

The job.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Name Property

The extension name.

public string Name { get; }

Value

Extension name.

Remarks

Get the extension name.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Next Method

Next.

public virtual void Next ()

Remarks

This method is called when the next population is generated.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)

Update Method

Update solution.

public virtual void Update (Solution solution)

Parameters

solution
Solution.

Remarks

This method is called when a solution is updated.

Requirements

Namespace: Optimization
Assembly: Optimization (in Optimization.dll)