target_space.pyc
ó
o\c @ s? d d l Z d d l m Z d Z d e f d YZ d S( iÿÿÿÿNi ( t
ensure_rngc C s t t t | S( s3 ensure that an point is hashable by a python dict ( t tuplet mapt float( t x( ( s$ N:\TCAD\SLALOM\Bayes\target_space.pyt _hashable s t TargetSpacec B s× e Z d Z d d Z d Z d Z e d Z e d Z e d Z
e d Z e d Z e d Z
d
Z d Z d Z d
Z d Z d Z d Z d Z d Z RS( sÓ
Holds the param-space coordinates (X) and target values (Y)
Allows for constant-time appends while ensuring no duplicates are added
Example
-------
>>> def target_func(p1, p2):
>>> return p1 + p2
>>> pbounds = {'p1': (0, 1), 'p2': (1, 100)}
>>> space = TargetSpace(target_func, pbounds, random_state=0)
>>> x = space.random_points(1)[0]
>>> y = space.register_point(x)
>>> assert self.max_point()['max_val'] == y
c C s® t | | _ | | _ t | | _ t j g t | j d d D] } | d ^ qI d t j | _ t j
d d | j f | _ t j
d d | _
i | _ d S( sp
Parameters
----------
target_func : function
Function to be maximized.
pbounds : dict
Dictionary with parameters names as keys and a tuple with minimum
and maximum values.
random_state : int, RandomState, or None
optionally specify a seed for a random number generator
t keyc S s | d S( Ni ( ( R ( ( s$ N:\TCAD\SLALOM\Bayes\target_space.pyt <lambda>0 s i t dtypet shapei N( R t random_statet target_funct sortedt _keyst npt arrayt itemsR t _boundst emptyt dimt _paramst _targett _cache( t selfR t pboundsR t item( ( s$ N:\TCAD\SLALOM\Bayes\target_space.pyt __init__ s 2c C s t | | j k S( N( R R ( R R ( ( s$ N:\TCAD\SLALOM\Bayes\target_space.pyt __contains__; s c C s1 t | j t | j k s$ t t | j S( N( t lenR R t AssertionError( R ( ( s$ N:\TCAD\SLALOM\Bayes\target_space.pyt __len__>