01223 307738 info@robionics.com

Software Development

Machine Learning and Software Development.


We take pride for our customers in developing new generation of artificial intelligence based applications and software systems that can self improve and learn on their own.

Machine learning offers a viable alternative and complement to the existing approaches to many software engineering issues. Machine learning is dedicated to creating and compiling verifiable knowledge related to the design and construction of artefacts. Typical applications are data mining problems, discount poorly understood domains, remedy or domains where programs must dynamically adapt to changing conditions.

In general the essential difficulties inherent in developing large software are in Complexity, Conformity, Changeability and Invisibility. Therefore our systems are built for change and by writing software that can shift the burden of evolution from the programmers to the systems themselves so that systems can take much responsibility for their own evolution.

Not surprisingly, the field of software engineering turns out to be a fertile ground where many software development and maintenance tasks could be formulated as learning problems and approached in terms of learning algorithms.

On application of artificial intelligence and software engineering, some of our successful artificial intelligence techniques applied include a knowledge based approach, automated reasoning, expert systems, heuristic search strategies, temporal logic, planning, and pattern recognition. Therefore by utilising fuzzy sets, neural networks, genetic algorithms, genetic programming and rough sets, or any combinations, we can tackle your software development issues. Machine learning and software engineering together with computational and software engineering share two common grounds, targeted software development problems, and some common techniques. Many software development or maintenance tasks rely on some function, or functions, mappings, or models, to predict, estimate, classify, diagnose, discover, acquire, understand, generate, or transform certain qualitative or quantitative aspects of a software artefact or a software process. What the application of machine learning to software engineering boils down to is how to find, through the learning process, such a target function that can be utilised to carry out the software engineering tasks, which are of three categories of entities: processes, products and resources, the attributes for the entities are internal and external.

Some of the software tasks that would lend themselves to machine learning applications include:

  1. Predicting or estimating measurements for either of the attributes of processes, products, or resources.
  2. Discovering either internal or external properties of processes, products, or resources.
  3. Transforming products to accomplish some desirable or improved external attributes.
  4. Synthesising various products.
  5. Reusing products or processes.
  6. Enhancing processes (such as recovery of specification from software).
  7. Managing ad hoc products (such as design and development knowledge).

Some general issues in machine learning and software engineering are applicability and justification, issues of scaling up, performance evaluation and integration.

By applying machine learning to solve your real world problems, as a guideline, our course of actions for our customers would be problem formulation, problem representation, domain theory preparation, performing the learning process, analysing and evaluating learned knowledge and fielding the knowledge base.

Our focus on machine learning and software engineering are prediction and estimation, property and model discovery, Transformation, Generation and synthesis, Reuse library construction and maintenance, Requirement acquisition and Capture development knowledge.

Solutions Delivered

  • An Intelligent Information Retrieval System and Intelligent Contextual (IR) System, improving quality of search for a leading provider of search services.
  • Cognitive modelling, thought process, (Phase one) for the Health Service sector.
  • AI-Based Disease Prevention (predictive) Management System (Phase one).
  • Active-X control / prevent pack for Audiovisual Manufacturing.
  • LSI system (3D lithography) for a major car manufacturer.