Encode directed coincidences
For a permutation, x→y is an adjacent ordered pair. The representation is deliberately local and position-independent.
Thesis Revisited · Research archive in development
The Coincidence Algorithm is a probabilistic approach to combinatorial optimization. It studies useful partial structures in strong solutions while reducing structures repeatedly observed in poor ones.
Editorial status: This 2026 collection is reconstructed from the completed 2010 doctoral dissertation, Hybrid Positive and Negative Correlation Learning in Estimation of Distribution Algorithm for Combinatorial Optimization Problems. Historical findings and present-day interpretation are labelled separately.
The research question
Optimization is usually described as a search for better answers. I see it as a disciplined process of deciding which structures deserve to survive, which structures deserve suspicion, and how much certainty the available evidence can support.
COIN begins with a familiar premise: good candidate solutions often share useful partial structures. It then asks a less comfortable question. If certain relationships recur in poor candidates, should the model continue sampling them as if nothing had been learned?
Architecture at a glance
COIN replaces explicit crossover with a first-order probability model. Each row of H describes what may follow one state; better and worse candidates move probability in opposite directions while every row remains normalised.
For a permutation, x→y is an adjacent ordered pair. The representation is deliberately local and position-independent.
The objective function ranks the sampled population; multi-objective problems use dominance and diversity information.
Edges recurring in stronger candidates gain probability. Edges recurring in weaker candidates surrender probability to alternatives.
The sampler walks through H, masks already-used states, renormalises feasible successors and repeats the cycle.
Research orientation
The collection is being rebuilt for readers who need different levels of detail without weakening the underlying research record.
Begin with an intuitive account of positive and negative evidence, partial order and probability-guided search.
Read the research motivation →Follow the representation, conditional model, reward and punishment updates, sampling cycle and multi-objective extension.
Inspect the architecture →Review benchmark results, comparisons, limitations and the industrial worker-allocation case without hiding uncertainty.
Review the experiments →2026 collection architecture
The updated dissertation is now the source of record. Each destination translates one part of its argument into a contemporary teaching and research narrative while retaining its original scope.
Open research software · 2026
The current Python suite separates reusable algorithms from applications, preserves scalar and Pareto selection, and makes Edge, NB, CNB, Hybrid, EHBSA and NHBSA variants available under shared permutation-problem contracts.
Library-only Python source, tests, citation metadata, TSP/MO-TSP notebooks and reusable evaluators.
Open the GitHub repository →Run Knight's Tour, Flow Shop, TSP with Time Windows, Sudoku and RNA experiments with explicit evaluation budgets.
Explore live COIN laboratories →Inspect nondominated archives, objective-wise learning progress, convergence, spread and trade-offs across algorithms.
Study the MO research map →Recent COIN work · live laboratories
These pages connect the historical research record to current executable work. Each laboratory exposes representation, parameters, objective-evaluation budget and learning progress rather than presenting only a final answer.
Research record
The source of record is the 172-page doctoral dissertation completed in the Department of Computer Engineering, Chulalongkorn University, in academic year 2010 under the supervision of Professor Prabhas Chongstitvatana. The web edition interprets that research; it does not replace the dissertation.