22 research outputs found
Learning probability distributions generated by finite-state machines
We review methods for inference of probability distributions generated by probabilistic automata and related models for sequence generation. We focus on methods that can be proved to learn in the inference
in the limit and PAC formal models. The methods we review are state merging and state splitting methods for probabilistic deterministic automata and the recently developed spectral method for nondeterministic probabilistic automata. In both cases, we derive them from a high-level algorithm described in terms of the Hankel matrix of the distribution to be learned, given as an oracle, and then describe how to adapt that algorithm to account for the error introduced by a finite sample.Peer ReviewedPostprint (author's final draft
Learning probabilistic languages by k-testable machines
Algorithms and the Foundations of Software technolog
Emergence and Stability of Self-Evolved Cooperative Strategies using Stochastic Machines
To investigate the origin of cooperative behaviors, we developed an
evolutionary model of sequential strategies and tested our model with computer
simulations. The sequential strategies represented by stochastic machines were
evaluated through games of Iterated Prisoner's Dilemma (IPD) with other agents
in the population, allowing co-evolution to occur. We expanded upon past works
by proposing a novel mechanism to mutate stochastic Moore machines that enables
a richer class of machines to be evolved. These machines were then subjected to
various selection mechanisms and the resulting evolved strategies were
analyzed. We found that cooperation can indeed emerge spontaneously in evolving
populations playing iterated PD, specifically in the form of trigger
strategies. In addition, we found that the resulting populations converged to
evolutionarily stable states and were resilient towards mutation. In order to
test the generalizability of our proposed mutation mechanism and simulation
approach, we also evolved the machines to play other games such as Chicken,
Stag Hunt, and Battle, and obtained strategies that perform as well as mixed
strategies in Nash Equilibrium.Comment: 8 pages, 5 figures, Submitted to and Accepted for IEEE SSCI 2020
(Symposium Series on Computational Intelligence
Learning Probabilistic Finite State Automata For Opponent Modelling
Artificial Intelligence (AI) is the branch of the Computer Science field that
tries to imbue intelligent behaviour in software systems. In the early years of
the field, those systems were limited to big computing units where researchers
built expert systems that exhibited some kind of intelligence. But with the
advent of different kinds of networks, which the more prominent of those is
the Internet, the field became interested in Distributed Artificial Intelligence
(DAI) as the normal move.
The field thus moved from monolithic software architectures for its AI sys-
tems to architectures where several pieces of software were trying to solve a
problem or had interests on their own. Those pieces of software were called
Agents and the architectures that allowed the interoperation of multiple agents
were called Multi-Agent Systems (MAS). The agents act as a metaphor that
tries to describe those software systems that are embodied in a given environ-
ment and that behave or react intelligently to events in the environment.
The AI mainstream was initially interested in systems that could be taught
to behave depending on the inputs perceived. However this rapidly showed
ineffective because the human or the expert acted as the knowledge bottleneck
for distilling useful and efficient rules. This was in best cases, in worst cases
the task of enumerating the rules was difficult or plainly not affordable. This
sparked the interest of another subfield, Machine Learning and its counter part
in a MAS, Distributed Machine Learning. If you can not code all the scenario
combinations, code within the agent the rules that allows it to learn from the
environment and the actions performed.
With this framework in mind, applications are endless. Agents can be used
to trade bonds or other financial derivatives without human intervention, or
they can be embedded in a robotics hardware and learn unseen map config-
uration in distant locations like distant planets. Agents are not restricted to
interactions with humans or the environment, they can also interact with other
agents themselves. For instance, agents can negotiate the quality of service of a channel before establishing a communication or they can share information
about the environment in a cooperative setting like robot soccer players.
But there are some shortcomings that emerge in a MAS architecture. The
one related to this thesis is that partitioning the task at hand into agents
usually entails that agents have less memory or computing power. It is not
economically feasible to replicate the big computing unit on each separate
agent in our system. Thus we can say that we should think about our agents as
computationally bounded , that is, they have a limited amount of computing
power to learn from the environment. This has serious implications on the
algorithms that are commonly used for learning in these settings.
The classical approach for learning in MAS system is to use some variation
of a Reinforcement Learning (RL) algorithm [BT96, SB98]. The main idea
around those algorithms is that the agent has to maintain a table with the per-
ceived value of each action/state pair and through multiple iterations obtain a
set of decision rules that allows to take the best action for a given environment.
This approach has several flaws when the current action depends on a single
observation seen in the past (for instance, a warning sign that a robot per-
ceives). Several techniques has been proposed to alleviate those shortcomings.
For instance to avoid the combinatorial explosion of states and actions, instead
of storing a table with the value of the pairs an approximating function like a
neural network can be used instead. And for events in the past, we can extend
the state definition of the environment creating dummy states that correspond
to the N-tuple (stateN, stateN−1, . . . , stateN−t
Wrapper Maintenance: A Machine Learning Approach
The proliferation of online information sources has led to an increased use
of wrappers for extracting data from Web sources. While most of the previous
research has focused on quick and efficient generation of wrappers, the
development of tools for wrapper maintenance has received less attention. This
is an important research problem because Web sources often change in ways that
prevent the wrappers from extracting data correctly. We present an efficient
algorithm that learns structural information about data from positive examples
alone. We describe how this information can be used for two wrapper maintenance
applications: wrapper verification and reinduction. The wrapper verification
system detects when a wrapper is not extracting correct data, usually because
the Web source has changed its format. The reinduction algorithm automatically
recovers from changes in the Web source by identifying data on Web pages so
that a new wrapper may be generated for this source. To validate our approach,
we monitored 27 wrappers over a period of a year. The verification algorithm
correctly discovered 35 of the 37 wrapper changes, and made 16 mistakes,
resulting in precision of 0.73 and recall of 0.95. We validated the reinduction
algorithm on ten Web sources. We were able to successfully reinduce the
wrappers, obtaining precision and recall values of 0.90 and 0.80 on the data
extraction task
Learning deterministic probabilistic automata from a model checking perspective
Probabilistic automata models play an important role in the formal design and analysis of hard- and software systems. In this area of applications, one is often interested in formal model-checking procedures for verifying critical system properties. Since adequate system models are often difficult to design manually, we are interested in learning models from observed system behaviors. To this end we adopt techniques for learning finite probabilistic automata, notably the Alergia algorithm. In this paper we show how to extend the basic algorithm to also learn automata models for both reactive and timed systems. A key question of our investigation is to what extent one can expect a learned model to be a good approximation for the kind of probabilistic properties one wants to verify by model checking. We establish theoretical convergence properties for the learning algorithm as well as for probability estimates of system properties expressed in linear time temporal logic and linear continuous stochastic logic. We empirically compare the learning algorithm with statistical model checking and demonstrate the feasibility of the approach for practical system verification