8th Korea-Russia International Symposium on Science and Technology - KORUS 2004 - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

8th Korea-Russia International Symposium on Science and Technology - KORUS 2004

Description:

USING DESIGN PATTERNS FOR DESIGN OF SOFTWARE ENVIRONMENT FOR RESEARCHES IN GENETIC ALGORITHMS Yuri R. Tsoy, Vladimir G. Spitsyn, Department of Computer Engineering – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 22
Provided by: Qwe74
Category:

less

Transcript and Presenter's Notes

Title: 8th Korea-Russia International Symposium on Science and Technology - KORUS 2004


1
USING DESIGN PATTERNS FOR DESIGN OF SOFTWARE
ENVIRONMENT FOR RESEARCHES IN GENETIC ALGORITHMS
  • Yuri R. Tsoy, Vladimir G. Spitsyn,
  • Department of Computer Engineering
  • Tomsk Polytechnic University
  • neuroevolution_at_mail.ru

2
Report structure
  • 1. Introduction
  • 2. Software environment description
  • 3. Genetic algorithm and design patterns
  • 4. Flexibility and extensibility
  • 5. Conclusion

3
Design patterns and software design
  • Design pattern - the way of cooperation of
    objects and classes that are adapted for common
    design task solution in certain context. (by
    Erich Gamma, Richard Helm, Ralph Johnson and John
    Vlissides)
  • Main advantages available with use of design
    patterns
  • reusability
  • flexibility
  • extensibility

4
Researches in genetic algorithms
  • Problems
  • No specialized software environment for
    algorithms parameters settings and control,
    experimental data processing and visualization.
  • No methodology of flexible software
    implementation of genetic algorithms.

5
Report structure
1. Introduction 2. Software environment
description 3. Genetic algorithm and design
patterns 4. Flexibility and extensibility 5.
Conclusion
6
Common program architecture
5 main blocks - Interface unit - Genetic
algorithm block - Task environment block - Data
analysis block - Visualization block
7
Interface unit
  • Isolates all blocks from each other. All
    communications are made via Interface unit using
    unified data format.
  • This helps to combine different implementations
    of different blocks.

8
Genetic algorithm block
  • Provides implementation of some model of genetic
    algorithm.
  • Block is separated from other systems blocks for
    purposes of use of different genetic algorithm
    models for one and the same task solution.

9
Task environment block
  • Provides implementation of some task environment.
    Can be used for both modeling and evaluation
    purposes.
  • Block is separated from other systems blocks for
    purposes of use of different tasks with one and
    the same genetic algorithm model.

10
Data analysis block
  • Provides instruments and methods for analysis of
    data from both Genetic algorithm and Task
    environment blocks.
  • Block is separated from other systems blocks for
    purposes of use of different data analysis
    approaches and implementations. In fact can
    consist of several sub-blocks.

11
Visualization block
  • Provides visualization of data processed by Data
    analysis block or passed from Genetic algorithm
    and Task environment block.
  • Block is separated from other systems blocks for
    purposes of use of different data visualization
    algorithms and methods.

12
General block structure
Control unit - provides routines for control of
blocks functioning. Processing unit -
implements functions specific for given
block. Internal data - stores internal block
data.
13
Report structure
  • 1. Introduction
  • 2. Software environment description
  • 3. Genetic algorithm and design patterns
  • 4. Flexibility and extensibility
  • 5. Conclusion

14
Taking a deeper look at Genetic algorithm block
  • Following parameters of genetic algorithm can
    vary depending on given GA model
  • genetic representation
  • population initialization
  • population evaluation
  • selection strategy
  • reproduction strategy (parental pair selection)
  • genetic operators
  • next generation formation.

15
Taking a deeper look at Genetic algorithm block
(2)
  • Parameters objects created by the Factory
    patterns
  • genetic representation
  • population initialization
  • genetic operators
  • Task (algorithm type) dependent parameters
    objects
  • population evaluation
  • Universal (task independent) parameters objects
  • selection strategy
  • reproduction strategy (parental pair selection)
  • next generation formation.

16
Report structure
  • 1. Introduction
  • 2. Software environment description
  • 3. Genetic algorithm and design patterns
  • 4. Flexibility and extensibility
  • 5. Conclusion

17
Flexibility and extensibility (1)
  • Introduced architecture allows to
  • Implement blocks as components of different
    specialized software packages.
  • Combine different programs and make them work
    together using appropriate data and control
    adapters.
  • Organize inner structure of certain block in any
    way.
  • Combine blocks independently and transparently
    for other blocks. For example, Data analysis and
    Visualization blocks can be united in one larger
    unit without any changes in other blocks.

18
Flexibility and extensibility (2)
  • Introduced architecture allows to
  • Modify blocks without any changes in other parts
    of the introduced system. It is possible to
    change operators or encoding method in Genetic
    algorithm block but other blocks will never
    know about it.
  • Extend blocks functionality independently. For
    example it is possible to add some new method of
    data analysis in appropriate block then make some
    changes in control adapter and use new ability.

19
Report structure
  • 1. Introduction
  • 2. Software environment description
  • 3. Genetic algorithm and design patterns
  • 4. Flexibility and extensibility
  • 5. Conclusion

20
Conclusion
  • The result of this project is intended for
    research purposes and will be distributed free.
    Introduced software architecture can be applied
    for many other research areas.
  • First release approximately 2-nd quarter of
    2005. Source code and documentation will be
    available too.

21
Thank you for your attention!
Write a Comment
User Comments (0)
About PowerShow.com