Brian J. Ross research info
Professor
Dept of Computer Science
Brock University
Member of Bio-Inspired Computational Intelligence Group.
Education
Research interests
- AI: evolutionary computation, machine learning
- Computation paradigms: logic programming, process algebra, concurrency
Student supervision
MSc
- Will Barry
- Steve Bergen
- Corrado Coia
- Robert Flack
3P99/4F90 projects
Research statement
My doctoral research involved the use of process algebra for modeling
logic programming language control. This semantics could be used as a
framework for proving program termination and transformation properties
of Prolog programs, including those with cuts. It could also be used to
define the operational semantics of logic program control strategies other
than Prolog, such as those with mixed
sequential and concurrent control. Since that time, much of my research
has involved the practical application of process algebra for a variety of
uses, for example, the automatic synthesis of stochastic networks.
Currently, my research is focussed on the use of machine learning
techniques for formal language induction and concurrent software synthesis.
Initially, I developed some language induction
algorithms for algebras with interleaving. Although the algorithms derived
had polynomial complexity, the process algebra used as a target language was
not too robust.
Further research showed that genetic programming is an excellent means for
automatically synthesizing process algebraic systems. I first used a CCS-like
process algebra as the target language, and developed a Prolog-based
GP system for evolving CCS expressions solving a variety of concurrent problems.
I am now studying new evolutionary computation techniques for richer
concurrent languages, as well as for stochastic formal languages such as
stochastic regular expressions.
Recently, there has been a lot of interest in the stochastic pi-calculus, and
I have been investigating the automatic synthesis of networks encoded in that
formalism.
Eventually, I hope to apply this research towards
real-world problems in bioinformatics, for example,
the automatic derivation of bionetworks.
To support my research, I developed a logic-grammar-based genetic programming
system called DCTG-GP (Definite Clause Translation Grammar for Genetic
Programming). DCTG-GP lets the user define their target
language using a context--free attribute grammar.
This environment permits the languages grammar and semantics to be
unified together, and also permits syntactic and semantic constraints to
be conveniently encoded.
I also have an interest in applications of evolutionary computation in
computer graphics and design.
The Gentropy system I have developed with students synthesizes 2D textures
that match various feature characteristics of one or more target
images - all without human supervision.
Suites of rudimentary image analysis tests rank the suitability of
candidate textures.
Different implementations of the system have used multiple populations
and multi-objective search.
The latest system incorporates a mathematical model of aesthetics, with the
goal of evolving visually pleasing images.
One project investigated the evolution of image filters, which attempt to
duplicate a target colour palette, while adhering to the aesthetic model.
Other research has used genetic programming to evolve procedural textures
for 3D surfaces. This system uses training examples in order to evolve
textures that conform to the surface characteristics of 3D models.
Example results from these research topics are on my web site below.
Evolutionary design and art
Theses
-
Brian J Ross. An Algebraic Semantics of Prolog Control.
PhD thesis, Dept. of Artificial Intelligence, U. of Edinburgh, 1992.
(PS)
-
Brian J Ross. The Semantics and Transformation of Imperative Programs
Using Horn Clauses. MSc thesis, Dept. of Computer Science,
U. of British Columbia, 1988.
Book chapters
-
C. Neufeld, B.J. Ross, W. Ralph.
"The Evolution of Artistic Filters".
In The Art of Artificial Evolution,
J. Romero and P. Machado (eds.), Springer, 2008.
-
B.J. Ross.
"The Evolution of Concurrent Systems".
In Evolution of Engineering and Information Systems and Their Applications,
L.C. Jain (ed.), CRC Press, 1999, pp. 31-64.
-
B.J. Ross.
"A Lamarckian Evolution Strategy for Genetic Algorithms",
Practical Handbook of Genetic Algorithms (vol.3),
L. Chambers (ed.), CRC Press, 1999, pp. 1-16. (PS).
Here is revised Prolog code.
-
B.J. Ross. "A Semantic Approach to Prolog Program Analysis".
In Constructing Logic Programs, J.-M. Jacquet (ed.), Wiley, 1993,
pp. 165-187.
Journals
-
B.J. Ross and E. Zuviria.
"Evolving Dynamic Bayesian Networks using Multi-objective Genetic Algorithms".
Applied Intelligence, v.26, n.1, Feb 2007, pp. 13-23.
-
B.M. Ombuki, B.J. Ross, F. Hanshar. "A Multi-Objective Genetic Algorithm Approach to the Vehicle Routing Problem with Time Windows".
Applied Intelligence, v.24, n.1, Feb 2006, pp. 17-30.
-
B.J. Ross, A.G. Gualtieri, F. Fueten, P. Budkewitsch.
"Hyperspectral Image Analysis Using Genetic Programming",
Applied Soft Computing, v.5, n.2, January 2005, pp.147-156.
Preprint (PDF). Journal web site.
-
A. Hewgill and B.J. Ross. "Procedural 3D Texture Synthesis Using Genetic Programming".
Computers and Graphics Journal, vol.28, n.4, 2004, pp.569-584.
Preprint (PDF).
Journal web site.
Here is a gallery of select examples.
-
B.J. Ross and H. Zhu. "Procedural Texture Evolution Using Multiobjective Optimization".
New Generation Computing, vol. 22, n. 3, 2004, pp. 271-293.
(PDF). Permission by the publisher to post this paper
on web is kindly acknowledged.
-
B.J. Ross.
"The Evolution of Stochastic Regular Motifs for Protein Sequences",
New Generation Computing, vol. 20, n. 2, Feb 2002, pp. 187-213.
(PDF). Permission by the publisher to post this paper on web is kindly acknowledged.
-
A. Wiens and B.J. Ross.
"Gentropy: Evolutionary 2D Texture Generation",
Computers and Graphics Journal, v.26, n.1, Feb 2002, pp. 75-88.
Preprint (PDF).
Journal web site.
GECCO 2000 Late Breaking Papers Presentation overheads.
-
B.J. Ross, F. Fueten and D.Y. Yashkir.
"Automatic Mineral Identification Using Genetic Programming",
Journal of Machine Vision and Applications, v.13, n.2, 2001, pp. 61-69.
(PDF).
-
B.J. Ross.
"Logic-based Genetic Programming with Definite Clause Translation Grammars",
New Generation Computing, v.19, n.4, 2001, pp. 313-337.
(PDF). Permission by the publisher to post this paper on web is kindly acknowledged.
Note: If you would like a copy of the DCTG-GP system written in
Sicstus Prolog 3.9 Windows, please contact me.
-
B.J. Ross.
"Probabilistic Pattern Matching and the Genetic Programming of Stochastic Regular Expressions",
Applied Intelligence, v. 13, n. 3, Nov/Dec 2000, pp.285-300.
(PDF).
-
B.J. Ross. "The Evolution of Concurrent Programs".
Applied Intelligence, v.8, n.1, Jan 1998, pp. 21-32.
(PDF).
-
B.J. Ross.
"Running Programs Backwards: the Logical Inversion
of Imperative Computation".
Formal Aspects of Computing Journal, vol. 9, 1997, pp. 331-348.
(PDF)
-
S. Brooks and B.J. Ross. "Automated Composition from Computer Models of Biological Behavior".
Leonardo Music Journal, Volume 6, 1996, pp. 27-31.
Listen to the music.
Conferences
-
Brian J. Ross and Janine Imada. "Evolving Stochastic Processes Using Feature Tests and Genetic Programming",
GECCO 2009, Montreal, July 2009. PDF.
-
Janine Imada and Brian J. Ross. "Evolutionary Synthesis of Stochastic Gene Network Models Using Feature-based Search Spaces",
SHARCNET Research Day, May 2009, U. Waterloo.
-
Brian J. Ross and Janine Imada. "Using Multi-objective Genetic Programming to Synthesize Stochastic Processes",
Genetic Programming Theory and Practice Workshop, May 2009, Ann Arbor, MI, May 2009.
-
Janine Imada and Brian J. Ross. "Using Feature-based Fitness Evaluation in Symbolic Regression with Added Noise",
GECCO 2008 Late Breaking Papers, Atlanta, July 2008.
-
Brian J. Ross. "Evolutionary Learning and Stochastic Process Algebra",
1st International Workshop on Induction of Process Models,
ICML 2007, Corvallis, OR, June 2007.
(PDF)
-
Brian J. Ross. "Using Genetic Programming to Synthesize Monotonic Stochastic Processes",
Computational Intelligence 2007, Banff, AB, July 2007, pp.71-78.
(PDF)
-
B. Ross, W. Ralph and H. Zong.
"Evolutionary Image Synthesis Using a Model of Aesthetics",
CEC 2006, Vancouver, BC, July 2006.
(PDF)
Image gallery.
-
C. Neufeld, B.J. Ross and W. Ralph.
"The Evolution of Artistic Filters" (poster),
Evolutionary Art competition, CEC 2006, Vancouver, BC, July 2006.
-
R. Lefuel and B.J. Ross. "Parsing Probabilistic Context Free Languages with Multi-Objective Genetic Algorithms". GECCO-2004 Late Breaking Papers, June 2004.
-
A. Hewgill and B.J. Ross.
"The Evolution of 3D Procedural Textures",
Proceedings GECCO-2003 Late-Breaking Papers, Chicago IL, pp. 146-147.
(PDF)
-
B.J. Ross.
"Evolving Protein Motifs Using a Stochastic Regular Language with Codon-Level Probabilities",
Intl. Conf. on Artificial Intelligence and Soft Computing
(ASC 2002), Banff, AB, ed. H. Leung, ACTA Press, July 2002, pp. 134-139. (PDF)
-
B.J. Ross, A.G. Gualtieri, F. Fueten, P. Budkewitsch.
"Hyperspectral Image Analysis Using Genetic Programming",
Proceedings of the Genetic and Evolutionary Computation
Conference (GECCO 2002), ed. W.B.Langdon et al.,
CA: Morgan Kaufmann. 2002. pp. 1196-1203.
(PDF)
-
B.J. Ross.
"The Evaluation of a Stochastic Regular Motif Language for Protein Sequences",
Spector, L. et al. (eds.), Proceedings
of the Genetic and Evolutionary Computation Conference (GECCO-2001). San
Francisco, CA: Morgan Kaufmann. 2001. pp. 120-128.
(PDF)
-
C. Wellock and B.J. Ross.
"An Examination of Lamarckian Genetic Algorithms",
Proceedings of Late Breaking Papers, Genetic and Evolutionary Computation
Conference (GECCO-2001), pp.474-481. (PDF)
-
B.J. Ross, F. Fueten, and D.Y. Yashkir.
"Edge Detection of Petrographic Images Using Genetic Programming",
Proceedings GECCO 2000, ed. D. Whitley et al., Morgan Kaufmann, 2000, pp. 658-665.
(PS).
-
B.J. Ross.
"The Effects of Randomly Sampled Training Data on Program Evolution",
Proceedings GECCO 2000, ed. D. Whitley et al., Morgan Kaufmann, 2000, pp. 443-450.
(PS).
-
B.J. Ross.
"Pairwise Sequence Comparison and the Genetic Programming of Iterative Concurrent Programs",
Genetic Programming 98: Proceedings of the Third Annual Conference,
J.R. Koza et al. (eds.), July 1998, Morgan Kaufmann, pp. 338-343.
(PS).
-
Robert Pringle and B.J. Ross. "A Symbiosis of Animation and Music".
Proceedings 1996 International Computer Music Conference, Hong Kong,
Aug 1996, pp. 316-319.
-
B.J. Ross.
"MWSCCS: A Concurrent Stochastic Music Language".
Second Brazilian Symposium on Computer Music, Canela, Brazil, July 1995.
(PDF)
-
B.J. Ross. "PAC Learning of Interleaved Melodies",
1995 IJCAI Workshop on Music and Artificial Intelligence, August 1995, pp. 96-100. (PS).
-
B.J. Ross.
"A Process Algebra for Stochastic Music Composition",
Proceedings 1995 International Computer Music Conference,
ICMC 1995, pp. 448-451.
(PDF)
-
B.J. Ross.
"The Inductive Inference of Cyclic Synchronized Interleaving",
Proceedings European Conference on Artificial Intelligence 1994 , Amsterdam, The Netherlands,
A.G.Cohn (ed.). J Wiley and Sons, 1994, pp. 423-427. (PS).
-
B.J. Ross.
"A pi-calculus Semantics of Logical Variables and Unification",
First North American Process Algebra Workshop,
Springer-Verlag, 1993, pp. 216-230. (PDF)
-
B.J. Ross. "Semantics-based Partial Evaluation of Prolog Programs".
Workshop on Logic Program Synthesis and Transformation,
Manchester, Springer-Verlag, 1992, pp. 221-237.
-
B.J. Ross and A. Smaill. "An Algebraic Semantics of Prolog Program
Termination". Proceedings of the Intl. Conference on Logic Programming 1991, MIT Press, 1991, pp. 316-330.
-
B.J. Ross. "Using Algebraic Semantics for Proving Prolog Termination
and Transformation".
Proceedings of the UKALP 1991, Springer-Verlag, pp. 135-155.
-
B.J. Ross. "The Partial Evaluation of Imperative Programs Using Prolog".
Meta-programming in Logic Programming,
H. Abramson and M. Rogers (eds.), MIT Press, 1989, pp. 341-363.
-
H. Abramson, M Crocker, B. Ross and D. Westcott.
"A Fifth Generation Translator Writing System: Towards and Expert System for
Compiler Development". In: International Workshop on Programming
Language Implementation and Logic Programming, INRIA, Orleans,
France, 1988.
Technical reports
-
C. Coia and B.J. Ross.
"User-guided Evolution of Granular Synthesis"
Brock COSC TR CS-09-09, July 2009.
(PDF)
-
J. Imada and B.J. Ross.
"Using Feature-based Fitness Evaluation in Symbolic Regression with Added Noise"
Brock COSC TR CS-08-03, April 2008.
(PDF)
-
B.J. Ross.
"Using Genetic Programming to Synthesize Monotonic Stochastic Processes".
Brock COSC TR CS-07-03, April 2007.
(PDF)
-
B.J. Ross and E. Zuviria.
"Evolving Dynamic Bayesian Networks with Multi-objective Genetic Algorithms".
Brock COSC TR CS-05-03, May 2005.
(PDF)
-
B. Ombuki, B.J. Ross, and F. Hanshar.
"Multi-objective Genetic Algorithms for Vehicle Routing Problem with Time Windows".
Brock COSC TR CS-04-02, January 2004.
(PDF)
-
R. Lefuel and B.J. Ross.
"Parsing probabilistic context free languages with multi-objective genetic algorithms".
Brock COSC TR CS-04-08, May 2004.
-
A. Hewgill and B.J. Ross.
"Procedural 3D Texture Synthesis Using Genetic Programming".
Brock COSC TR CS-03-06, April 2003.
(PDF)
-
B.J. Ross.
"Evolving Protein Motifs Using a Stochastic Regular Language with Codon-Level Probabilities".
Brock COSC TR CS-02-11, May 2002.
(PDF)
-
B.J. Ross, A.G. Gualtieri, F. Fueten, and P. Budkewitsch.
"Hyperspectral Image Analysis Using Genetic Programming".
Brock COSC TR CS-02-12, May 2002.
(PDF)
-
B.J. Ross and H. Zhu.
"Procedural Texture Evolution Using Multiobjective Optimization".
Brock COSC TR CS-02-18, July 2002.
(PDF)
-
B.J. Ross.
"Searching for Search Algorithms: Experiments in Meta-Search".
Brock COSC TR CS-02-23, December 2002.
(PDF)
-
C. Wellock and B.J. Ross.
"An Examination of Lamarckian Genetic Algorithms".
Brock COSC TR CS-01-01, July 2001.
(PDF)
-
B.J.Ross, F.Fueten, and D.Yashkir.
"Edge Detection of Petrographic Images Using Genetic Programming".
Brock COSC TR CS-00-01, January 2000.
(PS)
-
A. Wiens and B.J. Ross.
"Gentropy: Evolutionary 2D Texture Generation".
Brock COSC TR CS-00-02, May 2000.
(PS)
-
B.J. Ross.
"Probabilistic Pattern Matching and the Evolution of Stochastic Regular Expressions".
Brock COSC TR CS-99-01, May 1999.
(PS)
-
B.J. Ross.
"Logic-based Genetic Programming with Definite Clause Translation Grammars".
Brock COSC TR CS-99-02, June 1999.
(PS)
-
B.J. Ross.
"The Effects of Randomly Sampled Training Data on Program Evolution".
Brock COSC TR CS-99-03, November 1999.
(PS)
-
B.J. Ross, F. Fueten, and D. Yashkir.
"Automatic Mineral Identification Using Genetic Programming".
Brock COSC TR CS-99-04, December 1999.
(PS)
-
B.J. Ross.
"The Evolution of Concurrent Programs".
Brock COSC TR CS-96-01, July 1996.
-
B.J. Ross.
"A Process Algebra for Stochastic Music Composition".
Brock COSC TR CS-95-02, February 1995.
(PS)
-
R. Pringle and B.J. Ross.
Brock COSC TR CS-95-04, December 1995.
"A Symbiosis of Animation and Music".
(PS, addendum ZIP)
-
B.J. Ross.
"A Process Algebra for Sequential and Concurrent Logic Programming".
Brock COSC TR CS-94-01, June 1994.
-
B.J. Ross.
"The Inductive Inference of Finite Interleaving with Synchronization".
Brock COSC TR CS-94-02, June 1994.
(PS)
-
B.J. Ross.
"Running Programs Backwards: the Logical Inversion of Imperative Computation".
Brock COSC TR CS-94-03, June 1994.
(PS)