示例#1
0
 def __init__(self):
     shape1, shape2 = sg.sample_shape(2)
     objs1 = tg.Select(shape=shape1, when=sg.random_when())
     objs2 = tg.Select(shape=shape2, when=sg.random_when())
     a1 = tg.GetColor(objs1)
     a2 = tg.GetColor(objs2)
     self._operator = tg.IsSame(a1, a2)
示例#2
0
    def __init__(self):
        shape1, shape2, shape3 = sg.sample_shape(3)
        objs1 = tg.Select(shape=shape1, when='latest')
        color1 = tg.GetColor(objs1)
        objs2 = tg.Select(color=color1, shape=shape2, when='now')
        self._operator = tg.Go(objs2)

        self._shape1, self._shape2, self._shape3 = shape1, shape2, shape3
示例#3
0
 def __init__(self):
     shape1, shape2 = sg.sample_shape(2)
     objs1 = tg.Select(shape=shape1, when='now')
     objs2 = tg.Select(shape=shape2, when=sg.random_when())
     self._operator = tg.Switch(tg.Exist(objs1),
                                tg.Go(objs1),
                                tg.Go(objs2),
                                both_options_avail=False)
示例#4
0
 def __init__(self):
     shape1, shape2 = sg.sample_shape(2)
     objs1 = tg.Select(shape=shape1, when=sg.random_when())
     loc = tg.GetLoc(objs1)
     objs2 = tg.Select(loc=loc,
                       shape=shape2,
                       when='now',
                       space_type=sg.random_space())
     self._operator = tg.Exist(objs2)
示例#5
0
 def __init__(self):
     shape1, shape2, shape3, shape4 = sg.sample_shape(4)
     objs1 = tg.Select(shape=shape1, when=sg.random_when())
     objs2 = tg.Select(shape=shape2, when=sg.random_when())
     objs3 = tg.Select(shape=shape3, when=sg.random_when())
     objs4 = tg.Select(shape=shape4, when=sg.random_when())
     a1 = tg.GetColor(objs1)
     a2 = tg.GetColor(objs2)
     a3 = tg.GetColor(objs3)
     a4 = tg.GetColor(objs4)
     self._operator = tg.And(tg.IsSame(a1, a2), tg.IsSame(a3, a4))
示例#6
0
    def __init__(self):
        shape1, shape2, shape3, shape4 = sg.sample_shape(4)
        objs1 = tg.Select(shape=shape1, when=sg.random_when())
        loc = tg.GetLoc(objs1)
        objs2 = tg.Select(loc=loc,
                          shape=shape2,
                          when='now',
                          space_type=sg.random_space())
        bool1 = tg.Exist(objs2)

        objs3 = tg.Select(shape=shape3)
        objs4 = tg.Select(shape=shape4)
        go1 = tg.Go(objs3)
        go2 = tg.Go(objs4)
        self._operator = tg.Switch(bool1, go1, go2, both_options_avail=True)
示例#7
0
    def __init__(self):
        color1, color2, color3 = sg.sample_color(3)
        shape3, shape4 = sg.sample_shape(2)
        when1 = sg.random_when()
        when2 = sg.random_when()

        objs1 = tg.Select(color=color1, when=when1)
        objs2 = tg.Select(color=color2, when=when2)
        s1 = tg.GetShape(objs1)
        s2 = tg.GetShape(objs2)
        bool1 = tg.IsSame(s1, s2)
        objs3 = tg.Select(color=color3, shape=shape3)
        objs4 = tg.Select(color=color3, shape=shape4)
        go1 = tg.Go(objs3)
        go2 = tg.Go(objs4)
        self._operator = tg.Switch(bool1, go1, go2, both_options_avail=True)
示例#8
0
    def __init__(self):
        shape1, shape2, shape3 = sg.sample_shape(3)
        color1, color2 = sg.sample_color(2)
        when1 = sg.random_when()
        when2 = sg.random_when()

        objs1 = tg.Select(shape=shape1, when=when1)
        objs2 = tg.Select(shape=shape2, when=when2)
        a1 = tg.GetColor(objs1)
        a2 = tg.GetColor(objs2)
        bool1 = tg.IsSame(a1, a2)

        objs3 = tg.Select(color=color1, shape=shape3)
        objs4 = tg.Select(color=color2, shape=shape3)
        go1 = tg.Go(objs3)
        go2 = tg.Go(objs4)
        self._operator = tg.Switch(bool1, go1, go2, both_options_avail=True)
示例#9
0
    def __init__(self):
        shape1, shape2 = sg.sample_shape(2)
        objs1 = tg.Select(shape=shape1, when=sg.random_when())
        objs2 = tg.Select(shape=shape2, when=sg.random_when())
        color11 = tg.GetColor(objs1)
        color21 = tg.GetColor(objs2)
        color12, color22 = sg.random_color(), sg.random_color()
        if random.random() > 0.5:
            bool1 = tg.IsSame(color11, color12)
        else:
            bool1 = tg.IsSame(color11, color12)
        if random.random() > 0.5:
            bool2 = tg.IsSame(color21, color22)
        else:
            bool2 = tg.IsSame(color21, color22)

        self._operator = tg.And(bool1, bool2)
示例#10
0
    def __init__(self):
        color1, color2 = sg.sample_color(2)
        when1 = sg.random_when()
        a2 = sg.random_shape()
        shape1, shape2 = sg.sample_shape(2)

        objs1 = tg.Select(color=color1, when=when1)
        a1 = tg.GetShape(objs1)

        if random.random() > 0.5:
            bool1 = tg.IsSame(a1, a2)
        else:
            bool1 = tg.IsSame(a2, a1)

        objs2 = tg.Select(color=color2, shape=shape1)
        objs3 = tg.Select(color=color2, shape=shape2)
        go1 = tg.Go(objs2)
        go2 = tg.Go(objs3)
        self._operator = tg.Switch(bool1, go1, go2, both_options_avail=True)
示例#11
0
    def generate_objset(self, n_epoch, n_distractor=1, average_memory_span=2):
        """Generate object set."""
        if n_epoch < 4:
            raise ValueError(
                'Number of epoch {:d} is less than 4'.format(n_epoch))
        shape1, shape2 = sg.sample_shape(2)
        shape3 = sg.random_shape()

        objset = sg.ObjectSet(n_epoch=n_epoch)

        sample1 = sg.Object([self._color1, shape1], when='now')
        distractor1 = sg.Object([self._color3, shape3], when='now')
        test1 = sg.Object([self._color2, shape1], when='now')
        test2 = sg.Object([self._color2, shape2], when='now')

        objset.add(sample1, epoch_now=1)  # sample epoch
        objset.add(distractor1, epoch_now=2)  # delay epoch
        objset.add(test1, epoch_now=3)  # test epoch
        objset.add(test2, epoch_now=3)  # test epoch
        return objset
示例#12
0
    def generate_objset(self, n_epoch, n_distractor=1, average_memory_span=2):
        if n_epoch < 4:
            raise ValueError(
                'Number of epoch {:d} is less than 4'.format(n_epoch))
        objset = sg.ObjectSet(n_epoch=n_epoch)

        n_sample = 2
        sample_shapes = sg.sample_shape(n_sample)
        for i in range(n_sample):
            obj = sg.Object([self._color1, sample_shapes[i]], when='now')
            objset.add(obj, epoch_now=1)

        obj = sg.Object([sg.another_color(self._color1)], when='now')
        objset.add(obj, epoch_now=1)  # distractor

        if random.random() < 0.5:
            shape3 = random.choice(sample_shapes)
        else:
            shape3 = sg.another_shape(sample_shapes)
        test1 = sg.Object([self._color1, shape3], when='now')
        objset.add(test1, epoch_now=3)  # test epoch
        return objset
示例#13
0
 def __init__(self):
     shape1, shape2 = sg.sample_shape(2)
     objs1 = tg.Select(shape=shape1, when=sg.random_when())
     color1 = tg.GetColor(objs1)
     objs2 = tg.Select(color=color1, shape=shape2, when='now')
     self._operator = tg.Exist(objs2)