Compartir a través de


GKMinMaxStrategist Clase

Definición

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

[Foundation.Register("GKMinmaxStrategist", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 9, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 11, ObjCRuntime.PlatformArchitecture.Arch64, null)]
public class GKMinMaxStrategist : Foundation.NSObject, GameplayKit.IGKStrategist, IDisposable
type GKMinMaxStrategist = class
    inherit NSObject
    interface IGKStrategist
    interface INativeObject
    interface IDisposable
Herencia
GKMinMaxStrategist
Atributos
Implementaciones

Comentarios

La GKMinMaxStrategist clase es una implementación del algoritmo minimax, optimizado para la eficiencia del espacio. Los desarrolladores no subclase GKMinMaxStrategist, sino que crean implementaciones específicas del juego de IGKGameModelPlayer, IGKGameModely IGKGameModelUpdate. Esto se describe en detalle en la sección "Ai Opponent" de la sección de comentarios de la documentación del espacio de nombres .

Quizás porque GKMinMaxStrategist es una implementación altamente optimizada, los modos de error son difíciles de depurar. Normalmente, un error en la configuración de GKMinMaxStrategist o en la implementación de las clases de juego relacionadas da como resultado un null devuelto por GetBestMove(IGKGameModelPlayer) sin ningún mensaje de error en la consola o el registro del sistema. El siguiente diagrama de secuencia puede ser de ayuda para colocar puntos de interrupción:

Dado que GetBestMove(IGKGameModelPlayer) es muy caro, los desarrolladores normalmente deben llamarlo desde un T:System.Threading.Tasks.Task en segundo plano.

Constructores

GKMinMaxStrategist()

El constructor predeterminado inicializa una nueva instancia de esta clase.

GKMinMaxStrategist(IntPtr)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Llamado por el entorno de ejecución.

GKMinMaxStrategist(NSObjectFlag)

Constructor para llamar a las clases derivadas para omitir la inicialización y simplemente asignar el objeto.

Propiedades

Class

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
ClassHandle

Identificador de esta clase.

DebugDescription

Descripción significativa para el desarrollador de este objeto.

(Heredado de NSObject)
Description

Descripción del objeto, la versión objective-C de ToString.

(Heredado de NSObject)
GameModel

IGKGameModel que representa el estado actual del juego.

Handle

Identificador (puntero) a la representación del objeto no administrado.

(Heredado de NSObject)
IsDirectBinding

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
IsProxy

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
MaxLookAheadDepth

Número de turnos de jugador que se van a evaluar. Exponencialmente caro.

RandomSource

Se usa para romper los vínculos entre movimientos en GetBestMove(IGKGameModelPlayer) y para elegir un movimiento en GetRandomMove(IGKGameModelPlayer, nint).

RetainCount

Devuelve el recuento de retención actual de Objective-C para el objeto .

(Heredado de NSObject)
Self

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Superclass

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
SuperHandle

Identificador usado para representar los métodos de la clase base para este NSObject.

(Heredado de NSObject)
Zone

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)

Métodos

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

Registra un objeto para que se observe externamente (mediante NSString keyPath).   Los cambios observados se envían al método de objeto ObserveValue(NSString, NSObject, NSDictionary, IntPtr) del observador.

(Heredado de NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

Registra un objeto para que se observe externamente (mediante keyPath de cadena).   Los cambios observados se envían al método de objeto ObserveValue(NSString, NSObject, NSDictionary, IntPtr) del observador.

(Heredado de NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registra un objeto para que se observe externamente mediante un método arbitrario.

(Heredado de NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registra un objeto para que se observe externamente mediante un método arbitrario.

(Heredado de NSObject)
AwakeFromNib()

Se llama después de cargar el objeto desde el archivo nib. Los invalidadores deben llamar a base. AwakeFromNib().

(Heredado de NSObject)
BeginInvokeOnMainThread(Action)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Invoca de forma asincrónica el código especificado en el subproceso principal de la interfaz de usuario.

(Heredado de NSObject)
Bind(NSString, NSObject, String, NSDictionary)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Bind(String, NSObject, String, NSDictionary)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
BindingInfo(String)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
BindingOptionDescriptions(String)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
BindingValueClass(String)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
CommitEditing()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
CommitEditing(NSObject, Selector, IntPtr)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
ConformsToProtocol(IntPtr)

Se invoca para determinar si este objeto implementa el protocolo especificado.

(Heredado de NSObject)
Copy()

Realiza una copia del objeto Objective-C subyacente.

(Heredado de NSObject)
DangerousAutorelease()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
DangerousRelease()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
DangerousRetain()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

Indica que se ha producido un cambio en los índices de una relación a varios.

(Heredado de NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
DidChangeValue(String)

Indica que se ha producido un cambio en la clave especificada.

(Heredado de NSObject)
Dispose()

Libera los recursos usados por el objeto NSObject.

(Heredado de NSObject)
Dispose(Boolean)

Libera los recursos usados por el objeto NSObject.

(Heredado de NSObject)
DoesNotRecognizeSelector(Selector)

Indica que este objeto no reconoce el selector especificado.

(Heredado de NSObject)
Equals(NSObject)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Equals(Object)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
ExposedBindings()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetBestMove(IGKGameModelPlayer)

Calcula el IGKGameModelUpdate objeto que proporciona la mayor ventaja a player, restringido por MaxLookAheadDepth.

GetBestMoveForActivePlayer()

Devuelve el mejor movimiento posible para el jugador activo actualmente.

GetBindingInfo(NSString)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetBindingOptionDescriptions(NSString)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetBindingValueClass(NSString)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

Recupera los valores de las claves especificadas.

(Heredado de NSObject)
GetHashCode()

Genera un código hash para la instancia actual.

(Heredado de NSObject)
GetMethodForSelector(Selector)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetNativeField(String)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetNativeHash()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
GetRandomMove(IGKGameModelPlayer, nint)

Devuelve un movimiento aleatorio entre los numMovesToConsider mejores movimientos.

Init()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
InitializeHandle(IntPtr)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
InitializeHandle(IntPtr, String)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Invoke(Action, Double)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Invoke(Action, TimeSpan)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
InvokeOnMainThread(Action)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
InvokeOnMainThread(Selector, NSObject)

Invoca sincrónicamente el código especificado en el subproceso principal de la interfaz de usuario.

(Heredado de NSObject)
IsEqual(NSObject)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
IsKindOfClass(Class)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
IsMemberOfClass(Class)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
MarkDirty()

Promueve un objeto del mismo nivel normal (IsDirectBinding es true) en un objeto toggleref.

(Heredado de NSObject)
MutableCopy()

Crea una copia mutable del objeto NSObject especificado.

(Heredado de NSObject)
ObjectDidEndEditing(NSObject)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

Indica que el valor de keyPath especificado con respecto a este objeto ha cambiado.

(Heredado de NSObject)
PerformSelector(Selector)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PerformSelector(Selector, NSObject)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, Double)

Invoca el selector en la instancia actual y, si no obj es NULL, lo pasa como su único parámetro.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, Double, NSString[])

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, NSObject)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[])

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
PrepareForInterfaceBuilder()

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
RemoveObserver(NSObject, NSString)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath especificado.

(Heredado de NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath y el contexto especificados.

(Heredado de NSObject)
RemoveObserver(NSObject, String)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath especificado.

(Heredado de NSObject)
RemoveObserver(NSObject, String, IntPtr)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath y el contexto especificados.

(Heredado de NSObject)
RespondsToSelector(Selector)

Si este objeto reconoce el selector especificado.

(Heredado de NSObject)
SetNativeField(String, NSObject)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
SetNilValueForKey(NSString)

Establece el valor de la clave especificada en NULL.

(Heredado de NSObject)
SetValueForKey(NSObject, NSString)

Establece el valor de la propiedad especificada por la clave en el valor especificado.

(Heredado de NSObject)
SetValueForKeyPath(IntPtr, NSString)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Llamado por el entorno de ejecución.

(Heredado de NSObject)
SetValueForKeyPath(NSObject, NSString)

Establece el valor de una propiedad que se puede alcanzar mediante una ruta de acceso de claves.

(Heredado de NSObject)
SetValueForUndefinedKey(NSObject, NSString)

Indica un intento de escribir un valor en una clave no definida. Si no se reemplaza, genera una excepción NSUndefinedKeyException.

(Heredado de NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

Establece los valores de este NSObject en los del diccionario especificado.

(Heredado de NSObject)
ToString()

Devuelve una representación de cadena del valor de la instancia actual.

(Heredado de NSObject)
Unbind(NSString)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
Unbind(String)
Obsoletos.

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
ValueForKey(NSString)

Devuelve el valor de la propiedad asociada a la clave especificada.

(Heredado de NSObject)
ValueForKeyPath(NSString)

Devuelve el valor de una propiedad que se puede alcanzar mediante una ruta de acceso de clave.

(Heredado de NSObject)
ValueForUndefinedKey(NSString)

Indica un intento de leer un valor de una clave no definida. Si no se reemplaza, genera una excepción NSUndefinedKeyException.

(Heredado de NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

Indica que los valores de los índices especificados en la clave especificada están a punto de cambiar.

(Heredado de NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

(Heredado de NSObject)
WillChangeValue(String)

Indica que el valor de la clave especificada está a punto de cambiar.

(Heredado de NSObject)

Métodos de extensión

ObjectDidBeginEditing(NSObject, INSEditor)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

ObjectDidEndEditing(NSObject, INSEditor)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

GetValidModes(NSObject, NSFontPanel)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

ValidateToolbarItem(NSObject, NSToolbarItem)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

GetDebugDescription(INSObjectProtocol)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

BeginPreviewPanelControl(NSObject, QLPreviewPanel)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

EndPreviewPanelControl(NSObject, QLPreviewPanel)

Inteligencia artificial del juego que evalúa los posibles estados del juego, los puntúa e intenta maximizar su propia puntuación mientras minimiza sus oponentes.

GetAccessibilityCustomRotors(NSObject)

Obtiene la matriz de UIAccessibilityCustomRotor objetos adecuados para this el objeto .

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Establece la matriz de UIAccessibilityCustomRotor objetos adecuados para this el objeto .

Se aplica a

Consulte también